IBM XT 5160 Technical Reference page 239

Hide thumbs Also See for XT 5160:
Table of Contents

Advertisement

IBM Personal Computer MACRO Assembler
Version 2.00
POST ----- 01/10/86
SYSTEM POST AND BIOS PROCEDURES
1-9
01-10-86
; ----- DMA TCO SHOULD BE ON BY NOW -
SEE I FIT IS
;----- PRINT FAILING ADDRESS AND XOR'ED PATTERN IF DATA COMPARE ERROR
·
---
- -
------- -- --- -- ---
--
---
- -
---
--
---- ------ ---- --- ------ ---
-
- --
F9:
RECOVER WORK REGS
FIRST PASS?
; PR I NT '
KB OK'
;
SET BEGINNING ADDRESS
; TCO STATUS BIT ON?
; GO ON WITH NEXT TEST IF OK
; PO I NT TO NEXT 2K ADORES S
;
<><><><><><><><><><><><><>
; POST 101 ERROR MSG AND HALT
;
SET BX=OOOO
; GET I ST WORD FROM MODULE
; BUS SETTL I NG
;
= TO 10 WORD?
; PROCEED TO NEXT ROM I F NOT
; GO CHECK OUT MODULE
; CHECK FOR END OF ROM SPACE
GET ADDR OF FDC CARD
TURN MOTOR ON, EN DMA / I NT
WR I TE FDC CONTROL REG
; MOTOR_WAIT:
; LOOP TILL ALL MEM. CHECKED
; LINE FEED
; RECOVER A NUMBER
;
AT FOOOO YET?
; GO CHECK ANOTHER ADD.
I F NOT
AX
PRT HEX
PRT-DEC LOOP
CX,l
-
S I , OFFSET F3B
DX,OFOOOH
ROM_SCAN_l
AL,DMA+08H
AL, 0000000 I B
ROM SCAN
OS -
ttMFG ERR FLAG, 03H
06
-
-
DX,OC800H
DX,0080H
AL,CS: [SI]
SI
PRT HEX
KB LOOP
AX-
AX,64
E20B
BX
cx
ox
E21
AL,IO
PRT_HEX
DS,DX
BX,BX
AX, [BX]
BX
BX
AX,OAA55H
NEXT ROM
ROM CHECK
ARE:WE_DONE
DX,03F2H
AL,ICH
DX,AL
CX,CX
POP
OS
MOV
AL, BYTE PTR ttEQU I P_FLAG
DISKETTE PRESENT?
AND
AL,OIH
NO - BYPASS 0 I SKETTE TEST
JZ
F15
DISK TEST:
MOV
OX, 3F 1H
I.D.-PORT
IN
AL,DX
NOP
MOV
BX,OFFFFH
BUS PRECHARGE
AND
AL,OF8H
KEEP 1.0. BITS
AND
ttHF_ CNTRL, 1 1 I I I I 1OB
RESET DUAL BIT
CMP
AL,CARD_ID
JNE
NO 10
OR
ttHF_ CNTRL, I
;
SET DUAL BIT
IN
AL,INTAOI
AND
AL,OBFH
; ENABLE 0 I SKETTE INTERRUPTS
OUT
INTA01,AL
MOV
AH,O
RESET NEC FDC
MOV
DL,AH
SET FOR DR I VE 0
INT
13H
VER I FY STATUS AFTER RESET
TEST
AH,OFFH
STATUS OK?
JNZ
F13
NO -
FDC FA I LED
IN
AND
JNZ
POP
MOV
JMP
MOV
MOV
OUT
SUB
; ----- TURN DR I VE 0 MOTOR ON
DISKETTE ATTACHMENT TEST
DESCR I PT I ON
CHECK IF IPL DISKETTE DRIVE IS ATTACHED TO SYSTEM.
IF
ATTACHED, VERIFY STATUS OF NEC FDC AFTER A RESET.
ISSUE
A RECAL AND SEEK CMD TO FDC AND CHECK STATUS. COMPLETE
SYSTEM INITIALIZATION THEN PASS CONTROL TO THE BOOT
LOADER PROGRAM.
E2IA:
MOV
CH,AL
SAVE FAILING BIT PATTERN
MOV
AL,CR
CARRAGE RETURN
CALL
PRT HEX
MOV
AL,LF
;
LINE FEED
CALL
PRT_HEX
POP
AX
RECOVER AMT. OF GOOD MEM.
ADD
SP,6
BALANCE STACK
MOV
DX,DS
GET FA I LING SEGMENT
POP
OS
PUSH
OS
MOV
ttMEMORY_S I ZE, AX
LOAD MEM. SIZE WORD TO SHOW
HOW MUCH MEM. WORKING
MOV
ttMFG_ERR_FLAG,DH
<> <> <> <> <> <> <> <> <> <> <> <> <>
<><>CHECKPO I NTS 08->AO<><>
CALL
PRT SEG
PRINT IT
MOV
AL,CH
;
GET FAILING BIT PATTERN
CALL
XPC BYTE
; CONVERT AND PR I NT CODE
MOV
SI,OFFSET EI
;
SETUP ADDRESS OF ERROR MSG
CALL
E_MSG
; PR I NT ERROR MSG
·
---- -- -- --
-- - -
- --
-
---- -- -------- ----
-
---
-
--- -
-
--- ------ -- -- ---
--
; CHECK FOR OPT I ONAL ROM FROM C8000->FOOOO
IN 2K BLOCKS
(A VALID MODULE HAS '55AA'
IN THE FIRST 2 LOCATIONS,
LENGTH I NO I CATOR (LENGTH /5
I
2)
I N THE 3D LOCAT I ON AND
TEST/INIT. CODE STARTING IN THE 4TH LOCATION.)
·
-
----
- -
--
-
- ---- - --- ---- -
- ------
--- ----- --
-
--- -- ----
-
- -- --- -- ----
ROM SCAN:
-
MOV
ROM SCAN 1:
-
MOV
SUB
MOV
PUSH
POP
CMP
JNZ
CALL
JMP
NEXT ROM:
-
ADD
ARE WE DONE:
-
-
CMP
JL
POP
CALL
LOOP
MOV
MOV
KB LOOP:
-
MOV
INC
CALL
LOOP
POP
CMP
JE
POP
POP
POP
LOOP
MOV
CALL
FlO:
Fll :
908
04ED 58
909
04EE E8 1969 R
9 I 0
04F 1 E2 FA
91 I
04F3 B9 0007
9 I 2
04F6 BE 00 I A R
913
04F9
9 14
04F9 2E: 8A 04
915
04FC 46
916
04FD E8
1969 R
917
0500 E2 F7
918
0502 58
919
0503 3D 0040
920
0506 74 A9
921
0508 5B
922
0509 59
923
050A 5A
924
050B E2 B4
925
0500 BO OA
926
050F E8
1969 R
927
928
929
930
0512 E4 08
931
0514 24 01
932
0516 75 32
933
0518
IF
934
0519 C6 06 0015 R 03
935
051 E E9 0385 R
936
937
938
939
0521
8A E8
940
0523 BO 00
941
0525 E8
1969 R
942
0528 BO OA
943
052A E8
1969 R
944
0520 58
945
052E 83 C4 06
946
053 I 8C DA
947
0533
IF
948
0534 IE
949
0535 A3 00 I 3 R
950
951
0538 88 36 00 I 5 R
952
953
053C E8 OCBA R
954
053F 8A C5
955
0541 E8
1958 R
956
0544 BE 180 I R
957
0547 E8
1976 R
958
959
960
961
962
963
964
054A
965
054A BA C800
966
0540
967
0540 8E DA
968
054F 2B DB
969
0551
8B 07
970
0553 53
971
0554 5B
972
0555 3D AA55
973
0558 75 06
974
055A E8
1920 R
975
0550 EB 05 90
976
0560
977
0560 81 C2 0080
978
0564
979
0564 81 FA FOOO
980
0568 7C E3
981
982
983
984
985
986
987
988
989
990
056A
991
056A
IF
992
056B AO 0010 R
993
056E 24 01
994
0570 74 5E
995
0572
996
0572 BA 03F I
997
0575 EC
998
0576 90
999
0577 BB FFFF
1000 057A 24 F8
100
I
057C 80 26 008F R FE
1002 0581
3C 50
1003 0583 75 05
1004 0585 80 OE 008F R 01
1005 058A
1006 058A E4 21
1007 058C 24 BF
1008 058E E6 21
1009 0590 B4 00
1010 0592 8A 04
101 1 0594 CD 13
1012 0596 F6 C4 FF
1013 0599 75
19
1014
1015
1016
1017 059B BA 03F2
1018 059E BO
1C
1019 05AO EE
1020 05A 1 2B C9
1021
05A3
5-92
POST (01/10/86)

Hide quick links:

Advertisement

Table of Contents
loading

Table of Contents