Soarer's Keyboard Controller firmware
- Muirium
- µ
- Location: Edinburgh, Scotland
- Main keyboard: HHKB Type-S with Bluetooth by Hasu
- Main mouse: Apple Magic Mouse
- Favorite switch: Gotta Try 'Em All
- DT Pro Member: µ
Yes. Tabs and spaces are fine. scrd makes a bit of a messy file. A lot of stuff — ifset any, ifkeyboard any, etc. — is superfluous on the controller. You're seeing a lot of default values.
-
- Location: UK
- Main keyboard: Filco ZERO green alps, Model F 122 Terminal
- Main mouse: Ducky Secret / Roller Mouse Pro 1
- Favorite switch: MX Mount Topre / Model F Buckling
- DT Pro Member: 0167
Thanks for all your help now all i need to do is fix my T key as its a different style than the others and its too high and its doing my bloody head in.
![Image](http://i.imgur.com/QFS0vFK.jpg)
Tempted to put my second APL set on it.
![Image](http://i.imgur.com/QFS0vFK.jpg)
Tempted to put my second APL set on it.
- Crossfire
- Location: Slovenia
- Main keyboard: IBM Model F
- Main mouse: Ouroboros
- Favorite switch: BS
- DT Pro Member: -
Hi folks,
I've modded a model m with soarer's in a pro micro atmega32u4 successfully, now I'm trying to do the same on a 88' cherry g80-1000had. As far as the connection goes, all four - data, clock, vcc and gnd are correctly connected. Pro micro is flashed with arduino builder, it's runnung on soarer's 1.11 version - again correctly and working.
When triggering the switches nothing happens, when testing led's in aqua test, they work.
Now, do I have to manually configure each switch or what's the key to configure the .sc file to work with this good old cherry board. Does anyone have an idea?
I've modded a model m with soarer's in a pro micro atmega32u4 successfully, now I'm trying to do the same on a 88' cherry g80-1000had. As far as the connection goes, all four - data, clock, vcc and gnd are correctly connected. Pro micro is flashed with arduino builder, it's runnung on soarer's 1.11 version - again correctly and working.
When triggering the switches nothing happens, when testing led's in aqua test, they work.
Now, do I have to manually configure each switch or what's the key to configure the .sc file to work with this good old cherry board. Does anyone have an idea?
- Halvar
- Location: Baden, DE
- Main keyboard: IBM Model M SSK / Filco MT 2
- Favorite switch: Beam & buckling spring, Monterey, MX Brown
- DT Pro Member: 0051
You should not have to configure anything normally, as the G80-3000 has a standard layout. Can you post what hid_listen prints when you connect the converter (with keyboard connected) to the computer?
- Halvar
- Location: Baden, DE
- Main keyboard: IBM Model M SSK / Filco MT 2
- Favorite switch: Beam & buckling spring, Monterey, MX Brown
- DT Pro Member: 0051
OK, that's what's expected. The keyboard is recognized to be an AT/PS2 model. In that case I've no idea what's wrong, sorry.
Do more "random" characters appear when you press keys?
If so:
Maybe you could try to send an empty config file? Was the ProMicro used before for something else?
If not:
Do you have another PS/2->USB converter or old computer that you could use to test if the keyboard is ok?
Do more "random" characters appear when you press keys?
If so:
Maybe you could try to send an empty config file? Was the ProMicro used before for something else?
If not:
Do you have another PS/2->USB converter or old computer that you could use to test if the keyboard is ok?
- Crossfire
- Location: Slovenia
- Main keyboard: IBM Model F
- Main mouse: Ouroboros
- Favorite switch: BS
- DT Pro Member: -
Spoiler:
![Smile :)](./images/smilies/icon_e_smile.gif)
![Wink ;)](./images/smilies/icon_e_wink.gif)
-
- Location: US
- Main mouse: Corsair M95
- Favorite switch: Cherry Blue
- DT Pro Member: -
I've created my configuration files, and loaded your atmega32u4 firmware onto my teensy 2.0. I can't figure out how to use scas.exe to convert the configuration files to binary. I feel like I'm missing something fairly simple here. Thanks soarer for all your work in this firmware!
- Nuum
- Location: Germany
- Main keyboard: KBD8X Mk I (60g Clears), Phantom (Nixdorf Blacks)
- Main mouse: Corsair M65 PRO RGB
- Favorite switch: 60g MX Clears/Brown Alps/Buckling spring
- DT Pro Member: 0084
I'm trying to use Soarers Controller with a Teensy++ 2.0 for my IBM 5140 keyboard. I used the same config as copter did in his thread: workshop-f7/ibm-5140-convertible-conver ... ml#p282477
I adapted his code to my wiring, but when flashing with scaswr.bat I get an error message with scwr: "Sending information request: failed" or an "err 2: file not found on the device"
Does anyone have an idea why this happens?
I accidentally used D6 (Pin with LED), but that should affect the flashing, right?
I adapted his code to my wiring, but when flashing with scaswr.bat I get an error message with scwr: "Sending information request: failed" or an "err 2: file not found on the device"
Does anyone have an idea why this happens?
I accidentally used D6 (Pin with LED), but that should affect the flashing, right?
- Nuum
- Location: Germany
- Main keyboard: KBD8X Mk I (60g Clears), Phantom (Nixdorf Blacks)
- Main mouse: Corsair M65 PRO RGB
- Favorite switch: 60g MX Clears/Brown Alps/Buckling spring
- DT Pro Member: 0084
After desoldering the Teensy from the keyboard flashing with scaswr.bat works, but still only every third or so time. Odd.
- solkoseryl
- Location: Rostov-on-Don, Russia
- Main keyboard: F XT <> ErgoDox Blues <> UniComp M
- Main mouse: Logitech X4
- Favorite switch: Capacitive Buckling Spring
- DT Pro Member: -
- Nuum
- Location: Germany
- Main keyboard: KBD8X Mk I (60g Clears), Phantom (Nixdorf Blacks)
- Main mouse: Corsair M65 PRO RGB
- Favorite switch: 60g MX Clears/Brown Alps/Buckling spring
- DT Pro Member: 0084
Most probably yes, in the meantime I tried flashing other firmwares and nothing works properly. It works for a few seconds after connecting and then crashes. So if I e.g. use Soarer's controller I can type for a few seconds and then keys get stuck randomly for a few more seconds before it completely stop working.
Any idea to somehow "reset" the teensy in case something is wrong with the bootloader or something?
Any idea to somehow "reset" the teensy in case something is wrong with the bootloader or something?
- solkoseryl
- Location: Rostov-on-Don, Russia
- Main keyboard: F XT <> ErgoDox Blues <> UniComp M
- Main mouse: Logitech X4
- Favorite switch: Capacitive Buckling Spring
- DT Pro Member: -
Have you tried to isolate the D6 pin from the rest of the scheme and take a look how everything will go in that case? Because I was told that using the LED pin could lead to instablility in the work of Teensy.
- alh84001
- v.001
- Location: EU-HR-ZG
- Main keyboard: unsaver
- Main mouse: logitech m305 / apple trackpad
- Favorite switch: BS
- DT Pro Member: -
Forgive me if this has been asked, but an idea popped into my mind, and I want someone to squash it if it's not plausible.
I know this controller can be used with Bigfoot in conjunction with the original controller, as it basically has no logic on it. Did anyone attempt to do the same with Displaywriter boards (either beam spring or buckling spring) or even blue switch model Fs (3178)? I'm not sure if the same mechanism can be used as for Bigfoots, but my dumb reasoning is that cables and pin count is similar, so it might be possible.
I'm asking because it would be nice to skip the whole kerfuffle with getting a beam spring Displaywriter controller. I just converted my buckling spring Displaywriter and 3178 board yesterday using xwhatsit's controller and the ship has sailed on those![Smile :)](./images/smilies/icon_e_smile.gif)
P.S. It begs repeating, Soarer is really missed.
I know this controller can be used with Bigfoot in conjunction with the original controller, as it basically has no logic on it. Did anyone attempt to do the same with Displaywriter boards (either beam spring or buckling spring) or even blue switch model Fs (3178)? I'm not sure if the same mechanism can be used as for Bigfoots, but my dumb reasoning is that cables and pin count is similar, so it might be possible.
I'm asking because it would be nice to skip the whole kerfuffle with getting a beam spring Displaywriter controller. I just converted my buckling spring Displaywriter and 3178 board yesterday using xwhatsit's controller and the ship has sailed on those
![Smile :)](./images/smilies/icon_e_smile.gif)
P.S. It begs repeating, Soarer is really missed.
- alh84001
- v.001
- Location: EU-HR-ZG
- Main keyboard: unsaver
- Main mouse: logitech m305 / apple trackpad
- Favorite switch: BS
- DT Pro Member: -
As opposed to Bigfoot which has parallel data lines, Displaywriter has a serial data line. I suppose this means that Soarer's controller can't be configured for that, but it doesn't rule out custom converter.
Some pics from http://bitsavers.trailing-edge.com/pdf/ ... _Feb83.pdf
![Image](http://i.imgur.com/3uWpxGp.png)
![Image](http://i.imgur.com/2ljADJY.png)
![Image](http://i.imgur.com/NSieg8P.png)
(Type A is beam spring, Type B is buckling spring)
Some pics from http://bitsavers.trailing-edge.com/pdf/ ... _Feb83.pdf
![Image](http://i.imgur.com/3uWpxGp.png)
![Image](http://i.imgur.com/2ljADJY.png)
![Image](http://i.imgur.com/NSieg8P.png)
(Type A is beam spring, Type B is buckling spring)
Last edited by alh84001 on 24 Nov 2016, 14:29, edited 1 time in total.
- Wodan
- ISO Advocate
- Location: ISO-DE
- Main keyboard: Intense Rotation!!!
- Main mouse: Logitech G903
- Favorite switch: ALL OF THEM
- DT Pro Member: -
There's a user from Austria who has reverse engineered the soarer converter. Don't think he's taken on the soarer controller yet ...
His username is Arakula and he's been desperate to get in touch with Soarer as well. Maybe get in touch with him for more details![Smile :)](./images/smilies/icon_e_smile.gif)
His username is Arakula and he's been desperate to get in touch with Soarer as well. Maybe get in touch with him for more details
![Smile :)](./images/smilies/icon_e_smile.gif)
- seebart
- Offtopicthority Instigator
- Location: Germany
- Main keyboard: Rotation
- Main mouse: Steelseries Sensei
- Favorite switch: IBM capacitive buckling spring
- DT Pro Member: 0061
- Contact:
-
- Location: Austria, Europe
- Main keyboard: Unicomp PC/5250
- DT Pro Member: -
- Contact:
That was the Converter, not the Controller. I have reverse-engineered the Controller V1.20 beta4, too, but that's still 100% untested. If you want the code, PM me. The big question is - how should that help in this context? I'm not the hardware guru that's needed here, Soarer was ... so yes, I'd really still love to get in touch with him.
- alh84001
- v.001
- Location: EU-HR-ZG
- Main keyboard: unsaver
- Main mouse: logitech m305 / apple trackpad
- Favorite switch: BS
- DT Pro Member: -
Yeah, I know. And I would love to try and tackle it, but unfortunately, the idea didn't occur to me until after I did a controller swap. Right now I don't have hardware to test it with (unless someone want to donate a Displaywriter board for keyboard science
), so until I get another board, me accessing the code would only serve to scratch my curiosity itch.
![Wink ;)](./images/smilies/icon_e_wink.gif)
- alh84001
- v.001
- Location: EU-HR-ZG
- Main keyboard: unsaver
- Main mouse: logitech m305 / apple trackpad
- Favorite switch: BS
- DT Pro Member: -
I'm trying to do the same, and I almost got it. One issue I have is with column 6 (F5, 5, T, G, B, Space). When I press any key in that column, I get presses registered for every key in the same row in which the pressed key is. That column is connected to PD3. Here's my config file, which is based on copter's so there's nothing out of the ordinary:Nuum wrote: I'm trying to use Soarers Controller with a Teensy++ 2.0 for my IBM 5140 keyboard. I used the same config as copter did in his thread: workshop-f7/ibm-5140-convertible-conver ... ml#p282477
I adapted his code to my wiring
Code: Select all
ifset any
ifkeyboard any
ifselect any
matrix
scanrate 1
strobe_mode 0
sense_polarity 0
debounce 5
blocking 1
debounce_method 0
sense_delay 1
sense PF7 PF6 PF5 PF4 PF1 PF0
strobe PB0 DELETE BACKSPACE UNASSIGNED UNASSIGNED UNASSIGNED RIGHT
strobe PB1 INSERT BACKSLASH UNASSIGNED ENTER FN2 DOWN
strobe PB2 NUM_LOCK MINUS LEFT_BRACE QUOTE RSHIFT UP
strobe PB3 F10 0 P SEMICOLON SLASH LEFT
strobe PB5 F3 3 E D C UNASSIGNED
strobe PB6 F4 4 R F V UNASSIGNED
strobe PB7 F9 9 O L PERIOD RALT
strobe PD0 F8 8 I K COMMA UNASSIGNED
strobe PD1 F7 7 U J M UNASSIGNED
strobe PD2 F6 6 Y H N UNASSIGNED
strobe PD3 F5 5 T G B SPACE
strobe PD4 F2 2 W S X LALT
strobe PD5 SCROLL_LOCK EQUAL RIGHT_BRACE UNASSIGNED UNASSIGNED UNASSIGNED
strobe PD6 ESC BACK_QUOTE TAB CAPS_LOCK LSHIFT LCTRL
strobe PD7 F1 1 Q A Z FN1
end
layerblock
FN1 1
endblock
remapblock
layer 1
LEFT HOME
RIGHT END
UP PAGE_UP
DOWN PAGE_DOWN
LCTRL LGUI
FN2 PRINTSCREEN
NUM_LOCK PAUSE
endblock
Edit: I got it workng. I actually did two things:
1) I rewired the column to another pin on Teensy (PB4)
2) I put a bit of electrical tape on the mini-USB cable connector. I had to thin the connector with a Dremel earlier, and I exposed a tiny bit of shielding. It's possible it touched a pin or two around the spacebar position, so it might have caused some electrical issues.
I think it's more probable that the second thing worked. In any case, it's nice to have it working, I typed this edit on it
![Smile :)](./images/smilies/icon_e_smile.gif)
-
- Location: Argentina
- Main keyboard: Ti-99/4A
- DT Pro Member: -
Hi. Sorry for being such a noobie. I have a Teensy 2++ board. I'm trying to have a Ti-99/4A working keyboard. Thing is, I do not know how to program the Teensy with the config file (.sc) I've created. I have downloaded the Soarer files, including the *AT90USB1286.hex file, and the teensy.exe, but I don't know how to "merge" my .sc with the .hex in order to have my custom .hex file for programming the Teensy.
Anyone who could guide me? Thanks.
Anyone who could guide me? Thanks.
-
- Location: Belgium, land of Liberty Wafles and Freedom Fries
- Main keyboard: G80-3K with Clears
- Favorite switch: Capacitative BS
- DT Pro Member: 0049
@K-rnix: it doesn't need merging.
Open the Teensy programming software and use it to program your Teensy++ with the AT90USB1286.hex.
Then go to the tools directory in Soarer's controller folder and extract the tools for your operating system (Windows, mac, Linux), then copy your .sc file into the same folder as those programs.
Now run the following:
Open the Teensy programming software and use it to program your Teensy++ with the AT90USB1286.hex.
Then go to the tools directory in Soarer's controller folder and extract the tools for your operating system (Windows, mac, Linux), then copy your .sc file into the same folder as those programs.
Now run the following:
- scas myconfig.sc compiled.bc
Check that no errors are shown. - scwr compiled.bc
-
- Location: Argentina
- Main keyboard: Ti-99/4A
- DT Pro Member: -
Thanks JBert. Now is all working. I have an issue tough:
I'm trying with a Commodore 64 keyboard, but I cannot get the remapping block to work when I try to use if_select in order to switch between PC mode and emulator mode (VICE positional).
the scaswr command says "error at line 315: invalid command". is the "endblock" of the remapblock. Why? I don't know... same thing if I put the remapblock somewhere else.
I use the NUM_LOCK as SELECT_1 (so I can know what mode is on by looking at the LED)
This is the sc file:
I'm trying with a Commodore 64 keyboard, but I cannot get the remapping block to work when I try to use if_select in order to switch between PC mode and emulator mode (VICE positional).
the scaswr command says "error at line 315: invalid command". is the "endblock" of the remapblock. Why? I don't know... same thing if I put the remapblock somewhere else.
I use the NUM_LOCK as SELECT_1 (so I can know what mode is on by looking at the LED)
This is the sc file:
Code: Select all
# Matrix setup for COMMODORE 64
led caps -PB5
led num -PB6
led scroll -PB4
matrix
scanrate 1
debounce 5
blocking 1
sense PC0 PC1 PC2 PC3 PC4 PC5 PC6 PC7 PE0
strobe PF0 1 ESC LCTRL RALT SPACE LGUI Q 2 UNASSIGNED
strobe PF1 3 W A LSHIFT Z S E 4 UNASSIGNED
strobe PF2 5 R D X C F T 6 UNASSIGNED
strobe PF3 7 Y G V B H U 8 UNASSIGNED
strobe PF4 9 I J N M K O 0 UNASSIGNED
strobe PF5 LANG_1 P L COMMA PERIOD LANG_3 LANG_4 MINUS UNASSIGNED
strobe PF6 BACKSLASH LANG_2 SEMICOLON SLASH RSHIFT EQUAL UP HOME UNASSIGNED
strobe PF7 BACKSPACE ENTER RIGHT DOWN F1 F3 F5 F7 UNASSIGNED
strobe PB0 UNASSIGNED UNASSIGNED UNASSIGNED UNASSIGNED UNASSIGNED UNASSIGNED UNASSIGNED UNASSIGNED END
end
ifselect any
macroblock
macro F5 LGUI LSHIFT #NUM_LOCK
PUSH_META CLEAR_META ALL
PRESS NUM_LOCK
PRESS SELECT_1
POP_ALL_META
endmacro
endblock
macroblock
macro F3 LGUI SHIFT #CAPS_LOCK
PUSH_META CLEAR_META ALL
PRESS CAPS_LOCK
POP_ALL_META
endmacro
macro F7 LGUI SHIFT #SCROLL_LOCK
PUSH_META CLEAR_META ALL
PRESS SCROLL_LOCK
POP_ALL_META
endmacro
endblock
macroblock
macro RIGHT SHIFT #LEFT
PUSH_META CLEAR_META ALL
PRESS LEFT
POP_ALL_META
endmacro
macro DOWN SHIFT #UP
PUSH_META CLEAR_META ALL
PRESS UP
POP_ALL_META
endmacro
macro HOME SHIFT #PAGE UP
PUSH_META CLEAR_META ALL
PRESS PAGE_UP
POP_ALL_META
endmacro
macro END SHIFT #PAGE DOWN
PUSH_META CLEAR_META ALL
PRESS PAGE_DOWN
POP_ALL_META
endmacro
macro BACKSPACE SHIFT #DELETE
PUSH_META CLEAR_META ALL
PRESS DELETE
POP_ALL_META
endmacro
endblock
macroblock
macro 2 SHIFT #2
PUSH_META CLEAR_META ALL
MAKE LSHIFT
PRESS QUOTE
BREAK LSHIFT
POP_ALL_META
endmacro
macro 6 SHIFT #6
PUSH_META CLEAR_META ALL
MAKE LSHIFT
PRESS 7
BREAK LSHIFT
POP_ALL_META
endmacro
macro 7 SHIFT #7
PUSH_META CLEAR_META ALL
PRESS QUOTE
POP_ALL_META
endmacro
macro 8 SHIFT #8
PUSH_META CLEAR_META ALL
MAKE LSHIFT
PRESS 9
BREAK LSHIFT
POP_ALL_META
endmacro
macro 9 SHIFT #9
PUSH_META CLEAR_META ALL
MAKE LSHIFT
PRESS 0
BREAK LSHIFT
POP_ALL_META
endmacro
macro LANG_1 #+
PUSH_META ASSIGN_META LSHIFT
PRESS EQUAL
POP_META
endmacro
macro MINUS SHIFT #-
PUSH_META ASSIGN_META LSHIFT
PRESS MINUS
POP_META
endmacro
endblock
macroblock #Teclas_nulas
macro 0 SHIFT #0
PUSH_META CLEAR_META ALL
PRESS 0
POP_ALL_META
endmacro
macro LANG_1 SHIFT #+
PUSH_META CLEAR_META ALL
POP_ALL_META
endmacro
macro LANG_4 SHIFT #@
PUSH_META ASSIGN_META LSHIFT
PRESS 2
POP_META
endmacro
macro LANG_2 SHIFT #*
PUSH_META CLEAR_META ALL
POP_ALL_META
endmacro
macro EQUAL SHIFT #=
PUSH_META CLEAR_META ALL
PRESS EQUAL
POP_ALL_META
endmacro
endblock
macroblock
macro LANG_4 #@
PUSH_META ASSIGN_META LSHIFT
PRESS 2
POP_META
endmacro
macro LANG_2 #*
PUSH_META ASSIGN_META LSHIFT
PRESS 8
POP_META
endmacro
macro SEMICOLON SHIFT #]
PUSH_META CLEAR_META ALL
PRESS RIGHT_BRACE
POP_ALL_META
endmacro
macro LANG_3 SHIFT #[
PUSH_META CLEAR_META ALL
PRESS LEFT_BRACE
POP_ALL_META
endmacro
macro LANG_3 #:
PUSH_META ASSIGN_META LSHIFT
PRESS SEMICOLON
POP_META
endmacro
endblock
macroblock
macro F1 LSHIFT #F2
PUSH_META CLEAR_META ALL
PRESS F2
POP_ALL_META
endmacro
macro F3 LSHIFT #F4
PUSH_META CLEAR_META ALL
PRESS F4
POP_ALL_META
endmacro
macro F5 LSHIFT #F6
PUSH_META CLEAR_META ALL
PRESS F6
POP_ALL_META
endmacro
macro F7 LSHIFT #F8
PUSH_META CLEAR_META ALL
PRESS F8
POP_ALL_META
endmacro
macro F1 RSHIFT #F9
PUSH_META CLEAR_META ALL
PRESS F2
POP_ALL_META
endmacro
macro F3 RSHIFT #F10
PUSH_META CLEAR_META ALL
PRESS F4
POP_ALL_META
endmacro
macro F5 RSHIFT #F11
PUSH_META CLEAR_META ALL
PRESS F6
POP_ALL_META
endmacro
macro F7 RSHIFT #F12
PUSH_META CLEAR_META ALL
PRESS F8
POP_ALL_META
endmacro
endblock
macroblock
macro SPACE SHIFT #TAB
PUSH_META CLEAR_META ALL
PRESS TAB
POP_ALL_META
endmacro
macro SPACE ALT #ALT-TAB
PUSH_META CLEAR_META ALL
MAKE LALT
PRESS TAB
PRESS TAB
BREAK LALT
POP_ALL_META
endmacro
macro BACKSPACE LSHIFT RSHIFT #ALT-CTRL-DEL
PUSH_META CLEAR_META ALL
MAKE LALT
MAKE LCTRL
PRESS DELETE
BREAK LCTRL
BREAK LALT
POP_ALL_META
endmacro
macro F3 ALT #ALT-F4
PUSH_META CLEAR_META ALL
MAKE LALT
PRESS F4
BREAK LALT
POP_ALL_META
endmacro
endblock
ifselect 1
remapblock
ESC BACK_QUOTE
LCTRL TAB
RALT ESC
LGUI LCTRL
LANG_1 MINUS
LANG_3 SEMICOLON
LANG_4 LEFT_BRACE
MINUS EQUAL
BACKSLASH INSERT
LANG_2 RIGHT_BRACE
SEMICOLON QUOTE
EQUAL BACKSLASH
UP DELETE
END PAGE_UP
endblock
-
- Location: Belgium, land of Liberty Wafles and Freedom Fries
- Main keyboard: G80-3K with Clears
- Favorite switch: Capacitative BS
- DT Pro Member: 0049
You seem to be right, the END keycode on the next to last line is triggering an error.
I'm afraid that can't be solved without fixing sctools and rebuilding them. The quickest solution is likely to pick another key and bind that to PAGE_UP if possible.
I'm afraid that can't be solved without fixing sctools and rebuilding them. The quickest solution is likely to pick another key and bind that to PAGE_UP if possible.
-
- Location: Argentina
- Main keyboard: Ti-99/4A
- DT Pro Member: -
Thank you JBert. I did some workaround the bug and got it working.
Now I'm facing have another challenge: Giving the fact I'm using a Commodore 64 keyboard, I'm looking for a way to toggle between C64 mode and PC Mode. Mostly because I'm using Positional mode in VICE Emulator (most "pure" emulation). I'm planning to use the NUM_LOCK LED to indicate C64 mode is ON. Problem is I cannot tell if NUM_LOCK was ON already when I switch to C64 mode (some motherboards boot with NUM_LOCK on, another keyboard could be connected). If that is the case, even if C64 mode is working I have the LED light inverted.
You can see my attempt in the "ifselect any" following macroblock with F5 LGUI and LSHIFT macro.
So, is there a way to know the NUM_LOCK status (or SCROLL_LOCK for that matter)? AND/OR, is there a way to turn it off (instead of "toggling it") so I can be sure that is OFF before toggle it?
Thanks for your support.
Now I'm facing have another challenge: Giving the fact I'm using a Commodore 64 keyboard, I'm looking for a way to toggle between C64 mode and PC Mode. Mostly because I'm using Positional mode in VICE Emulator (most "pure" emulation). I'm planning to use the NUM_LOCK LED to indicate C64 mode is ON. Problem is I cannot tell if NUM_LOCK was ON already when I switch to C64 mode (some motherboards boot with NUM_LOCK on, another keyboard could be connected). If that is the case, even if C64 mode is working I have the LED light inverted.
You can see my attempt in the "ifselect any" following macroblock with F5 LGUI and LSHIFT macro.
So, is there a way to know the NUM_LOCK status (or SCROLL_LOCK for that matter)? AND/OR, is there a way to turn it off (instead of "toggling it") so I can be sure that is OFF before toggle it?
Thanks for your support.