IBM 5150 Technical Reference page 175

Hide thumbs Also See for 5150:
Table of Contents

Advertisement

LOC OBJ
LINE
SOURCE
3725
1-------- -­ - - - - - ­ _______________________________ _
3726
, SET_CPOS
3727
THIS ROUTINE SETS THE CURREHT CWSOR
3728
I
POSITION TO THE HEW X-V VALUES PASSED
3729
l INPUT
3730
DX - ROW.
COUJt,~
OF HEW CURSOR
3731
BH - DISPLAY PAGE OF CURSOR
3732
; OUTPUT
3733
C~SOR
IS SET AT 6845 IF DISPLAY PAGE
3734
3735
IS CURRENT DISPLAY
1------------------------------------____________
FlEE
3736
SET_CPOS
PROC
NEAR
FlEE BACf
3737
"""
CL.BH
flFO 3ZED
3738
XOR
CH,CH
, ESTABLISH LOOP COUNT
FIF2 DIEI
3739
CX,I
J
WORD OFFSET
SAL
FlF4 88F1
3740
MOV
SI,CX
; USE INDEX REGISTER
FIF6 895450
3741
MOV
[SI+OFFSET CURSOR_POSN1.DX
J SAVE THE POINTER
FIF9 3&3£6200
3742
CHP
ACTIVE_PAGE, BH
FIFO 7505
3743
JHZ
H'7
I SET_CPOS_RETLIRN
FlFF 8BC2
3744
MOV
AX,DX
J GET ROW/COLUMN TO AX
F20l £80Z00
3745
CALL
H18
J
CURSOR_SET
FlOIi
3746
H17:
l SET_CPOS_RETtlfN
FlOIi EBBF
3747
JHP
3748
3749
3750
,~----
SET CURSOR POSITION, AX HAS
ROW/COL~
FOR CURSOR
3751
FlOb
3752
H'8
PROC
HEAR
FlOb £87COO
3753
CALL
POSITION
I DETERMINE LOCATION IN REGEN BUFFER
F209 B8C8
3754
HOV
CX,AX
FlOB 030E4EOO
3755
ADO
CX,CRT_START
J
ADD IN THE START ADDR FOR THIS PAGE
F20F OlF9
3756
SAR
CX,I
I
DIYIDE
BY 2
FCR CHAR ONLY COUNT
F2U MOE
3757
HOV
AH,14
J REGISTER
tl.lHBER
FOR CURSOR
F213 ESC2FF
3758
CALL
H'.
I
OUTPUT THE VALUE TO THE 6845
F216 C3
3759
RET
3760
H'8
EHOP
3761
; --------------------­ ______________________ -­ ------------------­
3762
1
ACT_DISP_PAGE
3763
THIS ROUTINE SETS THE ACTIVE DISPLAY PAGE. ALLOWING THE
3764
FULL USE OF THE RAM SET ASIDE FOR THE VIDEO ATTACHMENT
3765
I
INPUT
3766
AL HAS THE NEW ACTIVE DISPLAY PAGE
3767
; OUTPUT
3768
THE 6845 IS RESET TO DISPLAY THAT PAGE
3769
; ---­ ---------------------------------­ ------------------­ ------­
F217
3710
F217 A26200
3771
HOV
ACTIVE_PAGE, AL
I SAYE ACTIVE PAGE VALUE
FlU 880£4COO
3772
MOV
CX.CRT_LEN
I GET SAYED LENGTH OF REGEN BUFFER
F21E 98
3773
C8"
I
CONVERT AL TO WORD
F21F 50
3774
PUSH
AX
I
SAYE PAGE YALUE
F2:20 F7EI
3775
I'fJL
CX
I DISPLAY PAGE TIMES RESEN LENGTH
F222 A34EOO
3776
MOV
CRT_START. AX
J
SAYE START ADDRESS FOR
3777
J
LATER REQUIREMENTS
F225 88C8
3778
HOV
CX,AX
I
START ADDRESS
TO
CX
F227 DIF9
3779
SAR
CX,l
I
DIYIDE BY
2
FOR 6845 HANDLING
F229 B40e
3780
HOV
AH,12
I 6845 REGISTER FOR START ADDRESS
FZZB E8AAFF
3781
CALL
M16
F22E 58
3782
8X
I RECOVER PAGE VALUE
POP
F22F DIn
3783
SAL
BX,
1
I *2
FOR WORD OFFSET
FUI 884750
3784
"""
AX.[BX + OFFSET CURSOR_POSH)
; GET CURSOR FOR THIS PAGE
F234 E6CFFF
3785
CALL
M18
; SET THE CURSOR POSITION
f237 EB8C
3766
JHP
SHORT VIDEO_RE11.RN
3788
1---------------------------------------------------------------­
3789
I
READ_CURSOR
3790
THIS ROUTINE READS THE CURRENT CURSOR VALUE FROM THE
3791
6845, FORMATS
IT,
Attl SEtlJS IT BACK TO THE CAllER
3792
INPUT
3793
BH - PAGE OF CURSOR
3794
I OUTPUT
3795
OX - ROW, COLUHH OF THE ClIRRENT CURSOR POSITION
3796
ex -
CURRENT CURSOR MODE
3797
;---------------------------------------------------------------­
F239
3798
READ_CURSOR
PROC
NEAR
F239 8AOF
3799
HOV
BL.BH
F23B 32FF
3800
XOR
BH.SH
F230 DIEl
3801
SAL
BXol
J
WORD
OFFSET
5-82 System BIOS

Hide quick links:

Advertisement

Table of Contents
loading

Table of Contents