IBM AT 5170 Technical Reference page 347

Table of Contents

Advertisement

----
- - - - - - - - - - - - - - - - - - - - - - - -
IBM P.rsonal Comput.r MACRO Aa ••mbler
V.rsion 2.00
1-13
BIOSI
1249
1250
1251
1252
1253
1254
1255
1256
1257
1258
1259
1260
1261
1262
1263
1264
1265
1266
1267
1268
1269
1270
1271
1272
1273
0442
0447
044B
0450
0454
0459
045A
045A
0450
045A
045A
0450
0450
045E
045E
0461
045E
045E
12740461
1275
1276 0461
1217
12780464
12790467
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
1290
1291
1292
1293
1294
1295
1296
1297
1298
1299
1300
1301
1302
1303
1304
1305
1306
1307
1308
1309
1310
1311
1312
1313
1314
1315
1316
1317
1318
0466
046A
046C
Of6C
046F
0471
0474
0476
0479
047B
047C
047F
0481
0482
0483
0483
0483
0484
0487
0487
13190487
1320 0486
1321
1322 0486
1323
06/10/85
INTERRUPT
C7 44 38 FFFF
C6 44 3C OF
C7
44 3A 0000
C6 44 3D 9B
C7 44 3E 0000
OF
8B 54 08
0
I
OF
88 5C
10
01
B8
QOOI
OF 01 FO
EA
046C R
0038
B8 0018
6E 08
B8 0020
6E CO
B6 0026
8E DO
5B
63 C4 04
6A 30
53
CB
F8
E9 0057 R
CF
15H BIOS ROUTINES
06-10-85
MOV
[SIJ.BIO CS.SEG LlMIT,MAX SEG LEN
J SET LENGTH
MOV
[51! .810:CS.BASE_HI_BYTE,CSEGi"_HI
;
SET HIGH BYTE OF CS=OF
MOV
lSI
.BIO_CS.BASE_LO_WORD,CSEGO_LO
I SET LOW WORD OF CS=O
MOV
MOV
[~:
J
:~:g:g~:g~i~=~~~E~~~~;~,CPLO_CODE_AC~Ei~RO
RESERVED AREA
;----------
- -----------
-
- -
----- ---------­
;
ENABLE PROTECTED MODE
,
;
----------------------- --- - -
--- --------­
,------
-
-
------- ­
LGDT
[SI].GDTPTR
j
LOAD GLOBAL DESCRIPTOR TABLE REGISTER
DB
OOFH
170005
LABEL
BYTE
MaV
DX,WORO PTR ISI].GDTPTR
770006
LA8EL
8YTE
ORG
OFFSET CS:??0005
DB
001H
DRG
OFFSET CS: 110006
LlDT
[SI].IOTPTR
INTERRUPT DESCRIPTOR TABLE REGISTER
DB
OOFH
710007
LABEL
BYTE
770008
MOV
LABEL
BX,WORO PTR ISI].IDTPTR
BYTE
ORG
OFFSET CS: ??0001
DB
OOIH
ORG
OFFSET CS: ??0008
MOV
~~.
V I RTUAL_ENABLE
MACHINE STATUS WORD NEEDED TO
LMSW
SW I TCH TO V I RTUAL MODE
DB
OOFH,OOIH,OFOH
DB
OEAH
PURGE PRE-FETCH QUEUE WITH FAR ,JUMP
OW
OFFSET VMOOE
-
TO OFFSET
OW
810_CS
-
I N SEGMENT -PROTECTED MODE SELECTOR
VMODE,
I
SETUP USER SEGMENT REGISTERS
:
1---------------------------------------­
MOV
AX,USER OS
I
SETUP USER'S DATA SEGMENT
MOV
DS,AX
-
; TO PROTECTED MODE SELECTORS
MOV
AX,USER ES
;
SETUP USER'S EXTRA SEGMENT
MOV
ES,AX ­
MOV
AX,USER SS
I
SETUP USER'S STACK SEGMENT
MOV
SS,AX­
:
-----
-
-
- - - -
---------------
- -
--
- -
-------­
PUT TRANSFER ADDRESS ON STACK
AND RETURN TO THE USER
t
;-----
-- - - - - - - -
-
-
--------
- - - - - - - -
-------­
POP
8X
I GET RETURN IP FROM THE STACK
ADO
SP,4
; NORMALIZE STACK POINTER
PUSH
USER CS
;
SET STACK FOR A RETURN FAR
PUSH
ax-
RET
RETURN TO USER
I N V I RTUAL MODE
X_VI RTUAL
ENOP
;- -
DEVICE BUSY AND INTERRUPT COMPLETE
;
THIS ROUTiNE
IS A TEMPORARY HANDLER FOR DEVICE BUSY
;
AND I NTERRUPT COMPLETE
,
I
INPUT
-
SEE PROLOGUE
;
----
-----------------------------
- - --- ----- ------ ---- --- - - - - -- ­
DEVICE BUSY
PROC
NEAR
-
CLC
TURN CARRY OFF
"MP
CI F
RETURN W
J
TH CARRY FLAG
DEV ICE_BUSY
ENOP
I NT_COMPLETE
PROC
NEAR
IRET
I RETURN
I NT _ COMFLETE
ENDP
CODE
ENDS
END
BIOS1
5-175

Advertisement

Table of Contents
loading

Table of Contents