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
479 stars 56 forks source link

GPIO Config "#5 (Custom)" prevents gamepad to be used as a joyport #163

Closed CemTezcan closed 3 years ago

CemTezcan commented 3 years ago

Setting GPIO Config as "5 (Custom)" prevents gamepad to be recognized as joyport. To reproduce the issue:

  1. Connect a gamepad
  2. Set GPIO Config to "5 (Custom)"
  3. Set joyport 2 as "USB Gamepad 1"
  4. Load a game
  5. See that direction buttons and fire button doesn't work.

However, direction buttons and fire button work normal on emulator menu to navigate and select any content. Also any other keys assigned to gamepad controller works normal (like custom space button, menu key, warp function, virtual keyboard etc...)

CemTezcan commented 3 years ago

Thanks for the update Randy, but I'm afraid problem still persists. gamepad fire key and directions work on first 4 GPIO configuration, but if I set it to custom they are disabled in games.

randyrossi commented 3 years ago

I just tested with a joystick tester and Custom GPIO allows gamepad to function for me now. Are you sure you updated the kernel?

CemTezcan commented 3 years ago

If you mean the kernels at this link, then yes. https://accentual.com/bmc64/downloads/master

I checked again and confirm that on custom gpio set direction keys and fire key that assigned my gamepad doesn't work (they work on emulator menus, they don't work on emulationgame, let's say delayjoy.crt). But if I set the GPI to any other 4 setups suddenly fire and direction keys are became working.

Please check this video: https://www.youtube.com/watch?v=SH0ekwbGa7g

randyrossi commented 3 years ago

Were you using a Pi3? I may not have updated the binary properly in my last upload. Would you be able to try again? I'm pretty sure my gamepad now works with Custom GPIO config 5 now.

On Sun, Feb 28, 2021 at 5:13 AM CemTezcan @.***> wrote:

If you mean the kernels at this link, then yes. https://accentual.com/bmc64/downloads/master

I checked again and confirm that on custom gpio set direction keys and fire key that assigned my gamepad doesn't work (they work on emulator menus, they don't work on emulationgame, let's say delayjoy.crt). But if I set the GPI to any other 4 setups suddenly fire and direction keys are became working.

Please check this video: https://www.youtube.com/watch?v=SH0ekwbGa7g

— You are receiving this because you modified the open/close state. Reply to this email directly, view it on GitHub https://github.com/randyrossi/bmc64/issues/163#issuecomment-787428216, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAI3HKFJ5BWUMKHJ6ZKH5FDTBIJNTANCNFSM4X6IQO2Q .

-- Randy Rossi

CemTezcan commented 3 years ago

Were you using a Pi3? I may not have updated the binary properly in my last upload. Would you be able to try again? I'm pretty sure my gamepad now works with Custom GPIO config 5 now. On Sun, Feb 28, 2021 at 5:13 AM CemTezcan @.***> wrote: If you mean the kernels at this link, then yes. https://accentual.com/bmc64/downloads/master I checked again and confirm that on custom gpio set direction keys and fire key that assigned my gamepad doesn't work (they work on emulator menus, they don't work on emulationgame, let's say delayjoy.crt). But if I set the GPI to any other 4 setups suddenly fire and direction keys are became working. Please check this video: https://www.youtube.com/watch?v=SH0ekwbGa7g — You are receiving this because you modified the open/close state. Reply to this email directly, view it on GitHub <#163 (comment)>, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAI3HKFJ5BWUMKHJ6ZKH5FDTBIJNTANCNFSM4X6IQO2Q . -- Randy Rossi - "There are only two things that are hard about computer science; Naming things, Cache Invalidation, and Off-by-one errors."

Yes, I was using Pi 3A+. Now I tested your final upload and it looks perfect! Problem solved, thanks so much for this fix.