home *** CD-ROM | disk | FTP | other *** search
/ Programmer 7500 / MAX_PROGRAMMERS.iso / PASCAL / BAKLPT.ZIP / BAKLPT.DOC next >
Encoding:
Text File  |  1988-08-03  |  3.3 KB  |  84 lines

  1. ********************************************************
  2. **                                                    **
  3. **       Preliminary Documentation for BakLPT         **
  4. ** A Turbo Pascal 4 unit to allow Background printing **
  5. **      Copyright (c) 1988, Richard S. Sadowsky       **
  6. **                                                    **
  7. ********************************************************
  8.  
  9. Version: Alpha test version .6
  10. Date   : 8/3/88
  11.  
  12. BakLPT is a Turbo Pascal 4 unit that allows you to buffer the output to the
  13. Lst device so it can be printed in the background while your application
  14. continues to to process other things.  The buffer may be up to 65521
  15. bytes large, and it is declared on the heap.  The BakLPT unit maintains
  16. source compatability with the Turbo Pascal Printer unit, and the public
  17. domain LPT Printer replacemnent unit.
  18.  
  19. Add BakLPT to your USES statement.  Be sure to remove Printer or LPT if
  20. they are included in the USES statement.  This is the simplest way to
  21. add background printing.  By default, a 65521 byte print queue will be set
  22. up on the heap, and all output to the Lst device is automatically placed
  23. in it.  At certain intervals, a "background" routine in BakLPT will send
  24. characters from the queue out to the printer while allowing foreground
  25. processing to continue (see Technical Notes below for an explanation of this
  26. "Background" processing).
  27.  
  28. While there are many advanced features to BakLPT, here are the default
  29. conditions:
  30.  
  31.   FilterPrtSc  = FALSE - While Queue is active, PrtSc's will be ignored.
  32.  
  33.   QueueEnabled = TRUE  - By default background printing is on.
  34.  
  35.   QueueSize    = 65521 - Biggest possible print queue (Current Limitations).
  36.  
  37.   TICKS_TO_WAIT
  38.                = 18    - approximately 1 second intervals
  39.  
  40.   CHARS_PER    = 80    - send out 80 chars per interval
  41.  
  42.   LPT Number   = LPT1  - by default, BakLPT assumes LPT1
  43.  
  44.   UserExitFunc = NONE  - BakLPT will wait until buffer empties to exit.
  45.                          See sample program TBakLPT for a more useful
  46.                          UserExitFunc.
  47.  
  48.   UserErrorFunc
  49.                = NONE  - No int 17h error handler installed.
  50.  
  51.  
  52. Each of these will be explained in detail (someday).
  53.  
  54. Current Limitations:
  55.  
  56.   Maximum Queue Buffer size is 65521.  This holds 1092 lines of 60
  57.   character lines, which is about 16 1/2 pages (at 66 lines per page).
  58.   These averages are VERY conservative and you will get more lines and
  59.   pages in most real world conditions since the average number of characters
  60.   per line is well under the 60 used above.
  61.  
  62.   Do not attempt to use AssignQue on any text file other than the Lst
  63.   variable declared in BakLPT.  Only one background device is currently
  64.   supported.
  65.  
  66.   The UserErrorFunc is called from a hardware ISR, so user beware (will
  67.   elaborate later).
  68.  
  69.   Requires the TPInt unit of Turbo Professional 4 (version 4.03 used here).
  70.  
  71.   Turbo Professional 4 is a registered trademark of Sunny Hill Software,
  72.   used under license to TurboPower Software.
  73.  
  74.   Turbo Pascal, Turbo Pascal Database Toolbox, Turbo Pascal Editor Toolbox,
  75.   and Sidekick are trademarks of Borland International.
  76.  
  77.  
  78. Technical Notes:
  79.   Just guess for now.
  80.  
  81. For now, you're on your own from here.  See sample program and source for
  82. more info, and stay tuned for new docs Real_Soon_Now.
  83.  
  84.