Index of /ukdwk_archive/dwkwebcomplekt/form_disasm203

[ICO]NameSizeDescription
[PARENTDIR]Parent Directory -  
[   ]disasm_v203.rar2.7K 

Тупой дизассемблер для RT-11.
Перенес тупой дизассемблер в RT-11 - надоело файлы взад-вперед таскать.
Никаких многопроходностей и попыток определить где код где данные.
Никаких FPP инструкций.
Только BIS, EIS, FIS и всякая мелочь вроде CSM, MFPT, TSTSET, WRTLCK, SPL.
(!)
Описание истории версий см. ниже.
Источник авторская публикация на форуме
http://zx.pk.ru/showpost.php?p=588101&postcount=320
(!)


Код:

*[lstfile[.LST]=]binfile[.SAV][/B:base][/O:offsblk][/N:nblks]

    * listfile - файл листинга (если не указывать, выводит на терминал)
    * binfile - бинарный файл
    * /B - задает начальный адрес (по умолчанию 0)
    * /O - задает начальный номер блока
    * /N - задает количество блоков которые дизассемблировать


Можно напрямую дизассемблировать устройство - к примеру загрузчик:

Код:

.RU DISASM SY:/N:1 SYBOOT

.DIR SYBOOT
 15-Nov-2011
SYBOOT.LST    11  15-Nov-2011    
 1 Files, 11 Blocks
 46893 Free blocks

.

Генерируемый листинг выглядит так:

Код:

000000  013767 000050 002310    MOV     @#50,2316
000006  062767 000002 002302    ADD     #2,2316
000014  012700 177776           MOV     #177776,R0
000020  104354                  EMT     354
000022  005720                  TST     (R0)+
000024  010067 002270           MOV     R0,2320
000030  013706 000042           MOV     @#42,SP
000034  012701 006332           MOV     #6332,R1
000040  005067 002244           CLR     2310
000044  005067 002242           CLR     2312
000050  012767 177777 002236    MOV     #177777,2314

Возможно где-то есть ошибки - сильно не гонял

История:
Код:

15-SEP-2011   02.00           ПЕРЕПИСАЛ СТАРОЕ С НУЛЯ
21-DEC-2011   02.01           ИСПРАВЛЕНЫ ОШИБКИ ОБРАБОТКИ EIS И JSR
28-FEB-2012   02.02           ИСПРАВЛЕНЫ ОШИБКИ ПРИ РАБОТЕ С БОЛЬШИМИ ФАЙЛАМИ


(!) Последнее обновление
disasm-v203.rar (2.7 Кб, 1 просмотров)


31-mar-2013   02.03	мелкие косметические правки, 
			опция выбора основания чисел


*[oufile[.LST]=]infile[.SAV][/B:base][/N:count][/O:offset][/R:radix]
	/B:base   - базовый адрес                   [0]
	/N:count  - количество блоков               [все]
	/O:offset - стартовый блок                  [0]
	/R:radix  - основание чисел (OCT, DEC, HEX) [OCT]

В качестве входного и/или выходного файла может быть указано устройство. Если выходной файл не указан, используется терминал.
Код:

.DISASM SY:/O:2/N:1
000000  012737 003146 000100    MOV     #3146,@#100
000006  005037 000102           CLR     @#102
000012  005003                  CLR     R3
000014  011367 003714           MOV     @R3,3734

Код:

.DISASM SY:/O:2/N:1/R:DEC
00000   05599 01638 00064       MOV     #1638,@#64
00006   02591 00066             CLR     @#66
00010   02563                   CLR     R3
00012   04855 01996             MOV     @R3,2012

Код:

.DISASM SY:/O:2/N:1/R:HEX
0000    15DF 0666 0040          MOV     #666,@#40
0006    0A1F 0042               CLR     @#42
000A    0A03                    CLR     R3
000C    12F7 07CC               MOV     @R3,7DC