home *** CD-ROM | disk | FTP | other *** search
/ CP/M / CPM_CDROM.iso / jsage / znode3 / uploads / z3help43.lbr / DATSTP.HZP / DATSTP.HLP
Encoding:
Text File  |  1991-10-15  |  14.0 KB  |  286 lines

  1. ;
  2.                                  DATSTP.COM                                   
  3.  
  4.              Size (recs) CRC   Version    Author/Latest Issue      Disk
  5. DATSTP-P.3OM   5k (38)   206D  1.8        Gene Pizzetta 9/91       Z3COM5
  6. DATSTP-P.4OM   6k (48)   5A5C  1.8        Gene Pizzetta 9/91       Z3COM5
  7. DATSTP-P.COM   5k (38)   5506  1.8        Gene Pizzetta 9/91       Z3COM5
  8. DATSTP-U.3OM   6k (44)   E3F6  1.8        Gene Pizzetta 9/91       Z3COM5
  9. DATSTP-U.4OM   7k (56)   6562  1.8        Gene Pizzetta 9/91       Z3COM5
  10. DATSTP-U.COM   6k (44)   906D  1.8        Gene Pizzetta 9/91       Z3COM5
  11. DATSTP-Z.3OM   4k (30)   1FFC  1.8        Gene Pizzetta 9/91       Z3COM5
  12. DATSTP-Z.4OM   5k (38)   8AA9  1.8        Gene Pizzetta 9/91       Z3COM5
  13. DATSTP-Z.COM   4k (30)   B138  1.8        Gene Pizzetta 9/91       Z3COM5
  14.  
  15.   1- Syntax/Options  2- Date/Time Entry  3- Configuration/Assembly  4- Notes  
  16.  
  17.    DATSTP displays or changes the  create and modify date stamps  on  any file
  18. under ZSDOS, ZDDOS, Z3Plus, and vanilla DateStamper.
  19. :1
  20.  
  21.     Syntax   DATSTP {dir:}fn.ft {date} {time} {{/}options}
  22.  
  23.    Everything is optional but the filename.  If no  DU  or  DIR  is given, the
  24. current drive and  user is  assumed.   If no date,  time, or option  is given,
  25. current date  stamps for the  file  will  be  displayed.   If an option, date,
  26. and/or time are  given,  the  file's  date stamp  will be  updated.   DATSTP's
  27. default mode is to edit and update the create stamp.
  28.  
  29.    The usage screen displays "Version Z-n.n" for the  ZSDOS version,  "Version
  30. P-n.n" for the Z3Plus version, or "Version U-n.n" for the universal version.
  31.  Options - 1/2 
  32.  
  33.    A leading slash is always optional, but options must be the last parameters
  34. on the command line.
  35.  
  36.      M    Edit and write modify date stamp.  Without this option, 
  37.           the creation date stamp will be read into the edit 
  38.           buffer, edited, and then written back to the create 
  39.           stamp on disk.  With the M option, the modification 
  40.           date will be read into the edit buffer, edited, and 
  41.           then written back to the modify stamp on disk.  (But 
  42.           see option C below.)
  43.  
  44.      B    Write to both create and modify date stamps.  The 
  45.           edited date is ordinarily written back to the stamp 
  46.           from which it came.  With this option, the edited date 
  47.           is written to both the create and modify stamps on 
  48.           disk.  This option is required with P2DOS date stamping 
  49.           if both date stamps are blank.
  50.  Options - 2/2 
  51.  
  52.      C    Edit current system date instead of date stamp.  This 
  53.           option overrides create date and modify date editing, 
  54.           but does not affect which date stamp is modified.  For 
  55.           example, if the C and M options are used together, the 
  56.           current date will be moved into the edit buffer as the 
  57.           default date, but the edited stamp will still be 
  58.           written to the modify stamp on disk.
  59.  
  60.      Q    Toggle current setting of quiet mode.  DATSTP checks 
  61.           the ZCPR3 quiet flag when it is invoked and enters 
  62.           quiet mode if the quiet flag is on.  If the quiet flag 
  63.           is off, DATSWP then checks a configurable internal 
  64.           quiet flag to determine if it should default to quiet 
  65.           mode.  In either case, the Q option toggles off quiet 
  66.           mode, if it is on, and toggles it on, if it is off.
  67.  
  68.    On error, DATSTP sets the program error flag to standard error codes listed
  69. in Z34ERR.LIB.  If an error handler is installed, it will also be invoked.
  70. :2
  71.  Date/Time Entry - 1/5 
  72.  
  73.    DATSTP uses the  ZSLIB  SPARSDS  routine.   It  allows date entry in either
  74. European or American order (configurable):
  75.      mm/dd/yy hh:mm      [ American date/clock time ]
  76. or
  77.      dd.mm.yy hh:mm      [ European date/clock time ]
  78.  
  79.    Time must always be entered based on a 24-hour clock;  i.e.,  3:00  p.m. is
  80. entered as 15:00.   Relative time can also be entered,  for those who use that
  81. method:
  82.      mm/dd/yy +nnnn      [ American date/relative time ]
  83. or
  84.      dd.mm.yy +nnnn      [ European date/relative time ]
  85.  
  86.    Either periods or  slashes  may  be  used  as  date  delimiters with either
  87. American or European date order.
  88.  Date/Time Entry - 2/5  
  89.  
  90.    In the discussion below, American order is  assumed.   Those using European
  91. order will have to make the necessary mental changes.
  92.  
  93.    DATSTP is an EDITOR!   It is important to  understand  that concept because
  94. DATSTP does not actually replace the date and time, it edits it.   By default,
  95. the editing buffer is loaded with the file's current create date stamp and the
  96. command line date applied to it.  Any missing blank fields in the command line
  97. date and time string remain unchanged in the  buffer.   For  instance,  if the
  98. current create date is "3/15/89 21:35" and the command line date is
  99.      DATSTP TEST.DOC /25
  100. then  only  the  day  would  be  changed  ("3/25/89 21:35").    Including  two 
  101. delimiters
  102.      DATSTP TEST.DOC //25
  103. changes the year ("3/15/25 21:35").  If the command line entry was
  104.      DATSTP TEST.DOC 9:
  105. then only the hour would be changed ("3/15/89 9:35").   Leading delimiters are
  106. always required, but trailing delimiters are not necessary except for hours:
  107.      DATSTP TEST.DOC 9
  108. would change the month ("9/15/91 21:35"), instead of the hour.
  109.  Date/Time Entry - 3/5 
  110.  
  111. Leave no spaces within a date or time specification:
  112.      DATSTP TEST.DOC 9//90
  113. changes the month and year as expected ("9/15/90 21:35"), but
  114.      DATSTP TEST.DOC 9/ /90
  115. will yield only a usage message.
  116.  
  117.    With the  M  option,  the  modify  date  stamp will be loaded into the edit
  118. buffer instead of the create stamp.
  119.  
  120.    With the C option, the current system date and time will be loaded into the
  121. edit buffer instead of a date stamp.
  122.  
  123.    If the original date field is empty and you  do  not give valid entries for
  124. at least the day and month fields,  you will get an "invalid date/time" error.
  125. The problem is greater with P2DOS date stamping (see below).
  126.  Date/Time Entry - 4/5 
  127.  
  128.    Whichever date field you choose for editing,  the create stamp,  the modify
  129. stamp (M option), or the current date (C option), the B option  will cause the
  130. resulting date to be written to both  stamp  fields.  (With P2DOS stamping, if
  131. both the create date and  modify  date are  blank,  the B option is  required.
  132. Either date can be corrected singly later.)
  133.  
  134.    You can easily move  dates  between  fields.   For instance, if you want to
  135. move the create date stamp to the modify stamp, use:
  136.      DATSTP TEST.DOC b
  137. The create stamp will be loaded into  the  edit  buffer,  but,  since all date
  138. fields are empty, it will not be changed.   It will then  be  written  back to
  139. both stamp fields per the B option.  The modify stamp can also be moved to the
  140. create stamp field similarly:
  141.      DATSTP TEST.DOC mb
  142.  Date/Time Entry - 5/5 
  143.  
  144.    The C option works in like manner:
  145.      DATSTP TEST.DOC c
  146. will write the current date and time to the create stamp,
  147.      DATSTP TEST.DOC cm
  148. writes the current date and time to the modify stamp, and
  149.      DATSTP TEST.DOC cb
  150. writes it to both stamps.
  151.      
  152.    Although DATSTP will not accept ambiguous  filenames, a  group of files can
  153. be given the same date by using DATSTP with W.COM.  For example,
  154.      W DATSTP *.ASM 7/12/91 17:30
  155. will set the create date on all ASM files to 5:30 p.m., July 12, 1991.
  156. :3
  157.  Configuration 
  158.  
  159.    You may use ZCNFG and the  DATSTPnn.CFG file to  configure defaults to suit
  160. yourself.  ZCNFG will find the configuration file automatically as long as you
  161. don't change its name, even if you change the name of DATSTPnn.COM.
  162.  
  163.    As distributed,  DATSTP defaults to  verbose  operation.  You can set it to
  164. default to quiet mode, if you wish.  Civilian (12-hour) time is used in screen
  165. displays in the  distributed  version,  but you  can  configure  DATSTP to use
  166. military 24-hour time  (on the command line you must always use 24-hour time).
  167. You may also  configure  DATSTP  to  display and  accept from the command line
  168. dates in  European  order (dd.mm.yy).   As  distributed,  American  date order
  169. (mm/dd/yy) is used.
  170.  Assembly - 1/2 
  171.  
  172.    Assembling  and  linking  DATSTP is  relatively  easy  because  the  needed
  173. libraries are included in  request  statements and need  not  be passed to the
  174. linker on the command line.   Just make sure that ZSLIB (3.1 or higher), VLIB,
  175. Z3LIB, and SYSLIB are  available  where  the  linker can  find  them.  For the
  176. universal version you will also need DSLIB.   To re-assemble with SLR's Z80ASM
  177. and SLRNK+ or with Al Hawley's ZMAC and ZML, use the command lines below:
  178.           z80asm datstp/m
  179.           zmac datstp
  180. The assembler will request you to answer  "y"  or  "n" to two questions:  "For
  181. ZSDOS?" and "For Z3Plus?".  For the universal version answer "y" to both.
  182.      For type 1:
  183.           slrnkp datstp/n,/v,/a:100,/j,datstp,/e
  184.           zml datstp
  185.      For type 3:
  186.           slrnkp datstp.3om/n,/v,/a:8000,/j,datstp,/e
  187.           zml datstp /a8000
  188.      For type 4:
  189.           slrnkp datstp/k,/v,nulprl,datstp,/e;
  190.                myload datstp.4om=datstp.prl,typ4ldr.hex
  191.           zml datstp.4om=datstp,typ4ldr/p
  192.  Assembly - 2/2 
  193.  
  194.    ZML generally produces the minimum-size type-4 version.  Use it if you have
  195. it!   Although it is not  clearly  explained  in  the  ZML  documentation, the
  196. standard type-4 header file (TYP4LDR.Z80) must  be  assembled into a  COM file
  197. and then renamed to TYP4LDR.HDR before it can  be linked properly to  a type-4
  198. program.  SLRNK+, on the other hand, requires a file consisting of exactly 256
  199. bytes of nulls (NULPRL.REL, above).
  200. :4
  201.  DATSTP Notes - 1/5 
  202.  
  203.    a. The distribution library contains three types of  assembly.   Those with
  204.       filetype 3OM are type-3 programs that load at 8000h and require ZCPR 3.3
  205.       or higher.  Those with filetype 4OM are type-4 programs and require ZCPR
  206.       3.4 or higher.  The COM files load at 100h, the normal address, and will
  207.       work on any Z-System.
  208.  
  209.       The  DATSTPZ  versions run only under ZSDOS and ZDDOS,  using date stamp
  210.       routines from ZSLIB.   They are the smallest versions  --  types 1 and 3
  211.       are under 4 kilobytes.
  212.  
  213.       The DATSTPP versions run only under Z3Plus and should work on most CP/M-
  214.       Plus machines.   They are known not to work  reliably on  GCR CP/M disks
  215.       for the Commodore 128  (although there seems to be no problem when using
  216.       MFM disks on that machine).
  217.  
  218.       The DATSTPU  versions  are  universal,  for ZSDOS,  ZDDOS,  Z3Plus,  and
  219.       vanilla DateStamper.   In  fact,  the  universal  versions will read and
  220.       write stamps  on  any disk containing a !!!TIME&.DAT file, even if Date-
  221.       Stamper is not running.   These are the largest versions,  however,  and
  222.       are probably not worth the disk space on ZSDOS and Z3Plus machines.
  223.  DATSTP Notes - 2/5 
  224.  
  225.    b. Vs 1.8 updates (10/9/91, Gene Pizzetta):
  226.       - Some parsing bugs were fixed:  An error in the GetOpt routine kept the
  227.         "/option" from working as the second parameter.   Some bugs were found
  228.         in the ZSLIB parsers which necessitated a new linkage anyway.
  229.       - A few minor code tweeks.
  230.  
  231.    c. Vs 1.7 updates (8/29/91, Gene Pizzetta):
  232.       - New parser allows very flexible date and time entry.  
  233.       - Added C option to use current system time as stamp editing source. 
  234.       - Changed most messages to in-line.  
  235.       - DateStamper date stamp reading  and  writing  can be done as long as a
  236.         !!!TIME&.DAT file exists on the disk; DateStamper need not be running.
  237.       - Uses several new ZSLIB 3.1 routines.  
  238.  DATSTP Notes - 3/5 
  239.  
  240.    c. Vs 1.6 updates (6/1/91, Bruce Morgen):  /not released/
  241.       - Restored vanilla  DateStamper support through use of lower level DSLIB
  242.         routines in the universal version.  
  243.       - Reduced Type 4 COM file size of that version to 48 records through use
  244.         of ZML linker and a small change (the CPM3 scratch buffer is no longer
  245.         a defined space in  DSEG.  At  runtime,  the  UseCp3  routine  selects
  246.         Entry-1024 if DATSTP.COM is a Type 4, or ($memry) if it's a Type 3.
  247.       - Some trival code pruning here and  there,  saved  maybe  a  half-dozen
  248.         bytes to help make room for the new stuff.
  249.  
  250.    d. Vs 1.5 updates (5/27/91, Gene Pizzetta):
  251.      - Compensated (hopefully) for idiosyncracy of  ZSDOS's  P2DOS datestamper
  252.        which does not always return zeros if no date stamp is found.  
  253.      - Replaced separate  ZSLIB date modules with combined module that outputs
  254.        both American and European date formats.  
  255.      - Replaced ZSLIB civilian time module with a new module that outputs "am"
  256.        and "pm", instead of "p" or nothing.  
  257.      - Converted to Zilog mnemonics and shortened some code.
  258.  DATSTP Notes - 4/5 
  259.  
  260.    e. Vs 1.4 updates (10/10/90, Gene Pizzetta):  /not released/
  261.      - Added date stamp writing under Z3Plus.  
  262.      - Dropped support of DateStamper under ZRDOS, because of conflict between
  263.        ZSLIB and DSLIB.  
  264.      - Added Type-4 version.
  265.  
  266.    f. Vs 1.3 updates (10/8/90, Gene Pizzetta):
  267.       - Optimizations to cut code size considerably.  
  268.       - Equates to create a universal version using  DSLIB date stamp routines
  269.         for operation under ZRDOS DateStamper, &  under Z3PLUS (display only).
  270.         ZSDOS version is considerably smaller, however.
  271.       - Corrected lingering bug in the PARSDS module that gave an error when a
  272.         colon was given that was not followed by a minute  specification,  but
  273.         WAS followed by another command line parameter.
  274.  
  275.    g. Vs 1.2A updates (9/12/90, Howard Goldstein):
  276.       - Optimized code.  No functional changes.
  277.  
  278.    h. Vs 1.2 updates (9/8/90, Gene Pizzetta):
  279.       - Corrected failure to initialize option B flag.
  280.  DATSTP Notes - 5/5 
  281.  
  282.    i. Vs 1.1 updates (9/7/90, Gene Pizzetta):
  283.       - Improved display, especially for reverse video highlighting. 
  284.       - Corrected small bug in usage message, and made  a few other minor code
  285.         changes.
  286.