С любовью к вам, Yandex.Direct
Размещение рекламы на форуме способствует его дальнейшему развитию
Джойстики всех систем находятся на портах ниже $10, а их не перехватить на чтение c ВУ. Устройства на этих портах напрямую висят на шине процессора и их не отключишь через БЛК. Поэтому мой джойстик на порту $2e/2f вместо обычного $e/$f. Это не очень красиво, но я пока лучше решения не вижу. Патченье игрушек задача тривиальная и для известных ромов будет выполняться на ходу.
Сейчас у меня поддержана только загрузка с образа дискеты. Чтобы сделать загрузку индивидуального рома, требуется сразу много вещей. На самом поверхностном уровне это примерно такие задачи:
* интерфейс загрузки и выбора рома на сд-карте, аналогичный выбору дискеты
* собственно загрузка рома куда-то, где загрузчик его найдет. Проще всего наверное сделать фальшивую дискету.
Просто подпихнуть ром с игрушкой вместо рома загрузчика -- это возможно в порядке хаки, но это не очень-то красиво и практически никак не упростит задачу.
Больше игр нет
Это схемное решение Вектора 06Ц. Там при чтении из портов с адресом ниже 10h шина данных отключается от ВУ. И к процессору остаются подключенными только ВИ53 и два ВВ55-ых.
- - - Добавлено - - -
Вот интересно, что за анализ кода делается, для того чтобы принять решение, на изменение номера порта в коде программы?Сообщение от svofski
Не думаю, что достаточно поиска "in 0Fh" или "in 0Eh". Ведь аналогичная последовательность HEX-кодов может встретиться в картинках, и хорошо если они не сжаты в scr, тогда при распаковке получим полный бардак...
KTSerg, вручную разумеется.
Есть еще способ. Вынюхать инструкции in можно, слушая шину. А потом, зная где они, подмахивать коды порта. Это технически выполнимо, интересно, но чуть чуть лихо для столь молодого проекта.
Больше игр нет
Только сейчас пришла в голову "крамольная мысля"...
В "штатном" загрузчике есть загрузка с "внешней ПЗУ" висящей на адресах F0h-F3h ... Значит эти адреса были "зарезервированы" для ВВ55 посаженной на шину "ВУ" ...
Что мешает перевесить джойстик с "ПУ" на "ВУ" ? (не беря во внимание необходимость замены номеров портов в софте)...
KTSerg, так у меня сейчас вот так и сделано. На ВУ на портах 2e,2f.
Больше игр нет
Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)