Advmame tab menu not accepting input from any device
-
I've been using Mame in Windows and Linux for over 10 years on a Mame cabinet. I'm attempting to switch to RetroPIE but keep running into trouble.
librertroMame2003 works pretty good, but doesn't find some of my roms and looks crappy on luner lander. advmame works great, but I can't configure my input!
I hit tab, the menu comes up, I go to an input I'd like to configure, hit enter, the current setting disappears, then no matter what I do, hit any key, type anything, hit any joystick, button, anything nothing is registered. a second or two later it says "<none>" and there is no way to ever recover that input!
HELP!
-
@wjkoontz Please add some info about your setup, as detailed in https://retropie.org.uk/forum/topic/3/read-this-first.
Which
advmame
version are you using - there are 3 versions available in Retropie - ? -
@mitu Thanks.
Pi Model or other hardware: PI 4
Power Supply used: official supply from Adafruit
RetroPie Version Used : 4.7.1
Built From: Used Raspberry Pi Imager
USB Devices connected: USB Keyboard and USB Gamepad
Controller used: USB Keyboard and USB gamepad
Error messages received: No error message
How to replicate the problem:
Used the built-in package manager to install advmame from optional packages.Got this version:
AdvanceMAME 3.9
Compiled Dec 15 2020 with gcc-8.3.0Drivers (in priority order):
Video: fb sdl none
Sound: alsa oss sdl none
Keyboard: event raw sdl none
Joystick: event raw sdl none
Mouse: event raw sdl noneDirectories:
Data: /opt/retropie/emulators/advmame/share/advanceConfiguration (in priority order):
Host configuration file (R): /opt/retropie/emulators/advmame/etc/advmame.rc
Command line (R)
Home configuration file (RW): /home/pi/.advance/advmame.rc
Data configuration file (R): /opt/retropie/emulators/advmame/share/advance/advmame.rc- Load any game
- Press tab
- Go Input (this game)
- Choose any input and hit enter (current setting is removed and its waiting for an input)
- Type any key, hit any button say “H” key
Expected: (in case of hitting “H” key) ‘h’ is accepted as input for this control
Actual: Nothing happens, unable to give any input from any device, within a second or two the input is set to <none> -
@mitu
Also, it is same when I run from command line
E.G. /opt/retropie/emulators/advmame/bin/advmame robotronGame loads fine, and I can add quarters and start the game, but the controls don't work right since its a 2 joystick game.
I can hit tab to get into the menu, and navigate the menu, but once I hit enter nothing happens until it times out and gives <none> as the input. Then I can navigate again etc. -
On the Pi4, only SDL is supported as Keyboard/Joystick/Video drivers. Try putting it first in the list of drivers - the RetroPie install script does that automatically, did you change the
advmame.rc
manually ? -
@mitu
Only to change misc_safequit from yes to noKeyboard works in-game, both to control the game (IF the existing control is usable) and to get to the TAB menu.
The keyboard works inside the TAB menu to navigate to a setting and to hit enter change it.Only after hitting enter, when the tab menu is expecting a replacement input does it not work.
Here is the first few lines:
pi@retropie:~ $ cat /opt/retropie/configs/mame-advmame/advmame.rc
config save_at_exit
debug_crash no
debug_rawsound no
debug_speedmark no
device_alsa_device default
device_alsa_mixer channel
device_color_bgr15 yes
device_color_bgr16 yes
device_color_bgr24 yes
device_color_bgr32 yes
device_color_bgr8 yes
device_color_palette8 yes
device_color_yuy2 yes
device_dpi_pclock_low 31250000
device_fb_fastset no
device_hdmi_pclock_low 0
device_joystick auto
device_keyboard sdl
device_mouse auto
device_raw_firstkeyhack no
device_raw_mousedev[0] auto
device_raw_mousedev[1] auto
device_raw_mousedev[2] auto
device_raw_mousedev[3] auto
device_raw_mousetype[0] pnp
device_raw_mousetype[1] pnp
device_raw_mousetype[2] pnp
device_raw_mousetype[3] pnp
device_sdl_samples 512
device_sound auto
device_video sdl
device_video_cursor auto
device_video_doublescan yes
device_video_fastchange no
device_video_interlace yes
device_video_output auto
device_video_overlaysize auto
device_video_singlescan yes -
SOLVED?
Weird but I got it working.
If I hit a key when the tab menu is expecting a new input nothing happens.
BUT if I HOLD a key, for a certain length of time, then after the second or so it shows the new key as the selected input. Not right as I press the key like I was used to in other mame.Not sure if its supposed to do that or not, but at least by holding the key, button, or stick I was able to finally setup my control!
Thanks for helping!
-
@wjkoontz said in Advmame tab menu not accepting input from any device:
Thanks for helping!
Not sure how I helped :), but glad it's working.
I don't routinely use
advmame
, but I did a few tests and it looks like - when mapping the input - there is a delay between pressing an input and the corresponding key being displaying in the menu. If I do a simple/single press, nothing is shown, but after the input timeout elapses, the input dialog shows the input has been acknowledged and configured. It's like the UI doesn't update immediately after 1 event processed.
We'll see if something can be done to make the input mapping more responsive. -
@mitu i was reading this post and replies.
i m testing on a x86 ubuntu flavor.
when in ES advmame wont start unless i force XINIT:
it starts rom ok but i have the same behavior as stated.
No kb or controller respondsAdvanceMAME 3.10 Compiled Apr 1 2024 with gcc-11.4.0 Drivers (in priority order): Video: fb sdl none Sound: alsa oss sdl none Keyboard: event raw sdl none Joystick: event raw sdl none Mouse: event raw sdl none Directories: Data: /opt/retropie/emulators/advmame/share/advance Configuration (in priority order): Host configuration file (R): /opt/retropie/emulators/advmame/etc/advmame.rc Command line (R) Home configuration file (RW): /home/pi/.advance/advmame.rc Data configuration file (R): /opt/retropie/emulators/advmame/share/advance/advmame.rc```
the paths above dont look correct as the config advmame.rc is as mentioned and as per retropie in configs folder mame-advmame
so far so good.
if i try to change anything in it for example set sound from auto to pulse, emu wont start.So I decided to enter desktop with startx and start ES in there.
Went to mame-advmame and started a romWithin X everything works great. TAB, keys etc
just wanted to bring this up since I tested it and it is confusing.
so im also looking to get this working by not using es in actual X
-
as per
[https://www.advancemame.it/doc-install](link url)`1.1 Linux
In Linux the Advance programs can run either in the X Window graphical environment or from the Linux Console.In X Window the SDL library is used for everything: video, audio and input controllers.
In the Linux Console, the Linux Framebuffer is used for the video, the ALSA or OSS library for audio, and the Linux Event or Raw interface for input controllers.
The video board programming functionality for Arcade Monitors and CRT TVs, is available only from the Linux console, using the Linux Framebuffer. `
Contributions to the project are always appreciated, so if you would like to support us with a donation you can do so here.
Hosting provided by Mythic-Beasts. See the Hosting Information page for more information.