Я тут от небольшого безделья немного покопался в одной из моих любимых игр на РК - http://rk86.ru/index.html?file=RESCUE.GAM
План был сделать хак для бессмертия. Для просто нейтрализации счетчика вертолетов можно даже не верверсить, а как в старину сравнить дампы памяти в процессе игры. Но тут случай интереснее - хотелось получить неуязвимость при столкновении. Но как оказалось, там очень много разных мест, где проверяются коллизии, поэтому я просто отключил обработку лавы и пепла. Теперь можно спокойно перетаскивать всех людишек.
Хак:
0517: C5 -> C9
082F: 3A -> C9
Можно просто запатчить в Мониторе командой М перед запуском. Можно через консоль эмулятора.
Если честно, то я удивлен, насколько кучеряво игра написана. Дофига движухи на экране. Реализованы очереди для пуль и пепла. Заставка, ландшафт горы и схождения лавы хранятся в примитивной компрессии. Экранная область не используется, все только через Монитор, но есть внутренне хранения содержимого экрана.
Для любителей-некрофилов я приаттачил LSTшку с моим анализом. Там 60% игры более менее разобрано. Для особых маньяков, могу дать базу от IDA, если охота продолжить.
ОБНОВЛЕНИЕ (15.04.2026)
Я таки добил разбор исходника Volcano практически на 100%. Недокументированных кусков больше нет.
Исходник компилируется байт в байт совпадает с оригинальный бинарником.
Еще по ходу запилил реализацию на питоне для консоли. Геймплей практически совпадает.
Ну чтоб еще раз не вставать - вот оригинал игры для BBC Micro.
Дизассемблирование игры Volcano (Rescue, Вертолет)
Moderator: Shaos
-
begoon
- Senior
- Posts: 165
- Joined: 22 Aug 2012 17:06
- Location: 188.220.42.216
Дизассемблирование игры Volcano (Rescue, Вертолет)
Last edited by begoon on 15 Apr 2026 12:40, edited 2 times in total.
-
alemorf
- Senior
- Posts: 132
- Joined: 03 Jan 2017 08:58
- Location: SPb
Re: Дизассемблирование игры Volcano (Rescue, Вертолет)
надо кнопку с пальцем вверх на форум добавить.
-
begoon
- Senior
- Posts: 165
- Joined: 22 Aug 2012 17:06
- Location: 188.220.42.216
Re: Дизассемблирование игры Volcano (Rescue, Вертолет)
Ремейк Volcano на JavaScript.
ОБНОВЛЕНИЕ
У кого есть контроллер, типа для X-box'a -- можно и им играть.
У кого есть контроллер, типа для X-box'a -- можно и им играть.
You do not have the required permissions to view the files attached to this post.
Last edited by begoon on 16 Apr 2026 05:02, edited 1 time in total.
-
imsushka
- Doomed
- Posts: 380
- Joined: 01 Jan 2022 04:34
- Location: USSR, Tashkent
Re: Дизассемблирование игры Volcano (Rescue, Вертолет)
Эта хоть нормально написанна. при дизассемблировании понятно все.
я тут хотел Рикошет посмотреть/подправить, а то тормознуто/лагающе играется. Может тормозит, а может так задуманно.
Загрузил в ИДУ. И все. Игра написанна на ЯВУ. причем компилятор как то уж жутко все собрал.
кароч не асилил.
я тут хотел Рикошет посмотреть/подправить, а то тормознуто/лагающе играется. Может тормозит, а может так задуманно.
Загрузил в ИДУ. И все. Игра написанна на ЯВУ. причем компилятор как то уж жутко все собрал.
кароч не асилил.
-
begoon
- Senior
- Posts: 165
- Joined: 22 Aug 2012 17:06
- Location: 188.220.42.216
Re: Дизассемблирование игры Volcano (Rescue, Вертолет)
Практически добил разбор Лестницы.
Увы, тут игру точно писали либо на С, или скорее всего даже на PL/M-80, поэтому код раздут, много церемоний со стеком, использование hl как указателя и пр. В целом, познавательно.
Я полностью восстановил карты уровней, их кодировку, и сохранил их в текстовые файлы.
У меня еще есть мысли, где покопать, но в целом, для создания ремейка информации достаточно.
Да, важно упомянуть, что исходник компилируется и проверяется на совпадение с оригиналом.
Увы, тут игру точно писали либо на С, или скорее всего даже на PL/M-80, поэтому код раздут, много церемоний со стеком, использование hl как указателя и пр. В целом, познавательно.
Я полностью восстановил карты уровней, их кодировку, и сохранил их в текстовые файлы.
У меня еще есть мысли, где покопать, но в целом, для создания ремейка информации достаточно.
Да, важно упомянуть, что исходник компилируется и проверяется на совпадение с оригиналом.
-
imsushka
- Doomed
- Posts: 380
- Joined: 01 Jan 2022 04:34
- Location: USSR, Tashkent
Re: Дизассемблирование игры Volcano (Rescue, Вертолет)
лестница у меня есть. лежит на гитхабе. и я добавлял еще уровней.begoon wrote: 16 Apr 2026 14:28 Практически добил разбор Лестницы.
Увы, тут игру точно писали либо на С, или скорее всего даже на PL/M-80, поэтому код раздут, много церемоний со стеком, использование hl как указателя и пр. В целом, познавательно.
Я полностью восстановил карты уровней, их кодировку, и сохранил их в текстовые файлы.
У меня еще есть мысли, где покопать, но в целом, для создания ремейка информации достаточно.
Да, важно упомянуть, что исходник компилируется и проверяется на совпадение с оригиналом.
правда она уже не в чистом виде, а под меня переделанна.
и нет вроде, на асме написсано, ничего лишнего там не было.
-
begoon
- Senior
- Posts: 165
- Joined: 22 Aug 2012 17:06
- Location: 188.220.42.216
Re: Дизассемблирование игры Volcano (Rescue, Вертолет)
А ссылку можно?
-
imsushka
- Doomed
- Posts: 380
- Joined: 01 Jan 2022 04:34
- Location: USSR, Tashkent
