home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
The Unsorted BBS Collection
/
thegreatunsorted.tar
/
thegreatunsorted
/
programming
/
misc_programming
/
post.doc
< prev
next >
Wrap
Text File
|
1988-01-01
|
8KB
|
229 lines
POST - INITIAL RELIABILITY TESTS
TEST.01
80286 PROCESSOR TEST (REAL MODE)
Description
Verify Flags, Registers, and Conditional Jumps.
Check for Processor ShutDown (0 to A)
SHUT0:
TEST.02
ROM CHECKSUM TEST 1
Description
A Checksum is done for the 32K ROM modules (two)
containing POST, BASIC and BIOS.
TEST.03
VERIFY CMOS SHUTDOWN BYTE
Description
Rolling Bit Written and Verified at Shutdown address.
TEST.04
8254 CHECK TIMER 1 ALL BITS ON
Description
Set Timer Count
Check that Timer 1 all bits on
TEST.05
8254 CHECK TIMER 1 ALL BITS OFF
Description
Set Timer Count
Check that Timer 1 all bits off.
TEST.06
8237 DMA 0 INITIALIZATION
CHANNEL REGISTER TEST
Description
Disable the 8237 DMA Controller 0.
Write/Read the current DMA 0 address and Word Count Redisters
for all channels.
TEST.07
8237 DMA 1 INITIALIZATION
CHANNEL REGISTER TEST
Description
Disable the 8237 DMA Controller 1.
Write/Read the current DMA 1 address and Word Count Redisters
for all channels.
TSET.08
DMA PAGE REGISTER TEST
Description
Write/Read all Page Registers.
TSET.09
STORAGE REFRESH TEST
Description
Verify Refresh is occurring.
TEST.10
8042 INTERFACE TEST
READ CONFIGURATION JUMPERS
Description
Isuue a self test to the 8042.
Insure a 55H is received.
Read Manufacturing and Display Jumpers and Save in MFG_TEST.
TEST.11
BASE 64K READ/WRITE MEMORY TEST
Description
Write/Read/Verify data patterns AA, 55, FF, 01, and 00
to 1st 64K of storage. Verify storage Addressability.
TEST.11A
VERIFY 286 LGDT/SGDT/LIDT/SIDT INSTRUCTIONS
Description
Load GDT and IDT Registers with AA, 55, 00 and Verify correct.
TEST.12
VERIFY CMOS CHECKSUM/BATTERY OK
Description
Determine if Config Record can be used for initialization.
TEST.13
PROTECTED MODE TEST AND MEMORY SIZE DETERMINE (0 --> 640K)
Description
This Routine runs in Protected Mode in order to address all of
storage. It checks the Machine Status Word (MSW) for Protected Mode
and the Base Memory Size is determined and saved. Bit 4 of the CMOS
Diagnostic Status Byte is set if 512K --> 640K memory is installed.
During a Power Up sequence the Memory Size determine is done with
Plannar and I/O Parity Checks Disabled. During a Soft RESET the
Memory Size Determine will check for Parity Errors.
SHUT8:
TEST.13A
PROTECTED MODE TEST AND MEMORY SIZE DETERMINE (ABOVE 1024K)
Description
This routine runs in Protected Mode to address above 1M.
The Memory Size is Determined and Saved in CMOS.
During a Power Up sequence the Memory Size determine is done with
Plannar and I/O Parity Checks Disabled. During a Soft RESET the
Memory Size Determine will check for Parity Errors.
SHUT1:
TEST.14
INITIALIZE AND START CRT CONTROLLER (6845)
TEST VIDEO READ/WRITE STORAGE
Description
Reset the Video Enable Signal.
Select Alphanumeric Mode, 40 * 25, B & W.
Read/Write Data Patterns to memory. Check Storage Addressability.
ERROR = 1 Long and 2 Short Beeps
TEST.15
SETUP VIDEO DATA ON SCREEN FOR VIDEO LINE TEST
Description
Enable Video Signal and Set Mode, Display a horizontal bar on screen.
TEST.16
CRT INTERFACE LINES TEST
Description
Sense ON/OFF Transition of the Video Enable and
Horizontal SYNC Lines.
TEST.17
8259 INTERRUPT CONTROLLER TEST
Description
Read/Write the Interrupt Mask Register (IMR) with all ones and zeros.
Enable System Interrupt. Mask Device Interrupts Off.
Check for Hot Interrupts (Unexpected).
TEST.18
8254 TIMER CHECKOUT
Description
Verify that the System Timer (0) doesn't count too fast or too slow.
TEST.19
ADDITIONAL READ/WRITE STORAGE TEST (MUST RUN IN PROTECTED MODE)
Description
Write/Read Data Patterns to any Read/Write Storage after the 1st 64K.
Storage Addressability is checked.
SHUT3: Memory Error Reporting (R/W Memroy or Parity Errors)
TEST.20
ADDITIONAL PROTECTED (VIRTUAL MODE) TEST
Description
The Processor is put in Protected Mode and the following functions
are verified
1.Verify Protected Mode
The Machine Status is check for Virtual Mode.
2.Programmed Interrupt Test
An Programmed Interrupt 32 is issued and verified.
3.Exception Interrupt 13 Test
A Descriptor Segment Limit is set to zero and a write to that
Segment is attempted and Exception 13 is expected and verified.
4.LDT/SDT LTR/STR Test
Load LDT Register and Verify correct.
Load TASK Register and Verify correct.
They are verified via the STORE Instruction.
5.The Control Flags of the 286 for Direction are verified via the
STD and CLD Commands in Protected Mode.
6.BOUND Instruction Test (Exception INT 5)
Create a Signed Array Index within and outside the limits.
Check that no EXC INT if within limit and that and EXC INT 5 occurs
if outside the limits.
7.PUSH ALL POP ALL Test
Set General Purpose Registers to different values, issue a PUSH ALL,
Clear the Rigisters then issue a POP ALL and verify correct.
8.Check the VERR/VERW Instructions
The Access Byte is set to Read Only then to a Write Only and the
VERR/VERW Instructions are verified.
9.Cause an Interrupt 13 via a Write to a Read Only Segment
10.Verify the ARPL Instruction Functions
Set the RPL Field of a Selector RPL and verify that current Selector
RPL is set correctly.
11.Verify the LAR Instruction Functions
12.Verify the LSL Instruction Functions
13.Low MEG Chip Select Test
SHUT2:
SHUT7:
SHUT6:
TEST.21
KEYBOARD TEST
Description
Reset the Keyboard and Check that Scan Code "AA" is Returned to the
Processor. Check for Stuck Keys.
TSET.22
CHECK FOR OPTIONAL ROM FROM C800->E000 in 2K BLOCKS
Description
A Valid Module has "55AA" in the first 2 locations, Length Indicator
(Length/512) in the 3rd location, and Test/Initial Code Starting in
the 4th location.
<NOTE:> this routine is after the TEST.23.
TEST.23
DISKETTE ATTACHMENT TEST
Description
Check if IPL Diskette Drive is attached to System. If attached, verify
Status of NEC FDC and check Status. Complete System Initialization
then Pass Control to the Boot Loader Program.
BOOTSTRAP - INT 19H
BOOT STRAP LOADER
Description
Track 0, Sector 1 is Read into the Boot Location (0:7C00) and
Controll is Transferred there.
If there is a Hardware Error, Control is Transferred to the
ROM BASIC entry point.
FLOW:
1.Reset the Disk Parameter Table Vector (INT 1EH)
2.Clear @BOOT_LOCN (0:7C00)
3.Load System From Diskette -- CX has Retry Count 4
4.If read successful and Boot Record is valid,
then go to @BOOT_LOCN (0:7C00),
else loop 3.
5.Attempt Bootstrap from Fixed Disk -- CX has Retry Count 3
6.If read successful and Boot Record is valid,
then go to @BOOT_LOCN (0:7C00),
else loop 5.
7.INT 18H -- Go to RESIDENT BASIC