Alarm - your friendly little reminder...
What is Alarm?


Version notes

Entries in bold were publically released.

v0.14  2009/07/26

       Having now got myself an eeePC901, I am experiencing an odd
       quirk where Windows doesn't always load stuff into the system
       tray correctly. Alarm's icon would fail to appear, but Alarm
       would be loaded. This is not a fault of Alarm as it also
       happened to WinAmp, the battery/power indicator, and that
       little green arrow so you can dismount removable drives...
       ...what Alarm did which was less helpful was it complained
       about systray error - twice - every startup. Useful. So this
       message has been removed. If Alarm's taskbar icon cannot be
       redrawn for whatever reason, too bad - it will be stuck as
       it was without giving you a message.

       I also made the software startup go faster.

       Oh, and for what it is worth, to "cure" the system tray, you
       should log off and back in again. A bit of a palava, but I
       guess Windows needs two tries to get it right. :-)

v0.12  2008/02/28

       Fixed problem with gamma correction under Windows XP. This
       occurred due to tiny change in the API where something worked
       fine under Windows 98SE, but XP didn't like it.

       Gamma correction will accept 32 bit resolution in addition to
       24 bit. You still only get 24 bits of colour (3 x 8 bit), but
       you also get eight bits of 'transparency'. You have probably
       seen some dopey programs offering to make themselves

       Also added a safeguard that if setting the gamma causes a
       crash in the actual doing-it procedure (it may, on some video
       hardware?); then Alarm will know about this and no longer
       permit you to access the gamma correction.
         Techie: In the registry, where Alarm keeps its info, in
                 the "Settings" section, a string value called
                 "GammaFailed" will exist and be 'True' (or -1?) if
                 the gamma correction failed. If this string value
                 does NOT exist, then all is well.

       You will be informed if setting gamma correction is not
       possible using your display hardware. Not all video cards
       support this. My nVidia GeForce2 MX-400 does not appear to.

v0.11  2007/07/09

       Modifications to the alarm display routine so it uses far
       fewer system resources and, thus, does not try to claim large
       chunks of CPU time for a wait loop.

v0.10  2007/01/21

       Requests, and intercepts, a status message if/when the desktop
       restarts. This means that if Explorer crashes and restarts,
       restarting the desktop, the Alarm icon remains in the system
       tray instead of vanishing.

       I suspect it is a quirk of running an application within
       the Visual Basic development environment, but sometimes the
       systray menu fails to appear (I can't reproduce this with a
       .EXE but it happens a lot in VB). If this should ever show
       itself "in the wild", it is not recommended that you perform
       an unclean abort. Therefore, double-click on the systray icon
       to open the alarm list. Then hold down the ALT key and RIGHT
       click on the "Close" button. This 'hidden' action will cleanly
       terminate Alarm.
       But to reiterate, this doesn't seem to occur with the proper
       executable - so it may well be an unwanted side effect of the
       IDE (rather like MessageBox while a modal window is open!).

       Gamma correction system added.
       This will restate the selected gamma (if so configured) when
       Windows reports a display mode change, which is upon changing
       the display mode, and upon restoring from hibernate.

       It is not, yet, possible to detect the following two cases:
         1. Returning from a full-screen DOS session
         2. Returning from a BSOD message
       There does not appear to be a Windows message for these events
       so I'll need to look for another way to do things. In these
       cases, you can restore the desired gamma with three mouse
       clicks. With any luck, you probably won't use DOS much these
       days, and you won't suffer (many) BSODs either!

v0.09  2006/12/08

       Fixed bug in battery monitor where it 'assumed' that the
       machine was always running off mains power. This worked in
       the development, I must have cocked it up when tidying up the
       code. :-(

       Fixed tiny quirk in one of the conversion algorithms (it was
       missing the definition).

       I'd like to trap WM_CREATE for "TaskbarCreated", so the system
       tray icon may return after an Explorer crash, but I can't get
       this to work (normally the system tray icon stops responding
       to various events and when quit, the application then crashes).

v0.08  2006/07/14

       Implemented battery monitor. It will record the last 240
       minutes of battery status. The horizontal part of the grid is
       the time, with the OLDEST readings on the LEFT. The vertical
       part is the percentage charged (i.e. at 95 the battery is 95%
       The dots may be one of five colours:
         GREEN   This is any reading between 66% and 100% charge.
         YELLOW  This is any reading between 33% and 66% charge.
         RED     This is any reading between 0% and 33% charge.

         BLUE    This is any reading when running off of mains power,
                 it overrides the above colours.

         MAGENTA These are 'dead' readings. These occur when Alarm was
                 unable to operate, either due to standby/hibernate
                 or because you were shelled out to DOS.

       Obviously, this will not work if either your computer does not
       have a battery (i.e. a desktop machine) or if the battery pack
       is too old to provide power estimates, or your laptop is too
       old or firmware too crappy to inform Windows of the status of
       the battery.

       Don't worry if you've been running your laptop off of mains
       for a week and your battery level is something between 92% and
       98%. This is normal. Batteries have internal losses (some more
       than others) as well as tiny amounts used by the computer in
       monitoring it. To keep the battery at 100% is a quick way to
       destroy it. Instead, most sane laptop charging systems will
       ignore the battery status if it is over ~92%, and only kick in
       charging then. Note that Lithium-Ion batteries do not respond
       to trickle charging, so your laptop probably won't do that

v0.07  2006/07/06

       Conversions can now accept negative numbers. Not much use for
       converting stuff like "-2 acres", but may be desired for -2F!

       Numerical conversions added.

v0.06  2006/07/05

       Added "Delete" button in nicer alarm view. This allows you to
       immediately cancel an autorepeating alarm.
       To aid this, the status shows if the alarm will autorepeat.

       Because Alarm is always present on the system tray, I figured
       it would be a useful place to put in a few additional
       utilities; therefore if you open the system tray menu, you
       will see two new options:
         Number conversions
       The conversions allow you to convert from one thing to another
       quickly and easily - celsius to fahrenheit, for example.
       The number conversions will probably added tomorrow...

       The conversions reads from a file "conv.dat". If this file
       does not exist, or is damaged, then a new version will be
       created with default values. Refer to "conv.txt" for details
       on the layout.

v0.05  2006/01/05

       The 'nicer' display option now automatically adjusts its size
       to the size of the message. It does NOT clip for messages with
       lots of linebreaks that would make the message taller than the
       screen - as doing such a thing is silly... :-)
       In any case, it looks a heck of a lot "nicer" now!

v0.04  2005/11/04

       Fixed the modal/non-modal error if there were alarms that had
       been 'missed' when Alarm loaded. This, interestingly, did not
       occur in the development environment!

       Now more logical behaviour for "missed" alarms. If you answer
       "No" (don't show me), then it'll mark the alarm as "ancient"
       and you won't be shown it. The previous behaviour was to show
       all of them at the next trigger point, which was a bit silly
       They'll appear in the alarm list with the prefix "(EXPIRED)",
       you can re-set them or delete them as you desire.

       Spent MANY versions (up to v0.03r37) trying different things
       to try to get the notifications to pop to the front; but STILL
       it seems as if stuff wants to open at the back of the window
       stack... this is INCORRECT (as the alarm list window routine
       actually specifies being the 'front' window in two different
       ways, twice!). I don't know if this is a bug in Windows98SE or
       a weird peculiarity of the System Tray, or something equally
       bizarre in VB5's runtime... either way, I'm all out of ideas!

       Interlock so that the Alarm trigger event(s) will not fire
       when a message prompt is on screen.

       Now no longer generates a "this is not a critical error"
       message if the alarm list is open, and the only alarm has
       just gone off, and been deleted. Thanks Ewen!

       Gah! I'm so used to most of the resources being included within
       these .EXE files that the bell icons were missing. :-( :-(

       Better interlocking of 'other' events that may occur while the
       "modal" alarm message is open... notably you can't click on
       the System Tray icon to open the alarm list (etc) at that time;
       it'll now just beep at you.

       Implemented a 'nicer' alarm reporting system (it appears on the
       task bar as well!) with a 'snooze' button. If you would like
       the OLD style (open Alarm list, display it in a message box)
       then add the following STRING value to Alarm's "Settings" key
       (yes, with RegEdit):
       set the string to say "True".

v0.03  2005/10/25

       Modifications to the window display procedure. It APPEARS that
       the very first time the alarm list is opened, it is opened at
       the BACK of the window stack. Don't ask me why!

       Added splash screen.

v0.02  2005/10/23

       Revised the alarm detection routine so it'll catch and display
       missed alarms that were not missed when the trigger went off
       (i.e. two alarms at 20:14 and two at 20:15; first triggers at
       20:14 but user does not dismiss it until 20:19...).

       Wrote help file, and linked it in.

       Changed from Ebed's SysTray control (which could not
       arbitrarily change the system tray icon AND required VB6's
       runtime) to one that Ewen found for me (thanks!) which looks
       simpler but is actually a heck of a lot more flexible!

       Implemented suspend; alarms will NOT be triggered while you
       are adding, editing, or deleting an alarm.

       Secondary suspend functionality, you cannot edit an alarm
       while you are already adding or editing; likewise for

v0.01  2005/10/22

       TimeZone tweak implemented.

       New alarm detection routine, doesn't crash if two alarms are
       set for the same time! :-)

       Deferral by specified time implemented.

       Alarms, once seen, are deleted or updated according to repeat

v0.00  2005/10/21

       First runnable version, not entirely complete!


Return to Alarm's downloads page

Return to software index

Copyright © 2009 Richard Murray