home *** CD-ROM | disk | FTP | other *** search
/ Club Amiga de Montreal - CAM / CAM_CD_1.iso / files / 141.lha / GPrint.doc < prev    next >
Text File  |  1986-11-21  |  36KB  |  759 lines

  1.                               GPrint 2.00
  2.      Black and White Graphics Print Utility for Epson FX printers.
  3.                    Copyright (c) 1988, Peter Cherna
  4.  
  5.      Documentation as of June 3, 1988.
  6.  
  7.      Contents:
  8.  
  9. 1.   Introduction
  10.      1.1. Overview
  11.      1.2. Features
  12.      1.3. Using GPrint
  13.  
  14. 2.   Print Densities
  15.      2.1. Low Density
  16.      2.2. Medium Density
  17.      2.3. High Density
  18.      2.4. Ultra Density
  19.  
  20. 3.   Print Qualities
  21.      3.1. Draft Quality
  22.      3.2. Good Quality
  23.      3.3. Special Smoothing
  24.  
  25. 4.   Summary of Print Modes
  26.      4.1. Physical Print Densities
  27.      4.2. Relative Time for a Given File
  28.      4.3. Relative Time for a Given Area
  29.  
  30. 5.   Other Options
  31.      5.1. Offset Image
  32.      5.2. Center Image
  33.      5.3. Invert Image
  34.      5.4. Form Feed
  35.      5.5. Wide-Carriage Printers
  36.      5.6. Suppress Reverse Feeds
  37.      5.7. Aborting a Print
  38.  
  39. 6.   Technical Notes
  40.      6.1. Printer Requirements
  41.      6.2. Paper Movement
  42.      6.3. Perforations
  43.  
  44. 7.   Future Enhancements
  45.      7.1. Printer Driver
  46.      7.2. Workbench Version
  47.      7.3. Improved Abort
  48.      7.4. Other Printers
  49.  
  50. 8.   Final Notes
  51.  
  52.  
  53.  
  54.      DISTRIBUTION NOTICE:
  55.  
  56.           GPrint may only be distributed as shareware, provided it is at no
  57.           charge (except that normally otherwise associated with the cost
  58.           of distribution of public domain disks), and provided that a
  59.           copy of this documentation accompanies any such distribution.
  60.           Permission is NOT granted to distribute GPrint along with
  61.           any commercial software.  Arrangements to distribute GPrint
  62.           along with such software can be made by contacting the author.
  63.  
  64.  
  65.  
  66. 1.   Introduction
  67.  
  68.      1.1. Overview
  69.  
  70.           GPrint is a utility that takes any two-colour IFF picture
  71.           file as input, and prints in on an Epson FX-series or
  72.           compatible printer.  The philosophy behind GPrint is to offer
  73.           the highest possible quality of graphics printing with the
  74.           greatest ease.  A cornerstone of GPrint is that it provides a
  75.           direct pixel-for-pixel copy of the picture file on the
  76.           printer, so that parallel lines, for example, remain of equal
  77.           thickness.
  78.  
  79.           To provide maximum flexibility, GPrint offers a total of nine
  80.           print modes, consisting of four print densities and three
  81.           printing qualities (not all combinations are allowed).  The
  82.           print densities range from 80 by 72 screen pixels per printed
  83.           square inch all the way up to 240 by 216!  The highest print
  84.           quality incorporates a special smoothing algorithm to greatly
  85.           improve the output look.  It is especially effective on text,
  86.           curves, and diagonal lines or boundaries.
  87.  
  88.           GPrint is an essential utility for anyone with an Epson
  89.           compatible printer who has a need to print graphics,
  90.           diagrams, charts, or who uses desktop publishing packages
  91.           such as Gold Disk's PageSetter.  It is offered as shareware,
  92.           meaning that if you find this program useful, you are asked
  93.           to register by sending a contribution of $10 to:
  94.  
  95.                Peter Cherna
  96.                5511 Westbourne Ave.,
  97.                Cote St. Luc, Quebec
  98.                Canada
  99.                H4V 2G9
  100.  
  101.           Registered owners will be kept abreast of any new versions or
  102.           updates.  Without your support, I cannot afford to work on
  103.           improvements or other software, so please register!
  104.  
  105.  
  106.      1.2. Features
  107.  
  108.           GPrint is designed to provide the maximum printing speed and
  109.           quality.  For speed, for example, it doesn't ask the print-
  110.           head to pass over white space to the right of the picture. 
  111.           Nor does the print-head move laterally over completely blank
  112.           lines.  In addition, if there are several blank lines in a
  113.           row, GPrint queues up this information, and issues one or
  114.           more large paper feeds instead of a stream of little paper
  115.           feeds.
  116.  
  117.           For the best possible printed look, GPrint avoids asking the
  118.           printer to perform minuscule paper feeds of the order of one
  119.           or two hundredths of an inch, which the printer can only
  120.           perform with some potential for misalignment.  Instead, using
  121.           a special algorithm, it layers its print passes evenly,
  122.           avoiding tiny paper feed commands, thereby providing a more
  123.           clean-looking output.
  124.  
  125.           GPrint provides numerous print densities and qualities to
  126.           meet various needs.  The resulting print densities go from
  127.           the relatively low (80 by 72 pixels per square inch) all the
  128.           way up to the very high (240 by 216 pixels per square inch). 
  129.           The user can then trade off picture size and picture quality
  130.           vs. time needed for the print.  Additional options include
  131.           setting a left margin, centering the picture, inverting the
  132.           picture, and issuing a final form feed after printing.
  133.  
  134.           Providing the ability to print a pixel-for-pixel copy of a
  135.           picture file gives the ability to get the best possible print
  136.           quality.  Every printed pixel can be controlled;  it is just
  137.           taken from the picture file.  Using the medium print density
  138.           for example, a full 8" by 11" page can be prepared in Deluxe
  139.           Paint II from Electronic Arts (960 pixels across by 792 down)
  140.           or taken from the output of the PageIFF utility of
  141.           PageSetter.
  142.  
  143.           However, this is not even the highest print density an Epson
  144.           printer is capable of.  At the highest density, such a
  145.           picture file would occupy only one-sixth of a printed page! 
  146.           How can one prepare a large image at a high print density
  147.           without resorting to an unwieldy sized file (1920 by 2376
  148.           pixels) that many programs can't handle?  (Deluxe Paint II
  149.           can't, PAR's Express Paint 2.0 can, given enough memory.)  To
  150.           allow such work, GPrint offers its Special Smoothing mode,
  151.           which doubles the horizontal and vertical print densities
  152.           without changing the size of the final printed image or
  153.           requiring a larger picture file.  The simplest way to do this
  154.           would be of course to just repeat each printed dot
  155.           horizontally and vertically, but this would produce slightly
  156.           blocky results.  The smoothing mode produces somewhat more
  157.           pleasing results, as demonstrated on the letter "g" from the
  158.           Topaz 8 font:
  159.  
  160.                  *** **       ******  ****       *****   ***
  161.                 **  **        ******  ****      ***   * ***
  162.                 **  **      ****    ****       ***     ***
  163.                  ****       ****    ****       ***     ***
  164.                **   **      ****    ****       ***     ***
  165.                 *****       ****    ****        ***   ***
  166.                               ********           *******
  167.                               ********          *     ***
  168.                           ****      ****     ***       ***
  169.                           ****      ****      ***     ***
  170.                             **********         *********
  171.                             **********    
  172.  
  173.                Original   Repeat horiz&vert    Smoothing
  174.  
  175.           To really appreciate the power of the smoothing algorithm,
  176.           try out these modes on some of the sample files!
  177.  
  178.      1.3. Using GPrint
  179.  
  180.           GPrint runs from the CLI.  To activate it, type:
  181.  
  182.           GPrint filename [L|M|H|U] [D|G|S] [Onn|C] [I] [F] [W] [R]
  183.  
  184.           Where "filename" is the name of the IFF picture file you wish
  185.           to print.
  186.  
  187.           Where the options are as follows:
  188.  
  189.           L:   Low Density (80 x 72 ppsi)
  190.           M:   Medium Density (120 x 72 ppsi)
  191.           H:   High Density (120 x 108 ppsi)
  192.           U:   Ultra Density (240 x 216 ppsi)
  193.           D:   Draft Quality (use with L, M, H, or U)
  194.           G:   Good Quality (use with L, M, or H only)
  195.           S:   Special Smoothing (use with M or H only)
  196.           Onn: Offset nn tenths of an inch (eg. O5 gives 1/2 inch)
  197.           C:   Center Image
  198.           F:   Issue form feed after printing
  199.           W:   If you are using a wide-carriage (13.6") printer
  200.           R:   Suppress reverse feeds (for MX or RX printers)
  201.  
  202.           Notes:  - Options can be given in any order, and in either
  203.                     upper or lower case.
  204.                   - 'ppsi' stands for screen pixels per square inch, 
  205.                     horizontal x vertical.
  206.                   - The print mode defaults to M,D.
  207.  
  208.      Example:  To print the picture "df1:MyPicture" in high density
  209.      with special smoothing, indented 1.5 inches, with a form feed
  210.      issued after printing, you would type:
  211.  
  212.           GPrint df1:MyPicture h s f o15
  213.  
  214. 2.   Print Densities
  215.  
  216.      GPrint offers four print densities, the choice of which will
  217.      determine how large a particular picture will appear on the
  218.      printed page, as well as its aspect ratio (whether it will appear
  219.      squashed, stretched, or about the same as it looks on the screen.)
  220.  
  221.      2.1. Low Density
  222.  
  223.           Low density (option L) puts 80 screen pixels per printed inch
  224.           horizontally, by 72 vertically.  On an 8" printer, a picture
  225.           640 dots across will span the page.  The aspect ratio of this
  226.           density is with 5% of the aspect ratio of a 320x200 or
  227.           640x400 screen, so objects that are square on the screen will
  228.           be almost exactly square on the printer.
  229.  
  230.           At this density, it is possible to print in draft or good
  231.           quality, but not with special smoothing.
  232.  
  233.           Example:
  234.  
  235.                GPrint df1:MyPicture l
  236.  
  237.      2.2. Medium Density
  238.  
  239.           Medium density (option M or by default) puts 120 screen
  240.           pixels per printed inch horizontally, by 72 vertically.  When
  241.           combined with draft quality this produces the print density
  242.           normally thought of as "standard" on Epson printers. 
  243.           Printing a file produced by PageSetter's PageIFF utility in
  244.           GPrint's medium draft mode will produce the same print look
  245.           as the direct printed output of PageSetter.  Up to 960 screen
  246.           pixels will fit on an 8" line.  This is a good choice of
  247.           print density for general work, with the one caveat that to
  248.           create a square on the printer, you must draw a rectangle
  249.           that is 5 dots wide for every 3 dots tall, which won't appear
  250.           square on the screen.
  251.  
  252.           At this density, all three qualities (draft, good, and
  253.           special smoothing) are available.  Try printing an existing
  254.           PageSetter file (saved via PageIFF) in medium density with
  255.           special smoothing.  Compare it to draft output.
  256.  
  257.           Example:
  258.  
  259.                GPrint df1:MyPicture m   or   GPrint df1:MyPicture
  260.  
  261.      2.3  High Density
  262.  
  263.           High density (option H) is another good choice for general
  264.           work, and puts 120 screen pixels per horizontal inch, and 108
  265.           vertical.  The big advantage of high density is that like low
  266.           and ultra density, its aspect ratio is within 5% of that of a
  267.           320x200 or 640x400 screen.  Thus, the horizontal stretch of
  268.           the printed copy is barely noticeable.  (Squares stay square
  269.           and circles stay round.)  It is possible to make a picture
  270.           file big enough to fill a full 8" page in this resolution in
  271.           software such as Deluxe Paint II.
  272.  
  273.           As is the case with medium density, all three qualities are
  274.           possible at high density.
  275.  
  276.           Example:
  277.  
  278.                GPrint df1:MyPicture h
  279.  
  280.      2.3. Ultra Density
  281.  
  282.           Ultra density (option U) gives a pixel-for-pixel image at the
  283.           maximum physical print resolution obtainable on the FX-series
  284.           printers, namely 240 by 216 dots per square inch.  This
  285.           produces beautifully smooth curves, but be aware that the
  286.           largest picture that Deluxe Paint II can handle fills only
  287.           about a quarter page at this resolution, and it can be very
  288.           difficult to manipulate images large enough to be readable in
  289.           this mode.  Also, you will want to use some of the largest
  290.           fonts available. 
  291.  
  292.           As ultra density uses the maximum available print density,
  293.           there are no additional printable pixels which could be used
  294.           to implement the higher quality modes.  Thus, ultra density
  295.           only works with draft quality.  (But the results are still
  296.           excellent, because the density is so high.)
  297.  
  298.           You may find that a solid black area in ultra density is "too
  299.           black", and gets smeared where the print-head has passed over
  300.           it.  If this is the case, use an older, lighter ribbon (which
  301.           yours will quickly become if you persist in printing solid
  302.           black graphics - a square inch of solid black in ultra
  303.           density or smooth quality high density mode uses as much ink
  304.           as a double-spaced page of draft-quality text!).  The other
  305.           choice is to pull the print-head away from the printer, using
  306.           the paper-thickness lever on your printer.  Of course, you
  307.           could also decrease the amount of black in the picture file!
  308.  
  309.           Example:
  310.  
  311.                GPrint df1:MyPicture u
  312.  
  313. 3.   Print Qualities
  314.  
  315.      In order to boost the print quality without forcing the user to
  316.      switch to a higher density and a larger (possibly unwieldy picture
  317.      file), different print qualities are available.  It is important
  318.      to note that while selecting different print qualities may change
  319.      the physical PRINT density, the number of SCREEN pixels per square
  320.      inch remains unchanged for a given density.  In other words,
  321.      changing print quality but not print density will change the look
  322.      of the output without changing its size.  Higher qualities
  323.      naturally take longer to print.  Not all qualities are available
  324.      in all densities.  If you specify an invalid combination, then the
  325.      desired density will be taken along with the highest allowed print
  326.      quality.
  327.  
  328.      3.1. Draft Quality
  329.  
  330.           Draft quality (option D or by default) can be combined with
  331.           all four print densities.  This is the most straightforward
  332.           density, in which each screen pixel is represented by
  333.           precisely one printed dot on the page.  It provides the
  334.           fastest output for a given density, and is useful in many
  335.           cases, including previewing what a final copy (at a higher
  336.           quality) might look like (in terms of size).  When used with
  337.           medium density, it produces a "standard" print resolution,
  338.           like that used in PageSetter, for example.
  339.  
  340.           Example:
  341.  
  342.                GPrint df1:MyPicture d   OR   GPrint df1:MyPicture
  343.  
  344.  
  345.      3.2. Good Quality
  346.  
  347.           Good quality (option G) improves the appearance of a printed
  348.           output by printing each row twice, with the second run just
  349.           below the first.  GPrint automatically sets the printer for
  350.           double the vertical printed dot resolution for that density
  351.           in order to make room for these extra dots without changing
  352.           the resulting picture size.  Good quality may be combined
  353.           with low, medium, or high densities, but not with ultra
  354.           density.
  355.  
  356.           Example:
  357.  
  358.                GPrint df1:MyPicture g
  359.  
  360.      3.3. Special Smoothing
  361.  
  362.           Think of special smoothing (option S) as being the "near-
  363.           letter-quality" of graphics printing.  Without any extra work
  364.           on the part of the user, and with just a bit of extra
  365.           patience for the longer printing times involved, special
  366.           smoothing can dramatically increase print quality.  Special
  367.           smoothing, which works only with medium and high densities,
  368.           produces the best possible output by calculating intermediate
  369.           dots both horizontal and vertical, based on a special
  370.           smoothing algorithm.  GPrint automatically sets the printer
  371.           for double the vertical and double the horizontal printed dot
  372.           resolution for the selected density, in order to make room
  373.           for these extra dots without changing the resulting picture
  374.           size.  For an idea of the power of special smoothing, examine
  375.           the sample letter "g" given in Section 1.2, but for a real
  376.           idea, print a file with this option.
  377.  
  378.           You will probably use special smoothing along with either
  379.           medium or high density for most final work.  A brief
  380.           discussion is necessary on one potential pitfall.  If GPrint
  381.           prints a file containing something (such as text) on a
  382.           screened background (a light grid of dots), you will find
  383.           that the grid dots adjacent to the text appear to "grow onto"
  384.           the letters.  This is a function of the smoothing algorithm,
  385.           which can't tell that these dots shouldn't really be attached
  386.           to the letters.  To get around this, ensure that there is a
  387.           single-pixel white space around each letter.  In PageSetter,
  388.           for example, it suffices to specify any text placed on a
  389.           screened background as being both "reversed" (\r) and
  390.           "outlined" (\o), producing black letters (as desired) with
  391.           the required white outline (as required).  In a Paint
  392.           program, the same white space can be created in a number of
  393.           ways.
  394.  
  395.           As is the case with ultra density, you may find that a solid
  396.           black area in smooth mode is "too black", and gets smeared
  397.           where the print-head has passed over it.  If this is the
  398.           case, use an older, lighter ribbon.  The other choice is to
  399.           pull the print-head away from the printer, using the paper-
  400.           thickness lever on your printer.  Of course, you could also
  401.           decrease the amount of black in the picture file.
  402.  
  403.  
  404. 4.   Summary of Print Modes
  405.  
  406.      4.1. Physical Print Densities
  407.  
  408.           The four densities, low, medium, high, and ultra, put 80 x
  409.           72, 120 x 72, 120 x 108, and 240 x 216 SCREEN pixels per
  410.           square inch respectively, regardless of the selected print
  411.           quality.  However, the different print qualities mean that
  412.           the physical PRINT densities vary from this.  The following
  413.           table shows the physical print densities in dots per square
  414.           inch (horizontal x vertical) as a function of the mode:
  415.  
  416.                            Draft          Good          Smooth
  417.                Low        80 x  72       80 x 144          -
  418.                Medium    120 x  72      120 x 144      240 x 144
  419.                High      120 x 108      120 x 216      240 x 216
  420.                Ultra     240 x 216          -              -
  421.  
  422.           Note:  Very few other printing programs or drivers use 144
  423.           dots per inch vertical density, and perhaps none use 108 dots
  424.           per inch.  However, such densities ARE possible on Epson FX
  425.           printers and compatibles, and are in fact very useful!
  426.  
  427.      4.2. Relative Time for a Given File
  428.  
  429.           The various print densities and qualities are provided to
  430.           give the user maximum flexibility.  Of course, for a given
  431.           file, some modes take longer than others to print, so the
  432.           following table can be used as a guide for how long each mode
  433.           takes, normalized so that medium density draft quality is
  434.           considered to be unity.  (Of course, a given file will
  435.           produce a different sized picture depending on the density
  436.           chosen.)
  437.  
  438.                            Draft          Good          Smooth
  439.                Low          1.5             3              -
  440.                Medium       1               2              4
  441.                High         2               2              4
  442.                Ultra        1               -              -
  443.  
  444.      4.3. Relative Time for a Given Area
  445.  
  446.           Since some modes print more compactly than others, the
  447.           following table can be used to estimate the time each mode
  448.           would take to fill a given printed area (say, for example,
  449.           one square inch), normalized so that medium density draft
  450.           quality is considered to be unity.
  451.  
  452.                            Draft          Good          Smooth
  453.                Low          1               2              -
  454.                Medium       1               2              4
  455.                High         1.5             3              6
  456.                Ultra        6               -              -
  457.  
  458.  
  459. 5.   Other Options
  460.  
  461.      GPrint provides several options for added flexibility.
  462.  
  463.      5.1. Offset Image
  464.  
  465.           The Offset Image option (option O) can be used to specify a
  466.           desired left margin in tenths of an inch.  Use the letter 'O'
  467.           (or 'o') followed immediately by the number of tenths of an
  468.           inch desired.  (No intervening space is allowed;  in other
  469.           words, "O5" and "o10" are allowed, but "o 5" won't work.)  An
  470.           offset will cause the printed image to be moved over by that
  471.           amount.  (If the offset great enough, then the picture will
  472.           be clipped on the right.)  To get an offset 1.5 inches, use
  473.           the following command:
  474.  
  475.                GPrint df1:MyPicture o10
  476.  
  477.           The Offset Image option cannot be combined with Center Image
  478.           (see below).  If both are specified, only the last one will
  479.           be considered.
  480.  
  481.      5.2. Center Image
  482.  
  483.           The Center Image option (option C) can be used to position
  484.           the printed image in the horizontal center of the page.  Its
  485.           use is shown as follows:
  486.  
  487.                GPrint df1:MyPicture c
  488.  
  489.           The Center Image option cannot be combined with the Offset
  490.           Image option.  If both are specified, only the last one will
  491.           be considered.
  492.  
  493.      5.3. Invert Image
  494.  
  495.           The Invert Image option (option I) reverses the
  496.           interpretation of black and white in the picture to be
  497.           printed.  GPrint does not consult the colour palette to
  498.           determine which colour is black and which is white.  GPrint
  499.           by default prints colour 1 as black and colour 0 as white. 
  500.           This works correctly with later versions of PageSetter's
  501.           PageIFF.  In a default Deluxe Paint II two-colour screen,
  502.           colour 1 will be white, so then anything white on the Deluxe
  503.           Paint screen would print in black.  If you prefer the "look"
  504.           of paper on the screen, exchange the two colours in the
  505.           palette (so that colour 0 is black (or dark) and colour 1 is
  506.           white (or light)).  If you've set things up backwards, or
  507.           have an older version of PageIFF, then GPrint will print a
  508.           mostly black picture, which not only kills your ribbon very
  509.           quickly, but it tends to blot out fine white details such as
  510.           small white text on a black background.  Use the Invert Image
  511.           option to switch this back to normal, as follows:
  512.  
  513.                GPrint df1:MyPicture i
  514.  
  515.      5.4. Form Feed
  516.  
  517.           The Form Feed option (option F) asks GPrint to issue a form
  518.           feed after having printed the picture.  Note that GPrint does
  519.           not reset the printer at the beginning of a print, so the
  520.           top-of-form (to which the form feed advances the paper)
  521.           remains wherever you set it (i.e. at the paper position when
  522.           the printer was last reset or turned on.)  To invoke the form
  523.           feed option, type:
  524.  
  525.                GPrint df1:MyPicture f
  526.  
  527.      5.5. Wide-Carriage Printers
  528.  
  529.           This option (option W) informs GPrint that you are using a
  530.           wide-carriage (13.6") printer, such as the FX-185 or 286. 
  531.           GPrint will then adjust itself for the extra width, allowing
  532.           wider pictures to be printed, and centering pictures
  533.           accordingly.  If you leave it out, then all pictures will be
  534.           truncated at the eight-inch mark. To inform GPrint that you
  535.           have such a printer, use:
  536.  
  537.                GPrint df1:MyPicture w
  538.  
  539.      5.6. Suppress Reverse Feeds
  540.  
  541.           This option (option R) is to be used in conjunction with
  542.           printers that cannot perform reverse paper feeds, such as the
  543.           Epson MX and RX series.  GPrint uses reverse paper feeds to
  544.           perfectly align the paper before and after a picture is
  545.           printed.  If your printer does not support reverse paper
  546.           feeds, then a bit of garbage will appear (typically a lower-
  547.           case "j").  Use option R to avoid this.  (However, then there
  548.           may be a bit of extra space above and below a picture,
  549.           depending on the print mode chosen.)  If you have such a
  550.           printer, use:
  551.  
  552.                GPrint df1:MyPicture r
  553.  
  554.           If you are having difficultly with the print-head snagging
  555.           the paper if you start printing at the very top of the paper
  556.           (just below the perforation), suppressing reverse paper feeds
  557.           will be of help.  (See Section 6.3, Perforations).
  558.  
  559.      5.7. Aborting a Print
  560.  
  561.           If in the course of printing a picture you wish to cancel the
  562.           operation, click on the "Abort Print" gadget in the GPrint
  563.           window that opens in the upper right corner of the screen. 
  564.           GPrint will then stop sending graphics to the printer, and
  565.           terminate gracefully.  Of course, the printer buffer may
  566.           already contain several lines of graphics, and thus the
  567.           printer will continue printing even after GPrint stops
  568.           sending.  You may either wait for the printer to finish
  569.           printing what it has already received in its buffer, or you
  570.           may shut off your printer.
  571.  
  572.           GPrint will exit when it has finished sending graphics to the
  573.           printer.  If the printer is still printing from the buffer
  574.           when GPrint finishes sending, either wait it out, or shut off
  575.           the printer.
  576.  
  577.           If the "Abort Print" gadget is pressed while the computer is
  578.           waiting for the printer (eg. if the printer is not on or if
  579.           it is out of paper), the abort will not take effect unless
  580.           and until the printer error is corrected (eg. by turning on
  581.           the printer or loading paper).  Otherwise, after about a
  582.           half-minute of waiting, the printer driver will put up a
  583.           requester announcing printer trouble.  Click on RETRY if
  584.           you've fixed the problem, or click on CANCEL to abort and
  585.           exit GPrint.
  586.  
  587.  
  588. 6.   Technical Notes
  589.  
  590.      6.1. Printer Requirements
  591.  
  592.           As discussed in Section 4.1, various print densities are used
  593.           to provide the nine different print modes that GPrint
  594.           supports.  If you have an FX or LX printer or something else
  595.           relatively recent, all these modes will work.  If you have
  596.           something older like an MX-80 with Graftrax-Plus, then some
  597.           modes will work, while others won't.  This section explains
  598.           which graphics print modes are used by GPrint, so you can
  599.           check your printer manual to see if your printer can do what
  600.           GPrint asks of it.
  601.  
  602.                GPrint Modes        Epson Code     Description
  603.                LD, LG              ESC '*' 4      80 dots/inch
  604.                MD, MG, HD, HG      ESC 'L'        120 dots/inch
  605.                MS, HS, U           ESC 'Z'        240 dots/inch *
  606.  
  607.           *    in this mode, the printer does not allow two adjacent
  608.                dots to be printed.  GPrint uses two-pass printing to
  609.                overcome this.
  610.  
  611.           For example, an MX-80 with Graftrax Plus does not support the
  612.           ESC 'Z' and the ESC '*' 4 graphics modes.  Therefore such a
  613.           printer can only be used in medium or high density, in draft
  614.           or good quality.
  615.  
  616.           If your printer does not support reverse paper feeds (code
  617.           ESC 'j' n), be sure to use option R (Suppress Reverse Feeds).
  618.  
  619.           (Note that some early Star-Gemini printers are only mostly
  620.           Epson compatible, and graphics printing was one of the
  621.           incompatibilities.)
  622.  
  623.      6.2. Paper Movement
  624.  
  625.           GPrint causes the paper to do a funny dance at the beginning
  626.           of every printed picture, and sometimes at the end, also. 
  627.           This is done for two reasons:  at the beginning of the
  628.           picture, it removes any slack in the paper feed mechanism
  629.           caused by manual paper movements (thus preventing unwanted
  630.           gaps or overlaps in print passes), and second, GPrint
  631.           sometimes requires that the paper be rolled back a tiny
  632.           fraction of an inch before and after printing, depending on
  633.           the print mode chosen.
  634.  
  635.           When GPrint encounters a picture which has a large blank
  636.           section (say at the bottom of the picture, or possibly a band
  637.           in the middle), instead of sending dozens of little paper
  638.           feed commands to the printer (for that machine-gun effect),
  639.           it queues them up internally and issues them as one or more
  640.           very large paper feeds, which is less annoying, and faster. 
  641.           Sometimes, especially when printing a wide picture (that has
  642.           such a gap) with special smoothing, it seems like GPrint may
  643.           be twiddling its thumbs, but it is actually processing this
  644.           blank space, and storing up the paper feed commands.  It may
  645.           be momentarily disconcerting, but it is still faster than
  646.           having GPrint issue a steady flow of small paper feeds.
  647.  
  648.      6.3. Perforations
  649.  
  650.           Two problems can be encountered when printing on or near the
  651.           perforations in fan-fold paper.  First of all, slight
  652.           alignment errors are introduced when the printer is printing
  653.           near the perforation.  This corrects itself when the
  654.           perforation has passed, and is usually small enough to pass
  655.           undetected when printing text.  When printing graphics,
  656.           however, the alignment error usually shows up as a small gap
  657.           or overlap between consecutive print passes that should be
  658.           just touching.  The second problem is more rare, and is that
  659.           some printers get into trouble when reverse paper feeding
  660.           near the perforation.  If your printer jams or otherwise gets
  661.           unhappy, start the printing a bit farther down the page if
  662.           possible, or else use option R to suppress reverse paper
  663.           feeds.
  664.  
  665.  
  666. 7.   Future Enhancements
  667.  
  668.      GPrint has come a long way since version 1, which was used only by
  669.      myself and a few friends.  Since version 1, the high and ultra
  670.      modes were added.  As well, the printer was trained not to send
  671.      the print-head farther right than the last dot on the line, and
  672.      not to waste time passing over blank space.  All the options
  673.      listed in Section 5 were added, and the program was made to run
  674.      several times faster, and is now about half the size of the
  675.      original.
  676.  
  677.      There are still a few things that could be added to GPrint, but
  678.      Version 2 is here and useful.  To give you an idea of what I hope
  679.      to add, here are a few points.
  680.  
  681.      7.1. Printer Driver
  682.  
  683.           GPrint is currently a stand-alone program that prints IFF
  684.           files.  For a fair amount of extra work, the algorithms that
  685.           GPrint uses could be cast into a printer driver that could
  686.           then be placed with any program and used to get superb output
  687.           without having to go through an IFF file to do it.  The
  688.           output from GPrint is still better than the much improved and
  689.           much ballyhooed EpsonX driver from Workbench 1.3.  (The Epson
  690.           driver from 1.2 doesn't come close to either GPrint or the
  691.           EpsonX driver!)
  692.  
  693.      7.2. Workbench Version
  694.  
  695.           GPrint is the perfect pal for us CLI fans.  However, people
  696.           who freeze at the sight of the little CLI icon also have the
  697.           right to great print quality.  A Workbench version of GPrint
  698.           with a menu and gadget interface offering the same print
  699.           quality and options can be arranged.  This too would be a
  700.           fair amount of work.
  701.  
  702.      7.3. Improved Abort
  703.  
  704.           Why doesn't the "Abort Print" gadget work if the computer is
  705.           waiting for the printer to clear its error (out of paper, not
  706.           on, etc.)?  I spent many late nights trying to get this
  707.           feature to work, but I usually ended up freezing the computer
  708.           or visiting the Guru.  I've now got a pretty good
  709.           understanding of how the printer device and the parallel
  710.           device work, and I'm not convinced that this is the same as
  711.           how they ought to work and are supposed to work according to
  712.           the documentation.  If ever I discover that the problem is
  713.           mine and the devices actually do work as documented, or if
  714.           the problem lies with the device drivers and corrected
  715.           versions are issued, then this will be done right away.
  716.  
  717.           The other part of the Abort function that could be improved
  718.           is the question of graphics that made it to the printer's
  719.           buffer before the "Abort Print" gadget was clicked.  The
  720.           printer keeps going for a while, even though GPrint has
  721.           stopped sending stuff, as the user asked.  There doesn't seem
  722.           to be any Officially Approved Way (OAW) to cause a hardware
  723.           reset of the printer, which would arrest the printing
  724.           immediately.  My best attempt was too successful;  it reset
  725.           the printer and the computer!  If someone shows me such an
  726.           OAW, I'd put it in in a flash.  If there's a dirty way of
  727.           doing it, I'd at least consider it.  If there isn't, then it
  728.           would be nice if Commodore were to provide one.
  729.  
  730.      7.4. Other Printers
  731.  
  732.           Some or all of the techniques used in GPrint would apply to
  733.           other models of printer as well.  If there is sufficient
  734.           interest, I may be willing to create other versions of GPrint
  735.           that support those printers, for example the Epson Q series,
  736.           or HP LaserJets and DeskJets.
  737.  
  738. 8.   Final Notes
  739.  
  740.      I hope that you find GPrint handy and useful.  I've kept it to a
  741.      small size so that you can tuck it on any disk where it might be
  742.      handy.  I've worked hard at testing it to pieces, so there can't
  743.      be many bugs left. (never say zero!)  It has a bright future
  744.      (there are several interesting enhancements which could be done -
  745.      discussed in Section 7).  At this stage, I have to make one final
  746.      appeal:  there can't be future versions of GPrint nor any
  747.      stablemates released into the public domain or as shareware if
  748.      those who find it useful don't register!  So please, keep
  749.      developers developing, and send $10, along with any comments,
  750.      suggestions, bug reports, etc. to:
  751.  
  752.           Peter Cherna
  753.           5511 Westbourne Ave.,
  754.           Cote St. Luc, Quebec
  755.           Canada
  756.           H4V 2G9
  757.  
  758.      Thank you and enjoy!
  759.