IBM 5150 Technical Reference page 182

Hide thumbs Also See for 5150:
Table of Contents

Advertisement

LOC OBJ
LINE
SOURCE
F4!F 7500
4262
JHZ
R.
; YES. XOR THE DOT
F441 F604
4263
HOT
AH
, SET THE MASK TO REMOVE THE
F443 22CC
4264
.HO
CL,AH
;
INDICATED BITS
F445 DAtI
4265
00
Al,CL
; OR IN THE NEW VAlUE OF THOSE BITS
F447
4266
Ill:
I FINISH_DOT
F447 268804
4267
HOV
ES:ISI1.Al
I RESTORE THE BYTE
IN
MEI'tORY
F44.1. 58
4268
POP
,X
F448 E977FD
4269
JHP
VIDEO_RETURN
; RETURN FROI1 VIDEO 10
1"'""""\
F44£
4270
R2:
I XOR_DOT
F44E UtI
42.71
XOR
Al,CL
; EXCLUSIVE OR THE DOTS
0'
F450 EBFS
4272
JHP
I FINISH UP THE WRITING
4273
WRITE_DOT
EHOP
4274
;------------------------------------------------------- ­
4275
I THIS SUBROUTINE DETERMINES THE REGEN BYTE LOCATION
4276
; OF THE INDICATED ROW COLUMN VALUE IN GRAPHICS MODE.
4277
I ENTRY - ­
4278
OX
=
ROW VALUE (0-199)
4279
ex =
COll.lNH VALUE 10-639)
4280
EXIT - ­
4281
51
=
OFFSET INTO REGEN BUFFER FOR BYTE OF INTEREST
4282
I
AH
=
MASK TO STRIP OFF THE SITS Of INTEREST
4283
CL
=
BITS TO SHIfT TO RIGHT JUSTIfY THE MASK IN AH
4284
I
DH
= •
BITS IN RESULT
4285
1------------------------------------------------------- ­
F452
4286
03
PROC
NEAR
F452 53
4287
PUSH
BX
1
SAVE BX
D~ING
OPERATION
F453 50
428S
PUSH
AX
1
WILL SAVE
.u
DURING OPERATION
4289
4290
1-----
DETERMINE 1ST BYTE IN IDICATED ROW BY HULTIPlYING ROW VALUE BY 40
4291
BIT OF ROW DETERMINES EVEN/ODD. SO BYTESIROW
J----- (
lOW
4292
F454 B028
4293
HOV
Al.40
F456 52
4294
PUSH
OX
, SAVE ROW VALUE
F457 80E2FE
4295
.NO
DL.OFEH
J STRIP OFF DOD/EVEN BIT
F45A F6E2
4296
HUl
Ol
J
AX HAS ADDRESS Of 1ST BYTE
4297
,
OF It-CICATEO ROW
F45C SA
4298
POP
OX
; RECOVER IT
F45D F6C201
4299
TEST
Dl.l
; TEST FOR EVENIODD
F460 7403
4300
JZ
I JUMP IF EVEN ROW
F462 050020
4301
'00
AX.2000H
I OFFSET TO LOCATION OF 000 ROWS
F465
4302
R4:
J
EVEN_ROW
F465 8BFO
4303
HOV
SI.AX
1
MOVE POINTER TO 51
F467 58
4304
POP
AX
; RECOVER AL VALUE
F468 8BDI
4305
HOV
OX.CX
; COLUMN VAlUE TO OX
4306
4307
1-----
DETERMINE GRAPHICS HaDE CURRENTLY IN EFFECT
4308
4309
r""\
R'
1--------------------------------------------------------------.­
4310
; SET UP THE REGISTERS ACCORDING TO THE HOOE
4311
CH
=
I1ASK FOR LOW OF COLlR1H ADDRESS ( 7/3 FOR HIGH/NED RES)
4312
CL :::: • OF ADDRESS BITS IN COLUMN VALUE ( 312 FOR H/NI
4313
I
BL
=
HASK TO SElECT BITS FROM POINTED BYTE ISOH/COH fOR H/N)
4314
I
BH
=
NUMBER OF VAlID BITS IN POINTED BYTE (
112
fOR HIH)
4315
1--- --- - - -- - -------- - ------ - -- - ------ - - ---- -- - ------ -------- - -- - ­
4316
F46A BBC002
4317
I10V
BX.2tOH
F46D B90203
431S
Mev
CX.302H
; SET PARHS FOR MED RES
F470 803E490006
4319
CHP
CRT.HODE.6
F475 7206
4320
JC
.5
; HANOLE
If
MED ARES
F477 BB8001
4321
HOV
BX.180H
F47A B90307
4322
HOV
CX.703H
; SET PARHS fOR HIGH RES
4323
4324
1-----
DETERMINE BIT OFFSET IN BYTE FROM COLUHH MASK
4325
F47D
4326
RS:
F47D 22EA
4327
ANI)
CH.DL
1
ADDRESS OF PEL WITHIN BYTE TO CH
4328
4329
J ----- DETERMINE BYTE OFFSET FOR THIS LOCATION IN COlUHN
4330
r"'\
F47F 03EA
4331
SHO
DX.CL
; SHIFT BY CORRECT AMOUNT
F481 03F2
4332
.DO
SI,OX
I INCREMENT THE POINTER
F483 8AF7
4333
HOY
OH,SH
; GET THE • OF BITS- IN RESULT TO OH
4334
4335
1-----
HULTIPL'f BH (VALID BITS IN BYTE) BY CH (BIT OFFSEll
433&
F485 ZAC9
4337
SUB
CL.CL
; ZERO INTO STORAGE LOCATION
F487
'3]8
R6:
System BIOS 5-89

Hide quick links:

Advertisement

Table of Contents
loading

Table of Contents