Light Gun API Core Findings



  • Could not get it to use a mouse or a lightgun


  • guncon works fine
  • justifier works fine


  • SMS MS Lightphaser shoots but movement is no longer hooked up.
  • Genesis/Megadrive - Doesnt work either 1.69 works fine so some change to 1.70 broke the lightgun hookup here I am guessing

bsnes Accuracy:

  • Snes superscope works fine need to adjust sensitivity
  • Snes justifiers dont work like they lost connectivity

Mednafen/beetle Saturn:

  • Stunner works fine

That is what I have found on my setup. I have 3 mice; 0 - Aimtrak 1 - Aimtrak 2 - Trackball

Would be cool to get multi-mouse support for more cores. Would be cool to have SMS Lightphaser fixed. If someone needs me to test more stuff let me know. I generally use regular mame so I do not have that setup in RA to test arcade games however based on other threads that has had ample testing. NES i use nestopia for gun games and do not have that setup in RA, and that one as well seems to have had ample testing by the community. I haven’t seen much about the other cores so here is what I found. Let me know if you need more help/logs/test to help fix any issues that may need to be fixed.



Thanks for the info. And welcome everyone to the Dougan gun show! :slight_smile:


Hello. Thanks for taking the time to test some of this.

Let’s make a super detailed list to see what works and what doesn’t for each core.

I made a list of cores that I know can emulate lightguns. (Excluding any MAME cores since I’ve never used them in RetroArch before)

Format your findings to this list and then we’ll test the rest.

Beetle PSX

  • Multi-Mouse:

  • Guncon / G-Con 45:

  • Justifier:

Beetle PSX HW

  • Multi-Mouse:

  • Guncon / G-Con 45:

  • Justifier:

Beetle Saturn

  • Multi-Mouse:

  • Stunner:

  • Virtua Gun:

bsnes-mercury (Accuracy/Balanced/Performance)

  • Multi-Mouse:

  • SuperScope:

  • Justifier:

  • Justifiers:

bsnes (Accuracy/Balanced/Performance)

  • Multi-Mouse:

  • SuperScope:

  • Justifier:

  • Justifiers:

bsnes C++98 (v085)

  • Multi-Mouse:

  • SuperScope:

  • Justifier:

  • Justifiers:

Genesis Plus GX

  • Multi-Mouse:

  • MD Justifiers:

  • MD Menancer:

  • MS Light Phaser:

higan Accuracy

  • Multi-Mouse:

  • SuperScope:

  • Justifier:

  • Justifiers:

nSide Balanced

  • Multi-Mouse:

  • SuperScope:

  • Justifier:

  • Justifiers:


  • Multi-Mouse:

  • Zapper:

Nestopia UE

  • Multi-Mouse:

  • Zapper:


  • Multi-Mouse:

  • SuperScope:

  • Justifier:

Snes9x 2010

  • Multi-Mouse:

  • SuperScope:

  • Justifier

  • Justifiers:


Beetle PSX

Multi-Mouse: n/a

Guncon / G-Con 45: Works, but only in native resolution (Tested with “Time Crisis”)

Justifier: Works, but only in native resolution (Tested with "Die Hard Trilogy)

Beetle PSX HW (Vulkan)

Multi-Mouse: n/a

Guncon / G-Con 45: Not working (Tested with “Time Crisis”)

Justifier: Not working (Tested with "Die Hard Trilogy)


Could also get some platform status info into this. If I ever get time I will test some more on Android.


Quick Testing

RA v1.6.7

Beetle PSX - Android core

Game Tested: Time Crisis


Guncon / G-Con 45: Didn’t work

Justifier: Didn’t work

neGcon: Didn’t work

Mouse: Crosshair moving (more testing on sensitivity needed). Mouse buttons not working but possible RA version issue my end. [Edit] buttons now working after update to 1.7.0 play store. With new mouse bindings

Also tested

Bsnes/accuracy Game: Super Scope 6

Super Scope: Working fine although mouse sensitivity is behind actual mouse movement. Fire worked on left mouse button


Beetle PSX .9.44.1 - Windows

Multi-Mouse: not working

Guncon / G-Con 45: Works Fine (Time Crisis)

Justifier: Works Fine (Area 51)

Beetle Saturn: .9.48 - Windows

Multi-Mouse: Get a second cross hair that is it.

Stunner: Works fine (Virtual Cop)

Virtua Gun:Works fine (Virtual Cop)


bsnes-mercury (Accuracy/Balanced/Performance): v094 - Windows

Multi-Mouse: - not working

SuperScope: Works (Battle Clash) Sensitivity needs to be adjusted down. Tested Yoshi Safari with this core and crashes retroarch on my setup fyi.

Justifier: Works (T2 The Arcade Game) Sensitivity needs to be adjusted down(dont think you can). Tested a second time and could not get it working again. Tested on Lethal enforcers and shoots but could not get offscreen reload to work and button set for reload did not work.

Justifiers: Only 1 Gun Works (T2 The Arcade Game) Sensitivity needs to be adjusted down(dont think you can.). Tested on Lethal enforcers too and works. When I tested balanced/performance justifier/s stopped working properly so sticking with accuracy.

bsnes (Accuracy/Balanced/Performance)v094 - Windows

Multi-Mouse: n/a

SuperScope: Yoshi Safari - works fine needs to have sensitivity adjusted down(dont think you can).

Justifier: Works.

Justifiers: One gun works.


FCEUmm SVN 5106649 - WIndows

Multi-Mouse: not working

Zapper: Working (duck hunt tested)

Quick Menu - Options - zapper mode - pointer, Also change input driver to dinput


what? zapper not working in fceumm??? not sure what platform you are using but fceumm uses 2 modes for the zapper. auto-detect mode in control input only detects if a game can use zapper or not, not the zapper mode. But depending on what system you are playing and or the driver use for input in retroarch, the zapper mode can either work in pointer mode, or mouse mode. but its not possible to not work, not with duck hunt of all things.


Thank you for your feed back, I have adjusted the post for that core accordingly. I was following the docs:

For standard Famicom/NES ROMs:

Load a standard Famicom or NES ROM in the FCEUmm core Access the RetroArch Quick Menu In the Input Settings for User 1, specify a device type of Gamepad In the Input Settings for User 2, specify a device type of Zapper Exit the Quick Menu

Would be cool if that could be added to the documentation as once I set the zapper to mouse mode it worked fine(mostly).


Can you link the docs page please dougan?


removed link to old wiki


cant do anything in mouse-mode not following the system cursor, thats whats the “pointer” mode is suppose to do when it worked for your device/input driver.


The current docs for this core are located here:


Nestopia UE - 1.49 WIP 754d283

Multi-Mouse: no

Zapper: Works fine(Duck Hunt), there is not a zapper setting it just works device 1 set as retropad when I tested and none for device 2


I will add this, which I found interesting. If I use a aimtrack the mouse is really erratic and tough to control, zooms around fast on the NES/SNES emulators more so on NES. If I RDP into my desktop and use my trackpoint the crosshair moves smooth as butter. Is there something I am missing to make the lightgun move smooth?


bsnes C++98 (v085) - windows

Multi-Mouse: no

SuperScope: Works Fine ( Yoshi Safari)

Justifier: Works Fine (Lethal Enforcers)

Justifiers: One works (Lethal Enforcers)


Genesis Plus GX - 1.7.4 69b2c0c - Windows

Multi-Mouse: no

MD Justifiers: no

MD Menancer: no

MS Light Phaser: shoots in center of screen only


what input driver are you using in retroarch? the reason you are having this no pointer movement in fceumm-pointer mode and in genesis plus is that the lightgun/zapper modes in these cores are using device_pointer_api. which some input drivers do not have. im not on windows so youll have to see which one has.