Кажется, я понял, в чем тут дело было.
Сначала, почитав описание на сайте, я подумал, что Бадер сам добавил возможность отключения пультов. Вот взять хотя бы кнопку переключения "клавиатура/пульты". Это клавиша "=" на боковой клавиатуре, которой у Apple вообще нет.
Кажется логично, но на самом деле - нет. Процедура по адресу $17B6, которая отвечает за переключение "клавиатура/пульты", кнопку ESC и некоторые другие, уже была в оригинальной версии для Apple и перешла в Агатовскую без изменений. То есть, возможность переключаться между клавиатурой и пультами была и на Apple.
Спрашивается, а как же клавиша "f="? А это случайное совпадение. Эта клавиша генерирует такой же код, что и сочетание Ctrl+C, которое использовалось на Apple. И на Агате точно также можно нажать УПР+Ц.
Так, а зачем же понадобилось патчить код для управления пультами? А дело в том, что в оригинальной версии есть ошибка. Когда управление пультами вроде как отключено, на самом деле отключается только ввод направления движения корабля. А кнопки пультов продолжают работать. То есть, при отключенных пультах корабль будет стрелять непрерывно.
Хорошо бы, конечно, выяснить, это Тони Сузуки (автор игры) эту багу посадил или кто-то после него в игрушке что-то патчил и эта версия широко разошлась (в той версии, что я скачал с apple2.org.za уже кто-то ковырялся). Но, в общем, неважно. Штатное отключение пультов не работало и надо было что-то делать.
Было всего два варианта: найти багу, либо отключить работу с пультами насовсем. Видимо, второй вариант оказался проще.
Кстати, у игрушки есть еще одна настройка, про которую не написано на сайте. Процедура по адресу $17B6 понимает такие комбинации клавиш:
Ctrl+C УПР+Ц, f= Переключение "клавиатура/пульты" (Controls)
Ctrl+S УПР+С Включение/выключение звука (Sound)
Ctrl+R УПР+Р, f9 Перезапуск игры с самого начала (Restart)
ESC РЕД Пауза
Насчет звука могу сказать вот чего. Процедура генерации звука обычная. Ничего, что мешало бы ей работать на семерке я не вижу. Процедура точно такая же, как в оригинальной игре.
Есть две мысли, почему на семерке звук мог не работать:
1) случайно нажали УПР+С и выключили звук
2) процедура использует несколько рабочих массивов данных для создания звука. Перед тем, как издать звук, эти массивы заполняются из ресурсов игры. И вот содержимое этих массивов на Apple и на семерке отличается в момент окончания игры (проверял на эмуляторе). Возможно, в какой-то момент в эти массивы попадает неинициализированное содержимое памяти. И при каких-то значениях звук пропадает. Но тогда звук может пропадать и на девятке. По хорошему, надо много раз проверить игру на реальных Агатах, каждый раз выключая питание после проверки.
P.S.: одно не могу понять, зачем надо было вешать стрельбу на букву "Я"? Ведь пробелом, как в оригинале, стрелять удобнее.