/ADD

		* *   A D D   * *

The ADD command allows you to add an event to the reminder database.
Its form is

	ADD <event-name>

The event name must be of the proper form (described in the general help
section).  If it is the same name as another event, you will be told of
this and you'll have to try again.

Once you have issued the ADD command, you are placed into the "define event"
mode of the MINDER program.  This mode is indicated by the fact that you
are prompted with "MIND-DEF> ".  Here you give commands which define the
individual aspects of your event.  Finish by typing a return, or the "DONE"
command.

/EXIT

		* *   E X I T   * *

Exits the MINDER program, storing any changes that you have made to the
event database.

/HELP

		* *   H E L P   * *

That's what you are doing now.

/LIST

		* *   L I S T   * *

The LIST command shows you a list of events which concern you.  Each
event is shown as:

d  event-name  event-time    title

	d	is a character: "<" if the event is FROM you and FOR
		a different user, or ">" if the event is for you.

/MODIFY

		* *   M O D I F Y   * *

This command allows you to modify an event description which you have
created.  Its usage is

	MINDER> Modify event-name

where event-name is the name of an existing event, or a unique abbreviation
there of.  You are placed in the event definition mode, signified by the
prompt "MIND-DEF>", wherein you may type commands which alter the
description.

/QUIT

		* *   Q U I T   * *

This command exits the MINDER program without saving any changes to the
event database which may have been made during the present invocation of
MINDER.

/REMOVE

		* *   R E M O V E   * *

Removes an event from the event database.  The format of this command
is

	MINDER> Remove event-name

where event-name is the name of an existing event, or a unique abbreviation
of one.  The event is deleted (this deletion is reflected in the permanent
event database when you use the EXIT command).

/REPORT

		* *   R E P O R T   * *

This command enters "report" mode, which reports on and takes action for
events which have become active.  All events which do not require an
acknowledgement from you are presented, followed by each event which
does require an acknowledgement.  For each of these latter events, you
are required to give a confirmation that the event was reported to you.
You are prompted with "MIND-DISP> ", which indicates that you should
enter a disposition for the event.  You can choose from:

	ACK		Signals that you have recieved your reminder, and
			that the event should be disposed of in the manner
			associate with it.

	NEXT		Goes to the next event, without altering the one
			presented to you.

	return		Carriage return is the same as "NEXT".

/SHOW

		* *   S H O W   * *

Shows the description of an event.  The format of this command is:

	MINDER> Show event-name

where event-name is the name of an existing event, or any unique abbreviation
of one.  The command results in the description of the event being shown
to you.

/*FULL*

		* *   M I N D E R   * *

MINDER, copyright 1985 by Mark E. Mallett, is a program which keeps track
of timed events for you on your CP/M-80 (trademark Digital Research) system.
General invocation of this program is:

	A> minder [-u user] [-d yymmdd] [-r]

Individual options as indicated by the [...] notation are (of course)
optional and are:

	-u user		Specifies that you are running the program on
			behalf of a person named "user".  The user name
			must be a string of characters not containing
			spaces (i.e., a single token).  The MINDER program
			keeps track of events by and for distinct users,
			so this is important.

	-d yymmdd	On CP/M systems whose version number is less than
			3.0, this option tells MINDER what date it is.  On
			CP/M systems 3.0 or greater, this option is not
			necessary (and, in fact, is ignored) because MINDER
			gets the current date from the system.

	-r		Runs MINDER in "report" mode, wherein you are told
			of active events, after which the program exits.
			Get help for the REPORT command ("HELP REPORT")
			for an explanation of this mode.


When you run MINDER in interactive mode (not report mode; that is, you
do not specify "-r" on the command line), the program will prompt you
for a command, you shall type a command, and the program will act on
that command.  This continues until you EXIT or QUIT the program or
suffer some catastrophe.  There are some important things to remember
about the way you give commands to this program:

	- MINDER will always prompt you for your command.  The main
	  prompt is "MINDER> "; other prompts are similar.

	- When typing a command line, use the DELETE or BACKSPACE key
	  to erase the last character typed; use control-R to retype the
	  line; use control-W to erase the last word on the line.

	- You can type a question mark at ANY time to find out what your
	  options are.  Do not type a carriage return.  For example, to
	  find out what the "HELP" command expects you to type, try:

		MINDER> HELP ?

	  This will present you with a list of the things that you can type.
	  Notice also that if you type a question mark in the middle of
	  a word, MINDER will tell you which words you can type that begin
	  with what you have already typed.  Try:

		MINDER> R?

	- If you have typed enough of a command word (or argument) for
	  MINDER to recognize, you can use the ESCAPE key to cause MINDER
	  to fill out the rest of that part of the command for you.  This
	  gives you 2 benefits:  1)  it will show you whether your command
	  as typed will be recognized (MINDER will beep otherwise), and
	  2)  you will be given quide words in parentheses, which aren't
	  otherwise shown.

Each event has a number of characteristics which you set when you create
the description of the event (with the ADD command) and which you can
change at any time with the MODIFY command.  Once the events have been
created (described), all you have to do is run MINDER occasionally in
"report" mode by giving the "-r" option on the command line.

Different sorts of events can be described to MINDER by giving them
certain attributes.  You can have periodic events; for instance, you
can have a reminder every Wednesday that it is time to take a bath.
Or you can be reminded of a birthday once a year.  You can have
reminders which go away when you have seen them.  And more... following
is a description of the attributes which can be assigned to an event.

	event-name		Events are known by name, and each event
			name must be different from every other event name
			which MINDER knows about.  The name begins with an
			alphabetic character and continues with alphabetic
			characters, digits, hyphens, or underscores.

	event-time		This is the time at which the event
			occurs (not necessarily the time at which you are
			to be told of the event).  The present incarnation
			of MINDER pays attention to the date and the time,
			but only lets you specify the date.  It is possible
			that future versions of MINDER will incorporate
			features relating to time of day.  But not yet.

	message			Each event has a message associated with it.
			This is a single line of text which is used to tell
			the user what the event is all about.

	advance-notice		You may specify that notice of an event
			be given in advance of the event time.  This is
			specified as a number of days.

	from			This is who the event is from, and is always
			the name of the user who created the event with the
			ADD command.  Remember that the user name is given
			with the "-u" option on the command line.

	for			This is who a reminder of the event should
			be given to.

	acknowledge		An event may have the "acknowledge" attribute
			turned on or off.  If it is on, the user must
			explicitly acknowledge receipt of the reminder of
			an event (MINDER will ask for acknowledgement after
			presenting the reminder).  If it is off, the event
			is disposed of when its event time is reached.

	disposition		This specifies how the event is disposed of
			when its reminder has been presented (and perhaps
			acknowledged).  Dispositions are described below.


Setting event dispositions is the key to creative reminders.  Events
can have any of the following dispositions:

	delete		The event is deleted when its event time is reached
			(and the reminder shown).

	keep		The event is not deleted; the user must run MINDER
			in interactive mode and use the REMOVE command to
			get rid of it.

	reschedule	The event is rescheduled after it is acknowledged
			or after its event time is reached.  The date at
			which it is rescheduled is expressed as a number
			of days, weeks, months, or years from the
			event time.  Note that for a number of months or
			years, the original day of month is kept if
			possible.  This means that a monthly reminder
			starting at Jan 31 will be rescheduled at
			Feb 28 (or 29), Mar 31, Apr 30, etc.


The commands which you may type at the MINDER> prompt are as follows:

	ADD		Add an event (create a new one).
	EXIT		Exit the program.
	HELP		Get help.
	LIST		List all events concerning you.
	MODIFY		Change an event which you created earlier.
	QUIT		Exit the program without saving changes.
	REMOVE		Get rid of an event.
	REPORT		Give reports on active events.
	SHOW		Show the definition of an event.

For help on any of these commands, type its name to the HELP command.  For
example:

	MINDER> HELP ADD

As a final note, please be aware of the files which MINDER uses to store
its information (don't delete these accidentally).

	MINDER.DAT, on user number 0, is the event database.

	MINDER.HLP is the help database.  This should be a system file
		on user 0, but can be on whatever user number you are
		set to when you run MINDER.

/DEF-ACKNOWLEDGE

		* *   A C K N O W L E D G E   * *

The use of this definition command causes the "acknowledgement required"
attribute to be toggled (changed to what it isn't) for the event which you
are defining or modifying.  When the user is presented with the notice of
an event with this attribute on, that user must explicitly type an ack-
nowledgement to the MINDER program before the event is disposed of.

/DEF-ADVANCE-NOTICE

		* *   A D V A N C E - N O T I C E   * *

This definition command sets the number of days of advance notice to give
for this event.  This is useful for birthdays, bills, etc., where some
action should be take well before the event occurs.  The format of this
command is:

	MIND-DEF> Advance-notice n

where n is the number of days in advance of the event date to make the
event active.

/DEF-AT

		* *   A T   * *

This definition command specifies the date at which an event becomes
current (it specifies the event time).  This command is used:

	MIND-DEF> At mmm dd, yyyy

This is the only form of date that is acceptable.  You must type the month
name (or abbreviation) and the real year.  For instance:

	MIND-DEF> At Aug 14, 1985

/DEF-DISPOSITION

		* *   D I S P O S I T I O N   * *

This specifies how the event is disposed of when it has served its
purpose.  Disposition may be one of "DELETE", "KEEP", or "RESCHEDULE".
For the RESCHEDULE disposition, a number of time units and the unit must
be specifed, units being "DAYS", "WEEKS", "MONTHS", and "YEARS".
Examples:

	MIND-DEF> Disposition delete
	MIND-DEF> Disp reschedule 1 week

Note that if you use recognition (the escape key) the interaction is
clearer, viz:

	MIND-DEF> Disposition (is) reschedule (in) 1 (units) year

/DEF-DONE

		* *   D O N E   * *

This command finishes the definition of the event and returns you to the
main MINDER level.  Note that if you have not specified a message or an
event time, you are told of this and not let out of definition mode.

/DEF-FOR

		* *   F O R   * *

This definition command lets you specify the user that the event is
for.  Its format is

	MIND-DEF> For <user-name>

where user-name is the name of the destination user, as they specify it
in the "-u" option when they run MINDER.

/DEF-MESSAGE

		* *   M E S S A G E   * *

This definition command lets you select a message to be delivered as
a reminder for this event.  The message is a single line of text.  The
use of this command is:

	MIND-DEF> Message <message-text>

/DEF-NAME

		* *   N A M E   * *

This definition command lets you specify a new event name.  You may not
choose a name which is the same as one which already exists.  The format
of this command is:

	MIND-DEF> Name <event-name>

/DEF-SHOW

		* *   S H O W   * *

This definition command shows you the description of the event which
you are defining or modifying.

/DEF-*FULL*

		* *   D E F I N I T I O N   M O D E   * *


Definition mode allows you to define or change the definition of an event.
You are prompted with "MIND-DEF> " and may type any of the following
commands:

	ACKNOWLEDGE		Toggle the acknowledgement-required flag.
	ADVANCE-NOTICE		Set advance notice time.
	AT			Set the event time
	DISPOSITION		Define the way the event is disposed of.
	DONE			Leave definition mode.
	FOR			Indicate who the event is for.
	HELP			Get help.
	MESSAGE			Provide a message for the event.
	NAME			Change the event name.
	SHOW			Show the current definition.

You may also type a carriage return, which is the same as typing "DONE".
For more information about any of these commands, ask for help on it
(for example, HELP DISPOSITION).
