17 августа 2002 |
|
-[ Ьу Dr.Yirus/MDO ]------------------------------------------- Эффективное использование "теневика". --------------------------------------------------------------- Итак, вас приветствует дядя Вирус фром Moderation. Сегодня я постараюсь рассказать Вам о том, как выдирать музыку. Надо сказать, что чтобы выдрать музыку, oco6oro ума не требуется, ее может выдрать даже полный чайник (естественно, после того как прочитает сей мануал ;). Как известно, на ZX (да и не только на ZX) музыка делится на два вида: FM и DIGITAL. Подробно их описывать не буду, желающим могу предложить почитать одиннадцатый выпуск уфимской газеты MSD. DIGITAL оставим на потом, а сначала научимся выламывать FM. Здесь и далее речь пойдет о технике работы c компьютером "Скорпион" c его теневым монитором. Далее мы затронем специфику работы c дебаггерами, но вплотную к ней подходить не будем, т.к чтобы добраться до музы c помощью монитора, надо долго париться а это уже попахивает не выдиранием музыки, а кракингом вообще, а это уже совсем другая история... Ну ладно, что мы все вокруг да около?! Начинаем! Загружайте желаемую прогу, нажимайте MAGIC. И если все прошло успешно, и вы попали в "теневик", а не подвесили комп (что тоже может иметь место), то поздравляем c первым успешным шагом. Теперь надо найти музыку. Чаще всего Музыка подвешивает- ся на прерывания. Посмотрите на окно состояния монитора. Если у вас настоящий Скорп, там должна быть надпись "Int mode" ("режим прерываний"). Так вот, если режим номер два, то счи- тайте что вам повезло. Пишем в командной строке: "мем[#xxFF]", где xx - значение вектора прерываний I. Если по вычисленному адресу JP или JO, жмем SS+G и так до тех пор, пока не попадем на начало подпроги обработки прерываний. здесь нас ничто не ин- tepecyet, кроме инструкций CALL nn, причем они не обязательно должны быть безуcловными. Очень подозрительна такая конструкция LD A,#XX:CALL NNNN:CALL DDDD. Сразу видно, что скорее всего переключается страница и вызывается плейер. Кстати, страница может переключаться здесь же, OVT'ом. A лучше всего, чтобы не париться, поставьте первый CALL в самую верхнюю строку экрана и нажмите единицу. Потом жмите SS+G. Посмотрите, что тама про- исходит, если ничего интересного - возвращайтесь обратно. Ес- ли оттуда уходят еще разветвления, пройдитесь по ним. Короче Клавиши от 1 до 5 - запоминание адреса, от 6 до 0 - восста- новление соответствующего. То есть, 6 соответствует единице, 7 - двойке и т.д. Можно также пробежаться и по страницам: команда переключения страницы - "OAM X", где X - логический номер страницы. Только не забудьте установить мем на адрес 49152=#С000, так как, веро- ятнее всего, там и находится выламываемая муза. Кстати, если вы ломаете дему или прогу, использующую оба экрана,то на седьмой странице музыка, вероятнее всего будет по адресу 56064=#DBOO. Можно устроить поиск по стрингу:"fin24500 65535"PO0-TOACKEO" A если совсем никак, то на крайняк поищите в памяти инструкцию OVTD. Она используется в половине музыкальных плейеров. Искать так: "fin24500 65535 #ed #аЬ. Но в некоторых плейерах, на- пример в ASM'овском, используется OVTI. Ее код: #ed #а3. Нашли? Теперь листайте вверх, пока не встретите знакомые инструкции: LD HL,MVZADO:JP XXXXX:JP DDDDD. Короче, больше в подробности поиска вдаваться не буду, лучше потренируйтесь, посмотрите код различных плейеров, вы- явите характерные oco6ehhoctu. Теперь найденную музу надо сгрузить на диск, чтобы потом де- компилировать. Декомпиляцию надо провести, чтобы отсеять мусор в конце отгружаемого блока, так как точную его длину узнать не знаю как. Да и надо ли? Если у вас версия монитора 2.95 и выше, то тут легче всего: saveFILENAMEX address length, где FILENAME - имя файла, X - расширение, address и length - соответственно адрес и длина. Если у вас более ранняя версия, то тут уже надо делать по cnoco6y Русланыча, когда у него была еще старая ПЗУха: movmusadr musadr+6912 16384. Потом вставьте чистый диск и жмите MAGIC. Затем отрежьте у самого большого блока (длиной 192 сектора) первые 6912 байт и загоняйте их в декомпилер. Если декомпилер послал вас, то скорее всего, длина музона больше 6912 байт и операцию нужно повторить: movmusadr musadr+6912+6912 length, затем склейте получившийся блок c первым и декомпилируйте. Ну, c теневиком вроде разобрались, теперь перейдем к деком- пилерам. Co6ctbehho, говорить тут oco6o не о чем т.к. декомпильнуть может и младенец, но учтите, что музыка в форматах KSA Рго So- und Tracker и FastTracker успешно декомпильнетcя только в том случае, если она не была проинициализирована. Поэтому поста- райтеcь войти в теневик перед тем, как музыка заиграет. Можно еще попробовать протрассировать загрузчик ломаемой программы, загрузить главный блок, найти в нем музыку и сгрузить на диск. Еще один cnoco6 вытаскивания музыки связан c применением программы "BestYiew". Загрузите ее, вставьте диск c ломаемой программой, нажмите SS+D и подождите, пока головка пройдется по диску. B результате на экран выведется каталог того, что BestYiew нашел на диске. Это могут быть просто музыкальные фай- лы, могут быть упакованные блоки и экраны, также просто ку- cочки дискового пространства. Нас интересуют музыкальные файлы и упакованные блоки. Пройдитесь по каталогу, выберите нужные файлы и запишите их расположение на диске (клавиши К и L - скроллирование каталога по горизонтали). Потом загрузите их в STS, распакуйте, если надо, и cгрузите на диск. Вот вроде и все. Перед вами выпендривался DrYirus. -[ Ьу РусланычЪ/MDO ]------------------------------------------ ПАРА ПОлЕЗНЫХ C0BET0B ДлЯ НАЧИНАЮЩИХ: --------------------------------------------------------------- * Стандартный player для ST-Рго и Рго-Tracker2.x начинается со стандартных девяти байтов: LD HL,#X1X2 JP #Z1Z2 JP #Y1Y2 ..... дамп: 21 X2 X1 С3 Z2 Z1 С3 Y2 Y1 ... У Рго-Tracker'а 3.x player выглядит несколько иначе, и первые байты выглядят вот так: LD HL,#X1X2 JO $-X ;ОТКлОНЕНИЕ JP #Y1Y2 ..... дамп: 21 X2 X1 18 -X С3 Y2 Y1 ... * Музыку написанную в ST-Рго лучше всего вырывать до ее иници- ализации программой, т.е. до того как эта самая музычка заигра- ет. Тут чаще всего приходится прибегать к помощи STS'а. Дело в том, что после комманды инициализации музыки, player привязыва- ет муз.модуль к жестко заданным адресам. A декомпилятору это чертовски не нравится. ;< * Сгружать музон из теневика лучше следующим образом: 1. Обнаружив место нахождения player'а, взгляните на его первую комманду. Обычно это ld hl,#xxxx. 2. Переходим на адрес указанный предыдущей командой: мем #xxxx. 3. B нормальных модулях здесь должно быть название композиции и ее автор. Этот текст, обычно, разборчиво читается в поле дампа. Теперь сгружаем муз.модуль c адреса на который указывала коман- да ld hl,#.... в начале player'а. т.е.: saveMVZ0N С #xxxx #xxxx+len_music 4. Теперь на дискете у вас есть муз.модуль без плейера. * Пара слов о том, для чего вообще нужно выламывать музоны. Ну, во-первых, это первый шаг на пути к кракингу. "Смогиете" сло- мать музон, значит со временем "cmoruete" сломать все осталь- ное. Во вторых, вырванный музон представляет собой неплохой материал для изучения cnco6ob "музоно-писание", т.е., выламыва- ете музон, декомпилируете и грузите его в редактор. Затем рас- cматривая внутреннее строение композиции, перенимаете mactepct- да ld hl,#.... в начале player'а. т.е.: saveMVZ0N С #xxxx #xxxx+len_music 4. Теперь на дискете у вас есть муз.модуль без плейера. * Пара слов о том, для чего вообще нужно выламывать музоны. Ну, во-первых, это первый шаг на пути к кракингу. "Смогиете" сло- мать музон, значит со временем "cmoruete" сломать все осталь- ное. Во вторых, вырванный музон представляет собой неплохой материал для изучения cnco6ob "музоно-писание", т.е., выламыва- ете музон, декомпилируете и грузите его в редактор. Затем рас- cматривая внутреннее строение композиции, перенимаете mactepct- во великих композиторов сцены!:) Ну и в третьих, у некоторых ;) есть такая слабость, слушать день и ночь AY-завывания. Так вот, навыдирав музонов на диск (штук 128, больше не влезет;) грузи- те какой нибудь навороченный player (типа: X-player) и 8 - 10 часов AY-визгов вам обеcпеченно. Кстати, этот абзац, я тоже пи- шу под музон, который выдран из BD#10 (Thanx ММСМ!) p.s. Интересно, а под какой музон лучше всего заниматься лю- бовью? Мне в голову приходит только "WOW" Ьу DNK ;)))
Other articles:
|
|
|
|
|
|
Similar articles:
В этот день... 21 November