Выкладываю обновлённые версии ПЗУ М1, М2, М3 для КР580 для всех клавиатур с максимальным числом свободных ячеек. Они очень нуждаются в проверке (особенно версии для MS). Все выложенные ранее версии КР580 имеют недостатки и их следует удалить.
М2 для КР580 в данной выкладке имеет 297 свободных ячеек. Мне удалось достичь и 305 свободных ячеек. Однако при этом изображение самого символа оказывается центрованным, как в М3. А в М2 символ придвинут кверху знакоместа и на это ориентируется VC$, рисуя горизонтальные линии не по центру знакоместа. Поэтому, чтобы всё было как в оригинале М2 пришлось потратить ячейки.
Пока отлаживал MS-мониторы в эмуляторе, рассчитанном на РК-клавиатуру, придумал как с ПЗУ рассчитанном на MS-клавиатуру, пользоваться клавиатурой от РК. Для этого первоначально составил таблицу соответствия клавиш РК клавиатуры клавишам MS-клавиатуры. Эта же таблица позволяет играть в игры, где прямой программный опрос MS-матрицы (если такие игры есть). Но для владельцев MS полезно составить обратную программу, чтобы играть в игры для РК-клавиатуры на MS-клавиатуре.
А потом для удобства векторизовал F81B (как сделано в М3 для Z80) и написал драйвер EXT$, который подменяет одни коды другими и в ORDOS грузится автоматически. Таким образом кое-как получил возможность пользоваться программами при ПЗУ для MS. По крайней мере запускать программы можно. К сожалению, в матрице MS-7007 больше линий и число кнопок больше, чем 64. Поэтому коды некоторых клавиш никак не ввести (можно сделать, чтобы, по крайней мере, можно было вводить все буквы, заменив некоторые редко используемые символы, типа '% * / ^ ~' на недоступные буквы).
Привожу список соответствия клавиш. Слева - то, что хотелось бы ввести, а справа - на что надо нажать. Как видите, не все коды нужных клавиш можно ввести, имея ROM-BIOS для MS, а клавиатуру для РК. Но пользоваться всеми программами, кроме текстовых редакторов, этого хватает. Список, возможно, не полный и даже, возможно, неточный (т.к не из реала). Во вложении программка позволяющую узнать коды. Она ещё понадобится при подключении корветовской клавиатуры вместо MS-7007. Для выхода удерживайте 5 секунд любую клавишу.
Код:
.
Соответствие клавиш с ROM-BIOS для MS-клавиатуры при матрице РК86
A...D M Y...B F1...CTP,ВК !...2
B...@ N...- Z...Y F2...F2 =...F4
C..." O...F [...0 F3...влево "...3
D...9 P ]...1 F4...вверх :...F5
E...7 Q ^...I F5...вправо %...5
F R...E ПС...F2 вниз...F2,U $...вниз
G...> S...K HOME..| вверх...] #...4
H...X T...M CTP...) вправ...W &...6
H..влево U...+,: забой..T влево..H )...CTP
I...G V...Q 4...R пробел...O /...F3
K...< W 5...Z ВК...пробел >...W
L...8 X...N 6...ESC R/L...R/L
Символы, что не ввести: . , _ 0 1 2 3 7 8 9 + - * ? F M P Q W