summaryrefslogtreecommitdiffstatshomepage
path: root/docs/source/commandline/commandline-all.rst
diff options
context:
space:
mode:
Diffstat (limited to 'docs/source/commandline/commandline-all.rst')
-rw-r--r--docs/source/commandline/commandline-all.rst1111
1 files changed, 703 insertions, 408 deletions
diff --git a/docs/source/commandline/commandline-all.rst b/docs/source/commandline/commandline-all.rst
index f05c5b6b479..89f7dac1287 100644
--- a/docs/source/commandline/commandline-all.rst
+++ b/docs/source/commandline/commandline-all.rst
@@ -1,10 +1,12 @@
-.. _universal-command-line:
+.. _mame-commandline-universal:
-Universal Commandline Options
-=============================
+Universal Command-line Options
+==============================
This section contains configuration options that are applicable to *all* MAME
-sub-builds (both SDL and Windows native).
+configurations (including both SDL and Windows native).
+
+.. contents:: :local:
Commands and Verbs
@@ -17,6 +19,8 @@ Verbs are actions to take upon something with the command (e.g.
**mame -validate pacman** has *mame* as a command and *-validate* as a verb)
+.. _mame-commandline-patterns:
+
Patterns
--------
@@ -32,12 +36,11 @@ patterns to avoid having your shell try to expand them against filenames (e.g.
.. _mame-commandline-paths:
-
File Names and Directory Paths
------------------------------
A number of options for specifying directories support multiple paths (for
-for example to search for ROMs in multiple locations). MAME expects multiple
+example to search for ROMs in multiple locations). MAME expects multiple
paths to be separated with semicolons ( ``;`` ).
MAME expands environment variable expressions in paths. The syntax used depends
@@ -63,22 +66,24 @@ executable (for example you could call it ``mame-here`` )::
#!/bin/sh
cd "`dirname "$0"`"
- exec ./mame64
+ exec ./mame
You should be able to use any text editor. If you have a choice of file format
-or line ending style, choose UNIX. This assumes you're using a 64-bit release
-build of MAME, but if you aren't you just need to change ``mame64`` to the name
-of your MAME executable. Once you've created the file, you need to mark is as
-executable. You can do this by opening a Terminal window, typing **chmod a+x**
-followed by a space, dragging the file you created onto the window (this causes
-Terminal to insert the full escaped path to the file), and then ensuring the
-Terminal window is active and hitting **Return** (or **Enter**) on your
-keyboard. You can close the Terminal window after doing this. Now if you
-double-click the script in the Finder, it will open a Terminal window, set the
-working directory to the location of the script (i.e. the folder containing
-MAME), and then start MAME.
+or line ending style, choose UNIX. This assumes you're using a 64-bit release
+build of MAME, but if you aren't you just need to change ``mame`` to the name
+of your MAME executable (e.g. mamed, mamep, mamedp). Once you've created the
+file, you need to mark it as executable. You can do this by opening a Terminal
+window, typing **chmod a+x** followed by a space, dragging the file you created
+onto the window (this causes Terminal to insert the full escaped path to the
+file), and then ensuring the Terminal window is active and hitting **Return**
+(or **Enter**) on your keyboard. You can close the Terminal window after doing
+this. Now if you double-click the script in the Finder, it will open a
+Terminal window, set the working directory to the location of the script
+(i.e. the folder containing MAME), and then start MAME.
+.. _mame-commandline-coreverbs:
+
Core Verbs
----------
@@ -101,7 +106,7 @@ Core Verbs
Example:
.. code-block:: bash
- mame64 -help
+ mame -help
.. _mame-commandline-validate:
@@ -119,7 +124,7 @@ Core Verbs
Example:
.. code-block:: bash
- mame64 -validate
+ mame -validate
Driver ace100 (file apple2.cpp): 1 errors, 0 warnings
Errors:
Software List device 'flop525_orig': apple2_flop_orig.xml: Errors parsing software list:
@@ -135,6 +140,9 @@ Core Verbs
apple2_flop_orig.xml(137.3): mismatched tag
+
+.. _mame-commandline-configverbs:
+
Configuration Verbs
-------------------
@@ -149,7 +157,7 @@ Configuration Verbs
Example:
.. code-block:: bash
- mame64 -createconfig
+ mame -createconfig
.. _mame-commandline-showconfig:
@@ -174,6 +182,8 @@ Configuration Verbs
a sufficient description.
+.. _mame-commandline-fronendverbs:
+
Frontend Verbs
--------------
@@ -191,7 +201,7 @@ overwritten.
Example:
.. code-block:: bash
- mame64 -listcrc puckman > list.txt
+ mame -listcrc puckman > list.txt
This creates (or overwrites the existing file if already there) ``list.txt``
and fills the file with the results of **-listcrc puckman**. In other
@@ -214,7 +224,7 @@ overwritten.
Example:
.. code-block:: bash
- mame64 galaxian -listxml
+ mame galaxian -listxml
<?xml version="1.0"?>
<!DOCTYPE mame [
<!ELEMENT mame (machine+)>
@@ -238,7 +248,7 @@ overwritten.
.. Tip:: Output from this command is typically more useful if redirected to
an output file. For instance, doing
- **mame64 -listxml galaxian > galax.xml** will make ``galax.xml`` or
+ **mame -listxml galaxian > galax.xml** will make ``galax.xml`` or
overwrite any existing data in the file with the results of
**-listxml**; this will allow you to view it in a text editor or parse
it with external tools.
@@ -250,7 +260,7 @@ overwritten.
Example:
.. code-block:: bash
- mame64 -listfull galaxian*
+ mame -listfull galaxian*
Name: Description:
galaxian "Galaxian (Namco set 1)"
galaxiana "Galaxian (Namco set 2)"
@@ -279,7 +289,7 @@ overwritten.
Example:
.. code-block:: bash
- mame64 galaga -listsource
+ mame galaga -listsource
galaga galaga.cpp
.. _mame-commandline-listclones:
@@ -294,14 +304,14 @@ overwritten.
Example 1:
.. code-block:: bash
- mame64 pacman -listclones
+ mame pacman -listclones
Name: Clone of:
pacman puckman
Example 2:
.. code-block:: bash
- mame64 puckman -listclones
+ mame puckman -listclones
Name: Clone of:
abscam puckman
bucaner puckman
@@ -321,7 +331,7 @@ overwritten.
Example:
.. code-block:: bash
- mame64 galaxian -listbrothers
+ mame galaxian -listbrothers
Source file: Name: Parent:
galaxian.cpp amidar
galaxian.cpp amidar1 amidar
@@ -342,7 +352,7 @@ overwritten.
Example:
.. code-block:: bash
- mame64 playch10 -listcrc
+ mame playch10 -listcrc
d52fa07a pch1-c__8t_e-2.8t playch10 PlayChoice-10 BIOS
503ee8b1 pck1-c.8t playch10 PlayChoice-10 BIOS
123ffa37 pch1-c_8te.8t playch10 PlayChoice-10 BIOS
@@ -375,7 +385,7 @@ overwritten.
Example:
.. code-block:: bash
- mame64 neogeo -listroms
+ mame neogeo -listroms
ROMs required for driver "neogeo".
Name Size Checksum
sp-s2.sp1 131072 CRC(9036d879) SHA1(4f5ed7105b7128794654ce82b51723e16e389543)
@@ -397,7 +407,7 @@ overwritten.
Example:
.. code-block:: bash
- mame64 armorap -listsamples
+ mame armorap -listsamples
Samples required for driver "armorap".
loexp
jeepfire
@@ -418,7 +428,7 @@ overwritten.
Example:
.. code-block:: bash
- mame64 gradius -verifyroms
+ mame gradius -verifyroms
romset gradius [nemesis] is good
1 romsets found, 1 were OK.
@@ -434,28 +444,28 @@ overwritten.
Example:
.. code-block:: bash
- mame64 armorap -verifysamples
+ mame armorap -verifysamples
sampleset armorap [armora] is good
1 samplesets found, 1 were OK.
.. _mame-commandline-romident:
-**-romident** [*path\\to\\romstocheck.zip*]
+**-romident** [*path/to/romstocheck.zip*]
Attempts to identify ROM files, if they are known to MAME, in the specified
.zip file or directory. This command can be used to try and identify ROM
sets taken from unknown boards. On exit, the errorlevel is returned as one
of the following:
- * 0: means all files were identified
- * 7: means all files were identified except for 1 or more "non-ROM" files
- * 8: means some files were identified
- * 9: means no files were identified
+ * 0: means all files were identified
+ * 7: means all files were identified except for 1 or more "non-ROM" files
+ * 8: means some files were identified
+ * 9: means no files were identified
Example:
.. code-block:: bash
- mame64 unknown.rom -romident
+ mame unknown.rom -romident
Identifying unknown.rom....
unknown.rom = 456-a07.17l gradius Gradius (Japan, ROM version)
@@ -474,7 +484,7 @@ overwritten.
Example:
.. code-block:: bash
- mame64 apple2e -listdevices
+ mame apple2e -listdevices
Driver apple2e (Apple //e):
<root> Apple //e
a2bus Apple II Bus
@@ -506,7 +516,7 @@ overwritten.
Example:
.. code-block:: bash
- mame64 apple2e -listslots
+ mame apple2e -listslots
SYSTEM SLOT NAME SLOT OPTIONS SLOT DEVICE NAME
---------------- ---------------- ---------------- ----------------------------
apple2e sl1 4play 4play Joystick Card (rev. B)
@@ -525,6 +535,32 @@ overwritten.
joy Apple II analog joysticks
paddles Apple II paddles
+.. _mame-commandline-listbios:
+
+**-listbios** [*<pattern>*]
+
+ Show available BIOS options for a system (if available). BIOS options may
+ be available for the system or any devices selected as slot options.
+
+ If no pattern is specified, the results will include *all* supported
+ systems.
+
+ Example:
+ .. code-block:: bash
+
+ mamed -listbios apple2 -sl2 grapplus -sl4 videoterm
+ BIOS options for system Apple ][ (apple2):
+ default Original Monitor
+ autostart Autostart Monitor
+
+ BIOS options for device Orange Micro Grappler+ Printer Interface (-sl2 grapplus):
+ v30 ROM 3.0
+ v32 ROM 3.2
+
+ BIOS options for device Videx Videoterm 80 Column Display (-sl4 videoterm):
+ v24_60hz Firmware v2.4 (60 Hz)
+ v24_50hz Firmware v2.4 (50 Hz)
+
.. _mame-commandline-listmedia:
**-listmedia** / **-lm** [<*pattern*>]
@@ -536,7 +572,7 @@ overwritten.
Example:
.. code-block:: bash
- mame64 coco3 -listmedia
+ mame coco3 -listmedia
SYSTEM MEDIA NAME (brief) IMAGE FILE EXTENSIONS SUPPORTED
---------------- --------------------------- -------------------------------
coco3 cassette (cass) .wav .cas
@@ -557,7 +593,7 @@ overwritten.
Example:
.. code-block:: bash
- mame64 coco3 -listsoftware
+ mame coco3 -listsoftware
<?xml version="1.0"?>
<!DOCTYPE softwarelists [
<!ELEMENT softwarelists (softwarelist*)>
@@ -594,7 +630,7 @@ overwritten.
Example:
.. code-block:: bash
- mame64 coco3 -verifysoftware
+ mame coco3 -verifysoftware
romset coco_cart:7cardstd is good
coco_cart:amazing: a mazing world of malcom mortar (1987)(26-3160)(zct systems).rom (16384 bytes) - NEEDS REDUMP
romset coco_cart:amazing is best available
@@ -613,7 +649,7 @@ overwritten.
Example:
.. code-block:: bash
- mame64 -getsoftlist apple2_flop_orig
+ mame -getsoftlist apple2_flop_orig
<?xml version="1.0"?>
<!DOCTYPE softwarelists [
<!ELEMENT softwarelists (softwarelist*)>
@@ -648,7 +684,7 @@ overwritten.
Example:
.. code-block:: bash
- mame64 -verifysoftlist apple2_flop_orig
+ mame -verifysoftlist apple2_flop_orig
romset apple2_flop_orig:agentusa is good
romset apple2_flop_orig:airheart is good
romset apple2_flop_orig:aplpanic is good
@@ -663,8 +699,8 @@ overwritten.
romset apple2_flop_orig:autobahn is good
...
-.. _osd-commandline-options:
+.. _mame-commandline-osdoptions:
OSD-related Options
-------------------
@@ -681,11 +717,54 @@ OSD-related Options
Example:
.. code-block:: bash
- mame64 ibm5150 -uimodekey DEL
+ mame ibm5150 -uimodekey DEL
+
+.. _mame-commandline-controllermap:
+
+**-controller_map** / **-ctrlmap** *<filename>*
+
+ Path to a text file containing game controller button and axis mappings in
+ the format used by SDL2 and Steam, or ``none`` to use only built-in
+ mappings. Must use an ASCII-compatible text encoding with native line
+ endings (e.g. CRLF on Windows). Currently only supported when using the
+ ``sdlgame`` joystick provider. The default setting is ``none``.
+
+ A `community-sourced list of game controller mappings
+ <https://github.com/gabomdq/SDL_GameControllerDB>`_ can be found on GitHub.
+ Besides using a text editor, several tools are available for creating game
+ controller mappings, including `SDL2 Gamepad Mapper
+ <https://gitlab.com/ryochan7/sdl2-gamepad-mapper/-/releases>`_ and SDL2
+ ControllerMap which is `supplied with SDL
+ <https://github.com/libsdl-org/SDL/releases/latest>`_. You can also
+ configure your controller in Steam’s Big Picture mode, then copy the
+ mappings from ``SDL_GamepadBind`` entries in the **config.vdf** file found
+ in the **config** folder inside your Steam installation folder.
+
+ Example:
+ .. code-block:: bash
+
+ mame -controller_map gamecontrollerdb.txt sf2ce
+
+.. _mame-commandline-backgroundinput:
+
+**-[no]background_input**
+
+ Sets whether input is accepted or ignored when MAME does not have UI focus.
+ This setting is ignored when the debugger is enabled. The default is OFF
+ (**-nobackground_input**).
+
+ Currently supported for RawInput mouse/keyboard input, DirectInput
+ mouse/keyboard/joystick input and XInput joystick input on Windows, and SDL
+ game controller/joystick input.
+
+ Example:
+ .. code-block:: bash
+
+ mame -background_input ssf2tb
.. _mame-commandline-uifontprovider:
-**-uifontprovider**
+**-uifontprovider** *<module>*
Chooses provider for UI font rendering. The default setting is ``auto``.
@@ -724,11 +803,11 @@ OSD-related Options
Example:
.. code-block:: bash
- mame64 ajax -uifontprovider dwrite
+ mame ajax -uifontprovider dwrite
.. _mame-commandline-keyboardprovider:
-**-keyboardprovider**
+**-keyboardprovider** *<module>*
Chooses how MAME will get keyboard input. The default is ``auto``.
@@ -776,11 +855,11 @@ Example:
Example:
.. code-block:: bash
- mame64 c64 -keyboardprovider win32
+ mame c64 -keyboardprovider win32
.. _mame-commandline-mouseprovider:
-**\-mouseprovider**
+**-mouseprovider** *<module>*
Chooses how MAME will get mouse input. The default is ``auto``.
@@ -824,11 +903,11 @@ Example:
Example:
.. code-block:: bash
- mame64 indy_4610 -mouseprovider win32
+ mame indy_4610 -mouseprovider win32
.. _mame-commandline-lightgunprovider:
-**\-lightgunprovider**
+**-lightgunprovider** *<module>*
Chooses how MAME will get light gun input. The default is ``auto``.
@@ -871,13 +950,14 @@ Example:
Example:
.. code-block:: bash
- mame64 lethalen -lightgunprovider x11
+ mame lethalen -lightgunprovider x11
.. _mame-commandline-joystickprovider:
-**\-joystickprovider**
+**-joystickprovider** *<module>*
- Chooses how MAME will get joystick input. The default is ``auto``.
+ Chooses how MAME will get joystick and other game controller input. The
+ default is ``auto``.
.. list-table:: Supported joystick input providers per-platform
:header-rows: 0
@@ -888,49 +968,101 @@ Example:
- winhybrid
- dinput
- xinput
+ - sdlgame
+ - sdljoy
- none
- - sdl
* - **SDL**
- auto [#JIPAutoSDL]_.
-
-
-
+ - sdlgame
+ - sdljoy
- none
- - sdl
.. rubric:: Footnotes
-.. [#JIPAutoWindows] On Windows, auto will default to ``dinput``.
+.. [#JIPAutoWindows] On Windows native, auto will default to ``winhybrid``.
+
+.. [#JIPAutoSDL] On SDL, auto will default to ``sdlgame``.
+
+winhybrid
+ Uses XInput for compatible game controllers, falling back to DirectInput for
+ other game controllers. Typically provides the best experience on Windows.
+dinput
+ Uses DirectInput for all game controllers. May be useful if you want to use
+ more than four XInput game controllers simultaneously. Note that LT and RT
+ controls are combined with using XInput game controllers via DirectInput.
+xinput
+ Supports up to four XInput game controllers.
+sdlgame
+ Uses the SDL game controller API for game controllers with button/axis
+ mappings available, falling back to the SDL joystick API for other game
+ controllers. Provides consistent button and axis assignment and meaningful
+ control names for popular game controllers. Use the :ref:`controller_map
+ option <mame-commandline-controllermap>` to supply mappings for additional
+ game controllers or override built-in mappings.
+sdljoy
+ Uses the SDL joystick API for all game controllers.
+none
+ Ignores all game controllers.
+
+Example:
+ .. code-block:: bash
+
+ mame mk2 -joystickprovider winhybrid
-.. [#JIPAutoSDL] On SDL, auto will default to ``sdl``.
+.. _mame-commandline-midiprovider:
-.. Tip:: Note that Microsoft XBox 360 and XBox One controllers connected to
- Windows will work best with ``winhybrid`` or ``xinput``. The
- ``winhybrid`` option supports a mix of DirectInput and XInput
- controllers at the same time.
+**-midiprovider** *<module>*
+
+ Chooses how MAME will communicate with MIDI devices and applications (e.g.
+ music keyboards and synthesisers). Supported options are ``pm`` to use the
+ PortMidi library, or ``none`` to disable MIDI input and output (MIDI files
+ can still be played). The default is ``auto``, which will use PortMidi if
+ available.
Example:
.. code-block:: bash
- mame64 mk2 -joystickprovider winhybrid
+ mame -midiprovider none dx100 -midiin canyon.mid
+
+.. _mame-commandline-networkprovider:
-.. Tip:: On Windows, winhybrid is likely to give the best experience by
- supporting both XInput and DirectInput controllers.
+**-networkprovider** *<module>*
+ Chooses how MAME will provide communication for emulated packet-oriented
+ network interfaces (e.g. Ethernet cards). Supported options are ``taptun``
+ to use the TUN/TAP, TAP-Windows or similar, ``pcap`` to use a pcap library,
+ or ``none`` to disable communication for emulated network interfaces.
+ Available options depend on your operating system. By default, ``taptun``
+ and ``none`` are available on Windows and Linux, and ``pcap`` and ``none``
+ are available on macOS.
-OSD CLI Options
----------------
+ The default is ``auto`` which will use ``taptun`` if available, falling back
+ to ``pcap``.
+
+Example:
+ .. code-block:: bash
+
+ mame -networkprovider pcap apple2ee -sl3 uthernet
+
+
+.. _mame-commandline-cliverbs:
+
+OSD Command-Line Verbs
+----------------------
.. _mame-commandline-listmidi:
-**\-listmidi**
+**-listmidi**
- Create a list of available MIDI I/O devices for use with emulation.
+ List available MIDI I/O devices for use with emulation.
Example:
.. code-block:: bash
- mame64 -listmidi
+ mame -listmidi
MIDI input ports:
MIDI output ports:
@@ -939,20 +1071,20 @@ OSD CLI Options
.. _mame-commandline-listnetwork:
-**\-listnetwork**
+**-listnetwork**
- Create a list of available Network Adapters for use with emulation.
+ List available network adapters for use with emulation.
Example 1:
.. code-block:: bash
- mame64 -listnetwork
+ mame -listnetwork
No network adapters were found
Example 2:
.. code-block:: bash
- mame64 -listnetwork
+ mame -listnetwork
Available network adapters:
Local Area Connection
@@ -960,6 +1092,8 @@ OSD CLI Options
any network adapters.
+.. _mame-commandline-osdoutput:
+
OSD Output Options
------------------
@@ -978,7 +1112,7 @@ OSD Output Options
Example:
.. code-block:: bash
- mame64 asteroid -output console
+ mame asteroid -output console
led0 = 1
led0 = 0
...
@@ -986,6 +1120,8 @@ OSD Output Options
led0 = 0
+.. _mame-commandline-configoptions:
+
Configuration Options
---------------------
@@ -1021,8 +1157,10 @@ Configuration Options
Example:
.. code-block:: bash
- mame64 apple2ee -noreadconfig -sl6 diskii -sl7 cffa2 -hard1 TotalReplay.2mg
+ mame apple2ee -noreadconfig -sl6 diskii -sl7 cffa2 -hard1 TotalReplay.2mg
+
+.. _mame-commandline-pathoptions:
Core Search Path Options
------------------------
@@ -1038,7 +1176,7 @@ Core Search Path Options
Example:
.. code-block:: bash
- mame64 -homepath c:\mame\lua
+ mame -homepath C:\mame\lua
.. _mame-commandline-rompath:
@@ -1053,7 +1191,7 @@ Core Search Path Options
Example:
.. code-block:: bash
- mame64 -rompath c:\mame\roms;c:\roms\another
+ mame -rompath C:\mame\roms;C:\roms\another
.. _mame-commandline-hashpath:
@@ -1068,7 +1206,7 @@ Core Search Path Options
Example:
.. code-block:: bash
- mame64 -hashpath c:\mame\hash;c:\roms\softlists
+ mame -hashpath C:\mame\hash;C:\roms\softlists
.. _mame-commandline-samplepath:
@@ -1083,11 +1221,11 @@ Core Search Path Options
Example:
.. code-block:: bash
- mame64 -samplepath c:\mame\samples;c:\roms\samples
+ mame -samplepath C:\mame\samples;C:\roms\samples
.. _mame-commandline-artpath:
-**-artpath** *<path>* *<path>*
+**-artpath** *<path>*
Specifies one or more paths within which to find external layout and artwork
files. Multiple paths can be specified by separating them with semicolons.
@@ -1098,14 +1236,15 @@ Core Search Path Options
Example:
.. code-block:: bash
- mame64 -artpath c:\mame\artwork;c:\emu\shared-artwork
+ mame -artpath C:\mame\artwork;C:\emu\shared-artwork
.. _mame-commandline-ctrlrpath:
**-ctrlrpath** *<path>*
- Specifies one or more paths within which to find default input configuration
+ Specifies one or more paths within which to find controller configuration
files. Multiple paths can be specified by separating them with semicolons.
+ Used in conjunction with the ``-ctrlr`` option.
The default is ``ctrlr`` (that is, a directory ``ctrlr`` in the current
working directory).
@@ -1113,7 +1252,7 @@ Core Search Path Options
Example:
.. code-block:: bash
- mame64 -ctrlrpath c:\mame\ctrlr;c:\emu\controllers
+ mame -ctrlrpath C:\mame\ctrlr;C:\emu\controllers
.. _mame-commandline-inipath:
@@ -1142,7 +1281,7 @@ Core Search Path Options
Example:
.. code-block:: bash
- mame64 -inipath c:\users\thisuser\documents\mameini
+ mame -inipath C:\Users\thisuser\documents\mameini
.. _mame-commandline-fontpath:
@@ -1157,7 +1296,7 @@ Core Search Path Options
Example:
.. code-block:: bash
- mame64 -fontpath c:\mame\;c:\emu\artwork\mamefonts
+ mame -fontpath C:\mame\;C:\emu\artwork\mamefonts
.. _mame-commandline-cheatpath:
@@ -1172,7 +1311,7 @@ Core Search Path Options
Example:
.. code-block:: bash
- mame64 -cheatpath c:\mame\cheat;c:\emu\cheats
+ mame -cheatpath C:\mame\cheat;C:\emu\cheats
.. _mame-commandline-crosshairpath:
@@ -1187,7 +1326,7 @@ Core Search Path Options
Example:
.. code-block:: bash
- mame64 -crosshairpath c:\mame\crsshair;c:\emu\artwork\crosshairs
+ mame -crosshairpath C:\mame\crsshair;C:\emu\artwork\crosshairs
.. _mame-commandline-pluginspath:
@@ -1201,7 +1340,7 @@ Core Search Path Options
Example:
.. code-block:: bash
- mame64 -pluginspath c:\mame\plugins;c:\emu\lua
+ mame -pluginspath C:\mame\plugins;C:\emu\lua
.. _mame-commandline-languagepath:
@@ -1216,7 +1355,7 @@ Core Search Path Options
Example:
.. code-block:: bash
- mame64 -languagepath c:\mame\language;c:\emu\mame-languages
+ mame -languagepath C:\mame\language;C:\emu\mame-languages
.. _mame-commandline-swpath:
@@ -1230,9 +1369,11 @@ Core Search Path Options
Example:
.. code-block:: bash
- mame64 -swpath c:\mame\software;c:\emu\mydisks
+ mame -swpath C:\mame\software;C:\emu\mydisks
+.. _mame-commandline-coreoutdir:
+
Core Output Directory Options
-----------------------------
@@ -1253,7 +1394,7 @@ Core Output Directory Options
Example:
.. code-block:: bash
- mame64 -cfg_directory c:\mame\cfg
+ mame -cfg_directory C:\mame\cfg
.. _mame-commandline-nvramdirectory:
@@ -1271,7 +1412,7 @@ Core Output Directory Options
Example:
.. code-block:: bash
- mame64 -nvram_directory c:\mame\nvram
+ mame -nvram_directory C:\mame\nvram
.. _mame-commandline-inputdirectory:
@@ -1288,7 +1429,7 @@ Core Output Directory Options
Example:
.. code-block:: bash
- mame64 -input_directory c:\mame\inp
+ mame -input_directory C:\mame\inp
.. _mame-commandline-statedirectory:
@@ -1305,7 +1446,7 @@ Core Output Directory Options
Example:
.. code-block:: bash
- mame64 -state_directory c:\mame\sta
+ mame -state_directory C:\mame\sta
.. _mame-commandline-snapshotdirectory:
@@ -1321,7 +1462,7 @@ Core Output Directory Options
Example:
.. code-block:: bash
- mame64 -snapshot_directory c:\mame\snap
+ mame -snapshot_directory C:\mame\snap
.. _mame-commandline-diffdirectory:
@@ -1340,7 +1481,7 @@ Core Output Directory Options
Example:
.. code-block:: bash
- mame64 -diff_directory c:\mame\diff
+ mame -diff_directory C:\mame\diff
.. _mame-commandline-commentdirectory:
@@ -1357,8 +1498,10 @@ Core Output Directory Options
Example:
.. code-block:: bash
- mame64 -comment_directory c:\mame\comments
+ mame -comment_directory C:\mame\comments
+
+.. _mame-commandline-savestate:
Core State/Playback Options
---------------------------
@@ -1382,7 +1525,7 @@ Core State/Playback Options
Example:
.. code-block:: bash
- mame64 -norewind
+ mame -norewind
.. _mame-commandline-rewindcapacity:
@@ -1397,7 +1540,7 @@ Core State/Playback Options
Example:
.. code-block:: bash
- mame64 -rewind_capacity 30
+ mame -rewind_capacity 30
.. _mame-commandline-state:
@@ -1409,7 +1552,7 @@ Core State/Playback Options
Example:
.. code-block:: bash
- mame64 -state 1
+ mame -state 1
.. _mame-commandline-noautosave:
@@ -1425,7 +1568,7 @@ Core State/Playback Options
Example:
.. code-block:: bash
- mame64 -autosave
+ mame -autosave
.. _mame-commandline-playback:
@@ -1440,7 +1583,7 @@ Core State/Playback Options
Example:
.. code-block:: bash
- mame64 pacman -playback worldrecord
+ mame pacman -playback worldrecord
.. Tip:: You may experience desync in playback if the configuration, NVRAM, and
memory card files don't match the original; this is why it is suggested
@@ -1460,7 +1603,7 @@ Core State/Playback Options
Example:
.. code-block:: bash
- mame64 pacman -playback worldrecord -exit_after_playback
+ mame pacman -playback worldrecord -exit_after_playback
.. _mame-commandline-record:
@@ -1475,29 +1618,13 @@ Core State/Playback Options
Example:
.. code-block:: bash
- mame64 pacman -record worldrecord
+ mame pacman -record worldrecord
.. Tip:: You may experience desync in playback if the configuration, NVRAM, and
memory card files don't match the original; this is why it is suggested
you should only record and playback with all configuration (.cfg),
NVRAM (.nv), and memory card files deleted.
-.. _mame-commandline-recordtimecode:
-
-**-record_timecode**
-
- Tells MAME to create a timecode file. It contains a line with elapsed times
- on each press of timecode shortcut key (default is **F12**). This option
- works only when recording mode is enabled (**-record** option). The
- timecode file is saved in the ``inp`` folder.
-
- By default, no timecode file is saved.
-
- Example:
- .. code-block:: bash
-
- mame64 pacman -record worldrecord -record_timecode
-
.. _mame-commandline-mngwrite:
**-mngwrite** *<filename>*
@@ -1513,7 +1640,7 @@ Core State/Playback Options
Example:
.. code-block:: bash
- mame64 pacman -mngwrite pacman-video
+ mame pacman -mngwrite pacman-video
.. _mame-commandline-aviwrite:
@@ -1533,7 +1660,7 @@ Core State/Playback Options
Example:
.. code-block:: bash
- mame64 pacman -playback worldrecord -exit_after_playback -aviwrite worldrecord
+ mame pacman -playback worldrecord -exit_after_playback -aviwrite worldrecord
.. _mame-commandline-wavwrite:
@@ -1544,12 +1671,12 @@ Core State/Playback Options
The default is ``NULL`` (no recording).
-.. _mame-commandline-snapname:
-
Example:
.. code-block:: bash
- mame64 pacman -wavewrite pacsounds
+ mame pacman -wavwrite pacsounds
+
+.. _mame-commandline-snapname:
**-snapname** *<name>*
@@ -1574,21 +1701,21 @@ Core State/Playback Options
Example 1:
.. code-block:: bash
- mame64 robby -snapname foo\%g%i
+ mame robby -snapname foo\%g%i
Snapshots will be saved as ``snaps\foo\robby0000.png``, ``snaps\foo\robby0001.png`` and so on.
Example 2:
.. code-block:: bash
- mame64 nes -cart robby -snapname %g\%d_cart
+ mame nes -cart robby -snapname %g\%d_cart
Snapshots will be saved as ``snaps\nes\robby.png``.
Example 3:
.. code-block:: bash
- mame64 c64 -flop1 robby -snapname %g\%d_flop1/%i
+ mame c64 -flop1 robby -snapname %g\%d_flop1/%i
Snapshots will be saved as ``snaps\c64\robby\0000.png``.
@@ -1607,7 +1734,7 @@ Core State/Playback Options
Example:
.. code-block:: bash
- mame64 pacman -snapsize 1920x1080
+ mame pacman -snapsize 1920x1080
.. Tip:: -snapsize does not automatically rotate if the system is vertically
oriented, so for vertical systems you'll want to swap the width and
@@ -1617,25 +1744,29 @@ Core State/Playback Options
**-snapview** *<viewname>*
- Specifies the view to use when rendering snapshots and movies.
+ Specifies the view to use when rendering snapshots and videos. The
+ *<viewname>* does not need to be the full name of a view, MAME will choose
+ the first view with a name that has the *<viewname>* as a prefix. For
+ example **-snapview "screen 0 pixel"** will match the
+ “\ *Screen 0 Pixel Aspect (10:7)*\ ” view.
- By default, both use a special 'internal' view, which renders a separate
- snapshot per screen or renders movies only of the first screen. By
- specifying this option, you can override this default behavior and select a
- single view that will apply to all snapshots and movies. Note that
- <viewname> does not need to be a perfect match; rather, it will select the
- first view whose name matches all the characters specified by <viewname>.
+ If the *<viewname>* is ``auto`` or an empty string, MAME will select a view
+ based on the number of emulated screens in the system, and the available
+ external and internal artwork. MAME tries to select a view that shows all
+ emulated screens by default.
- For example, **-snapview native** will match the "Native (15:14)" view even
- though it is not a perfect match. <viewname> can also be 'auto', which
- selects the first view with all screens present.
+ If the *<viewname>* is ``native``, MAME uses special internal view to save a
+ separate snapshot for each visible emulated screen, or to record a video for
+ the first visible screen only. The snapshot(s) or video will have the same
+ resolution as the emulated screen(s) with no artwork elements drawn or
+ effects applied.
- The default value is ``internal``.
+ The default value is ``auto``.
Example:
.. code-block:: bash
- mame64 pang -snapview pixel
+ mame wrecking -snapview cocktail
.. _mame-commandline-nosnapbilinear:
@@ -1643,14 +1774,14 @@ Core State/Playback Options
**-[no]snapbilinear**
Specify if the snapshot or movie should have bilinear filtering applied.
- Shutting this off can improve performance while recording video to a file.
+ Disabling this off can improve performance while recording video to a file.
The default is ON (**-snapbilinear**).
Example:
.. code-block:: bash
- mame64 pacman -nosnapbilinear
+ mame pacman -nosnapbilinear
.. _mame-commandline-statename:
@@ -1673,19 +1804,19 @@ Core State/Playback Options
Example 1:
.. code-block:: bash
- mame64 robby -statename foo\%g
+ mame robby -statename foo\%g
All save states will be stored inside sta\foo\robby\
Example 2:
.. code-block:: bash
- mame64 nes -cart robby -statename %g/%d_cart
+ mame nes -cart robby -statename %g/%d_cart
All save states will be stored inside sta\nes\robby\
Example 3:
.. code-block:: bash
- mame64 c64 -flop1 robby -statename %g/%d_flop1
+ mame c64 -flop1 robby -statename %g/%d_flop1
All save states will be stored inside sta\c64\robby\
.. Tip:: Note that even on Microsoft Windows, you should use ``/`` as your
@@ -1713,9 +1844,11 @@ Core State/Playback Options
Example:
.. code-block:: bash
- mame64 neogeo -burnin
+ mame neogeo -burnin
+.. _mame-commandline-perf:
+
Core Performance Options
------------------------
@@ -1732,7 +1865,7 @@ Core Performance Options
Example:
.. code-block:: bash
- mame64 gradius4 -autoframeskip
+ mame gradius4 -autoframeskip
.. _mame-commandline-frameskip:
@@ -1749,7 +1882,7 @@ Core Performance Options
Example:
.. code-block:: bash
- mame64 gradius4 -frameskip 2
+ mame gradius4 -frameskip 2
.. _mame-commandline-secondstorun:
@@ -1760,19 +1893,19 @@ Core Performance Options
benchmarking and automated testing. By combining this with a fixed set of
other command line options, you can set up a consistent environment for
benchmarking MAME's emulation performance. In addition, upon exit, the
- **-str** option will write a screenshot called ``final.png`` to the system's
- snapshot directory.
+ **-str** option will write a screenshot to the system's snapshot directory
+ with the file name determined by the **-snapname** option.
Example:
.. code-block:: bash
- mame64 pacman -seconds_to_run 60
+ mame pacman -seconds_to_run 60
.. _mame-commandline-nothrottle:
**-[no]throttle**
- Enable or disable thottling emulation speed. When throttling is enabled,
+ Enable or disable throttling emulation speed. When throttling is enabled,
MAME limits emulation speed to so the emulated system will not run faster
than the original hardware. When throttling is disabled, MAME runs the
emulation as fast as possible. Depending on your settings and the
@@ -1784,7 +1917,7 @@ Core Performance Options
Example:
.. code-block:: bash
- mame64 pacman -nothrottle
+ mame pacman -nothrottle
.. _mame-commandline-nosleep:
@@ -1801,7 +1934,7 @@ Core Performance Options
Example:
.. code-block:: bash
- mame64 gradius 4 -nosleep
+ mame gradius 4 -nosleep
.. _mame-commandline-speed:
@@ -1820,7 +1953,7 @@ Core Performance Options
Example:
.. code-block:: bash
- mame64 pacman -speed 1.25
+ mame pacman -speed 1.25
.. _mame-commandline-norefreshspeed:
@@ -1838,7 +1971,7 @@ Core Performance Options
Example:
.. code-block:: bash
- mame64 pacman -refreshspeed
+ mame pacman -refreshspeed
.. _mame-commandline-numprocessors:
@@ -1854,7 +1987,7 @@ Core Performance Options
Example:
.. code-block:: bash
- mame64 gradius4 -numprocessors 2
+ mame gradius4 -numprocessors 2
.. _mame-commandline-bench:
@@ -1868,11 +2001,11 @@ Core Performance Options
Example:
.. code-block:: bash
- mame64 gradius4 -bench 300
+ mame gradius4 -bench 300
.. _mame-commandline-lowlatency:
-**-lowlatency**
+**-[no]lowlatency**
This tells MAME to draw a new frame before throttling to reduce input
latency. This is particularly effective with VRR (Variable Refresh Rate)
@@ -1885,8 +2018,10 @@ Core Performance Options
Example:
.. code-block:: bash
- mame64 bgaregga -lowlatency
+ mame bgaregga -lowlatency
+
+.. _mame-commandline-rotation:
Core Rotation Options
---------------------
@@ -1906,7 +2041,7 @@ Core Rotation Options
Example:
.. code-block:: bash
- mame64 pacman -norotate
+ mame pacman -norotate
.. _mame-commandline-noror:
@@ -1926,12 +2061,12 @@ Core Rotation Options
Example 1:
.. code-block:: bash
- mame64 pacman -ror
+ mame pacman -ror
Example 2:
.. code-block:: bash
- mame64 pacman -rol
+ mame pacman -rol
.. _mame-commandline-noautoror:
@@ -1952,12 +2087,12 @@ Core Rotation Options
Example 1:
.. code-block:: bash
- mame64 pacman -autoror
+ mame pacman -autoror
Example 2:
.. code-block:: bash
- mame64 pacman -autorol
+ mame pacman -autorol
.. Tip:: If you have a display that can be rotated, **-autorol** or
**-autoror** will allow you to get a larger display for both horizontal
@@ -1980,14 +2115,16 @@ Core Rotation Options
Example 1:
.. code-block:: bash
- mame64 -flipx pacman
+ mame -flipx pacman
Example 2:
.. code-block:: bash
- mame64 -flipy suprmrio
+ mame -flipy suprmrio
+.. _mame-commandline-videooptions:
+
Core Video Options
------------------
@@ -2000,40 +2137,40 @@ Core Video Options
Generally Available:
- | Using ``bgfx`` specifies the new hardware accelerated renderer.
- |
- | Using ``opengl`` tells MAME to render video using OpenGL acceleration.
- |
- | Using ``none`` displays no windows and does no drawing. This is primarily present for doing CPU benchmarks without the overhead of the video system.
- |
+ * Using ``bgfx`` specifies the new hardware accelerated renderer.
+ * Using ``opengl`` tells MAME to render video using OpenGL acceleration.
+ * Using ``none`` displays no windows and does no drawing. This is primarily
+ intended for benchmarking emulation without the overhead of the video
+ system.
On Windows:
- | Using ``gdi`` tells MAME to render video using older standard Windows graphics drawing calls. This is the slowest but most compatible option on older versions of Windows.
- |
- | Using ``d3d`` tells MAME to use Direct3D for rendering. This produces the better quality output than ``gdi`` and enables additional rendering options. It is recommended if you have a semi-recent (2002+) video card or onboard Intel video of the HD3000 line or better.
- |
+ * Using ``gdi`` tells MAME to render video using older standard Windows
+ graphics drawing calls. This is the slowest but most compatible option on
+ older versions of Windows or buggy graphics hardware drivers.
+ * Using ``d3d`` tells MAME to use Direct3D 9 for rendering. This produces
+ better quality output than ``gdi`` and enables additional rendering
+ options. It is recommended if you have a 3D-capable video card or onboard
+ Intel video of the HD3000 line or better.
On other platforms (including SDL on Windows):
- | Using ``accel`` tells MAME to render video using SDL's 2D acceleration if possible.
- |
- | Using ``soft`` uses software rendering for video output. This isn't as fast or as nice as OpenGL but will work on any platform.
- |
+ * Using ``accel`` tells MAME to render video using SDL’s 2D acceleration if
+ possible.
+ * Using ``soft`` uses software rendering for video output. This isn’t as
+ fast or as nice as OpenGL, but it will work on any platform.
Defaults:
- | The default on Windows is ``d3d``.
- |
- | The default for Mac OS X is ``opengl`` because OS X is guaranteed to have a compliant OpenGL stack.
- |
- | The default on all other systems is ``soft``.
- |
+ * The default on Windows is ``d3d``.
+ * The default for macOS is ``opengl`` because OS X is guaranteed to have a
+ compliant OpenGL stack.
+ * The default on all other systems is ``soft``.
Example:
.. code-block:: bash
- mame64 gradius3 -video bgfx
+ mame gradius3 -video bgfx
.. _mame-commandline-numscreens:
@@ -2052,12 +2189,12 @@ Core Video Options
Example 1:
.. code-block:: bash
- mame64 darius -numscreens 3
+ mame darius -numscreens 3
Example 2:
.. code-block:: bash
- mame64 pc_cntra -numscreens 2
+ mame pc_cntra -numscreens 2
.. _mame-commandline-window:
@@ -2070,7 +2207,7 @@ Core Video Options
Example:
.. code-block:: bash
- mame64 coco3 -window
+ mame coco3 -window
.. _mame-commandline-maximize:
@@ -2088,7 +2225,7 @@ Core Video Options
Example:
.. code-block:: bash
- mame64 apple2e -window -nomaximize
+ mame apple2e -window -nomaximize
.. _mame-commandline-keepaspect:
@@ -2123,7 +2260,7 @@ Core Video Options
Example:
.. code-block:: bash
- mame64 sf2ua -nokeepaspect
+ mame sf2ua -nokeepaspect
.. _mame-commandline-waitvsync:
@@ -2162,7 +2299,7 @@ Core Video Options
Example:
.. code-block:: bash
- mame64 gradius2 -waitvsync
+ mame gradius2 -waitvsync
.. _mame-commandline-syncrefresh:
@@ -2184,7 +2321,7 @@ Core Video Options
Example:
.. code-block:: bash
- mame64 mk -syncrefresh
+ mame mk -syncrefresh
**-prescale** *<amount>*
@@ -2197,13 +2334,13 @@ Core Video Options
The default is ``1``.
- This is supported with all video output types ( ``bgfx``, ``d3d``, etc) on
+ This is supported with all video output types ( ``bgfx``, ``d3d``, etc.) on
Windows and is supported with BGFX and OpenGL on other platforms.
Example:
.. code-block:: bash
- mame64 pacman -video d3d -prescale 3
+ mame pacman -video d3d -prescale 3
.. _mame-commandline-filter:
@@ -2225,22 +2362,24 @@ Core Video Options
Example:
.. code-block:: bash
- mame64 pacman -nofilter
+ mame pacman -nofilter
.. _mame-commandline-unevenstretch:
**-[no]unevenstretch**
Allow non-integer scaling factors allowing for great window sizing
- flexability.
+ flexibility.
The default is ON. (**-unevenstretch**)
Example:
.. code-block:: bash
- mame64 dkong -nounevenstretch
+ mame dkong -nounevenstretch
+
+.. _mame-commandline-fullscreen:
Core Full Screen Options
------------------------
@@ -2264,8 +2403,10 @@ Core Full Screen Options
Example:
.. code-block:: bash
- mame64 kof97 -video d3d -switchres -resolution 1280x1024
+ mame kof97 -video d3d -switchres -resolution 1280x1024
+
+.. _mame-commandline-windowoptions:
Core Per-Window Options
-----------------------
@@ -2301,12 +2442,12 @@ Core Per-Window Options
Example 1:
.. code-block:: bash
- mame64 pc_cntra -numscreens 2 -screen0 \\.\DISPLAY1 -screen1 \\.\DISPLAY2
+ mame pc_cntra -numscreens 2 -screen0 \\.\DISPLAY1 -screen1 \\.\DISPLAY2
Example 2:
.. code-block:: bash
- mame64 darius -numscreens 3 -screen0 \\.\DISPLAY1 -screen1 \\.\DISPLAY3 -screen2 \\.\DISPLAY2
+ mame darius -numscreens 3 -screen0 \\.\DISPLAY1 -screen1 \\.\DISPLAY3 -screen2 \\.\DISPLAY2
.. Tip:: Using **-verbose** will tell you which displays you have on your
system, where they are connected, and what their current resolutions
@@ -2345,12 +2486,12 @@ Core Per-Window Options
Example 1:
.. code-block:: bash
- mame64 contra -aspect 16:9
+ mame contra -aspect 16:9
Example 2:
.. code-block:: bash
- mame64 pc_cntra -numscreens 2 -aspect0 16:9 -aspect1 5:4
+ mame pc_cntra -numscreens 2 -aspect0 16:9 -aspect1 5:4
.. _mame-commandline-resolution:
@@ -2388,7 +2529,7 @@ Core Per-Window Options
Example:
.. code-block:: bash
- mame64 pc_cntra -numscreens 2 -resolution0 1920x1080 -resolution1 1280x1024
+ mame pc_cntra -numscreens 2 -resolution0 1920x1080 -resolution1 1280x1024
.. _mame-commandline-view:
@@ -2402,25 +2543,38 @@ Core Per-Window Options
**-view3** *<viewname>*
- Specifies the initial view setting for each window. The *<viewname>* does
- not need to be a perfect match; rather, it will select the first view whose
- name matches all the characters specified by *<viewname>*. For example,
- **-view native** will match the "*Native (15:14)*" view even though it is
- not a perfect match. The value ``auto`` is also supported, and requests
- that MAME perform a default selection.
+ Specifies the initial view setting for each window/screen. The *<viewname>*
+ does not need to be the full name of a view, MAME will choose the first view
+ with a name that has the *<viewname>* as a prefix. For example
+ **-view "screen 0 pixel"** will match the
+ “\ *Screen 0 Pixel Aspect (10:7)*\ ” view.
+
+ If the *<viewname>* is ``auto`` or an empty string, MAME will select views
+ based on the number of emulated screens in the system, the number of
+ windows/screens MAME is using, and the available external and internal
+ artwork. MAME tries to select views so that all emulated screens are
+ visible by default.
The default value for these options is ``auto``.
The **-view0**, **-view1**, **-view2**, **-view3** parameters apply to the
- specific window. The **-view** parameter applies to all windows. The
- window-specific options override values from the all window option.
+ specific window. The **-view** parameter applies to all windows. The
+ window-specific options override values from the all windows option.
+
+ Note that view settings saved in the configuration file for the machine take
+ precedence over the initial view settings. If you change the selected views
+ in the Video Options menu, this will be saved in the configuration file for
+ the machine and take precedence over any initial views specified in INI
+ files or on the command line.
Example:
.. code-block:: bash
- mame64 contra -view native
+ mame contra -view native
+.. _mame-commandline-artwork:
+
Core Artwork Options
--------------------
@@ -2438,7 +2592,7 @@ Core Artwork Options
Example:
.. code-block:: bash
- mame64 pacman -artwork_crop
+ mame pacman -artwork_crop
.. Tip:: **-artwork_crop** is great for widescreen displays. You will get a
full-sized system display and the artwork will fill the empty space on
@@ -2455,7 +2609,7 @@ Core Artwork Options
Example:
.. code-block:: bash
- mame64 coco -fallback_artwork suprmrio
+ mame coco -fallback_artwork suprmrio
.. Tip:: You can use **fallback_artwork <artwork name>** in
``horizontal.ini`` and ``vertical.ini`` to specify different
@@ -2471,8 +2625,10 @@ Core Artwork Options
Example:
.. code-block:: bash
- mame64 galaga -override_artwork puckman
+ mame galaga -override_artwork puckman
+
+.. _mame-commandline-screenoptions:
Core Screen Options
-------------------
@@ -2492,7 +2648,7 @@ Core Screen Options
Example:
.. code-block:: bash
- mame64 pacman -brightness 0.5
+ mame pacman -brightness 0.5
.. _mame-commandline-contrast:
@@ -2509,7 +2665,7 @@ Core Screen Options
Example:
.. code-block:: bash
- mame64 pacman -contrast 0.5
+ mame pacman -contrast 0.5
.. _mame-commandline-gamma:
@@ -2529,7 +2685,7 @@ Core Screen Options
Example:
.. code-block:: bash
- mame64 pacman -gamma 0.8
+ mame pacman -gamma 0.8
.. _mame-commandline-pausebrightness:
@@ -2542,7 +2698,7 @@ Core Screen Options
Example:
.. code-block:: bash
- mame64 pacman -pause_brightness 0.33
+ mame pacman -pause_brightness 0.33
.. _mame-commandline-effect:
@@ -2565,9 +2721,11 @@ Core Screen Options
Example:
.. code-block:: bash
- mame64 pacman -effect scanlines
+ mame pacman -effect scanlines
+.. _mame-commandline-vectoroptions:
+
Core Vector Options
-------------------
@@ -2583,7 +2741,7 @@ Core Vector Options
Example:
.. code-block:: bash
- mame64 asteroid -beam_width_min 0.1
+ mame asteroid -beam_width_min 0.1
.. _mame-commandline-beamwidthmax:
@@ -2597,7 +2755,7 @@ Core Vector Options
Example:
.. code-block:: bash
- mame64 asteroid -beam_width_max 2
+ mame asteroid -beam_width_max 2
.. _mame-commandline-beamintensityweight:
@@ -2613,7 +2771,7 @@ Core Vector Options
Example:
.. code-block:: bash
- mame64 asteroid -beam_intensity_weight 0.5
+ mame asteroid -beam_intensity_weight 0.5
.. _mame-commandline-beamdotsize:
@@ -2630,7 +2788,7 @@ Core Vector Options
Example:
.. code-block:: bash
- mame64 asteroid -beam_dot_size 2
+ mame asteroid -beam_dot_size 2
.. _mame-commandline-flicker:
@@ -2645,15 +2803,17 @@ Core Vector Options
Example:
.. code-block:: bash
- mame64 asteroid -flicker 0.15
+ mame asteroid -flicker 0.15
-Core Video OpenGL Debugging Options
------------------------------------
+.. _mame-commandline-opengloptions:
+
+Core Video OpenGL Feature Options
+---------------------------------
These options are for compatibility in **-video opengl**. If you report
-rendering artifacts you may be asked to try messing with them by the devs, but
-normally they should be left at their defaults which results in the best
+rendering artifacts you may be asked to try messing with them by the developers,
+but normally they should be left at their defaults which results in the best
possible video performance.
.. Tip:: Examples are not provided for these options as MAMEdev will provide
@@ -2692,21 +2852,23 @@ possible video performance.
The default is ON. (**-gl_pbo**)
+.. _mame-commandline-openglglsl:
+
Core Video OpenGL GLSL Options
------------------------------
.. _mame-commandline-glglsl:
-**-gl_glsl**
+**-[no]gl_glsl**
Enable OpenGL GLSL, if available.
- The default is OFF.
+ The default is OFF (**-nogl_glsl**).
Example:
.. code-block:: bash
- mame64 galaxian -gl_glsl
+ mame galaxian -gl_glsl
.. _mame-commandline-glglslfilter:
@@ -2722,7 +2884,7 @@ Core Video OpenGL GLSL Options
Example:
.. code-block:: bash
- mame64 galaxian -gl_glsl -gl_glsl_filter 0
+ mame galaxian -gl_glsl -gl_glsl_filter 0
.. _mame-commandline-glslshadermame:
@@ -2734,14 +2896,14 @@ Core Video OpenGL GLSL Options
**-glsl_shader_mame9**
- Set a custom OpenGL GLSL shader effect to the internal systcm screen in the
+ Set a custom OpenGL GLSL shader effect to the internal system screen in the
given slot. MAME does not include a vast selection of shaders by default;
more can be found online.
Example:
.. code-block:: bash
- mame64 suprmrio -gl_glsl -glsl_shader_mame0 NTSC/NTSC_chain -glsl_shader_mame1 CRT-geom/CRT-geom
+ mame suprmrio -gl_glsl -glsl_shader_mame0 NTSC/NTSC_chain -glsl_shader_mame1 CRT-geom/CRT-geom
.. _mame-commandline-glslshaderscreen:
@@ -2755,28 +2917,16 @@ Core Video OpenGL GLSL Options
Set a custom OpenGL GLSL shader effect to the whole scaled-up output screen
- that will be rendered by your graphics card.MAME does not include a vast
+ that will be rendered by your graphics card. MAME does not include a vast
selection of shaders by default; more can be found online.
Example:
.. code-block:: bash
- mame64 suprmrio -gl_glsl -glsl_shader_screen0 gaussx -glsl_shader_screen1 gaussy -glsl_shader_screen2 CRT-geom-halation
-
-
-.. _mame-commandline-glglslvidattr:
+ mame suprmrio -gl_glsl -glsl_shader_screen0 gaussx -glsl_shader_screen1 gaussy -glsl_shader_screen2 CRT-geom-halation
-**-gl_glsl_vid_attr**
-
- Enable OpenGL GLSL handling of brightness and contrast.
- Better RGB system performance.
-
- Default is ``on``.
-
- Example:
- .. code-block:: bash
- mame64 pacman -gl_glsl -gl_glsl_vid_attr off
+.. _mame-commandline-soundoptions:
Core Sound Options
------------------
@@ -2794,7 +2944,7 @@ Core Sound Options
Example:
.. code-block:: bash
- mame64 galaga -samplerate 44100
+ mame galaga -samplerate 44100
.. _mame-commandline-nosamples:
@@ -2807,22 +2957,39 @@ Core Sound Options
Example:
.. code-block:: bash
- mame64 qbert -nosamples
+ mame qbert -nosamples
+
+.. _mame-commandline-nocompressor:
+
+**-[no]compressor**
+
+ Enable audio compressor. It temporarily reduces the overall volume when
+ the audio output is overdriven.
+
+ The default is ON (**-compressor**).
+
+ Example:
+ .. code-block:: bash
+
+ mame popeye -nocompressor
.. _mame-commandline-volume:
**-volume** / **-vol** *<value>*
- Sets the startup volume. It can later be changed with the user interface
- (see Keys section). The volume is an attenuation in dB: e.g.,
- "**-volume -12**" will start with -12dB attenuation.
+ Sets the initial sound volume. It can be changed later with the user
+ interface (see Keys section). The volume is an attenuation in decibels:
+ e.g. "**-volume -12**" will start with -12 dB attenuation. Note that if the
+ volume is changed in the user interface it will be saved to the
+ configuration file for the system. The value from the configuration file
+ for the system has priority over ``volume`` settings in general INI files.
- The default is ``0``.
+ The default is ``0`` (no attenuation, or full volume).
Example:
.. code-block:: bash
- mame64 pacman -volume -30
+ mame pacman -volume -30
.. _mame-commandline-sound:
@@ -2845,7 +3012,7 @@ Core Sound Options
Example:
.. code-block:: bash
- mame64 pacman -sound portaudio
+ mame pacman -sound portaudio
.. list-table:: Supported sound subsystems per-platform
:header-rows: 0
@@ -2889,17 +3056,19 @@ Core Sound Options
The default is ``1``.
- | For PortAudio, see the section on :ref:`-pa_latency <mame-commandline-pa-latency>`.
- | XAudio2 calculates audio_latency as 10ms steps.
- | DSound calculates audio_latency as 10ms steps.
- | CoreAudio calculates audio_latency as 25ms steps.
- | SDL calculates audio_latency as Xms steps.
+ * For PortAudio, see the section on :ref:`-pa_latency <mame-commandline-palatency>`.
+ * XAudio2 calculates audio_latency as 10ms steps.
+ * DSound calculates audio_latency as 10ms steps.
+ * CoreAudio calculates audio_latency as 25ms steps.
+ * SDL calculates audio_latency as Xms steps.
Example:
.. code-block:: bash
- mame64 galaga -audio_latency 1
+ mame galaga -audio_latency 1
+
+.. _mame-commandline-inputoptions:
Core Input Options
------------------
@@ -2921,22 +3090,24 @@ Core Input Options
Example:
.. code-block:: bash
- mame64 suprmrio -coin_lockout
+ mame suprmrio -coin_lockout
.. _mame-commandline-ctrlr:
**-ctrlr** *<controller>*
- Enables support for special controllers. Configuration files are loaded from
- the ctrlrpath. They are in the same format as the .cfg files that are
- saved, but only control configuration data is read from the file.
+ Specifies a controller configuration file, typically used to set more
+ suitable default input assignments for special controllers. Directories
+ specified using the ``ctrlrpath`` option are searched. Controller
+ configuration files use a similar format to ``.cfg`` used to save system
+ settings. See :ref:`ctrlrcfg` for more details.
- The default is ``NULL`` (no controller file).
+ The default is ``NULL`` (no controller configuration file).
Example:
.. code-block:: bash
- mame64 dkong -ctrlr xarcade
+ mame dkong -ctrlr xarcade
.. _mame-commandline-nomouse:
@@ -2944,45 +3115,66 @@ Core Input Options
Controls whether or not MAME makes use of mouse controllers. When this is
enabled, you will likely be unable to use your mouse for other purposes
- until you exit or pause the system.
+ until you exit or pause the system. Supported mouse controllers depend on
+ your :ref:`mouseprovider setting <mame-commandline-mouseprovider>`.
+
+ Note that if this setting is off (**-nomouse**), mouse input may still be
+ enabled depending on the inputs present on the emulated system and your
+ :ref:`automatic input enable settings <mame-commandline-inputenable>`. In
+ particular, the default is to enable mouse input when the emulated system
+ has mouse inputs (**-mouse_device mouse**), so MAME will capture your mouse
+ pointer when you run a system with mouse inputs unless you also change
+ the **mouse_device** setting.
The default is OFF (**-nomouse**).
Example:
.. code-block:: bash
- mame64 centiped -mouse
+ mame centiped -mouse
.. _mame-commandline-nojoystick:
**-[no]joystick** / **-[no]joy**
- Controls whether or not MAME makes use of joystick/gamepad controllers.
+ Controls whether or not MAME makes use of game controllers (e.g. joysticks,
+ gamepads and simulation controls). Supported game controllers depend on
+ your :ref:`joystickprovider setting <mame-commandline-joystickprovider>`.
When this is enabled, MAME will ask the system about which controllers are
connected.
+ Note that if this setting is off (**-nojoystick**), joystick input may still
+ be enabled depending on the inputs present on the emulated system and your
+ :ref:`automatic input enable settings <mame-commandline-inputenable>`.
+
The default is OFF (**-nojoystick**).
Example:
.. code-block:: bash
- mame64 mappy -joystick
+ mame mappy -joystick
.. _mame-commandline-nolightgun:
**-[no]lightgun** / **-[no]gun**
Controls whether or not MAME makes use of lightgun controllers. Note that
- most lightguns map to the mouse, so using **-lightgun** and **-mouse**
- together may produce strange results.
+ most lightguns also produce mouse input, so enabling mouse and lightgun
+ controllers simultaneously (using **-lightgun** and **-mouse** together) may
+ produce strange behaviour. Supported lightgun controllers depend on your
+ :ref:`lightgunprovider setting <mame-commandline-lightgunprovider>`.
+
+ Note that if this setting is off (**-nolightgun**), lightgun input may still
+ be enabled depending on the inputs present on the emulated system and your
+ :ref:`automatic input enable settings <mame-commandline-inputenable>`.
The default is OFF (**-nolightgun**).
Example:
.. code-block:: bash
- mame64 lethalen -lightgun
+ mame lethalen -lightgun
.. _mame-commandline-nomultikeyboard:
@@ -3000,7 +3192,7 @@ Core Input Options
Example:
.. code-block:: bash
- mame64 sf2ceua -multikey
+ mame sf2ceua -multikey
.. _mame-commandline-nomultimouse:
@@ -3017,7 +3209,7 @@ Core Input Options
Example:
.. code-block:: bash
- mame64 warlords -multimouse
+ mame warlords -multimouse
.. _mame-commandline-nosteadykey:
@@ -3035,7 +3227,7 @@ Core Input Options
Example:
.. code-block:: bash
- mame64 sf2ua -steadykey
+ mame sf2ua -steadykey
.. _mame-commandline-uiactive:
@@ -3048,7 +3240,7 @@ Core Input Options
Example:
.. code-block:: bash
- mame64 apple2e -ui_active
+ mame apple2e -ui_active
.. _mame-commandline-nooffscreenreload:
@@ -3066,7 +3258,7 @@ Core Input Options
Example:
.. code-block:: bash
- mame64 lethalen -offscreen_reload
+ mame lethalen -offscreen_reload
.. _mame-commandline-joystickmap:
@@ -3117,17 +3309,17 @@ Core Input Options
map. Below is an example map for an 8-way joystick that matches the
picture shown above:
- +-------------+--------------------------------------------------------+
- | | 777888999 | |
- | | 777888999 | | Note that the numeric digits correspond to the keys |
- | | 777888999 | | on a numeric keypad. So '7' maps to up+left, '4' maps|
- | | 444555666 | | to left, '5' maps to neutral, etc. In addition to the|
- | | 444555666 | | numeric values, you can specify the character 's', |
- | | 444555666 | | which means "sticky". Sticky map positions will keep|
- | | 111222333 | | the output the same as the last non-sticky input sent|
- | | 111222333 | | to the system. |
- | | 111222333 | |
- +-------------+--------------------------------------------------------+
+ +-------------+--------------------------------------------------------+
+ | | 777888999 | |
+ | | 777888999 | | Note that the numeric digits correspond to the keys |
+ | | 777888999 | | on a numeric keypad. So '7' maps to up+left, '4' maps|
+ | | 444555666 | | to left, '5' maps to neutral, etc. In addition to the|
+ | | 444555666 | | numeric values, you can specify the character 's', |
+ | | 444555666 | | which means "sticky". Sticky map positions will keep|
+ | | 111222333 | | the output the same as the last non-sticky input sent|
+ | | 111222333 | | to the system. |
+ | | 111222333 | |
+ +-------------+--------------------------------------------------------+
To specify the map for this parameter, you can specify a string of rows
separated by a '.' (which indicates the end of a row), like so:
@@ -3176,17 +3368,17 @@ Core Input Options
This map would look somewhat like:
- +-------------+---------------------------------------------------------+
- | | s8888888s | |
- | | 4s88888s6 | | For this mapping, we have a wide range for the |
- | | 44s888s66 | | cardinal directions on 8, 4, 6, and 2. We have sticky|
- | | 444555666 | | on the meeting points between those cardinal |
- | | 444555666 | | directions where the appropriate direction isn't |
- | | 444555666 | | going to be completely obvious. |
- | | 44s222s66 | |
- | | 4s22222s6 | |
- | | s2222222s | |
- +-------------+---------------------------------------------------------+
+ +-------------+---------------------------------------------------------+
+ | | s8888888s | |
+ | | 4s88888s6 | | For this mapping, we have a wide range for the |
+ | | 44s888s66 | | cardinal directions on 8, 4, 6, and 2. We have sticky|
+ | | 444555666 | | on the meeting points between those cardinal |
+ | | 444555666 | | directions where the appropriate direction isn't |
+ | | 444555666 | | going to be completely obvious. |
+ | | 44s222s66 | |
+ | | 4s22222s6 | |
+ | | s2222222s | |
+ +-------------+---------------------------------------------------------+
To specify the map for this parameter, you can specify a string of rows
separated by a '.' (which indicates the end of a row), like so:
@@ -3208,17 +3400,17 @@ Core Input Options
**-joystick_deadzone** *<value>* / **-joy_deadzone** *<value>* / **-jdz** *<value>*
- If you play with an analog joystick, the center can drift a little.
- joystick_deadzone tells how far along an axis you must move before the axis
- starts to change. This option expects a float in the range of 0.0 to 1.0.
- Where 0 is the center of the joystick and 1 is the outer limit.
+ If you play with an analog joystick, the center can drift a little.
+ joystick_deadzone tells how far along an axis you must move before the axis
+ starts to change. This option expects a float in the range of 0.0 to 1.0.
+ Where 0 is the center of the joystick and 1 is the outer limit.
- The default is ``0.3``.
+ The default is ``0.15``.
Example:
.. code-block:: bash
- mame64 sinistar -joystick_deadzone 0.45
+ mame sinistar -joystick_deadzone 0.3
.. _mame-commandline-joysticksaturation:
@@ -3235,15 +3427,38 @@ Core Input Options
Example:
.. code-block:: bash
- mame64 sinistar -joystick_saturation 1.0
+ mame sinistar -joystick_saturation 1.0
+
+.. _mame-commandline-joystickthreshold:
+
+**-joystick_threshold** *<value>* / **joy_threshold** *<value>* / **-jthresh** *<value>*
+
+ When a joystick axis (or other absolute analog axis) is assigned to a
+ digital input, this controls how far it must be moved from the neutral
+ position (or centre) to be considered active or switched on. This option
+ expects a float in the range of 0.0 to 1.0, where 0 means any movement from
+ the neutral position is considered active, and 1 means only the outer limits
+ are considered active. This threshold is **not** adjusted to the range
+ between the dead zone and saturation point.
+
+ Note that if a :ref:`joystick map <mame-commandline-joystickmap>` is
+ configured, that will take precedence over this setting when a joystick’s
+ main X/Y axes are assigned to digital inputs.
+
+ The default is ``0.3``.
+
+ Example:
+ .. code-block:: bash
+
+ mame raiden -joystick_threshold 0.2
.. _mame-commandline-natural:
-**\-natural**
+**\-[no]natural**
Allows user to specify whether or not to use a natural keyboard or not.
This allows you to start your system in a 'native' mode, depending on your
- region, allowing compatability for non-"QWERTY" style keyboards.
+ region, allowing compatibility for non-"QWERTY" style keyboards.
The default is OFF (**-nonatural**)
@@ -3253,27 +3468,31 @@ Core Input Options
presses/releases the emulated key.
In "natural keyboard" mode, MAME attempts to translate characters to
- keystrokes. The OS translates keystrokes to characters
- (similarly when you type into a text editor), and MAME attempts to translate
- these characters to emulated keystrokes.
+ keystrokes. The OS translates keystrokes to characters (similarly to when
+ you type into a text editor), and MAME attempts to translate these
+ characters to emulated keystrokes.
**There are a number of unavoidable limitations in "natural keyboard" mode:**
- * The emulated system driver and/or keyboard device or has to support it.
- * The selected keyboard *must* match the keyboard layout selected in the emulated OS!
- * Keystrokes that don't produce characters can't be translated. (e.g. pressing a modifier on its own such as **shift**, **ctrl**, or **alt**)
- * Holding a key until the character repeats will cause the emulated key to be pressed repeatedly as opposed to being held down.
- * Dead key sequences are cumbersome to use at best.
- * It won't work at all if IME edit is involved. (e.g. for Chinese/Japanese/Korean)
+ * The emulated system driver and/or keyboard device has to support it.
+ * The selected keyboard layout *must* match the keyboard layout selected in
+ the emulated OS!
+ * Keystrokes that don’t produce characters can’t be translated (e.g.
+ pressing a modifier on its own such as **shift**, **ctrl**, or **alt**).
+ * Holding a key until the character repeats will cause the emulated key to
+ be pressed repeatedly as opposed to being held down.
+ * Dead key sequences are cumbersome to use at best.
+ * It won’t work at all if IME edit is involved (e.g. for Chinese, Japanese
+ or Korean language input).
Example:
.. code-block:: bash
- mame64 coco2 -natural
+ mame coco2 -natural
.. _mame-commandline-joystickcontradictory:
-**-joystick_contradictory**
+**-[no]joystick_contradictory**
Enable contradictory direction digital joystick input at the same time such
as **Left and Right** or **Up and Down** at the same time.
@@ -3283,7 +3502,7 @@ Core Input Options
Example:
.. code-block:: bash
- mame64 pc_smb -joystick_contradictory
+ mame pc_smb -joystick_contradictory
.. _mame-commandline-coinimpulse:
@@ -3297,8 +3516,10 @@ Core Input Options
Example:
.. code-block:: bash
- mame64 contra -coin_impulse 1
+ mame contra -coin_impulse 1
+
+.. _mame-commandline-inputenable:
Core Input Automatic Enable Options
-----------------------------------
@@ -3335,22 +3556,35 @@ Core Input Automatic Enable Options
**-mouse_device** ( ``none`` | ``keyboard`` | ``mouse`` | ``lightgun`` | ``joystick`` )
- Each of these options controls autoenabling the mouse, joystick, or lightgun
- depending on the presence of a particular class of analog control for a
- particular system. For example, if you specify the option
- **-paddle mouse**, then any game that has a paddle control will
- automatically enable mouse controls just as if you had explicitly specified
- **-mouse**.
+ Each of these options sets whether mouse, joystick or lightgun controllers
+ should be enabled when running an emulated system that uses a particular
+ class of analog inputs. These options can effectively set
+ :ref:`-mouse <mame-commandline-nomouse>`, :ref:`-joystick
+ <mame-commandline-nojoystick>` and/or :ref:`-lightgun
+ <mame-commandline-nolightgun>` depending on the type of inputs present on
+ the emulated system. Note that these options *will not* override explicit
+ **-nomouse**, **-nojoystick** and/or **-nolightgun** settings at a higher
+ priority level (e.g. in a more specific INI file or on the command line).
+
+ For example, if you specify the option **-paddle_device mouse**, then mouse
+ controls will automatically be enabled when you run a game that has paddle
+ controls (e.g. Super Breakout), even if you specified **-nomouse** .
+
+ The default is to automatically enable mouse controls when running emulated
+ systems with mouse inputs (**-mouse_device mouse**).
Example:
.. code-block:: bash
- mame64 sbrkout -paddle_device mouse
+ mame sbrkout -paddle_device mouse
-.. Tip:: Note that these controls override the values of **-[no]mouse**,
- **-[no]joystick**, etc.
+.. Tip:: Note that these settings can override **-nomouse**, **-nojoystick**
+ and/or **-nolightgun** depending on the inputs present on the emulated
+ system.
+.. _mame-commandline-debugging:
+
Debugging Options
-----------------
@@ -3366,7 +3600,7 @@ Debugging Options
Example:
.. code-block:: bash
- mame64 polepos -verbose
+ mame polepos -verbose
.. Tip:: IMPORTANT: When reporting bugs to MAMEdev, please run with **-verbose**
and include the resulting information.
@@ -3388,7 +3622,7 @@ Debugging Options
Example:
.. code-block:: bash
- mame64 mappy -oslog
+ mame mappy -oslog
.. _mame-commandline-log:
@@ -3403,27 +3637,62 @@ Debugging Options
Example 1:
.. code-block:: bash
- mame64 qbert -log
+ mame qbert -log
Example 2:
.. code-block:: bash
- mame64 qbert -oslog -log
+ mame qbert -oslog -log
.. _mame-commandline-debug:
**-[no]debug**
- Activates the integrated debugger. By default, the debugger is entered by
- pressing the tilde (**~**) key during emulation. It is also entered
- immediately at startup.
+ Activates the integrated debugger. By default, pressing the backtick/tilde
+ (**~**) key during emulation breaks into the debugger. MAME also breaks
+ into the debugger after the initial soft reset on startup if the debugger is
+ active. See :ref:`debugger` for information on using the debugger.
The default is OFF (**-nodebug**).
Example:
.. code-block:: bash
- mame64 indy_4610 -debug
+ mame indy_4610 -debug
+
+.. _mame-commandline-debugger:
+
+**-debugger** *<module>*
+
+ Chooses the module to use for debugging the target system when the
+ :ref:`debug <mame-commandline-debug>` option is on. Available debugger
+ modules depend on the host platform and build options.
+
+ Supported debugger modules:
+
+ windows
+ Win32 GUI debugger (default on Windows). Only supported on Windows.
+ qt
+ Qt GUI debugger (default on Linux). Supported on Windows, Linux and
+ macOS, but only included on Linux by default. Set ``USE_QTDEBUG=1``
+ when compiling MAME to include the Qt debugger on Windows or macOS.
+ osx
+ Cocoa GUI debugger (default on macOS). Only supported on macOS.
+ imgui
+ ImgUi GUI debugger displayed in first MAME window. Requires
+ :ref:`video <mame-commandline-video>` option to be set to **bgfx**.
+ Supported on all platforms with BGFX video output support.
+ gdbstub
+ Acts as a remote debugging server for the GNU debugger (GDB). Only a
+ small subset of the CPUs emulated by MAME are supported. Use the
+ :ref:`debugger_port <mame-commandline-debuggerport>` option to set the
+ listening port on the loopback interface. Supported on all platforms
+ with TCP socket support.
+
+ Example:
+ .. code-block:: bash
+
+ mame ambush -debug -debugger qt
.. _mame-commandline-debugscript:
@@ -3437,7 +3706,7 @@ Debugging Options
Example:
.. code-block:: bash
- mame64 galaga -debugscript testscript.txt
+ mame galaga -debug -debugscript testscript.txt
.. _mame-commandline-updateinpause:
@@ -3452,7 +3721,7 @@ Debugging Options
Example:
.. code-block:: bash
- mame64 indy_4610 -update_in_pause
+ mame indy_4610 -update_in_pause
.. _mame-commandline-watchdog:
@@ -3470,7 +3739,22 @@ Debugging Options
Example:
.. code-block:: bash
- mame64 ibm_5150 -watchdog 30
+ mame ibm_5150 -watchdog 30
+
+.. _mame-commandline-debuggerport:
+
+**-debugger_port** *<port>*
+
+ Set the TCP port number to listen on for GDB connections when using the GDB
+ stub debugger module (see the :ref:`debugger <mame-commandline-debugger>`
+ option).
+
+ The default is ``23946``.
+
+ Example:
+ .. code-block:: bash
+
+ mame rfjet -debug -debugger gdbstub -debugger_port 2159
.. _mame-commandline-debuggerfont:
@@ -3485,7 +3769,7 @@ Debugging Options
Example:
.. code-block:: bash
- mame64 marble -debug -debugger_font "Comic Sans MS"
+ mame marble -debug -debugger_font "Comic Sans MS"
.. _mame-commandline-debuggerfontsize:
@@ -3500,9 +3784,11 @@ Debugging Options
Example:
.. code-block:: bash
- mame64 marble -debug -debugger_font "Comic Sans MS" -debugger_font_size 16
+ mame marble -debug -debugger_font "Comic Sans MS" -debugger_font_size 16
+.. _mame-commandline-commoptions:
+
Core Communication Options
--------------------------
@@ -3519,7 +3805,7 @@ Core Communication Options
Example:
.. code-block:: bash
- mame64 arescue -comm_localhost 192.168.1.2
+ mame arescue -comm_localhost 192.168.1.2
.. _mame-commandline-commlocalport:
@@ -3533,7 +3819,7 @@ Core Communication Options
Example:
.. code-block:: bash
- mame64 arescue -comm_localhost 192.168.1.2 -comm_localport 30100
+ mame arescue -comm_localhost 192.168.1.2 -comm_localport 30100
.. _mame-commandline-commremotehost:
@@ -3548,7 +3834,7 @@ Core Communication Options
Example:
.. code-block:: bash
- mame64 arescue -comm_remotehost 192.168.1.2
+ mame arescue -comm_remotehost 192.168.1.2
.. _mame-commandline-commremoteport:
@@ -3562,7 +3848,7 @@ Core Communication Options
Example:
.. code-block:: bash
- mame64 arescue -comm_remotehost 192.168.1.2 -comm_remoteport 30100
+ mame arescue -comm_remotehost 192.168.1.2 -comm_remoteport 30100
.. _mame-commandline-commframesync:
@@ -3575,8 +3861,10 @@ Core Communication Options
Example:
.. code-block:: bash
- mame64 arescue -comm_remotehost 192.168.1.3 -comm_remoteport 30100 -comm_framesync
+ mame arescue -comm_remotehost 192.168.1.3 -comm_remoteport 30100 -comm_framesync
+
+.. _mame-commandline-miscoptions:
Core Misc Options
-----------------
@@ -3592,11 +3880,11 @@ Core Misc Options
Example:
.. code-block:: bash
- mame64 ironfort -nodrc
+ mame ironfort -nodrc
.. _mame-commandline-drcusec:
-**\-drc_use_c**
+**\-[no]drc_use_c**
Force DRC to use the C code backend.
@@ -3605,11 +3893,11 @@ Core Misc Options
Example:
.. code-block:: bash
- mame64 ironfort -drc_use_c
+ mame ironfort -drc_use_c
.. _mame-commandline-drcloguml:
-**\-drc_log_uml**
+**\-[no]drc_log_uml**
Write DRC UML disassembly log.
@@ -3618,11 +3906,11 @@ Core Misc Options
Example:
.. code-block:: bash
- mame64 ironfort -drc_log_uml
+ mame ironfort -drc_log_uml
.. _mame-commandline-drclognative:
-**\-drc_log_native**
+**\-[no]drc_log_native**
Write DRC native disassembly log.
@@ -3631,22 +3919,22 @@ Core Misc Options
Example:
.. code-block:: bash
- mame64 ironfort -drc_log_native
+ mame ironfort -drc_log_native
.. _mame-commandline-bios:
**-bios** *<biosname>*
Specifies the specific BIOS to use with the current system, for systems that
- make use of a BIOS. The **-listxml** output will list all of the possible
- BIOS names for a system.
+ make use of a BIOS. The **-listbios** output will list all of the possible
+ BIOS names for a system, as does the **-listxml** output.
The default is ``default``.
Example:
.. code-block:: bash
- mame64 mslug -bios unibios33
+ mame mslug -bios unibios33
.. _mame-commandline-cheat:
@@ -3664,7 +3952,7 @@ Core Misc Options
Example:
.. code-block:: bash
- mame64 dkong -cheat
+ mame dkong -cheat
.. _mame-commandline-skipgameinfo:
@@ -3677,7 +3965,7 @@ Core Misc Options
Example:
.. code-block:: bash
- mame64 samsho5 -skip_gameinfo
+ mame samsho5 -skip_gameinfo
.. _mame-commandline-uifont:
@@ -3693,7 +3981,7 @@ Core Misc Options
Example:
.. code-block:: bash
- mame64 -uifont "Comic Sans MS"
+ mame -uifont "Comic Sans MS"
.. _mame-commandline-ui:
@@ -3701,12 +3989,12 @@ Core Misc Options
Specifies the type of UI to use, either ``simple`` or ``cabinet``.
- The default is Cabinet (**-ui cabinet**).
+ The default is cabinet (**-ui cabinet**).
Example:
.. code-block:: bash
- mame64 -ui simple
+ mame -ui simple
.. _mame-commandline-ramsize:
@@ -3717,11 +4005,11 @@ Core Misc Options
Example:
.. code-block:: bash
- mame64 coco -ramsize 16K
+ mame coco -ramsize 16K
.. _mame-commandline-confirmquit:
-**\-confirm_quit**
+**\-[no]confirm_quit**
Display a Confirm Quit dialog to screen on exit, requiring one extra step
to exit MAME.
@@ -3731,22 +4019,22 @@ Core Misc Options
Example:
.. code-block:: bash
- mame64 pacman -confirm_quit
+ mame pacman -confirm_quit
.. _mame-commandline-uimouse:
-**\-ui_mouse**
+**\-[no]ui_mouse**
- Displays a mouse cursor when using the built-in UI for MAME.
+ Displays a mouse cursor when using the built-in MAME user interface.
- The default is (**-noui_mouse**).
+ The default is ON (**-ui_mouse**).
.. _mame-commandline-language:
Example:
.. code-block:: bash
- mame64 -ui_mouse
+ mame -ui_mouse
**-language** *<language>*
@@ -3755,7 +4043,7 @@ Core Misc Options
Example:
.. code-block:: bash
- mame64 -language Japanese
+ mame -language Japanese
.. _mame-commandline-nvramsave:
@@ -3771,9 +4059,11 @@ Core Misc Options
Example:
.. code-block:: bash
- mame64 galaga88 -nonvram_save
+ mame galaga88 -nonvram_save
+.. _mame-commandline-scripting:
+
Scripting Options
-----------------
@@ -3782,15 +4072,15 @@ Scripting Options
**-autoboot_command** *"<command>"*
Command string to execute after machine boot (in quotes " "). To issue a
- quote to the emulation, use """ in the string. Using **\\n** will issue a
- create a new line, issuing what was typed prior as a command.
+ quote to the emulation, use """ in the string. Using **\\n** will create
+ a new line, issuing what was typed prior as a command.
This works only with systems that support natural keyboard mode.
Example:
.. code-block:: bash
- mame64 c64 -autoboot_delay 5 -autoboot_command "load """$""",8,1\n"
+ mame c64 -autoboot_delay 5 -autoboot_command "load """$""",8,1\n"
.. _mame-commandline-autobootdelay:
@@ -3801,7 +4091,7 @@ Scripting Options
Example:
.. code-block:: bash
- mame64 c64 -autoboot_delay 5 -autoboot_command "load """$""",8,1\n"
+ mame c64 -autoboot_delay 5 -autoboot_command "load """$""",8,1\n"
.. _mame-commandline-autobootscript:
@@ -3812,7 +4102,7 @@ Scripting Options
Example:
.. code-block:: bash
- mame64 ibm5150 -autoboot_script myscript.lua
+ mame ibm5150 -autoboot_script myscript.lua
.. _mame-commandline-console:
@@ -3825,7 +4115,7 @@ Scripting Options
Example:
.. code-block:: bash
- mame64 ibm5150 -console
+ mame ibm5150 -console
.. _mame-commandline-plugins:
@@ -3838,7 +4128,7 @@ Scripting Options
Example:
.. code-block:: bash
- mame64 apple2e -plugins
+ mame apple2e -plugins
.. _mame-commandline-plugin:
@@ -3849,7 +4139,7 @@ Scripting Options
Example:
.. code-block:: bash
- mame64 alcon -plugin cheat,discord,autofire
+ mame alcon -plugin cheat,discord,autofire
.. _mame-commandline-noplugin:
@@ -3860,11 +4150,14 @@ Scripting Options
Example:
.. code-block:: bash
- mame64 alcon -noplugin cheat
+ mame alcon -noplugin cheat
+
+.. _mame-commandline-webserver:
HTTP Server Options
-------------------
+
.. _mame-commandline-http:
**-[no]http**
@@ -3876,11 +4169,11 @@ HTTP Server Options
Example:
.. code-block:: bash
- mame64 -http
+ mame -http
.. _mame-commandline-httpport:
-**-http_port** *[port]*
+**-http_port** *<port>*
Choose HTTP server port.
@@ -3889,11 +4182,11 @@ HTTP Server Options
Example:
.. code-block:: bash
- mame64 apple2 -http -http_port 6502
+ mame apple2 -http -http_port 6502
.. _mame-commandline-httproot:
-**-http_root** *[rootfolder]*
+**-http_root** *<rootfolder>*
Choose HTTP server document root.
@@ -3902,13 +4195,15 @@ HTTP Server Options
Example:
.. code-block:: bash
- mame64 apple2 -http -http_port 6502 -http_root c:\users\me\appleweb\root
+ mame apple2 -http -http_port 6502 -http_root C:\Users\me\appleweb\root
+
+.. _mame-commandline-portaudio:
PortAudio Options
-----------------
-.. _mame-commandline-pa-api:
+.. _mame-commandline-paapi:
**-pa_api** *API*
@@ -3919,7 +4214,7 @@ PortAudio Options
Example 1:
.. code-block:: bash
- mame64 -sound portaudio -verbose
+ mame -sound portaudio -verbose
Attempting load of mame.ini
...
PortAudio: API MME has 20 devices
@@ -3962,9 +4257,9 @@ PortAudio Options
Example 2:
.. code-block:: bash
- mame64 suprmrio -sound portaudio -pa_api "Windows WASAPI"
+ mame suprmrio -sound portaudio -pa_api "Windows WASAPI"
-.. _mame-commandline-pa-device:
+.. _mame-commandline-padevice:
**-pa_device** *device*
@@ -3976,9 +4271,9 @@ PortAudio Options
Example:
.. code-block:: bash
- mame64 suprmrio -sound portaudio -pa_api "Windows WASAPI" -pa_device "NX-EDG27 (NVIDIA High Definition Audio)"
+ mame suprmrio -sound portaudio -pa_api "Windows WASAPI" -pa_device "NX-EDG27 (NVIDIA High Definition Audio)"
-.. _mame-commandline-pa-latency:
+.. _mame-commandline-palatency:
**-pa_latency** *latency*
@@ -3993,4 +4288,4 @@ PortAudio Options
Example:
.. code-block:: bash
- mame64 suprmrio -sound portaudio -pa_api "Windows WASAPI" -pa_device "NX-EDG27 (NVIDIA High Definition Audio)" -pa_latency 0.20
+ mame suprmrio -sound portaudio -pa_api "Windows WASAPI" -pa_device "NX-EDG27 (NVIDIA High Definition Audio)" -pa_latency 0.20