[Solved] Devil World NES/Famicom no Select button
-
@mitu Thank you for your response! Here is a link to the log:
The only core-wide control change I made for NES (a few years ago) was to swap the face buttons a bit so that B and A took the positions of Y and B (respectively) in the usual SNES controller setup. All of the other "Select to manipulate menu" games (such as Super Mario Bros.) allow me to interact with the menu using the Select button. It's just Devil World causing a problem for me for some reason.
I searched in /opt/retropie/configs/all/retroarch/config/remaps as well as /opt/retropie/configs/nes for a Devil World-specific config or remap file but didn't find one. I also don't have any config file specific to this game in the ROM folder. Is there another place I should look?
-
@chaoseffect said in Devil World NES/Famicom no Select button:
Thank you for your response! Here is a link to the log:
This is not a verbose/detailed log. Read again the link I posted on how to enable verbose logging and re-post the log.
-
@chaoseffect said in Devil World NES/Famicom no Select button:
Thank you for your response! Here is a link to the log:
This is not a verbose/detailed log. Read again the link I posted on how to enable verbose logging and re-post the log.
-
@mitu My mistake! I grabbed the runcommand.info file instead of the runcommand.log file.
-
You have a core remap that's loaded and your remap folder is not the default one - did you reset the configuration for the NES system ?
[INFO] [Remaps]: remap directory: /home/pi/.config/retroarch/config/remaps [INFO] [Remaps]: core-specific remap found at /home/pi/.config/retroarch/config/remaps/FCEUmm/FCEUmm.rmp.
What's the content of the
/home/pi/.config/retroarch/config/remaps/FCEUmm/FCEUmm.rmp
file ?The log also shows some errors in the controller type options:
[WARN] Input device ID 5 is unknown to this libretro implementation. Using RETRO_DEVICE_JOYPAD. [libretro INFO] Player 1: Gamepad [WARN] Input device ID 5 is unknown to this libretro implementation. Using RETRO_DEVICE_JOYPAD. [libretro INFO] Player 2: Gamepad [WARN] Input device ID 5 is unknown to this libretro implementation. Using RETRO_DEVICE_JOYPAD.
Did you manually modified the
retroarch.cfg
for the NES system ? -
@mitu Here are the contents of the FCEUmm.rmp file:
The above file must have been what was generated when I changed the positioning of A and B in the RetroArch menu a few years ago. Removing that file reverts the controls back to the default A = A and B = B controls for FCEUmm. The "no Select" problem still persists with Devil World if I remove this file.
Here is the retroarch.cfg file specific to NES:
I quickly adjusted lines 200, 208, and 209 so that they now say device type "1" (like the other devices) instead of "5." That removed the warnings in the verbose log. A few months ago, I did a fresh install of RetroPie with Buster and then transferred over all of my configs from my old install. I do not remember changing the controller types specifically in that config file.
-
@chaoseffect Start fresh with the default
retroarch.cfg
for the NES system and check again. There's something in the (much larger)retroarch.cfg
that's breaking your input. -
@mitu I tried removing the NES's retroarch.cfg. As expected, when I loaded the ROM, I got a message that a new config was generated. Unfortunately, I still have the same problem. I tried this fresh config file with the European version and both the Japanese and Japanese Rev. A versions.
I tried removing the retroarch.cfg in the "all" folder and also tried running Nestopia with a fresh config. Same issue across the board.
Here are the FCEUmm-specific options I have set in my retroarch-core-options file:
That fancier RetroArch menu is pretty nice, and that "Hotkey + Start twice to quit" option is useful for games that use Select+Start to do something in-game (such as Tekken).
-
Actually, I was able to somewhat fix the issue. It seems that Devil World does not want Select and Hotkey to be the same button for some reason. I remapped Select to R2 on my controller and am able to cycle through the menu options.
After testing a few other games out, I realized that the same issue occurs with Duck Hunt (and maybe other Zapper games). I didn't remember that you were supposed to be able to cycle the menu options in Duck Hunt with the controller until I re-read the instruction manual today. I only remember shooting off screen to cycle the menu. By default, the Select button doesn't work for me in Duck Hunt, either. However, if I remap Select away from the button I use for the Hotkey, it works. I found this hint in a post by @mediamogul (#14) from
https://retropie.org.uk/forum/topic/16915/retroarch-light-gun-game-mode-selection/14
EDIT: for me, the same issue occurs with Barker Bill's Trick Shooting and Hogan's Alley but does NOT occur with Wild Gunman.
-
@chaoseffect said in Devil World NES/Famicom no Select button:
That fancier RetroArch menu is pretty nice, and that "Hotkey + Start twice to quit" option is useful for games that use Select+Start to do something in-game (such as Tekken).
The default NES
retroarch.cfg
contains just:# Settings made here will only override settings in the global retroarch.cfg if placed above the #include line input_remapping_directory = "/opt/retropie/configs/nes/" #include "/opt/retropie/configs/all/retroarch.cfg"
What you have right now it's the default RetroArch's configuration, but it's not what RetroPie configures by default.
I tried removing the retroarch.cfg in the "all" folder and also tried running Nestopia with a fresh config. Same issue across the board.
Not surprising, given the configuration you've used so far.
It seems that Devil World does not want Select and Hotkey to be the same button for some reason. I remapped Select to R2 on my controller and am able to cycle through the menu options.
I don't see how this is related. I'm using it that way and cannot reproduce your issue (either in this game or another games that use Select in-game).
-
@mitu Thank you for your patience in helping out with this. I tried downloading a fresh RetroPie 2/3 image from this site today and got the same result. I downloaded the image, and then I
- Loaded it onto a different SD card
- Opened it on the same Pi 3B
- Configured some controllers in EmulationStation
- Changed my region to the appropriate one so that I could enable WiFi
- Enabled SSH
- Transferred over Devil World and Super Mario Bros.
Select works in Super Mario Bros. but still does not work in Devil World unless it's mapped away from the hotkey-enable button (regardless of X-input, D-input, etc.). I realize that some of my config files in my main install are wildly non-standard, but I am confused as to why the same would happen to me in a fresh install but not you. Are you also using a Pi 3?
-
@chaoseffect said in Devil World NES/Famicom no Select button:
Are you also using a Pi 3?
Testing the ROM you mentioned was done on a Pi4, but I've played lots of times with NES games that use the
Select
button on a Pi3 and didn't encounter this issue. Pretty sure users would have reported this over the years.
Can you post your controller configuration file, from/opt/retropie/configs/all/retroarch-joypads
? -
@mitu These are the two that I use most often on my original install. I also tried these with the fresh install.
Wired 8BitDo controller (recognized as Xbox 360 controller and has two analog sticks):
input_device = "Microsoft X-Box 360 pad" input_driver = "udev" input_enable_hotkey_btn = "8" input_r3_btn = "12" input_r_y_minus_axis = "-3" input_l_btn = "4" input_load_state_btn = "4" input_r_y_plus_axis = "+3" input_up_btn = "h0up" input_left_btn = "h0left" input_state_slot_decrease_btn = "h0left" input_select_btn = "8" input_r2_btn = "7" input_r_x_minus_axis = "-2" input_l_y_plus_axis = "+1" input_l_x_plus_axis = "+0" input_right_btn = "h0right" input_state_slot_increase_btn = "h0right" input_l2_btn = "6" input_l_x_minus_axis = "-0" input_r_x_plus_axis = "+2" input_l3_btn = "11" input_r_btn = "5" input_save_state_btn = "5" input_l_y_minus_axis = "-1" input_y_btn = "2" input_x_btn = "3" input_menu_toggle_btn = "3" input_down_btn = "h0down" input_start_btn = "9" input_exit_emulator_btn = "9" input_b_btn = "0" input_reset_btn = "0" input_a_btn = "1"
Wired Hori "Pokken" controller (does not have analog sticks):
input_device = "HORI CO.,LTD. POKKEN CONTROLLER" input_driver = "udev" input_l_btn = "4" input_load_state_btn = "4" input_start_btn = "9" input_exit_emulator_btn = "9" input_up_btn = "h0up" input_a_btn = "2" input_b_btn = "1" input_reset_btn = "1" input_enable_hotkey_btn = "8" input_down_btn = "h0down" input_r_btn = "5" input_save_state_btn = "5" input_r2_btn = "7" input_right_btn = "h0right" input_state_slot_increase_btn = "h0right" input_x_btn = "3" input_menu_toggle_btn = "3" input_select_btn = "8" input_y_btn = "0" input_left_btn = "h0left" input_state_slot_decrease_btn = "h0left" input_l2_btn = "6"
-
The config files seem fine. Did you still added a core remap on a fresh install ?
-
@mitu No, all of that was left untouched. The issue was present with FCEUmm, NEStopia, and QuickNES on the fresh install.
-
@mitu Updating RetroArch from 1.8.8 to 1.9.4 resolved the issue. The fix seems to have resulted from the new "Hotkey delay" option. The default setting of 5 frames makes Devil World, Duck Hunt, and Hogan's Alley all function as intended.
However, I have to increase the setting above 5 to get Barker Bill's Trick Shooting to work correctly. From the RetroArch menu, this is found by navigating to
Settings -> Input -> Hotkeys -> Hotkey Enable Delay (Frames)
Doing this is simple enough, but I can't get the setting to stick upon exit. Is there a way to save this setting via the RetroArch GUI? I'm also interested in where this setting is located in the configuration files. I didn't find it in any retroarch.cfg or retroarch-core-options.cfg.
-
@chaoseffect said in Devil World NES/Famicom no Select button:
I'm also interested in where this setting is located in the configuration files
I believe it's probably this entry in my retroarch.cfg :
input_hotkey_block_delay = "5"
-
@barbudreadmon That worked! Thanks!
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.