Процедура попроще:

XOR A
LD (23560),A
LD IY,#5C3A
RST 56

Вешается на прерывания. Последнюю нажатую клавишу можно получить из ячейки по адресу 23560.

По адресам 23561 и 23562 можно изменить задержку опроса клавиш.

Автор процедуры Fyrex/Mayhem.