Mamewah Ini

From BYOAC New Wiki
Jump to navigation Jump to search

General about mamewah ini\cfg files

Ini files are commonly used for configuring program options. These files end in the extension .ini or .cfg and are standard text files which can be opened in any text editing application, such as notepad.

MAMEWAH uses four main types of ini config files; mamewah.ini (main/global settings), mamewah.cfg, emuname.ini (emulator-specific settings), and emuname-?.ini (list-specific settings, where ? is the list no.).

mamewah.ini is auto-generated/updated when you run MAMEWAH, and resides in \mamewah.

To generate emuname.ini or emuname-?.ini, simply create a folder in the \mamewah\config directory (i.e. \mamewah\config\newemu\) and create the suitably named text file(s) (eg newemu.ini, newemu-0.ini, newemu-1.ini etc.) within the folder, and run MAMEWAH. The ini files will be automatically populated/updated with default settings. You must have emuname.ini for each emulator you require, and the number of lists available is determined by however many emuname-?.ini files you have (emuname-0.ini will be the main, non-filterable list).


The mamewah.ini file is the global configuration file, allowing you to configure the general options for mamewah, such as audio, video, or screensaver options.

(Global) Screen Saver Options

Setting default description
delay 300 in seconds, the delay before the screen saver begins
slide_duration 3 in seconds, the time to wait in between slides

Audio Options

Setting default description
enable_sounds 1 1=yes/0=no, whether sounds are enabled
sound_volume 100 0-100, % of the sound volume
music_path (empty) full path to folder containing music (mid, midi, rmi, mp3 or wma) to play
enable_music 1 1=yes/0=no, whether music is enabled
music_volume 100 0-100, % of the music volume

Movie Options

Setting default description
intro_movie_file (empty) full path to a movie file (mpg/avi) that plays at startup
exit_movie_file (empty) full path to a movie file (mpg/avi) that plays at exit
keep_movie_preview_aspect game_aspect (no/video_aspect/game_aspect)
delay_before_movie_preview 2 in seconds, the delay before a movie preview is shown
music_movie_mix mute_movies (mute_movies/merge/pause_music) when playing movies and music, should it mute the movie sound and only play the music, play the movie sound with the music, or pause the music and only play the movie sound
movie_volume 100 0-100, % of the movie volume

Misc Options

Setting default description
emulator_root_path Default Root emulator path
auto_setup_emulators 0 (0/1) Attempt to automatically configure emulators
theme the name of the theme
wrap_list 0 1=yes/0=no,
remember_current_game 1 1=yes/0=no, should MAMEWAH start on the last game selected
keep_image_aspect 1 1=yes/0=no, should MAMEWAH keep the image aspect ratio
refresh_images 0 1=yes/0=no, should MAMEWAH refresh images as you are scrolling (1) or once you have finished scrolling (0)
delay_before_history_dat 2 time to wait before showing history.dat info
safe_mode 0 1=yes/0=no
show_cursor 0 1=yes/0=no, show/hide the windows cursor
keyboard_led_states (-,-,-) (x,x,x where x=: -=leave, 0=off, 1=on, eg 1,1,1)
lcd_com_port 1 1-4, com port that an LCD is hooked up to
lcd_settings (empty) baud rate (110/300/600/1200/2400/9600/14400/19200/28800/38400/56000/128000/256000), parity ([e]ven, [o]dd, [n]one, [m]ark, [s]pace), data bits (4-8), stop bits (1, 1.5, 2)

eg: 9600,n,8,1

exit_action choice (choice / windows / run_app / reboot / shutdown)
maxlogsize 100000 maximum size of the log file

External Application Settings

Setting Default Description
startup_app_commandlines commands to run on startup
exit_app_commandlines commands to run on exit
exit_and_run_app_commandlines commands to run after exit

Settings used by MAMEWAH


Setting Default Description
current_group the last group used
current_emulator mame the last emulator that was used
locked 0 whether or not the menu is locked


The emulator specific ini files are the settings which tell Mamewah how to run or launch a particular emulator. There should be one of these for each emulator you wish to run from Mamewah.

List Generation Settings

Setting default description
rom_path (empty) the full path of the location to your rom files
rom_extension zip the file extension(s) that your roms use
dat_file (empty) the full file path to a dat file with rom information
nms_file (empty) the full file path to an nms file with rom information
catver_ini_file (empty) the full file path to a catver.ini file
list_generation_method rom_folder_vs_listxml (rom_folder / rom_folder_subfolders / dat_file / rom_folder_vs_dat_file / rom_folder_vs_listinfo / verifysets_vs_listinfo / rom_folder_vs_listxml / verifysets_vs_listxml), how Mamewah generates its game list

Execution Settings

Setting default description
pre_emulator_app_commandlines commands to run prior to executing the emulator
emulator_commandline (empty) the full path to the executable for the emulator
post_emulator_app_commandlines commands to run after executing the emulator
general_app_commandlines ??

Artwork Settings

Setting default description
artwork_image_paths (empty) paths for image locations (i.e. screens, titles, boxart, etc)
movie_preview_path (empty) full path to a movie preview
movie_artwork_no 1 which artwork_#_image_path contains movies instead of images
enable_fuzzy_search 0 ?? (0/1) Attempt to use a close match if a match is not found
history_dat_file Location of History.dat file
history_dat_artwork_no 2 Artwork # to place History.dat info in

Screen-Saver Settings

Setting default description
enable_music_in_screensaver 1 1=yes,0=no, if music should be enabled when the screensaver is active
select_random_game 0 (0/1) ??
saver_type gamelist_slideshow (blank_screen / gamelist_slideshow / movie / run_selected_game / run_random_game / run_random_game_and_quit / run_random_game_using_wrapper / launch_scr / power_saving / shutdown) type of screen saver to use
movie_path (empty) (movie folder, eg c:\movies - saver_type movie only)
movie_fullscreen 1 (0/1) show movie fullscreen
quit_delay (empty) in seconds, (saver_type run_random_game_and_quit only )
saver_commandline (empty) use existing screensaver?

Additional Settings

Setting default description
music_path (empty) music folder, (eg c:\music)
lcd_display_file_path (empty) lcd file folder, (eg c:\lcd)
description_display (empty) text of your choice, (eg M.A.M.E. - Multiple Arcade Machine Emulator)

Settings Used by Mamewah


Setting default description
current_list 0 the currently selected list


The emulator list specific ini files are the settings which tell Mamewah how to handle each list that is created for a particular emulator. While it is not required to configure these, it allows you to create custom lists, such as favorites, or "best of", without losing the Main/Full list option. There should be a (emuname)-0.ini which handles settings for the main list, and then a (emuname)-#.ini for each additional list configured for that emulator.

Setting default description
list_title (empty) title of your choice for this game list, (e.g. Joystick Games)

Games List Settings

NOTE: emuname-0.ini does not have the list_type, display_clone_info or max_favorites settings, as these properties for the main list are fixed.

Setting default description
cycle_list 1 1=yes, 0=no, when going through list, should it "wrap-around" to the beginning
list_type normal (normal / most_played / longest_played), if you want to created a most played list, or a longest played list, change this, otherwise, leave as normal
display_clone_info 0 1=yes,0=no, should it display clones
max_favorites 0 0=no limit, >0=limit, limit number of maximum favorites for list

Execution Settings

Setting default description
pre_emulator_app_commandlines (empty) pre emulator commandlines
emulator_commandline (empty) emulator commandline
post_emulator_app_commandlines (empty) post emulator commandlines

Settings Used by Mamewah


Setting default description
current_game 1 number of currently selected game in the list


Each game can now have its own config file, to specify various startup, emulator, and exit commands and flags. This gives much more flexibility than in previous Mamewah versions.

Game ini files are located in the emulator folder, in a game directory (i.e. \mamewah\config\mame\game\19xx.ini)

Execution Settings

Setting default description
pre_emulator_app_commandlines pre game commandlines
emulator_commandline game specific emulator commandline
post_emulator_app_commandlines post game commandlines


Mamewah now also allows for you to group your Emulators, for example, have all your Arcade emulators together and all of your Console emulators together.

To do this, create a [groupname].ini file in the \mamewah\config folder. The file will include the emulator names (same as the ini filename in its folder) to include in the group.

Here is an example Arcade.ini:


Once you have created the group.ini files, you will have an option in the menu to change the group. Within the group, you can select the Platform/Emulator.

Note: It seems if you specify non existing emulator names in the group.ini file, Mamewah will not start. Make sure you are using the same name as the emulators .ini file.

Command Line Format Flags

Command line format lines that are required in the emuname and emuname-# ini files use the following flags. What you need to do is run the application by itself, and figure out what the format is that is needed by the application to work. Once you have done so, use the following flags to tell mamewah what is needed in the ini file.

As well as regular switches etc., the following strings can be used, and MAMEWAH will replace them suitably with information on the currently selected game when the application is launched:

[description] - full game name
[name] - romname
[year] - year made
[manufacturer] - manufacturer
[cloneof] - parent romname
[romof] - bios/parent romname
[screen] - screen type
[orientation] - screen orientation
[input] - input type
[status] - driver status
[color] - color status
[sound] - sound status
[category] - game category/genre

Note that if '-clone [cloneof]' is present in the commandline_format, and the selected game is not a clone, then '-clone [cloneof]' will be ignored.

In order to alter the commandline format used, the following flags can also be used:

[rompath] - rom path excluding trailing '\',
[romext] - rom extension excluding '.',
{8.3string} - can be used to convert 'string' to a short (8.3) filename (note that quotes if applicable must be used outside of the {}'s),
{dosbox} - this specifies dos window is to be visible upon launching emulator/app,
{nodosbox} - this specifies dos window is to be hidden upon launching emulator/app,
{autodosbox} - this specifies dos window is to be visible only if necessary upon launching emulator/app (this should be used for M.A.M.E. only!!),
{safelaunch} - this 'safe launches' the emulator/app, use this if the emulator/app is not launching properly from MAMEWAH,
{nosafelaunch} - this launches the emulator/app as normal (use if possible),
{nomusic} - this pauses music playback while the emulator/app is running,
{music} - this allows music playback to continue while emulator/app is running,
{nocursor} - this hides the cursor while the emulator/app is running,
{cursor} - this makes the default cursor visible while the emulator/app is running,
{cursor filename} - this makes the cursor specified by 'filename' visible while the emulator/app is running.

Note: If no 'dosbox' flag is set then '{dosbox}' will be assumed, If no 'safelaunch' flag is set then '{safelaunch}' will be assumed, If no 'music' flag is set then '{nomusic}' will be assumed, If no 'cursor' flag is set then '{nocursor}' will be assumed.

Flags in {curley brackets} are not used in the actual commandline sent to the emulator.

Back to Mamewah frontpage