MiserPrint V1.11 ================ Written by Heinz-Guenter Boettger GUI created with GadToolsBox V2.0c Comments, suggestions, bug reports etc. to hgb@pool.informatik.rwth-aachen.de 0. Important ============ ********************************************************************* * Starting with release V1.11, MiserPrint is 'Giftware' * * * * If you like this program and will use it, you should consider to * * send me a litte (or big ;-) donation for my work (please don't * * send cheques or money orders). If you can't afford to send me any * * donation you can write a picture postcard to * * * * Heinz-Guenter Boettger * * Roermonder Bahn 5 * * 41844 Wegberg * * Germany * ********************************************************************* 0.1. Disclaimer =============== This software comes with no warranty, either expressed or implied. The author is in no way responsible for any damage or loss that may occur due to direct or indirect usage of this software. Use this software entirely at your own risk. 0.2. Copyright ============== This software is freely distributable, BUT all programs and documentation are copyright by Heinz-Guenter Boettger. 0.3. Distribution ================= Permission is given to include this program in a public archive (such as a BBS, FTP site or PD library (disk and CD-ROM versions)) providing that all parts of the original distribution are kept intact. These are as follows: MiserPrint.info MiserPrint/MiserPrint MiserPrint/MiserPrint.info MiserPrint/MiserPrint.doc MiserPrint/MiserPrint.doc.info MiserPrint/MiserPrint.guide MiserPrint/MiserPrint.guide.info MiserPrint/Install MiserPrint/Install.info MiserPrint/env-archive/MiserPrint/MiserPrint.prefs MiserPrint/env-archive/MiserPrint/Manual.prefs MiserPrint/env-archive/MiserPrint/Listing.prefs MiserPrint/OtherIcon/MiserPrint.info No charge may be made for this program, other than a reasonable copying fee, and/or the price of the media. This fee _must not_ be more than US $5 or 5 DM for floppy disks. This program may not be included or used in commercial programs unless by written permission from the author. 1. Requirements =============== MiserPrint requires - an Amiga with Kickstart V37 or higher - a HP-Deskjet 500 The program should work fine with the Hewlett-Packard 500C, 550C, 510 and compatible printers too (e.g. PCL-printers or other ink-jets). 2. Installation =============== To install MiserPrint, simply copy it to your utilities directory and the directory of the preferences files to envarc: or click the Install icon. Denis Galiana sent me another icon that you can find in the 'OtherIcon' drawer. 3. Introduction =============== MiserPrint is a print utility that puts up to 8 normal pages of text on one sheet of paper. You are able to save paper and time. MiserPrint uses the small built-in fonts (Courier and Letter Gothic) of the HP-Deskjet printers. 4. Using MiserPrint =================== MiserPrint can be started from a CLI or from the Workbench. When the program starts up, the default values are set and MiserPrint.prefs is read. After that the commandline arguments or the tool types are evaluated and the main window is opened. 4.1. CLI -------- To start MiserPrint from CLI simply type its name and the parameters you need. You can use '?' to get the template. The program uses the defaults and the command line options override them. Template: FILE,USLEGAL/S,USLETTER/S,BLOCK/K/N,COURIER/S,LPI/K/N, PFF=PERMITFF/S,PESC=PERMITESC/S,DRAFT/S,LQB=LQBOLD/S, DOUBLE/K,HEADER/K,FOOTER/K,SEPERATE/K,BN=BLOCKNUMBER/K, TAB/K/N,TO/K,PREFS/K Most of them are switches, which are explained in the `Gadgets' section. FILE The file that you want to print. BLOCK n must be 1, 2 or 4. LPI n must be a number between 8 and 16. DOUBLE (ON|OFF) HEADER (ON|OFF) FOOTER (ON|OFF) SEPERATE (ON|OFF) BLOCKNUMBER (ON|OFF) These flags must be set to ON or OFF. The format of the header and the footer can be changed in the string gadget of the GUI. TAB n must be a number between 1 and 10. TO The filename must be a valid AmigaDOS one. PREFS The filename must include the full path. 4.2. Workbench -------------- The Workbench tool types for Miserprint are: USLEGAL, USLETTER, BLOCK=, COURIER, LPI=, PERMITFF, PERMITESC, DRAFT, LQBOLD, DOUBLE=(ON|OFF), HEADER=(ON|OFF), FOOTER=(ON|OFF), SEPERATE=(ON|OFF), BLOCKNUMBER=(ON|OFF), TAB=, TO=, PREFS= To start MiserPrint from Workbench - doubleclick its icon. - click the text file you wish to print and shift-doubleclick MiserPrint. - set the project icon of a text to MiserPrint and doubleclick it. More details are in the `CLI' section. 4.3. Gadgets ------------ The Option Gadgets ------------------ 'Papersize' With this gadget you can select the papersize that is used. (DIN A4 is the default, because it is the standard size in Germany.) 'Block' You can choose between three text arrangements: - 1x1: one big block - 1x2: two blocks, which are formatted in two columns - 2x2: four little blocks, normally four normal pages on one sheet 'Font' The HP-Deskjet 500 has two built-in nonproportional fonts: - Courier (6 point, 20 cpi) - LetterGothic (6 point, 24 cpi) 'LPI' A slider gadget allows you to select the lines per inch between 8 and 16. The two text gadgets 'Lines' and 'Cols' show you the dimensions of one block. 'Select Pages' After a file scan you are able to select the first and last page that you want to print. The text gadget below shows the first and last page (you can't see the last digit, if you want to print the pages 1000 - 9999 :-). 'Formfeed' If this option is enabled, the text after a formfeed is printed on a new block. 'ESC' With this option you can print some ANSI-ESC-sequences. I have implemented italics, underline and boldface. The others are filtered out. 'Quality' Three qualities can be selected: - Draft: the fastest print - LQ: my favourite mode - LQBold: perhaps somebody will use it 'Double' This option enables the printing on both sides of the sheets, so that you can print 8 normal pages on one sheet (if block is set to 4). First the even pagenumbers are printed, then a requester invites you to rotate the sheets before the odd pages are printed. If your printout is redirected to a file MiserPrint saves the even pagenumbers to .1 and the odd ones to .2, you must copy the files in this sequence to par: or ser: for a later printout. Don't copy them to prt:!!! 'Tab' The 'getline' function of MiserPrint exchanges the tabs with the number of spaces you entered in the tab gadget, because MiserPrint can't use the tabulators of the printer. Otherwise you get a wrong formatted printout. 'Header' 'Footer' A header or footer will be printed on every sheet. You can define the look of them. It supports some printf- or tex-like expressions: %f the filename without the path %d1 the current date (15-Sep-93) %d2 the current date (15.09.93) %d3 the current date (09/15/93) %t1 the current time (17:25) %t2 the current time (05:25 PM) %n the pagenumber \hfill fills a line with spaces until the line has the full length Examples: "%f \hfill %n" "%f \hfill %d1 \hfill %t1 \hfill %n" "\hfill - %n - \hfill" "\hfill %n" 'Seperate' You can print a thin horizontal line between the blocks. This option can only be used with the 2x2 blocks. 'Block #' On the bottom of each block the number of this block will be printed. The String Gadgets ------------------ 'Filename' You can select a file by clicking the getfile image (a filerequester appears) or by entering the filename in the string gadget. 'Port' The cycle gadget allows you to print directly to your printer (your printer preferences are used) or to a file. The getfile image and the string gadget are only activ when the printout to a file is selected. The Action Gadgets ------------------ 'Edit' To edit the file you can click this button and the command 'c:ed ' is executed. You can also set the environment variable EDITOR to your preferable editor. I have done this by 'setenv EDITOR tools:ed -sticky' to use CygnusEd. 'FileInfo' The file is scanned and a requester shows some informations about it. 'Preview' A preview window is opened and the last page is displayed. You can move through the document with the four buttons on the top or with the cursor keys. Click the closing gadget or use the ESC key to exit the preview. 'Print' If this button is clicked, the file will be printed. The 'FileInfo' and 'Print' command can be aborted by clicking the closing gadget. MiserPrint doesn't copy the whole file to memory but stores the file positions of the pages in a list. I chose this method to save memory. 4.4. Menu --------- Project ------- 'Open...' This command is used to load an old configuration. 'Save As...' You can save your actual configuration with this command. 'About' Just try it. 'Quit' If you want to exit the program, execute this command or click the closing gadget. Edit ---- 'Reset to defaults' My defaults are used. 'Last Saved' Resets the configuration to the last saved one. 'Restore' MiserPrint uses the configuration on startup. 5. Acknowledgments ================== Thanks to the following people: - Matt Dillon for DICE. - Jan van den Baard for GadToolsBox, which was used to design MiserPrint's GUI. - The users of MiserPrint who send me bug reports or suggestions. Thanks for your picture postcards or letters. - Alexander Aulbach for beta testing and some good ideas. - Denis Galiana for beta testing, some ideas and the nice icon ;-) - Peter Simons for mailing me some mungwall and enforcer hits. 6. History ========== V1.0 First release. V1.01 There was a bug in the requester of the doublesided printout. (bug report: Alexander Aulbach and Ulrich Zukowski) V1.10 NOT RELEASED! Removed the 'Really quit MiserPrint???' requester. I forgot to take an empty page of paper, if you selected the double mode and there was an odd number of pages. For this reason the sequence of the printout was wrong. (bug report: Ulrich Zukowski) If you click the formfeed or double gadget the file will be scanned the next time again. (bug report and suggestion: Ulrich Zukowski) MiserPrint uses the 'printer.device'. There is a timeout, e.g. if your printer is offline or out of paper. You are able to use a printer spooler. (suggestion: Alexander Aulbach) I changed the print functions, so that you can abort it quicker. The ANSI-ESC-sequence "[0m" selects the normal font. (suggestion: Ulrich Zukowski) Have you ever tried to print some underlined lines? The result wasn't nice. I corrected these functions. Now you can print a footer. (suggestion: Denis Galiana) MiserPrint stores its data in an IFF file, but it reads the old configuration files too. You are able to choose the pages you want to (re)print. (suggestion: Denis Galiana) A horizontal seperation line and the number of each block can be printed. (suggestion: Marcel Duruflé) V1.11 Removed the 'NOGUI' switch in the CLI. Has anybody used it??? I found a bug in the IFF read function and removed it. There were one mungwall and two enforcer hits in a beta version. (bug report: Peter Simons)