summaryrefslogtreecommitdiffstats
path: root/src/osd/winui/help/docs/Command Line Settings.htm
diff options
context:
space:
mode:
Diffstat (limited to 'src/osd/winui/help/docs/Command Line Settings.htm')
-rw-r--r--src/osd/winui/help/docs/Command Line Settings.htm1377
1 files changed, 1377 insertions, 0 deletions
diff --git a/src/osd/winui/help/docs/Command Line Settings.htm b/src/osd/winui/help/docs/Command Line Settings.htm
new file mode 100644
index 00000000000..8752595f429
--- /dev/null
+++ b/src/osd/winui/help/docs/Command Line Settings.htm
@@ -0,0 +1,1377 @@
+
+<head>
+<style type="text/css">
+.style1 {
+ font-family: Arial, Helvetica, sans-serif;
+}
+.style2 {
+ font-size: x-small;
+}
+</style>
+</head>
+
+<body style="background-image: url('../images/bkground.gif')">
+
+<span class="style1"><span class="style2"><strong>This file describes general usage
+information about MAME. It is intended<br>
+to cover aspects of using and configuring the program that are common<br>
+across operating systems. For additional OS-specific options, please see<br>
+the separate documentation for your particular version of MAME.</strong></strong><br>
+<br>
+<br>
+Using the program<br>
+-----------------<br>
+<br>
+The usual way to run MAME is by telling it to run a particular game:<br>
+<br>
+mame &lt;gamename&gt; [options]<br>
+<br>
+For example:<br>
+<br>
+mame robby -nosound<br>
+<br>
+...will run Robby Roto without sound. There are many, many options<br>
+available. All commonly supported options are listed below. Options that<br>
+are specific to one operating system or version of MAME will be listed<br>
+in a separate document.<br>
+<br>
+An alternative way to run MAME is to give it a command:<br>
+<br>
+mame &lt;command&gt; [parameters]<br>
+<br>
+For example:<br>
+<br>
+mame -listsource gridlee<br>
+<br>
+...will print the name of the source file where the gridlee driver lives<br>
+to the screen. There are just a handful of these commands in MAME. They<br>
+are all listed below, just before the options list.<br>
+<br>
+<br>
+<br>
+Default Keys<br>
+------------<br>
+<br>
+All the keys below are fully configurable in the user interface. This list<br>
+shows the standard keyboard configuration.<br>
+<br>
+Tab Toggles the configuration menu.<br>
+<br>
+~ Toggles the On Screen Display. When the on-screen display is<br>
+visible, you can use the following keys to control it:<br>
+<br>
+Up - select previous parameter to modify<br>
+Down - select next parameter to modify<br>
+Enter - reset parameter value to its default<br>
+<br>
+Left - decrease the value of the selected parameter<br>
+Control+Left - decrease the value by 10x<br>
+Shift+Left - decrease the value by 0.1x<br>
+Alt+Left - decrease the value by the smallest amount<br>
+<br>
+Right - increase the value of the selected parameter<br>
+Control+Right - increase the value by 10x<br>
+Shift+Right - increase the value by 0.1x<br>
+Alt+Right - increase the value by the smallest amount<br>
+<br>
+P Pauses the game.<br>
+<br>
+Shift+P While paused, advances to next frame.<br>
+<br>
+F2 Service Mode for games that support it.<br>
+<br>
+F3 Resets the game.<br>
+<br>
+Shift+F3 Performs a &quot;hard reset&quot;, which tears everything down and re-<br>
+creates it from scratch. This is a more thorough and complete<br>
+reset than an F3.<br>
+<br>
+F4 Shows the game palette, decoded GFX, and any tilemaps. Use the<br>
+Enter key to switch between the three modes (palette, graphics,<br>
+and tilemaps). Press F4 again to turn off the display. The key<br>
+controls in each mode vary slightly:<br>
+<br>
+* Palette/colortable mode:<br>
+[ ] - switch between palette and colortable modes<br>
+Up/Down - scroll up/down one line at a time<br>
+Page Up/Page Down - scroll up/down one page at a time<br>
+Home/End - move to top/bottom of list<br>
+-/+ - increase/decrease the number of colors per row<br>
+Enter - switch to graphics viewer<br>
+<br>
+* Graphics mode:<br>
+[ ] - switch between different graphics sets<br>
+Up/Down - scroll up/down one line at a time<br>
+Page Up/Page Down - scroll up/down one page at a time<br>
+Home/End - move to top/bottom of list<br>
+Left/Right - change color displayed<br>
+R - rotate tiles 90 degrees clockwise<br>
+-/+ - increase/decrease the number of tiles per row<br>
+Enter - switch to tilemap viewer<br>
+<br>
+* Tilemap mode:<br>
+[ ] - switch between different tilemaps<br>
+Up/Down/Left/Right - scroll 8 pixels at a time<br>
+Shift+Up/Down/Left/Right - scroll 1 pixel at a time<br>
+Control+Up/Down/Left/Right - scroll 64 pixels at a time<br>
+R - rotate tilemap view 90 degrees clockwise<br>
+-/+ - increase/decrease the zoom factor<br>
+Enter - switch to palette/colortable mode<br>
+<br>
+Note: Not all games have decoded graphics and/or tilemaps.<br>
+<br>
+F6 Toggle cheat mode (if started with &quot;-cheat&quot;).<br>
+<br>
+F7 Load a save state. You will be requested to press a key to<br>
+determine which save state you wish to load. Note that the save<br>
+state feature is not supported for a large number of drivers. If<br>
+support is not enabled for a given driver, you will receive a<br>
+warning when attempting to save or load.<br>
+<br>
+Shift+F7 Create a save state. Requires an additional keypress to identify<br>
+the state, similar to the load option above.<br>
+<br>
+F8 Decrease frame skip on the fly.<br>
+<br>
+F9 Increase frame skip on the fly.<br>
+<br>
+F10 Toggle speed throttling.<br>
+<br>
+F11 Toggles speed display.<br>
+<br>
+Shift+F11 Toggles internal profiler display (if compiled in).<br>
+<br>
+F12 Saves a screen snapshot.<br>
+<br>
+Insert Fast forward. While held, runs the game with throttling disabled<br>
+and with the maximum frameskip.<br>
+<br>
+Escape Exits emulator.<br>
+<br>
+<br>
+<br>
+<br>
+Core commands<br>
+-------------<br>
+<br>
+-help / -h / -?<br>
+<br>
+Displays current MAME version and copyright notice.<br>
+<br>
+-validate / -valid<br>
+<br>
+Performs internal validation on every driver in the system. Run this<br>
+before submitting changes to ensure that you haven't violated any of<br>
+the core system rules.<br>
+<br>
+<br>
+<br>
+Configuration commands<br>
+----------------------<br>
+<br>
+-createconfig / -cc<br>
+<br>
+Creates the default mame.ini file. All the configuration options<br>
+(not commands) described below can be permanently changed by editing<br>
+this configuration file.<br>
+<br>
+-showconfig / -sc<br>
+<br>
+Displays the current configuration settings. If you route this to a<br>
+file, you can use it as an INI file. For example, the command:<br>
+<br>
+mame -showconfig &gt;mame.ini<br>
+<br>
+is equivalent to -createconfig.<br>
+<br>
+-showusage / -su<br>
+<br>
+Displays a summary of all the command line options. For options that<br>
+are not mentioned here, the short summary given by &quot;mame -showusage&quot;<br>
+is usually sufficient.<br>
+<br>
+<br>
+<br>
+Frontend commands<br>
+-----------------<br>
+<br>
+Note: By default, all the '-list' commands below write info to the screen.<br>
+If you wish to write the info to a textfile instead, add this to the end<br>
+of your command:<br>
+<br>
+&gt; filename<br>
+<br>
+...where 'filename' is the textfile's path and name<br>
+(e.g., c:\mame\list.txt).<br>
+<br>
+-listxml / -lx [&lt;gamename|wildcard&gt;]<br>
+<br>
+List comprehensive details for all of the supported games. The output<br>
+is quite long, so it is usually better to redirect this into a file.<br>
+The output is in XML format. By default all games are listed; however,<br>
+you can limit this list by specifying a driver name or wildcard after<br>
+the -listxml command.<br>
+<br>
+-listfull / -ll [&lt;gamename|wildcard&gt;]<br>
+<br>
+Displays a list of game driver names and descriptions. By default all<br>
+games are listed; however, you can limit this list by specifying a<br>
+driver name or wildcard after the -listfull command.<br>
+<br>
+-listsource / -ls [&lt;gamename|wildcard&gt;]<br>
+<br>
+Displays a list of drivers and the names of the source files their<br>
+game drivers live in. Useful for finding which driver a game runs on<br>
+in order to fix bugs. By default all games are listed; however, you<br>
+can limit this list by specifying a driver name or wildcard after<br>
+the -listsource command.<br>
+<br>
+-listclones / -lc [&lt;gamename|wildcard&gt;]<br>
+<br>
+Displays a list of clones. By default all clones are listed; however,<br>
+you can limit this list by specifying a driver name or wildcard after<br>
+the -listsource command.<br>
+<br>
+-listcrc<br>
+<br>
+Displays a full list of CRCs of all ROM images referenced by all<br>
+drivers within MAME.<br>
+<br>
+-listroms &lt;gamename&gt;<br>
+<br>
+Displays a list of ROM images referenced by the specified game.<br>
+<br>
+-listsamples &lt;gamename&gt;<br>
+<br>
+Displays a list of samples referenced by the specified game.<br>
+<br>
+-verifyroms [&lt;gamename|wildcard&gt;]<br>
+<br>
+Checks for invalid or missing ROM images. By default all drivers that<br>
+have valid ZIP files or directories in the rompath are verified;<br>
+however, you can limit this list by specifying a driver name or<br>
+wildcard after the -verifyroms command.<br>
+<br>
+-verifysamples [&lt;gamename|wildcard&gt;]<br>
+<br>
+Checks for invalid or missing samples. By default all drivers that<br>
+have valid ZIP files or directories in the samplepath are verified;<br>
+however, you can limit this list by specifying a driver name or<br>
+wildcard after the -verifyroms command.<br>
+<br>
+-romident<br>
+<br>
+Attempts to identify ROM files, if they are known to MAME, in the<br>
+specified .zip file or directory. This command can be used to try and<br>
+identify ROM sets taken from unknown boards. On exit, the errorlevel<br>
+is returned as one of the following:<br>
+<br>
+0: means all files were identified<br>
+7: means all files were identified except for 1 or more &quot;non-ROM&quot;<br>
+files<br>
+8: means some files were identified<br>
+9: means no files were identified<br>
+<br>
+<br>
+<br>
+Configuration options<br>
+---------------------<br>
+<br>
+-[no]readconfig / -[no]rc<br>
+<br>
+Enables or disables the reading of the config files. When enabled<br>
+(which is the default), MAME reads the following config files in order:<br>
+<br>
+- mame.ini<br>
+- &lt;mymame&gt;.ini (i.e. if MAME was renamed mame060.exe, MAME<br>
+parses mame060.ini here)<br>
+- debug.ini (if the debugger is enabled)<br>
+- vector.ini (for vector games only)<br>
+- &lt;driver&gt;.ini (based on the source filename of the driver)<br>
+- &lt;parent&gt;.ini (for clones only, may be called recursively)<br>
+- &lt;gamename&gt;.ini<br>
+<br>
+The settings in the later ini's override those in the earlier ini's.<br>
+So, for example, if you wanted to disable overlay effects in the<br>
+vector games, you can create a vector.ini with the &quot;effect none&quot; line<br>
+in it, and it will override whatever effect value you have in your<br>
+mame.ini. The default is ON (-readconfig).<br>
+<br>
+<br>
+<br>
+Core search path options<br>
+------------------------<br>
+<br>
+-rompath / -rp &lt;path&gt;<br>
+<br>
+Specifies a list of paths within which to find ROM or hard disk images.<br>
+Multiple paths can be specified by separating them with semicolons.<br>
+The default is 'roms' (that is, a directory &quot;roms&quot; in the same directory<br>
+as the MAME executable).<br>
+<br>
+-samplepath / -sp &lt;path&gt;<br>
+<br>
+Specifies a list of paths within which to find sample files. Multiple<br>
+paths can be specified by separating them with semicolons. The default<br>
+is 'samples' (that is, a directory &quot;samples&quot; in the same directory as<br>
+the MAME executable).<br>
+<br>
+-artpath / -artwork_directory &lt;path&gt;<br>
+<br>
+Specifies a list of paths within which to find artwork files. Multiple<br>
+paths can be specified by separating them with semicolons. The default<br>
+is 'artwork' (that is, a directory &quot;artwork&quot; in the same directory as<br>
+the MAME executable).<br>
+<br>
+-ctrlrpath / -ctrlr_directory &lt;path&gt;<br>
+<br>
+Specifies a list of paths within which to find controller-specific<br>
+configuration files. Multiple paths can be specified by separating<br>
+them with semicolons. The default is 'ctrlr' (that is, a directory<br>
+&quot;ctrlr&quot; in the same directory as the MAME executable).<br>
+<br>
+-inipath &lt;path&gt;<br>
+<br>
+Specifies a list of paths within which to find .INI files. Multiple<br>
+paths can be specified by separating them with semicolons. The default<br>
+is '.;ini' (that is, search in the current directory first, and then<br>
+in the directory &quot;ini&quot; in the same directory as the MAME executable).<br>
+<br>
+-fontpath &lt;path&gt;<br>
+<br>
+Specifies a list of paths within which to find .BDF font files. Multiple<br>
+paths can be specified by separating them with semicolons. The default<br>
+is '.' (that is, search in the same directory as the MAME executable).<br>
+<br>
+-crosshairpath &lt;path&gt;<br>
+<br>
+Specifies a list of paths within which to find crosshair files. Multiple<br>
+paths can be specified by separating them with semicolons. The default<br>
+is 'crsshair' (that is, a directory &quot;crsshair&quot; in the same directory as<br>
+the MAME executable). If the Crosshair is set to default in the menu,<br>
+MAME will look for gamename\cross#.png and then cross#.png in the<br>
+specified crsshairpath, where # is the player number. Failing that,<br>
+MAME will use built-in default crosshairs.<br>
+<br>
+<br>
+Core Output Directory Options<br>
+-----------------------------<br>
+<br>
+-cfg_directory &lt;path&gt;<br>
+<br>
+Specifies a single directory where configuration files are stored.<br>
+Configuration files store user configurable settings that are read at<br>
+startup and written when MAME exits. The default is 'cfg' (that is,<br>
+a directory &quot;cfg&quot; in the same directory as the MAME executable). If<br>
+this directory does not exist, it will be automatically created.<br>
+<br>
+-nvram_directory &lt;path&gt;<br>
+<br>
+Specifies a single directory where NVRAM files are stored. NVRAM files<br>
+store the contents of EEPROM and non-volatile RAM (NVRAM) for games<br>
+which used this type of hardware. This data is read at startup and<br>
+written when MAME exits. The default is 'nvram' (that is, a directory<br>
+&quot;nvram&quot; in the same directory as the MAME executable). If this<br>
+directory does not exist, it will be automatically created.<br>
+<br>
+-memcard_directory &lt;path&gt;<br>
+<br>
+Specifies a single directory where memory card files are stored.<br>
+Memory card files store the contents of removable memory cards for<br>
+games which used this type of hardware. This data is read and written<br>
+under control of the user via the &quot;Memory Card&quot; menu in the user<br>
+interface. The default is 'memcard' (that is, a directory &quot;memcard&quot;<br>
+in the same directory as the MAME executable). If this directory does<br>
+not exist, it will be automatically created.<br>
+<br>
+-input_directory &lt;path&gt;<br>
+<br>
+Specifies a single directory where input recording files are stored.<br>
+Input recordings are created via the -record option and played back<br>
+via the -playback option. The default is 'inp' (that is, a directory<br>
+&quot;inp&quot; in the same directory as the MAME executable). If this directory<br>
+does not exist, it will be automatically created.<br>
+<br>
+-state_directory &lt;path&gt;<br>
+<br>
+Specifies a single directory where save state files are stored. Save<br>
+state files are read and written either upon user request, or when<br>
+using the -autosave option. The default is 'sta' (that is, a directory<br>
+&quot;sta&quot; in the same directory as the MAME executable). If this directory<br>
+does not exist, it will be automatically created.<br>
+<br>
+-snapshot_directory &lt;path&gt;<br>
+<br>
+Specifies a single directory where screen snapshots are stored, when<br>
+requested by the user. The default is 'snap' (that is, a directory<br>
+&quot;snap&quot; in the same directory as the MAME executable). If this<br>
+directory does not exist, it will be automatically created.<br>
+<br>
+-diff_directory &lt;path&gt;<br>
+<br>
+Specifies a single directory where hard drive differencing files are<br>
+stored. Hard drive differencing files store any data that is written<br>
+back to a hard disk image, in order to preserve the original image.<br>
+The differencing files are created at startup when a game with a hard<br>
+disk image. The default is 'diff' (that is, a directory &quot;diff&quot; in the<br>
+same directory as the MAME executable). If this directory does not<br>
+exist, it will be automatically created.<br>
+<br>
+-comment_directory &lt;path&gt;<br>
+<br>
+Specifies a single directory where debugger comment files are stored.<br>
+Debugger comment files are written by the debugger when comments are<br>
+added to the disassembly for a game. The default is 'comments' (that<br>
+is, a directory &quot;comments&quot; in the same directory as the MAME<br>
+executable). If this directory does not exist, it will be<br>
+automatically created.<br>
+<br>
+<br>
+<br>
+Core Filename Options<br>
+---------------------<br>
+<br>
+-cheat_file &lt;filename&gt;<br>
+<br>
+Specifies the name of the cheat database file. The default is<br>
+'cheat.dat'.<br>
+<br>
+<br>
+<br>
+Core state/playback options<br>
+---------------------------<br>
+<br>
+-state &lt;slot&gt;<br>
+<br>
+Immediately after starting the specified game, will cause the save<br>
+state in the specified &lt;slot&gt; to be loaded.<br>
+<br>
+-[no]autosave<br>
+<br>
+When enabled, automatically creates a save state file when exiting<br>
+MAME and automatically attempts to reload it when later starting MAME<br>
+with the same game. This only works for games that have explicitly<br>
+enabled save state support in their driver. The default is OFF<br>
+(-noautosave).<br>
+<br>
+-playback / -pb &lt;filename&gt;<br>
+<br>
+Specifies a file from which to play back a series of game inputs. This<br>
+feature does not work reliably for all games, but can be used to watch<br>
+a previously recorded game session from start to finish. In order to<br>
+make things consistent, you should only record and playback with all<br>
+configuration (.cfg), NVRAM (.nv), and memory card files deleted. The<br>
+default is NULL (no playback).<br>
+<br>
+-record / -rec &lt;filename&gt;<br>
+<br>
+Specifies a file to record all input from a game session. This can be<br>
+used to record a game session for later playback. This feature does<br>
+not work reliably for all games, but can be used to watch a previously<br>
+recorded game session from start to finish. In order to make things<br>
+consistent, you should only record and playback with all configuration<br>
+(.cfg), NVRAM (.nv), and memory card files deleted. The default is<br>
+NULL (no recording).<br>
+<br>
+-snapname &lt;name&gt;<br>
+<br>
+Describes how MAME should name files for snapshots. &lt;name&gt; is a string<br>
+that provides a template that is used to generate a filename. Three<br>
+simple substitutions are provided: the / character represents the<br>
+path separator on any target platform (even Windows); the string %g<br>
+represents the driver name of the current game; and the string %i<br>
+represents an incrementing index. If %i is omitted, then each<br>
+snapshot taken will overwrite the previous one; otherwise, MAME will<br>
+find the next empty value for %i and use that for a filename. The<br>
+default is %g/%i, which creates a separate folder for each game,<br>
+and names the snapshots under it starting with 0000 and increasing<br>
+from there.<br>
+<br>
+-snapsize &lt;width&gt;x&lt;height&gt;<br>
+<br>
+Hard-codes the size for snapshots and movie recording. By default,<br>
+MAME will create snapshots at the game's current resolution in raw<br>
+pixels, and will create movies at the game's starting resolution in<br>
+raw pixels. If you specify this option, then MAME will create both<br>
+snapshots and movies at the size specified, and will bilinear filter<br>
+the result. Note that this size does not automatically rotate if the<br>
+game is vertically oriented. The default is 'auto'.<br>
+<br>
+-snapview &lt;viewname&gt;<br>
+<br>
+Specifies the view to use when rendering snapshots and movies. By<br>
+default, both use a special 'internal' view, which renders a separate<br>
+snapshot per screen or renders movies only of the first screen. By<br>
+specifying this option, you can override this default behavior and<br>
+select a single view that will apply to all snapshots and movies.<br>
+Note that &lt;viewname&gt; does not need to be a perfect match; rather, it<br>
+will select the first view whose name matches all the characters<br>
+specified by &lt;viewname&gt;. For example, -snapview native will match the<br>
+&quot;Native (15:14)&quot; view even though it is not a perfect match.<br>
+&lt;viewname&gt; can also be 'auto', which selects the first view with all<br>
+screens present. The default value is 'internal'.<br>
+<br>
+-mngwrite &lt;filename&gt;<br>
+<br>
+Writes each video frame to the given &lt;filename&gt; in MNG format,<br>
+producing an animation of the game session. Note that -mngwrite only<br>
+writes video frames; it does not save any audio data. Use -wavwrite<br>
+for that, and reassemble the audio/video using offline tools. The<br>
+default is NULL (no recording).<br>
+<br>
+-aviwrite &lt;filename&gt;<br>
+<br>
+Stream video and sound data to the given &lt;filename&gt; in AVI format,<br>
+producing an animation of the game session complete with sound. The<br>
+default is NULL (no recording).<br>
+<br>
+-wavwrite &lt;filename&gt;<br>
+<br>
+Writes the final mixer output to the given &lt;filename&gt; in WAV format,<br>
+producing an audio recording of the game session. The default is<br>
+NULL (no recording).<br>
+<br>
+-[no]burnin<br>
+<br>
+Tracks brightness of the screen during play and at the end of <br>
+emulation generates a PNG that can be used to simulate burn-in<br>
+effects on other games. The resulting PNG is created such that the<br>
+least used-areas of the screen are fully white (since burned-in areas <br>
+are darker, all other areas of the screen must be lightened a touch).<br>
+The intention is that this PNG can be loaded via an artwork file with<br>
+a low alpha (e.g, 0.1-0.2 seems to work well) and blended over the<br>
+entire screen. The PNG files are saved in the snap directory under <br>
+the gamename/burnin-&lt;screen.name&gt;.png. The default is OFF (-noburnin).<br>
+<br>
+<br>
+<br>
+Core performance options<br>
+------------------------<br>
+<br>
+-[no]autoframeskip / -[no]afs<br>
+<br>
+Automatically determines the frameskip level while you're playing the<br>
+game, adjusting it constantly in a frantic attempt to keep the game<br>
+running at full speed. Turning this on overrides the value you have<br>
+set for -frameskip below. The default is OFF (-noautoframeskip).<br>
+<br>
+-frameskip / -fs &lt;level&gt;<br>
+<br>
+Specifies the frameskip value. This is the number of frames out of<br>
+every 12 to drop when running. For example, if you say -frameskip 2,<br>
+then MAME will display 10 out of every 12 frames. By skipping those<br>
+frames, you may be able to get full speed in a game that requires more<br>
+horsepower than your computer has. The default value is -frameskip 0,<br>
+which skips no frames.<br>
+<br>
+-seconds_to_run / -str &lt;seconds&gt;<br>
+<br>
+This option can be used for benchmarking and automated testing. It tells<br>
+MAME to stop execution after a fixed number of seconds. By combining<br>
+this with a fixed set of other command line options, you can set up a<br>
+consistent environment for benchmarking MAME performance. In addition,<br>
+upon exit, the -str option will write a screenshot called final.png<br>
+to the game's snapshot directory.<br>
+<br>
+-[no]throttle<br>
+<br>
+Configures the default thottling setting. When throttling is on, MAME<br>
+attempts to keep the game running at the game's intended speed. When<br>
+throttling is off, MAME runs the game as fast as it can. Note that the<br>
+fastest speed is more often than not limited by your graphics card,<br>
+especially for older games. The default is ON (-throttle).<br>
+<br>
+-[no]sleep<br>
+<br>
+Allows MAME to give time back to the system when running with -throttle.<br>
+This allows other programs to have some CPU time, assuming that the<br>
+game isn't taxing 100% of your CPU resources. This option can<br>
+potentially cause hiccups in performance if other demanding programs<br>
+are running. The default is ON (-sleep).<br>
+<br>
+-speed &lt;factor&gt;<br>
+<br>
+Changes the way MAME throttles gameplay such that the game runs at some<br>
+multiplier of the original speed. A &lt;factor&gt; of 1.0 means to run the<br>
+game at its normal speed. A &lt;factor&gt; of 0.5 means run at half speed,<br>
+and a &lt;factor&gt; of 2.0 means run at 2x speed. Note that changing this<br>
+value affects sound playback as well, which will scale in pitch<br>
+accordingly. The internal resolution of the fraction is two decimal<br>
+places, so a value of 1.002 is the same as 1.0. The default is 1.0.<br>
+<br>
+-[no]refreshspeed / -[no]rs<br>
+<br>
+Allows MAME to dynamically adjust the gameplay speed such that it does<br>
+not exceed the slowest refresh rate for any targeted monitors in your<br>
+system. Thus, if you have a 60Hz monitor and run a game that is<br>
+actually designed to run at 60.6Hz, MAME will dynamically change the<br>
+speed down to 99% in order to prevent sound hiccups or other<br>
+undesirable side effects of running at a slower refresh rate. The<br>
+default is OFF (-norefreshspeed).<br>
+<br>
+<br>
+<br>
+Core rotation options<br>
+---------------------<br>
+<br>
+-[no]rotate<br>
+<br>
+Rotate the game to match its normal state (horizontal/vertical). This<br>
+ensures that both vertically and horizontally oriented games show up<br>
+correctly without the need to rotate your monitor. If you want to keep<br>
+the game displaying 'raw' on the screen the way it would have in the<br>
+arcade, turn this option OFF. The default is ON (-rotate).<br>
+<br>
+-[no]ror<br>
+-[no]rol<br>
+<br>
+Rotate the game screen to the right (clockwise) or left (counter-<br>
+clockwise) relative to either its normal state (if -rotate is<br>
+specified) or its native state (if -norotate is specified). The<br>
+default for both of these options is OFF (-noror -norol).<br>
+<br>
+-[no]flipx<br>
+-[no]flipy<br>
+<br>
+Flip (mirror) the game screen either horizontally (-flipx) or<br>
+vertically (-flipy). The flips are applied after the -rotate and<br>
+-ror/-rol options are applied. The default for both of these options<br>
+is OFF (-noflipx -noflipy).<br>
+<br>
+-[no]autoror<br>
+-[no]autorol<br>
+<br>
+These options are designed for use with pivoting screens that only<br>
+pivot in a single direction. If your screen only pivots clockwise,<br>
+use -autorol to ensure that the game will fill the screen either<br>
+horizontally or vertically in one of the directions you can handle.<br>
+If your screen only pivots counter-clockwise, use -autoror.<br>
+<br>
+<br>
+<br>
+Core artwork options<br>
+--------------------<br>
+<br>
+-[no]artwork_crop / -[no]artcrop<br>
+<br>
+Enable cropping of artwork to the game screen area only. This works<br>
+best with -video gdi or -video d3d, and means that vertically oriented<br>
+games running full screen can display their artwork to the left and<br>
+right sides of the screen. This does not work with -video ddraw<br>
+because of the way the game screens are rendered and scaled after the<br>
+fact. This option can also be controlled via the Video Options menu in<br>
+the user interface. The default is OFF (-noartwork_crop).<br>
+<br>
+-[no]use_backdrops / -[no]backdrop<br>
+<br>
+Enables/disables the display of backdrops. The default is ON<br>
+(-use_backdrops).<br>
+<br>
+-[no]use_overlays / -[no]overlay<br>
+<br>
+Enables/disables the display of overlays. The default is ON<br>
+(-use_overlays).<br>
+<br>
+-[no]use_bezels / -[no]bezel<br>
+<br>
+Enables/disables the display of bezels. The default is ON<br>
+(-use_bezels).<br>
+<br>
+<br>
+<br>
+Core screen options<br>
+-------------------<br>
+<br>
+-brightness &lt;value&gt;<br>
+<br>
+Controls the default brightness, or black level, of the game screens.<br>
+This option does not affect the artwork or other parts of the display.<br>
+Using the MAME UI, you can individually set the brightness for each<br>
+game screen; this option controls the initial value for all visible<br>
+game screens. The standard value is 1.0. Selecting lower values (down<br>
+to 0.1) will produce a darkened display, while selecting higher values<br>
+(up to 2.0) will give a brighter display. The default is 1.0.<br>
+<br>
+-contrast &lt;value&gt;<br>
+<br>
+Controls the contrast, or white level, of the game screens. This<br>
+option does not affect the artwork or other parts of the display.<br>
+Using the MAME UI, you can individually set the contrast for each<br>
+game screen; this option controls the initial value for all visible<br>
+game screens. The standard value is 1.0. Selecting lower values (down<br>
+to 0.1) will produce a dimmer display, while selecting higher values<br>
+(up to 2.0) will give a more saturated display. The default is 1.0.<br>
+<br>
+-gamma &lt;value&gt;<br>
+<br>
+Controls the gamma, which produces a potentially nonlinear black to<br>
+white ramp, for the game screens. This option does not affect the<br>
+artwork or other parts of the display. Using the MAME UI, you can<br>
+individually set the gamma for each game screen; this option controls<br>
+the initial value for all visible game screens. The standard value is<br>
+1.0, which gives a linear ramp from black to white. Selecting lower<br>
+values (down to 0.1) will increase the nonlinearity toward black,<br>
+while selecting higher values (up to 3.0) will push the nonlinearity<br>
+toward white. The default is 1.0.<br>
+<br>
+-pause_brightness &lt;value&gt;<br>
+<br>
+This controls the brightness level when MAME is paused. The default<br>
+value is 0.65.<br>
+<br>
+<br>
+<br>
+Core vector options<br>
+-------------------<br>
+<br>
+-[no]antialias / -[no]aa<br>
+<br>
+Enables antialiased line rendering for vector games. The default is ON<br>
+(-antialias).<br>
+<br>
+-beam &lt;width&gt;<br>
+<br>
+Sets the width of the vectors. This is a scaling factor against the<br>
+standard vector width. A value of 1.0 will keep the default vector<br>
+line width. Smaller values will reduce the width, and larger values<br>
+will increase the width. The default is 1.0.<br>
+<br>
+-flicker &lt;value&gt;<br>
+<br>
+Simulates a vector &quot;flicker&quot; effect, similar to a vector monitor that<br>
+needs adjustment. This option requires a float argument in the range<br>
+of 0.00 - 100.00 (0=none, 100=maximum). The default is 0.<br>
+<br>
+<br>
+<br>
+Core sound options<br>
+------------------<br>
+<br>
+-[no]sound<br>
+<br>
+Enable or disable sound altogether. The default is ON (-sound).<br>
+<br>
+-samplerate &lt;value&gt; / -sr &lt;value&gt;<br>
+<br>
+Sets the audio sample rate. Smaller values (e.g. 11025) cause lower<br>
+audio quality but faster emulation speed. Higher values (e.g. 48000)<br>
+cause higher audio quality but slower emulation speed. The default is<br>
+48000.<br>
+<br>
+-[no]samples<br>
+<br>
+Use samples if available. The default is ON (-samples).<br>
+<br>
+-volume / -vol &lt;value&gt;<br>
+<br>
+Sets the startup volume. It can later be changed with the user<br>
+interface (see Keys section). The volume is an attenuation in dB:<br>
+e.g., &quot;-volume -12&quot; will start with -12dB attenuation. The default<br>
+is 0.<br>
+<br>
+<br>
+<br>
+Core input options<br>
+------------------<br>
+<br>
+-[no]coin_lockout / -[no]coinlock<br>
+<br>
+Enables simulation of the &quot;coin lockout&quot; feature that is implmeneted<br>
+on a number of game PCBs. It was up to the operator whether or not<br>
+the coin lockout outputs were actually connected to the coin<br>
+mechanisms. If this feature is enabled, then attempts to enter a coin<br>
+while the lockout is active will fail and will display a popup message<br>
+in the user interface. If this feature is disabled, the coin lockout<br>
+signal will be ignored. The default is ON (-coin_lockout).<br>
+<br>
+-ctrlr &lt;controller&gt;<br>
+<br>
+Enables support for special controllers. Configuration files are<br>
+loaded from the ctrlrpath. They are in the same format as the .cfg<br>
+files that are saved, but only control configuration data is read<br>
+from the file. The default is NULL (no controller file).<br>
+<br>
+-[no]mouse<br>
+<br>
+Controls whether or not MAME makes use of mouse controllers. When<br>
+this is enabled, you will likely be unable to use your mouse for other<br>
+purposes until you exit or pause the game. The default is OFF<br>
+(-nomouse).<br>
+<br>
+-[no]joystick / -[no]joy<br>
+<br>
+Controls whether or not MAME makes use of joystick/gamepad controllers.<br>
+When this is enabled, MAME will ask DirectInput about which<br>
+controllers are connected. The default is OFF (-nojoystick).<br>
+<br>
+-[no]lightgun / -[no]gun<br>
+<br>
+Controls whether or not MAME makes use of lightgun controllers.<br>
+Note that most lightguns map to the mouse, so using -lightgun and<br>
+-mouse together may produce strange results. The default is OFF<br>
+(-nolightgun).<br>
+<br>
+-[no]multikeyboard / -[no]multikey<br>
+<br>
+Determines whether MAME differentiates between multiple keyboards.<br>
+Some systems may report more than one keyboard; by default, the data<br>
+from all of these keyboards is combined so that it looks like a single<br>
+keyboard. Turning this option on will enable MAME to report keypresses<br>
+on different keyboards independently. The default is OFF<br>
+(-nomultikeyboard).<br>
+<br>
+-[no]multimouse<br>
+<br>
+Determines whether MAME differentiates between multiple mice. Some<br>
+systems may report more than one mouse device; by default, the data<br>
+from all of these mice is combined so that it looks like a single<br>
+mouse. Turning this option on will enable MAME to report mouse<br>
+movement and button presses on different mice independently. The<br>
+default is OFF (-nomultimouse).<br>
+<br>
+-[no]steadykey / -[no]steady<br>
+<br>
+Some games require two or more buttons to be pressed at exactly the<br>
+same time to make special moves. Due to limitations in the keyboard<br>
+hardware, it can be difficult or even impossible to accomplish that<br>
+using the standard keyboard handling. This option selects a different<br>
+handling that makes it easier to register simultaneous button presses,<br>
+but has the disadvantage of making controls less responsive. The<br>
+default is OFF (-nosteadykey)<br>
+<br>
+-[no]offscreen_reload / -[no]reload<br>
+<br>
+Controls whether or not MAME treats a second button input from a<br>
+lightgun as a reload signal. In this case, MAME will report the gun's<br>
+position as (0,MAX) with the trigger held, which is equivalent to an<br>
+offscreen reload. This is only needed for games that required you to<br>
+shoot offscreen to reload, and then only if your gun does not support<br>
+off screen reloads. The default is OFF (-nooffscreen_reload).<br>
+<br>
+-joystick_map &lt;map&gt; / -joymap &lt;map&gt;<br>
+<br>
+Controls how joystick values map to digital joystick controls. MAME<br>
+accepts all joystick input from the system as analog data. For true<br>
+analog joysticks, this needs to be mapped down to the usual 4-way or<br>
+8-way digital joystick values. To do this, MAME divides the analog<br>
+range into a 9x9 grid. It then takes the joystick axis position (for<br>
+X and Y axes only), maps it to this grid, and then looks up a<br>
+translation from a joystick map. This parameter allows you to specify<br>
+the map. The default is 'auto', which means that a standard 8-way,<br>
+4-way, or 4-way diagonal map is selected automatically based on the<br>
+input port configuration of the current game.<br>
+<br>
+Maps are defined as a string of numbers and characters. Since the grid<br>
+is 9x9, there are a total of 81 characters necessary to define a<br>
+complete map. Below is an example map for an 8-way joystick:<br>
+<br>
+777888999 Note that the numeric digits correspond to the keys<br>
+777888999 on a numeric keypad. So '7' maps to up+left, '4' maps<br>
+777888999 to left, '5' maps to neutral, etc. In addition to the<br>
+444555666 numeric values, you can specify the character 's',<br>
+444555666 which means &quot;sticky&quot;. In this case, the value of the<br>
+444555666 map is the same as it was the last time a non-sticky<br>
+111222333 value was read.<br>
+111222333<br>
+111222333<br>
+<br>
+To specify the map for this parameter, you can specify a string of<br>
+rows separated by a '.' (which indicates the end of a row), like so:<br>
+<br>
+777888999.777888999.777888999.444555666.444555666.444555666.<br>
+111222333.111222333.111222333<br>
+<br>
+However, this can be reduced using several shorthands supported by the<br>
+&lt;map&gt; parameter. If information about a row is missing, then it is<br>
+assumed that any missing data in columns 5-9 are left/right symmetric<br>
+with data in columns 0-4; and any missing data in colums 0-4 is<br>
+assumed to be copies of the previous data. The same logic applies to<br>
+missing rows, except that up/down symmetry is assumed.<br>
+<br>
+By using these shorthands, the 81 character map can be simply<br>
+specified by this 11 character string: 7778...4445<br>
+<br>
+Looking at the first row, 7778 is only 4 characters long. The 5th<br>
+entry can't use symmetry, so it is assumed to be equal to the previous<br>
+character '8'. The 6th character is left/right symmetric with the 4th<br>
+character, giving an '8'. The 7th character is left/right symmetric<br>
+with the 3rd character, giving a '9' (which is '7' with left/right<br>
+flipped). Eventually this gives the full 777888999 string of the row.<br>
+<br>
+The second and third rows are missing, so they are assumed to be<br>
+identical to the first row. The fourth row decodes similarly to the<br>
+first row, producing 444555666. The fifth row is missing so it is<br>
+assumed to be the same as the fourth.<br>
+<br>
+The remaining three rows are also missing, so they are assumed to be<br>
+the up/down mirrors of the first three rows, giving three final rows<br>
+of 111222333.<br>
+<br>
+-joystick_deadzone &lt;value&gt; / -joy_deadzone &lt;value&gt; / -jdz &lt;value&gt;<br>
+<br>
+If you play with an analog joystick, the center can drift a little.<br>
+joystick_deadzone tells how far along an axis you must move before the<br>
+axis starts to change. This option expects a float in the range of<br>
+0.0 to 1.0. Where 0 is the center of the joystick and 1 is the outer<br>
+limit. The default is 0.3.<br>
+<br>
+-joystick_saturation &lt;value&gt; / joy_saturation &lt;value&gt; / -jsat &lt;value&gt;<br>
+<br>
+If you play with an analog joystick, the ends can drift a little,<br>
+and may not match in the +/- directions. joystick_saturation tells how<br>
+far along an axis movement change will be accepted before it reaches<br>
+the maximum range. This option expects a float in the range of 0.0 to<br>
+1.0, where 0 is the center of the joystick and 1 is the outer limit.<br>
+The default is 0.85.<br>
+<br>
+<br>
+<br>
+Core input automatic enable options<br>
+-----------------------------------<br>
+<br>
+-paddle_device &lt;keyboard|mouse|joystick|lightgun|none&gt; / -paddle<br>
+-adstick_device &lt;keyboard|mouse|joystick|lightgun|none&gt; / -adstick<br>
+-pedal_device &lt;keyboard|mouse|joystick|lightgun|none&gt; / -pedal<br>
+-dial_device &lt;keyboard|mouse|joystick|lightgun|none&gt; / -dial<br>
+-trackball_device &lt;keyboard|mouse|joystick|lightgun|none&gt; / -trackball<br>
+-lightgun_device &lt;keyboard|mouse|joystick|lightgun|none&gt;<br>
+-positional_device &lt;keyboard|mouse|joystick|lightgun|none&gt;<br>
+<br>
+Each of these options controls autoenabling the mouse, joystick, or<br>
+lightgun depending on the presence of a particular class of analog<br>
+control for a particular game. For example, if you specify the option<br>
+-paddle mouse, then any game that has a paddle control will<br>
+automatically enable mouse controls just as if you had explicitly<br>
+specified -mouse. Note that these controls override the values of<br>
+-[no]mouse, -[no]joystick, etc.<br>
+<br>
+<br>
+<br>
+Debugging options<br>
+-----------------<br>
+<br>
+-[no]log<br>
+<br>
+Creates a file called error.log which contains all of the internal<br>
+log messages generated by the MAME core and game drivers. The default<br>
+is OFF (-nolog).<br>
+<br>
+-[no]verbose / -[no]v<br>
+<br>
+Displays internal diagnostic information. This information is very<br>
+useful for debugging problems with your configuration. IMPORTANT: when<br>
+reporting bugs, please run with mame -verbose and include the<br>
+resulting information. The default is OFF (-noverbose).<br>
+<br>
+-[no]update_in_pause<br>
+<br>
+Enables updating of the main screen bitmap while the game is paused.<br>
+This means that the VIDEO_UPDATE callback will be called repeatedly<br>
+during pause, which can be useful for debugging. The default is OFF<br>
+(-noupdate_in_pause).<br>
+<br>
+-[no]debug<br>
+<br>
+Activates the integrated debugger. By default, the debugger is entered<br>
+by pressing the tilde (~) key during emulation. It is also entered<br>
+immediately at startup. The default is OFF (-nodebug).<br>
+<br>
+-debugscript &lt;filename&gt;<br>
+<br>
+Specifies a file that contains a list of debugger commands to execute<br>
+immediately upon startup. The default is NULL (no commands).<br>
+<br>
+<br>
+<br>
+Core misc options<br>
+-----------------<br>
+<br>
+-bios &lt;biosname&gt;<br>
+<br>
+Specifies the specific BIOS to use with the current game, for game<br>
+systems that make use of a BIOS. The -listxml output will list all of<br>
+the possible BIOS names for a game. The default is 'default'.<br>
+<br>
+-[no]cheat / -[no]c<br>
+<br>
+Enables the reading of the cheat database, if present, and the Cheat<br>
+menu in the user interface. The default is OFF (-nocheat).<br>
+<br>
+-[no]skip_gameinfo<br>
+<br>
+Forces MAME to skip displaying the game info screen. The default is<br>
+OFF (-noskip_gameinfo).<br>
+<br>
+</span></span><span class="style2"><strong>This file describes Windows-specific
+usage information about MAME. It is<br>
+intended to cover aspects of using and configuring the program that are<br>
+specific to running MAME from the command line on a Windows-based system.<br>
+For common options that apply to all systems, please see config.txt.</strong><br>
+<br>
+<br>
+<br>
+Default Keys<br>
+------------<br>
+<br>
+In addition to the keys described in config.txt, the following additional<br>
+keys are defined for Windows versions of MAME:<br>
+<br>
+<br>
+Alt+Enter Toggles between full-screen and windowed mode.<br>
+<br>
+<br>
+<br>
+Windows debugging options<br>
+-------------------------<br>
+<br>
+-[no]oslog<br>
+<br>
+Outputs the error.log data to the Windows debugger. This can be used at<br>
+the same time as -log to output the log data to both targets as well.<br>
+Default is OFF (-nooslog).<br>
+<br>
+<br>
+<br>
+Windows performance options<br>
+---------------------------<br>
+<br>
+-priority &lt;priority&gt;<br>
+<br>
+Sets the thread priority for the MAME threads. By default the priority<br>
+is left alone to guarantee proper cooperation with other applications.<br>
+The valid range is -15 to 1, with 1 being the highest priority. The<br>
+default is 0 (NORMAL priority).<br>
+<br>
+-[no]multithreading / -[no]mt<br>
+<br>
+Enables multithreading within MAME. At the moment, this causes the<br>
+window and all DirectDraw/Direct3D code to execute on a second thread,<br>
+which can improve performance on hyperthreaded and multicore systems.<br>
+The default is OFF (-nomultithreading).<br>
+<br>
+-numprocessors &lt;auto|value&gt;<br>
+Specify the number of processors to use for work queues. Specifying<br>
+&quot;auto&quot; will use the value reported by the system or environment <br>
+variable OSDPROCESSORS. To avoid abuse, this value is internally limited<br>
+to 4 times the number of processors reported by the system. <br>
+The default is &quot;auto&quot;.<br>
+<br>
+<br>
+Windows video options<br>
+---------------------<br>
+<br>
+-video &lt;gdi|ddraw|d3d|none&gt;<br>
+<br>
+Specifies which video subsystem to use for drawing. By specifying 'gdi'<br>
+here, you tell MAME to render video using standard Windows graphics<br>
+drawing calls. This is the slowest but most compatible option.<br>
+Specifying 'ddraw' instructs MAME to use DirectDraw for rendering.<br>
+This causes MAME to render everything at a lower resolution and then<br>
+upscale the results at the end. This produces high performance,<br>
+especially on older or low-power video cards, but has a noticeably<br>
+lower output quality. Specifying 'd3d' tells MAME to use Direct3D for<br>
+rendering. This produces the highest quality output and enables all<br>
+rendering options. It is recommended if you have a recent (2002+)<br>
+video card. The final option 'none' displays no windows and does no<br>
+drawing. This is primarily present for doing CPU benchmarks without<br>
+the overhead of the video system. The default is d3d.<br>
+<br>
+-numscreens &lt;count&gt;<br>
+<br>
+Tells MAME how many output windows to create. For most games, a single<br>
+output window is all you need, but some games originally used multiple<br>
+screens. Each screen (up to 4) has its own independent settings for<br>
+physical monitor, aspect ratio, resolution, and view, which can be<br>
+set using the options below. The default is 1.<br>
+<br>
+-[no]window<br>
+<br>
+Run MAME in either a window or full screen. The default is OFF<br>
+(-nowindow).<br>
+<br>
+-[no]maximize / -[no]max<br>
+<br>
+Controls initial window size in windowed mode. If it is set on, the<br>
+window will initially be set to the maximum supported size when you<br>
+start MAME. If it is turned off, the window will start out at the<br>
+smallest supported size. This option only has an effect when the<br>
+-window option is used. The default is ON (-maximize).<br>
+<br>
+-[no]keepaspect / -[no]ka<br>
+<br>
+Enables aspect ratio enforcement. When this option is on, the game's<br>
+proper aspect ratio (generally 4:3 or 3:4) is enforced, so you get the<br>
+game looking like it should. When running in a window with this option<br>
+on, you can only resize the window to the proper aspect ratio, unless<br>
+you are holding down the CONTROL key. By turning the option off, the<br>
+aspect ratio is allowed to float. In full screen mode, this means that<br>
+all games will stretch to the full screen size (even vertical games).<br>
+In window mode, it means that you can freely resize the window without<br>
+any constraints. The default is ON (-keepaspect).<br>
+<br>
+-prescale &lt;amount&gt;<br>
+<br>
+Controls the size of the screen images when they are passed off to the<br>
+graphics system for scaling. At the minimum setting of 1, the screen<br>
+is rendered at its original resolution before being scaled. At higher<br>
+settings, the screen is expanded by a factor of &lt;amount&gt; before being<br>
+scaled. With -video ddraw or -video d3d, this produces a less blurry<br>
+image at the expense of some speed. In -video ddraw mode, this also<br>
+increases the effective resolution of non-screen elements such as<br>
+artwork and fonts. The default is 1.<br>
+<br>
+-effect &lt;filename&gt;<br>
+<br>
+Specifies a single PNG file that is used as an overlay over any game<br>
+screens in the video display. This PNG file is assumed to live in the<br>
+root of one of the artpath directories. The pattern in the PNG file is<br>
+repeated both horizontally and vertically to cover the entire game<br>
+screen areas (but not any external artwork), and is rendered at<br>
+the target resolution of the game image. For -video gdi and -video d3d<br>
+modes, this means that one pixel in the PNG will map to one pixel on<br>
+your output display. For -video ddraw, this means that one pixel in the<br>
+PNG will map to one pixel in the prescaled game screen. If you wish to<br>
+use an effect that requires mapping n PNG pixels to each game screen<br>
+pixel with -video ddraw, you need to specify a -prescale factor of n as<br>
+well. The RGB values of each pixel in the PNG are multiplied against the<br>
+RGB values of the target screen. The default is 'none', meaning no<br>
+effect.<br>
+<br>
+-[no]waitvsync<br>
+<br>
+Waits for the refresh period on your computer's monitor to finish<br>
+before starting to draw video to your screen. If this option is off,<br>
+MAME will just draw to the screen at any old time, even in the middle<br>
+of a refresh cycle. This can cause &quot;tearing&quot; artifacts, where the top<br>
+portion of the screen is out of sync with the bottom portion. Tearing<br>
+is not noticeable on all games, and some people hate it more than<br>
+others. However, if you turn this option on, you will waste more of<br>
+your CPU cycles waiting for the proper time to draw, so you will see a<br>
+performance hit. You should only need to turn this on in windowed mode.<br>
+In full screen mode, it is only needed if -triplebuffer does not<br>
+remove the tearing, in which case you should use -notriplebuffer<br>
+-waitvsync. Note that this option does not work with -video gdi mode.<br>
+The default is OFF (-nowaitvsync).<br>
+<br>
+-[no]syncrefresh<br>
+<br>
+Enables speed throttling only to the refresh of your monitor. This<br>
+means that the game's actual refresh rate is ignored; however, the<br>
+sound code still attempts to keep up with the game's original refresh<br>
+rate, so you may encounter sound problems. This option is intended<br>
+mainly for those who have tweaked their video card's settings to<br>
+provide carefully matched refresh rate options. Note that this option<br>
+does not work with -video gdi mode.The default is OFF (-nosyncrefresh).<br>
+<br>
+<br>
+<br>
+DirectDraw-specific options<br>
+---------------------------<br>
+<br>
+-[no]hwstretch / -[no]hws<br>
+<br>
+When enabled, MAME uses the hardware stretching abilities of your<br>
+video card to scale the game image and associated artwork to the<br>
+target resolution. Depending on the quality of your graphic card and<br>
+its drivers, this may be a fractional, antialiased scaling (nice) or<br>
+an integer, blocky scaling (not so nice), in which case you might want<br>
+to disable this option. In addition, if you have configured specific<br>
+arcade-like video modes for MAME and don't want MAME to perform any<br>
+non-integral scaling of the image, you should also disable this option.<br>
+The default is ON (-hwstretch).<br>
+<br>
+<br>
+<br>
+Direct3D-specific options<br>
+-------------------------<br>
+<br>
+-d3dversion &lt;version&gt;<br>
+<br>
+MAME supports both Direct3D 9 and Direct3D 8 for maximum compatibility.<br>
+By default, it will automatically detect which one it can use and use<br>
+that version exclusively. You can override MAME's selection with this<br>
+option. It is primarily intended as a means for the MAME developers to<br>
+test compatibility with older hardware; for the most part, there is no<br>
+reason to alter this setting. The default is 9.<br>
+<br>
+-[no]filter / -[no]d3dfilter / -[no]flt<br>
+<br>
+Enable bilinear filtering on the game screen graphics. When disabled,<br>
+point filtering is applied, which is crisper but leads to scaling<br>
+artifacts. If you don't like the filtered look, you are probably better<br>
+off increasing the -prescale value rather than turning off filtering<br>
+altogether. The default is ON (-filter).<br>
+<br>
+<br>
+<br>
+Per-window options<br>
+------------------<br>
+<br>
+-screen &lt;display&gt;<br>
+-screen0 &lt;display&gt;<br>
+-screen1 &lt;display&gt;<br>
+-screen2 &lt;display&gt;<br>
+-screen3 &lt;display&gt;<br>
+<br>
+Specifies which physical monitor on your system you wish to have each<br>
+window use by default. In order to use multiple windows, you must have<br>
+increased the value of the -numscreens option. The name of each<br>
+display in your system can be determined by running MAME with the<br>
+-verbose option. The display names are typically in the format of:<br>
+\\.\DISPLAYn, where 'n' is a number from 1 to the number of connected<br>
+monitors. The default value for these options is 'auto', which means<br>
+that the first window is placed on the first display, the second<br>
+window on the second display, etc.<br>
+<br>
+The -screen0, -screen1, -screen2, -screen3 parameters apply to the<br>
+specific window. The -screen parameter applies to all windows. The<br>
+window-specific options override values from the all window option.<br>
+<br>
+-aspect &lt;width:height&gt; / -screen_aspect &lt;num:den&gt;<br>
+-aspect0 &lt;width:height&gt;<br>
+-aspect1 &lt;width:height&gt;<br>
+-aspect2 &lt;width:height&gt;<br>
+-aspect3 &lt;width:height&gt;<br>
+<br>
+Specifies the physical aspect ratio of the physical monitor for each<br>
+window. In order to use multiple windows, you must have increased the<br>
+value of the -numscreens option. The physical aspect ratio can be<br>
+determined by measuring the width and height of the visible screen<br>
+image and specifying them separated by a colon. The default value for<br>
+these options is 'auto', which means that MAME assumes the aspect<br>
+ratio is proportional to the number of pixels in the desktop video<br>
+mode for each monitor.<br>
+<br>
+The -aspect0, -aspect1, -aspect2, -aspect3 parameters apply to the<br>
+specific window. The -aspect parameter applies to all windows. The<br>
+window-specific options override values from the all window option.<br>
+<br>
+-resolution &lt;widthxheight[@refresh]&gt; / -r &lt;widthxheight[@refresh]&gt;<br>
+-resolution0 &lt;widthxheight[@refresh]&gt; / -r0 &lt;widthxheight[@refresh]&gt;<br>
+-resolution1 &lt;widthxheight[@refresh]&gt; / -r1 &lt;widthxheight[@refresh]&gt;<br>
+-resolution2 &lt;widthxheight[@refresh]&gt; / -r2 &lt;widthxheight[@refresh]&gt;<br>
+-resolution3 &lt;widthxheight[@refresh]&gt; / -r3 &lt;widthxheight[@refresh]&gt;<br>
+<br>
+Specifies an exact resolution to run in. In full screen mode, MAME<br>
+will try to use the specific resolution you request. The width and<br>
+height are required; the refresh rate is optional. If omitted or<br>
+set to 0, MAME will determine the mode auomatically. For example,<br>
+-resolution 640x480 will force 640x480 resolution, but MAME is free to<br>
+choose the refresh rate. Similarly, -resolution 0x0@60 will force a<br>
+60Hz refresh rate, but allows MAME to choose the resolution. The<br>
+string &quot;auto&quot; is also supported, and is equivalent to 0x0@0. In window<br>
+mode, this resolution is used as a maximum size for the window. This<br>
+option requires the -switchres option as well in order to actually<br>
+enable resolution switching with -video ddraw or -video d3d. The<br>
+default value for these options is 'auto'.<br>
+<br>
+The -resolution0, -resolution1, -resolution2, -resolution3 parameters<br>
+apply to the specific window. The -resolution parameter applies to all<br>
+windows. The window-specific options override values from the all<br>
+window option.<br>
+<br>
+-view &lt;viewname&gt;<br>
+-view0 &lt;viewname&gt;<br>
+-view1 &lt;viewname&gt;<br>
+-view2 &lt;viewname&gt;<br>
+-view3 &lt;viewname&gt;<br>
+<br>
+Specifies the initial view setting for each window. The &lt;viewname&gt;<br>
+does not need to be a perfect match; rather, it will select the first<br>
+view whose name matches all the characters specified by &lt;viewname&gt;.<br>
+For example, -view native will match the &quot;Native (15:14)&quot; view even<br>
+though it is not a perfect match. The value 'auto' is also supported,<br>
+and requests that MAME perform a default selection. The default value<br>
+for these options is 'auto'.<br>
+<br>
+The -view0, -view1, -view2, -view3 parameters apply to the<br>
+specific window. The -view parameter applies to all windows. The<br>
+window-specific options override values from the all window option.<br>
+<br>
+<br>
+<br>
+Full screen options<br>
+-------------------<br>
+<br>
+-[no]triplebuffer / -[no]tb<br>
+<br>
+Enables or disables &quot;triple buffering&quot;. Normally, MAME just draws<br>
+directly to the screen, without any fancy buffering. But with this<br>
+option enabled, MAME creates three buffers to draw to, and cycles<br>
+between them in order. It attempts to keep things flowing such that one<br>
+buffer is currently displayed, the second buffer is waiting to be<br>
+displayed, and the third buffer is being drawn to. -triplebuffer will<br>
+override -waitvsync, if the buffer is sucessfully created. This option<br>
+does not work with -video gdi. The default is OFF (-notriplebuffer).<br>
+<br>
+-[no]switchres<br>
+<br>
+Enables resolution switching. This option is required for the<br>
+-resolution* options to switch resolutions in full screen mode. On<br>
+modern video cards, there is little reason to switch resolutions unless<br>
+you are trying to achieve the &quot;exact&quot; pixel resolutions of the original<br>
+games, which requires significant tweaking. This option is also useful<br>
+on LCD displays, since they run with a fixed resolution and switching<br>
+resolutions on them is just silly. This option does not work with<br>
+-video gdi. The default is OFF (-noswitchres).<br>
+<br>
+-full_screen_brightness / -fsb &lt;value&gt;<br>
+<br>
+Controls the brightness, or black level, of the entire display. The<br>
+standard value is 1.0. Selecting lower values (down to 0.1) will produce<br>
+a darkened display, while selecting higher values (up to 2.0) will<br>
+give a brighter display. Note that not all video cards have hardware to<br>
+support this option. This option does not work with -video gdi. The<br>
+default is 1.0.<br>
+<br>
+-full_screen_contrast / -fsc &lt;value&gt;<br>
+<br>
+Controls the contrast, or white level, of the entire display. The<br>
+standard value is 1.0. Selecting lower values (down to 0.1) will produce<br>
+a dimmer display, while selecting higher values (up to 2.0) will<br>
+give a more saturated display. Note that not all video cards have<br>
+hardware to support this option. This option does not work with<br>
+-video gdi. The default is 1.0.<br>
+<br>
+-full_screen_gamma / -fsg &lt;value&gt;<br>
+<br>
+Controls the gamma, which produces a potentially nonlinear black to<br>
+white ramp, for the entire display. The standard value is 1.0, which<br>
+gives a linear ramp from black to white. Selecting lower values (down<br>
+to 0.1) will increase the nonlinearity toward black, while selecting<br>
+higher values (up to 3.0) will push the nonlinearity toward white. Note<br>
+that not all video cards have hardware to support this option. This<br>
+option does not work with -video gdi. The default is 1.0.<br>
+<br>
+<br>
+<br>
+Windows sound options<br>
+---------------------<br>
+<br>
+-audio_latency &lt;value&gt;<br>
+<br>
+This controls the amount of latency built into the audio streaming. By<br>
+default MAME tries to keep the DirectSound audio buffer between 1/5 and<br>
+2/5 full. On some systems, this is pushing it too close to the edge,<br>
+and you get poor sound sometimes. The latency parameter controls the<br>
+lower threshold. The default is 1 (meaning lower=1/5 and upper=2/5).<br>
+Set it to 2 (-audio_latency 2) to keep the sound buffer between 2/5 and<br>
+3/5 full. If you crank it up to 4, you can definitely notice the lag.<br>
+<br>
+<br>
+<br>
+Input device options<br>
+--------------------<br>
+<br>
+-[no]dual_lightgun / -[no]dual<br>
+<br>
+Controls whether or not MAME attempts to track two lightguns connected<br>
+at the same time. This option requires -lightgun. This option is a hack<br>
+for supporting older dual lightgun setups. If you have multiple<br>
+lightguns connected, you will probably just need to enable -mouse and<br>
+configure each lightgun independently. The default is OFF<br>
+(-nodual_lightgun).<br>
+</span>
+
+
+</html>