Опубликовал v0.3 в первом посте и на GitHub.
Но до сих пор из-за упрощённой эмуляции К580ВВ55А не работает управление в играх, которые для опроса клавиатуры используют собственные процедуры, а не пользуются стандартной подпрограммой "Загрузчика". Пока я нашёл три таких программы:
- Тест С.Рюмика
- Игра Gold
- Игра Jet-Set Willy
Наверняка есть и другие игры.
Я делал эмуляцию клавиатуры на основании анализа работы "Загрузчика". Свои изыскания опубликовал у себя в дневнике. Однако другие программы используют какие-то нюансы работы ВВ55А. Эти программы записывают байты в порты (не в регистр управления!), а потом считывают данные с соседнего порта и на основании того, что считалось, делают вывод о том нажата кнопка или нет. Закономерность того, что и в каких случаях считывается я так и не смог понять. Может быть кто-то сможет разъяснить?
Вот, например, тест С.Рюмика в режиме работы порта #82 (канал B на считывание), последовательно засылает в канал С значения 0E, 0D, 0B. Если нажата кнопка F (левая верхняя на клавиатуре Специалиста), то после засылки этих значений из канала B считывается FF. Но если подать в канал С значение 7, то из канала B считывается 7F - сбрасывается старший бит, который как раз соответствует столбцу клавиши F на клавиатуре. Почему так происходит я понять не могу. В моём эмуляторе сейчас всегда будет считываться 7F, если нажата клавиша F, какие бы байты не засылали в соседние каналы.

