EasyManua.ls Logo

IBM PC CONVERTIBLE

IBM PC CONVERTIBLE
275 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...
0212
0212
IE
0213
28
CO
0215
A2
0070 R
0218
A3
006C
R
021B
A3
006E
R
021E
B4
OE
0220
E8
0000
0223
24
84
0225
75
56
0227
F8
0228
B4
02
022A
CD
lA
022C
72
3F
022E
80
FE
59
0231
77
3E
0233
80
F9
59
0236
77
39
0238
80
FD
23
023B
77
34
0230
8A
C6
023F
E8
0286 R
0242
B3
12
0244
F6
E3
0246
8B
DO
0248
8A
Cl
024A
E8
0286
0240
BB
0444
0250
52
0251
F7
E3
0253
5A
0254
03
DO
******'It***********************************************
***************
ROUTINE-NAME: SELTOD
FUNCTION:
SET
TIMER
DATA
AREA
FROM
RTC
TIME
OR
INITIAL
TO
ZERO
(FOR
COLD~DE)
ENTRY
CONDITIONS:
PURPOSE
OF
ENTRY:
SET
TIMER
DATA
AREA
INPUT
CONDITIONS:
NONE
RESTRI
CTI
ONS:
NONE
EXIT
CONDITIONS:
NORMAL
EXIT
CONDITIONS:
TIMER
DATA
AREA
SET
FROM
RTC
TIME
ERROR
EXIT
CONDITIONS:
TIMER
DATA
AREA
SET
TO
ZERO
REGISTERS
MODIFIED:
AX
RETURNS
STATUS
CODE
FOR
DISPATCHER
AX
= 4000
NON-FATAL
ERROR
AX
= 0
GOOD
INTERRUPTS:
LEFT
AS
ARE
INTERNALLY
REFERENCED
ROUTINES:
CVLBINARY
EXTERNALLY
REFERENCED
ROUTINES:
DDS,
GELRTCNMI,
PULRTCNMI,
INLIA
*********************************************************************
SELTOO
PROC
NEAR
PUSH
OS
;-------RESET
TIMER
DATA
AREA
SUB
AX,AX
MaY
TIMER_OFL,AL
MOV
TIMER_LOW,AX
MaV
TIMEILHIGH,AX
MOY
AH,RTCOIAG_STAT
CALL
GELRTCNMI
SAVE
SEGMENT
RESET
TIMER
DATA
AREA
ADDRESS
AND
;
GET
RTCDIAI'--STAT (RegE)
AND
AL, RTCTIMLBAD+RTCFAILED
TIME
BAD
OR
CLOCK
ERROR?
JNZ
TOD_NOTSET
YES.
TIMER
SET
TO
ZERO
;
-------GET
RTC
TIME
CLC
SET
CF=O
"NO
ERROR"
STATE
MOV
AH,GELRTCTIME
FOR
INLIA,
AH=2=GET
RTC
INT
lAH
GET
RTC
TIME:
CH=H
CL=M
DH=S
JC
SELRET
IF
CF=I,
NML
RETURN.
CF=1
CLK
NOT
OPERATING
(UIP=I)
;-------CHECK
VALIDITY
OF
RTC
TIME
CMP
DH,SECMALLIMIT
IF
RTCTSEC
NOT
IN LIMITS
JA
BAD_TIME
THEN
RETURN
CMP
CL,
MIN_MALL I
MIT
IF
RTCTMIN
NOT
IN LIMITS
JA
BAD_TIME
THEN
RETURN
CMP
CH,HRS~ALLIMIT
IF
RTCTHRS
NOT
IN LIMITS
JA
BAD_TIME
THEN
RETURN
;-------SET
TIMER
FROM
RTC
TIME
MOV
AL,DH
BCD
TSEC
INTO
AL
CALL
CVT_BINARY
BINARY
TSEC
RETURNED
IN
AL
MOV
BL,
COUNTS_SEC
BL
<--
#
OF
COUNTS
PER
SEC
MUL
BL
AX
<--
#
OF
CNTS
IN
RTCTSEC
MOV
DX,AX
OX
IS
TOTAL-CNTS
ACCUMULATOR
MOV
AL,CL
BCD
TMIN
INTO
AL
CALL
CVLBINARY
BINARY
TMIN
RETURNED
IN
AL
MOV
BX,
COUNTS~I
N
BX
<--
#
OF
COUNTS
PER
MIN
PUSH
OX
SAVE
TOTAL
MUL
BX
AX
<--
#
OF
CNTS
IN RTCTMIN
POP
OX
RETRI
EVE
TOTAL
ADD
DX,AX
ADD
TMIN-CNTS
TO
TOTAL-CNTS
2-162 ROM BIOS

Related product manuals