IBM 5150 Technical Reference page 192

Hide thumbs Also See for 5150:
Table of Contents

Advertisement

laC OBJ
LINE
SOURCE
5027
J ••• _­
LINE FEED FOUND
5028
F786
5029
UIO:
F786 80FEl8
5030
eMP
DH.24
I BOTTDH OF SCREEN
F789 75E8
5031
JHE
U6
I YES, SCROLL THE SCREEN
H8B Eeee
5032
JMP
Ul
; NO. JUST SET THE CURSOR
5033
~
5034
J ----­ BELL FoutI)
5035
F7eD
5036
Ull:
F7eD B302
5037
NOV
BL,2
J SET UP COUNT FOR BEEP
F78F E871EE
5038
CAll
BEEP
; Soutl) THE POD BELL
F792 fBDB
5039
JMP
US
; TTY_RETURN
5040
WJHTE_TTY
ENDP
5041
;---------------------------------------------------------------­
5042
LIGHT PEN
5043
THIS ROUTINE TESTS THE LIGHT PEN SWITCH AND THE LIGHT
5044
PEN TRIGGER. IF BOTH ARE SET, THE LOCATION OF THE lIGHT :
5045
PHI IS DETEIlMINED. OTHERWISE. A RETURN WITH NO
5046
IHFDRHATION IS MADE.
5047
; ON EXIT
5048
{AH I
=
0 IF NO LIGHT PEN INFORMATION IS AVAILABLE
5049
BX,CX,DX ARE DESTROYED
5050
{AH I
=
1 IF LIGHT PEN IS AVAILABLE
5051
(CH,DLl ::: ROW,COLUHH OF CURRENT LIGHT PEN
5052
POSITION
5053
(CH) ::: RASTER POSITION
5054
(BX) ::: BEST GUESS AT PIXEL HORIZONTAL POSITION :
5055
1------------------------ --------­ - - -­ ---------------------­ ----­
5056
ASSUtlE
CS: CODE ,CS:DATA
5057
;----- SUBTRACT_TABLE
F794
soss
VI
LABEl
BYTE
F794 03
5059
DB
3,3,5.5.3.3.3.4 •
F795 03
F796 05
F797 05
F798 03
~
F799 03
F79A 03
F79B 04
F79C
5060
READ_LPEN
PROC
NEAR
5061
5062
;----- WAIT FOR LIGHT PEN TO BE DEPRESSEO
5063
F79C 8400
5064
"""
AH,O
I SET NO LIGHT PEN RETUlN CODE
F79E 8B166300
5065
MOV
OX, ADDR_ 6845
; GET BASE ADDRESS OF 6845
F7A2 83C206
5066
ADD
OX,6
; POINT TO STATUS REGISTER
F7A5 Et
5067
IH
AL,OX
I GET STATUS REGISTER
F7A6 A804
5068
TEST
AL,4
; TEST LIGHT PEN SWITCH
F7A8 757E
5069
JHZ
V.
I NOT SET, RETURN
5070
5071
1----- NOW TEST
F~
LIGHT PEN TRIGGER
5072
F7AA A802
5073
TEST
AL,2
I TEST LIGHT PEN TRIGGER
F7At 7503
5074
JHZ
V7A
; RETURN WITHOUT RESETTING TRIGGER
F7AE E96100
5075
JMP
V7
5076
5077
1----- TRIGGER HAS BEEN SET. READ THE VALUE IN
5076
F7ll1
5079
V7A:
F7BI BitlO
5060
NOV
AH,16
;
LIl~T
PEN REGISTERS ON 6645
5061
5062
;----- INPUT REGS POINTED TO BY
Alt.
AND CONVERT TO ROW COLUHN IN ox
5063
F783 88166300
5064
MOV
OX, ADOR_684S
; ADDRESS REGISTER FOR 6845
F787 8AC4
5065
MOV
AL.AH
; REGISTER TO READ
F7B9 EE
5080
OUT
OX,AL
J SET IT UP
r""\
F7BA 42
F7BB EC
5087
5088
IHC
IH
ox
AL.DX
J DATA REGISTER
i
GET THE VALUE
F7BC 8AE8
5089
MOV
CH.AL
; SAVE IN CX
F7BE 4A
5090
DEC
Ox
j
ADDRESS REGISTER
F7BF FEC4
5091
IHe
AH
nCI 6AC4
5092
MOV
AL,AH
I SECOND DATA REGISTER
F7C3 EE
5093
OUT
DX,AL
F7C4 42
5094
INC
OX
1 POINT TO DATA REGISTER
F7C5 EC
5095
IH
AL,DX
I GET SECOND DATA VALUE
F7C6 8AE5
5096
MOV
AH,CH
I AX HAS INPUT YALUE
System BIOS 5-99

Hide quick links:

Advertisement

Table of Contents
loading

Table of Contents