diff options
author | Aaron Giles <aaron@aarongiles.com> | 2007-12-17 06:11:01 +0000 |
---|---|---|
committer | Aaron Giles <aaron@aarongiles.com> | 2007-12-17 06:11:01 +0000 |
commit | 3da7f476068b3ffef713218ba2fc1bd5030f2c38 (patch) | |
tree | e90d4b770c1b7318bdf039807ec4be2a105e846e /docs/windows.txt | |
parent | 811ef79c661883dd9602d8f7bbe23fabf3150958 (diff) |
First checkin of MAME 0.121 docs folder.
Diffstat (limited to '')
-rw-r--r-- | docs/windows.txt | 362 |
1 files changed, 362 insertions, 0 deletions
diff --git a/docs/windows.txt b/docs/windows.txt new file mode 100644 index 00000000000..9b0097b1df8 --- /dev/null +++ b/docs/windows.txt @@ -0,0 +1,362 @@ +This file describes Windows-specific usage information about MAME. It is +intended to cover aspects of using and configuring the program that are +specific to running MAME from the command line on a Windows-based system. +For common options that apply to all systems, please see config.txt. + + + +Default Keys +------------ + +In addition to the keys described in config.txt, the following additional +keys are defined for Windows versions of MAME: + + +Alt+Enter Toggles between full-screen and windowed mode. + + + +Windows debugging options +------------------------- + +-[no]oslog + + Outputs the error.log data to the Windows debugger. This can be used at + the same time as -log to output the log data to both targets as well. + Default is OFF (-nooslog). + + + +Windows performance options +--------------------------- + +-priority <priority> + + Sets the thread priority for the MAME threads. By default the priority + is left alone to guarantee proper cooperation with other applications. + The valid range is -15 to 1, with 1 being the highest priority. The + default is 0 (NORMAL priority). + +-[no]multithreading / -[no]mt + + Enables multithreading within MAME. At the moment, this causes the + window and all DirectDraw/Direct3D code to execute on a second thread, + which can improve performance on hyperthreaded and multicore systems. + The default is OFF (-nomultithreading). + + + +Windows video options +--------------------- + +-video <gdi|ddraw|d3d|none> + + Specifies which video subsystem to use for drawing. By specifying 'gdi' + here, you tell MAME to render video using standard Windows graphics + drawing calls. This is the slowest but most compatible option. + Specifying 'ddraw' instructs MAME to use DirectDraw for rendering. + This causes MAME to render everything at a lower resolution and then + upscale the results at the end. This produces high performance, + especially on older or low-power video cards, but has a noticeably + lower output quality. Specifying 'd3d' tells MAME to use Direct3D for + rendering. This produces the highest quality output and enables all + rendering options. It is recommended if you have a recent (2002+) + video card. The final option 'none' displays no windows and does no + drawing. This is primarily present for doing CPU benchmarks without + the overhead of the video system. The default is d3d. + +-numscreens <count> + + Tells MAME how many output windows to create. For most games, a single + output window is all you need, but some games originally used multiple + screens. Each screen (up to 4) has its own independent settings for + physical monitor, aspect ratio, resolution, and view, which can be + set using the options below. The default is 1. + +-[no]window + + Run MAME in either a window or full screen. The default is OFF + (-nowindow). + +-[no]maximize / -[no]max + + Controls initial window size in windowed mode. If it is set on, the + window will initially be set to the maximum supported size when you + start MAME. If it is turned off, the window will start out at the + smallest supported size. This option only has an effect when the + -window option is used. The default is ON (-maximize). + +-[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). + +-prescale <amount> + + Controls the size of the screen images when they are passed off to the + graphics system for scaling. At the minimum setting of 1, the screen + is rendered at its original resolution before being scaled. At higher + settings, the screen is expanded by a factor of <amount> before being + scaled. With -video ddraw or -video d3d, this produces a less blurry + image at the expense of some speed. In -video ddraw mode, this also + increases the effective resolution of non-screen elements such as + artwork and fonts. The default is 1. + +-effect <filename> + + Specifies a single PNG file that is used as an overlay over any game + screens in the video display. This PNG file is assumed to live in the + root of one of the artpath directories. The pattern in the PNG file is + repeated both horizontally and vertically to cover the entire game + screen areas (but not any external artwork), and is rendered at + the target resolution of the game image. For -video gdi and -video d3d + modes, this means that one pixel in the PNG will map to one pixel on + your output display. For -video ddraw, this means that one pixel in the + PNG will map to one pixel in the prescaled game screen. If you wish to + use an effect that requires mapping n PNG pixels to each game screen + pixel with -video ddraw, you need to specify a -prescale factor of n as + well. The RGB values of each pixel in the PNG are multiplied against the + RGB values of the target screen. The default is 'none', meaning no + effect. + +-[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 -notriplebuffer + -waitvsync. Note that this option does not work with -video gdi mode. + The default is OFF (-nowaitvsync). + +-[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. This option is intended + mainly for those who have tweaked their video card's settings to + provide carefully matched refresh rate options. Note that this option + does not work with -video gdi mode.The default is OFF (-nosyncrefresh). + + + +DirectDraw-specific options +--------------------------- + +-[no]hwstretch / -[no]hws + + When enabled, MAME uses the hardware stretching abilities of your + video card to scale the game image and associated artwork to the + target 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 which case you might want + to disable this option. In addition, if you have configured specific + arcade-like video modes for MAME and don't want MAME to perform any + non-integral scaling of the image, you should also disable this option. + The default is ON (-hwstretch). + + + +Direct3D-specific options +------------------------- + +-d3dversion <version> + + MAME supports both Direct3D 9 and Direct3D 8 for maximum compatibility. + By default, it will automatically detect which one it can use and use + that version exclusively. You can override MAME's selection with this + option. It is primarily intended as a means for the MAME developers to + test compatibility with older hardware; for the most part, there is no + reason to alter this setting. The default is 9. + +-[no]filter / -[no]d3dfilter / -[no]flt + + Enable bilinear filtering on the game screen graphics. When disabled, + point filtering is applied, which is crisper but leads to scaling + artifacts. If you don't like the filtered look, you are probably better + off increasing the -prescale value rather than turning off filtering + altogether. The default is ON (-filter). + + + +Per-window options +------------------ + +-screen <display> +-screen0 <display> +-screen1 <display> +-screen2 <display> +-screen3 <display> + + Specifies which physical monitor on your system you wish to have each + window use by default. In order to use multiple windows, you must have + increased the value of the -numscreens option. The name of each + display in your system can be determined by running MAME with the + -verbose option. The display names are typically in the format of: + \\.\DISPLAYn, where 'n' is a number from 1 to the number of connected + monitors. The default value for these options is 'auto', which means + that the first window is placed on the first display, the second + window on the second display, etc. + + The -screen0, -screen1, -screen2, -screen3 parameters apply to the + specific window. The -screen parameter applies to all windows. The + window-specific options override values from the all window option. + +-aspect <width:height> / -screen_aspect <num:den> +-aspect0 <width:height> +-aspect1 <width:height> +-aspect2 <width:height> +-aspect3 <width:height> + + Specifies the physical aspect ratio of the physical monitor for each + window. In order to use multiple windows, you must have increased the + value of the -numscreens option. The physical aspect ratio can be + determined by measuring the width and height of the visible screen + image and specifying them separated by a colon. The default value for + these options is 'auto', which means that MAME assumes the aspect + ratio is proportional to the number of pixels in the desktop video + mode for each monitor. + + The -aspect0, -aspect1, -aspect2, -aspect3 parameters apply to the + specific window. The -aspect parameter applies to all windows. The + window-specific options override values from the all window option. + +-resolution <widthxheight[@refresh]> / -r <widthxheight[@refresh]> +-resolution0 <widthxheight[@refresh]> / -r0 <widthxheight[@refresh]> +-resolution1 <widthxheight[@refresh]> / -r1 <widthxheight[@refresh]> +-resolution2 <widthxheight[@refresh]> / -r2 <widthxheight[@refresh]> +-resolution3 <widthxheight[@refresh]> / -r3 <widthxheight[@refresh]> + + Specifies an exact resolution to run in. In full screen mode, MAME + will try to use the specific resolution you request. The width and + height are required; the refresh rate 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 refresh rate. Similarly, -resolution 0x0@60 will force a + 60Hz refresh rate, but allows MAME to choose the resolution. The + string "auto" is also supported, and is equivalent to 0x0@0. In window + mode, this resolution is used as a maximum size for the window. This + option requires the -switchres option as well in order to actually + enable resolution switching with -video ddraw or -video d3d. The + default value for these options is 'auto'. + + The -resolution0, -resolution1, -resolution2, -resolution3 parameters + apply to the specific window. The -resolution parameter applies to all + windows. The window-specific options override values from the all + window option. + +-view <viewname> +-view0 <viewname> +-view1 <viewname> +-view2 <viewname> +-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. 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. + + + +Full screen options +------------------- + +-[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. -triplebuffer will + override -waitvsync, if the buffer is sucessfully created. This option + does not work with -video gdi. The default is OFF (-notriplebuffer). + +-[no]switchres + + Enables resolution switching. This option is required for the + -resolution* options to switch resolutions in full screen mode. On + modern video cards, there is little reason to switch resolutions unless + you are trying to achieve the "exact" pixel resolutions of the original + games, which requires significant tweaking. This option is also useful + on LCD displays, since they run with a fixed resolution and switching + resolutions on them is just silly. This option does not work with + -video gdi. The default is OFF (-noswitchres). + +-full_screen_brightness / -fsb <value> + + Controls the brightness, or black level, of the entire display. The + standard value is 1.0. Selecting lower values (down to 0.1) will produce + a darkened display, while selecting higher values (up to 2.0) will + give a brighter display. Note that not all video cards have hardware to + support this option. This option does not work with -video gdi. The + default is 1.0. + +-full_screen_contrast / -fsc <value> + + Controls the contrast, or white level, of the entire display. The + standard value is 1.0. Selecting lower values (down to 0.1) will produce + a dimmer display, while selecting higher values (up to 2.0) will + give a more saturated display. Note that not all video cards have + hardware to support this option. This option does not work with + -video gdi. The default is 1.0. + +-full_screen_gamma / -fsg <value> + + Controls the gamma, which produces a potentially nonlinear black to + white ramp, for the entire display. The standard value is 1.0, which + gives a linear ramp from black to white. Selecting lower values (down + to 0.1) will increase the nonlinearity toward black, while selecting + higher values (up to 3.0) will push the nonlinearity toward white. Note + that not all video cards have hardware to support this option. This + option does not work with -video gdi. The default is 1.0. + + + +Windows sound options +--------------------- + +-audio_latency <value> + + 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. + + + +Input device options +-------------------- + +-[no]dual_lightgun / -[no]dual + + Controls whether or not MAME attempts to track two lightguns connected + at the same time. This option requires -lightgun. This option is a hack + for supporting older dual lightgun setups. If you have multiple + lightguns connected, you will probably just need to enable -mouse and + configure each lightgun independently. The default is OFF + (-nodual_lightgun). |