Build Your Own Arcade Controls Forum
Software Support => GroovyMAME => Topic started by: Sonny_Jim_Pin on December 21, 2023, 06:03:54 am
-
Not sure where else to put this, but I figure here is a good spot. I recently purchased one of these for my cabinet:
(https://i.imgur.com/cYvsRVd.png)
After much messing around, I finally managed to get it to work. The secret is to use Retroarch with a MAME core and make sure in the Retroarch global config that the mouse input driver is set to UDEV. Using the default GroovyMAME wouldn't work due to the way SDL reads the mouse movement. I think rather than absolute, it was using relative positioning and when the screen mode was changing it was expecting the mouse to still be on the higher resolution, which meant it was hyper sensitive. At some point I'll have a look at the GroovyMAME source to see if the method of reading mouse data can be changed, but for now I'm just happy I can play Point Blank again :)
p.s Don't forget to take the protective lens cap off, or the gun won't work at all. Ask me how I know....
-
interesting ... so it doesn't need any caibration since it's IR ... but using GM would still be better than RA + mame core ...
-
It's not a bad gun, although I'm kinda kicking myself for getting the solenoid one with the metal cable. It's fine for a couple of minutes but your arms hurt after a while because it's so heavy.
Preferably I would be using GM, but due to the way the SDL input works, it's just unusable and I couldn't find a way to change the method it uses to poll the gun inputs. From what I can work out, the gun is 'calibrated' to work on the desktop resolution, but as most games are smaller it means the gun tracks way too fast, presumably because it has less pixels to travel and SDL seems to ignore the current screen size.
I still haven't managed to get it working starting from attract+, at the moment it just hangs with a black screen and I'm not sure why, haven't spotted anything obvious in the logs.
This works when run from an SSH session:
DISPLAY=:0 retroarch -L /home/arcade/shared/configs/retroarch/cores/mame_libretro.so /home/arcade/shared/roms/lightgun/ptblank.zip
I made a lightgun config for attract+, but I think I must be doing something wrong, even though I copied it from another cfg that works. Any ideas?
EDIT: Managed to get it launching from attract+
~/.attract/emulators/Lightgun.cfg
executable /opt/galauncher/galauncher.sh
args retroarch mame "[romfilename]"
workdir $HOME
rompath $HOME/shared/roms/lightgun/
romext .7z;.zip
system mame
artwork flyer $HOME/shared/roms/lightgun/media/
artwork marquee $HOME/shared/roms/lightgun/media/screenmarquee
artwork snap $HOME/shared/roms/lightgun/media/images;$HOME/shared/roms/lightgun/media/videos
artwork video $HOME/shared/roms/lightgun/media/videos
artwork wheel $HOME/shared/roms/lightgun/media/wheel
I also had to edit ~/shared/configs/ga.conf to add the 'mame' line:
retroarch.c64.core=vice_x64
retroarch.mastersystem.core=genesis_plus_gx
retroarch.psp.core=ppsspp
retroarch.snes.core=snes9x
retroarch.psx.core=swanstation
retroarch.cdi.core=cdi2015
retroarch.megadrive.core=genesis_plus_gx
retroarch.nes.core=nestopia
retroarch.n64.core=mupen64plus_next
retroarch.pcengine.core=mednafen_pce
retroarch.segacd.core=genesis_plus_gx
retroarch.saturn.core=kronos
retroarch.fds.core=mesen
retroarch.gb.core=gambatte
retroarch.gbc.core=gambatte
retroarch.nds.core=desmume
retroarch.stv.core=kronos
retroarch.gba.core=mgba
retroarch.sega32x.core=picodrive
retroarch.wii.core=dolphin
retroarch.gc.core=dolphin
retroarch.naomi.core=flycast
retroarch.sg-1000.core=genesis_plus_gx
retroarch.ps2.core=play
retroarch.gamegear.core=genesis_plus_gx
retroarch.n3ds.core=citra
retroarch.atarijaguar.core=virtualjaguar
retroarch.x68000.core=px68k
retroarch.amiga.core=puae
retroarch.3do.core=opera
retroarch.wonderswan.core=mednafen_wswan
retroarch.intellivision.core=freeintv
retroarch.neogeo.core=fbalpha2012_neogeo
retroarch.videopac.core=o2em
retroarch.fbneo.core=fbneo
retroarch.zxspectrum.core=fuse
retroarch.dreamcast.core=flycast
retroarch.odyssey2.core=o2em
retroarch.pcfx.core=mednafen_pcfx
retroarch.vectrex.core=vecx
retroarch.atari7800.core=prosystem
retroarch.wonderswancolor.core=mednafen_wswan
retroarch.neogeocd.core=neocd
retroarch.atarist.core=hatari
retroarch.pc88.core=quasi88
retroarch.zx81.core=81
retroarch.x1.core=x1
retroarch.thomson.core=theodore
retroarch.mame.core=mame
alsa=0
volume=100