Post Reply 
Making the faulty HP-50g alarm function predictable and useful
12-10-2024, 07:38 AM (This post was last modified: 12-10-2024 07:46 AM by Johnny Shek.)
Post: #16
RE: Making the faulty HP-50g alarm function predictable and useful
UPDATE:

The book “HP 48 Insights II: Problem Solving Resources” written by William C. Wickes is far more comprehensive than the User’s Guide in explaining the behaviour of the alarm system. According to his book, after an appointment alarm comes due, it can either be acknowledged by pressing a key during beeping or invoking the ACK command after the beeping stops. In the former, acknowledgement precedes program control, which might result in unpredictable effects. Therefore, a control alarm should be added to perform necessary system flag operations before the appointment alarm comes due. In addition, the ACK command can only acknowledge past due alarms one by one in descending order of their oldness. To ensure that the latest past due alarm is acknowledged, all older ones should have been acknowledged. Otherwise, certain actions would acknowledge the wrong past due alarm! In order to meet this purpose, after an appointment alarm comes due, it should be acknowledged at once.

The following is the modified action of a single-occurrence appointment alarm set for hh:59:00 with the message “GOOD MORNING!”:

Code:
« DELALARM DATE TIME IP .59 + 2. →LIST DUPDUP « DELALARM ACK PATH HOME # 2000h ‘TOFF’ STO EVAL » + STOALARM DROP 
  “GOOD MORNING!” + STOALARM DROP «  DELALARM -44. SF » + STOALARM DROP PATH HOME # 2000h ‘TOFF’ STO EVAL »

Now a single-occurrence past due appointment alarm is always acknowledged and saved, which behaves the same as a single-occurrence control alarm does. Of course, you could add code in the above action to provide visual cues to notify yourself. Other actions below can be done in the same way.

The following is the modified action of a repeating appointment alarm set for hh:59:59 with the message “GOOD MORNING!” such that the alarm is always acknowledged and rescheduled:

Code:
« DATE TIME IP .5959 + 2. →LIST DUPDUP « DELALARM ACK PATH HOME # 2000h ‘TOFF’ STO EVAL » + STOALARM DROP 
  “GOOD MORNING!” + STOALARM DROP « DELALARM -44. CF » + STOALARM DROP2 PATH HOME # 2000h ‘TOFF’ STO EVAL »

In the current method, the desired appointment alarm or control alarm is always single-occurrence in usual sense. But in the context of this thread, whether such alarm is single-occurrence or repeating also depends on the control alarm that carries it. This convention has been used here but I forgot to explain it!

If you want to create a desired appointment alarm normally, its behaviour in acknowledgement should resemble its counterpart using the current method.

3 entries with their corresponding actions and the same alarm date and time are required for a single-occurrence appointment alarm that shows the message “GOOD MORNING!” when it comes due:

Code:
« DELALARM ACK PATH HOME # 2000h ‘TOFF’ STO EVAL »

“GOOD MORNING”

« DELALARM -44. SF »

Follow their order of creation STRICTLY, and hence they should appear in reverse order in the system alarm list.

3 entries with their corresponding actions and the same alarm date and time are required for a repeating appointment alarm that shows the message “GOOD MORNING!” when it comes due. The first 2 entries should also have the same repeat interval while the last one is single-occurrence.

Code:
« ACK RCLALARM 1. 2. SUB « DELALARM -43. SF » + STOALARM DROP PATH HOME # 2000h ‘TOFF’ STO EVAL »

“GOOD MORNING!”

« DELALARM -43. SF »

Again, follow their order of creation STRICTLY! In the system alarm list, the 3 entries should be in reverse order.

Stay tuned!
Find all posts by this user
Quote this message in a reply
Post Reply 


Messages In This Thread
RE: Making the faulty HP-50g alarm function predictable and useful - Johnny Shek - 12-10-2024 07:38 AM



User(s) browsing this thread: 3 Guest(s)