IBM AT 5170 Technical Reference page 251

Table of Contents

Advertisement

[8M Personal Co...put.,. MACRO Assembler
Version 2.00
1-5
TEST3 ----
06/10/85
POST EXCEPTION
INTERRUPT TESTS
06-10-85
457
OIF& 88 00&0
MOV
BX,DS TEMP
;
PUT A SELECTOR
IN 8X
458
0 I F9 B8 0048
MOV
AX ,ES-TEMP
; PUT A SELECTOR IN AX
459
01FC 80 CB 03
OR
8L,03H
I MAKE ACCESS OF 8X
<
AX
460
461
1-----
NOTE
ax
=
FIRST OPERANO
AX
=
SECOND OPERAND
462
463
ARPL
AX,BX
;
I
SSUE THE RPL COMMAND
464
OIFF
+
110013
LABEL
BYTE
465
0 IFF 88 C3
MOV
AX,BX
466
0201
+ ??0014
LABEL
BYTE
467
0 IFF
ORO
OFFSET CSI1?OOI3
468
01FF 63
DB
063H
469
0201
ORO
OFFSET CS:??0014
470
0201
74 85
JZ
ERROR EXIT1
GO
IF RPL WAS NOT CHANGED
471
0203 80 E3 03
AND
BL.03H
STRIP UNWANTED BITS
472
0206 80 F8 03
eMP
BL,03H
AS EXPECTEO?
473
0209 75 2F
JNZ
ERROR_EXIT2
GO
IF NOT
414
415
VERIFY LOAD SEGMENT LIMIT
(LSL)
416
;-----
AND LOAD ACCESS RIGHTS
lLAR)
INSTRUCTION
411
418
;-----
CHECK THE LAR
INSTRUCTION
419
480
0208 80 F8
MOV
AL.OF8H
<> <> <> <> <> <> <><><><><><>
481
0200 E6 80
OUT
MFG_PORT • AL
<><>
CHECKPOINT
F8
<><>
482
483
SET THE DESCR I PTOR TO LEVEL 3
484
485
020F C6 06 0040 F3
MOV
BYTE PTR OS: lES TEMP.DATA ACC RIGHTS) ,CPL3 DATA ACCESS
486
02 I 4 Be 0048
MOV
BX,ES TEMP
-
-
-
- ­
487
0211 2B CO
SUB
AX. AX-
I CLEAR AX
488
489
1-----
GET THE CURRENT OESCR I PTORS ACCESS RIGHTS
490
491
LAR
AX,BX
I
I
SSUE THE LAR COMMAND
492
0219 OF
DB
OOFH
493
021A
110015
LABEL
BYTE
494
021A 88 C3
MOV
AX,BX
495
021C
??0016
LABEL
BYTE
496
021A
ORO
OFFSET CS:? 700 15
497
021A 02
DB
002H
498
021C
ORO
OFFSET CS
I? ?OO 16
499
500
;-----
INSURE THE DESCRIPTOR WAS VISIBLE
501
502
021C 75 1C
JNZ
I GO IF LAR WAS NOT CHANGED
503
504
;-----
THE DESCRIPTORS ACCESS RIGHTS MUST BE 3
505
506
021 E 80 FC F3
eMP
AH, CPL3 OAT A ACCESS
; AS EXPECTED?
501
0221
75
11
JNZ
ERROR_EXIT2 -
; GO
I F
NOT
508
509
CHECK THE LSL
(LOAD SEGMENT LIMITS)
510
51 I
0223 BO F9
MOV
AL.OF9H
<><><><> <>
<>
<> <><><><><>
512
0225 E6 80
OUT
MFG PORT ,AL
,
<><>
CHECKPO INT
F9
<><>
513
0221 C 7 06 0048 AAAA
MOV
OS I ES_TEMP. SEG_L
I
MIT, OAAAAH
;
SET SEGMENT LIMIT TO OAAAAH
514
515
0220 C6 06 0040 93
MOV
BYTE PTR DSI1ES TEMP.DATA ACC RIGHTSI ,CPLO DATA ACCESS
516
0232 B8 0048
MOV
AX,ES TEMP
-
;-LOAD ES REGISTER-
­
511
LSL
8X.AX-
I GET THE DESCRIPTOR SEGMENT LIMIT
518
0235 OF
DB
OOFH
519
0236
??0011
LABEL
8YTE
520
0236 8B 08
MOV
BX.AX
521
0238
770018
LABEL
BYTE
522
0236
ORO
OFFSET CS
11
?OO I 7
523
0236 03
DB
003H
524
0238
ORO
OFFSET CS: 1100 I 8
525
0238 74 03
JZ
R07
GO
IF OK
526
527
023A
ERROR EXIT2:
528
023A E9 02CD R
-
..IMP
ERROR_EX IT
GO I F NOT SUCCESSFUL
529
530
0230 8 I FB AAAA
R07:
CMP
BX,OAAAAH
;
INSURE CORRECT SEGMENT LIMIT
531
0241
C1 06 0048 5555
MOV
OS:ES TEMP.SEG L1MIT.05555H
ISET THE SEGMENT LIMIT TO 05555H
532
0247 B8 0048
MOV
AX, ES-TEMP
­
533
LSL
BX,AX-
;
GET THE DESCRIPTOR SEGMENT LIMIT
534
024A OF
DB
OOFH
535
0248
+ ??0019
LABEL
BYTE
536
0248 88 08
MOV
BX,AX
537
0240
11001A
LABEL
BYTE
538
0248
ORO
OFFSET CS:? ?OO 19
539
0248 03
DB
003H
540
0240
ORO
OFFSET CS:77001A
541
0240 75 EB
JNZ
ERROR_EX I T2
1 GO I F NOT SUCCESSFUL
542
543
024F 8 I FB 5555
eMP
BX,05555H
I NSURE CORRECT SEGMENT LIM I T
544
0253 15 E5
JNZ
ERROR_EX I T2
GO IF NOT
545
546
541
~ -~~;- ~~~
-
~~ ~;
-
;~~~~~
-
~~;~
- - - - - - -
---------------------
-
- ­
548
;
TEST THAT A WRITE TO ADDRESS
IBOOOO DOES NOT WRITE
549
I
TO BOOOIO, OR
IB8000 DOES NOT WRITE TO B800:0
550
551
552
0255 BO FA
MOV
<> <><><><> <><><> <> <><><>
553
0251 E6 80
OUT
<><>
CHECKPOINT
FA
<><>
554
0259 6A 08
PUSH
MODIFY THE OESCRIPTOR TABLE
555
0258 1 F
POP
556
551
SET TEMPORARY ES DESCRIPTOR 64K SEGMENT L1MIT/CPLO DATA ACCESS
558
559
025C C7 06 0048 FFFF
MOV
OS:ES TEMP.SEG L1MIT,MAX SEG LEN
560
0262 C6 06 0040 93
MOV
BYTE PTR os: (ES_TEMP.OATA_ACC_RIGHTSI ,CPLO_OATA_ACCESS
561
562
START WITH SEGMENT IBOOOO
563
564
0267 C6 06 004C 1 a
MOV
BYTE PTR OS: (ES TEMP.BASE HI
BYTEI,IBH
565
026C C7 06 004A 0000
MOV
DS:ES TEMP.BASE-LD WORO,O
566
0212 6A 48
PUSH
BYTE PTR
ES TEMP -
LOAO ES REG I STER
567
0274 01
POP
ES
­
568
0275 28 FF
SUB
01,01
; POINT TO FIRST LOCATION
569
02 T7 26: C1 05 AA55
MOV
WORD PTR ES: [Oll,OAA55H ;
WRITE A TEST PATTERN
510
TEST3
5-79

Advertisement

Table of Contents
loading

Table of Contents