Close

An alternative method of reading the keyboard

A project log for Mystery 6502 program for the Kim Uno #1kBChallenge

The #1kBChallenge inspired me to dust off the Kim-Uno and write an Enigma Z30 simulator. This is a very rare numbers only Enigma Machine.

arduino-enigmaArduino Enigma 12/01/2016 at 04:540 Comments

I found that the display routine will have a value in the A register after it returns back to your program. This program displays that value.

* = $0100

0100 THIRD = 00F9

0100 START

0100 JSR $1F1F 20 1F 1F

0103 STA *THIRD 85 F9

0105 LDA #$00 A9 00

0107 SEC 38

0108 BCS START B0 F6

The values returned are:

78 xx xx xx

7E 7B 6F 54

3C 3B 3A 39

47 46 3E 3D

4B 4A 49 48

4F 4E 4D 4C

They are nice and repeatable, they can be translated to actual key values, but I have not found way to find out when the key is released. The 1F1F routine will keep returning the last key pressed on the A register.even after the key is released. This can be checked because the A register is set to 0 via LDA 00 after displaying it, but the display does not change back to 0 when the key is released.

Without finding a way to check that the key is released, this is not practical yet.

Discussions