НАЗАД, НА SPECTRUM! Slider, журнал RUSH #1

Ответить
Аватара пользователя
бох в отпуске
Сообщения: 37437
Зарегистрирован: 08 июл 2016, 23:04
Откуда: Москва
Контактная информация:

НАЗАД, НА SPECTRUM! Slider, журнал RUSH #1

Сообщение бох в отпуске »

НАЗАД, НА SPECTRUM!

Автор: Slider, журнал RUSH #1

Конверсия эмуляторных файлов на реальный Спектрум.

Эпиграф: Каждому чайнику - чайником по чайнику!

Эту статью я решил написать с целью помочь начинающим релизерам в
адаптации спектрумовских файлов для различных эмуляторов на real
Speccy. Наверняка эта информация покажется ламерской людям, съевшим не
одну собаку в этом деле. Но для народа, который так же, как и я,
начинал с конвертации хобетных файлов с помощью STS, эта info будет в
самый раз.

Прежде всего мы должны четко и ясно выяснить цель конверсии. Исключая
большинство случаев с образами дисков и hobeta-файлами, у нас
нормально работающей программы никогда не получится путем обычного
ковертирования. Поэтому цель данной статьи рассказать, как можно
получить работающий кодовый блок программы, который потом можно
привести в божеский вид, предварительно найдя cheat-modes,
закомпрессировав, добавив титульную заставку и прицепив к этому
всему чуду загрузчик.

А теперь непосредственно перейдем к делу. В природе существует
достаточно много форматов эмуляторных файлов. Я попытаюсь рассмотреть
большинство из них, те, с которыми я лично сталкивался
непосредственно. Причем упор будет делаться на использование по
возможности именно реального Спектрума, а не IBM PC, хотя в
большинстве случаев без него ну никак не обойтись (к величайшему
сожалению). Итак я встречал следующие типы форматов:

1. HOBETA.

Расширение файлов - .$b, .$c, .$z и т.д. (может быть любая буква,
обычно то, что стоит за значком $ является реальным расширением файла
на Спектруме).

В первых 17 байтах находится системная информация о файле, где 16 байт
- имя файла и данные для каталога, а 17 байт - контрольная сумма. Для
удобной конверсии вам понадобится такая программа, как "Hobeta_v1.9"
by Dr.Squizer или подобная ей "Hobeta_v0.2" by Alien Factory. После
конвертации вы получаете стандартный Tr-Dos'овский файл (или набор
файлов).

На IBM PC существует масса конверторов из одного формата в другой и
почти любой файл можно перевести в формат hobeta. Вот только они не
всегда будут корректно работать.

2. SNAPSHOT.

Расширение - .sna.

Один из самых беспроблемно поддающихся коверсии файлов. Народный
способ: загружаете данный файл на Спектрум с адреса 16357 и начинаете
поиск адреса запуска и процесс отделения нужной информации.
Рассказывать, как это делается, не имеет смысла, т.к. эта тема -
совершенно отдельный разговор, и такую информацию можно попробовать
поискать в других журналах. Но, полагаю, у людей, занявшихся
релизерством игр, определенные навыки уже должны иметься.

Совет: почти всегда необходимую info можно выцепить из
basic-загрузчика такого snapshot-файла, который должен находится по
адресу 23755.

Файлы различных форматов можно загружать в PC-шный эмулятор, после
чего выгружать их в формате Snapshot (благо большинство эмуляторов
такое позволяют).

3. Z80.

Расширение одноименное.

Формат представляет из себя что-то вроде snapshot'а, только с
упакованной информацией.

Метод конвертации состоит в использовании программы UnSnap на
компьютере IBM PC. Сия прога работает следующим образом - Z80-файл
переводится в формат Hobeta, который на Спек конвертится вышеуказанным
методом. После этого мы получаем совершенно дикий набор файлов,
загружающиеся в различные страницы и запускающийся по типу magic-файла
(со стеком на экране и всеми делами).

Для того, чтобы получить непрерывный 48-и килобайтный блок, следует
загрузить в STS'е файл с расширением "0" по адресу 49152, файл с
расширением "2" по адресу 32768 и файл, имеющий расширение "5", по
адресу 16384. А нужны ли дополнительные блоки, загружающиеся в
страницы 128Kb режима, будете определять непосредственно вы сами.

4. TAPE.

Расширение - .tap.

Формат представляет из себя кучу файлов (к каждому из которых в начале
приписана системная информация), слепленных в один.

Народный метод конверсии: использовать программу, написанную Ticklish
Jim'ом (of BIS/Rush), исходник которой прилагается в формате
ассемблера Storm. Сначала .tap-файл перегоняется на real Spectrum
программой "Pencraft Copier", потом этот набор файлов конвертируется с
помощью вышеуказанной проги, которой требуется предварительно указать
необходимые параметры (о них подробно можно прочитать в самом
исходнике конвертора, под названием "TAPtoZX1").

5. TapeZX.

Расширение - .tzx.

В таком формате на IBM PC переносились программы, в большинстве своем
имеющие навороченую защиту типа Speedlock и т.п. Поэтому простой
ковертацией с помощью конвертора "TZXtoTAP" на IBM PC в большинстве
случаев не обойтись.

Единственный человеческий способ (не считая взламывания фирменной
защиты, что представляет собой достаточно утомительный и трудоемкий
процесс) - это загрузить такой файл в эмулятор и сбросить snapshot.
Причем настоятельно рекомендуется использовать для таких вещей эмуль
под Windows, т.к. среди виденных мной только он устанавливает
автоматический опрос любой нажатой клавиши непосредственно перед
запуском программы и вы можете выгрузить нормальный snapshot-файл, в
котором еще не успели выполниться возможные переброски некоторых
участков кода.

6. TR-DOS.

Расширение - .trd.

Единственный, не считая hobeta, формат файлов, перебрасываемых на IBM
PC из операционки Tr-Dos. Представляет из себя образ Tr-Dos'овской
дискеты - т.е. информация с полного диска в одном файле (включая и
нулевую дорожку в начале).

Для ковертации существует множество программ на IBM PC, например "AMD
Copier", но ни одну из них я не заставил нормально работать, хотя
использовал несколько IBM-совместимых компьютеров, включая и
Pentium233.

Народный метод: берете и разделяете trd-файл на два блока, первый из
которых будет иметь длину в 4096 байт (это информация с нулевой
дорожки). Для разделения на два блока я лично использую простенькую
программу на IBM, написанную Steeler'ом (of BIS/Rush) на Паскале.
После этого второй блок перегоняется на real Speccy на чистый диск
(например, Pencraft'ом), а первый блок - на другой диск, после чего
этот блочок в 16 секторов STS'ом записывается на место каталога
недавно созданного диска. В результате вы получаете идеально
работающий Tr-Dos диск, записанный на вашем родном спектрумовском
дисководе.

7. TELEDISK.

Расширение - .td0.

Тоже образ диска. Программа, позволяющая на IBM PC создавать
работающий Tr-Dos'овский диск, иногда отказывается работать, поэтому
лучше использовать ковертор "TDCVT" (на IBM), перегнав td0-файл в
trd-файл, после чего действовать с помощью вышеуказанного метода.

8. SCL.

Расширение одноименное.

Образ диска, только более улучшенный вариант trd-файлов. Выгодно
отличается от них тем, что в данном случае, если диск был не заполнен
до конца, то файл и будет занимать соответствующее количество места.

Что из себя представляет формат, можно почитать в инструкции к "AMD
Copier". Народный метод ковертации: ручками, с помощью STS. Другого
пока не обнаружено.

И, напоследок, для конвертации файлов могу порекомендовать эмулятор
"X128", который понимает форматы .z80, .sna, .slt, .tap, .tzx, .voc
(vocи slt-файлы мне лично пока не встречались) и из него, вдобавок,
можно выгрузить в любой момент snapshot (и ему подобные) или же просто
определенный участок памяти.

И, в надежде на то, что данная информация вам хоть немного помогла,
пожелаю успехов в создании ваших собственных качественных полных
версий фирменных программ.
Ответить