home *** CD-ROM | disk | FTP | other *** search
/ ftp.barnyard.co.uk / 2015.02.ftp.barnyard.co.uk.tar / ftp.barnyard.co.uk / cpm / walnut-creek-CDROM / BEEHIVE / ZSUS / ZSUS009.LBR / PRTASM19.LBR / PRTASM19.DZC / PRTASM19.DOC
Text File  |  1990-07-18  |  7KB  |  163 lines

  1.  
  2.                              PRTASM
  3.                            Version 1.9
  4.  
  5.                           Gene Pizzetta
  6.                           July 18, 1990
  7.  
  8.  
  9. PRTASM is a ZCPR3 utility designed to print assembly source code 
  10. and other program listings on the CP/M LST device.  It is also 
  11. handy for quick printing of documentation.  PRTASM puts the 
  12. filename and page number in the upper right corner of each page.  
  13. The file stamp modification date and time, if available, is 
  14. printed to the left of the filename.  If no modification date is 
  15. available, PRTASM tries for a creation date.  If neither date 
  16. stamp is available, the current date and time are used instead.  
  17. If no clock is available, no date and time are printed at all.  
  18. As distributed, it is configured for Epson printers, but the 
  19. configuration can be easily changed.
  20.  
  21. USAGE:
  22.  
  23.      PRTASM {dir:}<fn.ft> {{dir:}<fn.ft} {...}
  24.  
  25. At least one input filename is required.  Names in the file list 
  26. may be separated by any number of spaces and commas.  Ambiguous 
  27. filenames are not accepted.  If no DU or DIR specification is 
  28. given, the current drive/user is assumed.
  29.  
  30. Once printing has begun, pressing any key will abort printing of 
  31. the current file.  If the key is ^C, PRTASM will return to the 
  32. operating system; otherwise, it will skip to the next file.
  33.  
  34. If a file cannot be found, or if an ambiguous file spec is 
  35. encountered, PRTASM will display an error message and then 
  36. continue with the next file in the file list.  It will, however, 
  37. set the program error flag on exit.
  38.  
  39. The number of lines on a printed page and whether the printer can 
  40. handle formfeeds is taken from the environment descriptor.  Make 
  41. sure these are set properly.  It is particularly desirable that 
  42. PRTASM use formfeeds so that a line or two that overflows the 
  43. margin will not get the header out of sync.
  44.  
  45. The distributed version is configured for Epson printers and 
  46. compatibles, but is easily modified.  PRTASM expects, however, 
  47. that your printer is capable of printing a 96-character line in 
  48. elite pitch.
  49.  
  50. MODIFICATIONS:  In the first sector of the COM file, immediately 
  51. following the label MTIME, is a byte that determines the format 
  52. of the time string printed in the header.  If the byte is zero, 
  53. 12-hour "civilian" time format ( 3:00p) is used.  If the byte is 
  54. non-zero, 24-hour "military" time format (15:00) is used.
  55.  
  56. Also in the first sector are labels for the printer codes, which 
  57. can be changed to work with any printer.  The first byte after 
  58. each label is the number of characters in the string, followed 
  59. immediately by the string itself, which may be up to six bytes.
  60.  
  61.      ELISTR    The escape code to put the printer in elite
  62.                pitch (12 characters per inch).
  63.  
  64.      MARSTR    The escape code to set the printer's left margin
  65.                to column 8.
  66.  
  67.      RSTSTR    The escape code to reset the printer (this
  68.                program cleans up when it's through).
  69.  
  70.      BOLDON    The escape code to put the printer into boldface,
  71.                emphasized, or double-strike for printing the
  72.                header.
  73.  
  74.      BOLDOF    The escape code to cancel the printer's boldface
  75.                mode.
  76.  
  77. EXPANDING TABS:  Tabs are not expanded by PRTASM.  I have assumed 
  78. that most modern printers are IBM-compatible and thus handle tabs 
  79. correctly.  If you printer needs tabs sent as the corresponding 
  80. number of spaces, run your file through a filter program before 
  81. printing it with PRTASM.  If you would prefer a future version to 
  82. expand tabs, please let me know.
  83.  
  84.           Gene Pizzetta
  85.           481 Revere St.
  86.           Revere, MA 02151
  87.  
  88.           Voice:  (617) 284-0891
  89.           Newton Centre Z-Node:  (617) 965-7259
  90.           GEnie:  E.PIZZETTA
  91.  
  92. HISTORY:
  93.  
  94. Version 1.9 -- July 18, 1990 -- Gene Pizzetta
  95.      Now prints source of date and time: "Modified", "Created",
  96.      or just "Printed" if no file stamp is available.  A few bugs
  97.      have also been squashed, including a rather serious failure
  98.      to set the correct DMA address if the military time flag was
  99.      false, discovered by Howard Goldstein.  Howard also found
  100.      that if a a key was pressed while the header was being sent
  101.      to the printer, PRTASM would not detect it.
  102.  
  103. Version 1.8 -- July 11, 1990 -- Gene Pizzetta
  104.      I found that I was frequently calling PRTASM several times
  105.      on a command line to print several files, so I've modified
  106.      it to accept a list of files.  In addition, the file date is
  107.      usually more important than the current date, so now the
  108.      file date is used in the header, if it has a modification
  109.      (first choice) or create stamp; otherwise, the current date
  110.      is used.  J. I. Mortensen made some useful modifications, so
  111.      I added them to this version, which I have been working on
  112.      for a while.  But we're back to Intel mnemonics.  If any
  113.      files in the file list are not found, PRTASM skips to the
  114.      next file after printing an error message.  Printing can be
  115.      aborted at any time with ^C.  Any other key will abort the
  116.      file currently being printed, and move to the next in the
  117.      list.  A two-byte page counter is now used so it will number
  118.      past 255.  Formfeeds in the file are trapped and replaced
  119.      with a single carriage return/linefeed.  A printer capable
  120.      of 96 columns in elite pitch is assumed.  Page length and
  121.      formfeed ability are obtained from the environment.  A
  122.      configuration byte allows selection of civil or military
  123.      time.  Patching for non-Epson escape codes no longer
  124.      requires re-assembly.  Added a type-3 header.  Program error
  125.      flag is set if any file in the file list cannot be found or
  126.      if a file specification is ambiguous.
  127.  
  128. Version 1.7 -- June 16, 1990 -- J. I. Mortensen
  129.      Translated to Zilog mnemonics.  Time of day added to header.
  130.      ZSLIB routines added for printing time and date.  Added LST
  131.      status check and ZCPR3 check.  Masks high bits for WordStar
  132.      files.
  133.  
  134. Version 1.6 -- August 7, 1989 -- Gene Pizzetta
  135.      Minor change in header format.
  136.  
  137. Version 1.5 -- July 26, 1989 -- Gene Pizzetta
  138.      Now prints date in header line if a real time clock is
  139.      working under DateStamper or ZDOS.  Must be linked using
  140.      the version 4 libraries.
  141.  
  142. Version 1.4 -- June 10, 1989 -- Gene Pizzetta
  143.      Slightly changed screen display.
  144.  
  145. Version 1.3 -- March 11, 1989 -- Gene Pizzetta
  146.      Rewritten again to add DU filespec and ZCPR3 TCAP support,
  147.      and to incorporate SYSLIB routines.  It now preserves the CP
  148.      and no longer warm boots.  PRTASM is now ZCPR3 specific.
  149.  
  150. Version 1.2 -- October 13, 1988 -- Gene Pizzetta
  151.      Quickly rewritten to eliminate CP/M Plus dependencies.  (I
  152.      got an SB180.)  Also added printer clean-up on user abort.
  153.      This version still sends a failure code to the BDOS on
  154.      error, to support CP/M Plus conditional submits.  CP/M 2.2
  155.      doesn't recognize it, but it does no harm.
  156.  
  157. Version 1.1 -- September 20, 1987 -- Gene Pizzetta
  158.      Added page numbering and boldface filename in header.
  159.  
  160. Version 1.0 -- September 17, 1987 -- Gene Pizzetta
  161.      First release configured for Epson and compatible printers.
  162.      For CP/M Plus only.
  163.