Карта памяти 0 1 2 3 4 5 6 7
----------------------------------------------------------------------------
0000-27FF RAM1 RAM1 RAM1 RAM1 RAM1 RAM1 RAM1 BIOS
2800-2FFF RAM1 RAM1 KBD KBD KBD KBD RAM1 BIOS
3000-6FFF RAM1 ROM32 RAM2-1 RAM2-2 RAM2-3 RAM2-4 RAM1 BIOS
7000-AFFF RAM1 ROM32 RAM1 RAM1 RAM1 RAM1 RAM1 BIOS
B000-DFFF RAM1 RAM1 RAM1 RAM1 RAM1 RAM1 RAM1 BIOS
E000-FFFF BIOS BIOS BIOS BIOS BIOS BIOS RAM1 BIOS
RAM1 - первые 64кБ памяти
RAM2 - вторые 64кБ памяти, видео, доступны страницами по 16кБ
ROM32 - 32кБ ПЗУ, подключаемое через слот расширения
BIOS - ПЗУ, в 7-ой карте повторяется каждые 2000h байт. После RESET активна
именно 7-ая карта, а PC=0, первая же команда JMP переходит в область
E000-FFFF, а там уже включается нулевая карта
KBD - область матрицы клавиатуры. Реально используется только 2800-2907
одно поле 2800-28FF образует матрицу 8х8 - основная клавиатура
второе поле 2900-2907 образует матрицу 3х8 - цифры/стрелки
итого 11х8
Младший байт адреса - выбор строк матрицы (1 бит - 1 строка),
байт по этому адресу - логическое ИЛИ значений строк (1 строка - 8 клавиш)
То есть ненулевое значение по адресу 28FFh означает хотя-бы одну нажатую
клавишу основной клавиатуры.