IBM 5170 Technical Reference page 279

Hide thumbs Also See for 5170:
Table of Contents

Advertisement

0509
2A E3
SUB
AH,BL
; OETERMI NE NUMBER TO MOVE
0506
0506
050E
0512
0516
0518
E8 058E R
81 EE HBO
81 EF 1 FBO
FE CC
75 F1
R8 :
LOa? THROUGH, MOVING ONE ROW AT A TIME,
BOTH EVEN AND ODD FIELDS
CALL
SUB
SUB
DEC
JNZ
R17
S I,
2000H~80
OI,2000H-80
AH
R8
ROW_LOOP
MOVE ONE ROW
MOVE TO NEXT ROW
NUMBER OF ROWS
TO
MOVE
CaNT I NUE TILL ALL MOVED
~
051A
051A
051C
051C
05H
0523
052"5
0527
SA
C7
E8 05A7 R
81 EF
1
FBO
FE CB
75 F5
E9 0144 R
;-----­ FILL IN THE VACATED LlNE(S)
R9:
CLEAR ENTRY
MOV
AL,BH
ATTRIBUTE TO FILL WITH
R10:
CALL
SUB
DEC
JNZ
JMP
R18
DI,2000H-80
BL
Rl0
VIDEO_RETURN
CLEAR THAT ROW
PO I NT TO NEXT Ll NE
NUMBER OF LINES TO FILL
CLEAR LOOP
EVERYTH I NG DONE
052A
052A
052C
052E
8A DE
EB EC
Rl1 :
MOV
JMP
GRAPHICS_UP
BL,DH
R9
ENOP
BLANK_F I ELD
SET BLANK COUNT TO EVERYTHING IN FIELD
CLEAR THE FIELD
SCROLL DOWN
THIS ROUTINE SCROLLS DOWN THE INFORMATION ON THE CRT
ENTRY -­
CH,CL::: UPPER LEFT CORNER OF REGION TO SCROLL
DH,DL ::: LOWER RIGHT CORNER OF REGION TO SCROLL
BOTH OF THE ABOVE ARE IN CHARACTER POSITIONS
BH = FILL VALUE FOR BLANKED LINES
AL =
#
LINES TO SCROLL (AL=O MEANS BLANK THE ENTIRE FIELD)
OS ::: DATA SEGMENT
ES ::: REGEN SEGMENT
EX 1 T -­
,
NOTH I NC, THE SCREEN I S SCROLLED
;
­---­--­
-­-­--
-
--..-­---­--­-­--­
----­-
-­-
---- ­
----­
052E
052E
052F
0531
FD
8A 08
8B C2
GRAPH I CS DOWN
STD
MOV
MOV
PROC
BL,AL
AX, OX
NEAR
;
SET DIRECTION
;
SAVE LI NE COUNT IN BL
; GET LOWER RIGHT POS I T I ON I NTO AX REG
; -----­ USE CHARACTER SUBROUT t NE FOR pOS I T I ON I NG
; -----­ ADDRESS RETURNED IS MULTI PLI ED BY 2 FROM CORRECT VALUE
0533
0536
E8 0748 R
88 F8
CALL
MOV
GRAPH_POSN
OI,AX
SAVE RESULT AS DEST I NAT I ON ADDRESS
DETERMINE SIZE OF WINDOW
0538
053A
053E
0540
2B 01
81 C2 0101
DO E6
DO E6
SUB
ADD
SAL
SAL
DX.CX
DX,101H
DH.l
DH.l
ADJUST VALUES
MUL
Tl
PLY
#
ROWS BY 4 SINCE 8 VERT DOTS/CHAR
AND EVEN/ODD ROWS
;------ DETERMINE CRT MODE
0542
0547
80 3E 0049
73
as
R 06
CMP
JNC
TEST FOR MED I UM RES
F I NO_SOURCE_DOWN
~
; -----­ MED I UM RES DOWN
0549
054B
054D
00 E2
01
E7
47
SAL
SAL
INC
DL,1
01,1
01
H
COLUMNS
*
2, SINCE 2 BYTES/CHAR (OFFSET OK)
OFFSET *2 SINCE 2 BYTES/CHAR
PO I NT TO LAST BYTE
054E
054E
054F
0550
0552
0556
0558
OSSA
055C
055E
0560
0562
0561~
0566
0568
06
1F
2A [D
81 C7 OOFO
DO E3
DO E3
74 2E
8A C3
B4 50
F6 E4
8B
F7
2B Fa
8A E6
2A E3
; -----­ DETERM I NE THE SOURCE ADDRESS I N THE BUFFER
R12:
PUSH
ES
~6~~-~~g~~~T~0~~
REGEN
POP
OS
SUB
CHICH
ADD
01,240
SAL
BL,l
SAL
BL,l
JZ
R16
MOV
AL, BL
MOV
AH,80
MUL
AH
MOV
51,01
SUB
SI,AX
MOV
AH, DH
SUB
AH, BL
ZERO TO HIGH OF COUNT REG
POINT TO LAST ROW OF PIXELS
MULTI PLY NUMBER OF LINES BY
4
I F ZERO, THEN BLANK ENT I RE
GET NUMBER OF LINES IN AL
80 BYTES/ROW
DETERMINE OFFSET TO SOURCE
SET UP SOURCE
SUBTRACT THE OFFSET
NUMBER OF ROWS 1NFl ELD
DETERM I NE NUMBER TO MOVE
FIELD
056A
056A
0560
0571
0575
0577
E8 058E R
81 EE 2050
81 EF 2050
FE CC
75 Fl
LOOP THROUGH, MOVING ONE ROW AT A TIME,
BOTH EVEN AND ODD FIELDS
CALL
SUB
SUB
DEC
JNZ
R17
S I ,2000H+80
DI.2000H+80
AM
R13
ROW_LOOP_DOWN
MOVE ONE ROW
MOVE TO NEXT ROW
NUMBER OF ROWS TO MOVE
CaNT I NUE TILL ALL MOVED
0579
0579
057B
057B
057E
0582
0584
0586
0587
8A C7
E8 05A7 R
81
EF 2050
FE CB
75 F5
FC
E9 0144 R
; -----­ riLL
R14:
IN THE VACATED LlNE(S)
R1S:
MOV
CALL
SUB
DEC
JNZ
CLD
JMP
AL, BH
R18
01,200QH+80
BL
R15
CLEAR ENTRY DOWN
ATTRIBUTE T'O FILL WITH
CLEAR_LOOP_DOWN
CLEAR A ROW
POINT TO NEXT LINE
NUMBER
or
LJ NES TO FILL
CLEAR lOOP DOWN
RESET-THE DIRECTION FLAG
EVERYTH I
NG
DONE
r""\
05SA
058A
058C
058E
8A DE
EB EB
Rl6:
MOV
BL,DH
JMP
Rl4
GRAPH
I
CS_OOWN
ENDP
BLANK FiElD DOWN
SET BLANK C'OUNT TO EVERYTH I NG
CLEAR THE FIELD
;------ ROUTINE TO MOVE ONE ROW OF INFORMATION
IN FIELD
058E
058E
0590
0591
0592
0594
0595
0596
059A
059E
059F
05AO
05A2
05A4
OSA5
05A6
8A CA
56
57
F3/ A4
5F
5E
81 C6 2000
81 C7 2000
56
57
8A CA
F3/ A4
5F
5'
C3
R17
PROC
NOV
PUSH
PUSH
REP
POP
POP
ADD
ADD
PUSH
PUSH
MOV
REP
POP
POP
RET
NEAR
CL,DL
51
01
MOYSB
01
51
SI,2000H
DI,2000H
SI
01
CL,DL
MOVSB
01
SI
NUMBER OF BYTES I N THE: ROW
SAVE PO INTERS
MOVE THE EVEN FIELD
;
POINT TO THE ODD FIELD
SAVE THE PO INTERS
COUNT BACK
MOVE THE
ODD
FIELD
PO I NTERS BACK
RETURN TO CALLER
Video 5-137

Hide quick links:

Advertisement

Table of Contents
loading

Table of Contents