ISA-to-PC-Card (PCMCIA) Controllers — PD6710/’22
The Index register (see “Operation Registers” on page 41) is used to specify which of the internal
registers the CPU will access next. The value in the Index register is called the Register Index.
This number specifies a unique internal register. The Data register is used by the CPU to read and
write the internal register specified by the Index register.
Figure 8. Indexed 8-Bit Register Structure
Internal Registers
FFh
FEh
•
•
•
Register
Indexes
02h
01h
00h
High Byte
Data
3E1h
Low Byte
Index
3E0h
I/O Addresses
Figure 9. Indexed 8-Bit Register Example
Internal Registers
The following code segment demonstrates use
of an indexed 8-bit register:
Register
Indexes
mov dx, 3E0h
mov al, 02h
mov ah, 3Ch
out dx, ax
3Ch
02h
AH
AL
3Ch
02h
3E1h
3E0h
I/O Addresses
Double-Indexed Registers
The PD67XX has Extension registers that add to the functionality of the 82365SL-compatible
register set. Within the Extension registers is an Extended Index register and Extended Data
register that provide access to more registers. The registers accessed through Extended Index and
Extended Data are thus double indexed. The example below shows how to access the Extension
Control 1 register, one of the double-indexed registers.
;Write to Extension Control 1 register example
;Constants section
Extended_Index
Index_Reg
Ext_Cntrl_1
PD67XX_Index
EQU 2Eh
EQU 2Fh
EQU 03h
EQU 3E0h
;Code section
mov
mov
mov
dx, PD67XX_Index
al, Extended_Index
ah, Ext_Cntrl_1
Datasheet
37