Following changes have been made to DTC as of *19860503143 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-, 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) The program does >>> NOT <<< check that the user is on a VT100 or equivalent.