M851 WristApp Design Guide Rev 1.2
Timex Corporation 62
4.17 Generic Blink Services
The kernel generic blink services allows for greater flexibility in blinking any aspect of the display under
application control. The application provides the start address of the display routine and the start address of
the clear routine. When the generic blink engine is activated, it will use the two addresses specified to
alternate showing and clearing a message, character, icon or any combination.
The generic blink manager provides a 4Hz blink rate. The generic blink macros are shown in the tables
below.
Blink Macros (4Hz)
LCD_WRITE_4HZ_GEN_BLINK_DISP_ROUTINE_ADDR <addr>
LCD_WRITE_4HZ_GEN_BLINK_CLR_ROUTINE_ADDR <addr>
LCD_WRITE_4HZ_GEN_BLINK_POSITION <addr>
LCD_WRITE_4HZ_GEN_BLINK_DISP_ROUTINE_PRELOADED*
LCD_WRITE_4HZ_GEN_BLINK_CLR_ROUTINE_PRELOADED*
LCD_WRITE_4HZ_GEN_BLINK_POSITION_PRELOADED*
*The macros with the suffix PRELOADED indicate that the argument for the macro is already
loaded in the BAReg register pair.
Typical usage of the generic blink service.
BAReg = &todDisplayCityCode0;
LCD_WRITE_4HZ_GEN_BLINK_DISP_ROUTINE_PRELOADED;
LCD_WRITE_4HZ_GEN_BLINK_CLR_ROUTINE_ADDR todSetClearDisplayCityCode;
CORE_REQ_BLINK_4HZ;
APPLICATION NOTES:
• Although the general definition for a blink operation is the display and clearing of data, it does not
necessarily mean a blank display. Since the blink engine requires only a start address of two
routines, it can be pointed to any routine for a different ‘effect’. For example, it can be used to
alternatively display the messages “INTRUDER” and “ALERT”.
4.18 Scroll Services
To bypass the limited number of characters that can be displayed on a line in the main dot matrix area, the
Kernel provide scrolling services that allows strings as long as 101 bytes to be scrolled automatically at
fixed scroll speed. Macros are also provided to allow manual scrolling in both directions. The message
pattern must be terminated with the DM5_SENTINEL character.
The following macros are used to control the scrolling:
Control Macro Description
LCD_GENERATE_SCROLL_EVENT
enable/disable event generation during scrolling
LCD_PAUSE_SCROLLING
pause automatic scrolling
LCD_RESUME_8HZ_SCROLLING
resume automatic scrolling
LCD_UPD_PIXEL_SCROLL_RATE
update pixel scroll rate
LCD_SCROLL_MSG_LEFT
scroll data by x number of pixel columns to the left
LCD_SCROLL_MSG_RIGHT
scroll data by x number of pixel columns to the right
The scroll display macros shown in the table below can be used to display message string (formatted for
scrolling). The macros will check if the message is scrollable. If the entire message fits in the line, no
scrolling is done otherwise, the Kernel will automatically invoke scrolling the message at a predefined