Most HP49G clocks are not very accurate. One second a day may not seem to be much, but will sum up to a minute in two months. Additionally, the temperature of the HP49G, and therefore the usage of the calculator, influences the clock speed. ClckAdjst is a library, which provides tools for "automatic" clock adjustments and much more. ClckAdjst provides fast and easy setting and adjustment of the system clock. It handles changes of the time zone and automatic daylight saving time changes for USA and Europe. It provides an accurate "automatic" clock adjustment and shows the daily deviation of your HP49G clock.
Thanks to everyone who has helped for this project. In particular, many thanks to: James M. Prange, for expertly evising the documentation and for additional information, Wolfgang Rautenberg, for many hints and for his indispensable tools, Eric Rechlin, for organising his exceptional site, Steen Schmidt, for steadily giving hints in the newsgroup and his "Informbuilder", which I have used for the program.
Clock Adjust is freeware, but you should send an e-mail for registration, in case you use the program. Distribution of the program is only allowed with the documentation included. It is recommended to save your data, before installing the program. The author is not responsible for any damage, caused by using the software or the documentation.
AAD (Auto Adjust) is the main program, which adjusts your clock. A one-time "SETUP" with ClSet (Clock Setup), and some days later an Adjustment with ->sADJ is required. Then you might, for example, run AAD once a day, started by an alarm setting. But it's suggested that you run it only just before requesting the exact time. As an example you might assign << AAD ACC >> to the longhold [HIST], assuming you have Wolfgang Rautenbergs ACC and Keymang. With Appsman you will have access via a "choose box", simply by pressing right-shift TIME.
Appsman, (lib# 1791) and its documentation are optional required for the modified TIME choose box.
Keyman, (lib# 1200) and the analogue clock with calendar ACC(xy), are optional but recommended.
Copy CLDIR from the PC to your calculator binary mode to the home directory; decompress by starting the softkey CLDIR. Check size and crc with the command line: 'CLDIR' BYTES EVAL.
Run INST.
This will move the library L1333 into Port 2 and will attach it. Further on MCL will be moved into your HOME directory. Existing files could be overwritten. Take care for having only one library 1333 in all the ports.
Move APAR6 (parameters for Appsman) manually into the home DIR or try the program starting in CLDIR (read Appsman-docu for more information).
Calling DEL from CLDIR will uninstall ClckAdjst, purge the directory CLDIR, MCL (in the HOME-Dir) and L1333 from Port 2
Purge CLDIR on the calculator. Transfer CLDIR(.plus) to the calculator and run it (It will become a directory). Run INST for installation. Cancel the Setup and you are done. With this procedure, your older MCL will be used.
User mode is assumed. If needed, press left-shift USER until 1US or USR appears in the display header. Press right-shift TIME to get access to the TIME choose box:
Choose Setup (Settings, Initialisation and Info). This starts the program ClSet in your HOME directory. It only needs to run once, to set your system clock manually, to define the time zone, and to choose whether daylight saving time is in effect. For time zones in Europe and in USA choose Auto-DST if DST is applicable (not all States use DST e.g. Indiana).
TZ: Enter your standard time zone: (e.g. New York: -5, London: 0, Paris/Berlin/Stockholm: +1, Hong-Kong: +8 or Calcutta: +5.5). Visit http://www.worldtimezone.com/ or http://www.timeanddate.com/ for further locations and information about daylight saving time.
spd: In case you know the daily-required adjustment for your system clock in seconds per day, type it at spd. If not, type 0.
DST: Set a check mark if daylight saving time is currently in effect.
Set time, date..? It is required to adjust the system clock within (or just before) the SETUP procedure. Set a check mark to have a "guided tour" through system clock setting. Keep unchecked if you have just adjusted the clock. A checkmark will provide the built-in SET TIME AND DATE tool after leaving the input form:
1 to 14 days after running the SETUP you should call the TIME choose box again (right-shift TIME) and choose Clock Menu. Without Appsman you need to run ClMen manually or make a key assignment for ClMen.
Requirement for a comfortable adjustment: If the deviation between the HP49G clock and an accurate running clock is less than 2.5 seconds. Start dNOW->, when your accurate reference clock just switches in steps of 5 seconds.
(8:00:00 h, 8:00:05 h, 8:00:10...).
It displays the time of your key-press, the required adjustment, and gives the required adjustment into the stack level 1. In case you are satisfied with your key press, lets say you felt good that the keystroke was synchronic with the accurate clock, you choose ->sADJ, and you are done with the adjustment.
CHTZ& enables to change the time zone and change from/to daylight saving time. DST changes are without consequences in Auto-DST-mode, when choosing TZ 10 to 5 or TZ 1 to +3.
Auto/Manu: Switch to Auto-DST-mode when Auto is visible
->sADJ: "seconds?, used to ADJust the system clock". Enter the required seconds to adjust the clock. In case the HP49G clock is too slow, a positive number is required.
All parameteres are stored in your home directory in MCL: "Memory for the CLock adjustment" which is a list of 8 objects:
1. TICKS, B->R for the last adjustment time. For the 49g+ this value is calculated to be the time when the hp-clock is supposed to be exact, which is typically before or after the last adjustment.
2. TICKS, B->R for the initialisation time, which can be influenced with ClIni.
3. Accumulated adjustments in seconds between 1. and 2.
4. The time zone that AAD (see below) will switch to with the next run.
5. The current time zone
6. Daylight saving time status that AAD (see below) will switch to with the next run.
7. The current status for daylight saving time 1 = yes, 0 = no
8. Is 0 in Manuel-DST-mode and 1 in Auto-DST-Mode
AAD: "Automatic ADjustment". Executing AAD, automatically adjusts the system clock based on the calibration which has been done before, without any input/output from/to the stack.
If you prefer, you can set a repeating alarm << PATH HOME AAD EVAL OFF>> or a key assignment to execute << PATH HOME AAD EVAL>>
This and other LIB-commands are collected in the "AUR_CA"
Remark 1: Some routines load and save from/into the variable MCL (memory for the clock adjustment). Creating several MCL variables normally makes no sense and has an influence on the accuracy of your 49G/49g+ clock.
Remark 2: ->TIME, ->DATE, CLKADJ, "Set time, date.." and any other built-in commands that change the time do so without recording the change in MCL. They are tools to adjust the system clock before (or while) running ClSet (the SETUP). They should be not used for adjusting the clock later on, because this would influence the accuracy of further automatic adjustments via AAD.
Remark 3: Even with a bad initialisation, the accuracy becomes better by using ->sADJ from time to time, especially when the ambient temperature for the HP49G is changing.
All additional programs are available at http://www.hpcalc.org/
HPComm: 48/49 link kit for Windows 95/98/NT/2000 (included with the HP Graphing Calculator PC Connectivity Kit) http://www.hpcalc.org/hp48/pc/link/hpcomm-30r4.zip
The following tools are
available, allways up to date, on the website of Wolfgang
Rautenberg:
http://www.math.fu-berlin.de/~raut/WR49/index.htm
Keyman is optional but strongly recommended. ACC is an analogue
clock with a calendar, available in different languages. To
implement ACC within ClckAdjst, get it. Try CHOOSEXT to develop
more user-friendly programs.
Steen Schmidt's InForm-Builder is available on: http://www.hpcalc.org/hp49/programming/misc/ifbv17.zip
Comments, questions, improvements for the documentation, experience with the program and hints are appreciated. Please, e-mail.