<< Previous | Next >>

> LD (pd+HL),BCDE Load Rabbit 4000 Instruction

> Opcode | Instruction | Clocks | Operation
> -- | LD (pd+HL),BCDE | 18 (2,2,2,3,3,3,3) | (pd+HL) = E; (pd+HL+1) = D (pd+HL+2) = C; (pd+HL+3) = B
> DD 0D | LD (PW+HL),BCDE | 18 (2,2,2,3,3,3,3) | (PW+HL) = E; (PW+HL+1) = D (PW+HL+2) = C; (PW+HL+3) = B
> DD 1D | LD (PX+HL),BCDE | 18 (2,2,2,3,3,3,3) | (PX+HL) = E; (PX+HL+1) = D (PX+HL+2) = C; (PX+HL+3) = B
> DD 2D | LD (PY+HL),BCDE | 18 (2,2,2,3,3,3,3) | (PY+HL) = E; (PY+HL+1) = D (PY+HL+2) = C; (PY+HL+3) = B
> DD 3D | LD (PZ+HL),BCDE | 18 (2,2,2,3,3,3,3) | (PZ+HL) = E; (PZ+HL+1) = D (PZ+HL+2) = C; (PZ+HL+3) = B

> Flags | ALTD | IOI/IOE
> S | Z | L/V | C | F | R | SP | S | D
> - | - | - | - |  |  |  |  |

> #### Description

> Loads the memory location whose address is computed as the sum of pd and HL with BCDE. HL is considered sign extended to 24 bits.

> The address is treated either as a logical address that will be passed through the MMU for translation into a physical address or as a physical address that does not need MMU translation.

> If pd is 0xFFFFxxxx, i.e., the upper 16 bits are all ones, it represents a logical address. This is called a "long logical" address. Otherwise, it is a physical address with the low 20 bits or 24 bits being significant (depending on the memory available).

<< Previous | Next >>