NUMPAD 1.4 is a multi-function WristApp for the DataLink 150/150s Watch (c) 1998 Michael Polymenakos (mpoly@panix.com). Compiled using tools and knowledge published by John A. Toebes, VIII 1. Release notes 2. Usage Instructions 3. Program Versions 4. Installation 5. Known Bugs 6. About the Source Code 1. Release notes Latest source and .ZAP file available at http://www.panix.com/~mpoly/software/numpad.zip If you receive this file from another source, you may want to download the file from the above URL to ensure that you have the most recent version. Distribute freely; Please include this file and software credits with the distribution. Comments are always welcome at mpoly@panix.com This is Version 1.4. New features over 1.3: - Ability to control the ButtonBeeps without resetting them from the PC - 'Return to time mode' tone 2. Usage Instructions There are four functions in Numpad: NUMPAD: A simple wristapp that allows the recording "on the fly" of three numbers, of 12 digits each. Keys: MODE: Exit and advance to next Numpad NEXT: Increment Digit PREV: Decrement Digit SET : Cursor Advance GLOW: Cursor Back (Indiglo is disabled in this mode, but Night mode works) Note: The numbers are lost every time the WristApp is uploaded. CHRONO: A Simple Stopwatch. In addition to the usual functions, there is a Countdown timer that will beep every N minutes, if it is set. Keys: MODE: Switch to Numpad NEXT: Start/Stop Chronometer PREV: Enter/Leave Split mode. If pressed while chronometer is stopped, reset to 0 If pressed while chronometer is set to 0, reset the Countdown Timer If pressed while Timer is reset, toggle Chronometer Alarm and ButtonBeeps ON/OFF SET : Reset chronometer to 0, and continue in same mode If pressed while chronometer is set to 0, advance the Countdown value by 1 (Keep pressed to advance quickly) GLOW: Indiglo is enabled in this mode WEEKLY: This is an invisible function, which affects the way the alarms are handled by the watch. Each alarm has an 8-character text field associated with it. Weekly uses the last (8th) character in that field to automatically set the alarms ON and OFF, allowing for a weekly schedule. To use WEEKLY, set your alarms to DAILY, and set the last digit of the alarm text to one of the following values: 0 - Ring on Weekdays only 1 - Ring on Mondays only 2 - Tuesdays . . 7 - Sundays 8 - Weekends 9 - Do not adjust Any non-numeric values in the field have the same result as 9. Alarms are adjusted using the current timezone (1 or 2). When setting alarms ON or OFF manually, please note: If the 8th digit in the TEXT field is 0 through 8, your setting will be reset as soon as you return to TIME mode. This is not a bug, but the way the program functions. CORRECTBEEP: There is a bug in the Timex ROM. The manual for the watch reads: <> But this is not what happens. When arming/disarming the hourly Chime, the Button Beeps are also armed/disarmed regardless of the user's setting in the upload program. The CorrectBeep code fixes this, and causes the watch to behave as described in the documentation. (The ButtonBeeps will not be corrected until the watch returns to TIME mode). The user can control the ButtonBeeps using the Previous button in the 'Chrono' mode (see above). When the ButtonBeeps are set, the tone symbol is displayed in Chrono mode. 3. Program Versions In response to various requests, there are 4 versions of the software available: NUMPAD-A.ZAP - The standard application. When the watch returns to TIME mode, it will always beep (regardless of the ButtonBeeps setting). NUMPAD-B.ZAP - The standard application. When the watch returns to TIME mode, it will beep only if ButtonBeeps are set ON. NUMPAD-C.ZAP - A new feature has been added: Chime Control. The hourly Chime will be turned OFF from 8pm through 8am, and ON for the rest of the day. Currently the only way to change the ON/OFF hours is to alter and recompile the provided source code. Use the Alarm screen to control ButtonBeeps. Requested by a Datalink user, who likes the chime, but whose wife does not! NUMPAD-D.ZAP - As above, but with the WEEKLY function disabled for those who do not need it. The ButtonBeep control functions are present 4. Installation. 4a) Users of Datalink software 2.1D and later: a) Copy the .ZAP files provided in this extract into the APP subdirectory of your Timex directory. d) Restart TimexDL and select the wristapp you wish to upload. 4b) Users of Datalink software 2.1C and earlier: a) In your Timex Software Directory, locate the file TIMEXDL.DAT, and edit it b) Look for the [WristApps] Section. Increment the WristAppTotal count, and add new lines for Numpad below. This is an example of what the section may look like after you are done: [WristApps] WristAppTotal=9 SelectedWristApp=7 WristAppSendOption=True WristApp000=CHRONO12.ZAP WristApp001=WKSUSA11.ZAP WristApp002=WKSISO11.ZAP WristApp003=TIMER13.ZAP WristApp004=QUICK13.ZAP WristApp005=NOTE13.ZAP WristApp006=MELODY17.ZAP WristApp007=NUMPAD-A.zap WristApp008=NUMPAD-D.zap c) Copy the .ZAP files provided in this extract into the APP subdirectory of your Timex directory. d) Restart TimexDL and select the wristapp you wish to upload. 5. Known Bugs. 5a) If you set an Alarm for 0:00 (midnight), the Weekly feature will treat it as if though it was set for the night before. So, 0:00 Tuesday morning, is really treated as 24:00 Monday night. 5b) When you finish downloading the app, there will be some garbage characters in the COMM mode screen. Nothing to worry about. 6. About the Source Code You can modify and recompile the source code using the compiler found at John Toebes' pages (http://www.geocities.com/ResearchTriangle/7650/). The source code in this version will not compile as-is, because the total size of the code for all the features exceeds the Datalink's 742 byte limitation. The source code for Numpad 1.0 was much better organized and documented that the code for this version. In order to conserve memory, I had to use every trick that would save me one byte here and another byte there. I'll be glad to explain any code segment to anyone interested in making improvements. If you do create something interesting using Numpad as your starting point, please release it to the public with the source code, so that we all benefit. Please provide proper attribution for the code you reused. Enjoy!