Now this is something unusual. Who would want to use a 30-year-old machine worth something as a mere egg timer, or use it at all in a kitchen, where it could easily get damaged?
It just so happens that one of the machines in my collection is a SwissMicros DM41. It's built really solid and it's basically the same thing as a Hewlett Packard HP-41CX in a case the size of a credit card, so that means that it incorporates, among other things, a Time Module, which gives it a stopwatch, countdown timer and alarm capabilities.
The DM41 is a great little piece of technology. However, the operative word here is "little". While its LCD is the same size as it's Voyager-sized big brother, the DM41L, its keys are just a bit too small for the device to be fully practical, but for some things its form factor makes it just right. Okay, it's more than an egg timer. This said, my DM41 gets used most of the time in the kitchen as a timer while I'm cooking. I keep it in the breast pocket of my shirt.
The program I'm showcasing here isn't restricted to the HP-41CX and DM41(L), it will also work on the HP-41C or HP-41CV as long as it's fitted with a Time Module (HP-82182A).
The idea behind this was to give me a quick way of having an alarm go off after a set amount of time. There are two ways of going about this on the '41. You can set the stopwatch to a negative time using SETSW and start it going with RUNSW. It will count upwards towards zero and when it gets there, it will emit a single beep and continue counting. The advantage of this option is that you can follow the progress of the countdown. Alternatively, you can calculate what the time will be after the set amount of time has elapsed and set an alarm for that time using XYZALM. With this option you won't know how long there is to go before the alarm goes off, but you will see an indication of the time for which it was set after running CDOWN.
The first option is easy enough as long as the required instructions have been assigned to keys in USER mode, but when the time has elapsed, it's easy to miss the single beep while you're going about your business. The second option gives you a full-blown alarm with all the flexibility that implies, but you need to calculate the alarm date as well as the time in case the countdown time takes you beyond midnight. This is exactly what the program CDOWN does.
CDOWN is easy to use:
- Set the alpha register as you would if creating an alarm manually. So, that's with a message, blank, or with a global label (refer to the Time Module manual for details).
- Enter the time to count down in the form HH.MMSS (e.g. 0.0530 for 5m30s)
- Run CDOWN (either XEQ it or assign it to a USER key)
You'll see the time of day when the alarm is set to go off in X after CDOWN runs.