IBM AT 5170 Technical Reference page 256

Table of Contents

Advertisement

- -
IBM Personal Computer MACRO Assembler
Version 2.00
1-4
TEST4 ----
06/!0/65
POST AND 810S UTILITY ROUTINES
06-10-65
31.
PAGE
311
i--- XPC_BYTE -- XLATE_PR -- PRT_HEX -----------------------------------­
318
319
CONVERT AND PR I NT ASCII CODE CHARACTERS
320
321
AL CONTAINS NUMBER TO BE CONVERTED.
322
AX AND BX DESTROYED.
323
; ­
324
325
0116
XPC_BYTE
PROC
NEAR
DISPLAY TWO HEX DIGITS
326011850
PUSH
AX
SAVE FOR LOW NIBBLE DISPLAY
321
01 19 CO E6 04
5HR
AL,4
NIBBLE SWAP
~28
0 I 1 C E8 O! 22 R
CALL
XLAT_PR
DO THE HIGH NIBBLE DISPLAY
329
0 I IF 56
POP
AX
RECOVER THE NI88LE
330
012024 OF
ANO
AL,OFH
[SOLATE TO LOW NIBBLE
331
F ALL
I NTO LOW NIBBLE CONVERS [ON
332
333
0122
XLAT _PR PROC
NEAR
CONVERT CO-OF TO ASCII
CHARACTER
334
01220490
AOO
AL,090H
ADD FIRST CONVERSION FACTOR
335
0124 21
OAA
AD.JUST FOR NUMER I C AND ALPHA RANGE
336
0125
1440
ADC
AL, Q40H
ADD CONVERS I ON AND AD.JUST LOW NIBBLE
331
0121 21
DAA
Ao.JUST HIGH N (BBLE TO ASC I I RANGE
338
339
0128
PRT_HEX PRoC
NEAR
340
0128 B4 OE
OOV
AH,OEH
DISPLAY CHARACTER
IN
lAL' COiltMAND
34 I
0 12A B1 00
~OV
SH,O
342
012C CD 10
INT
10"
343
012E C3
RET
344
345
012F
PRT HEX ENoP
346
012F
XLAT PR ENDP
341
012F
XPCJ3YTE
ENDP
348
34.
1 - -- PRT_SEG -- ------------------ - -- ------ -------- -- ---------­
350
PRINT A SEGMENT VALUE TO LOOK LIKE A 21
BIT ADDRESS
351
OX MUST CONTAIN SEGMENT VALUE TO BE PRINTED
352
I - - - - --- - - - - - - - - - - - - - - --- - - - - - - - - - - - -- - - - -- - - - - - - - - - - - - - --- - - - - - ­
353
354
012F
PRT SEG PROC
NEAR
355
012F 8A C6
-
MOV
AL,DH
GET MSB
356
0131 EB 0118 R
CALL
XPC BYTE
DISPLAY SEGMENT HIGH BYTE
357
0134 8A CZ
MOV
AL,OL
L5B
358
0136 E8 0118 R
CALL
XPC BYTE
DISPLAY SEGMENT LOW BYTE
359
0139 BO 30
OOV
AL,TO'
PRINT A '0
'
360
0138 E8 0 I 28 R
CALL
PRT HEX
TO MAKE LOOK LIKE ADDRESS
361
013E 80 20
MDV
AL, T ,
ADD END I NG SPACE
362
0140 E8 0126 R
CALL
PRT_HEX
363
0143 C3
RET
364
365
0144
PRT _SEG ENDP
3 ••
3.7
; - -
PROT_PRT_HEX ­
368
;
3.9
;
PUT A CHARACTER TO THE DISPLAY 8UFFERS WHEN IN PROTECTED MODE
370
;
371
;
(AL': ASCII CHARACTER
372
;
101': DISPLAY REGEN BUFFER POSITION
373
374
315
0144
PROT PRT HEX
PROC
NEAR
316
014406
PUSH
E5
SAVE CURRENT SEGMENT REGISTERS
-
311
014551
PUSH
01
378
014601
E1
SAL
Dr.
t
MULTIPLY OFFSET BY TWO
379
380
; - - - - -
MONOCHROME V IDEO CARD
381
382
01411 6A 20
PUSH
BYTE PTR C SWCRT PTR
GET MONOCHROME BUFFER SEGMENT SELECTOR
383
014A 01
POP
ES
- -
SET
IES)
TO B/W DISPLAY BUFFER
384
014B AA
STOSB
PLACE CHARACTER I N BUFFER
385
014C 4F
DEC
01
AD.JUST POINTER SACK
38.
387
ENHANCED GRAPHICS ADAPTER
388
389
0140 6A 30
PUSH
BYTE PTR E CCRT PTR
ENHANCED COLOR 0 I SPLA Y PO [NTER LOW 64K
ES
- ­
390
014F 01
POP
LOAD SEGMENT SELECTOR
391
0150 AA
STOS8
PLACE CHARAcTER
I N BUFFER
392
0151
4F
DEC
01
AD.JUST PO I NTER BACK
393
0 I 52 6A 311
PUSH
BYTE PTR E CCRT PTR2
ENHANCED COLOR DISPLAY POINTER HI 64K
394
015401
PDP
ES
LOAD SEGMENT SELECTOR
395
0155 AA
STOS8
PLACE CHARACTER IN BUFFER
396
01564F
DEC
01
AD.JUST POINTER BACK
3"
3.8
COMP A T IBLE COLOR
3"
400
0151 6A 28
PUSH
BYTE PTR C CCRT PTR
SET IDS) TO COMPATIBLE COLOR MEMORY
401015901
POP
ES
- ­
402
015A 53
PUSH
BX
SAVE WORK REGISTERS
403
015B 52
PUSH
OX
404
015C 51
PUSH
CX
405
015033 C9
XDR
CX,CX
Tlt.lEOUT LOOP FOR -SAD" HARDWARE
406
015F BA 03DA
ODV
DX.03DAH
STATUS ADDRESS OF COLOR CARD
401
011>293
XCHG
AX,BX
SAVE
IN IBX) REGISTER
408
0163
PROT_S;
409
0163 EC
IN
AL,OX
I GET COLOR CARD STATUS
410
0164 A8 09
TEST
AL,RVRT+RHRZ
CHECK FOR VERT 1 CAL RETRACE (OR HORZ 1
411
0166 EI
FB
LOOPZ
PROT S
TIMEOUT LOOP TILL FOUND
412
016893
XCHG
AX,BX
RECOVER CHARACTERS
4130169AA
STOSB
PLACE CHARACTER
! N BUFFER
414
415
016A 59
POP
CX
RESTORE REGI STERS
416
0168 SA
POP
OX
411
016C 58
POP
BX
418
016D5F
POP
01
419
QI6E 01
PDP
E5
420
0 16F C3
RET
421
422
0110
5-84
TEST4

Advertisement

Table of Contents
loading

Table of Contents