M851 WristApp Design Guide Rev 1.2
Timex Corporation 94
db COREACDEEPROMAPP ; Code is external.
;============================================================
; Application Unique ID.
;============================================================
db COREAPPTYPECOUNTER ; Application type
db 00h ; Application instance number
;============================================================
; ACB Parameters.
;============================================================
dw 0000h ; ASD address offset
dw 0000h ; ADD address offset (no database)
dw CODESTATEADDRESS ; App state manager address
dw CODECOMMONADDRESS ; App background handler address
dw lcdBannerMsg_COUNTER ; App mode name function address
Notes:
Code heap size requirement is 0000h.
The utility that will build the wristapp will compute this
number automatically. If not using the scripts, this must be
the allocation size of the wristapp code in eeprom.
Database heap size requirement.
This value specifies the size of the database being
downloaded with the wristapp. The PIM automatically
updates this section prior to sending the parameter file to
the watch.
The counter wristapp does not have any database stored in
external memory. So this value is set at 0x0000.
ASD address offset is 0000h.
All WristApps have offsets of 0000H for its ASD.
ADD address offset is 0000h.
All WristApps uses the EEPROM for database storage.
This will always be 0x0000.
The counter does not have database nor store any data in
the ADD section whether in internal or external memory.
Use of a label located in ROM:
lcdBannerMsg_COUNTER
The banner message “COUNTER” is already predefined in
the M851 OS. This shows that a WristApp is able to execute
functions and reference labels embedded in the firmware.
This could well have been a label located in either the
common code or in the banner state handler.
The parameter code will be coded into a separate file. This will allow the build scripts to locate the
background handler to be used during application download to the watch.
File Description
cntpor.asm
Parameter source file.
5.8 Miscellaneous Files
There are application specific routines that may be used by two or more state handlers. Examples of which
are the display routines. Though it can be coded inside the state handler code that uses it, it would be
appropriate that it be located in the common section in the WristApp overlay area.