HPAPPA30.DOC NOTICE: Program HPAPPA.LIB and documentation HPAPPA30.DOC are copyright (C) 1995-96 Ludvik Krulik, all rights reserved. This version of HPAPPA is NOT public domain or free software, but is being distributed as SHAREWARE. You are granted a limited license to use this shareware for a two week evaluation period. If after the two week evaluation period you determine that HPAPPA meets your needs, you are required to register HPAPPA. If you distribute this software to others, you are required to distribute the entire unmodified package (ZIP file). Commercial use of this material is not allowed without prior permission from the author. WARRANTY: Following library works ONLY on G/GX series HP48 calculators. It contains unsupported code. Even though it has been extensively tested on various ROM revisions, USE AT YOUR OWN RISK. THIS SOFTWARE IS PROVIDED WITHOUT ANY WARRANTY. AUTHOR SHALL NOT BE LIABLE FOR ANY DAMAGES RESULTING FROM THE USE OF THIS SOFTWARE, INCLUDING BUT NOT LIMITED TO, LOSS OF PROFIT, DATA OR USE OF THE SOFTWARE, OR INDIRECT, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES OR OTHER SIMILAR CLAIMS. NOTE TO HACKERS: This program is shareware. If you can take it apart and remove shareware pause, keep this to yourself. If you have any questions, suggestions or bug reports, e-mail me at Ludvik.Krulik@snet.fer.uni-lj.si 1. Overview HPAPPA v3.0 = Improved HP48 APPointment Alarms. * Adds improved appointment alarms in addition to built-in. * Appointment components: message, date/time, time of warning, repeat interval of warning. * Contains alarm browser that supports normal and appointment alarms. * Link to HPCALENDAR library (1500) v3.0 OR HIGHER. * WORKS >ONLY< WITH HPSTACK LIBRARY (1502) v3.0 OR HIGHER! HPAPPA doesn't contain any visible commands except ABOUT. It is utilized by HPSTACK library (1502). IF YOU DO NOT HAVE HPSTACK v3.0 OR HIGHER INSTALLED, YOU WILL HAVE NO USE OF THIS LIBRARY WHATSOEVER. 2. Using HPAPPA library 2.1 Appointment alarm 'Appointment alarm' in this context refers to an alarm that has A LIST FOR AN ACTION. The list contains message, time and date of an appointment and a flag. You cannot execute this type of alarm outside HPSTACK. Executing it outside HPSTACK would simply put the list on the stack. 2.2 Running HPAPPA * Install library in one of HP's ports. * Make sure that HPSTACK is running. * Press RightShift+4. Following launch box comes up: +------------------+ | Browse alarms... | | Set appointment | | Set alarm..." | | Set time, date...| +------------------+ 2.3 Setting appointment Press: * RightShift+4 and select "Set appointment" or _ * RightShift+4, select "Browse alarms..." and press [ APP ] menu key. Input form field groups (see also help on the bottom of the input form): - appointment message, - date: day, moth, year; - time: hour, minute, format; - time of warning: number of units, unit; - repeat interval of warning: interval, unit. Notes: * If you have HPCALENDAR library (1500) installed, you can access it by pressing [CALE] menu key. HPCALENDAR will automatically set date if you exit through [v'''] or ENTER. * Repeat interval is rounded to integer part. 2.4 Browsing through alarms Press RightShift+4 and select "Browse alarms...". This runs alarm browser which also recognizes new type of alarm. A small "A" is displayed in front of the message to indicate appointment alarm. ! Note: Time and date displayed in browser line for appointment alarm are not time and date of actual alarm, but rather time and date of an appointment. (taken from the list) Menu keys: - [EDIT] runs "EDIT APPOINTMENT" or "EDIT ALARM" input form, depending on the type of alarm selected. - [APP ] runs "SET APPOINTMENT" input form. (see 2.3) - [ALAR] runs "SET ALARM INFORM" input form. (built-in) - [PURG] purges selected alarm. - [VIEW] shows selected alarm's action/message. - [EXIT] or [CALE] if you have HPCALENDAR library (1500) installed. Runs HPCALENDAR with marked selected alarm's date. If you exit calendar through ENTER or [v'''] key, browser will select first alarm due after exit date. ! Note: Since I used FINDALARM, selection may not be very accurate for appointments. This is because FINDALARM searches through warning times and not actual appointment times. If the first warning falls on a different date than appointment itself, browser will highlight it, even though it does not match exit date from calendar. However, this should not present a problem if you use relatively small warning times (few minutes/hours). 2.5 As appointment alarm goes off As appointment alarm goes off: * You can press any key once to acknowledge and delete it. * You can press any key twice (you have to be quite fast - second keystroke within a second from first - and hold it down the second time until you hear a beep) to reschedule alarm. The new alarm will go off at the time of an appointment and won't be repeated. This feature is useful if you have a very early warning and don't want to be bothered again before the appointment. * If you're not around to acknowledge appointment alarm even at the last warning, alarm will be deleted. You will, of course, be notified. 2.6 Customizing HPAPPA You can supply your own values for "SET APPOINTMENT" input form 'time of warning: number of units' and 'repeat interval of warning: interval' fields instead of default 0 and 0. To do so: - enter hidden directory, (in HPSTACK, press LeftShift+VAR and [->HDIR]) - put a list containing two real numbers on stack, (time and repeat interval) - put 'HPAPPApar' variable name on stack, - press STO, - press HOME to get out of hidden directory. To return to default values, simply purge 'HPAPPApar' variable. Be sure not to purge something else in hidden directory. Example: You want "SET APPOINTMENT" input form to start with 30 minutes early warning and 10 minutes interval. Solution: * Enter hidden directory, * 4: 3: 2: { 30 10 } 1: 'HPAPPApar' * press STO, * press HOME. 3. Calling HPAPPA from other applications From User RPL: * Execute "SET APPOINTMENT" inform: << #5E0001h LIBEVAL DROP >> * Execute browser: << #5E0002h LIBEVAL >> From System RPL: * Execute "SET APPOINTMENT" inform: :: ROMPTR 5E0 001 DROP ; * Execute browser: :: ROMPTR 5E0 002 ; 4. Credits Thanks to the following people for suggestions and beta testing: Francois Vignon (100333.700@compuserve.com) Andrej Sila (asil@ltk6.fer.uni-lj.si) Erik Wever (ew@p20.wharfrat.fido.de) Makoto Miyamoto (Makoto.Miyamoto@rz.ruhr-uni-bochum.de) 5. Information about library - Version: 3.0 - Library ID: 1504 - Size: 3058.0 bytes - Checksum: #2D34h 6. Registering information If you decide to register this program, you will * receive the latest version without "SHAREWARE PAUSE" message via Internet e-mail, uuencoded. * receive future upgrades free of charge via Internet e-mail, uuencoded. You can register more than one program. If you decide to register three or more, registration fee is for three programs only. Payment method: In cash, US$ only. Registration form: ===================================================================== TO: Date: _____________________ Ludvik Krulik Sela 49a, 8257 DOBOVA SLOVENIA Ludvik.Krulik@snet.fer.uni-lj.si FROM: Name: _______________________________________________________ Address: _______________________________________________________ Country: _______________________________________________________ Internet E-mail address (obligatory) : ________________________________________________________________ ORDER: HPTODO v3.0 ........................................ (5 US$) [ ] HPAPPA v3.0 ........................................ (5 US$) [ ] HPCALENDAR v3.0 .................................... (5 US$) [ ] HPLOCK v3.0 ........................................ (5 US$) [ ] HPPORT v3.0 ........................................ (5 US$) [ ] ================================================================ TOTAL (three if more than three checked)..............__ x 5 US$ =====================================================================