randyrossi / bmc64

A bare metal Commodore 64 emulator for the Raspberry Pi with true 50hz/60hz smooth scrolling, low input latency and better audio/video sync.
GNU General Public License v3.0
488 stars 59 forks source link

The spacebar is not working if joystick mapping is set on cursor keys #40

Closed foxp4v closed 5 years ago

foxp4v commented 5 years ago

As title, if joystick mapping is set to cursors+left ctrl or cursors+space the spacebar in basic is not working, instead if is mapped to numpad it works perfectly. Found this bug because i've had another strange problem, with the numpad mapping, for instance in the recently released Super Mario Bros, is impossible to jump while the fire button (used to run) is pressed, no problems with the cursor mapping instead.

randyrossi commented 5 years ago

That's not a bug. The same will happen if you map space to fire using any version of VICE. The emulator has no way to know whether you are in basic or in a game. Any custom key mapping will take that key input and use it for joystick. The cursor + space option is just a convenient way to do a custom mapping.

For the other issue, it's likely the case that your keyboard is not allowing both those keys to be pressed at the same time. That's the limitation with using keyboards as joysticks. Try using the same keyboard and same mapping on VICE using desktop version.

foxp4v commented 5 years ago

Ok, but the same happens with cursor keys+left control. I mean spacebar not working in basic.

randyrossi commented 5 years ago

Not sure I follow. Spacebar works fine in basic. If you map space to fire, it will no longer be space. The idea is you would only use that while within a game.

I tried both cntrl/space + cursor keys and I all joystick directions + fire map correctly for me. Even two directions + fire works at the same time.

foxp4v commented 5 years ago

I mean that mapping joystick to cursors+left control makes the spacebar not working in basic.

randyrossi commented 5 years ago

Ah, I see now. Thanks.

lroby74 commented 5 years ago

I've tried today.. IF i SET to cursors + space , in Basic space doesn't work because he's doing like fire of joystick but if i SET cursors + Left control then space bar will works like space bar in Basic and in games too

foxp4v commented 5 years ago

Ok i've noticed that the issue is only when the joystick is mapped to port 2, when in port 1 works correctly. But i've found another little problem, don't know if open another ticket, i'll try to explain here: I'm on raspbery 2, on the first cold boot, very fast, the keyboard does not work, i have to turn off power then power on again and then it works again.

lroby74 commented 5 years ago

I know that an user modified one of 2 files for solve regular USB keyboard not working issue (don't remember if changed fast=true with #fast=true in cmdline.txt or boot_delay=0 in #boot_delay=0 in config.txt file)

randyrossi commented 5 years ago

Should be fixed in 1.7