Scancodes etc for ADDS Space Invaders conversion NMB

User avatar
fohat
Elder Messenger

16 Jan 2017, 15:24

I got one of the NMB Hi-Tek "Space Invaders" ADDS terminals from Cindy. After replacing 1 switch and cleaning it up, it is a very nice keyboard. Soarer's Converter/Teensy works properly (after I connected the "reset" pin) for 90% of the keys.

However, there are a few keys that are not properly registered. At the top far right, past "Pause" there is a cluster of 4 function keys labeled F13-F-16. I would love to remap them, but they show up as F3-F6. In "Aqua Keytest" they return the same scan codes as F3-F6 and all the numbers are identical. From my limited knowledge, I will not be able to re-map them unless I can somehow differentiate them.

Another oddity is that in "Aqua Keytest" the arrow keys show up as 2-4-6-8 on the numpad, regardless of whether NumLock is on or off. In an opposite direction, numpad Enter always shows as main Enter, again regardless of NumLock status. I suppose that these weird numpad issues don't really matter, but I would like to understand them.

Thank you in advance for your help.

User avatar
scottc

16 Jan 2017, 15:29

Maybe they're returning different scancodes but Windows is registering them as F3-F6 for some reason?

Have you tried using hid_listen.exe to listen to what Soarer's converter thinks the scan code is? I usually do this and cross-references with the "key codes" section of his docs.

User avatar
fohat
Elder Messenger

16 Jan 2017, 16:08

The key codes from HID_listen and Aqua Keytest return the same values with one difference:

HID_listen returns 2 lines for each key press. Each line of F13-F16, the arrow keys, and numpad Enter is preceded by re0 and then the rest of the line is the same as for the (presumably) primary keys for that function, for example:

F3 returns:

r04 +3C d3C
rF0 r04 -3C

while F13 returns:

re0 r04 +3C d3C
re0 rF0 r04 -3C

What can I do with that information?

User avatar
scottc

16 Jan 2017, 16:13

The first line is the key being pressed, the second is it being released. From the docs, the "rXX" parts mean that it read data (so can be ignored). From the output, it looks like they both register the "3C" scan code, which (from the Soarer's docs at docs/codes.html) is F3... I was hoping that Soarer's or Windows was doing something smart but it looks like the controller is just sending an F3 scan code after all. I don't know of any way to fix that apart from replacing the controller, sorry.

anjorno

17 Jan 2017, 00:54

You'll need a Set 3 translation hybridized with an Extended Set 2 E0 prefix parser.

[edit] Sorry, I had the wrong idea there. That's just some extra Extended Set 2. You can handle that in the TMK PS/2 converter, with an edited Set 2 detection bit matrix.

User avatar
alh84001
v.001

17 Jan 2017, 16:23

I saw XMIT somewhere mention that for Soarer's you need to force the set with
force set2ext

BTW, I tried mine with Orihalcon's converter through a RJ10->PS/2 adapter, without forcing the keyset and I got no life out of my board. The same setup worked great with Dolch PAC. I hope it's jus't the matter of connecting the reset pin and forcing the set, and not that the board is dead :/

User avatar
fohat
Elder Messenger

17 Jan 2017, 16:59

alh84001 wrote:
you need to force the set with
force set2ext
How is this done?

Thanks

User avatar
alh84001
v.001

17 Jan 2017, 17:59

XMIT wrote:

Code: Select all

$ echo "force set2ext" > set2ext.sc
$ tools/scas set2ext.sc set2ext.sca
$ tools/scwr set2ext.sca
Either position yourself where you unpacked soarer's converter (v1.10) or adjust the path where tools actually reside.

Now I see It was actually a conversation between the two of you :)

User avatar
XMIT
[ XMIT ]

17 Jan 2017, 19:19

fohat, when you get this all figured out, could you please update the Wiki accordingly, or update the first post of this thread to be a how-to? The helpful hints for these boards are all over place: the pinouts, the fact that some are ASCII and others are PS/2, these scan code tricks, etc.

Here are the previous discussions I was able to find, including my mention of set2ext :
vendors-f52/scrounging-day-t14127-150.html#p320401
vendors-f52/wts-white-space-invaders-ad ... t8659.html
keyboards-f2/rj11-space-invader-conversion-t14674.html
workshop-f7/nmb-hi-tek-those-pesky-rj-c ... 14222.html

(I'm happy to help but the information needs to be all in one place so others can find it. Google helped me to find my previous posts.)

anjorno

17 Jan 2017, 20:22

Fohat, your Soarer's Converter was already receiving in set2ext, based on your output. I had momentarily assumed you were talking about a Set 3 keyboard (with some odd set2ext-style extra keys) just because it's a "terminal keyboard," but that's a Set 2 keyboard, right?

It would be great if we could get some additional set2ext scancodes added to SC. I may try to decompile the thing myself.

[edit] Oh, that's funny: the converter detects the keyboard as set2 instead of set2ext? I still don't expect that telling the converter to receive the keyboard as set2ext will get you the four extra function keys as independent keys though.

Post Reply

Return to “Workshop”