Speccy - наш выбор!

Speccy - наш выбор! (http://zx-pk.ru/index.php)
-   Для начинающих (http://zx-pk.ru/forumdisplay.php?f=43)
-   -   Лоадеры своими ручками. (http://zx-pk.ru/showthread.php?t=5218)

tmp_online 23rd April 2007 15:30

Лоадеры своими ручками.
 
1 Attachment(s)
Лет эдак пять-семь назад пытался разобраться с лоадерами игр Savage (крякнутой Биллом Гильбертом), Double Dragon (крякнута неким S.S.Captain). У этих игрулек процесс загрузки изображался моргающим прямоугольником в левой верхней части экрана. Полосок загрузки не было, то есть Border был полностью черного цвета. Если происходила ошибка загрузки с ленты (аля RTape Loading Error), происходил сброс. Итак, к чему я веду, никто не подскажет, по каким адресам размещаются эти лоадеры? Во вложении - игра Savage. Отдельное спасибо ZEman'y, за то что поделился этой версией игрульки, а то с ленты восстановить у себя не удалось.

Shadow Maker 25th April 2007 00:12

Ну расскажу что видно невооруженным глазом. Игра грузится так - сначала первый басик-лоадер грузится, запускает кусок кода, который грузит второй басик-лоадер (собсна сам "протект" если его мона так назвать, там где куча всяких вызовов. Он в итоге своей работы печатает надпись САВАЖ-БИЛЛ ГИЛБЕРТ и делает процедуру загрузчика (этого самого с квадратиком) по адресу 60000 (EA60), который грузит саму игру.

Тока вопрос-то в чем? Так и не понял чего тебе надо... Только адрес этот чтоли?

Вообще с такой вещью как отладчик у Unreal взлом стал дико скучным занятием... Тупо поставил брекпойнты и жди када словиться...

TomCaT 25th April 2007 00:50

Quote:

Originally Posted by Shadow Maker (Post 86552)
Вообще с такой вещью как отладчик у Unreal взлом стал дико скучным занятием... Тупо поставил брекпойнты и жди када словиться...

Точно так. Вот, например, такое зверство, как в оригинальной Thunderbirds -- то, которое аркада про пирамиду, а не серия квестов. Есть, конечно, хуже (Head Over Heels и Sir Fred, может быть, с их картинками), но это худшее, что я видел. Один моноблок без заголовка, на нестандартной скорости, конечно, в котором адрес и длина очередной части считываются на лету перед собственно чтением этой части. Частей этих с полтора десятка, частично перекрывающихся, так что в итоге грузится много больше 48 килобайт. А потом все раскодируется через ключ и ПЗУ и благополучно виснет на нестандартном 48к. Ключ, конечно, в IY, для вящей неработоспособности брейкпойнтов.

Без UnReal пришлось бы долго биться об стену.

goodboy 25th April 2007 11:42

неплохая книжка для начинающих http://trd.speccy.cz/book/RIDDLES.ZIP

Shadow Maker 26th April 2007 09:27

Ну ты уж вообще... Возьми любую книжку по Басику где написаны коды символов и кейворды - там всё понятно будет... 0 - 5 не использ., 8 - 10 - курсор влево/вправо/вниз, 14 - управл. код числа, 15 - не использ., 24 - 31 - не использ., 94 - символ "стрелка вверх", 96 - символ "фунт стерлингов", 127 - 164 - (с) и после набор UDG-графики.

Shadow Maker 26th April 2007 10:35

Это не ахинея, это машкод. Подробнее смотри 'Методы Билла Гильберта' в ZX Ревю, 1992. Если до вечера не разберешься, домой приду подробнее расскажу.

goodboy 26th April 2007 11:35

команды бейсика элементарно смотрятся по PRINT CHR$ x
также например в ConverCommander`e (не помню точно версию) в диск докторе есть просмотр бейсик программы,BestView кажется тоже даёт листинг

Shadow Maker 26th April 2007 12:53

Ну значмт 93, в 92 там просто серия статей была про взлом программ.

Добавлено через 9 часов 9 минут
Ну короче все тупо как дерьмо мамонта. После числа того PRINT USR 6746931 идет 14 (знак числа) и само число 143, 58, 42, 51, 51 - это представление с плавающей запятой, как оно представляется сам прочитаешь, но если по русски это число 23829.1, дальше можно не читать. PRINT USR = RANDOMIZE USR = вызов программы в машкодах из памяти по адресу в данном случае 23829. Там находиться программа, суть ее в том, что она частью себя копирует, другой частью убивает возможные отладчики и потом возвращается опять назад в басик прогу, натыкается на LOAD "" которая грузит второй бейсик блок с кучей вызовов про который я уже говорил.

Jukov 27th April 2007 16:12

Мой совет - используй для просмотра Basic'a прогу Das boot со встроенным Look Basic Programm

Shadow Maker 27th April 2007 23:40

Да давай я тебе лучше свой комплект для басик-лоадеров дам. Там один файлик для всего.


All times are GMT +4. The time now is 00:48.

Powered by vBulletin® Version 3.8.3
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.