CHIP-SELECT UNIT

 

mov

dx, MPCS_REG

;ready for PCS lines 4-6

 

mov

ax, MPCS_VAL

;as well as MCS programming

 

out

dx, al

 

 

mov

dx, MMCS_REG

;set up DRAM chip-selects

 

mov

ax, MMCS_VAL

 

 

out

dx, al

 

 

mov

dx, PACS_REG

;set up I/O chip-select

 

mov

ax, PACS_VAL

 

 

out

dx, al

 

CODE

ENDS

 

 

;

 

 

 

;Power-on reset code to get started

 

;

ASSUME

CS:POWER_ON

 

 

 

 

POWER_ON SEGMENT AT 0FFFFH

 

 

mov

dx, UMCS_REG

;point to UMCS register

 

mov

ax, UMCS_VAL

;reprogram UMCS to match system

 

out

dx, al

;requirements

 

jmp

FW_START

;jump to initialization code

POWER_ON

ENDS

 

 

;

 

 

 

;Data segment

 

 

;

 

 

 

DATA

SEGMENT PUBLIC 'DATA'

 

 

DD

256 DUP (?)

;reserved for interrupt vectors

;Place memory variables here

 

 

DW

500 DUP (?)

;stack allocation

STACK_TOP LABEL WORD

 

DATA

ENDS

 

 

;Program ends

END

Example 6-1. Initializing the Chip-Select Unit (Continued)

6-22

Page 177
Image 177
Intel 80C186XL, 80C188XL user manual Place memory variables here