IBM XT 5160 Technical Reference page 249

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-19
01-10-86
19A5
ERR_BEEP
PROC
NEAR
19A5 9C
PUSHF
SAVE FLAGS
19A6 FA
CLI
o
I SABLE SYSTEM INTERRUPTS
19A1 OA F6
OR
DH,DH
ANY LONG ONES TO BEEP
19A9 14 IE
JZ
G3
NO, DO THE SHORT ONES
19AB
Gl :
LONG BEEPS
19AB B3 10
MOV
BL,112
COUNTER FOR LONG BEEPS
(1-3/4 SECONDS}
19AD B9 0500
MOV
CX,1280
o
I V I SOR FOR 932 HZ
19BO E8 OC5C R
CALL
BEEP
DO THE BEEP
19B3 B9 C233
MOV
CX,49115
2/3 SECOND DEL AY AFTER LONG BEEP
19B6 E8 OCAO R
CALL
WAITF
DELA Y BETWEEN BEEPS
19B9 FE CE
DEC
DH
ANY MORE LONG BEEPS TO DO
19BB 15 EE
JNZ
Gl
LOOP TILL DONE
19BD IE
PUSH
OS
SAVE OS REG I STER CONTENTS
19BE E8
lA12 R
CALL
DDS
19C1
80 3E 0012 R 01
CMP
OMFG_TST , 0 1H
MANUFACTURING TEST MODE?
19C6 IF
POP
OS
RES TORE OR I G I NAL CONTENTS OF (OS}
19C1 14 BD
JE
MFG_HALT
YES -
STOP BLINKING LED
19C9
G3:
SHORT BEEPS
19C9 B3
12
MOV
BL,18
COUNTER FOR A SHORT BEEP (9/32)
19CB B9 04B8
MOV
CX,1208
DIVISOR FOR 981 HZ
I 9CE E8 OC5C R
CALL
BEEP
DO THE SOUND
TH IS SUBROUTJ NE WILL PR I NT A MESSAGE ON THE 0 I SPLAY
PUT CHAR I N AL
PO I NT TO NEXT CHAR
SA VE PR I NT CHAR
CALL VIDEO 10
RECOVER PRINT CHAR
WAS IT LI NE FEED?
; NO,KEEP PRINTING STRING
YES -
HALT SYSTEM
RECOVER ERROR I NO I CA TOR
SET INTO 8255 REG
HALT SYS
SET BP NON-ZERO TO FLAG ERR
PR I NT MESSAGE
PR I NTER SOURCE TABLE
SAVE FOR LOW NIBBLE 0 I SPLA Y
SHIFT COUNT
NYBBLE SWAP
DO THE HIGH NIBBLE 0 I SPLA Y
RECOVER THE NIBBLE
I SOLA TE TO LOW NibBLE
F ALL I NTO LOW NIBBLE CONVER S I ON
CONVERT OO-OF TO ASC I I CHARACTER
ADD FIRST CONVERS ION FACTOR
ADJUST FOR NUMER I C AND ALPHA RANGE
ADD CONVERS I ON AND ADJUST LOW NIBBLE
ADJUST HIGH NIBBLE TO ASCH I RANGE
; 01 SABLE KB
; 0 I SPLA Y CHARACTER
IN AL
CALL VIDEO_IO
CS:CODE,DS:DATA
OS
AL,CS:[SI]
SI
AX
PRT HEX
AX -
AL, 10
G12A
NEAR
AL,89H
CMD PORT ,AL
AL,10000101B
PORT B,AL
AL , OMFG ERR FLAG
PORT_A,AL
-
; RETURN TO CALLER
ENDP
ES:OIO ROM INIT,0003H
; LOAD OFFSET
ES: 01 O-ROM-SEG, OS
; LOAD SEGMENT
DWORD PTR ES:OIO ROM INIT
; CALL INIL/TEST ROUTINE
OX
-
-
PROC
MOV
INC
PUSH
CALL
POP
CMP
JNE
RET
ENDP
ASSUME
G12:
P MSG
GI2A:
POP
RET
E_MSG
ENDP
.
-
----
-
----
- - -
------
-----
--
-
--- -- --- -----
-
------- ----- - --
E_MSG
PROC
NEAR
MOV
BP,SI
CALL
P MSG
PUSH
OS
CALL
DDS
MOV
AL , BYTE PTR OEQU I P FLAG
LOOP / HALT ON ERROR
AND
AL,OIH
-
SWITCH ON?
JNZ
G 12
NO - RETURN
MFG HALT:
-
CLI
MOV
OUT
MOV
OUT
MOV
OUT
HLT
;
---
-
----
-
--- ----- - - -- ------
---
-- -- -- --------
---
-- --
--
----
---
---
-
--
--
--
--
TH I S PROCEDURE WILL I SSUE LONG TONES
(1 -3/4 SECONDS)
AND ONE OR
;
MORE SHORT TONES
(9/32 SECOND}
TO INDICATE A FAILURE ON THE
PLANAR BOARD,
A BAD MEMORY MODULE, OR A PROBLEM WITH THE CRT.
ENTRY PARAMETERS:
DH
=
NUMBER OF LONG TONES TO BEEP.
DL
=
NUMBER OF SHORT TONES TO BEEP.
; ENTRY REQU I REMENTS:
;
S I
=
OFFSET (ADDRESS) OF MESSAGE BUFFER
;
CX
=
MESSAGE BYTE COUNT
;
MAX I MUM MESSAGE LENGTH IS 36 CHARACTERS
XL AT_PR PROC
NEAR
ADD
AL,090H
DAA
ADC
AL,040H
DAA
PRT_HEX PROC
NEAR
MOV
AH,14
MOV
BH,O
INT
10H
RET
PRT HEX ENDP
XLAT PR ENDP
XPC_BYTE
ENDP
F4
LABEL
WORD
OW
3BCH
OW
318H
OW
218H
F4E
LABEL
WORD
.
--
---
- - -
- --
-
-
- -
---
- -
--- ---
-
-
---
- - -
-----
---- -----
XPC BYTE
PROC
NEAR
-
PUSH
AX
MOV
CL,4
SHR
AL,CL
CALL
XLAT PR
POP
A X -
AND
AL,OFH
.
------------------------------------------------
;
CONVERT AND PR I NT ASC I I CODE
:
AL MUST CONTA I N NUMBER TO BE CONVERTED.
:
AX AND BX DESTROYED.
:
MOV
MOV
CALL
POP
ROM CHECK END:
-
RET
ROM_CHECK
1991
1991
1991 2E: 8A 04
199A 46
199B 50
199C E8
1969 R
199F 58
19AO 3C OA
19A2 15 F3
19A4 C3
19A5
1916
1916 8B EE
1918 E8
1991 R
191B IE
191C E8
lA12 R
191F AO 0010 R
1982 24 01
1984 15 OF
1986
1986 FA
1981 BO 89
1989 E6 63
198B BO 85
1980 E6 61
198F AO 0015 R
1992 E6 60
1994 F4
1995
1995 IF
1996 C3
1991
1910
1910 03BC
1912 0318
1914 0218
1916
1963
1963 04 90
1965 21
1966 14 40
1968 21
1969
1969 B4 OE
196B B1 00
1960 CD 10
196F C3
1910
1910
1910
1958
1958 50
1959 Bl
04
195B 02 E8
1950 E8
1963 R
1960 58
1961
24 OF
1945 26: C1 06 0061 R 0003
194C 26: 8C
1E 0069 R
1951
26: FF
IE 0061 R
1956 5A
1951
1951 C3
1958
2041
2048
2049
2050
2051
2052
2053
2054
2055
2056
2051
2058
2059
2060
2061
2062
2063
2064
2065
2066
2061
2068
2069
2010
2011
2012
2013
2014
2015
2016
2011
2018
2019
2080
2081
2082
2083
2084
2085
2086
2081
2088
2089
2090
2091
2092
2093
2094
2095
2096
2091
2098
2099
2100
2101
2102
2103
2104
2105
2106
2101
2108
2109
2110
2111
2112
2113
2114
2115
2116
2111
2118
2119
2120
2121
2122
2123
2124
2125
2126
2121
2128
2129
2130
2131
2132
2133
2134
2135
2136
2131
2138
2139
2140
2141
2142
2143
2144
2145
2146
2141
2148
2149
2150
2151
2152
2153
2154
2155
2156
2151
2158
2159
2160
5-102
POST (01/10/86)

Hide quick links:

Advertisement

Table of Contents
loading

Table of Contents