Mame32 Troubleshooting [& Tips]

Mame32 is a five year old program; it is mature, complex, and robust.  However, since the Mame project itself is a documentation effort, and development is continuous, there will be times when changes to the core program effect Mame32.  Since Mame32 is effectively a front end which passes user input from the GUI to the Mame[w] engine, any problems that occur in the Mame[w] engine will be inherited by Mame32.  When problems do occur with a specific game in a specific version of Mame32, a previous version of Mame32 may be used easily, toggling off the Enable version mismatch warning check on the Options • Startup Options menu.  Prior to reporting problems against Mame32, verify that the issue is not a known, core defect in Mame[w].  The Mametesters site is designed to track and report bugs in the baseline Mame[w] version.  The current list of known Mame32 issues and defect tracking is available at Mame32QA

 

ROMs Related Topics

*       If receiving missing ROM error messages when attempting to run a game, secondary click on the game in the list and choose properties, do an audit on that game [or use Alt-A].  The audit will determine which files are missing from the romset currently being played.  Mame32 will not run a game which fails its internal audit.

*       Mame is an ongoing documentation project. Sometimes old ROM sets are found to have miss-dumped, missing, or damaged ROMs, which need to be replaced.  As new versions of Mame are released, the Mame developers add support for these new iterations of ROMs, supplanting or renaming the old supported versions.  Thus, often, older versions of ROMs which did work in older versions of Mame32, will not work with newer versions of Mame32 because they are now read as incomplete or wrong.

*       Mame32 utilizes the idea of a parent / clone relationship for its games.  If trying to play a clone or a bootleg of a game, Mame32 will need the ROMs for the clone game, and the parent set.  Mame32 indicates the parent set of a clone at the bottom of the game’s properties tab.

*       Mame32 utilizes the idea of having single zip files to house the BIOS files for a large number of similar games.  The NeoGeo games for example, share four BIOS files in every game.  Mame will look to neogeo.zip as the BIOS zip, if this file is along with the other NeoGeo games, it will use it.  Otherwise, Mame32 expects the BIOS files in every NeoGeo game. DECO cassette, CVS, PGM, and Playchoice are also BIOS games.  An error message will occur if the BIOS files are not present and those games are run.

*       F5 / View • Refresh in the GUI. (Do this anytime ROMs are altered, renaming, etc.)

*       If games are not displaying in the game list, ensure the appropriate folder view on the far left is toggled, i.e. 'all games' and it doesn't have filtering on it to stop the display of the game being searched for.

*       Use the Options • Reset to default menu choice and check all of the items, restart Mame32.

*       Final option, manually delete the registry key for Mame32 by running regedit.exe: HKEY_CURRENT_USER\Software\Freeware\MAME32

Crash Related Topics

*       Delete the .hi, .cfg, or .nv files for the game that's crashing.

*       Check to see that the zip file is valid and that it's not corrupt or read-only.

*       The game’s entry in the external database, hiscore.dat, may be causing the crash, remove the entry by editing hiscore.dat with a text editor.

*       If crashing during an audit or an [F5] refresh, it could be a corrupt .zip file.  Extract it and re-zip. Pkunzip -t *.zip. Note the file that dies during the audit and concentrate on that one. Also verify that if zip files are not used, that the folder is not empty, or contains partial or damaged ROMs.

*       If seeing crashes or weird screen coloration, try disabling running background apps [in Win98, use msconfig.exe], Norton Crashguard, popup killers, viruscans, fast find, the Microsoft Office Bar, Intellimouse, even IE subscription updates, etc. Try moving Mame32 away from compressed [DriveSpace, DoubleSpace, stacker] drives.  IntelliMouse and Office Toolbars have been known to cause conflicts.  Also disable items in the system tray, like the CD player, etc.  It may also be necessary to download and install the latest version of DirectX from Microsoft to prevent some errors.

*       Some recent viruses which attach to .exes will cause page faults and access violations in Mame32 when it's run.  Use an anti-virus check and verify Mame32 is not infected.

*       Use the Options • Reset to default menu choice and check all of the items, restart Mame32.

*       Final option, manually delete the registry key for Mame32 by running regedit.exe: HKEY_CURRENT_USER\Software\Freeware\MAME32

Performance Related Topics [sound scratchiness and stuttering]

*       Mame32 will start to crackle, scratch, or echo if the game running is too taxing for the processor [Taito F3, Midway Wolf Unit, CPS2 games require a lot of horsepower].  This can be visually confirmed by turning on FPS display with [F11], and frame skip to auto with [F8].  If the FPS dips anywhere or frame skipping rises anywhere during the game play, the game is maxing out the CPU and sound breakup could occur. The blitter effects [partial scanlines, RGB effects] will impose further strain on the CPU, upwards of 50%.  As a data point, an AMD Athlon 1900 XP is able to do all current Mame32 games [.58] at greater than 100% fps at a resolution of 1600x1200x32 using RGB effects [the most stressful Mame32 settings].  If upgrading machine components, provide Mame32 with as much hardware as possible.  Suggested Mame32 settings are available on the Mame32QA site.

*       If seeing a severe slowdown in games that historically didn't, ensure that the Use less CPU time if possible menu item is toggled off in Options • Default Options • Miscellaneous.  This happens to laptop users particularly. 

*       Mame32 video performance can be greatly enhanced by ensuring AGP Fast Writes are toggled on in the motherboard BIOS.  The videocard drivers also need to support this setting, some recent ATI 8500 card drivers do not.

Joysticks and Gamepad Related Topics

*       Gamepads and mouse are disabled by default on first Mame32 launch, enable them by toggling their check boxes on in Options • Default Options • Controllers.

*       Mame32 relies on DirectInput for joystick support, ensure the game pad is seen as present and active in the game controller control panel: start menu • settings • control panel • game controllers.

*       Verify the joystick is seen as ID #1 in the game controllers control panel rather than being assigned a higher number.  If using multiple gamepads, ensure each one has its own ID#.

*       Daisy chained gameport Microsoft Sidewinders [original] in Win2k do not work very well.  Use USB gamepads instead. Single Sidewinders may also cause odd behavior like ghost button presses.

GUI Related Topics & Miscellaneous Tips

*       If seeing icon palette corruption in the GUI when returning from a full screen game, try increasing the desktop color depth to 24bpp or 32bpp.

*       Quickly navigate through games in the details view by simply typing the first few letters in the name of the game, the highlight will jump to that game and become more granular as the name is typed out.

*       Select a random game with [Ctrl-R].

*       If Stretch using hardware is grayed out in Options • Default Options • Advanced, verify the desktop is set to 16bpp or 32bpp and not 24bpp.  If it is still grayed out, the video card does not support the hardware stretch capabilities Mame32 needs.

*       If there are screenshots in the \snap directory and the default Mame image is the only thing being displayed in the screenshot area on the right, Mame32 is currently toggled into another art mode.  Click, or secondary-click the screenshot area to toggle between: screenshot, flyer, cabinet, marquee, and titles views.

*       The GUI text may disappear from the folder view if the GUI font color chosen is very close to the Windows system background color scheme.

*       To alleviate screen tearing in some scrolling games, it is necessary to check use triple buffering and match game refresh rate, while setting refresh to ‘auto’.  This will set the output monitor’s refresh rate down to 60Hz or the closest the monitor can do to the game’s refresh rate.

*       Sometimes due to the Windows system background color scheme chosen, some small black ‘dots’ can display on the Mame32 icons in large icon view.  Try a different Windows color scheme ‘window’ setting.

*       Vector games like asteroids look and work better if hardware stretch is disabled.  Increase the vector intensity to 3, and force a resolution like 1024x768x32.

*       If having trouble saving keyboard mappings and configuration, verify that the *.cfg files are not read-only and that a \mame32\cfg directory is present.

*       If experiencing odd behaviour with Mame32 saving files or not appearing to clear its settings, verify that there are not multiple shortcuts pointing to different versions, or a shortcut pointing to an old version of the .exe.

*       Some anti-virus packages will slow down or report spurious messages about Mame32.exe because of its UPX .exe compression method.  These are false positives and the anti-virus vendors should update their virus signature.  It may also be possible to exclude the mame32.exe from real-time scanning as a workaround.

*       If the in-game [TAB] menu is no longer working or can’t be accessed, it’s been mapped it accidentally to another key; delete the default.cfg file in the \mame32\cfg directory.

*       Some of the largest games supported by Mame32 [NeoGeo mainly] can run into the hundreds of megabyte range when they are uncompressed into memory, this combined with Mame32 in memory, plus OS overhead can lead to very slow performance as Windows swaps the information out to disk if there is not enough physical memory.  256M or 512M is recommended for all current games [.58].

*       The screenshot area was grayed out in Windows XP because of the inclusion of a preliminary file in Mame32 version .54 called Mame32 manifest.  Remove that file to view the screenshot area artwork again.