Contents of the ALARM.DOC file
TITLE: ALARM 3.02
PURPOSE: Resident clock, chime, and alarm program
AUTHOR: Thomas A. Lundin
16267 Hudson Avenue
Lakeville, MN 55044
Daytime # (612) 588-7571
DESCRIPTION: ALARM provides a memory-resident on-screen clock in the upper
or lower right corner. On the hour and half-hour, a short
tune is played (the tunes are programmable by you). The
program can also store up to 10 alarm times per day which
will be indicated by another tune and a flashing reminder
message at the bottom of the screen, all of which are
programmable. The clock display, chimes, and alarms can be
toggled on or off individually.
OPERATION: The command line invocation is:
-? displays program usage
-c toggle Chimes on and off
-a toggle Alarms on and off
-k toggle clocK display on and off
-p toggle clock display Position
-s Set alarms (read from ALARM.DAT)
-tFILENAME load a Tune from FILENAME
-dMM/DD/YY load alarms for specified Date
The first time ALARM is run, no options can be specified on
the command line; they won't be processed. Subsequent
executions can invoke the options. Multiple options can be
specified on one command line.
1. FORMAT OF THE ALARM.DAT FILE:
ALARM.DAT is an ASCII file which contains the alarm
dates, times, and messages that the program will store.
Up to 10 alarm times can be programmed for one date, but
your ALARM.DAT file can contain alarms for as many dates
as you want. Each alarm is entered as:
MM/DD/YY HH:MM Your message here!
The first item in the line is the date. It must be
followed by only one space. The next item is the time
that the alarm will be called. It is entered in 24-hour
notation (where 1:00pm is 13:00, also known as military
time). It must be followed by only one space. The last
item is the message that will be displayed at alarm
time. It can be up to 40 characters long. See the sample
ALARM.DAT file for examples.
If you enter an alarm time that is on the hour or
half-hour, the alarm tune will override the normal
chime. Since I like listening to tunes, I usually set my
alarms to sound off a few minutes before or after the
hour or half-hour.
Alarm messages will be displayed on the last line of
your screen, and the alarm tune will cycle through
twice. The message remains on the screen only as long as
no other program writes over it.
Use the -s option in the command line to set the alarms
from ALARM.DAT. ALARM.DAT must reside in the current
subdirectory, or in a subdirectory that is part of your
PATH command. When alarms are set, the alarm is
automatically turned ON, even if you toggled it off
2. FORMAT OF THE TUNES FILES:
A tune file is an ASCII file which contains the
individual musical frequencies which make up an hourly,
half-hourly, or alarm chime. Each tune file can contain
up to 3 lines, one for each type of chime. The format of
a tune line is:
All elements are comma-separated.
ALARM_TYPE must be one of three letters: A for Alarm, T
for Top-of-the-hour, or H for Half-hour.
BEEP_SPEED must be a number from 1 to 18. It determines
how long each note is played, in increments of 1/18th of
a second. For example, a BEEP_SPEED value of 3 will play
each note for about 1/6 of a second. BEEP_SPEED is an
absolute timing measure based on the 18.2 ticks per
second of the system clock, so chimes and alarms will
sound the same regardless of processor speed.
NOTE1 through NOTE63 are the individual notes, entered
as frequency values, which compose the tune being
played. See the sample file SCALE.TXT for a chart of
musical note frequency values. A "rest" is entered as a
-1 frequency. Two or more consecutive notes of the same
frequency will sound like one long note (useful for
providing aesthetically-pleasing musical phrasing). The
series of notes must be terminated with a 0.
The Top-of-the-hour and Half-hour tunes can each be up
to 63 notes in length. The Alarm tune can be up to 29
notes in length. Violating these restrictions could
cause the program to crash, possibly locking up the
system, or, more likely, emit an interminable series of
random beeps instead of the tune you want.
To load a tune into memory, use the -tFILENAME option,
where FILENAME is any valid PC path/filename that
contains tune information. You can do as I've done, and
create a little library of tunes -- one tune per file --
and mix and match them on a single command line (see the
ALARM.BAT batch file for an example), or you can load
pre-defined combinations of tunes in each file.
See the sample files with an extension of .TUN for
examples of tunes. Notice how I've subdivided the basic
tempo in some of the tunes into halves or thirds to
allow for simulated rests, quarter- and half-notes, etc.
NOTES: The way I write my tunes is to use the PIANOMAN program to
tap out the tune on the keyboard and write down the notes.
Then I transpose them into frequency values with SNR, a
multi-string search-and-replace program.
ALARM loads the alarms for the current date only. Use the -d
option to load alarms for a different date. If your computer
runs past midnight, the time will show correctly, but the
date will not be updated.
ALARM uses approximately 17K of RAM when resident.
ALARM is written in Turbo C++ (ANSI mode). No assembly
language was required.
MACHINE: The program will run on any PC-compatible computer using
MS-DOS 2.x or higher, with a minimum of 128K RAM.
DISCLAIMER: This program is distributed as shareware. Use it, copy
it, upload it, give it to your friends. No warranties,
either expressed or implied, are given by the author or
distributor of the program, and the user accepts all risk of
damage arising out of the application and use of the program.
BEG: If you find this program to be of value, contributions ($10
suggested) will be gratefully accepted. If you'd like the
source code to this program, please send $20 and a stamped
disk mailer. If you decide not to contribute, but suffer with
the guilt instead, at least upload this file to as many BBSes
as you can.
Send comments/bug reports/contributions to:
THOMAS A. LUNDIN
16267 Hudson Avenue
Lakeville, MN 55044
Daytime # (612) 588-7571
Thank you for using ALARM.
CATALOG: Other shareware programs I've written:
SBREAK.EXE: SuperBreaker (ver 3.1B)
What I call the world's best file splitting program -- splits
files by size, string match, line count; converts fixed-length
data files to CRLF-terminated text files; can split files to
floppy diskettes; splits binary or text files; files split to
size can also be split at the next nearest user-definable
string (e.g. CRLF); other features. You can use this program to
split a really big .ARC file onto multiple floppies and then
easily reconstruct it on a different computer.
SNR.EXE: Search-N-Replace (ver 4.0)
This is a multi-string, global file search-and-replace
program. It allows you to create up to 50 search-and-replace
equations of up to 200 characters each. You can search for
and replace all text and binary characters. A toggle feature
allows you to make the same search string output two
different replacement strings. All translations occur in a
single pass. This program is very handy for making fast,
easy, global changes to the contents of a disk file (or group
CCUR.EXE: The Counting Cursor (ver 3.1)
This program uses your cursor as a counting device, allowing
you to count the number of characters between two points on the
screen simply by moving the cursor. These width counts can be
written to a disk file for use in other programs. CCUR will
also record row-column screen coordinates if you choose. The
HEX and ASCII decimal values of the character under the cursor
are displayed, giving you a fast way to identify those control
and graphic characters by code value. An on-demand screen
blanker is built-in. A screen capture command is provided,
allowing you to capture the display to any disk file or DOS
device (yes, the printer, too). This is a handy program for you
database file hackers.
If you are interested in any of these programs, check your
local BBS or call me or drop me a note at my work address.