home *** CD-ROM | disk | FTP | other *** search
/ No Fragments Archive 10: Diskmags / nf_archive_10.iso / MAGS / AT_WORLD / ATRIW6B.MSA / IPRN_README.TXT < prev    next >
Encoding:
Text File  |  1995-06-05  |  8.3 KB  |  211 lines

  1. iPRN  (C) Peter Missel 1994, 1995
  2.  
  3. "Yet another printout accelerator..."
  4.  
  5. Yes. Another one. But this one features printer state tracking.
  6.  
  7. "What does that mean?"
  8.  
  9. Well, in addition to what you expect from a printout accelerator,
  10. accelerating printout, iPRN knows whether the printer is just busy printing
  11. or is in an error condition (offline, power off, no paper, not connected...).
  12. Thus the system always knows in advance whether or not the printer is 
  13. ready to receive data.
  14. In a nutshell, the annoying 40 second delay after giving a "Print" command
  15. without having the printer ready is GONE. The error message appears instantly.
  16.  
  17.  
  18. iPRN is shareware. Versions up to 0.99 are demo versions and may freely
  19. be distributed.
  20.  
  21. Restrictions in the demo versions:
  22. - The state tracking only works once per session.
  23.   After the printer has once been offline and gone back online, the
  24.   state tracking deactivates. The system continues normally, only the
  25.   "printer memorial delay" is back.
  26. - No control panel module:
  27.   - no timeout configuration
  28.   - no state tracking enable/disable (it disables by itself anyway)
  29.   - no deskjet activation
  30.  
  31. Registered versions 1.00 and up cost DM 25,- in Germany and $20 elsewhere.
  32.  
  33.  
  34. Registration
  35. ============
  36. Europe: Send DM 25 / US$20 to this bank account:
  37.  
  38. Peter Missel, Stadtsparkasse Augsburg, BLZ 72050000, Kto. 1301522.
  39. In the "usage" field, write "iPRN Firstname Lastname"
  40.  
  41. UK: Make a Cheque or Postal Order for 13 Pounds Sterling, payable to 
  42. Denesh Bhabuta, and send to
  43.  
  44. CyberSTrider,
  45. 203 Parr Lane,
  46. Unsworth,
  47. Bury,
  48. Lancashire,
  49. BL9 8JW
  50.  
  51. Please do not forget to include your name and address.
  52.  
  53. Denesh may be contacted via E-mail, on:
  54. dbhabuta@cix.compulink.co.uk
  55. danny@micros.hensa.ac.uk
  56.  
  57. US: <dunno yet>
  58.  
  59. For proper identification, send a postcard to:
  60. Peter Missel, Greiffstraße 11, 86157 Augsburg, Germany.
  61.  
  62. Or send eMail to Peter_Missel@ll.maus.de.
  63.  
  64.  
  65. Benchmarks (in characters per second)
  66. =====================================
  67.  
  68. System                           without  with iPRN 
  69. ---------------------------------------------------
  70. ST, 8 MHz, TOS 2.06               1800    13531
  71. ST, 16 MHz, TOS 1.04              3200    >17200
  72. Falcon030, TOS 4.04               3500    up to 36100 *
  73. Falcon030, TOS 4.04, Display off  4500    up to 39370 *
  74. Falcon030/32 MHz, Display off     4900    up to 39370 *
  75. TT030 w/o FastRAM, TOS 3.06       5600    up to 34100 *
  76. TT030 w/ FastRAM, TOS 3.06          ?       ?
  77.  
  78. ("greater than" values are benchmarked ones where the system could have
  79. gone faster, but the printer wasn't fast enough.)
  80.  
  81. * On 68030-based machines, speed depends on the position of
  82.   driver and software in the CPU's cache; in a worst-case scenario,
  83.   speed will be 20% less than the given maximum, normal average
  84.   will be about 5% less.
  85.  
  86.  
  87. Installation
  88. ============
  89. IPRN.PRG is for your AUTO folder. It should be the physically last 
  90. program there. MiNT users must place it behind MINT.PRG, so that printer 
  91. device drivers can install (in that case, iPRN will not install).
  92. When skipping MiNT, iPRN will then install as usual.
  93.  
  94. Those who don't have a MiNT printer device driver can use IPRN.PRG in MiNT.
  95. Full compatibility would then require IPRN.PRG to start before MINT.PRG, 
  96. but this way MiNT's overhead will eat up large part of the acceleration.
  97. People opting for speed instead of compatibility can place IPRN.PRG behind 
  98. MINT.PRG for full acceleration. (Printer output redirection will not work 
  99. then.)
  100.  
  101. IPRN.CPX is a Control Panel Extension and must be copied into the folder
  102. where all the others already are. Usually this is C:\CPX\. It is not included
  103. in the demo version.
  104.  
  105.  
  106. Operating
  107. =========
  108. There is nothing to operate on IPRN.PRG. Your system automatically starts it
  109. from the AUTO folder, and it installs. If the installation fails, there will
  110. be an error message like "already installed" or "Printer port already in use"
  111. if the program already is installed or if another program hogs the printer 
  112. port interrupt.
  113.  
  114. The Control Panel module is for program configuration.
  115. - "Offline Timeout" is the maximum delay (while printing) in seconds before 
  116.   the printer (being in BUSY state) is declared absent and an error condition
  117.   is reported to the application program.
  118. - "End-of-job delay" is the time frame in seconds (after the last byte 
  119.   printed) within which a printer BUSY condition will be considered
  120.   normal, error messages being suppressed meanwhile.
  121. - "Printer state watchdog": Interrupt driven printer state tracking.
  122.   May be enabled or disabled by the user at any time. Disabling it is 
  123.   recommended before using a program that prints in some kind of 
  124.   "Direct to Hardware" mode.
  125. - Clicking "OK" or "Save" will also wake apathetic HP Deskjet printers.
  126.  
  127. The Control panel module is included with the registered versions only;
  128. demo versions have "Offline Timeout" set to 30, "End-of-job delay" set to 3
  129. seconds, and the "Printer state watchdog" disables after the first printer
  130. error.
  131.  
  132.  
  133. iPRN's useful side effects:
  134.  
  135. - The STROBE signal generation is independant from system speed. iPRN 
  136.   works fine on any system, even those faster than the TT.
  137.  
  138. - Screen hardcopies are also accelerated; there also is no absent printer
  139.   delay here.
  140.  
  141. - On system reset, the undefined garbage byte TOS sends to the printer is
  142.   suppressed. Instead, a defined garbage byte (binary zero) is sent.
  143.   It can't be completely supressed, as this is a bug in TOS (up to 1.04,
  144.   at least).
  145.   
  146.  
  147. Unwanted side effects:
  148.  
  149. - Application programs that print by accessing the printer port hardware 
  150.   directly (instead of properly using GEMDOS or BIOS) will cause two 
  151.   interrupts per byte printed. This will slow _these_ printouts down 
  152.   (not much, luckily).
  153.   This applies to some older programs like Calamus 1.x or Signum!2.
  154.   Registered iPRN users can deactivate printer state tracking before using
  155.   these programs.
  156.  
  157. - Many programs do not care about the error conditions the BIOS print function
  158.   returns, so that the printer may not be turned offline while printing.
  159.   iPRN will supress offline error messages within 3 seconds after the last
  160.   byte printed (this value can be configured in registered versions).
  161.   This provides the user with more time to add paper, replace ink cartridges
  162.   or whatever. Data will not be lost until the "big" timeout occurs, which
  163.   is 30 seconds in the demo version and configurable in registered ones.
  164.   After this time has passed without the printer being back online, your
  165.   printout will feature some additional special effects.
  166.   This will also happen with plain TOS and is nothing to do with iPRN.
  167.  
  168.  
  169. Contraindications:
  170.  
  171. - Do not use with incompatible printer port hardware like on GEMulator or
  172.   JANUS boards in DOS PCs or Mag!C Mac.
  173.  
  174. ==============================================================================
  175.  
  176. Technical details: iPRN hooks to the BIOS trap vector (XBRA ID is "iPRN") and 
  177. catches Bconout( 0, ... ) and Bcostat( 0 ) calls. It also installs in the
  178. xconout0, xcostat0, prv_lst, prv_lsto and resvector vectors.
  179. It activates and uses MFP interrupt I0. A cookie "iPRN" is registered, with
  180. its value being a pointer to configuration variables changeable through the 
  181. Control Panel module. (Registered versions only, the demo versions' cookie 
  182. value points to garbage.)
  183.  
  184. Bcostat( 0 ), as opposed to the original call in TOS, always returns a proper
  185. value, even during a printout, when TOS returns kind of a random value.
  186. iPRN's Bcostat( 0 ) will as usual return -1 for "ready" and 0 for "not ready",
  187. only that a normal BUSY condition will be considered "ready".
  188.  
  189. ==============================================================================
  190.  
  191. Thanks to:
  192.  
  193. Thomas Fladerer for trying out and daringly using every single version 
  194. since 0.00;
  195.  
  196. The beta testers: Franz Blaha, Thomas Fladerer, Robert Federle, Andreas
  197. Kohout, Heinz Lütkebohmert, Michael Nolte;
  198.  
  199. The non-volunteering testers: Werner Deinböck, Michael Ruge, Walter Vieser.
  200.  
  201. Atari for hardware documentation, some small pieces of code about interrupt
  202. handling and program startup, and the Control Panel Extension development
  203. tools;
  204.  
  205. Julian F. Reschke for maintaining the list of programs using XBRA.
  206.  
  207. Special thanks to Thomas Fladerer, Andreas Kohout and Michael Kunert 
  208. for lending me their printers and not chargeing me for the ink used.
  209.  
  210.  
  211. Peter Missel, in June 1995