EasyManua.ls Logo

IBM 5150 - Page 204

IBM 5150
309 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...
LaC
OBJ
LINE
SOURCE
!"'"'""\
,...-.....
~
FE8F EBEA
FE91
FE91 FA
FE92 89166COO
FE96
890E6[00
FE9A
C606700000
FE9F
EBOA
FEAS
FEA5
FEA5
FB
FEA6
IE
FEA7
50
FEA6
52
FEA9
E69200
FEAC
ff066COO
FEBO
7504
FEB2
ff066EOO
HB6
FEB6
833E6£0016
FEBB
7515
FEBD
613E6COOBOOO
FEC3
7500
FEes
2BCO
FEC7
A36EOO
FECA
A36COO
FECD
C606700001
FED2
FED2 FEOE4000
FED6
750B
FED6 60263FOOFO
FEDD
BOOC
FEDF
BAF203
FEE2
EE
FEf3
FEE3
CD1C
fEES
B020
fEE7
E620
FEE9
SA
FEEA
56
FEEB
IF
FEEC
CF
FEED
31363031
FEFI
00
FEF2
OA
5941
5942
5943
5944
5945
5946
5947
5948
5949
5950
5951
5952
5953
5954
5955
5956
5957
5958
5959
5960
5961
5962
5903
5964
5965
5966
5967
5968
5969
5970
5971
5972
5973
5974
5975
5976
5977
5976
5979
5960
5961
5962
5983
5984
5965
5966
5967
5966
5989
5990
5991
5992
5993
5994
5995
5996
5997
5998
5999
6000
6001
6002
6003
6004
6005
6006
6007
6006
6009
6010
J"P
T1
;
TOO_RETURN
T3:
; SET_TIME
Cll
;
NO
INTERRUPTS
WHILE
WRITING
t10V
TIMER_lOW.OX
I10V TIMER_HIGH.
ex
1
SET
THE
TIME
"OV
TIMER_OFl,O
;
RESET
OVERFLOW
J"P
T1
;
TOO_RETURN
lIt'E_OF
_DAY
ENDP
1-----------------------------------------------------.--
;
THIS
ROUTINE
HANDLES
THE
TINER INTERRUPT
FROtt
CHANNEL
0
OF
THE
8253
TIMER.
INPUT
FREQUENCY
IS
1.19318
MHZ
AND
THE
DIVISOR
IS
65536,
RESUL
TIHG
I
IN
APPROX.
18.2
INTERRUPTS
EVERY
SECOND.
j
THE
INTERRUPT
HANDLER
MAINTAINS A
COUNT
OF
INTERRUPTS:
;
SINCE
POWER
ON
TItlE.
WHICH
MAY
BE
USED
TO
ESTABLISH
;
TIME
OF
DAY.
I THE
INTERRUPT
HANDLER ALSO DECREMENTS THE
MOTOR
CONTROL
COUNT
OF
THE
DISKETTE.
AND
WHEN
IT
EXPIRES.
;
WILL
TURN
Off
THE
DISKETTE
MOTOR
f
AND
RESET
THE
;
MOTOR
RUNNING FLAGS.
;
THE
INTERRUPT
HANDLER
WILL
ALSO
INVOKE A
USER
ROUTINE:
I
THROUGH
INTERRUPT 1
CH
AT
EVERY
TIME
TICK.
THE
USER
,
J
I'lJST
CODE
A ROUTINE
AND
PLACE
THE
CORRECT
ADDRESS
IN
:
;
THE
VECTOR
TABLE.
i
----------------
--------------
--------
-----------
-
------
ORG
OFEA5H
TIMER_INT
"OC
FAR
STI
INTERRUPTS
BACK
ON
PUSH
OS
PUSH
AX
PUSH
OX
J
SAVE
MACHINE STATE
CAll
DDS
INC
TIMER_LOW ; INCREMENT TIME
JNZ
T4
j TEST_DAY
INC
TIMER_HIGH
; INCREMENT HIGH
WORD
OF
TIME
T4:
; TEST_DAY
CMP
TIMER_HIGH.016H
; TEST
FOR
COlINT
EQUALING
24
HIXJRS
JNZ
T5
J
DISKETTE_CTl
C"P
TIMER_LOW.OBOH
JNZ
T5
;
DISKETTE_CTl
1------
TIMER
HAS
GONE
24
HOURS
SUB
AX,AX
MOV
TIMER_HIGH .AX
"OV
TIMER_LOW
..
AX
"OV
TIMER_OFL
.1
;------
TEST
FOR
DISKETTE TIME
OUT
TS:
•
DISKETTE_CTl
DEC
MOTOR_COUNT
JHZ
T6
J
RETURN
IF
COUNT
NOT
OUT
AND
MOTOR_STATlJS.OFOH J
TURN
OFF
MOTOR
RUNNING
BITS
I10V
AL.OCH
MOV
OX,03F2H
;
FDC
CTl
PORT
OUT
DX.AL
,
TURN
OfF
THE
MOTOR
T6:
; TIMER_RET:
INT
IC"
I
TRANSFER
CONTROL
TO
A
USER
ROUTINE
"OV
Al,EOI
OUT
020H
.Al
;
ENO
OF
INTERRUPT
TO
8259
POP
OX
POP
AX
POP
OS
j RESET
MACH
INE STATE
IRET
,
RETI..IRN
FROM
INTERRUPT
TIMER_INT
ENDP
"0
OB
'1601'
.13.10
6011
6012
6013
6014
6015
; -
-------------------
----------
-------------------
---------------
THESE
ARE
THE
VECTORS
WHICH
ARE
MOVED
INTO
THE
6086
INTERRUPT
AREA
DURING
POIolER
ON.
ONLY
THE
OFFSETS
ARE
DISPLAYED HERE.
CODE
SEGMENT
System BIOS 5-111

Table of Contents

Other manuals for IBM 5150

Related product manuals