Обычный, пятничный, вечер… Сижу, ни кого не трогаю (с) смотрю ютюбчик, отдыхаю… Попадаю на просмотр прохождения игры Oberon 69, в процессе рассказа об игре, выясняется, что на Spectrum она была только на Испанском языке и только на кассете, была дискетная версия от Max Iwamoto, полу англифицированная… И такА меня вдруг тоска ностальгия взяла и переживание за несправедливость… Решаю, что раз никто, тогда Я! Будем а) дискетизировать, б) англифицировать, в) русифицировать.
Для начала, скачиваем все (8) разновидностей игры, для всех платформ, а это: Amiga (скорее всего не пригодится, уж очень сильно отличается, в лучшую сторону), PC DOS (очень примитивная, из неё, скорее под БК-0010 переделывать, чем под Spectrum, возможно, потом и озабочусь, но БК в железе мне сейчас не достать, да и стоят они…), Amstrad CPC (она на Английском, будет куда подглядывать), MSX (пусть будет, для коллекции) и 2 для Spectrum, кассета и переделка от Iwamoto, с бессмертием и прочими плюшками.
Дальше начинается поиск инструментов для разборки/сборки образов кассет и дисков и прочего инструментария. Для начала эмулятор Spectrum, для проверки, т.к. на живых диско-кассетах проверять будет уж слишком муторно и длительно, я старый и ленивый. Эмулятор выбрал Fuse. Далее разбираем образ кассеты, выбираем:
Первым делом, кроссим финги (fingers cross) и осматриваем Basic загрузчик на предмет сюрпризов, и они там есть, мелкие, но если не забытые воспоминания и прочитанный свежак, было бы сложно и не понятно (и таки было, но не долго). Для этого используем:
И… ура! что мы видим? Дофига нефига, так что бери, сколько надо и… сегодня о другом. Понимаю, сначала, что ни чего не понимаю, но я же на опыте? Нет, но да. Удаляемся на партию с гухлом, находим статью с похожими развлечениями, в процессе думаем, вспоминаем… в Basic можно использовать спец символы и раскрашивать текст, даже в самой программе, убираем цвета, и
Ранее, мы уже видели в ZX-Blockeditor, что образ состоит из загрузчика, и 3х data модулей, один из которых вступление, один заставка и в последнем сама игра. То есть загрузчик, вроде как, без сюрпризов (нет). Пробуем ручками ввести те же комманды (то ещё удовольствие, basic 48 весьма своеобразен) и запустить… Кино не запускается, расходимся… но нет… думаем дальше, партия в гухол, воспоминания, чтение… пункты 2 (не страшно) и 6 (чуть сложнее) — наш случай, рассматриваем внутренности загрузчика:
в более человекочитаемом виде это выглядит как-то так:
0 CLEAR 25399:\ POKE 23613,0:\ PAPER 0:\ BORDER 0:\ BRIGHT 1:\ INK 0:\ CLS :\ LOAD "pres"CODE :\## 36864-45458$9000-B192 LOAD "pant"CODE 45458:\ ## 45458-52370$B192-CC92screen CLS :\ RANDOMIZE USR 29151:\## 39571$9A93 OVER 1:\ INK 0:\ PAPER 8:\ BRIGHT 8:\ FLASH 8:\ PRINT AT 16,0:\ LOAD "0"CODE :\## 25400-65024$6338-FE00 RANDOMIZE USR 65034## 35074$8902
идём в эмулятор:
смотрим вступление и, затем, заставку, отлично! Для финальной проверки:
С загрузкой разобрались на 100%, поздравляем себя, можно выпить кофе и закусить шоколадкой. Далее, быстрый трам/парам
В эмуляторе создаем новую дискету, форматируем её, сохраняем на нее Basic программу, загружаем с кассеты и сохраняем на диск файлы данных, как показанно вот здесь, а именно:
Используя эти данные, можно на основе приведенного варианта загрузчика написать специальный копировщик:
10 INK 1: PAPER 5: BORDER 5: CLEAR 25199
20 LOAD «»SCREEN$
21 RANDOMIZE USR 15619:
REM : SAVE «shaky sc»CODE 16384,6912
30 LOAD «»CODE
31 RANDOMIZE USR 15619:
REM : SAVE «shaky mn»CODE 25200,40335
40 STOP
Сохраняем образ дискеты,
Итого, но не вообще, а по этой части: с файлами разобрались, с последовательностью действий разобрались, лёгкую дисковую версию создали… переходим к стейдж2… не расходимся, кому интересно ))
и тут… мощный такой PS, пока я развлекался и писал статью… в рекоммендациях ютюбчика получаю вот это и далее, сам релиз… ччиорт… ну ладно, придётся делать с блекджеком и что там дальше
ссылка на оригинал статьи https://habr.com/ru/articles/935706/
Добавить комментарий