garnizon пишет:Может кто-нибудь доступно объяснить, почему Агатовская версия Lode Runner прекрасно работает на реале
(в смысле с управлением там все в порядке), а в эмуляторах не слушает стрелок?
Там все просто, хотя чтобы это понять пришлось пару дней поработать дизассембером.
Возможно все, что я выяснил, всем давно известно, но я в Lode Runner раньше не играл. Когда я в школе учился, название игрушки было на слуху. Вроде я даже видел ее пару раз запущенной, но игрового процесса не помню, хоть убей.
Кстати, запустить Lode Runner в эмуляторе я тоже раньше пытался и сходу не смог понять, как им управлять. И вот, наконец, решил поставить точку в этом вопросе :)
Сначала оказалось, что я сделал "детскую" ошибку: эмулятор у меня по умолчанию грузился с ИКП-шного образа, я выбирал Бейсик, а дальше монтировал LODE[7].NIB, взятый с сайта, и писал "BRUN LODE RUNNER". Игра типа загружалась, показывала демонстрационный уровень, но при попытке начать игру просто мигала экраном и возвращалась в деморежим.
Дело в том, что агатовский Lode Runner содержит в себе кусок DOS. Этот кусок должен быть правильно проинициализирован - туда должен быть записан номер слота, в котором находится контроллер 140К. Загрузчик игры берет этот номер из адреса $B7B5. Но при загрузке с ИКП по этому адресу находится $FF. Игрушка тупо не может загрузить уровень с диска, проглатывает ошибку и возвращается в деморежим.
Тогда я стал грузиться непосредственно с диска с Lode Runner-ом. Уровни стали загружаться, но оказалось, что человечек стоит на месте и ни на какие кнопки не реагирует. Тогда я скачал образ для Apple и сравнил, как ведет себя оригинальная игрушка. Как ни странно, она тоже не реагирует на клавиши, но реагирует на пульты. Чтобы переключиться на клавиатуру, нужно нажать Ctrl+K.
В Агатовской версии комбинация клавиш осталась той же: УПР+К. И запускается Lode Runner в режиме управления с пультов. Только само управление с них полностью заблокировано. А главное, после переключения на клавиатуру человечек все равно остался стоять на месте.
Тут пришлось поискать коды клавиш. Они в игрушке встречаются в трех местах, так что сразу было непонятно, какие из них правильные. Так вот, влево-вправо герой двигается кнопками f1, f3, а вверх-вниз - кнопками f., f2. Когда я до этого перебирал все кнопки на клавиатуре, про функциональные кнопки я не подумал.
Короче, если человек давно не играл и решил запустить Lode Runner в эмуляторе, ему надо пройти такой квест:
1) угадать в каком DOS-е загрузиться
2) догадаться нажать УПР+К после запуска игры
3) вырастить третью руку, потому что левая занята кнопками f1-f3, правой надо жать f. и еще чем-то надо нажимать Q и shift+6, она же ^
Подозреваю, что большая часть желающих поиграть на этом квесте ломаются, ломают клавиатуру об монитор и находят занятие попроще :) Не удивительно, что понадобилась отдельная сборка эмулятора.
Может, стоит сделать более дружественную к эмуляторам версию диска? Или хотя бы выложить инструкцию на сайте?