MyMame 1.24Hello, I was instructed that posting here might be a good ideal for the development of an application that I have been working on for quite some time. It is an automated Mame compiler, that allows users to compile a Mame distribution based on a variety of settings and configurations easily. There is no need to download the MinGW environment, or source code for that matter as MyMame does all of this for you with the click of a few buttons.
MyMame is an application written in C# that consist of about 4,800 lines of code ATM and is expanding daily. Most of the features that are included were suggested by the gaming of community and new features are being added daily.
I am posting this in the hopes that I can expand the beta version of the application, and gain user interaction that way MyMame could be considered a one stop solution for compiling the Mame executable.
To use MyMame you first need to
download MyMame and install it. This can be done as so.
Download the application using the above link.Extract the contents of MyMame_Installer.7z.Run Setup.exeOnce MyMame is installed it will run for the first time. Please be aware that MyMame auto updates as new features are put into the application, and eventually will cover all versions of Mame (from it's first release to the most recent builds.) Also, do note that there are still a few limitations to MyMame, and not ever version listed will result in a complete compile. However, as time progresses I am constantly adding new libraries to the application and creating new features based upon user request, comments and suggestions.
Here are some screenshots of the main interface:

This is the main interface tab.
On the main tab you have a host of options to choose from such as:
High Score Patch - Allows you to install (without downloading) any high score patch from 0.108 to 0.143u6
Compile To - Selects the directory you wish to output finished compile into.
Show in Folder - Opens the container folder when compiling is complete.
Compression Methods - Compresses the newly built distribution after compiling.
Patches & Extended OptionsOn the patches & extended options screen you have the following options:
Patch Now - Will apply a third party patch to your Mame distribution.
Build Log - Keeps a detailed log of your build in a file.
Disable Warnings as Errors - Disables fatal errors from warning flags.
Clean Compile - Deletes any failed, or faulty prior builds.
Force DirectInput - Forces the use of DirectInput (good if you have a light gun.)
Official PatchesOn the official patches screen you have the opion of automatically installing Mame patches for the latest build. These patches are source updates that are released by the MameDev team.
Please note: that you do not have to download the source patches as they are compiled into MyMame & you do not install the patches in the Patches & Extended options tab either.
When using official patches you select the maximum allowable patch allowed for building. For instance if you wanted to build 0.143u4 then you would select 0.143u4 from the drop down list; all of the patches prior to 0.143u4 will be installed at runtime.
Terminal OutputTerminal output displays verbose information regarding the current processes.
Now, let us talk about the options tab for a moment if we can.
Here we have our main options that are used for the compiling of our Mame distribution such as processor information, and Mame build configuration. Right now at this time MyMame only supports the building of Mame. However, Mess, MessUI, MameUI support is currently being developed for automated compiling procedures.
Mame Version: From this drop down list you select what build of Mame you wish to compile.
Mame Subversion: Currently disabled.
Build Rule: The build rule is automatically selected by the application but can be overridden by the user to select what set of MinGW tools they wish to use to compile their Mame distribution.
Debug Mode: Will compile Mame in debug mode.
Target CPU: From this drop down list you will select the mfg of your systems processor.
Target Processor: From this drop down list you can select single core, dual core or quad core.
64-bit Processor: Specifies whether or not you are building for a 64-bit system.
Building ParametersIn the above photograph you can see the current building parameters. What this does is it tells the compiler your variable options for compiling your Mame distribution.
Please Note: You can change these parameters manually, but do so just before hitting the compile button.
What happens at compile time?When a user hits the compile button a wide range of things are fired of in a sequence. First, the application will check for the target MinGW environment. If the target MinGW environment is not found, it is then automatically extracted to a special folder within My Documents. After the MinGW environment is extracted then the applications searches for any prior downloads of the selected Mame source code. If no source code can be found in the archive folder, it is autmatically downloaded and extracted. However, if the Mame source code is found then the user is prompted a question asking whether or not they want to keep the code, or redownload a fresh copy. If a user chooses to keep the source code MyMame then looks for failed builds. If a failed build is found then the user is prompted to dispose of the old OBJ folder (which will happen automatically upon hitting yes.)
After your Mame source code has been sorted MyMame will then check to see if the user wants to use forced DirectInput. If a user has chosen to force DirectInput then the appropriate source code files are modified, else they are left alone. After that MyMame checks the version of Mame against official updates. If official updates have been marked for installation then they are done so at this time, along with the high score/no nag patches.
Finally after all of this your Mame compiling procedure begins, and you can kick back, relax and just wait for your distribution. Please note that this program is fully automated, and you will never be asked to download anything externally - it's all done for you, no more headache!
Well, that is MyMame in a nutshell folks. Over the past month I and my team have been in hard development of the application, and we are happy to share it with you. Please feel free to post any suggestions, replies, comments or anything else here on this thread as I listen and take all suggestions. Thanks guys!
Download 1.24 -
http://www.mediafire.com/?6686d3d8zch2aua