IBM PC CONVERTIBLE Technical Reference page 189

Table of Contents

Advertisement

0293
0293
B4 OE
0295
E8 0000
0298
A8 80
029A
74 11
;
029C
E8 OlE5 R
029F
B4 00
02A)
BO 00
02A3
B9 OOOA
02A6
02A6
E8 0000
02A9
FE C4
02AB
E2 F9
02AD
02AD
B4 OB
02AF
E8 0000
02B2
24 7F
02B4
E8 0000
02B7
B3 02
02B9
2B C9
02BB
02BB
BO OA
02BD
E6 70
02BF
E4 71
02C)
A8 80
02C3
75 09
02C5
E2 F4
02C7
FE CB
02C9
75 FO
02CB
EB )0 90
02CE
02CE
B9 0258
********************************************************************
ROUTINE-NAME:
RTC2_TST
FUNCTION:
CHECK REAL TIME CLOCK FOR TIME UPDATE FUNCTION.
IF RTCTlME_BAD FLAG IS SET INDICATED INVALID TIME, A
CALL TO INITIALIZE_STATUS IS MADE TO SET THE RTC REGISTERS
AND THE TlME,DATA, AND ALARM REGISTERS ARE SET TO O.
ENTRY CONDITIONS:
PURPOSE OF ENTRY:
INPUT CONDITIONS:
RESTRI CTI ONS:
CALLED BY POST TO CHECK RTC TIME FUNCTION
OS: DATA
NONE
EXIT CONDITIONS:
NORMAL EXIT CONDITIONS: AX = 0
ERROR EXIT CONDITIONS:
AH=40 (NON_FATAL ERR) AL=63 (RTC ERR)
REGISTERS MODIFIED:
AX RETURNS STATUS CODE FOR POST
INTERRUPTS:
LEFT AS ARE
I NTERNALL Y REFERENCED ROUTI NES: INITIALIZLSTATUS
EXTERNALL Y REFERENCED ROUTINES:
GELRTCNMI, PULRTCNMI
*********************************************************************
RTCZ-TST PROC NEAR
MOV
CALL
TEST
JZ
AH,RTCDIAG_STAT
GELRTCNMI
AL ,RTCTlME_BAD
RTC2_02
CHECK FOR CLOCK NOT SET
JUMP IF CLOCK IS SET
MUST INITIALIZE AND SET TIME TO 0:0:0 DATE TO 0:0:0
CALL
MOV
MOV
MOV
RTCZ-O) :
CALL
INC
LOOP
I NITIALI ZE_STATUS
AH,RTCTSEC
AL,O
CX, )0
PULRTCNMI
AH
RTCZ-O)
SET TIME AND DATE TO 0
SET REGISTER TO 0
INCREMENT REGISTER NUMBER
INSURE SELCLOCK
BIT IS RESET
WAIT
WAIT
RTCZ-02:
MOV
CALL
AND
CALL
MOV
SUB
FOR UPDATE
RTCZ-03:
MOV
OUT
IN
TEST
JNZ
LOOP
DEC
JNE
JMP
FOR UPDATE
RTCZ-04:
MOV
AH,RTCMODE
GELRTCNMI
AL,NOT SELCLOCK
PULRTCNMI
BL,02
CX,CX
TURN OFF SELCLOCK
OUTER LOOP COUNTER
SET MAX LOOP TO 1. 3
SECONDS
IN PROGRESS FLAG TO BE SET
AL,RTCUP_STAT
READ CLOCK UPDATE STATUS
RTCR_PORT ,AL
AL, RTCD_PORT
AL,RTCUIP
UPDATE IN PROGRESS?
RTCZ-04
JUMP I F YES
RTCZ-03
KEEP LOOKING
BL
RTC2_03
RTC2JAIL
JUMP I F NEVER CAME ON
IN PROGRESS FLAG TO BE RESET
CX,600
SET LOOP FOR 6 MSEC
2-164 ROM BIOS

Hide quick links:

Advertisement

Table of Contents
loading

Table of Contents