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

Final csrtridge + Randy's PCB + joysticks #219

Open Larswad opened 2 years ago

Larswad commented 2 years ago

I may have done something wrong. But I think I had no problems when I used keyrah before at all. So I have a functional board of randy rossis own design that I bought on a site. I have now with gpio joystick gpio config #1 and #2, got it working using joystick testers just fine, both joysticks individually connected to the ports. BUT, if I use the final csrtridge iii it boots into that desktop, then ONLY the fire button works, not the directions. So I cannot navigate out of it. Is this a known problem? I just can't understand why it works with the joystick tester programs but not when the cartridge is started. If I have done something wrong, just delete this ticket. Otherwise I would be happy to know if anyone has stumbled into this. I have upgraded to 3.9, but not overwritten the old config file. Just adapted the joystick configs.

randyrossi commented 2 years ago

This sounds familiar. I can't get any joystick setting to work with TFCIII cartridge. Even keysets and usb joysticks don't seem to register. Oddly enough, if you have a mouse in a USB port and set Port 1 to 1351, it does work.

You can still navigate using F1/F3/F5/F7 for up/down/left/right using the keyboard. I will have to see if I can reproduce the problem on my desktop version of vice. In the meantime, you can use the keys.

On Fri, Jun 3, 2022 at 6:27 PM Lars Wadefalk @.***> wrote:

I may have done something wrong. But I think I had no problems when I used keyrah before at all. So I have a functional board of randy rossis own design that I bought on a site. I have now made with gpio joystick gpio config #1 https://github.com/randyrossi/bmc64/issues/1 and #2 https://github.com/randyrossi/bmc64/issues/2, got it working using joystick testers just fine, both joystick individually connected to the ports. BUT, if I use tje final csrtridge iii it boots into that desktop, but then only the fire button works, not the directions. So I cannot navigate out of it. Is this a known problem? I just can't understand why it works with the joystick tester programs but not when the csrtridge is started. If I have done something wrong, just delete this ticket. Otherwise I would be happy to know if anyone had stumbled into this. I have upgraded to 3.9 but not overwritten the old config file. Just adapted the joystick configs.

— Reply to this email directly, view it on GitHub https://github.com/randyrossi/bmc64/issues/219, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAI3HKHWNZXEFMLDNBVZZJLVNKBFDANCNFSM5X2KNLSQ . You are receiving this because you are subscribed to this thread.Message ID: @.***>

-- Randy Rossi

Larswad commented 2 years ago

Thanks for the reply. The f-keys work, but the thing that prevents that is that the fire in TFC III is mapped to commodore key. And while any of the fkeys is pressed (which it has to be or the menu disappears) it will map to the bmc64 shortcuts instead. So it's a weird situation with that. Thinking whether some GPIO's are perhaps initialized to their proper input config later after the cartridge has left control? But it's a long shot, you probably don't do that since I mean the fire button on the sticks obviously works. In difference to keyrah that uses a keyboard button mapping I guess at least that explains that part.

randyrossi commented 2 years ago

This remains a mystery. If you select 'BASIC' from the desktop menu, then the fire button will activate the pointer control and joystick directions start working. However, if you go back to the desktop, it stops working. There's something very strange about how this utility detects joystick events. I can't reproduce it on my desktop build of the same version of vice.

Larswad commented 2 years ago

I agree. It's as weird as it's gonna get. But I don't know how you are able to even select basic since I can't use the f-keys + commodore (I guess I can remove the special binding of the cbm key plus f key for going down in the menu, haven't tried). And keeping run stop pressed after reset to force basic immediate doesn't work, well, I guess there could be an issue when keyboard is initialized completely, or so. At this point I'm almost ready to clone and set up the build environment again to start hunting it myself. because it vexes me. First I was into whether tfc iii expects a certain hard reset state of the CIA (that vice doesn't set correctly) , but rather I think there's just got to be something specific here to the gpio handling on the pi side. Perhaps injecting some logging of certain things on some places can reveal something. Of course I can use final cartridge I if I just want the turbo functionality. And I mean games works just fine.

BTW, I have a thing inside the menu where there's a annoying flashing blue line just above the status bar, including the status bar itself (intermittently, not on every entry) Can be something with my TV or perhaps video settings (using the 50.120 setup at 720x576). Never mind that, gonna look at that later.