Using the program
-----------------
mame [name of the game to run] [options]
For example:
mame robby -nosound
...will run Robby Roto without sound
Configuration options
---------------------
-createconfig / -cc
Creates the
default MAME.INI file. All the following configuration
options can
be permanently changed by editing this configuration file.
-showconfig / -sc
Displays
the current configuration settings. If you route this to a
file, you
can use it as an INI file. For example, the command:
mame
-showconfig >mame.ini
is
equivalent to -createconfig.
-showusage / -su
Displays a
summary of all the command line options. For options that
are not
mentioned here, the short summary given by "mame -showusage" is
usually
sufficient.
-[no]readconfig / -[no]rc
Enables or
disables the reading of the config files. When enabled
(which is
the default), MAME reads the following config files in order:
-
MAME.INI
-
$MY_MAME.INI (i.e. if MAME was renamed MAME060.EXE, MAME
parses
MAME060.INI here)
-
MAMED.INI (if this is a debug build,
i.e. MAMED.EXE)
-
VECTOR.INI (for vector games only)
-
DRIVER.INI (based on the source filename of the driver)
-
PARENT.INI (for clones only, may be called recursively)
-
GAMENAME.INI
The
settings in the later ini's override those in the earlier ini's.
So, for
example, if you wanted to disable hardware stretch in the
vector
games, you can create a VECTOR.INI with the "hwstretch 0" line
in it, and
it will override whatever hwstretch value you have in your
MAME.INI.
-[no]verbose / -[no]v
Displays
some diagnostic information at startup. IMPORTANT: when
reporting
bugs, please run with mame -verbose and include the resulting
information.
It can be very helpful in tracking down problems. The
default is
off (-noverbose)
Windows path and directory options
----------------------------------
IMPORTANT: Please use the path, directory and file options
ONLY in MAME.INI.
Otherwise, the outcome may be unpredictable and not
consistent across releases.
-rompath / -rp
You can
give a path (list of directories seperated by
semicolons) of
directories
to be searched for roms. The default is ROMS (that is, a
directory
"roms" in the current directory).
-samplepath / -sp
You can
give a path (list of directories seperated by
semicolons) of
directories
to be searched for samples. The default is SAMPLES (that
is, a
directory "samples" in the current directory).
-inipath
You can
give a path (list of directories seperated by
semicolons) of
directories
to be searched for INI-files. The default is .;ini (that
is, search
in the current directory first, and then in the directory
"ini"
in the current directory).
-cfg_directory
After
running a game, MAME stores some user changeable settings into
cfg_directory/gamename.cfg. Additionally, on the first
start of MAME a
cfg_directory/default.cfg is created. The default is CFG.
-nvram_directory
The
original hardware of some games use non-volative ram
chips to save
their
configuration. The contents of these are saved into this
directory.
The default is NVRAM.
-memcard_directory
The
original hardware of some games supports so-called memory cards.
The
contents of these are stored here. The default is MEMCARD.
-input_directory
Input
recordings created by "-record" will be saved here and loaded by
"-playback".
The default is INP.
-hiscore_directory
If there
exists a file HISCORE.DAT in the MAME directory, highscores
may also be
saved for games that do not have the original hardware to
support
this. The quality of this feature depends on the accuracy of
the
externally available file HISCORE.DAT. The default is HI.
-state_directory
MAME
supports state saving for some games. These states will be saved
here. The
default is STATE.
-artwork_directory
Some games
used extra artwork not created by electical circuits.
MAME
supports
such artwork in PNG image format, located in this directory.
The default
is ARTWORK.
-snapshot_directory
Screenshots
will go here. The default is SNAP.
-diff_directory
Directory
for hard drive image difference files. The default is DIFF.
-ctrlr_directory
This
directory holds controller-specific input port mapping .ini files.
The default
is CTRLR.
-cheat_file
The default
is CHEAT.DAT. Modifying the default may not work at the
moment.
Windows video options
---------------------
-[no]autoframeskip / -[no]afs
Automatically
determines the frameskip level while you're playing the
game,
adjusting it constantly in a frantic attempt to keep the game
running at
full speed. Turning this on overrides the value you have set
for
-frameskip above. The default is ON (-autoframeskip).
-frameskip / -fs
Specifies
the frameskip value. This is the number of frames out of
every 12 to
drop when running. For example, if you say -frameskip 2,
then MAME
will display 10 out of every 12 frames. By skipping those
frames, you
may be able to get full speed in a game that requires more
horsepower
than your computer has. The default value is -frameskip 0,
which skips
no frames.
-[no]waitvsync
Waits for
the refresh period on your computer's monitor to finish
before
starting to draw video to your screen. If this option is off,
MAME will
just draw to the screen at any old time, even in the middle
of a
refresh cycle. This can cause "tearing" artifacts, where the top
portion of
the screen is out of sync with the bottom portion. Tearing
is not
noticeable on all games, and some people hate it more than
others.
However, if you turn this option on, you will waste more of
your CPU
cycles waiting for the proper time to draw, so you will see a
performance
hit. You should only need to turn this on in windowed mode.
In full
screen mode, it is only needed if -triplebuffer does not
remove the
tearing. In which case you should use -notb -waitvsync.
The default
is OFF (-nowaitvsync). This option requires -ddraw.
-[no]triplebuffer / -[no]tb
Enables or
disables "triple buffering". Normally, MAME just draws
directly to
the screen, without any fancy buffering. But with this
option
enabled, MAME creates three buffers to draw to, and cycles
between
them in order. It attempts to keep things flowing such that one
buffer is
currently displayed, the second buffer is waiting to be
displayed,
and the third buffer is being drawn to. Unfortunately, due
to some
DirectDraw issues, this doesn't always work out as well as it
should.
This is still being investigated. -triplebuffer will override
-waitvsync, if the buffer is sucessfully
created. The default is OFF.
(-notriplebuffer). This option requires -ddraw and -nowindow.
-[no]window
Run MAME in
either a window or full screen. The default is OFF
(-nowindow).
-[no]ddraw / -[no]dd
This is
really just for testing. It disables the use of DirectDraw,
which
removes a lot of the features of the video system (-triplebuffer,
-waitvsync, -resolution, -refresh, -switchres,
-switchbpp, -resolution,
-hwstretch
all won't work). It will generally run really slowly. If
anyone has
a legitimate use for this option, we'd be curious to know.
The default
is ON (-ddraw).
-[no]direct3d / -[no]d3d
Use
Direct3D to display the image. This does not render 3D games using
3D
hardware, it just uses 3D hardware to display the image, and apply
effects to
it. -triplebuffer, -waitvsync, -resolution, -refresh,
-switchres, -switchbpp,
-resolution all work with this option. This
option
overrides -ddraw and implies -hwstretch. The default is OFF
(-nodirect3d).
-[no]hwstretch / -[no]hws
MAME uses
the hardware stretching abilities of modern graphic cards to
scale the
game image to the requested resolution. Depending on the
quality of
your graphic card and its drivers, this may be a fractional,
antialiased scaling (nice) or an integer, blocky scaling
(not so nice).
In any
case, you can disable this stretching altogether and let MAME do
the scaling
in software, which is probably slower, though. The default
is ON
(-hwstretch). Note: Vector games may actually look better with
"-nohws".
-cleanstretch [option] / -cs [option]
Stretch the
image to integer ratios only. This may leave a black border
around the
image in fullscreen mode. The options are:
none
disable. This will cause artifacts when using
scanlines.
auto
let the blitter decide. The d3d module will select
the best option.
full
always stretch to integer ratios both horizontally
and vertically.
horizontal always stretch to integer ratios
horizontally.
vertical always stretch to integer ratios
vertically.
The default
is AUTO (-cleanstretch auto). This option requires -ddraw
or -direct3d.
-resolution wxh[xd] / -r wxh[xd]
Specifies
an exact resolution to run in. In full screen mode, MAME will
try to use
the specific resolution you request. The width (w) and
height (h)
are required; the color depth (d) is optional. If omitted or
set to 0,
MAME will determine the mode auomatically. For
example,
-resolution
640x480 will force 640x480 resolution, but MAME is free to
choose the
color depth. Similarly, -resolution 0x0x32 will force 32-bit
color
depth, but allows MAME to choose the resolution. The string
"auto"
is also supported, and is equivalent to 0x0x0. In window mode,
this
resolution is used as a maximum size for the window. The default
is auto
(-resolution auto). This option requires -ddraw for full screen
resolution
switching.
-refresh
Specifies a
particular refresh rate to set your monitor to. If the
refresh
rate is not found, or if this parameter is 0, the default
DirectDraw
refresh rate is used. The default is -refresh 0. This option
requires
-ddraw and -nowindow.
-[no]scanlines / -[no]sl
Enables the
classic MAME "scanlines" effect. The default is OFF
(-noscanlines).
This option requires -nohwstretch.
-[no]switchres
Enables
resolution switching. This option is required for the
-resolution
option to switch resolutions in full screen mode. On many
modern
video cards with hardware stretching support, there is little
performance
penalty at higher resolutions, so it is nice to be able to
get rid of
the monitor resync time when you run in full screen mode.
This is
also useful on LCD displays with a fixed resolution. The
default is
ON (-switchres). This option requires -ddraw.
-[no]switchbpp
Enables
color depth switching. This option is required for the
-resolution
option to switch color depths in full screen mode. This
option is
useful if you normally run at 16, 24, or 32 bit color depth
on your
desktop, and want to keep that color depth when you run MAME.
The default
is ON (-switchbpp). This option requires -ddraw.
-[no]maximize / -[no]max
Controls
initial window size in windowed mode. If it is set on, the
window will
initially stretch to the maximum supported size when you
start MAME.
If it is turned off, the window will start out at the
smallest
supported size. The default is ON (-maximize). This option
requires
-window.
-[no]keepaspect / -[no]ka
Enables
aspect ratio enforcement. When this option is on, the game's
proper
aspect ratio (generally 4:3 or 3:4) is enforced, so you get the
game
looking like it should. When running in a window with this option
on, you can
only resize the window to the proper aspect ratio, unless
you are
holding down the CONTROL key. By turning the option off, the
aspect
ratio is allowed to float. In full screen mode, this means that
all games
will stretch to the full screen size (even vertical games).
In window
mode, it means that you can freely resize the window without
any
constraints. The default is ON (-keepaspect).
-[no]matchrefresh
Enables
refresh rate matching. When enabled, MAME will try to find the
closest
refresh rate match that is greater than the game's refresh
rate. For
example, if the game runs at 57fps, and you have 60, 70, 75Hz
refresh
rates, MAME will choose 60Hz. If the game runs at 61fps, then
it will
choose 70Hz. This is intended mainly for those who have tweaked
their video
card's settings to provide carefully matched refresh rate
options.
The default is OFF (-nomatchrefresh). This option
requires
-ddraw and
-nowindow.
-[no]syncrefresh
Enables
speed throttling only to the refresh of your monitor. This
means that
the game's actual refresh rate is ignored; however, the
sound code
still attempts to keep up with the game's original refresh
rate, so
you may encounter sound problems. Again, this is intended
mainly for
those who have tweaked their video card's settings to
provide
carefully matched refresh rate options. The default is OFF
(-nosyncrefresh). This option requires -ddraw.
-[no]throttle
Configures the
default thottling setting. When throttling is on,
MAME
attempts to
keep the game running at the game's intended speed. When
throttling
is off, MAME runs the game as fast as it can. The default is
ON
(-throttle).
-full_screen_brightness / -fsb
Some video
cards adjust the brightness/gamma when they switch into full
screen
mode. To counteract this, you can specify the
-full_screen_brightness value, which is a number between 0.1
and 2. 0.1
means
1/10th as bright as the default, and 2 means twice as bright.
Note that
the hardware support for this option is not present on all
video
cards. If you set a non-zero value, you may get a warning if MAME
was unable
to set the brightness on your card. The default is 0, which
means that
MAME will not attempt to adjust the brightness on your video
card at
all. This option requires -ddraw and -nowindow.
-frames_to_run / -ftr
This option
can be used for benchmarking. It tells MAME to stop
execution
after a fixed number of frames. By combining this with a
fixed set
of other command line options, you can set up a consistent
environment
for benchmarking MAME performance.
-effect
Apply
various blitting effects to emulate the look of Arcade monitors.
Using these
modes comes at the cost of reduced emulation speed, which
is inherent
to these modes. The current implementation is already as
fast as
possible, using self-modifying assembly code. For some of
these, MMX
is required. Possible values:
none
no effect (this is the default)
sharp no
effect, but gives a sharper image
scan25 25%
scanlines
scan50 50%
scanlines
scan75 75%
scanlines
scan75v 75% scanlines (vertical)
rgb3 a
certain "monitor mask"
rgb4
another one
rgb4v
another one (vertical)
rgb6
another one
rgb16
another one
rgbtiny another one. Choose the one you like best.
-screen_aspect
Give a
screen aspect ration in the form X:Y where X is the horizontal
and Y the
vertical part. Examples are 4:3 for most resolution settings
on computer
monitors, 5:4 for the 1280x1024 resolution or 3:4 for
turnable LCD's in the turned position. The default is 4:3.
-mngwrite <filename>
Writes each
video frame to a MNG file, producing an animation of the
game.
Windows video options (Direct3D)
--------------------------------
-zoom [z] / -z [z]
Try to get
a resolution that enlarges the emulated game z times. The
default is
-zoom 2. MAME determines the resolution automatically. This
option only
works with -direct3d.
-[no]d3dtexmanage
Let
Direct3D handle conversion of the image to a texture (required to
display it
with Direct3D). This is more compatible, but can be
(significantly)
slower on some hardware. The default is ON
(-d3dtexmanage).
Using -nod3dtexmanage can eliminate a loss of
performance
that may occur with some graphics cards when using
-direct3d.
This option requires -direct3d.
-d3dfilter [f] / -flt [f]
Select the
type of filtering to apply to the image when stretching. 0
is point
filtering, 1 is bi-linear filtering, 2 is bi-cubic filtering
(flat
kernel), 3 is bi-cubic filtering gaussian kernel), 4
is
anisotropic
filtering. Note that very few graphics cards support
bi-cubic
filtering, and that older graphics cards may not support
anisotropic
filtering. The default is bi-linear filtering (-d3dfilter
1). This
option requires -direct3d.
-d3dfeedback [i]
Select the
feedback effect intensity in percentages. 0 is disable,
higher
values feed back the previous frame to the current one at the
specified
intensity. The default is DISABLE (-d3dfeedback 0). This
option
requires -direct3d.
-d3dscan [i]
Select the
scanline effect intensity in percentages. 0 is black lines
between
scanlines, 100 is disable scanline effect. The default is
DISABLE
(-d3dscan 100). This option requires -direct3d.
-[no]d3deffectrotate
Apply rotatation so that any effects are rotated along with the
game
image. The
default is ON. This option requires -direct3d.
-d3dprescale [option]
Pre-scale
up the image with point filtering before fitting the image to
the screen.
This gives an only slightly fuzzy image even at high
display
resolutions. The options are:
none
disable.
auto
adaptively apply a moderate pre-scale effect,
depending on other efects
used.
full
adaptively apply an agressive pre-scale
effect.
n
(where 2 <= n <= 4) pre-scale the image n times.
The default
is AUTO (-d3dprescale auto). This option requires
-direct3d.
-d3deffect [preset]
Select an
effect preset. Valid presets are:
none no effect (this is the default)
sharp no effect, but gives a sharper
image
scan25 25% scanlines
scan50 50% scanlines
scan75 75% scanlines
scan75v
75% scanlines (vertical)
rgbmicro a certain "monitor mask"
rgbtiny
another one
rgb3 another one
rgb4 another one
rgb4v another one (vertical)
rgb6 another one
rgb16 another one
rgbminmask another
one
dotmedmask another
one
rgbmedmask another
one
dotmedbright another
one (extra bright)
rgbmaxbright another
one (extra bright)
aperturegrille another one. Choose the one you like best.
auto adaptively selects a special
preset based on
zoom
level.
The default
is none (-d3deffect none). This option requires -direct3d.
-d3dcustom [custom preset]
Supply a
custom preset. The format is <-d3dcustom
1,0,0x0100,0xC0,0,0,0,0x22,-1,8x8_mame_rgbtiny.rgb>.
The meaning
of the mumbers is:
1
RGB effects mode: 0 is off, 1 is multiply mode, 2
is add and multiply mode.
2,3,4,5 pattern preprocessing; use mask, white
level, black
level, desaturation,
respectively.
6
image attenuation
7
feedback (0 is don't use)
8
prescale. bit 4: prescale horizontally, bit 0:
prescale vertically.
9
maximum scanline intensity.
10
pattern filename, including path.
The
filename must start with XxY, where X and Y are the dimensions of
the pattern
in pixels. Each pixel is represented by 4 bytes, red,
green, blue,
and mask, respectively. mask is an on/off value, where 0
is off.
This option requires -direct3d.
-d3dexpert [settings]
Undocumented
settings intended mostly for developers. This option
requires
-direct3d.
Windows misc options
--------------------
-[no]sleep
Since MAME
is running in a multitasking environment, it should be nice
to its
fellow processes. Therefore, if MAME does not need all
processing
power to emulate a game, it gives back already granted
processor
time to the operating system. This may not work in every
case, so it
can be disabled and MAME turned once again into a CPU hog.
The default
is ON (-sleep).
-[no]rdtsc
Prefer
RDTSC over QueryPerformanceCounter for timing. The
default is
OFF (-nordtsc). -rdtsc sometimes causes problems on laptops, and
-nordtsc may cause problems on desktop computers. If MAME
does not
operate
smoothly (and you are sure you have enough CPU power for
the
emulation), try toggling this.
-priority <priority>
Sets the
thread priority for the main MAME thread. Default is -15, which
is IDLE
priority, guaranteeing proper cooperation with other apps. The
valid range
is -15 to 1, with 1 being the highest priority.
Windows sound options
---------------------
-audio_latency
This
controls the amount of latency built into the audio streaming. By
default
MAME tries to keep the DirectSound audio buffer between 1/5 and
2/5 full.
On some systems, this is pushing it too close to the edge,
and you get
poor sound sometimes. The latency parameter controls the
lower
threshold. The default is 1 (meaning lower=1/5 and upper=2/5).
Set it to 2
(-audio_latency 2) to keep the sound buffer between
2/5 and
3/5 full.
If you crank it up to 4, you can definitely notice the lag.
-wavwrite <filename>
Writes the
final mixer output to the given <filename> in .WAV format.
Input device options
--------------------
-[no]mouse
Controls
whether or not MAME looks for a mouse controller to use. When
this is
enabled, you will not be able to use your mouse in Windows
while
playing a game. If you want to get control of your computer back,
you will
need to pause the game, or quit. The default is OFF
(-nomouse).
WinXP:
-mouse is also used to enable lightguns.
This allows for multiple
independently
tracking lightguns.
-[no]joystick / -[no]joy
Controls
whether or not MAME looks for joystick/gamepad controllers.
When this
is enabled, MAME will ask DirectInput about which controllers
are
connected. The default is OFF (-nojoystick).
-[no]lightgun/ -[no]gun
Controls
whether or not MAME treats mouse inputs as lightgun inputs.
Note that
most lightguns map to the mouse, so using -lightgun and
-mouse
together may produce strange results. The default is OFF
(-nolightgun).
WinXP:
-lightgun is ignored. Use -mouse
instead.
-[no]dual_lightgun / -[no]dual
Controls
whether or not MAME attempts to track two lightguns connected
at the same
time. This option requires -lightgun. The default is OFF
(-nodual_lightgun).
WinXP: -dual_lightgun is ignored.
Using -mouse will enable 2 or more
lightguns.
-[no]offscreen_reload /
-[no]reload
Controls
whether or not MAME treats a second button input from a
lightgun as
a reload signal. In this case, MAME will report the gun's
position as
(0,0) with the trigger held, which is equivalent to an
offscreen
reload. This is not needed for all lightgun games. Only
games that
required you to shoot off screen need this.
And then only
if your gun
does not support off screen reloads.
The default
is OFF (-nooffscreen_reload).
WinXP: -offscreen_reload is valid to use.
-[no]steadykey / -[no]steady
Some games
require two or more buttons to be pressed at exactly the
same time
to make special moves. Due to limitations in the PC keyboard
hardware,
it can be difficult or even impossible to accomplish that
using the
standard keyboard handling. This option selects a different
handling
that makes it easier to register simultaneous button presses,
but has the
disadvantage of making controls less responsive. The
default is
OFF (-nosteadykey)
-[no]keyboard_leds / -[no]leds
Since MAME
uses an input device (keyboard) for output, this sort of
belongs
here. Using this option enables/disables simulation of the game
LEDs by the
keyboard LEDs. This works fine, but can lead to problems
after
exiting MAME (i.e. CAPS LOCK remains ON), so you can disable it
here. The
default is ON (-keyboard_leds).
-led_mode <ps/2|usb>
For Windows
NT and later systems, determines how LEDs on the keyboard
are
controlled. In PS/2 mode, MAME uses the low-level keyboard driver
directly to
control the LEDs. In USB mode, MAME attempts to post fake
keypresses on the Caps Lock, Scroll Lock, and Num Lock keys
in order to
induce the
LEDs to change. If you have a PS/2 keyboard, PS/2 mode is the
more
reliable approach. Default is PS/2.
-a2d_deadzone / -a2d
If you play
with an analog joystick, but the game requires digital
input, MAME
needs to convert the signals. Here you can give the ratio
of movement
along an axis that accounts for a digital signal. This
option
expects a float in the range of 0.0 to 1.0. The default is 0.3.
Note: the
current handling is not precise, as it does also implicitely
set the
size of the arc which is interpreted as diagonal movement. This
is a known
problem but it requires some major rework of the input
handling
code to fix it.
-ctrlr <controller>
Enables
support for special controllers. Configuration files are
provided
for:
hotrod
HotRod
hotrodse HotRod SE
slikstik SlikStik
xarcade X-Arcade
-paddle_device <keyboard|mouse|joystick|lightgun> / -paddle
-adstick_device <keyboard|mouse|joystick|lightgun> / -adstick
-pedal_device <keyboard|mouse|joystick|lightgun> / -pedal
-dial_device <keyboard|mouse|joystick|lightgun> / -dial
-trackball_device <keyboard|mouse|joystick|lightgun> / -trackball
-lightgun_device <keyboard|mouse|joystick|lightgun>
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 game. 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.
Note that
these controls override the values of -[no]mouse, -[no]joystick,
etc.
-digital <all|none|j<N>[a<M>[a<K>...]][,j<X>[a<Y>...]][,...]>
Controls which
joystick axes are considered digital. If MAME knows that
a given
joystick axis is digital, it can make much better decisions about
how to
treat that axis. If you are using a digital gamepad with MAME,
you will
want to use this option. There are a number of ways to do this:
-digital
all means that all axes of all connected joysticks will be
treated
as digital.
-digital
none means that all axes of all connected joysticks will be
treated
as analog (this is the default behavior).
-digital j2
will treat all axes of joystick #2 as digital; axes on all
other
joysticks will be treated as analog.
-digital
j1a0a1 will treat axis 0 and 1 on joystick #1 as digital; all
other
axes will be treated as analog.
-digital
j1a0a1,j2a5 will treat axis 0 and 1 on joystick #1 as digital,
as
well as axis 5 on joystick #2; all other axes will be treated
as
analog.
Make use of
the information provided by -verbose to determine which
joysticks
and axes you should be configuring this way.
MAME core video options
-----------------------
-[no]norotate
-[no]ror
-[no]rol
-[no]autoror
-[no]autorol
-[no]flipx
-[no]flipy
These are
the standard MAME rotation options. They are all OFF by
default.
-gamma
This
controls the global gamma correction in the game. It is the same
gamma that
is applied when you bring up the on-screen-display within
MAME. The
default is 1.0.
-brightness / -bright
This
controls the global brightness correction in the game. It is the
same
brightness that is applied when you bring up the on-screen-display
within
MAME. The default is 1.0.
-pause_brightness
This
controls the brightness level when MAME is paused. The default
value is
0.65.
MAME core vector options
------------------------
-[no]antialias / -[no]aa
Antialiasing for vector games. The default is ON (-antialias).
-[no]translucency / -[no]tl
Enables or
disables vector translucency. Colors of crossing vector
beams will
be merged. The default is ON (-translucency).
-beam
Sets the
width in pixels of the vectors. This option expects a float in
the range
of 1.00 through 16.00 as argument. The default is 1 (1 pixel
wide).
-flicker
Makes the
vectors flicker. This option requires a float argument in the
range of
0.00 - 100.00 (0=none, 100=maximum). The default is 0.
-intensity
Sets the
intensity correction for the beam. Higher values give a
brighter
beam. This option expects a float in the range of 0.5 through
3.0 as
argument. The default is 1.5.
MAME core sound options
-----------------------
-samplerate / -sr
Sets the
audio sample rate. Smaller values (e.g. 11025) cause lower
audio
quality but faster emulation speed. Higher values (e.g. 44100)
cause
higher audio quality but slower emulation speed. The default is
44100.
-[no]samples
Use samples
if available. The default is ON (-samples).
-[no]sound
Enable or
disable sound altogether. The default is ON (-sound).
-volume / -vol
Sets the
startup volume. It can later be changed with the On Screen
Display
(see Keys section). The volume is an attenuation in dB: e.g.,
"-volume
-12" will start with -12dB attenuation. The default is 0.
MAME core misc options
----------------------
-[no]artwork / -[no]art
Enable or
disable usage of additional artwork (backdrops, overlays,
etc.). The
default is ON (-artwork).
-[no]use_backdrops / -[no]backdrop
Enables/disables
the display of backdrops. The default is ON
(-use_backdrops).
-[no]use_overlays / -[no]overlay
Enables/disables
the display of overlays. The default is ON
(-use_overlays).
-[no]use_bezels / -[no]bezel
Enables/disables
the display of bezels. The default is ON
(-use_bezels).
-[no]artwork_crop / -[no]artcrop
This will
crop the artwork to the game screen area only. The default is
OFF (-noartwork_crop).
-artwork_resolution / -artres
Scale the
game by this factor to accommodate for higher resolution
artwork.
The default is 0 (auto).
-[no]cheat / -[no]c
Cheats,
like the speedup in Pac Man or the level-skip in many other
games, are
disabled by default. Use this switch to turn them on. The
default is
OFF (-nocheat).
-[no]debug
Activates
the integrated debugger. During
emulation, press the tilde
key (~) to
activate the debugger. This is available only if the program
is compiled
with MAME_DEBUG defined. The default is OFF (-nodebug).
-playback / -pb
Expects a
filename as parameter. Play back all game inputs from from
file INP/filename.inp. The gamename is contained in this file,
therefore a
gamename needs not be given on the commandline.
-record / -rec
Expects a
filename as parameter. All game inputs are written to the
file INP/filename.inp.
-[no]log
Creates a
log of illegal memory accesses in ERROR.LOG. The default is
OFF (-nolog).
-[no]oslog
Outputs error.log data to the Windows debugger instead of to a
file.
Default is
OFF (-nooslog).
-[no]skip_disclaimer
Forces MAME
to skip displaying the disclaimer screen. The default is
OFF (-noskip_disclaimer).
-[no]skip_gameinfo
Forces MAME
to skip displaying the game info screen. The default is OFF
(-noskip_gameinfo).
-bios
Expects a
BIOS name as the parameter. -listxml will list the
possible
BIOS names
for a game/system.
-state <slot>
Starts MAME
and loads a saved state immediately from the specified slot.
Other MAME frontend options
----------------------------
Note: By default, all the '-list' commands below write info
to the screen. If
you wish to write the info to a textfile
instead, add this to the end of your
command:
> filename
...where 'filename' is the textfile's
path and name (e.g., c:\mame\list.txt).
-help / -?
Displays
current MAME version and copyright notice
-listxml / -lx
List
comprehensive details for all of the supported games. The output
is quite
long, so better redirect this into a file. The output is in
XML format.
-listfull / -ll
Displays a
list of game directory names + descriptions.
-listsource / -ls
Displays
the source file (in the drivers directory) containing the
driver for
the specified game. Useful for finding which driver a game
runs on in
order to fix bugs.
-listclones / -lc
Lists
clones of the specified game. When no game is specified, this
generates a
list of all MAME-supported clones.
-listcrc
List CRC32
checksums of rom files
-listroms
Displays
ROMs required by the specified game.
-listsamples
Displays
samples required by the specified game.
-verifyroms
Checks
specified game(s) for missing and invalid ROMs. Adding
"*"
checks all
available games.
-verifysamples
Check
selected game for missing samples. Adding "*" checks all
available
samples.
-romident
Attempts to
identify ROM files, if they are known to MAME, in the
specified
.zip file. Can be used to try and identify ROM sets taken
from
unknown boards.
-isknown
Very terse romident.
Keys
----
Tab Toggles the configuration menu
Tilde Toggles the On Screen Display. Use the up
and down arrow keys to
select the parameter (global volume,
mixing level, gamma
correction etc.), left and right to arrow
keys to modify it.
P Pauses the game
Shift+P While paused, advances to next frame
F1 Toggle crosshairs for games that use them
F2 Service Mode
F3 Resets the game
F4 Shows the game palette, decoded GFX, and
any tilemaps
Cursor left/right changes between palette,
GFX and tilemaps
Cursor up/down cycle through valid
palettes
Page up/down scroll through the palette
and GFX
Page up/down, D, G scroll the tilemap
display
Ctrl & Shift are modifiers to change
movement speed.
F4 or Esc returns to the emulation.
Note: Not all games have decoded graphics
and/or tilemaps.
F6 Toggle cheat mode (if started with
"-cheat")
F7 Load a 'Save State'. You will be requested
to press a key to
determine which Save State you wish to
load. Note that the 'Save
State' feature is for developing drivers
and not intended for
users. It is incomplete and works only on
a number of drivers. Use
at own risk.
Shift+F7 Create a
'Save State'. Requires an additional keypress to identify
the state.
F8 Decrease frame skip on the fly
F9 Increase frame skip on the fly
F10 Toggles speed throttling
F11 Toggles speed display
Shift+F11 Toggles
profiler display (debug builds only)
F12 Saves a screen snapshot. The default
target directory is SNAP.
ESC Exits emulator