Difference between revisions of "MAME"

From Sinden Lightgun
Jump to navigation Jump to search
m (Minor edit for Lock 'n Loaded gun calibration access)
 
(9 intermediate revisions by 4 users not shown)
Line 49: Line 49:
 
* Unzip the file for your MAME version in the '''Artwork Folder.'''
 
* Unzip the file for your MAME version in the '''Artwork Folder.'''
 
* Recommend to start off with the darkest bezel level (70-80%) and wide border.
 
* Recommend to start off with the darkest bezel level (70-80%) and wide border.
 +
* Bezel pack includes an integrated 4:3 white border.
  
 
===INI Files===
 
===INI Files===
Line 62: Line 63:
 
Make sure that the ''Anti Jitter'' setting has been '''disabled''' in the Configuration tab. This setting will cause issues with your aim and trigger input.  
 
Make sure that the ''Anti Jitter'' setting has been '''disabled''' in the Configuration tab. This setting will cause issues with your aim and trigger input.  
  
* ''Anti Jitter'' option has been removed in the latest beta versions of the Sinden software.  
+
* '''<u>NOTE</u>:''' ''Anti Jitter'' setting has been removed from the latest versions of the Sinden Software (v2.05+)
  
 
===Installation===
 
===Installation===
Line 257: Line 258:
  
 
Now the game should load up, and if you press your coin button then start, you should be able to have a quick blast!
 
Now the game should load up, and if you press your coin button then start, you should be able to have a quick blast!
 +
 +
<u>NOTE</u>:  MAME requires a 4:3 Sinden border
 
<br>
 
<br>
  
Line 328: Line 331:
 
* To prevent your gun registering as a different Guncode after a reboot, take the "'''gunmouse.cfg'''" file from the ''SindenLightgunSoftwareReleaseV1.--\SindenLightgunWindowsSoftwareV1.--\MAMEConfig\ctrlr''  and move to your MAME emulator directory ''MAME/ctrlr'' folder
 
* To prevent your gun registering as a different Guncode after a reboot, take the "'''gunmouse.cfg'''" file from the ''SindenLightgunSoftwareReleaseV1.--\SindenLightgunWindowsSoftwareV1.--\MAMEConfig\ctrlr''  and move to your MAME emulator directory ''MAME/ctrlr'' folder
 
* Recent versions of MAME (~0.245) now set the on-screen trigger (left mouse click) as B1 and the off-screen trigger (right mouse click) as B2 instead of B0 and B1, respectively.
 
* Recent versions of MAME (~0.245) now set the on-screen trigger (left mouse click) as B1 and the off-screen trigger (right mouse click) as B2 instead of B0 and B1, respectively.
* '''<u>NOTE</u>:''' Make sure to disable ''Anti Jitter'' in the Sinden software (Configuration tab).  The ''Anti Jitter'' setting will cause issues with your aim.  ''Anti Jitter'' option has been removed in the latest beta versions of the Sinden software.
+
* '''<u>NOTE</u>:''' Make sure to disable ''Anti Jitter'' in the Sinden software (Configuration tab).  The ''Anti Jitter'' setting will cause issues with your aim.  ''Anti Jitter'' option has been removed in the versions of the Sinden software (v2.05+).
 
* Crosshairs can be off relative to your aim for some games. Recommend disabling crosshairs.<br>
 
* Crosshairs can be off relative to your aim for some games. Recommend disabling crosshairs.<br>
 
== MAME control settings ==
 
== MAME control settings ==
Line 386: Line 389:
  
 
== Disabling white flash ==
 
== Disabling white flash ==
As far as I know, the only way to disable the annoying "'''white flash'''" when you are pressing the '''shoot''' button on some games is by using '''cheats'''.
+
The only way to disable the annoying "'''white flash'''" when you are pressing the shoot button on some games is by using '''cheats'''.
  
For each game, you need to put a '''xml file''' in the '''cheat''' folder where MAME is installed. The '''xml file''' has the '''rom name''' of the game and the '''.xml extension'''.
+
For each game, you need to put a '''xml file''' in the '''cheat folder''' where MAME is installed. The '''xml file''' has the '''rom name''' of the game and the '''.xml extension'''.
  
Once the cheat file is created, you need to '''launch the game''', press the "'''tab'''" key, and '''enable the "No Flash" cheat... each time you load the game!'''
+
Once the cheat file is created, you need to '''launch the game''', press the "'''tab'''" key, and '''enable the "No Flash" cheat... EACH TIME YOU'RE LOADING THE GAME!'''
  
Here is the list of the cheats I know to disable the white flash:
+
Here is the list of the cheats currently known to disable the white flash - feel free to add more if you found them:
  
 +
'''Big Buck Hunter - Call of The Wild (bbhcotw.xml):'''<syntaxhighlight lang="xml">
 +
<mamecheat version="1">
 +
  <cheat desc="Remove white flash on shoot">
 +
    <script state="on">
 +
      <action>temp0 =maincpu.pb@8005550f</action>
 +
    </script>
 +
    <script state="run">
 +
      <action>maincpu.pb@8005550f=14</action>
 +
    </script>
 +
    <script state="off">
 +
      <action>maincpu.pb@8005550f=temp0</action>
 +
    </script>
 +
  </cheat>
 +
</mamecheat>
 +
</syntaxhighlight>
  
 
'''Crypt Killer (cryptklr.xml):'''<syntaxhighlight lang="xml">
 
'''Crypt Killer (cryptklr.xml):'''<syntaxhighlight lang="xml">
Line 405: Line 423:
 
</syntaxhighlight>
 
</syntaxhighlight>
  
 +
'''Lethal Enforcers II: Gun Fighters (le2.xml):'''<syntaxhighlight lang="xml">
 +
<mamecheat version="1">
 +
    <cheat desc="Remove white flash on shoot">
 +
    <script state="on">
 +
      <action>temp0 =maincpu.mq@2017A4</action>
 +
    </script>
 +
    <script state="run">
 +
      <action>
 +
        maincpu.mq@2017A4=4E714E714E716016
 +
      </action>
 +
    </script>
 +
    <script state="off">
 +
      <action>maincpu.mq@2017A4=temp0</action>
 +
    </script>
 +
  </cheat>
 +
</mamecheat>
 +
</syntaxhighlight>
 +
 +
'''Operation Wolf (opwolf.xml):'''<syntaxhighlight lang="xml">
 +
<mamecheat version="1">
 +
  <cheat desc="Remove white flash on shoot">
 +
    <script state="on">
 +
      <action>temp0 =maincpu.mb@001131</action>
 +
    </script>
 +
    <script state="run">
 +
      <action>maincpu.mb@001131=02</action>
 +
    </script>
 +
    <script state="off">
 +
      <action>maincpu.mb@001131=temp0 </action>
 +
    </script>
 +
  </cheat>
 +
</mamecheat>
 +
</syntaxhighlight>
  
 
'''Point Blank 1 (ptblank.xml):'''<syntaxhighlight lang="xml">
 
'''Point Blank 1 (ptblank.xml):'''<syntaxhighlight lang="xml">
Line 421: Line 472:
 
</mamecheat>
 
</mamecheat>
 
</syntaxhighlight>
 
</syntaxhighlight>
 
  
 
'''Time Crisis (timecris.xml):'''<syntaxhighlight lang="xml">
 
'''Time Crisis (timecris.xml):'''<syntaxhighlight lang="xml">
Line 438: Line 488:
 
</mamecheat>
 
</mamecheat>
 
</syntaxhighlight>
 
</syntaxhighlight>
 
  
 
'''Zero Point 2 (zeropnt2.xml):'''<syntaxhighlight lang="xml">
 
'''Zero Point 2 (zeropnt2.xml):'''<syntaxhighlight lang="xml">
Line 664: Line 713:
 
|
 
|
 
|
 
|
 +
|-
 +
|Evil Night
 +
|Konami
 +
|evilnght
 +
|*Yes
 +
|
 +
|MAME 0.255 or later
 +
Apply 'gunmouse' setting to evilnght.ini after first game load to control the game
 +
 +
Runs slow but very playable
 
|-
 
|-
 
|Freedom Force VS
 
|Freedom Force VS
Line 822: Line 881:
 
|*Playable but has some graphical issues
 
|*Playable but has some graphical issues
  
Requires service menu calibration - Turn the service dipswitch ON, then hold down the test button while resetting (F3).
+
Requires service menu calibration which is hidden by default: Turn the service dipswitch ON, then hold down the test button (key '9') while resetting (key 'F3').
  
 
During calibration, aim & shoot as far to the side of the screen as possible (not directly in the red targets).
 
During calibration, aim & shoot as far to the side of the screen as possible (not directly in the red targets).
Line 853: Line 912:
 
|
 
|
 
|Requires calibration via DIP switches, once completed turn off DIP switches
 
|Requires calibration via DIP switches, once completed turn off DIP switches
 +
|-
 +
|Must Shoot TV
 +
|Prototype
 +
|shoottv
 +
|Yes
 +
|
 +
|Requires MAME 0.226 or later
 +
Requires services menu calibration (F2)
 +
 +
1 Player Only
 
|-
 
|-
 
|NY Captor
 
|NY Captor
Line 952: Line 1,021:
 
|
 
|
 
|Requires bsmt2000.zip device file
 
|Requires bsmt2000.zip device file
 +
|-
 +
|Shooting Gallery
 +
|
 +
|shootgal
 +
|*Yes
 +
|
 +
|Playable, but aim drifts after the first 4 rounds of play, eventually becomes unplayable
 
|-
 
|-
 
|Shooting Master  
 
|Shooting Master  
Line 1,141: Line 1,217:
 
=== Non-playable games ===
 
=== Non-playable games ===
 
This is a list of games that do not work or require additional controls to play, like spinners etc., also duplicates, or bootlegs:
 
This is a list of games that do not work or require additional controls to play, like spinners etc., also duplicates, or bootlegs:
* Bronx
+
* Bronx - Works, but slow to respond making advancing in the game near impossible
* Evil Night
 
 
* Gun Bullet
 
* Gun Bullet
* Lucky & Wild - Works but requires a steering wheel also.
+
* Lucky & Wild - Works but requires a steering wheel also or map to d-pad or pedals
* Night Stocker
+
* Night Stocker - Works but need to map steering or can map to d-pad or pedals
 
* Road Runner
 
* Road Runner
 
* Triple Hunt
 
* Triple Hunt
 
* Wild Gunman
 
* Wild Gunman
 
* Shooting Gallery
 
* Shooting Gallery
* Wild Pilot
+
* Wild Pilot - Works but needs steering controls mapped
 +
 
 +
=== Time Crisis II - Compiling MAME for blue player route ===
 +
Time Crisis II is still in the early stages of emulation, has graphical glitches and link function doesn't work, but has recently been improved to work from beginning to end.
 +
 
 +
However, with regular Mame, you will only be able to play the red player side (Keith Martin). If you want to play the second route (blue player, Robert Baxter), you will need to [https://www.mamedev.org/tools/ compile Mame] after changing this line in namcos23.cpp:
 +
 
 +
 
 +
PORT_CONFNAME( 0x0004, 0x0004, "Link ID" )
 +
 
 +
needs to be modified to
 +
 
 +
PORT_CONFNAME( 0x0004, 0x0000, "Link ID" )
 +
 
 +
 
 +
Compiling Mame can take several hours. For a multicore CPU, you can use the command '''make -j #''' where # is the number of cores you want to use to compile. Remember not to dedicate all cores to compiling.
 +
 
 +
Please note that no support will be given for this in the Sinden Discord.
  
 
== Pedals ==
 
== Pedals ==

Latest revision as of 20:50, 14 September 2024




Emulator
Emulates: Arcade
Download: official MAME website
License: Free (GNU v2)
Mame gameplay.png

MAME stands for Multiple Arcade Machine Emulator. It is probably the easiest emulator to get up and running with 2 players and has a VAST amount of games you can play.

It covers nearly every arcade game from yesteryear that you can imagine (literally thousands!) but not all work 100%.

Download

First you need to Download the latest version of MAME from the official MAME website

ROMSet Version Info

MAME is updated monthly, and with each update comes a new romset to work with it.

People get confused by this but it's actually very simple.

MAME emulator and ROM versions have a number by the side for instance 0.202 this number increases by one every month with the new release so obviously the higher the number the newer it is.

You can check the latest version number and download it (or any of the older ones) directly from the MAME site.

The emulator and ROM versions MUST match for everything to work correctly.

With this in mind, it is usually best to acquire a rom set and then choose the corresponding version of MAME to run it. You can download individual ROM files but this will cause you headaches when things don't work so it is not recommended.

Place your roms inside of MAME's roms folder. Otherwise you need to edit the mame.ini file and set the rom path.

Additional Downloads

Crosshair Pack

You can disable the default MAME crosshair by downloading the crosshair pack and extracting it to MAME's root path. The crosshair pack can be downloaded from Google Drive

If you want to enable the crosshair, just access the crosshair submenu in-game and change the crosshair from default to a different one; cross1 and cross2 are invisible.

Note: Some games have glitched crosshairs in MAME. Several of the hunting games and others have this issue. Turn them off for best results, as they will show your aim several inches off-center.

  • Crosshairs will always trail behind your aim as you quickly move around your screen.

Bezel Packs

MAME can use Bezel files from the MAME\Artwork folder, specific for each game:

  • Unzip the file for your MAME version in the Artwork Folder.
  • Recommend to start off with the darkest bezel level (70-80%) and wide border.
  • Bezel pack includes an integrated 4:3 white border.

INI Files

Download ini files from Google Drive

Category Filter File

Download MAME Light gun category file here from Mediafire

  • To use a category file to filter the game list, make a folder (if one does not exist) called "folders" in the root of your MAME directory and copy the lightgun.ini file into it. Then when in MAME, click categories on the left and select the file.

Detailed Setup Guide

Sinden Software

Make sure that the Anti Jitter setting has been disabled in the Configuration tab. This setting will cause issues with your aim and trigger input.

  • NOTE: Anti Jitter setting has been removed from the latest versions of the Sinden Software (v2.05+)

Installation

Once you have downloaded MAME you will get a self-extracting file. Put this in a folder of your choice where you would like it installed and run it. This will extract all of the files you need.

Configuration

ROM Files

  • Move the ROM files you have and put them inside of the roms folder that has just been created by MAME. (ex D:\MAME\roms)
  • They should be individual zipped files DO NOT extract them or rename them.
  • Some games also require CHDs (listed below). CHDs should be placed inside a new folder within the roms folder with the same name as the rom.

For example, the CHD for Area 51 should be inside of a folder named "area51" within the roms folder.

MAME roms folder.jpg

Configure Additional Files

Bezels

If you wish to use bezel packs, you can extract those files to the "artwork" folder and follow the instructions that come with them.

Stable Controller IDs

Next, you need to put a copy of the gunmouse.cfg file into MAME's "ctrlr" folder that was created in your main MAME directory. (ex D:\MAME\crtlr\gunmouse.cfg)

  • The gunmouse.cfg file can be found inside the Sinden Software package that you downloaded when you setup your gun.
  • Note: MAME versions previous to 0.178 could not fix the controller IDs.

This file stops MAME from resetting your gun controller ID every time you restart.

Create mame.ini

The next thing you need to do is create an ini file for MAME.

Launch the MAME executable and then select "General Settings" from the menu at the bottom.

Then press "Save Settings" on the menu that pops up.

This will now create a new ini file in the main MAME directory called mame.ini .

Create an mame.ini file

Edit mame.ini

Shut down MAME and open up the mame.ini file in a text editor. Find and adjust the following lines, so they are as below:

#

# CORE INPUT OPTIONS

#

ctrlr               gunmouse

mouse               1

lightgun            1

multimouse          1

offscreen_reload    0

#

# CORE INPUT AUTOMATIC ENABLE OPTIONS

#

adstick_device        mouse

lightgun_device       mouse

positional_device     mouse

mouse_device          mouse

So it should look like this:

Offscreen Reload

  • You will note that offscreen reload has been disabled in this ini file. this is because most games will not play properly if you try to use offscreen reload (OSR) with this option enabled.
  • However some games do need this option enabled so require an ini file to re-enable it just for that one game.


You can download a pack of ini files for all games that require them above, or you can create your own if you wish by doing the following:

  • Create a copy of your mame.ini file.
  • Rename the file by right-clicking it and pressing "rename". You need to name it the same as the ROM name for the game you are playing.
    • e.g. if you are making it for the Maximum Force ROM you will name it "maxforce".
  • Next, you need to open this file in the text editor and change the line for offscreen reload from 0 to 1 e.g. offscreen_reload 1

MAME GUI Settings

  • Now you can start making changes inside MAME, so load up the MAME.exe again.

Category File Setup

You may wish to use a category file to slim down the ROM list. on the main MAME menu.

You can download the category file you need below called Lightgun.ini .

Then to use a category file to filter the game list, make a folder (if one does not exist) called "folders" in the root of your MAME directory and copy the lightgun.ini file into it.

Then when in MAME, click categories on the left and select the file. Now we have filtered the game list, we will start to configure controls for the games.

Controls

  • There are 2 ways to configure MAME
    • Global configuration
    • Machine configuration.
  • The global config applies to ALL games that MAME can play.
  • The Machine Configuration applies only to that individual game but will override the global configuration.

This is obviously very useful as we can set up most games with the global but for ones that need tweaking we can adjust it per game using the machine configuration.

  • Ensure that the Sinden border is enabled and you are pointing at the screen when mapping the inputs.
Global Controls

So let's start with a global configuration.

  • To set these button adjustments first select "Configure Options" from the main MAME window.
  • Next select "General Inputs" this will bring up a menu that allows us to choose the player controls we want to change so we will start with "Player 1"  This will then bring up a huge list of controller inputs that we can bind to our controllers.
  • Now these can be bound easily by selecting which input you want to map then pressing the enter key on your keyboard, then pressing the button you wish to assign to it.
  • NOTE: Make sure the Sinden border is up and you are pointing your lightgun at the screen when mapping the inputs.

If you make a mistake binding the keys, you can clear it by pressing the DEL key on your keyboard. Press DEL again to reset the input to the default value.

Lightgun Inputs

Now there are a few things we need to set in here to allow us to play the great arcade games in MAME.

These are:

  • Lightgun X Analog (For our lightgun to be able to position correctly)
  • Lightgun Y Analog (For our lightgun to be able to position correctly)
  • AD Stick X analog (For our lightgun to be able to position correctly in positional games like Terminator 2)
  • AD Stick Y analog (For our lightgun to be able to position correctly in positional games like Terminator 2)
  • P1 Button 1 (This is always the Trigger)
  • P1 Button 2 (Varies by game but is usually the Pump Handle)
  • P1 Button 3 (Varies by game)
MAME v0.255 General Inputs
Gun X/Y Axis
  • First, find "Lightgun X Analog" in the list, it will be near the bottom.
  • Now make sure your gun is plugged in and the Sinden software has been started.
  • Bring up the border using "Alt+b" or use the back right button on the gun (if you are using the bindings).
  • Now the next part can be tricky as you have to press "Enter" to bind the input to the movements of the gun, But you ideally want to be 2x the screen size away from the screen with the gun pointing at the screen before you do so it may be worth getting someone to hit the Enter key for you if you don't have steady hands or a wireless keyboard!
  • So with Lightgun X Analog highlighted and the Gun pointed at the screen, press "Enter" on the keyboard and SLOWLY move the gun Left to right, keeping your aim inside the border.
    • If you run out of space, swing it back to the left.
  • This should then show a binding of Gun followed by a number and an X., for example Gun 5 X.

It's important to note the Number is set by the gunmouse.cfg file we copied earlier, so it does not matter what number it shows as; the important part is it shows the X at the end and nothing else!

  • Now we will bind Lightgun Y Analog. The process is exactly the same as binding the X analog but instead of slowly moving left to right we move from top to bottom.
  • To bind the AD Stick X&Y, you do the exact same process again.
Trigger Buttons

Now we will bind the Start button, You can bind this to any key you like but the default standard is to bind it to "1", Then for Player 2 you would have "2" etc.

So highlight P1 Start, Press "Enter" on the keyboard and then press the "1" key or whatever you are binding to it will then show the bound key next to it.

Next we will bind the trigger. Press "Enter" on P1 Button 1 and, while you are aiming at the screen and the border is up, pull the trigger of the gun.

Now it will display either "Gun7 B0" OR "Gun7 B1" OR "Gun7 B2".

(Again the number next to gun may be different).


If you are using a MAME version previous to 0.245 It should show up and B0 (Left Click) for the trigger if it shows as B1 (right click) it means the gun sent an offscreen command, so it detected it was not pointing inside the border.

If you are using a version of MAME 0245 or later you should expect a B1 command for the left click but a right click will show as B2.

You can also bind P1 buttons 3,4,5 etc, if you wish; not all games will use them, though.

Machine Buttons

Now we just need to set a coin button to "coin up" in game.

To do so, press "Escape" on the Keyboard and then navigate to "Other Controls".

Inside, you will find Coin 1, Coin 2, etc.

You need to bind these the same way as before, but the standard ones are "5" for P1 and "6" for P2.

Once this is done, you can press "escape" to exit back to the Main home screen.

We are now ready to play some games!

Test Your Setup

Just to test, I would suggest something simple like Point Blank.

So to load a game just select it in the list and hit "Enter".

Now the game should load up, and if you press your coin button then start, you should be able to have a quick blast!

NOTE: MAME requires a 4:3 Sinden border

In-Game Configuration

Next, let's look at the in-game menu. You can press the "Tab" key on the keyboard to bring up the in-game menu.

In this menu, you can do multiple things If you select "Input (General)", you can adjust the global config we have just set.

If you select "Input (This Machine)", you can adjust the key bindings for the currently playing game only.

If you select "Analog Controls", you can adjust sensitivity and other settings for positional gun games like Terminator 2.

If you select "Dip Switches", you can sometimes adjust settings depending on the game, such as difficulty, attract modes, etc.

If you select "Crosshair Options", you can turn the crosshairs on or off.

  • Please note some games require individual setup changes, such as Carnevil.

The changes required can be found [in the game list].

Quick Setup Guide

ROMSet Basics

You can download individual ROMs or entire ROM packs. Whichever you choose, make sure you download the correct ROMs for your version of MAME (It is updated monthly).

Every MAME release has a number, for instance 0.226, so you require 0.226 ROMs. This is VERY important!

Trying to run a different version of romset will cause issues!

Standard settings

  1. Launch a game in MAME
  2. Press the TAB key
  3. Enter the "Input (general)" option
  4. Scroll to and assign Lightgun analog X (Left to right) & Y (Up to down) Buttons 1 (Trigger) Button 2 (Reload)
  5. Also map start and coin buttons to save getting up
  6. In Sinden App - Enable Off screen reload under the configuration tab
  7. Under button assignment, Trigger onscreen set to Mouse left, Trigger offscreen set to Mouse Right & Gun correctly calibrated via the alignment tab
  8. In MAME.ini (in the root of your MAME directory) - Check the following are set correctly...
  9. Optional:- move the gunmouse.cfg from the Sinden Software MAME/ctrlr folder to your MAME/ctrlr folder to fix the Gun ID's in MAME
# CORE INPUT AUTOMATIC ENABLE OPTIONS
#

lightgun_device           mouse
positional_device         mouse
mouse_device              mouse

# CORE INPUT OPTIONS
#

ctrlr                     gunmouse (THIS IS OBTAINED FROM THE SINDEN SOFTWARE ARCHIVE AND NEEDS TO BE PUT IN THE CTRLR FOLDER IN MAME DIR)
mouse                     1
lightgun                  1
multimouse                1
offscreen_reload          0 (I found this interferes with the Sinden off-screen reload option; more on this later....)

Important Notes

  • 4:3 Sinden border is required.
  • Versions previous to 0.178 could not fix the controller IDs
  • Version 0.194 cause lightgun improper working...
  • Time Crisis is broken in 0.202 and prior. Use a newer version.
  • MAMEUI, MAME64, Arcade64, etc. have been known to cause issues. Use regular MAME.
  • Some games have glitched crosshairs in MAME. Several of the hunting games and others have this issue. Turn them off for best results, as they will show your aim several inches off-center.
  • To prevent your gun registering as a different Guncode after a reboot, take the "gunmouse.cfg" file from the SindenLightgunSoftwareReleaseV1.--\SindenLightgunWindowsSoftwareV1.--\MAMEConfig\ctrlr and move to your MAME emulator directory MAME/ctrlr folder
  • Recent versions of MAME (~0.245) now set the on-screen trigger (left mouse click) as B1 and the off-screen trigger (right mouse click) as B2 instead of B0 and B1, respectively.
  • NOTE: Make sure to disable Anti Jitter in the Sinden software (Configuration tab). The Anti Jitter setting will cause issues with your aim. Anti Jitter option has been removed in the versions of the Sinden software (v2.05+).
  • Crosshairs can be off relative to your aim for some games. Recommend disabling crosshairs.

MAME control settings

Device IDs and the ctrlr file

It is best practice to assign your Sinden guns in a ctrlr file so that player 1 and player 2 don't get reassigned when you reboot your computer. The Sinden Lightgun software comes with a gunmouse.cfg file already that can be used for reference. To get your personal gun IDs you can do the following:

  • Open a command prompt and run a game w/ MAME using verbose mode only to quit the game, and read the output to get your personal IDs, ex: "MAME.exe -v term2" runs MAME in verbose mode with Terminator 2, but any game would work as we just need the device IDs.
  • The IDs will look something similar to what's shown below. You may have to unplug your guns (take a screenshot) and plug them in again to make sure you see what ID is which Lightgun.
Input: Adding mouse #0: HID-compliant mouse (device id: \?\HID#VID_16C0&PID_0F39&MI_02&Col02#a&1e8491ce&0&0001#{378de44c-56ef-11d1-bc8c-00a0c91405dd})
Input: Adding mouse #1: HID-compliant mouse (device id: \?\HID#VID_16C0&PID_0F01&MI_02&Col02#9&c31b5c8&0&0001#{378de44c-56ef-11d1-bc8c-00a0c91405dd})
  • You can convert this long string into a shortened version. In my example my gun's personal ID can be shortened to "VID_16C0&amp;PID_0F39". Notice the "amp;" this is required to escape the "&" in the ID.
  • You can then edit the gunmouse.cfg file to look something like this (with your own IDs of course)
<?xml version="1.0"?>
<mameconfig version="10">
    <system name="default">
        <input>
			<mapdevice device="VID_16C0&amp;PID_0F39" controller="GUNCODE_1" />
			<mapdevice device="VID_16C0&amp;PID_0F01" controller="GUNCODE_2" />
        </input>
    </system>
</mameconfig>
  • Don't forgot to put the gunmouse.cfg file in your MAME's ctrlr directory and point your MAME.ini file to the gunmouse file in the "CORE INPUT OPTIONS" section.
  • If you're MAME.ini is already using a custom ctrlr file, you can add still add your Sinden device ID's to your custom ctrlr file; below is just an example for reference (ignore the IPAC Utlimate IDs, those are my joystick controls for players 1-4). My 2 Sinden Lightguns are assigned below. This way, I can continue to use my existing ctrlr file.
 1<?xml version="1.0"?>
 2<mameconfig version="10">
 3    <system name="default">
 4        <input>
 5			<mapdevice device="I-PAC Ultimate product_0410d209-0000-0000-0000-504944564944 instance_5c285a80-8f56-11eb-8009-444553540000" controller="JOYCODE_1" />
 6			<mapdevice device="I-PAC Ultimate product_0411d209-0000-0000-0000-504944564944 instance_5c2aa470-8f56-11eb-8013-444553540000" controller="JOYCODE_2" />
 7			<mapdevice device="I-PAC Ultimate product_0410d209-0000-0000-0000-504944564944 instance_5c285a80-8f56-11eb-800c-444553540000" controller="JOYCODE_3" />
 8			<mapdevice device="I-PAC Ultimate product_0411d209-0000-0000-0000-504944564944 instance_5c285a80-8f56-11eb-800f-444553540000" controller="JOYCODE_4" />
 9			<mapdevice device="VID_16C0&amp;PID_0F39" controller="GUNCODE_1" />
10			<mapdevice device="VID_16C0&amp;PID_0F01" controller="GUNCODE_2" />
11        </input>
12    </system>
13</mameconfig>

In Game Controls

In MAME, load a game, press TAB to open the settings, and go to the Input (general) section.

Configure the input for P1 Button 1, P1 Button 2, Lightgun X Analog, Lightgun Y Analog for Player 1

Configure the input for P2 Button 1, P2 Button 2, Lightgun X 2 Analog, Lightgun Y 2 Analog for Player 2

The setting for the Sinden Lightguns will say something like "Gun 6 B0", "Gun 6 X" with a different number depending on the GUN ID.

Disabling white flash

The only way to disable the annoying "white flash" when you are pressing the shoot button on some games is by using cheats.

For each game, you need to put a xml file in the cheat folder where MAME is installed. The xml file has the rom name of the game and the .xml extension.

Once the cheat file is created, you need to launch the game, press the "tab" key, and enable the "No Flash" cheat... EACH TIME YOU'RE LOADING THE GAME!

Here is the list of the cheats currently known to disable the white flash - feel free to add more if you found them:

Big Buck Hunter - Call of The Wild (bbhcotw.xml):

<mamecheat version="1">
  <cheat desc="Remove white flash on shoot">
    <script state="on">
      <action>temp0 =maincpu.pb@8005550f</action>
    </script>
    <script state="run">
      <action>maincpu.pb@8005550f=14</action>
    </script>
    <script state="off">
      <action>maincpu.pb@8005550f=temp0</action>
    </script>
  </cheat>
</mamecheat>

Crypt Killer (cryptklr.xml):

<mamecheat version="1">
  <cheat desc="Remove white flash on shoot">
    <script state="run">
      <action>maincpu.pd@15128=00000000</action>
    </script>
  </cheat>
</mamecheat>

Lethal Enforcers II: Gun Fighters (le2.xml):

<mamecheat version="1">
    <cheat desc="Remove white flash on shoot">
    <script state="on">
      <action>temp0 =maincpu.mq@2017A4</action>
    </script>
    <script state="run">
      <action>
        maincpu.mq@2017A4=4E714E714E716016
      </action>
    </script>
    <script state="off">
      <action>maincpu.mq@2017A4=temp0</action>
    </script>
  </cheat>
</mamecheat>

Operation Wolf (opwolf.xml):

<mamecheat version="1">
  <cheat desc="Remove white flash on shoot">
    <script state="on">
      <action>temp0 =maincpu.mb@001131</action>
    </script>
    <script state="run">
      <action>maincpu.mb@001131=02</action>
    </script>
    <script state="off">
      <action>maincpu.mb@001131=temp0 </action>
    </script>
  </cheat>
</mamecheat>

Point Blank 1 (ptblank.xml):

<mamecheat version="1">
  <cheat desc="Remove white flash on shoot"> 	
    <script state="on"> 
      <action>temp0 =maincpu.mq@00987C</action> 
    </script> 
    <script state="run"> 
      <action>maincpu.mq@00987C=4E714E714E7148E7</action> 
    </script> 
    <script state="off"> 
      <action>maincpu.mq@00987C=temp0</action> 
    </script> 
  </cheat>
</mamecheat>

Time Crisis (timecris.xml):

<mamecheat version="1">
  <cheat desc="Remove white flash on shoot">
    <script state="on">
      <action>temp0 =maincpu.mq@00923C</action>
    </script>
    <script state="run">
      <action>maincpu.mq@00923C=4E714E714E714E71</action>
    </script>
    <script state="off">
      <action>maincpu.mq@00923C=temp0</action>
    </script>
  </cheat>
</mamecheat>

Zero Point 2 (zeropnt2.xml):

<mamecheat version="1">
  <cheat desc="Remove white flash on shoot">
    <script state="run">
      <action>maincpu.mb@000326=0000</action>
    </script>
  </cheat>
</mamecheat>

Per Game Details

Standard Games

Game Developer ROM Name OK CHD Notes
Area 51 Midway area51 Yes Yes Requires copy of MAME.ini file, rename to area51.ini, then change offscreen_reload from 0 to 1. Save file in the main MAME directory
Area 51 & Maximum Force Midway area51mx Yes Yes Requires copy of MAME.ini file, rename to area51mx.ini, then change offscreen_reload from 0 to 1. Save file in the main MAME directory
Bang Gaelco bang Yes
Beast Busters SNK bbusters Yes
Beast Busters: Second Nightmare SNK bbust2 *Yes *Playable but has some graphical issues

Requires hng64.zip bios file

Recommend using MAME v0.251

Big Buck Hunter Play Mechanix, Inc. bbh Yes Yes Requires service menu calibration (F2)

Requires iteagle.zip bios file

Big Buck Hunter Call Of The Wild Play Mechanix, Inc. bbhcotw Yes Yes Requires service menu calibration (F2)

Requires iteagle.zip bios file

Big Buck Hunter - Shooter's Challenge Play Mechanix, Inc. bbhsc Yes Yes Requires service menu calibration (F2)

Requires iteagle.zip bios file

Big Buck Hunter II - Sportsman's Paradise Play Mechanix, Inc. bbhscbbh2sp Yes Yes Requires service menu calibration (F2)

Requires iteagle.zip bios file

Born to Fight International Games borntofi Yes
Bubble Trouble Golly Ghosts 2 Namco bubbletr Yes
Carnevil Midway Games carnevil Yes Yes Requires service menu (F2) calibration for P1 & P2 (even if just one gun)

Enable "on-screen pump" adjustments

Carnival King Incredible Technologies carnking Yes Yes MAME 0.234 and up.

Good spec machine required.

Requires service menu calibration (F2)

Catch-22 Exidy catch22 Yes
Cheyenne Exidy cheyenne Yes
Chiller Exidy chiller Yes
Clay Pigeon Exidy claypign Yes
Combat Exidy combat Yes
Critter Crusher Sega critcrsh Yes Constant error message on the screen
Crossbow Exidy crossbow Yes
Crypt Killer Konami cryptklr Yes Yes
Deer Hunting USA Sammy USA Corporation deerhunt Yes Requires service menu calibration

Ignore the MAME crosshairs; they seem to be glitched

Aim is improved using RetroArch with Arcade FinalBurn Neo Core

Desert Gun Midway Games desertgu Yes
Dragon Gun Data East dragngun Yes
Duck Hunt VS Nintendo duckhunt Yes Zapper improved in MAME 0.241
Egg Venture The Game Room eggventr Yes
Evil Night Konami evilnght *Yes MAME 0.255 or later

Apply 'gunmouse' setting to evilnght.ini after first game load to control the game

Runs slow but very playable

Freedom Force VS Nintendo vsfdf Yes Zapper improved in MAME 0.241
Ghost Hunter Bromley ghoshunt Yes
Ghoul Panic Eighting/Raizing ghlpanic Yes
Golgo 13 Namco golgo13 Yes Requires service menu calibration (F2)

Slow to load

B2 to zoom in aim

Golgo 13: Kiseki no Dandou Namco g13knd Yes Requires service menu calibration (F2)

Slow to load

B2 to zoom in aim

Golgo 13: Juusei no Requiem Namco g13jnr Yes Requires MAME 0.255 & above

Good spec machine required.

Golly! Ghost! Namco gollygho Yes
Gumshoe VS Nintendo vsgshoe Yes Zapper improved in MAME 0.241
Gun Buster Taito gunbustr Yes Requires the use of the D-pad; hard to control
Hammer Andamiro hammer Yes Not actually a gun game, but it plays well as one
Hit n Miss Exidy hitnmiss Yes
Hogan's Alley VS Nintendo hogalley Yes Zapper improved in MAME 0.241
Invasion Midway Games invasnab Yes Requires copy of MAME.ini file, rename to invasnab.ini, then change offscreen_reload from 0 to 1. Save file in the main MAME directory

Off-screen reload ONLY works if you shoot the right-hand border

Requires tms32032.zip devices file

Judge Dredd Gremlin Interactive jdredd Yes Requires copy of MAME.ini file, rename to jdredd.ini, then change offscreen_reload from 0 to 1. Save file in the main MAME directory

Disable off-screen reload in the Sinden software

Laser Ghost Sega lghost Yes Requires service menu (F2) calibration for all three players (just use P2 and P3 Start)
Lethal Enforcers Konami lethalen Yes Requires copy of MAME.ini file, rename to lethalen.ini, then change offscreen_reload from 0 to 1. Save file in the main MAME directory
Lethal Enforcers II Konami le2 Yes Requires copy of MAME.ini file, rename to le2.ini, then change offscreen_reload from 0 to 1. Save file in the main MAME directory

Requires konamigx.zip bios file

Lethal Justice The Game Room lethalj Yes Requires copy of MAME.ini file, rename to lethalj.ini, then change offscreen_reload from 0 to 1. Save file in the main MAME directory
Line of Fire Sega loffire Yes Requires service menu (F2) calibration for all three players (just use P2 and P3 Start)
Lock 'n Loaded Data East Corporation lockload *Yes *Playable but has some graphical issues

Requires service menu calibration which is hidden by default: Turn the service dipswitch ON, then hold down the test button (key '9') while resetting (key 'F3').

During calibration, aim & shoot as far to the side of the screen as possible (not directly in the red targets).

Lord of Gun International Games System lordgun Yes Requires copy of MAME.ini file, rename to lordgun.ini, then change offscreen_reload from 0 to 1. Save file in the main MAME directory
Maximum Force Midway maxforce Yes Yes Requires copy of MAME.ini file, rename to maxforce.ini, then change offscreen_reload from 0 to 1. Save file in the main MAME directory
Mechanized Attack SNK mechatt Yes Requires ym2608.zip device file
Mobile Suit Gundam Final Shooting Bandai gdfs Yes Requires calibration via DIP switches, once completed turn off DIP switches
Must Shoot TV Prototype shoottv Yes Requires MAME 0.226 or later

Requires services menu calibration (F2)

1 Player Only

NY Captor Taito nycaptor Yes
One Shot One Kill Promat oneshot Yes
Operation Wolf Taito opwolf Yes Requires cchip.zip device file
Operation Wolf 3 East Technology opwolf3 Yes Aim is improved using RetroArch with Arcade FinalBurn Neo Core

Requires both guns to be calibrated

May need to rotate the screen via Video Options in Tab Menu

Point Blank Namco ptblank Yes NOTE: Do not calibrate the aim in the service menu.

Requires namcoc75.zip device file

Point Blank 2 Namco ptblank2 Yes NOTE: Do not calibrate the aim in the service menu.
Point Blank 3 Namco ptblank3 Yes Requires MAME 0.255 & above
Police Trainer P&P Marketing policetr Yes Calibrate in the service menu (9 key) if your aim is off

Requires bsmt2000.zip device file

Rail Chase Sega rchase Yes
Rapid Fire Allied Leisure Industries rapidfir Yes
Steel Gunner Namco sgunner Yes Requires namcoc65.zip device file
Steel Gunner 2 Namco sgunner2 Yes Requires namcoc68.zip device file
Sharpshooter P&P Marketing sshooter Yes Requires bsmt2000.zip device file
Shooting Gallery shootgal *Yes Playable, but aim drifts after the first 4 rounds of play, eventually becomes unplayable
Shooting Master Sega shtngmste Yes
Target Hits Gaelco targeth Yes On-screen issues

Requires service menu calibration

Teraburst Konami terabrst Yes Minor graphical & sound issues

Requires MAME v0.251 & above

Tickee Tickats LAI tickee Yes
Time Crisis Namco timecris Yes Good spec machine required

Bug prior to versions 0.202 makes game impossible to beat

Time Crisis 2 Namco timecrs2 Yes Requires MAME 0.254 & above

Some minor graphical & sound issues

Good spec machine required

Trophy Hunting USA Sammy USA Corporation trophyh Yes Requires service menu calibration

Ignore the MAME crosshairs; they seem to be glitched

Aim is improved using RetroArch with Arcade FinalBurn Neo Core

Turkey Hunting USA Sammy USA Corporation turkhunt Yes Requires service menu calibration

Ignore the MAME crosshairs; they seem to be glitched

Aim is improved using RetroArch with Arcade FinalBurn Neo Core

Tuts Tomb Island Design tutstomb Yes
Under Fire Taito undrfire Yes
Who Dunit Exidy whodunit Yes
Wing Shooting Championship Sammy USA Corporation wschamp Yes Requires service menu calibration

Ignore the MAME crosshairs; they seem to be glitched

Aim is improved using RetroArch with Arcade FinalBurn Neo Core

Zero Point Unico zeropnt Yes
Zero Point 2 Unico zeropnt2 Yes Requires copy of MAME.ini file, rename to zeropnt2.ini, then change offscreen_reload from 0 to 1. Save file in the main MAME directory
Zombie Raid American Sammy zombraid Yes

Positional Gun Games

All of these are positional gun games but can be played with a lightgun.

All games have to have ADSTICK X&Y set in MAME "Machine settings".

Game Developer ROM Name OK CHD Notes
Alien 3: The Gun Sega alien3 Yes Calibrate in the service menu if required.
Jurassic Park Sega jpark *Yes *Game runs but the aim is broken

Aim is improved using RetroArch with Arcade FinalBurn Neo Core

Operation Thunderbolt Taito othunder Yes
Revolution X Midway Games revx Yes Requires service menu (F2) calibration for all three players (just use P2 and P3 Start)
Space Gun Taito spacegun Yes
Terminator 2: Judgment Day Midway Games term2 Yes Requires service menu calibration (F2)

Non-playable games

This is a list of games that do not work or require additional controls to play, like spinners etc., also duplicates, or bootlegs:

  • Bronx - Works, but slow to respond making advancing in the game near impossible
  • Gun Bullet
  • Lucky & Wild - Works but requires a steering wheel also or map to d-pad or pedals
  • Night Stocker - Works but need to map steering or can map to d-pad or pedals
  • Road Runner
  • Triple Hunt
  • Wild Gunman
  • Shooting Gallery
  • Wild Pilot - Works but needs steering controls mapped

Time Crisis II - Compiling MAME for blue player route

Time Crisis II is still in the early stages of emulation, has graphical glitches and link function doesn't work, but has recently been improved to work from beginning to end.

However, with regular Mame, you will only be able to play the red player side (Keith Martin). If you want to play the second route (blue player, Robert Baxter), you will need to compile Mame after changing this line in namcos23.cpp:


PORT_CONFNAME( 0x0004, 0x0004, "Link ID" )

needs to be modified to

PORT_CONFNAME( 0x0004, 0x0000, "Link ID" )


Compiling Mame can take several hours. For a multicore CPU, you can use the command make -j # where # is the number of cores you want to use to compile. Remember not to dedicate all cores to compiling.

Please note that no support will be given for this in the Sinden Discord.

Pedals

If you are having issues mapping your pedal in MAME, try editing the mame.ini file and setting keyboardprovider = dinput