diff options
Diffstat (limited to 'docs/source/advanced')
-rw-r--r-- | docs/source/advanced/bgfx.rst | 42 | ||||
-rw-r--r-- | docs/source/advanced/devicemap.rst | 6 | ||||
-rw-r--r-- | docs/source/advanced/glsl.rst | 11 | ||||
-rw-r--r-- | docs/source/advanced/hlsl.rst | 6 | ||||
-rw-r--r-- | docs/source/advanced/multiconfig.rst | 38 | ||||
-rw-r--r-- | docs/source/advanced/paths.rst | 22 | ||||
-rw-r--r-- | docs/source/advanced/shiftertoggle.rst | 6 |
7 files changed, 65 insertions, 66 deletions
diff --git a/docs/source/advanced/bgfx.rst b/docs/source/advanced/bgfx.rst index 5508ee01d53..72a61f6a546 100644 --- a/docs/source/advanced/bgfx.rst +++ b/docs/source/advanced/bgfx.rst @@ -23,17 +23,17 @@ Some older LCD displays used a native resolution of 1280x1024 and were a 5:4 asp Getting Started with BGFX ------------------------- -You will need to have followed the initial MAME setup instructions elsewhere in this manual before beginning. Official MAME distributions include BGFX as of 172, so you don't need to download any additional files. +You will need to have followed the initial MAME setup instructions elsewhere in this manual before beginning. Official MAME distributions include BGFX as of MAME 0.172, so you don't need to download any additional files. -Open your MAME.INI in your text editor of choice (e.g. Notepad), and make sure the following options are set correctly: +Open your ``mame.ini`` in your text editor of choice (e.g. Notepad), and make sure the following options are set correctly: -* **video bgfx** +* ``video bgfx`` Now, you may want to take a moment to look below at the Configuration Settings section to see how to set up these next options. -As referenced in :ref:`advanced-multi-CFG`, MAME has a order in which it processes INI files. The BGFX settings can be edited in MAME.INI, but to take full advantage of the power of MAME's config files, you'll want to copy the BGFX settings from MAME.INI to one of the other config files and make changes there.) +As referenced in :ref:`advanced-multi-CFG`, MAME has a order in which it processes INI files. The BGFX settings can be edited in ``mame.ini``, but to take full advantage of the power of MAME's config files, you'll want to copy the BGFX settings from ``mame.ini`` to one of the other config files and make changes there.) -In particular, you will want the **bgfx_screen_chains** to be specific to each game. +In particular, you will want the ``bgfx_screen_chains`` to be specific to each game. Save your .INI file(s) and you're ready to begin. @@ -46,12 +46,12 @@ Configuration Settings | | **bgfx_backend** | -| Selects a rendering backend for BGFX to use. Possible choices include **d3d9**, **d3d11**, **opengl**, and **metal**. The default is **auto**, which will let MAME choose the best selection for you. +| Selects a rendering backend for BGFX to use. Possible choices include ``d3d9``, ``d3d11``, ``opengl``, and ``metal``. The default is ``**auto**``, which will let MAME choose the best selection for you. | -| **d3d9** -- Direct3D 9.0 Renderer (Requires Windows XP or higher) -| **d3d11** -- Direct3D 11.0 Renderer (Requires Windows Vista with D3D11 update or Windows 7 or higher) -| **opengl** -- OpenGL Renderer (Requires OpenGL drivers, may work better on some poorly designed video cards, supported on Linux/Mac OS X) -| **metal** -- Metal Apple Graphics API (Requires OS X 10.11 El Capitan or newer) +| ``d3d9`` -- Direct3D 9.0 Renderer (Requires Windows XP or higher) +| ``d3d11`` -- Direct3D 11.0 Renderer (Requires Windows Vista with D3D11 update or Windows 7 or higher) +| ``opengl`` -- OpenGL Renderer (Requires OpenGL drivers, may work better on some poorly designed video cards, supported on Linux/Mac OS X) +| ``metal`` -- Metal Apple Graphics API (Requires OS X 10.11 El Capitan or newer) | | **bgfx_debug** | @@ -59,13 +59,13 @@ Configuration Settings | | **bgfx_screen_chains** | -| This dictates how to handle BGFX rendering on a per-display basis. Possible choices include **hlsl**, **unfiltered**, and **default**. +| This dictates how to handle BGFX rendering on a per-display basis. Possible choices include ``hlsl``, ``unfiltered``, and ``default``. | -| **default** -- default bilinear filterered output -| **unfiltered** -- nearest neighbor unfiltered output -| **hlsl** -- HLSL display simulation through shaders +| ``default`` -- **default** bilinear filterered output +| ``unfiltered`` -- nearest neighbor unfiltered output +| ``hlsl`` -- HLSL display simulation through shaders | -| We make a distinction between emulated device screens (which we'll call a **screen**) and physical displays (which we'll call a **window**, set by **-numscreens**) here. We use colons (:) to seperate windows, and commas (,) to seperate screens. Commas always go on the outside of the chain (see House Mannequin example) +| We make a distinction between emulated device screens (which we'll call a **screen**) and physical displays (which we'll call a **window**, set by ``-numscreens``) here. We use colons (:) to seperate windows, and commas (,) to seperate screens. Commas always go on the outside of the chain (see House Mannequin example) | | On a combination of a single window, single screen case, such as Pac-Man on one physical PC monitor, you can specify one entry like: | @@ -75,17 +75,17 @@ Configuration Settings | | On a single window, multiple screen game, such as Darius on one physical PC monitor, specify multiple entries (one per window) like: | -| **bgfx_screen_chains hlsl,hlsl,hlsl** +| bgfx_screen_chains hlsl,hlsl,hlsl | | This also works with single screen games where you are mirroring the output to more than one physical display. For instance, you could set up Pac-Man to have one unfiltered output for use with video broadcasting while a second display is set up HLSL for playing on. | | On a mulitple window, multiple screen game, such as Darius on three physical PC monitors, specify multiple entries (one per window) like: | -| **bgfx_screen_chains hlsl:hlsl:hlsl** +| ``bgfx_screen_chains hlsl:hlsl:hlsl`` | | Another example game would be Taisen Hot Gimmick, which used two CRTs to show individual player hands to just that player. If using two windows (two physical displays): | -| **bgfx_screen_chains hlsl:hlsl** +| ``bgfx_screen_chains hlsl:hlsl`` | | One more special case is that Nichibutsu had a special cocktail mahjongg cabinet that used a CRT in the middle along with two LCD displays to show each player their hand. We would want the LCDs to be unfiltered and untouched as they were, while the CRT would be improved through HLSL. Since we want to give each player their own full screen display (two physical monitors) along with the LCD, we'll go with: | @@ -95,14 +95,14 @@ Configuration Settings | | If using only one window (one display), keep in mind the game still has three screens, so we would use: | -| **bgfx_screen_chains hlsl,unfiltered,unfiltered** +| ``bgfx_screen_chains hlsl,unfiltered,unfiltered`` | | | Note that the commas are on the outside edges, and any colons are in the middle. | -| **bgfx_shadow_mask** +| ``bgfx_shadow_mask`` | -| This specifies the shadow mask effect PNG file. By default this is **slot-mask.png**. +| This specifies the shadow mask effect PNG file. By default this is ``**slot-mask.png**``. | | diff --git a/docs/source/advanced/devicemap.rst b/docs/source/advanced/devicemap.rst index d1888090a93..38dcc3a2641 100644 --- a/docs/source/advanced/devicemap.rst +++ b/docs/source/advanced/devicemap.rst @@ -16,7 +16,7 @@ NOTE: This setting only take effect when added to the **ctrlr** config file. The "device" attribute specifies the id of the device to match. It may also be a substring of the id. To see the list of available devices, enable verbose output and available devices will then be listed to the console at startup (more on this below). -The "controller" attribute specifies the MAME controller ID. It is made up of a controller class (i.e. "JOYCODE", "GUNCODE", "MOUSECODE") and controller index. For example: "JOYCODE_1". +The "controller" attribute specifies the MAME controller ID. It is made up of a controller class (i.e. ``JOYCODE``, ``GUNCODE``, ``MOUSECODE``) and controller index. For example: ``JOYCODE_1``. Example ------- @@ -36,11 +36,11 @@ Here's an example: | </newseq> | </port> | ... -| + In the above example, we have four device mappings specified: -The first two mapdevice entries map player 1 and 2 lightguns to Gun 1 and Gun 2, respectively. We use a substring of the full raw device names to match each devices. Note that, since this is XML, we needed to escape the '&' using '&'. +The first two mapdevice entries map player 1 and 2 lightguns to Gun 1 and Gun 2, respectively. We use a substring of the full raw device names to match each devices. Note that, since this is XML, we needed to escape the ``&`` using ``&``. The last two mapdevices entries map player 1 and player 2 gamepad controllers to Joy 1 and Joy 2, respectively. In this case, these are XInput devices. diff --git a/docs/source/advanced/glsl.rst b/docs/source/advanced/glsl.rst index 033403cb150..d2cec7052c7 100644 --- a/docs/source/advanced/glsl.rst +++ b/docs/source/advanced/glsl.rst @@ -25,16 +25,16 @@ Getting Started with GLSL You will need to have followed the initial MAME setup instructions elsewhere in this manual before beginning. Official MAME distributions include GLSL support by default, but do NOT include the GLSL shader files. You will need to obtain the shader files from third party online sources. -Open your MAME.INI in your text editor of choice (e.g. Notepad), and make sure the following options are set correctly: +Open your ``mame.ini`` in your text editor of choice (e.g. Notepad), and make sure the following options are set correctly: -* **video opengl** -* **filter 0** +* ``video opengl`` +* ``filter 0`` The former is required because GLSL requires OpenGL support. The latter turns off extra filtering that interferes with GLSL output. Lastly, one more edit will turn GLSL on: -* **gl_glsl 1** +* ``gl_glsl 1`` Save the .INI file and you're ready to begin. @@ -54,7 +54,7 @@ Once you've found settings you like, write the numbers down on a notepad and exi Configuration Editing --------------------- -As referenced in :ref:`advanced-multi-CFG`, MAME has a order in which it processes INI files. The GLSL settings can be edited in MAME.INI, but to take full advantage of the power of MAME's config files, you'll want to copy the GLSL settings from MAME.INI to one of the other config files and make changes there. +As referenced in :ref:`advanced-multi-CFG`, MAME has a order in which it processes INI files. The GLSL settings can be edited in ``mame.ini``, but to take full advantage of the power of MAME's config files, you'll want to copy the GLSL settings from mame.ini to one of the other config files and make changes there. For instance, once you've found GLSL settings you think are appropriate for Neo Geo games, you can put those settings into neogeo.ini so that all Neo-Geo games will be able to take advantage of those settings without needing to add it to every game INI manually. @@ -82,4 +82,3 @@ Configuration Settings | | Specifies screen to apply the shaders on. | - diff --git a/docs/source/advanced/hlsl.rst b/docs/source/advanced/hlsl.rst index 3fb25578e2e..3e22203df78 100644 --- a/docs/source/advanced/hlsl.rst +++ b/docs/source/advanced/hlsl.rst @@ -25,7 +25,7 @@ Getting Started with HLSL You will need to have followed the initial MAME setup instructions elsewhere in this manual before beginning. Official MAME distributions include HLSL by default, so you don't need to download any additional files. -Open your MAME.INI in your text editor of choice (e.g. Notepad), and make sure the following options are set correctly: +Open your ``mame.ini`` in your text editor of choice (e.g. Notepad), and make sure the following options are set correctly: * **video d3d** * **filter 0** @@ -56,9 +56,9 @@ Once you've found settings you like, write the numbers down on a notepad and exi Configuration Editing --------------------- -As referenced in :ref:`advanced-multi-CFG`, MAME has a order in which it processes INI files. The HLSL settings can be edited in MAME.INI, but to take full advantage of the power of MAME's config files, you'll want to copy the HLSL settings from MAME.INI to one of the other config files and make changes there. +As referenced in :ref:`advanced-multi-CFG`, MAME has a order in which it processes INI files. The HLSL settings can be edited in ``mame.ini``, but to take full advantage of the power of MAME's config files, you'll want to copy the HLSL settings from mame.ini to one of the other config files and make changes there. -For instance, once you've found HLSL settings you think are appropriate for Neo Geo games, you can put those settings into neogeo.ini so that all Neo-Geo games will be able to take advantage of those settings without needing to add it to every game INI manually. +For instance, once you've found HLSL settings you think are appropriate for Neo Geo games, you can put those settings into ``neogeo.ini`` so that all Neo-Geo games will be able to take advantage of those settings without needing to add it to every game INI manually. Configuration Settings diff --git a/docs/source/advanced/multiconfig.rst b/docs/source/advanced/multiconfig.rst index 3424f1fb4ee..48385781392 100644 --- a/docs/source/advanced/multiconfig.rst +++ b/docs/source/advanced/multiconfig.rst @@ -9,43 +9,43 @@ Order of Config Loading ----------------------- 1. The command line is parsed first, and any settings passed that way *will take priority over anything in an INI file*. -2. **MAME.INI** (or other platform INI; e.g. **MESS.INI**) is parsed twice. +2. ``mame.ini`` (or other platform INI; e.g. ``mess.ini``) is parsed twice. The first pass may change various path settings, so the second pass is done to see if there is a valid config file at that new location (and if so, change settings using that file) -3. **DEBUG.INI** if in debug mode. +3. ``debug.ini`` if in debug mode. This is an advanced config file, most people won't need to use it or be concerned by it. -4. System-specific INI files where appropriate (e.g. **NEOGEO_NOSLOT.INI** or **CPS2.INI**) - As an example, Street Fighter Alpha is a CPS2 game, and so **CPS2.INI** would be loaded here. -5. Monitor orientation INI file (either **HORIZONT.INI** or **VERTICAL.INI**) - Pac-Man, for one example, is a vertical monitor setup, so it would load **VERTICAL.INI**. Street Fighter Alpha is a horizontal game, so it loads **HORIZONT.INI**. -6. System-type INI files (**ARCADE.INI**, **CONSOLE.INI**, **COMPUTER.INI**, or **OTHERSYS.INI**) - Both Pac-Man and Street Fighter Alpha are arcade games, so **ARCADE.INI** would be loaded here. Atari 2600 would load **CONSOLE.INI**. -7. Screen-type INI file (**VECTOR.INI** for vector games, **RASTER.INI** for raster games, **LCD.INI** for LCD games) - Pac-Man and Street Fighter Alpha are raster, so **RASTER.INI** gets loaded here. Tempest is a vector monitor game, and **VECTOR.INI** would be loaded here. +4. System-specific INI files where appropriate (e.g. ``neogeo_noslot.ini`` or ``cps2.ini``) + As an example, Street Fighter Alpha is a CPS2 game, and so ``cps2.ini`` would be loaded here. +5. Monitor orientation INI file (either ``horizont.ini`` or ``vertical.ini``) + Pac-Man, for one example, is a vertical monitor setup, so it would load ``vertical.ini``. Street Fighter Alpha is a horizontal game, so it loads ``horizont.ini``. +6. System-type INI files (``arcade.ini``, ``console.ini``, ``computer.ini``, or ``othersys.ini``) + Both Pac-Man and Street Fighter Alpha are arcade games, so ``arcade.ini`` would be loaded here. Atari 2600 would load ``console.ini``. +7. Screen-type INI file (``vector.ini`` for vector games, ``raster.ini`` for raster games, ``lcd.ini`` for LCD games) + Pac-Man and Street Fighter Alpha are raster, so ``raster.ini`` gets loaded here. Tempest is a vector monitor game, and ``vector.ini`` would be loaded here. 8. Source INI files. This is an advanced config file, most people won't need to use it and it can be safely ignored. - MAME will attempt to load **SOURCE/SOURCEFILE.INI** and **SOURCEFILE.INI**, where sourcefile is the actual filename of the source code file. + MAME will attempt to load ``source/sourcefile.ini`` and ``sourcefile.ini``, where sourcefile is the actual filename of the source code file. *mame -listsource <game>* will show the source file for a given game. - For instance, Banpresto's Sailor Moon, Atlus's Dodonpachi, and Nihon System's Dangun Feveron all share a large amount of hardware and are grouped into the CAVE.C file, meaning they all parse **source/cave.ini** + For instance, Banpresto's Sailor Moon, Atlus's Dodonpachi, and Nihon System's Dangun Feveron all share a large amount of hardware and are grouped into the ``cave.c`` file, meaning they all parse ``source/cave.ini`` 9. Parent INI file. - For example, if running Pac-Man, which is a clone of Puck-Man, it'd be **PUCKMAN.INI** + For example, if running Pac-Man, which is a clone of Puck-Man, it'd be ``puckman.ini`` 10. Driver INI file. - Using our previous example of Pac-Man, this would be **PACMAN.INI**. + Using our previous example of Pac-Man, this would be ``pacman.ini``. Examples of Config Loading Order -------------------------------- -1. Alcon, which is the US clone of Slap Fight. (*mame alcon*) - Command line, MAME.INI, VERTICAL.INI, ARCADE.INI, RASTER.INI, SLAPFGHT.INI, and lastly ALCON.INI (*remember command line parameters take precedence over all else!*) +1. Alcon, which is the US clone of Slap Fight. (**mame alcon**) + Command line, mame.ini, vertical.ini, arcade.ini, raster.ini, slapfght.ini, and lastly alcon.ini (*remember command line parameters take precedence over all else!*) -2. Super Street Fighter 2 Turbo (*mame ssf2t*) - Command line, MAME.INI, HORIZONT.INI, ARCADE.INI, RASTER.INI, CPS2.INI, and lastly SSF2T.INI (*remember command line parameters take precedence over all else!*) +2. Super Street Fighter 2 Turbo (**mame ssf2t**) + Command line, mame.ini, horizont.ini, arcade.ini, raster.ini, cps2.ini, and lastly ssf2t.ini (*remember command line parameters take precedence over all else!*) Tricks to Make Life Easier -------------------------- -Some users may have a wall-mounted or otherwise rotatable monitor, and may wish to actually play vertical games with the rotated display. The easiest way to accomplish this is to put your rotation modifiers into **VERTICAL.INI**, where they will only affect vertical games. +Some users may have a wall-mounted or otherwise rotatable monitor, and may wish to actually play vertical games with the rotated display. The easiest way to accomplish this is to put your rotation modifiers into ``vertical.ini``, where they will only affect vertical games. [todo: more practical examples] diff --git a/docs/source/advanced/paths.rst b/docs/source/advanced/paths.rst index da92e1bbbe9..d16247a42cb 100644 --- a/docs/source/advanced/paths.rst +++ b/docs/source/advanced/paths.rst @@ -9,20 +9,20 @@ Order of Path Loading Let's use an example of the cheat file for AfterBurner 2 for Sega Genesis/MegaDrive (aburner2 in the megadrive softlist), and your cheatpath is set to "cheat" (as per the default) -- this is how MAME will search for that cheat file: -1. cheat/megadriv/aburner2.xml -2. cheat/megadriv.zip -> aburner2.xml +1. ``cheat/megadriv/aburner2.xml`` +2. ``cheat/megadriv.zip`` -> ``aburner2.xml`` Notice that it checks for a .ZIP file first before a .7Z file. -3. cheat/megadriv.zip -> <arbitrary path>/aburner2.xml - It will look for the first (if any) aburner2.xml file it can find inside that zip, no matter what the path is. -4. cheat.zip -> megadriv/aburner2.xml +3. ``cheat/megadriv.zip`` -> ``<arbitrary path>/aburner2.xml`` + It will look for the first (if any) ``aburner2.xml`` file it can find inside that zip, no matter what the path is. +4. ``cheat.zip`` -> ``megadriv/aburner2.xml`` Now it is specifically looking for the file and folder combination, but inside the cheat.zip file. -5. cheat.zip -> <arbitrary path>/megadriv/aburner2.xml - Like before, except looking for the first (if any) aburner2.xml inside a megadriv folder inside the zip. -6. cheat/megadriv.7z -> aburner2.xml +5. ``cheat.zip`` -> ``<arbitrary path>/megadriv/aburner2.xml`` + Like before, except looking for the first (if any) ``aburner2.xml`` inside a ``megadriv`` folder inside the zip. +6. ``cheat/megadriv.7z`` -> ``aburner2.xml`` Now we start checking 7ZIP files. -7. cheat/megadriv.7z -> <arbitrary path>/aburner2.xml -8. cheat.7z -> megadriv/aburner2.xml -9. cheat.7z -> <arbitrary path>/megadriv/aburner2.xml +7. ``cheat/megadriv.7z`` -> ``<arbitrary path>/aburner2.xml`` +8. ``cheat.7z`` -> ``megadriv/aburner2.xml`` +9. ``cheat.7z`` -> ``<arbitrary path>/megadriv/aburner2.xml`` Similar to zip, except now 7ZIP files. diff --git a/docs/source/advanced/shiftertoggle.rst b/docs/source/advanced/shiftertoggle.rst index 9ea5214b980..1fbc96ba7b5 100644 --- a/docs/source/advanced/shiftertoggle.rst +++ b/docs/source/advanced/shiftertoggle.rst @@ -14,13 +14,13 @@ Disabling and Enabling Shifter Toggle This example will use the game Spy Hunter (set *spyhunt*) to demonstrate the exact change needed: -You will need to manually edit the game .CFG file in the CFG folder (e.g. *spyhunt.cfg*) +You will need to manually edit the game .CFG file in the CFG folder (e.g. ``spyhunt.cfg``) -Start by loading MAME with the game in question. In our case, that will be **mame64 spyhunt**. +Start by loading MAME with the game in question. In our case, that will be **mame spyhunt**. Set up the controls as you would please, including mapping the shifter. Exit MAME, open the .cfg file in your text editor of choice. -Inside the *spyhunt.cfg* file, you will find the following for the input. The actual input code in the middle can and will vary depending on the controller number and what input you have mapped. +Inside the ``spyhunt.cfg`` file, you will find the following for the input. The actual input code in the middle can and will vary depending on the controller number and what input you have mapped. | **<port tag=":ssio:IP0" type="P1_BUTTON2" mask="16" defvalue="16">** | <newseq type="standard"> |