
Сообщение от
Hunta
Занимательно.. Не помню, что бы такие заморочки были на СМ1420...
Сам удивился - может с кодом ПЗУ что-то не так, но при выполнении команды S стартовый адрес сначала увеличивается на 4 и только потом на него передаётся управление.
Поэтому, если ввести в пульте такой код:
Код:
000000
?L 1000
?D 001000 240
?D 001002 241
?D 001004 242
?D 001006 243
?D 001010 244
?D 001012 775
?L 1000
?S
То выполнится он так:
Код:
173252 [000344] MOV @#177560, SP ; 177560:000200 -> R6
173256 [000340] BIC #-129., SP ; 173260:177577 -> R6 :000200
173262 [000340] BEQ 173252
173264 [000340] MOV @#177562, R2 ; 177562:000015 -> R2
173270 [000340] BIC #-128., R2 ; 173272:177600 -> R2 :000015
173274 [000340] MOV @#177564, SP ; 177564:000200 -> R6
173300 [000340] BIC #-129., SP ; 173302:177577 -> R6 :000200
173304 [000340] BEQ 173274
173306 [000340] MOV R2, @#177566 ; R2 :000015 -> 177566
173312 [000340] ADD #2, R3 ; 173314:000002 -> R3 :173074
173316 [000350] MOV R3, PC ; R3 :173076 -> R7
173076 [000350] ADD R1, R2 ; R1 :051400 -> R2 :000015
173100 [000340] MOV R4, R1 ; R4 :000000 -> R1
173102 [000344] CMP #19488., R2 ; 173104:046040 -> R2 :051415
173106 [000351] BEQ 173170
173110 [000351] CMP R4, R2 ; R4 :000000 -> R2 :051415
173112 [000351] BNE 173120
173120 [000351] MOV R2, R4 ; R2 :051415 -> R4
173122 [000341] CMP #17696., R2 ; 173124:042440 -> R2 :051415
173126 [000351] BNE 173144
173144 [000351] CMP #17440., R2 ; 173146:042040 -> R2 :051415
173150 [000351] BEQ 173202
173152 [000351] CMP #21261., R2 ; 173154:051415 -> R2 :051415
173156 [000344] BNE 173164
173160 [000344] MOV #-2052., PC ; 173162:173774 -> R7
173774 [000350] RESET
173776 [000350] BNE 173652
173652 [000350] MOV #64., @#173024 ; 173654:000100 -> 173024
173660 [000340] MOV R0, R4 ; R0 :001000 -> R4
173662 [000340] BIC #-8., R4 ; 173664:177770 -> R4 :001000
173666 [000344] MOV R0, R1 ; R0 :001000 -> R1
173670 [000340] BIC R4, R1 ; R4 :000000 -> R1 :001000
173672 [000340] BEQ 173714
173674 [000340] ADD #4, R5 ; 173676:000004 -> R5 :001000
173700 [000340] BNE 173714
173714 [000340] MOV R4, R3 ; R4 :000000 -> R3
173716 [000344] ADD R3, R3 ; R3 :000000 -> R3 :000000
173720 [000344] ADD R3, R3 ; R3 :000000 -> R3 :000000
173722 [000344] ADD R3, R3 ; R3 :000000 -> R3 :000000
173724 [000344] MOV #-2134., PC ; 173726:173652 -> R7
173652 [000350] MOV #0, @#173024 ; 173654:000000 -> 173024
173660 [000344] ADD R3, R3 ; R3 :000000 -> R3 :000000
173662 [000344] ADD R3, R3 ; R3 :000000 -> R3 :000000
173664 [000344] ADD R3, R3 ; R3 :000000 -> R3 :000000
173666 [000344] ADD R3, R3 ; R3 :000000 -> R3 :000000
173670 [000344] ADD R3, R3 ; R3 :000000 -> R3 :000000
173672 [000344] MOV R5, PC ; R5 :001004 -> R7
001004 [000340] CLV
001006 [000340] BIC_PSW ^b0011
001010 [000340] CLZ
001012 [000340] BR 001006
001006 [000340] BIC_PSW ^b0011
001010 [000340] CLZ
001012 [000340] BR 001006
001006 [000340] BIC_PSW ^b0011
001010 [000340] CLZ
001012 [000340] BR 001006
Как такое ПЗУ может работать без заморочек - сложно представить.