Site hosted by Angelfire.com: Build your free website today!

Compile Analog+

Home
Downloads
Features
Compile Help
FAQs
Links


Quick update. You can now get the headers and library files from dev-C++ packages page instead of the 124MB file from MS. More info later.

This does not go into too much detail, as there already are sites that explain how to compile MAME. This page is specific to compiling Mame:Analog+ for Windows with the multiple mouse feature. Here is less detailed howto for people more familiar with compiling mame. More information on compiling mame can also be found at http://www.mame.net/documents.html .

Step A: Determine which OS and directX version you should use

If you are using win2000 or winXP, the multiple mouse feature will not work (the other features will work). The only reason to use directX 8.0 headers and libraries is to enable the multiple mice feature. In this case, you might just want to use the mingw from mame.net (the same used to compile normal windows mame). Go to this how-to compile page instead.

If you want to use dos, it's pretty easy. Follow the instuctions here and in step 2.

If you want the multiple mouse feature, you must run mame:Analog+ on win98 or winMe. You must compile with dx8 as discribed in this page. You can also follow these instuctions for win2000 and winXP machines if you want, but the multiple mouse feature will not work.


Step One: Download and set up compiler, headers, and libraries

  1. Download mingw_for_mame.zip from mame.net or here. If you already have this compiler, go to step 3.
  2. Extract the files in mingw_for_mame.zip. It will extract into a folder named mingw.
  3. (recommended) Copy, or rename, the mingw folder to mingwdx8 to have the needed directX 8.x mingw folder as well as the normal directX 5 mingw folder. This allows you to to compile in both the directX 8 augmented mingw needed for multiple mice, and the official mame mingw. The rest of the help assumes the new folder is named c:\mingwdx8
  4. Download the current DirectX package from Dev-C++. At the time of this writing (dx 8.1), it is a 124MB compressed file. You need less than 2 megs compressed (~10 megs uncompressed) of that, but the M$ license prevents me from distributing just the needed files. Other junk in the 124 megs is 37 megs (compressed) of sample code and multimedia files. Either the SDK directX 8.0 or 8.1 headers work, so if you already have one or the other version, don't bother downloading again. One way to cut down the file size is to download the whole thing on to a high bandwidth computer (cough ... work ... cough), extract the needed files (see next step for list of which ones) with winzip, and compress those files to a 1.3 meg zip file. But you shouldn't do this because M$ would get mad at you for fitting the useful files on a floppy, and go against M$'s "Bigger is better" motto.
  5. You only need the files in the SDK's include folder. You probably don't need everything in that folder, but to be safe, use everything. Copy (or move) all these files into the c:\mingwdx8\include folder, overwriting the old files.
  6. (optional) Download the three files I changed in the include folder. Copy these files over the files in the c:\mingwdx8\include folder. The changes reduce the warnings that show on the screen, but do not eliminate all.
  7. Download the mingw dx8 library files from Peter Puck's site(seems to be down) or here. Copy the .a files into the c:\mingwdx8\lib folder, overwriting any old files.
  8. (recommended) I suggest writing two .bat files: mingw.bat and mingwdx8.bat so you can switch between the two compilers. You can call them whatever you like. The easy dirty way:
    1. mingwdx8.bat:
      SET PATH=c:\mingwdx8\bin;%PATH%
    2. mingw.bat
      SET PATH=c:\mingw\bin;%PATH%
  9. Put the .bat files somewhere in the path.
  10. (Recommended) (if you don't have patch.exe) Download the patch.exe file to patch diff files onto the old files. Here. Extract patch.exe into the c:\mingwdx8\bin (and c:\mingw\bin) folders.

Step two: download and setup source files

  1. Download the current official mame source files. Extract the file into it's own folder. In this example, I am assuming it is in the c:\mame57Analog folder.
  2. Download either the Mame:Analog+ source diff file (mame to most recent Analog+) or straight source zip file from my download page. I always post a diff file, but not always a straight source zip file. Diff files are smaller and easier to make. Also, if you already are using a hacked mame, the diff file can be used to apply the Analog+ changes along side the other changes automatically (if the other changes do not apply to the same lines of code as Analog+).
  3. If you downloaded the diff file:
    1. Extract the file into the c:\mame57Analog folder. In this example, I will refer to it as "analogplus57.dif", but each version has a new name.
    2. Open a dos command window.
    3. Make sure patch.exe is in your path. In this example, type mingwdx8 in the DOS box to run the mingwdx8.bat file made above.
    4. Change to the c:\mame57Analog by typing: cd \mame57Analog
    5. Type patch -u -p 1 -i [diff file name]. So in this example it would be:
      patch -u -p 1 -i analogplus57.dif

      (You do the same thing with this: patch -u -p 1 < analogplus57.dif)
  4. If you downloaded the source files:
    1. Extract the files over the official mame source files, overwriting the files. If you are using any other changes to mame, you may need to reapply them.

Step three: compile!

  1. Open a DOS window, if you don't have one open already. Make sure the c:\mingwdx8 folder is in the path by typing mingwdx8 in the DOS box to run the mingwdx8.bat file, if it isn't in the path already.
  2. Type make
  3. Your computer should start compiling Mame:Analog+. Depending on your computer, it can take a long time: over an hour for some old pentiums. Hopefully, mingw will not stop compiling, but if it does, just type make again.
  4. (Optional) If you want a shorter name, rename mameanalog to a shorter name of your choice (i.e.: "mameA.exe").
  5. After mame:Analog+ is finished compiling type mameanalog -cc . You can edit the .ini file (called mameanalog.ini or mamean~1.ini) to your personal settings.
  6. You run mameanalog.exe just like you run mame.exe (mameanalog [gamename]).

Option 2: Downloading from Microsoft

If you don't want to or cannot download the dx8 zip file from dev-C++, you can download the files needed from Microsoft.

  1. Download the current Microsoft directX C++ SDK. At the time of this writing (dx 8.1), it is a 124MB compressed file. You need less than 2 megs compressed (~10 megs uncompressed) of that, but the M$ license prevents me from distributing just the needed files. Other junk in the 124 megs is 37 megs (compressed) of sample code and multimedia files. Either the SDK directX 8.0 or 8.1 headers work, so if you already have one or the other version, don't bother downloading again. One way to cut down the file size is to download the whole thing on to a high bandwidth computer (cough ... work ... cough), extract the needed files (see next step for list of which ones) with winzip, and compress those files to a 1.3 meg zip file. But you shouldn't do this because M$ would get mad at you for fitting the useful files on a floppy, and go against M$'s "Bigger is better" motto.
  2. You only need the files in the SDK's include folder. You probably don't need everything in that folder, but to be safe, use everything. Copy (or move) all these files into the c:\mingwdx8\include folder, overwriting the old files.
  3. (optional) Download the three files I changed in the include folder. Copy these files over the files in the c:\mingwdx8\include folder. The changes reduce the warnings that show on the screen, but do not eliminate all.
  4. Download the mingw dx8 library files from Peter Puck's site(seems to be down) or here. Copy the .a files into the c:\mingwdx8\lib folder, overwriting any old files.

Main Site:

speedhost

Mirrors:

prohosting
anglefire

 

I'll redo the page again. (WIP)