
008/018 31 Jul 90 23:13:22
From:   Ian Logan
To:     Ed Musthaler
Subj:   Re: ROM extension code info needed
Attr:   
------------------------------------------------
It's alot of common logic.  The BIOS displays a message saying where it is in 
the RAM test.  Since the RAM test can be stopped with a key press, it is safe 
to assume that the keyboard is OK when the ram test starts.  Here's some rules 
for extension ROM out of the Phoenix Reference to the XT, AT.
 
There are 3 predefined locations for expansion ROM.
 
C0000h - C7FFFh         Video Expansion ROM.
 
C8000h - DFFFFh         General Expansion ROM.
 
E0000h                  System Expansion ROM
                        This ROM MUST take up a full 64k
 
Rules for detecting the ROM
 
The first two words of the ROM must be set as follows.
 
Byte 0 = 55h
Byte 1 = AAh
Byte 2 = Length of ROM is 512byte blocks Byte 3 = Entry point to init routines 
of ROM (FAR CALL)
 
About the crc's.
The POST routines calculates a checksum of the space indidcated in byte 2.  If 
the checksum is zero the ROM is allowed to run.  The ROM starts at byte 3.
 
Thats all the info the book has on.
Since POST is the power on self test I'm not sure when your routine would be 
called. Since this info came out of a Phoenix book, some of the info might be 
Phoenix specific (Although it shouldn't be!)
Good Luck
        Ian


--- Opus-CBCS 1.13
 * Origin: The Tech Connection (1:381/52.0)

