;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;
; Copyright (c) 2002 TIMEX Corporation.
; 
; This document is the property of, and contains information proprietary to
; TIMEX Corporation.  It is to be returned upon request.  Reproduction by any
; means, disclosure, or use of its contents for other than the expressed
; purpose for which it is loaned, without the written consent of TIMEX
; Corporation, is strictly prohibited.
;
; File Name     : demoback.asm
; Purpose       : Handles the following application specific functions:
;                   - application initialization
;                   - resource refresh
;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;
; Module Name : demoBackgroundHandler
; Description : Handles application initialization and other background task processing
; Assumptions : None
; Input(s)    : None
; Output(s)   : None
;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

                IF @DEF('SUBROUTINE')
                    UNDEF SUBROUTINE
                ENDIF
                DEFINE  SUBROUTINE      "'cntBackgroundHandler'"

                GLOBAL  cntBackgroundHandler

cntBackgroundHandler:

                ld      A, [COREBackgroundEvent]

                ; on any task exit, we must restore the LCD driver to display data
                cp      A, #COREEVENT_TASKEXIT
                jr      Z, demoLCDDriveOn

                cp      A, #COREEVENT_INIT
                jr      Z, demoInitApplication


cntBackgroundHandlerExit:
                ret


demoInitApplication:

                ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
                ;
                ; INIT EVENT
                ;
                ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

                ; force the flag USGFlags.bUSGDateAlreadySet to be 0
                ; so that we can enter the demo wristapp.  this flag will
                ; be set to 1 when the TOD year is modified by the user
                ; or when the PIM downloads a new time for the TOD
                ld      HL,   #USGFlags
                and     [HL], #@LOW(~bUSGDateAlreadySet)
                ret

