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:
Advertising - advertising and announcements.

В этот день...   21 November