;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;
; Copyright (c) 2001-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:    audmac.h
;
; Purpose:      Audio macro File
;
; Macro Names:  AUDSTART_SYSTEM_MELODY      - Starts system melody
;               AUDSTOP_MELODY              - stops any melody
;               AUDINIT                     - called at POR to initialize audio vars and tables
;                                              
; File Change History:
;
;               06/26/2000  RMA  Created File for M841
;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;


;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;
; Macro Name  : AUDSTART_SYSTEM_MELODY
;
; Description : Starts system melody
;
; Assumptions : None
;                         
; Usage       : AUDSTART_SYSTEM_MELODY  MELODYOFFSET, MELODYDONEEVENT
;               
; Input(s)    : MELODYOFFSET    - offset to the system melody to be played
;               MELODYDONEEVENT - parameter to send melody done event at the end of melody
;
; Output(s)   : Destroys: BAReg.
;
; Macro Change History : 06/26/2000  RMA   Created macro
;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;
; Note:
;
;  The MELODYOFFSET could be one of the following: 
; 
;     AUDSWBEEPMELODY          - Switch beep melody offset             
;     AUDHOURCHIMEMELODY       - Hour Chime melody offset              
;     AUDALARMMELODY           - Alarm melody offset                   
;     AUDAPPOINTMENTMELODY     - Appointment melody offset                   
;     AUDTIMERMELODY           - Timer Melody offset                   
;     AUDINTERVALTIMERMELODY   - Interval Timer Melody offset
;     AUDHALFTIMERMELODY       - Half timer melody offset
;     AUDCOMMERRORMELODY       - Communication Error melody offset     
;     AUDCUSTOMMELODY          - Custom melody offset
;
;  The MELODYDONEEVENT could be one of the following:
;
;     AUDSENDMELODYDONEEVENT   - send MELODYDONEEVENT at the end of melody to application
;     AUDNOMELODYDONEEVENT     - do not send MELODYDONEEVENT at the end melody to applicaion
; 
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;     

AUDSTART_SYSTEM_MELODY  MACRO  MELODYOFFSET, MELODYDONEEVENT

                ld      A, #MELODYOFFSET
                ld      B, #MELODYDONEEVENT
                car     audStartSysMelody

        CALLS   SUBROUTINE , 'audStartSysMelody'
            
        ENDM


;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;
; Macro Name  : AUDSETUP_MELODYADDRESS
;
; Description : Setup the base address of a melody into the melody table.
;               Usually used to setup a new melody pattern for the custom melody offset.
;
; Assumptions : None
;                         
; Usage       : AUDSETUP_MELODYADDRESS  
;               
; Input(s)    : IYReg - base address of new melody to plug in
;               BAReg - melody table index to modify
;                     - Values are:
;
;                           AUDSWBEEPMELODY          - Switch beep melody offset             
;                           AUDHOURCHIMEMELODY       - Hour Chime melody offset              
;                           AUDALARMMELODY           - Alarm melody offset                   
;                           AUDAPPOINTMENTMELODY     - Appointment melody offset                   
;                           AUDTIMERMELODY           - Timer Melody offset                   
;                           AUDINTERVALTIMERMELODY   - Interval Timer Melody offset
;                           AUDHALFTIMERMELODY       - Half timer melody offset
;                           AUDCOMMERRORMELODY       - Communication Error melody offset     
;                           AUDCUSTOMMELODY          - Custom melody offset
;
; Output(s)   : None
;
; Destroys    : IXReg
;
; Macro Change History : 06/26/2000  RMA   Created macro
;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

AUDSETUP_MELODYADDRESS  MACRO

                car     audSetupMelodyAddress

        CALLS   SUBROUTINE , 'audSetupMelodyAddress'


        ENDM


;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;
; Macro Name  : AUDSTOP_MELODY
;
; Description : stops any melody
;
; Assumptions : None
;                         
; Usage       : AUDSTOP_MELODY  
;               
; Input(s)    : None
;
; Output(s)   : Destroys: HLReg.
;
; Macro Change History : 06/26/2000  RMA   Created macro
;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

AUDSTOP_MELODY  MACRO

                car     audStopMelody

        CALLS   SUBROUTINE , 'audStopMelody'
            
        ENDM



;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;
; Macro Name  : AUDINIT
;
; Description : called at POR to initialize the audio vars
;
; Assumptions : None
;                         
; Usage       : AUDINIT  
;               
; Input(s)    : None
;
; Output(s)   : Destroys: IXReg.
;
; Macro Change History : 06/26/2000  RMA   Created macro
;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

AUDINIT     MACRO

                car     audInit

        CALLS   SUBROUTINE , 'audInit'
            
        ENDM

