А вот на этом примере с того же источника мой конвертер отработал нормально1.rar
- - - Добавлено - - -
Это как с нечётного. Там же в первом заголовке строго 0xE000 (160000) ?
А вот на этом примере с того же источника мой конвертер отработал нормально1.rar
- - - Добавлено - - -
Это как с нечётного. Там же в первом заголовке строго 0xE000 (160000) ?
С любовью к вам, Yandex.Direct
Размещение рекламы на форуме способствует его дальнейшему развитию
А не знаюНадо глянуть под отладчиком (тот самый микроскоп, я в нём и структуру увижу), но я на работе, а он дома. Поэтому - вечером
Могу предположить, что где то встретилась загрузка байт по 157777, но это только предположение. Я вообще удивился, что были показаны НЕЧЁТНЫЕ адреса, вроде как делал прогу так, что бы адреса в показе были всегда чётные (ибо PDP-11 не исполняет прогу по нечётным адресам) (ну, метки понятно и по нечётным могут ставится), а тут тако...
Это была ошибка в DisAsm-еКак то я не подумал, что а) .LDA может начать грузиться не с нулевого адреса и б) при этом у файле может и не быть стартового адреса - точнее, он может быть равен 1
На такой комбинации DisAsm немного прихреневал
Поправил ошибку, спасибо
По поводу самого .LDA - ничего криминального в нём не нашёл. Лог описания блоков из него
Единственный занятный блок - Адрес 161652 Счётчик байт 23/31 - но и в нём ничего криминального - формат .LDA допускает блоки, которые грузятся с нечётного адреса и с нечётно длиной.Код:Адрес 160000 Счётчик байт 46/54 Адрес 160046 Счётчик байт 32/40 Адрес 160100 Счётчик байт 46/54 Адрес 160146 Счётчик байт 46/54 Адрес 160214 Счётчик байт 46/54 Адрес 160262 Счётчик байт 46/54 Адрес 160330 Счётчик байт 46/54 Адрес 160376 Счётчик байт 46/54 Адрес 160444 Счётчик байт 46/54 Адрес 160512 Счётчик байт 46/54 Адрес 160560 Счётчик байт 46/54 Адрес 160626 Счётчик байт 46/54 Адрес 160674 Счётчик байт 46/54 Адрес 160742 Счётчик байт 46/54 Адрес 161010 Счётчик байт 46/54 Адрес 161056 Счётчик байт 46/54 Адрес 161124 Счётчик байт 46/54 Адрес 161172 Счётчик байт 46/54 Адрес 161240 Счётчик байт 46/54 Адрес 161306 Счётчик байт 46/54 Адрес 161354 Счётчик байт 46/54 Адрес 161422 Счётчик байт 46/54 Адрес 161470 Счётчик байт 46/54 Адрес 161536 Счётчик байт 46/54 Адрес 161604 Счётчик байт 46/54 Адрес 161652 Счётчик байт 23/31 Адрес 161676 Счётчик байт 46/54 Адрес 161744 Счётчик байт 46/54 Адрес 162012 Счётчик байт 46/54 Адрес 162060 Счётчик байт 46/54 Адрес 162126 Счётчик байт 46/54 Адрес 162174 Счётчик байт 46/54 Адрес 162242 Счётчик байт 46/54 Адрес 162310 Счётчик байт 46/54 Адрес 162356 Счётчик байт 46/54 Адрес 162424 Счётчик байт 46/54 Адрес 162472 Счётчик байт 46/54 Адрес 162540 Счётчик байт 46/54 Адрес 162606 Счётчик байт 46/54 Адрес 162654 Счётчик байт 46/54 Адрес 162722 Счётчик байт 4/12 Адрес 162726 Счётчик байт 46/54 Адрес 162774 Счётчик байт 46/54 Адрес 163042 Счётчик байт 46/54 Адрес 163110 Счётчик байт 46/54 Адрес 163156 Счётчик байт 46/54 Адрес 163224 Счётчик байт 46/54 Адрес 163272 Счётчик байт 46/54 Адрес 163340 Счётчик байт 46/54 Адрес 163406 Счётчик байт 46/54 Адрес 163454 Счётчик байт 12/20 Адрес 163466 Счётчик байт 46/54 Адрес 163534 Счётчик байт 46/54 Адрес 163602 Счётчик байт 46/54 Адрес 163650 Счётчик байт 46/54 Адрес 163716 Счётчик байт 46/54 Адрес 163764 Счётчик байт 46/54 Адрес 164032 Счётчик байт 46/54 Адрес 164100 Счётчик байт 46/54 Адрес 164146 Счётчик байт 46/54 Адрес 164214 Счётчик байт 46/54 Адрес 164262 Счётчик байт 46/54 Адрес 164330 Счётчик байт 46/54 Адрес 164376 Счётчик байт 46/54 Адрес 164444 Счётчик байт 46/54 Адрес 164512 Счётчик байт 46/54 Адрес 164560 Счётчик байт 46/54 Адрес 164626 Счётчик байт 46/54 Адрес 164674 Счётчик байт 46/54 Адрес 164742 Счётчик байт 46/54 Адрес 165010 Счётчик байт 46/54 Адрес 165056 Счётчик байт 46/54 Адрес 165124 Счётчик байт 46/54 Адрес 165172 Счётчик байт 46/54 Адрес 165240 Счётчик байт 46/54 Адрес 165306 Счётчик байт 32/40 Адрес 165340 Счётчик байт 46/54 Адрес 165406 Счётчик байт 46/54 Адрес 165454 Счётчик байт 46/54 Адрес 165522 Счётчик байт 46/54 Адрес 165570 Счётчик байт 46/54 Адрес 165636 Счётчик байт 46/54 Адрес 165704 Счётчик байт 46/54 Адрес 165752 Счётчик байт 46/54 Адрес 166020 Счётчик байт 44/52 Адрес 166064 Счётчик байт 46/54 Адрес 166132 Счётчик байт 46/54 Адрес 166200 Счётчик байт 46/54 Адрес 166246 Счётчик байт 46/54 Адрес 166314 Счётчик байт 46/54 Адрес 166362 Счётчик байт 46/54 Адрес 166430 Счётчик байт 46/54 Адрес 166476 Счётчик байт 46/54 Адрес 166544 Счётчик байт 46/54 Адрес 166612 Счётчик байт 46/54 Адрес 166660 Счётчик байт 46/54 Адрес 166726 Счётчик байт 46/54 Адрес 166774 Счётчик байт 46/54 Адрес 167042 Счётчик байт 46/54 Адрес 167110 Счётчик байт 46/54 Адрес 167156 Счётчик байт 46/54 Адрес 167224 Счётчик байт 46/54 Адрес 167272 Счётчик байт 46/54 Адрес 167340 Счётчик байт 46/54 Адрес 167406 Счётчик байт 46/54 Адрес 167454 Счётчик байт 46/54 Адрес 167522 Счётчик байт 46/54 Адрес 167570 Счётчик байт 46/54 Адрес 167636 Счётчик байт 46/54 Адрес 167704 Счётчик байт 46/54 Адрес 167752 Счётчик байт 12/20 Адрес 1 Счётчик байт 0/6
А вот если заглянуть внутрь, то тут есть некоторая нестыковка:
Первые два байта - 170, 377 (или слово 177570) - они как бы.. или лишние или что то обозначают. Потому как дальше идёт то, что выглядит очень похоже на вектора 0, 4, 10 а потом JMP... ПЗУ случаем не 1801РР1?Код:. = 160000 .BYTE 170, 377 .WORD 160210 .WORD 341 .WORD 161726 .WORD 340 .WORD 161142 .WORD 340 .WORD 137 .WORD 163466 .WORD 137 .WORD 163504 .WORD 137 .WORD 163722
- - - Добавлено - - -
Аха, про блок - Адрес 161652 Счётчик байт 23/31 и потерянный байт как раз и шёл разговор...
Судя по всему, ПЗУ от чего то PDP-подобного и в этом месте заканчивается строка и дальше идёт код. Пропущенный байт - он как раз перед кодом - перед командой 20527 (CMP R5, #7). И будет точнее сказать, что пропущен он в конце блока, который начинается с адреса 161652, а не из начала следующего. Что это за байт (305 в octal) и влияет ли он на что - надо ПЗУ дизассемблитьКод:.WORD 5015 .WORD 51522 .WORD 75 .BYTE 0 .BLKB ; пропущенный байт .WORD 20527 .WORD 7 .WORD 101321 .WORD 4737 .WORD 162726
- - - Добавлено - - -
Нуууу.... Да, PDP подобное
Код:N61574: MOV (R4)+, R3 CALL @#N62236 SOB R2, N61574 BR N61444 .ASCIZ <CR><LF>|R0=| .ASCIZ <CR><LF>|R1=| .ASCIZ <CR><LF>|R2=| .ASCIZ <CR><LF>|R3=| .ASCIZ <CR><LF>|R4=| .ASCIZ <CR><LF>|R5=| .ASCIZ <CR><LF>|SP=| .ASCIZ <CR><LF>|PC=| .ASCIZ <CR><LF>|RS=| .BYTE 0 .BLKB N61676: CMP R5, #7 BHI N61546 CALL @#N62726 MOV #200, @#CPUERR CLR PCКод:L62624: .WORD 3003 .ASCII <5>|МРТИ|<HT><HT><HT><HT>|КВ|<5>| НЕМИГА|<5>| 4.06|<6><HT>|РМП РМУ | B62671: .ASCIZ <FF>|ждите...| .ASCIZ |?|<6><CR><LF>|Пульт>| .ASCIZ <LF><CR> .BYTE 72 .WORD 40 .WORD 40 N62726: CALL @#N63466
Это пультовое пзу от Немиги.
Вот и вопрос как этот байт пропал.
Это я неправильно сконвертировал lda2bin или кто-то до меня .lda неправильно создал?
Вроде я вообще этого байта в .lda не нахожу.....
Или этот байт вообще несущественный? и можно вписать любой? Я так понимаю что Вы на это "намекаете", но уже ночь и я торможу :-(
- - - Добавлено - - -
Кстати, про disasm: такое не хотите?
RT-11 PRESSURE GROUP (RT-PRESS), MOSCOW, 1987
R T - 1 1 D I S A S S E M B L E R V 5 . 0 1
с исходниками
Последний раз редактировалось dk_spb; 28.04.2021 в 00:05.
Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)