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

PET Keymap Problem #260

Open sean-skt opened 4 months ago

sean-skt commented 4 months ago

I cannot for the life of me figure out this keymap stuff.

I would like to use the PET 8000 80 column models but I cannot get 2 keys working that I really need, single quotes and SHIFT LOCK.

The actual PET 8032 had double quote above the '2' key and single quote above the '7' key. I am trying to use the symbolic keymap, and while there is a reference to "SingleQuote" at the bottom of the map file, I get the feeling this is not correct. When I try to use the single quote that is below the double quote on a standard US keyboard, I can't seem to get this to work. It just produces double quotes.

The other thing I cannot get working on the PET 8032 is SHIFT LOCK, which I REALLY need. In fact I cannot get SHIFT LOCK working on any machine, such as C64 or VIC-20.

Is everything I have mentioned something I can fix? If so, please let me know. Thanks.

randyrossi commented 4 months ago

Can you try changing the rpi_grus_sym.vkm to have just the one line with SingleQuote 1 0 0 instead of both ? Do you get a single quote? It's supposed to produce single quote when pressed without shift, and double when pressed with shift. I'm not sure why that's not working for you though. What happens when you type SHIFT+ 2? Do you get a @ ?

Some people suggest that holding both shift keys are the same time should trigger shift lock. Then press either right/left to unlock. I have not tried this though. It's a VICE feature that I never tested. Let me know if that works.

On Thu, Feb 29, 2024 at 6:55 AM sean-skt @.***> wrote:

I cannot for the life of me figure out this keymap stuff.

I would like to use the PET 8000 80 column models but I cannot get 2 keys working that I really need, single quotes and SHIFT LOCK.

The actual PET 8032 had double quote above the '2' key and single quote above the '7' key. I am trying to use the symbolic keymap, and while there is a reference to "SingleQuote" at the bottom of the map file, I get the feeling this is not correct. When I try to use the single quote that is below the double quote on a standard US keyboard, I can't seem to get this to work. It just produces double quotes.

The other thing I cannot get working on the PET 8032 is SHIFT LOCK, which I REALLY need. In fact I cannot get SHIFT LOCK working on any machine, such as C64 or VIC-20.

Is everything I have mentioned something I can fix? If so, please let me know. Thanks.

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

-- Randy Rossi

sean-skt commented 4 months ago

Hey Randy,

Thank you very much for your reply. A friend of mine helped me get the single quote working by editing "rpi_buus_sym.vkm". We edited this line:

SingleQuote 1 2 31

We changed '31' to '33' and the single quote key now works, that is, the one that is paired with a double quote on a standard US keyboard. He explained to me why we had to use that value of 33 but I'm still struggling to understand it. In answer to your question, yes, when I press SHIFT+ 2 I do get a '@'.

I did read about pressing both SHIFT keys to enable SHIFT LOCK, but that doesn't work for me. Again, I can't seem to get it to work for any machine.

Thanks. :)

BODYPRINT commented 3 months ago

Hi @randyrossi Just a follow up on this one. Holding both SHIFT keys doesn't work. In the rpi_buus_sym.vkm keymap file it has listed in the Negative Special Keys # 'keysym -4 1' CAPS (ASCII/DIN) key

This works in the other emulators, e.g. C128, but not on the PET. Should this be working? On the C128 I have CapsLock -4 1

Also the PET doesn't seem to have an option to bring up a virtual keyboard, even though the settings show a transparency setting for it. Should there be a Virtual Keyboard we can access for the PET?

Thanks again :)

randyrossi commented 3 months ago

I only see a caps handler for the C128 in VICE code, actually.

Can you try this?

CapsLock 6 0 64

The value 64 appears to be undocumented and it represents shift lock. Wondering if this turns the caps key into a shift lock for you. You could also try CapsLock -4 64 . If there is something you've found to work on desktop build of VICE it should work with BMC64 too. You can try on your PC first.

On Fri, Mar 15, 2024 at 9:50 AM Philip Merwarth @.***> wrote:

Hi @randyrossi https://github.com/randyrossi Just a follow up on this one. Holding both SHIFT keys doesn't work. In the rpi_buus_sym.vkm keymap file it has listed in the Negative Special Keys

'keysym -4 1' CAPS (ASCII/DIN) key

This works in the other emulators, e.g. C128, but not on the PET. Should this be working? On the C128 I have CapsLock -4 1

— Reply to this email directly, view it on GitHub https://github.com/randyrossi/bmc64/issues/260#issuecomment-1999710869, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAI3HKFLMR63JRQY4UMTM2DYYL4DXAVCNFSM6AAAAABD7ZAOWOVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTSOJZG4YTAOBWHE . You are receiving this because you were mentioned.Message ID: @.***>

-- Randy Rossi

BODYPRINT commented 3 months ago

Hi Randy, Unfortunately none of these work on the BMC64. I also tried 6 6 6 and 6 0 6 hoping it might trick it into a double shift somehow.

When you run it on the PC, the operating system on the PC is handling the Caps Lock key, so it's a bit different. BMC64 doesn't have the underlying operating system to Lock the shift key. If you can get it to work on a different key in VICE PC then I'd be curious to know how.

Cheers.

[EDIT] Trying VICE 3.2 on PC. Caps lock doesn't work out of the box. Will play with it more on PC Seems both Shift keys works in VICE 3.2, but not in BMC64 [/EDIT]