MAME and MAMEUI Visual C Project File Archives
So, what's here?
This section is an archive of older releases of project files for both MAME and MAMEUI.
If your a looking for the latests, check here.
Some instructions on this page may be out of date, but the projects found here worked
with the released version of MAME or MAMEUI at the time of the original post.
Up until the release of MAME 0.121, MAMEUI was known as MAME32. However, when 64-bit and
32-bit release binaries started to become the norm, having MAME32 simply mean MAME with a
User Interface was, to say the least, confusing. So, MAME32 was renamed to MAMEUI. You'll
see references to both below.
What is MAME?
MAME is strictly a no profit project. Its main purpose is to be a reference
to the inner workings of the emulated arcade machines. This is done for
educational purposes and to preserve many historical games from the oblivion
they would sink into when the hardware they run on will stop working. Of
course to preserve the games you must also be able to actually play them;
you can see that as a nice side effect.
It is not our intention to infringe any copyrights or patents pending on
the original games. All of the source code is either our own or freely
available. To work, the emulator requires ROMs of the original arcade
machines, which must be provided by the user. No portion of the code of
the original ROMs is included in the executable.
To find more information on MAME, please visit the
Official MAME page.
What is MAMEUI?
MAMEUI (formerly MAME32) is the Windows version of the popular Multiple Arcade Machine Emulator,
also know as MAME, with a built-in User Interface.
Visual C Win32/x64 Project files
The following project files are for Visual C 2005 standard and professional.
They work fine with VC 2005 express, however to compile the x64 target, you'll need the full version of Visual C 2005.
They also convert and run fine with VC 2008 express.
Version | Release Date | VC Project files |
Platforms |
0.0127 | Aug 19, 2008 | VC 2005 | Win32 (x86) Win64 (x64) |
0.0126 | Jul 06, 2008 | VC 2005 | Win32 (x86) Win64 (x64) |
0.0125 | May 05, 2008 | VC 2005 | Win32 (x86) Win64 (x64) |
0.0124 | Mar 25, 2008 | VC 2005 | Win32 (x86) Win64 (x64) |
0.0123 | Feb 13, 2008 | VC 2005 | Win32 (x86) Win64 (x64) |
0.0122 | Dec 18, 2007 | VC 2005 | Win32 (x86) Win64 (x64) |
0.0121 | Nov 19, 2007 | VC 2005 | Win32 (x86) Win64 (x64) |
0.0120 | Oct 15, 2007 | VC 2003.NET | Win32 (x86) |
0.0119 | Sep 18, 2007 | VC 2003.NET | Win32 (x86) |
0.0118 | Aug 6, 2007 | VC 2003.NET | Win32 (x86) |
What's in the distribution?
The project files contain the following directory structure:
- project - Project files
- patches - Required patches needed to compile
- src/osd/vc - Global include file vcmame.h
Instructions
- Unzip the contents to the same directory as the MAME sources.
- Read projects/README.txt for notes on this release.
- Apply any patches from the top directory using:
patch -p0 <patches/patchname.diff
- Navigate to the project directory and click on mameN.sln,
where N is the distribution version.
- Set the startup project to MAME
- Set the Configuration to the desired build.
(Release, Debug, ReleaseUI, DebugUI)
- Build the solution
Assumptions
This assumes you already have a working installation with the DirectX SDK and
Win32 settings properly configured with your MSVC installation. For details
on setting up Express editions with the latest platform SDK (PSDK), please visit
Using Visual C++ 2005 Express Edition with the Microsoft Platform SDK.
Direct X SDK paths
Adding the Direct X SDK (DXSDK) Include and libraries, is done the same
way you do the PSDK paths in the Microsoft article above. The paths to add
for the DXSDK are as follows:
For Win32 (x86) targets
- $(DXSDK_DIR)Include
- $(DXSDK_DIR)Lib\x86
For x64 (Win64) targets
- $(DXSDK_DIR)Include
- $(DXSDK_DIR)Lib\x64
Notes on using VC2003 project files with VC2005 Express notes (Applies to VC2008 also)
Starting with v0.119u3, support for the Visual C 2005 Express edition has been added.
To use the earlier VC2003 project files with VC2005 Express edition, you'll need to make a some modifications
after loading the solution. By default, VC2005 sets up the individual projects to generate and embed
a application manifest. This option will need to be turned off to compile MAME or MAMEUI.
To turn off the manifest generation:
- Select all .exe projects in the Solution Explorer
That's all projects except 'expat, libosd, libutil and zlib'
- From the main menu select 'Project -> Properties'
- Expand 'Configuration Properties -> Linker'
- Select 'Manifest File'
- In the Configuration dropdown, select 'All Configurations'
- Change the 'Generate Manifest' entry to No
Additionally for 'VS2008 Orcas' turn off Embed Manifest
- Expand 'Manifest Tool'
- Select 'Input and Output'
- In the configuration dropdown, select 'All Configurations'
- Change the 'Embed Manifest' entry to No
Ensure all the projects are set to build after conversion to VC2005 or higher
- From the main menu, select Build -> Configuration Manager
- In the Active solution configuration' dropdown, select each configuration
- Ensure all the projects have their 'Build' box checked
- Ensure that the 'Configuration' for each project matches the
'Active solution configuration' selected in the drop down.
Finally check the project dependencies
- Right click on the Solution in the Solution Explorer
- Select 'Properties'
- Under 'Common Properties' select 'Project Dependencies'
- In the 'Project' drop down, select each project one at a time, and check
their dependencies are set the same as in the README.txt accompanying the project files
I personally, like to remove the 'upgrade properties' also. However, it is
not necessary. To do this:
- Select all projects in the Solution Explorer
- Expand 'Configuration Properties -> General'
- In the Configuration dropdown, select 'All Configurations'
- Clear the 'Inherited Project Properties Sheets' field then OK or Apply
Related Sites...
-
- Official MAME page
- MAME source code and binaries
- Official MAMEUI page
- MAMEUI source code, binaries, Artwork and more
- Microsoft Visual C/C++
- Microsoft Developers Network
- Visual C++2005
- Express Edition
|