Creating

        _|_|_|  _|_|_|_|  _|      _|
      _|        _|        _|_|  _|_|    _|_|_|  _|_|_|  _|_|      _|_|
        _|_|    _|_|_|    _|  _|  _|  _|    _|  _|    _|    _|  _|_|_|_|
            _|  _|        _|      _|  _|    _|  _|    _|    _|  _|
      _|_|_|    _|        _|      _|    _|_|_|  _|    _|    _|    _|_|_|

								  sairuk

Before you begin
-  -  -  -  -  -
Read SFMame_setting.up.and.compiling.txt



Editing the right parts of the source
-  -  -  -  -  -  -  -  -  -  -  -  -
Making SFMame is pretty easy, and a good starting point i think for beginners
like myself. I thought it was an interesting project so lets start.

We will only be concerning ourselves with 8 files in total. These are

	o /src/driver.c
        o /src/info.c
        o /src/ui/layout.c
        o /src/ui/mame32.h
        o /src/ui/mame32.rc
        o /src/ui/res/about.bmp
        o /src/ui/res/bkgnd16.bmp
        o /src/ui/res/mame32.ico

***************************** Backup your files *****************************

/src/driver.c
-  -  -  -  -
Navigate to the /src directory. Find the file driver.c, this is the biggest
edit you will do for creating SFMame

In the driver.c file delete the drivers we aren't insterested in and save
the file.

This is a driver: DRIVER( sf1 )		/*  8/1987 (c) 1987 (World) */
DO NOT delete any of these lines: #ifndef, #endif

If you insist on deleting one, make sure you delete its partner.



/src/info.c
-  -  -  - 
Navigate to the /src directory. Find the file info.c, Comment out the uneeded
bios files. See below:

	/* print the resources (only if linked) */
#if !defined(MESS) && !defined(TINY_COMPILE) && !defined(CPSMAME) && !defined(MMSND)
//	PRINT_RESOURCE(neogeo);
#if !defined(NEOMAME)
//	PRINT_RESOURCE(cvs);
//	PRINT_RESOURCE(decocass);
//	PRINT_RESOURCE(playch10);
//	PRINT_RESOURCE(pgm);
//	PRINT_RESOURCE(skns);
//	PRINT_RESOURCE(stvbios);
#endif
#endif



/src/ui/layout.c
-  -  -  -  -  -
Navigate to the /src/ui directory. Find the file layout.c. Comment out the
uneeded folders. (trackball, vector)



/src/ui/mame32.h
-  -  -  -  -  -
Navigate to the /src/ui directory. Find the file mame32.h. We now need to
change the app names. Change the following:

	#define MAME32NAME "MAME32" to #define MAME32NAME "SFMAME32"
	#define MAMENAME "MAME" to #define MAMENAME "SFMAME"



/src/ui/mame32.rc
-  -  -  -  -  -
Navigate to the /src/ui directory. Find the file mame32.rc. We now need to
change the about dialog. Change the about dialog to the following:


IDD_ABOUT DIALOG DISCARDABLE  0, 0, 296, 149
STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
CAPTION "About SFMAME32"
FONT 8, "MS Sans Serif"
BEGIN
    DEFPUSHBUTTON   "&OK",IDOK,195,130,50,14,WS_GROUP
    CTEXT           "Multiple Arcade Machine Emulator",IDC_STATIC,147,7,142,
                    11,NOT WS_GROUP
    CTEXT           "Version 0",IDC_VERSION,147,18,142,11,NOT WS_GROUP
    CTEXT           "Copyright (C) 1997-2003 The MAME Team",IDC_STATIC,147,
                    29,142,10,NOT WS_GROUP
    CTEXT           "SFMAME32 version by",IDC_STATIC,147,49,142,10,NOT 
                    WS_GROUP
    CTEXT           "sairuk and slateman",IDC_STATIC,147,58,142,10,NOT 
                    WS_GROUP                    
    CONTROL         "",IDC_STATIC,"Static",SS_ETCHEDHORZ,147,44,142,1
    CTEXT           "MAME32 version by",IDC_STATIC,147,75,142,10,NOT 
                    WS_GROUP             
    CONTROL         "",IDC_STATIC,"Static",SS_ETCHEDHORZ,147,71,141,1 
    CTEXT           "Additional MAME32 code by",IDC_STATIC,147,96,142,9
    CTEXT           "Christopher Kirmse and Michael Soderstrom",IDC_STATIC,
                    147,86,142,9,NOT WS_GROUP
    CTEXT           "Mike Haaland, Andrew Kirmse, Jeff Miller",IDC_STATIC,
                    147,106,142,9
    CTEXT           "and John Hardy IV",IDC_STATIC,147,116,142,9
    CONTROL         "",IDC_ABOUT,"Static",SS_BITMAP | SS_SUNKEN,7,7,16,14
END



/src/ui/res/about.bmp
/src/ui/res/bkgnd16.bmp
/src/ui/res/mame32.ico
-  -  -  -  -  -  -  -
Replace all these files with our SFMame logos.

After writing I have since added cpanels tab to the Mame32 Interface,
refer to source on how to implement this correctly as it changes for 
each version.

regards,
sairuk