Physical C64 keyboard with lr-vice
-
I have a physical 64 keyboard that is connected via USB (using promicro based converter) and it works fine when using Vice through Retropie, but if I switch to lr-vice only some keys work. It seems like lr-vice would be the better fit with retropie, but the keyboard issue is annoying. Any idea what the difference between these two emulators might be that would lead to this issue.
FWIW, this is the code behind the UBS conversion:
https://github.com/omiq/c64-keyboard-USB -
@fallenturtle Welcome to the club!
I too have a vintage keyboard - an Amiga 1000 keyboard - connected to USB via an Arduino.First of all, the problem does not come from your configuration. It comes from the developers themselves of the Libretro emulators (lr-something)
These guys decided that retrogamers are only video game consoles users who never want to use a keyboard. So they programmed their software to be typed only from the paddle. This doesn't make sense for adventure games, nor for games that require you to enter simple things (Joystick/Keyboard, Yes/No) in a language other than English. But these guys don't want to hear anything.
So, to impose their way of thinking, they confuse all the keys on the keyboard. Instead of characters, each key triggers a shortcut to an obscure function that nobody will ever need. The worst being the shortcut to bring up a... virtual keyboard! The guys seriously thought it would be a good idea to play a pinball game from a virtual keyboard.
There is a way to disable this stupid function. You have to deselect the "Game Focus Mode" option. You read that correctly: the option is not called "Keyboard On/Off", nor "Keyboard Keys/hotkeys". It's called "Game Focus Mode", which means nothing. If you don't know that, you'll never be able to figure it out on your own. It's totally counterintuitive. Moreover, if you disable "Game Focus Mode", the developers punish you: you can't exit the emulator by pressing Select+Start" anymore.
To activate/deactivate the "Game Focus Mode" behavior, the developers offer you two possibilities:
- press the "Scroll Lock" key. But on a vintage keyboard, this key does not exist. Obviously.
- open the RetroArch menu and go to Settings, then to Input, then to Hotkeys, then to Game Focus Toggle. Four steps of sub-menus to make sure it's complicated for you. Worse: when you do this once, you can't go back to the sub-menu with Select+X
So, the REAL solution to eradicate this problem is the following. From the terminal, in SSH or whatever, you go to the /opt/retropie/configs/ directory. And, for each of the emulators damaged by this problem (Amstrac CPC, c64, Atari 800, MSX, ZX Spectrum, Thomson), you enter its directory, you edit the content of the configuration file retroarch.cfg and, at each line that starts with "input_", you put the value "null". For example:
input_exit_emulator = "nul" input_player1_l = "nul" input_player1_r = "nul" input_hold_slowmotion = "nul" input_rewind = "nul" input_cheat_index_minus = "nul" input_cheat_index_plus = "nul" input_cheat_toggle = "nul" input_netplay_game_watch = "nul" input_movie_record_toggle = "nul" input_pause_toggle = "nul" input_player1_y = "nul" input_player1_x = "nul" input_toggle_fullscreen = "nul" input_reset = "nul" input_frame_advance = "nul" input_hold_fast_forward = "nul" input_player1_start = "nul" input_player1_b = "nul" input_player1_a = "nul" input_shader_prev = "nul" input_shader_next = "nul" input_player1_select = "nul" input_toggle_fast_forward = "nul" input_player1_up = "nul" input_player1_left = "nul" input_player1_right = "nul" input_player1_down = "nul" input_volume_down = "nul" input_volume_up = "nul"
-
@yserra Hmm, shoot. I wonder if I have a greater issue. I did as you instructed for the C64 and the keyboard is still having the same issues. FWIW, the same issue exists when I connect a straight up PC USB keyboard. I also notice the Scoll lock made no difference.. then again I test that after I edited the cfg, so maybe it doesn't work because I set it to "nul".
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.