IBM 5150 Technical Reference page 173

Hide thumbs Also See for 5150:
Table of Contents

Advertisement

LOC OBJ
Fila 83C204
FllB BAC)
FHD EE
FilE 5A
FIlF 2BCO
FIll BEDS
FI23 C51E7400
Fll7 58
Fll8 891000
FllB aOFC02
FlZE 7210
Fl30 0309
F132 80FC04
F135 7209
F137 0309
F139 80FC07
FBe 7202­
F13E 0309
F140
FI40 50
Fl4! 32E4
Fl43
Fl4) 8AC4
Fl4S EE
F146 42
Fl47 FECit
F149 8A07
Fl48 EE
F14C 43
F14D 4A
FlltE ElF3
FlSO 58
FIS1 IF
F152 33FF
F154 893E4EOO
F158 C606620000
FISC 890020
F16D 80FC04
F163 720B
F165 SOFCO?
FI68 7404
Fl6A 33CO
FI6C EB05
Fl6E
fl6E 8508
FI70
FI70 B82007
fl73
FI73 f3
F174 AB
FI7S C70660000706
FI78 A04900
FI7E 32£4
Fl8D BBfO
Flel 88166300
Fl86 83C204
F189 2E8A84F4FO
Fl8E EE
FlaF A26500
LINE
SOURCE
3573
ADO
OX,4
; POINT TO CONTROL REGISTER
3574
MOV
AL.BL
; GET HoDE SET FOR CARD
3575
OUT
DX.Al
; RESET VIDEO
3576
POP
DX
I BACK TO BASE REGISTER
3577
SUB
AX,AX
; SET UP FOR ABSO SEGI1ENT
3578
MOV
DS,AX
I
ESTABLISH VECTOR TABLE ADDRESSING
3579
AS~E
D5: A6SQ
3580
LOS
ex.
PARI1_PTR
; GET POINTER TO VIDEO PARHS
3581
POP
AX
; RECOVER PARHS
3582
ASSUME
oS:CODE
3583
HOV
CX,H4
; LENGTH OF EACH ROW
OF
TABLE
358.
eH'
AH,2
I
DETERMINE WHICH ONE TO USE
3585
Je
H9
; HaDE IS
0
OR
1
3586
ADD
BX,CX
; HOVE TO NEXT ROW OF INIT TABLE
3587
AH,4
eH'
3588
JC
H9
I
HOUE IS
2
OR :3
3589
ADD
BX.CX
I HOVE TO GRAPHICS ROW OF INIT_TABlE
3590
eH'
AM.7
3591
Je
H9
I
HODE IS 4,5, OR
6
35n
ADD
BX.CX
, MOVE TO 8W CARD ROW OF INIT_TABlE
3593
3594
,-----
ex
POINTS TO CORRECT ROW OF INITIALIZATION TABLE
3595
3596
H9:
3597
PUSH
AX
; SAVE MODE IN AH
3598
XOR
AH,AH
; AH WIll SERVE AS REGISTER
3599
I
tM1BER DURING lOOP
3600
3601
;-----
lOOP THROUGH TABLE. OUTPUTTTING REG ADDRESS. THEN VALUE FROM TABLE
3602
3603
MID:
I
INIT lOOP
3604
HOV
Al,AH
I
GET 6845 REGISTER NUt1BER
3605
OUT
DX,Al
3606
INC
OX
I
POINT TO DATA PORT
3607
INC
AH
I
NEXT REGISTER VALUE
3608
HOV
AL,lex)
I GET TABLE VALUE
3609
OUT
DX,AL
j
OUT TO CHIP
3610
INC
ex
J
"IEXT IN TA.BlE
3611
DEC
OX
; BACK TO POINTER REGISTER
3612
LOOP
MID
I
DO THE WHOLE TABLE
3613
POP
AX
I
GET HODE BACK
3614
POP
OS
I
RECOVER SEGI1ENT VALUE
3615
ASSUME
DS:OATA
3616
3617
;-----
FIll REGEN AREA WITH BLAtI<
3618
3619
XOR
OI,DI
I SET UP POINTER FOR REGEN
3620
HOY
CRT.START.DI
; START ADDRESS SAVED IN GLOBAL
3621
HOY
ACnVE]AGE,O
I
SET PAGE VALUE
3622
HOY
CX.8192
; NUtlBER OF WORDS IN COLOR CARD
3623
CH'
AH,4
I
TEST FOR GRAPHICS
3624
JC
H12
; NO_GRAPHICS_INIT
3625
eH'
AH,7
I
TEST FOR BN CARD
3626
JE
H11
; BW_CARD_INIT
3627
XOR
AX,AX
; FIll FOR GRAPHICS I10DE
3628
JH'
SHORT H13
; CLEAR_BUFFER
3629
MlI:
3630
HOV
CH,08H
; BUFFER SIZE
ON
BW CARD
3631
H12:
; NO_GRAPHICS.INIT
3632
HOV
AX,'
'+7*256
I
FILL CHAR FOR ALPHA
3633
H13:
3634
REP
STOSW
; FILL THE REGEN BUFFER WITH BlANKS
3635
3636
;----- ENABLE VIDEO AND CORRECT PORT SETTING
3637
3638
HOV
CVRSOR.MOOE
.607H
I
SET CURRENT CURSOR HaDE
3639
HOV
I
GET THE HODE
3640
XOR
AH.AH
I
INTO AX REGISTER
3641
HOY
SI.AX
I TABLE POINTER. INDEXED BY MODE
3642
HOY
OX.AooR_6845
I PREPARE TO OUTPUT TO
3643
;
VIDEO ENABLE PORT
3644
ADD
DX,4
3645
HOY
Al,CS: ISI+DFFSET
li71
3646
OUT
OX,Al
I
SET VIDEO ENABLE PORT
3647
HOY
CRT.HODE.SET ,Al
I SAVE THAT YALUE
3648
5-80 System BIOS

Hide quick links:

Advertisement

Table of Contents
loading

Table of Contents