---------------------------
 Alarm
---------------------------
 Perpetual Motion Software
 Stefan K. S. Tucker
---------------------------


-------------------
 Table of Contents
-------------------

  Introduction
  Contents
  Requirements
  Installation
  Uninstall
  Disclaimer
  Release Notes


--------------
 Introduction
--------------

This is a desktop utility that runs under Microsoft(R) Windows(R) and
allows you to set multiple alarms.  Each alarm can be set to go off
every day, every two weeks, Monday and Wednesday of every third week,
every month, once a year, etc.  You can even set a "snooze".  You can
set an alarm to run a specific application instead of just displaying
a message.  This allows you to show a video when your alarm goes off
or to run programs unattended (e.g., late-night backups or print jobs).

This application is shareware.  You can distribute any unregistered
versions of this application to individuals and to bulletin boards, as
long as you distribute all of the files in their original, unregistered,
format.  (In fact, we encourage it because that is the only way that
people find out about our work.)

If you decide that you enjoy the program and wish to continue using it,
you are required to register the application.  Although this application
is fully-functional, you may create a limited number of alarms with the
unregistered version -- you may create an unlimited number of alarms with
the registered version.

Please see Products.TXT for more information on registering this
application and for details on other products that are available
from Perpetual Motion Software.


----------
 Contents
----------

The following files are included in this package:
      ReadMe.txt   - Installation instructions and release notes (this file)
      Alarm.inf    - The installation script
      Alarm.exe    - The application
      Alarm.hlp    - Alarm's help file
      Alarm.cnt    - Alarm's help contents file
      Calendar.ocx - The calendar ActiveX control
      Setup.exe    - Installation application
      Setup.dat    - Installation information
      Products.txt - Information on this and other products
      Order.txt    - Information on how to order this and other products
      Support.txt  - Information on technical support


--------------
 Requirements
--------------

IBM PC or compatible (386, 486, Pentium, or better)
Microsoft(R) Windows(R) 95, or later

You must also have these Microsoft Windows system DLLs:

      mfc42.dll    - MS Foundation Classes DLL
                     (size: 940,304, date: 9 June 1997 or later)
      msvcrt.dll   - C-runtime DLL
                     (size: 280,576, date: 9 May 1997 or later)

You can download these files from our web site:

      http://www.geocities.com/SiliconValley/Way/5444


--------------
 Installation
--------------

Automatic installation:

1. Double-click on Setup.exe.  If this installation fails for some reason,
   you can follow the manual installation instructions below.

Manual installation:

1. Right-click on the Alarm.inf file and select the Install command.

2. You can then create a shortcut to c:\alarm\alarm.exe or to your
   alarm database files in your Startup group or on your desktop, wherever.

Not all of the files are installed on your computer.  You should keep them
in case you need to refer to the .txt files or need to reinstall the
application.  (You can keep them either on the distribution media they
came on or you can copy them to your computer yourself.)


*** Note to advanced users ***

Before you install Alarm, you can edit the alarm.inf file and modify the
following line to change the path where the Alarm files are installed.
(Unfortunately, you cannot use long filenames.)

PATH_APP = "Alarm"   ; app dir

If you want to use the automatic installation, you also need to change
the corresponding path in the Setup.dat file.


-----------
 Uninstall
-----------

1. Open the Control Panel and run "Add/Remove Programs".
2. Select "Alarm++ for Windows 95" and press the "Add/Remove" button.
   (The actual name may be slightly different.)
3. Please send us a message telling us what you don't like about Alarm.


------------
 Disclaimer
------------

The author and distributors of this software are in no way legally liable
for any negative effect resulting from its use.  In the extremely unlikely
event that something bad does happen and we are held responsible, our
liability is limited to the licensing fees paid by the user to the author.

Windows is a trademark of Microsoft Corporation.


---------------
 Release Notes
---------------

Known Problems
--------------
None.


=============================================================================
                                 Version 4.52
=============================================================================

Fixes
-----
Fixed an error that sometimes crashed Alarm++ when the user entered an
invalid registration key.


=============================================================================
                                 Version 4.51
=============================================================================

Enhancements
------------
Errors resulting from the calendar control not registering properly or from
incompatible (old) Microsoft Windows system DLLs are now reported better.

Renamed "Alarm" menu to "Edit".

You can now set the sound for an alarm back to the default beep if you change
your mind after selecting a sound file.

New state image for alarms that have more than one event left.

New icon images for alarms to indicate no action, send email, start app,
or both.

You can now play the sound that you have selected for an alarm by pressing
the Test Sound button on the Actions page of the alarm's property sheet.

There is now a toolbar with Context Help among other useful buttons.
The toolbar state is saved when you close the application.

You can now specify if you want mail support or not -- and if so, whether
you want to be prompted for a mail profile or if you want Alarm to use
a specific mail profile each time.  (This works on 95 and on NT.)


Fixes
-----
Here's the problem: A user sets an alarm to go off every day for the next
10 days.  Then, the user doesn't run the application Alarm for 5 days;
when the user finally runs the application, it displays a single message
box for the first day and sets the alarm to go off on the next day.
It didn't decrement the number of events by 5 -- it was still 9.  In other
words, Alarm was only counting the actual notifications, not the number of
valid events.
This has been corrected -- Alarm now correctly decrements the event count.

Sometimes, after the user manually deleted all of the recipients of timed
mail, the recipients field would be filled with garbage.
This has been fixed.

A Registry entry is now correctly created so that the user can create
new alarm databases by right-clicking inside a folder and selecting the
"New-Alarm Database" command.


=============================================================================
                                 Version 4.10
=============================================================================

** This update no longer disables certain features in the
   unregistered version.  ALL features of the alarms are enabled.
   The number of alarms is limited, and you must register the application
   to be able to create an unlimited number of alarms.


=============================================================================
                                 Version 4.01
=============================================================================

New icons for on/off states.  The radio button could be misleading -- it
seemed to be clickable, and implied that an alarm was part of a larger
group.  A checkmark better indicates whether an alarm is active or not.

Changed name of "Effects" property page to "Actions".


=============================================================================
                                 Version 4.00
=============================================================================

Upgraded to MS Visual C++ 5.0.


=============================================================================
                                 Version 3.20
=============================================================================

Enhancements
------------
The calendar control on the alarm property pages now uses tooltips to show
you what you can click on and what its function is.


=============================================================================
                                 Version 3.10
=============================================================================

Enhancements
------------
The user can now set an alarm to send mail to any set of mail addressees
at a specific time and interval.  You can also attach files to the message.

The user can choose to have any changes to the alarm database saved
automatically when Windows 95 shuts down.  (Usually, the Alarm application
prompts the user to save the changes.)

The snooze interval can now range from 1 to 300 minutes (5 hours).

The user can now directly edit the application edit field, rather than
just browsing for an application.  So you can now launch "applications"
such as "www.microsoft.com" or open folders at specific times by entering
something like "c:\windows\system".

An alarm's snooze status is now saved in the alarm database.  So you can
close an alarm database when an alarm is snoozing, and, when you open it
later, that alarm will still be snoozing.  (Although, the snooze interval
may have ended and you will, of course, be notified.)

Alarm now uses the registry for the most-recently-used filelist,
not alarm.ini.  You can delete the alarm.ini in your Windows directory.

Now, Alarm can open zero-length files.  This means that the Windows
Shell's New command now works for Alarm Database files.


Fixes
-----
If you open a new alarm file or create a new one while an alarm is snoozing,
you are now warned about that.
Pressing delete while renaming an alarm "in-place" no longer tries to
delete the alarm itself.


=============================================================================
                                 Version 3.02
=============================================================================

Fixes
-----
The list of events in the Properties dialog "remembers" the time setting if
it is repeating by months.
If specific weeks of the month are selected, the list of events now selects
the appropriate days of the week.


=============================================================================
                                 Version 3.01
=============================================================================

Fixes
-----
When the user changes the time on an alarm's properties page and returns
to the Date page, the list of events is updated with the new time.


=============================================================================
                                 Version 3.00
=============================================================================

Redesigned and rewritten for Windows 95.

Enhancements
------------
New Windows 95 controls.
New Windows 95 help format.
New, cleaner user interface which conforms to Windows 95 guidelines.
Tray icon keeps the minimized Alarm window out of your way.  A tooltip
tells you which alarm is next.
You can specify an application to run without displaying a message
for the event.

Fixes
-----
Advancing an alarm for a specific week of a month now works correctly.


=============================================================================
                                 Version 2.30
=============================================================================

Enhancements
------------
Dynamic registration -- you do not need to wait for our company to mail a
new version to you.  We will simply provide you (via e-mail, if you wish)
with a registration key to "unlock" the extra features.  (After we've
received the registration fee, of course.)


=============================================================================
                                 Version 2.25
=============================================================================

Enhancements
------------
Uses Microsoft's 3d controls for edit, static, combobox, listbox, checkbox,
and option buttons.
Changed event dialog box -- default is now Off.


=============================================================================
                                 Version 2.24
=============================================================================

Enhancements
------------
Sound static control is now right-aligned so the filename is always visible.


=============================================================================
                                 Version 2.23
=============================================================================

Fixes
-----
Using the full path to an application in the "Message or Program:" field
along with parameters works.


=============================================================================
                                 Version 2.22
=============================================================================

Fixes
-----
The user may only select a sound file for an alarm if their pc supports
sound.  In addition, the application tries to play sound only if the pc
supports sound.


=============================================================================
                                 Version 2.21
=============================================================================

Enhancements
------------
There is a new option in the Alarm dialog box.  The user can choose to have
the sound associated with an alarm repeat until they acknowledge the alarm.

If an alarm has a sound file associated with it, that file's directory is
the default directory when the user selects a new sound file.

The application now uses Microsoft's 3D DLL to draw three-dimensional
dialog box frames.

Fixes
-----
The app no longer GPFs if an alarm goes off while the app is active.


=============================================================================
                                 Version 2.20
=============================================================================

Fixes
-----
The full string entered for an alarm's name is now displayed in the listbox.
Previously, the last character was truncated.  In these cases, the am/pm
indicator was usually truncated as well.  Both problems have been corrected.

Alarm no longer GPFs when changing printers in Excel from the Printer-Setup
dialog.

Enhancements
------------
You can now sort the list of alarms by the alarm's name or by the date
that the alarm is set to go off next.

Alarms now support being set for a specific week of a month: First Week,
Second Week, Third Week, and Fourth Week.

The event dialog box no longer gets the focus when it is displayed.  This
enables you to continue working in your application without being interrupted.
In addition, it is set to always be the top window, so you won't lose it.


=============================================================================
                                 Version 2.12
=============================================================================

Fixes
-----
To work around a bug in Windows(TM), when the application is minimized,
Alarm does not display the date/time in the title.  (When the title was
updated every minute, Windows(TM) interprets this as a user action, causing
the screen saver timer to reset to zero.)


=============================================================================
                                 Version 2.11
=============================================================================

Changes
-------
Name of "File" menu changed to "Alarm" for greater interface consistency.

Fixes
-----
The help file has been corrected to match the (new) "Alarm" menu's choices.


=============================================================================
                                 Version 2.10
=============================================================================

Enhancements
------------
There is a new dialog box that appears when an alarm goes off.  This dialog
box can be used to change the next snooze interval.  It also features an edit
control into which go any characters that the user was typing when the alarm
goes off (for example, in a word processor).


=============================================================================
                                 Version 2.07
=============================================================================

Known Bugs
----------
If the user no longer wants to have an alarm play a sound file, they must
manually delete the sound file name from the "SoundFile=" line in the section
for that alarm in the alarm.ini file.

Enhancements
------------
The Alarm's timer now zeros itself on the seconds, so alarms now go off when
the # of seconds (according to the system clock) are zero.

Fixes
-----
The main window's title is now updated when the user changes the
International settings in the Control Panel.


=============================================================================
                                 Version 2.06
=============================================================================

Enhancements
------------
The user can now associate a sound file with each alarm.  When an alarm goes
off, it will play the assocated sound file.


=============================================================================
                                 Version 2.05
=============================================================================

Known Bugs
----------
When the application is minimized, screen savers do not get activated.

Enhancements
------------
The listbox now formats the date and time according to the Control Panel's
International settings ([Intl] in the win.ini file).

The title now displays the date and time according to the Control Panel's
International settings ([Intl] in the win.ini file).

When an alarm's message is displayed, the current date and time is displayed
in the message.

Fixes
-----
There is no longer a problem with the hour changing when an alarm is created
that crosses into or out of the daylight-savings time period.


=============================================================================
                                 Version 2.04
=============================================================================

Enhancements
------------
"How to Register" has been added to the Help menu.

Fixes
-----
The main window's help menu is now functional.


=============================================================================
                                 Version 2.03
=============================================================================

Enhancements
------------
Alarm now remembers the position of the main window from the last time the
application ran.


=============================================================================
                                 Version 2.02
=============================================================================

Known Bugs
----------
There is a small problem related to crossing Daylight Savings Time boundaries.
If you are currently in DST (e.g., 9-1-92) and create an alarm (10:00am)
which is to go off when not in DST (e.g., 12-1-92), it will be set to 9:00am.

However, if you modify the alarm and set the time back to 10:00am, it will be
correct afterwards.

Does not use [International] settings in win.ini to interpret time field
and to display the dates and times in the main listbox and in the main
window title.

Fixes
-----
The application now uses the .ini and .hlp files with the same name.
A repeat frequency of 0 causes an infinite loop, so it is now considered to
be an invalid value.

Enhancements
------------
When an alarm's message is a fully-qualified path to a file, the application
changes to that directory and then executes the named file.


=============================================================================
                                 Version 2.01
=============================================================================

Enhancements
------------
The calendar control now uses keys 1-7 to toggle the state of the weekdays.


=============================================================================
                                 Version 2.00
=============================================================================

Enhancements
------------
Instead of displaying message text when an alarm goes off, the user can set
an alarm to execute a command line when an alarm goes off.

.ini file change: Change "Days=" to "Weekdays=", change "Time=hh:mm" to
"Time=hhmm".  The "Month=" entry is now 0-based, instead of 1-based.

When the user closes the alarm application or exits Microsoft Windows(TM),
any alarms that are snoozing ask the user whether or not they want to
close Alarm.

When an alarm goes off, it the same alarm already has a message on display,
it does not display another message.

A help button is now on the alarm dialog box.

If no weekdays are selected when the user OKs changes to an alarm, an error
message is displayed.

Known Bugs
----------
The window always starts in the (0, 0) position.

When a second instance is run, the first instance of the application is not
restored; just a beep is sounded.

There is no longer any support for registration (disable features,
About text).


=============================================================================
                                 Version 1.21
=============================================================================

Enhancements
------------
Microsoft Windows(TM) 3.1 version control information added to resource file.

Automated installation tool added (available with registered product).

Fixes
-----
The radio buttons no longer act as one group (a bug introduced in v1.20).


=============================================================================
                                 Version 1.20
=============================================================================

Enhancements
------------
Added calendar control.  Simplified user interface.

.ini file change: Delete "On=", remove negative from "Date=", "Month=",
and "Year=".


=============================================================================
                                 Version 1.12
=============================================================================

Enhancements
------------
Snooze interval can be set to 0 minutes which indicates that the application
will not ask the user if they want to "hit snooze" when the alarm goes off.

Running a second instance will activate the previous instance instead of
displaying an error message.

Fixes
-----
When exiting the application, if an alarm is snoozing, the user is asked if
they really want to close the application.


=============================================================================
                                 Version 1.11
=============================================================================

Fixes
-----
Now, when an alarm goes off, it finds next match for the alarm in the future.

Known Bugs
----------
When exiting, it does not notify the user of snoozing alarms.

User is permitted to give alarms duplicate names.


=============================================================================
                                 Version 1.10
=============================================================================

Enhancements
------------
Began using pmscctrl.dll.

Use MessageBeep() function with appropriate parameters for MultiMedia support.

Known Bugs
----------
The OK button is occasionally incorrectly enabled when the user is specifying
the "Every n Xs" controls.

