
     <<< A little fireside chat, or: >>>

     Some hopefully useful remarks about the printer drivers that can 
     be created with CDTG (the name is an acronym for the German for 
     'Calamus printer driver generator'; since the dialogs are in 
     German, translations of all terms are included in the description 
     below):

     - Many users of the CDTG continue to use their old 1.09N driver.
       Why?
       Mr. S. from P. says about this:
       "I have loaded the EPSON_LQ.CDT driver and actually only wanted a 
       fast printout. Didn't work! In contrast to my 1.09N driver I 
       could not switch over the resolution. Damned silly! I immediately 
       changed back to my old driver."
       What can be done about the threatened stroke Mr. S. may suffer??
       The printer driver concept in Calamus S/SL is based on CDTG, the
       printer driver generator. This however is only able to use one 
       prototype with a single output logic per driver. In plain words 
       this means: Several resolutions per driver are possible only if 
       they alter the printing logic during output. This is not the case 
       for the HP-Laserjet II/III for instance, where it is really 
       possible to set various output resolutions!
       In the above example Mr. S is the victim of his own ignorance (due 
       to his unwillingness to read this file) and therefore he omitted 
       loading and using 180DPI.CDT (with which he would have achieved 
       the desired 180 dpi as well as faster printout).
       For these reasons (where the apparently larger and unnecessary 
       complexity of the CDTG concept is justified by greater 
       flexibility), Mr. S. as well as anyone else affected by this 
       should first lick his required printer drivers into shape during 
       familiarization with his new Calamus system. One can then ensure a 
       more precise and flexible output of the high quality work the 
       Calamus WYSIWYG program can produce without having to fall back on 
       fixed settings of the 1.09N drivers. And since everything is 
       adjustable in Calamus, why not with the printer drivers as well?

     - If you personal printer does not exist as a CDD file, DON'T PANIC!
       Almost all printers are compatible with some kind of standard and 
       this compatibility is normally printed large and bold in the 
       printer manual, since it is an important sales point (e.g.
       EPSON LQ - EMULATION or similar). In that case use a driver for 
       this standard, and normally you will only have to set your 
       individual margins. Sometimes it is necessary to switch the 
       printer to this emulation mode first, so please read the 
       description of the DIP switches (which are normally at the back or 
       underneath the printer) and set them correspondingly. Apart from 
       that avoid too many deviations from the manufacturer's standard 
       settings, bacause these may alter the behaviour of the printer 
       even within the emulation! (Settings that are concerned with the 
       printer fonts and similar, on the other hand, can be altered to 
       your heart's content). Switching to an emulation mode does not 
       mean automatically that the printer will get slower; SWITCHING to 
       an emulation can be seen like a CHANGE of operating system.

     - Most important: Calamus prints EXCLUSIVELY raster (bitmap) 
       graphics on printers!! Your document page is converted by the 
       SoftRIP computation of Calamus into a bitmap image and sent to the 
       printer. The number and type of internal printer fonts have no 
       effect at all here, they are present for printing ASCII texts or 
       from ASCII-oriented text editing programs! So if your printer is 
       equipped with thousands of internal fonts, this will be no help 
       with Calamus. Also (laser) printers that master PostScript or 
       other page description languages (e.g. Epson GQ) normally output 
       only bitmap graphics under Calamus (though an additional module 
       for PostScript output is available for very high resolution 
       imagesetters where bitmap output would simply take too long).
       Note that such printers may build up pages in their page 
       description language very quickly, but have poor provision for 
       outputting bitmap graphics, if they can do this at all. So take 
       care when purchasing!

     - If you printer supports paper formats that can NOT be set in the 
       Calamus printer dialog, please don't despair! Because the 
       advantage of CDTG is that one can define ANY paper format, 
       including not just DIN A3, A2 ... but also handkerchief size or 
       inserts for CD jewel cases, and VERY SIMPLY at that!
       Just load CDTG and the CDD file you are using (from the SOURCE 
       folder with 'Load 'CDD''), select the 'Formats' heading and in 
       the drop-down menu select one of the 'Undefin.' entries. Choose 
       the desired paper format in the 'Size' drop down menu or, if none 
       of these are suitable and you want to specify your own, click on 
       the 'Own' entry; this opens up another part of the dialog where 
       you can input the required height and width in cm or in printer 
       units such as 1/360" (choose which in the 'Parameter II' dialog). 
       Now add the name and click on the selected (inverse video) 
       'Undefin.' You have created a new paper format! You can save this 
       as a plain text prototype to the SOURCE folder with the 'Save 
       'CDD'' button, and/or create a new printer driver with the 'Create 
       'CDT'' button (the result goes in the PRINTERS folder). This is 
       much more flexible than the 1.09N drivers, because more paper 
       formats of any desired size can be defined here!

     - Different means for feeding the paper that the printer can use but 
       which are not supported by the driver can be defined in the 'Paper 
       feed' subdialog. There is space for four different types of paper 
       feed which you can name individually - these will be offered for 
       selection in the 'Paper feed' popup of the Calamus Print dialog. 
       Note that most of the existing drivers are in German and use one 
       or more of: 'Kasette' (tray), 'Man.' or 'Autom. Einzelblatt' 
       (manual or auto single sheet feed), 'Traktor', and 'Zeitmessung' 
       (time measurement - see below). You have to set the legend below 
       each entry for either 'Manual', 'Autom.' or 'Time' operation to 
       match the desired type.

     - The Calamus 'Print' dialog also offers the choice of ports to 
       which print output is directed (and to which the output device has 
       to be connected, of course!). The 'Parallel' port is generally 
       coupled to an internal, direct print byte output. This has the 
       advantage of being many times faster than output under TOS. But to 
       divert the print data to a file or another printer in network 
       operation, TOS output has to be switched in as otherwise the print 
       data cannot be intercepted! For this you have to select 'Other' 
       in the Port popup. For printing via the RS-232 serial port one 
       generally has to print via TOS (horribly slow). After the TT  
       appeared the direct output turned out to be too fast as a rule  
       and the TOS (or is it just the 68030?)  fast enough, so: On the 
       TT it's best to print only with 'Other'.

     - MARGINS!!!!!!!!!!!!!!!
       A lot of groaning, wailing and - from some nutcases - threatened 
       attacks with baseball bats created the margins concept of the 
       CDTG. Why?

       WHY set margins yourself?
       BECAUSE every printer (EVERY printer) has different margins. They 
       vary from model to model, from printer to printer of the same 
       model, from one type of paper feed to another (!!!) and with less 
       accurate paper feed mechanisms even from sheet to sheet. And 
       that's not all: When changing locations, even a silk cushion can't 
       prevent the margins at times being completely different from 
       previously. So please don't blame it all on Calamus!

       PHYSICAL PAPER SIZE...
       ...specifies the dimensions of the paper used (A4, B5 etc.). All 
       margins are measured as distances from this - and always inwards!
       Although one could conceive negative margins, these are hardly 
       sensible. Thus the smallest possible margins  are 0, 0, 0, 0 
       (distance from left, right, top, bottom paper edges respectively).

       ADDRESSABLE MARGINS...
       ...are those margins that the printer could theoretically print on 
       if its print engine was capable of doing this. If it is not  
       (i.e. addressable and printable margins differ from each other)
       then you will never be able to see anything printed between them.
       A typical example is the Hewlett Packard LaserJet series. In that 
       one can set the top margin in 1/2 inch steps; if one sets the top 
       margin right to the top, though the printer can write or draw 
       something at that position, you will never see it printed out 
       because it does not fit on the laser print drum. So the printer 
       can ADDRESS the space between these margins (i.e. write data 
       there) but not PRINT them. With the vast majority of printers the 
       addressable and printable margins are identical.

       PRINTABLE MARGINS...
       ...are those margins within which the printer outputs data from 
       its memory store to the paper. In the case of a page-oriented 
       printer (such as a laser) it is a page store, otherwise a line 
       store or in some cases an intermediate store for several lines. 
       The printer can now put all (in the case where printable and 
       addressable margins are equal) or not all (when these two margins 
       are different) print bytes onto the paper. Guidelines in the 
       Calamus document window identify the printable margins, within 
       which everything will be brought to the paper.

       BUILD-UP AND CUT-OFF
       If you now specify a left margin of, say, 5 cm, then (as long as 
       you have switched it on) the left print guideline is drawn in 
       Calamus 5 cm from the left edge of the page (physical paper 
       size!); during printing everything that lies to the left of it is 
       CUT OFF and NOT BUILT UP! (Remember Calamus prints in graphic mode 
       so each page is built up (drawn) as a bitmap image in memory 
       before it is output.) This is most easily explained with an 
       example of a pin or ink jet printer: The first byte of the 
       computed page will be output just to the left of the printhead 
       end-stop. If this end-stop is 5cm in from the left edge of the 
       paper, then everything that has been built up will be moved 5 cm 
       to the right! So the only remedy is not to build up the first 5 cm 
       at all, and this is just what Calamus does when you set in CDTG a 
       left paper margin of 5 cm.

       AFTER THE THEORY...
       ...or if the above means nothing to you, let's turn to practice;
       to set the margins for your printer, proceed as follows: 
       1.) (In CDTG:)
           Load a CDD file for the present printer or a compatible.
       2.) Create a driver with all required paper formats.
           Before that though set ALL margins to 0.
       3.) (In Calamus:)
           Create a document of the desired paper size with a raster area 
           rectangle that is at least as large as the total physical 
           print area.
       4.) Print out the page with the driver created in 2). with the 
           corresponding paper format selected.
       5.) Repeat steps 3.) and 4.) for every required paper format.
       6.) (In CDTG:)
           Measure and enter all resulting margins on all sides and for 
           all paper formats.
       7.) Save result as a CDD file.
       8.) Create driver with the 'Create 'CDT'' button.

     - TIME MEASUREMENT
       All drivers are provided with the option for time measurement.
       What is being measured here?
       1.) Page build-up in Calamus
           This is the time that is required while Calamus is displaying 
           'Page X is drawing/being rotated/inverted'.
       2.) Computation of the print data
           Conversion of colours, swapping of print bytes, calculating 
           optimizations, compression, building up intermediate buffers, 
           building up control strings for the printer - i.e. actually  
           everything that is also done normally up to the time that 
           bytes are sent to the printer!

     - TROUBLE-SHOOTING (hasta la vista, baby!)
       DIAGNOSIS:
            Despite howls of rage and well-aimed kicks, the printer 
            cannot be persuaded to print even one byte (and not just in 
            Calamus!).
       CAUSE:
            Either a faulty or not plugged in connection lead, or most 
            probably too low output level at the Centronics port (due to 
            the sound chip which is responsible for Centronics output).

       THERAPY:
            Check that the cable is OK and plugged in properly! If OK, 
            connect a suitable printer-level signal amplifier between 
            computer and printer (best with external power supply).

       DIAGNOSIS:
            Printer produces chaotic character sequences, line feeds,
            beeps constantly, runs to the kitchen or leaps from the cage!
       CAUSE:
            It received a wrong control sequence to set the printer for 
            raster graphic data!
       THERAPY:
            - Try another CDD file (wrong emulation addressed).
            - DIP switches set wrongly (wrong emulation set in printer).
            - Consult the manual for 'Start Raster Graphics' or similar 
              and enter the required print codes under NEWLINE in CDTG.

       DIAGNOSIS:
            Printer prints file output from the desktop or other 
            programs, but not with Calamus!
       CAUSE:
            Either too fast output (above all with a TT), or wrong 
            control codes.
       THERAPY:
            - With too fast output, change to the 'Other' output port in 
              the Calamus print dialog.
            - With wrong control codes it's best to use a different CDD 
              file (wrong emulation).

       DIAGNOSIS:
            Printer spits out a sheet half way and prints the rest of 
            the page on the next one, or feeds in a further sheet too 
            far!
       CAUSE:
            Too long sheet length set on the printer, too small bottom 
            margin.
       THERAPY:
            - Reduce the sheet length in the printer in the PRINIT codes
              (look in manual under SET FORM LENGTH or similar).
            - Increase size of lower margin, then less will be built up 
              and printed accordingly.

       DIAGNOSIS:
            The printer goes its own way and for instance on an A3 page 
            cuts off everything that does not belong to A4 (yes, A four!)!
            But in the CDTG, A3 is defined as the paper format!
            (Mr. S. from P.: "That's a disgrace! Unbelievable! Damned
            computers! Nothing works! I'LL BECOME A BRICKLAYER!")
       CAUSE:
            The printer has not been prepared for that paper size, but 
            believes that it is being fed with a smaller paper size.
       THERAPY:
            - If the printer cuts off only at the bottom:
              Set a larger sheet length (PRINIT codes), normally with 
              the SET FORM LENGTH in inches control string (see the manual).
            - If the printer cuts off at right and bottom:
              Look in the printer manual for a code sequence that 
              determines the sheet size (e.g. SET FORM SIZE/SET PAGE 
              SIZE/SET PAGE DIMENSIONS or similar) and enter the 
              appropriate characters in the PRINIT codes.

     - IF NONE OF THIS HELPS...
       ...then DMC will. Please, please describe your printer or driver 
       problems with as much detail as possible, since letters of 
       complaint in the style of "MY PRINTER DOESN'T PRINT" are not very 
       constructive and gets neither you nor us any further. Please 
       describe:
       - Your Calamus version (also serial number)
       - The page size of your document
       - Your printer name and model, with set emulation if appropriate
       - The printer driver used
       - The error that has arisen as precisely as possible
       - Any changes to the supplied CDD file.
       If this is a problem that is visible in the printout, please 
       include the printed page on which you have marked or noted the 
       error.

     wb Axel-M.C. Wagner (HDD), 03.08.92


*** End Of File ***
