PDP11 портирование с Z80: различия между версиями
Nzeemin (обсуждение | вклад) (Новая страница: «{{Emuverse}} Маппинг регистров и команд при портировании с процессора Z80 на PDP-11. Маппинг реги…») |
Nzeemin (обсуждение | вклад) Нет описания правки |
||
Строка 24: | Строка 24: | ||
SRL xx ASR xx | SRL xx ASR xx | ||
PUSH rr MOV rr,-(SP) | |||
POP rr MOV (SP)+,rr | |||
</pre> | |||
LDIR: | |||
<pre> | |||
MOV #LDB05, R3 ; 97DF LD HL,$DB05 | |||
MOV #LEB00, R2 ; 97E2 LD DE,$EB00 | |||
MOV #4096., R1 ; 97E5 LD BC,$1000 | |||
1$: MOVB (R3)+, (R2)+ ; 97E8 LDIR | |||
SOB R1, 1$ | |||
</pre> | |||
EX DE,HL -- через регистр R5, который обычно не занят: | |||
<pre> | |||
MOV R3, R5 ; A1A9 EX DE,HL | |||
MOV R2, R3 | |||
MOV R5, R2 | |||
</pre> | </pre> |
Версия от 15:19, 13 июля 2017
Этот документ создан для Emuverse и распространяется на условиях лицензии CC-BY-SA-3.0. |
Маппинг регистров и команд при портировании с процессора Z80 на PDP-11.
Маппинг регистров:
A R0 BC R1 DE R2 HL R3 IX R4 IY R5
Типичные команды:
JR addr BR addr / JMP addr JR C, addr BLO addr JR NC, addr BHIS addr JR Z, addr BEQ addr JR NZ, addr BNE addr CP $xx CMP R0, #xx / CMPB R0, #xx SRL xx ASR xx PUSH rr MOV rr,-(SP) POP rr MOV (SP)+,rr
LDIR:
MOV #LDB05, R3 ; 97DF LD HL,$DB05 MOV #LEB00, R2 ; 97E2 LD DE,$EB00 MOV #4096., R1 ; 97E5 LD BC,$1000 1$: MOVB (R3)+, (R2)+ ; 97E8 LDIR SOB R1, 1$
EX DE,HL -- через регистр R5, который обычно не занят:
MOV R3, R5 ; A1A9 EX DE,HL MOV R2, R3 MOV R5, R2