Повторюсь: С точки зрения процессора, аппаратно клавиатура это набор бит, которые расположены в нескольких байтах двух-портового ОЗУ.
Задача перекодировщика конвертировать матрицу клавиатуры А в матрицу клавиатуры Б. Та что бы программы от Amstrad CPC которые напрямую доступаются к клавиатуре не заметили разницы. И если они ждут нажатия клавиш left+up в матрице Б, то получает эти нажатия если нажаты left+up в матрице А.




Ответить с цитированием