Following changes have been made to DTC as of *19870910143:

  1) Fixed bugs for leap-year and January-February transitions,
     and day-of-week for dates before January 1, 1982,
     see (11).
  2) Month and year displays speeded up by formatting whole week
     at a time, rather than 1 terminal write for each day;
     likewise, unflagged days within a month are not re-addressed.
  3) Months are now uniformly displayed centered, in mixed
     upper/lower-case; days are displayed right justified.
  4) Day-of-week and full date are shown for daily appointment
     display; current half-hour is highlighted in reverse video.
     Today's date is highlighted in reverse-video for week, month
     and year displays (also blinks for year), and current-day
     (i.e., the day corresponding to D command) is underlined for
     week and month displays.  Multiple entries for same time
     are now transferred to an open slot on the daily appointment
     display (earlier in the day if available), with the direction
     of the true location indicated by "v" or "^" instead of "-";
     if ALL slots for the day are filled, a BLOT (, ^Z) will be
     displayed in the true location and the previous entry will be
     OVERWRITTEN.
  5) Week display now uses VT100 graphics mode to draw true boxes,
     rather than approximations with | and =; month display for
     current month uses double-width characters.
  6) + and - commands now display the item they have moved to.
  7) Purge command has been extended to support Unschedule
     (cancel) and eXchange (reschedule) commands.  If second time
     range is not specified for X, re-scheduled appointments will
     be at the same time.
  8) Date/time string parsing has been thoroughly overhauled so
     that any reasonable character string will be interpreted
     reasonably, thus '1-feb' is this year, D 512 is same as
     12-MAY-<this year>, 1/1/1 is January 1, xx01 (out-of-range
     values are now automatically limited).  European-style dates
     are now accepted, thus 25-DEC, 25-XII and 25-12 all designate
     Christmas; lower- and upper-case alphabetic characters may be
     used interchangeably.  Minimum-ambiguity algorithm is used
     for month names, i.e., F is enough for February, JA required
     for January, MAR for March, etc.  '=' means same date, '*'
     means 8:00>5:00, and +/- may be used for date deltas.
     Examples:
  	X * +Y W
     reschedules everything for the current day to same day next
     year, and displays resulting week's summary, while
  	X * +52W D
     reschedules everything for the current day to same day of
     week next year, and shows resulting day's schedule, and
  	X 9>12 1>4
     reschedules morning appointments to the afternoon (no
     redisplay).
  9) Default appointments file is SYS$LOGIN:DTC.DAT (standard
     login directory, preferred over logical name ME:), F command
     with no filename restores the default.  Format of records in
     this file HAS CHANGED to
  *	yyyymmddhhh Text  [last h is 0 or 3 for hour or half-hour]
     but old format files will still be accepted; re-formatting
     can be done by using P/U/X commands, which will also delete
     trailing blanks and NULs from files created before 4/01/85.
     ESC sequences may be edited into "Text" for special effects
     in the D display.  Files are now opened with LIST
     carriage-control (rather than FORTRAN carriage-control),
     so that VMS TYPE or PRINT commands will display them
     correctly.  The VMS command
  	SORT filename ;    (";" separated from filename by space)
     will re-order the file if it has become unordered due to
     rescheduling or addition of appointments out of sequence.
     Files are opened for APPEND only when appointments are added,
     otherwise they are opened READONLY, so that group appointment
     files may be referenced by indirection feature (no error is
     indicated if appointments cannot be added due to lack of
     WRITE access to a file).
 10) An unadvertised feature has been retained:  if a time string
     is entered for a command that defaults to D, without a
     corresponding appointment string, the cursor will be placed
     at the appropriate point on the (empty) screen, displaying
     a BLOT so that the user may type his appointment directly.  
     Examples
     	D 12:	or	EV	or	10>11:30
     (the last will be replicated 3 times).  If a valid time entry
     with no appointment string is edited into a file, it will
     also display as a BLOT.
 11) Full Gregorian leap-year calculation algorithm has been
     implemented, and displays for all dates from October 15, 1582
     through December 31, 9999 (CE) will be correct.
 12) Default time-range for adding appointments is 8>8:30
     (formerly entire day)
 13) The terminal initialization sequence has been changed to
     remove "ENTER NUMERIC KEYPAD" ("EXIT APPLICATION KEYPAD")
     sequence.
 14) Terminal reads are performed via LIB$GET_INPUT (rather than
     FORTRAN READ), thus previous-line recall for line-editing
     will now be on the same line as the prompt; screen-clear
     prompt for Y will be executed as a command if non-null.
|15) Fixed hhh part of time for entries made by S and G commands.

The program does >>> NOT <<< check that the user is on a VT100 or
equivalent.