EasyManua.ls Logo

IBM XT 5160 - Page 301

IBM XT 5160
420 pages
To Next Page IconTo Next Page
To Next Page IconTo Next Page
To Previous Page IconTo Previous Page
To Previous Page IconTo Previous Page
Loading...
LOC
OBJECT
LI
NE SOURCE
(B
I
OS
FOR
THE
I
BM
PERSONAL COMPUTER
XT)
1 1
108/82
AX = ROW, COLUMN POS I T I
ON
OUTPUT
AX =
OFFSET
OF CHAR POS I T I
ON
I N REGEN
BUFFER
POSITION
THIS
SERVICE
ROUTINE
CALCULATES
THE
REGEN
BUFFER
ADDRESS OF A CHARACTER I N
THE
ALPHA
MODE
.
----------
----------
---
---------
--
--------
----------- ---
SCROLL
UP
;
TH
I S ROUT I NE MOVES A
BLOCK
OF CHARACTERS UP
ON
THE
SCREEN
SAVE REG I STER
ADD I N
COLUMN
VALUE
• 2 FOR
ATTR
I
BUTE
BYTES
SAVE
LI
NE COUNT
IN
BL
TEST
FOR
GRAPHICS
MODE
HANDLE
SEPARATELY
TEST
FOR
BW
CARD
ROWS
TO
AL
DETERM I NE
BYTES
TO
ROW
POINT
TO
NEXT
LINE
IN
BLOCK
COUNT OF
LINES
TO MOVE
ROW
LOOP
CLEAR
ENTRY
RECOVER
ATTR
I
BUTE
IN
AH
FILL
WITH
BLANKS
CLEAR
LOOP
CLEAR-THE
ROW
PO
I
NT
TO
NEXT
LI
NE
COUNTER OF
LINES
TO
SCROLL
CLEAR
LOOP
SCROLL_END
I S
TH
I S
THE
BLACK
AND
WH
I
TE
CARD
I F
SO,
SK
I P
THE
MODE
RESET
GET
THE
VALUE
OF
THE
MODE
SET
ALWAYS
SET
COLOR CARD PORT
V
IDEO_RET
_HERE
BLANK
FIELD
GET
ROW
COUNT
GO
CLEAR
THAT
AREA
UP
CONTINUE
SAVE
FILL
ATTRIBUTE
IN
BH
UPPER
LEFT
POS I T I
ON
DO
SETUP
FOR
SCROLL
BLANK
FIELD
FROM ADDRESS
#
ROWS
I N BLOCK
#
ROWS
TO
BE
MOVED
ROW
LOOP
MOVE ONE
ROW
TEST
FOR SPEC I
AL
CASE HERE
HAVE
TO
HANDLE
80X25
SEPARATELY
CONVERT TO REGEN
PO
INTER
OFFSET
OF ACT I VE PAGE
TO ADDRESS FOR
SCROLL
FROM ADDRESS FOR
SCROLL
OX
= # ROWS,
#COLS
I N
BLOCK
I NCREMENT FOR 0
OR
I
GIN
SET
HIGH
BYTE
OF COUNT TO ZERO
GET
NUMBER OF COLUMNS
IN
0 I
SPLA
Y
TIMES
2 FOR
ATTRIBUTE
BYTE
GET
LINE
COUNT
DE
TERM I NE
OFFSET
TO FROM ADDRESS
• 2 FOR
ATTR
I
BUTE
BYTE
EST
ABL
I
SH
ADORES
SING
TO REGEN
BUFFER
; GUARANTEED TO
BE
COLOR CARD HERE
WAIT
DISP
ENABLE
GET
PORT
-
WA
I T FOR
VERT
I
CAL
RETRACE
WA
I T
_0
I SP
_ENABLE
DX=3D8
TURN
OFF
V
IDEO
OUR
I
NG
VERT I
CAL
RETRACE
ENDP
OX
DX,3DAH
AX
AL,DX
AL,8
N8
AL,25H
DL,OD8H
DX,AL
AX
OX
POSITION
AX,CRT
START
DI,AX
-
SI,AX
DX,CX
DH
DL
CH,CH
BP,CRT
COLS
BP,BP
-
AL,BL
BYTE
PTR CRT COLS
AX
,AX
-
ES
PUSH
MOV
PUSH
IN
TEST
JZ
MOV
MOV
OUT
POP
POP
CALL
ADD
MOV
MOV
SUB
INC
INC
XOR
MOV
ADD
MOV
MUL
ADD
PUSH
INPUT
INPUT
( AH) = CURRENT CRT MODE
(
AL)
= NUMBER OF
ROWS
TO SCROLL
(
CX
) =
ROW
1COLUMN OF UPPER
LEFT
CORNER
(OX)
=
ROW
1COLUMN OF LOWER
RIGHT
CORNER
(
BH)
=
ATTR
I
BUTE
TO
BE
USED
ON
BLANKED
LINE
(OS)
=
DATA
SEGMENT
(ES)
= REGEN
BUFFER
SEGMENT
OUTPUT
NONE - -
THE
REGEN
BUFFER
I S
MOD
I F I ED
;
-----
HANDLE
COMMON
SCROLL
SET
UP HERE
;
-----
80X25
COLOR CARD
SCROLL
SCROLL
POS I T I
ON
PROC NEAR
-
CMP
CRT MODE, 2
JB
N9
-
CMP
CRT MODE, 3
JA
N9
-
.--
------------
-------
---
--------
--
--
-
--------
--------
-
--
POS I T I
ON
PROC NEAR
PUSH
BX
MOV
BX,AX
MOV
AL,AH
MUL
BYTE
PTR CRT COLS
XOR
BH,BH
-
ADD
AX
,BX
SAL
AX,I
POP BX
RET
POSITION
ASSUME
CS:
CODE,DS
:DATA,
ES
:DATA
SCROLL_UP
PROC NEAR
MOV
BL,AL
CMP
AH,4
JC
Nl
CMP
AH,7
JE
Nl
JMP
GRAPH I
CS_UP
Nl
:
PUSH
BX
MOV
AX,CX
CALL
SCROLL_POS
I T I
ON
JZ
N7
ADD
SI,AX
MOV
AH,DH
SUB
AH,BL
N2:
CALL
Nl0
ADD
SI,BP
ADD
DI,BP
DEC
AH
JNZ
N2
N3:
POP
AX
MOV
AL,
N4:
CALL
NIl
ADD
DI,BP
DEC
BL
JNZ
N4
N5:
CALL
DDS
CMP
CRT_MODE,7
JE
N6
MOV
AL,CRT_MODE_SET
MOV
DX,03D8H
OUT
DX,AL
N6:
JMP
V
IDEO_RETURN
N7:
MOV
BL,DH
JMP
N3
SCROLL_UP
ENDP
3748
3749
3750
3751
3752
3753
3754
3755
3756
3757
3758
3759
3760
3761
3762
3763
3764
3765
3766
3767
3768
3769
3770
3771
3772
3773
3774
3775
3776
3777
3778
3779
3780
3781
3782
3783
3784
3785
3786
3787
3788
3789
3790
3791
3792
3793
3794
3795
3796
3797
3798
3799
3800
3801
3802
3803
3804
3805
3806
3807
3808
3809
3810
3811
3812
3813
3814
3815
3816
3817
3818
3819
3820
3821
3822
3823
3824
3825
3826
3827
3828
3829
3830
3831
3832
3833
3834
3835
3836
3837
3838
3839
3840
N8:
3841
3842
3843
3844
3845
3846
3847
3848
3849
N9:
3850
3851
3852
3853
3854
3855
3856
3857
3858
3859
3860
3861
3862
3863
F285
F285
53
F286
8BD8
F288
8AC4
F28A
F6264AOO
F28E
32FF
F290
03C3
F292
OlEO
F294
5B
F295
C3
F296
F296
8AD8
F298
80FC04
F29B
7208
F29D
80FC07
F2AO
7403
F2A2
E9FOOI
F2A5
F2A5
53
F2A6
8BCI
F2A8
E83700
F2AB
7431
F2AD
03FO
F2AF
8AE6
F2Bl
2AE3
F2B3
F2B3
E87200
F2B6
03F5
F2B8
03FD
F2BA
FECC
F2BC
75F5
F2BE
F2BE
58
F2BF
B020
F2Cl
F2Cl
E86DOO
F2C4
03FD
F2C6
FECB
F2C8
75F7
F2CA
F2CA
E88C07
F2CD
803E490007
F2D2
7407
F2D4
A06500
F2D7
BAD803
F2DA
EE
F2DB
F2DB
E9E7FE
F2DE
F2DE
8ADE
F2EO
EBDC
F2E2
F2E2
803E490002
F2E7
7218
F2E9
803E490003
F2EE
7711
F2FO
52
F2Fl
BADA03
F2F4
50
F2F5
F2F5
EC
F2F6
A808
F2F8
74FB
F2FA
B025
F2FC
B2D8
F2FE
EE
F2FF
58
F300
5A
F301
F301
E881FF
F304
03064EOO
F308
8BF8
F30A
8BFO
F30C
2BDI
F30E
FEC6
F310
FEC2
F312
32ED
F314
8B2E4AOO
F318
03ED
F31
A
8AC3
F31
C
F6264AOO
F320
03CO
F322
06
5-154
PC-XT System BIOS
(11/08/82)

Table of Contents

Related product manuals