Cloanto Personal Fonts Maker and Printer Driver Modifier This disk contains the unmodified commercial versions of the Personal Fonts Maker and Printer Driver Modifier programs. These complimentary copies (sold individually, the two programs would cost about £ 89) are now being offered, for the first time, to the readers of Amiga Computing. This text can be printed with a word processor, or by typing the following command in a Shell window: Copy PFM:PFM.man PRT: The Personal Fonts Maker is a powerful tool for designing and processing bitmapped fonts. Amiga fonts and fonts created with the Personal Fonts Maker can be transferred to the printer memory and printed at maximum quality and speed. The Personal Fonts Maker can output fonts in formats which can be read by other Amiga programs, by other computers and by a vast range of differing printers (even 48-pin and laser printers). The program can handle IFF graphics. It is possible, for example, to work on typographical fonts input from a scanner. Repetitive transformations on characters or entire fonts can be recorded, stored and executed as macros. A special programming language can be used to define the format in which fonts are to be saved or sent to a printer. The Personal Fonts Maker package includes a multitude of original fonts and support tools. The Printer Driver Modifier allows the user to personalize Amiga printer drivers (to be used in text mode). For example, it is possible to "patch" existing drivers, or create new drivers for printers which are not completely supported. Both programs run on any Amiga with at least 512 Kbytes of RAM (1 Mbyte is recommended) and one disk drive. All versions of the Amiga operating system are supported. At the same time as this cover disk appears, a new Personal Fonts Maker bundle is being launched. In addition to the material contained on this disk, it includes at no extra cost the AGA Colour Extensions, which add powerful colour font processing capabilities to the basic package. Most of Personal Paint's editing tools have been incorporated into the package. For the first time, it is possible to process fonts in up to 256 colours and no size limit. Among others, special functions for anti-aliasing (even using an Amiga vector font as a point of departure) and right-to-left fonts are provided. This makes it an ideal companion to video applications, and a must in the titling environment. The Colour Extensions require 1 Mbyte of RAM. The new package contains a manual (more than 300 pages) full of examples and introductory sections for novice users, and comes complete with technical information for Amiga experts. Additional advanced documentation on the paint features can be found in the Personal Paint package. The bundle also contains extra fonts (black & white and colour), and more character sets, macros and printer definitions, which wouldn't fit on the already packed cover disk. To view sample screen snapshots of the Colour Extensions, double-click on the "PFM2.pic" icons on this disk. The DirDiff utility has been included in PFM_Tools as an extra bonus. Instructions are displayed when DirDiff is executed from the Amiga Shell. As you go on reading this file, you will find presentations of other Cloanto products, distributor information, and a complete introductory and tutorial section on the Personal Fonts Maker and Printer Driver Modifier. For more information on upgrades and other Cloanto products, please contact the local distributors whose address appears in this file. From time to time, information is mailed directly to users of our packages. To take advantage of this, don't forget to mail the registration card which comes with each original product. ------------------------------------------------------------------------ Cloanto Product Presentation: Personal Write Personal Write is an extremely fast word processor packed with original capabilities. It fully exploits unique Amiga characteristics like windows and multitasking. Personal Write does not limit the number of text windows which can be displayed at the same time. A built-in spooler can print even the longest texts in the background, while the program is used to do other work. Personal Write can encrypt confidential documents, which become unreadable to unauthorized users, and save disk space by compressing texts. Personal Write is also a powerful tool for converting texts into different formats. It can load and save texts combining more than 25 character sets of the most widely used computers. Control codes can be added or removed, as required by desktop publishing programs, Amiga system functions or other hardware and software environments. Thousands of combinations of printer settings can be selected to make the best use of features like the PostScript driver, the multistrike print mode, support for automatic justification with proportional characters and Personal Fonts Maker fonts. Alphanumerical labels can be used in the text for mail merge or to reorganize data. Pictures can be loaded and printed. Keyboard shortcuts and the texts which are displayed can be redefined to personalize the user interface (which includes stereo sound effects). An automatic hard disk installation procedure can be selected with the mouse. 512 Kbytes of RAM, 1 disk drive required; 1 Mbyte of RAM recommended Cloanto Product Presentation: Personal Paint Personal Paint is a powerful and intuitive paint and image processing package. It fully exploits all generations of Amiga computers and operating systems - from the Original to the Advanced Amiga Architecture (up to 256 colours and a 24-bit palette), accelerator cards (including FPU and cache-RAM) and graphics boards (Display Database and Blitter compatible). It offers sophisticated image processing functions: programmable effects (like emboss, sharpen, blur etc.), "intelligent" colour reduction and remapping, palette merge, different file formats (IFF, PCX, GIF, encrypted, C source code, Amiga DataTypes etc.) And much, much more: 24-bit printing, up to nine brushes, two different working environments, text editor, colour fonts, Amiga clipboard (for text and images), PostScript driver (with data compression, colour printing and separation), customizable user interface with stereo sound effects, screen grabber... plus a disk packed with 256-colour images for all Amiga models. New features of Personal Paint v. 4.0 include: Support of Retargetable Graphics (Picasso and Retina display cards, etc.), Autoscroll and many more functions to manage screens and display modes. Professional 24-bit printing (Colour and Black & White) with undercolour removal, gamma correction, etc. You won't recognize your printer! High quality conversion of IFF24, PCX24, HAM & HAM8 to 256 colours. The result is hard to distinguish from that of an expensive 24-bit display. Loading of files through Amiga DataTypes (JPEG, BMP etc.) A collection of third-party utilities, including colour fonts, new HP DeskJet printer drivers (up to four inks) and JPEG DataType, which can be automatically installed to your hard disk. Keyboard shortcuts to all user interface gadgets. Most requesters and colour processing functions have been rewritten or otherwise improved. Hundreds of exciting new features requested by users have been added. The package comes with a full manual of more than 180 pages, packed with precious advice, examples and a tutorial chapter. 1 Mbyte RAM, 1 disk drive required; 1 Mbyte of Chip RAM recommended ------------------------------------------------------------------------ Personal Fonts Maker and Printer Driver Modifier main programs, support files and programs, screens, fonts, artwork and documentation, Copyright © 1990-1994 Cloanto Italia sas. All rights reserved. Cloanto Italia sas authorizes reproduction and distribution of such unmodified material as it is stored on the original cover disk for non-profit presentation and testing purposes until July 31, 1994. The More text viewer is Copyright © 1985-1989 Commodore-Amiga Inc., used under license. The Display image viewer was written by Carolyn Scheppner. Executable file decompression modules written by Peter Struijk and Albert J. Brouwer. Amiga and the Commodore-Amiga logo are registered trademarks of Commodore-Amiga Inc. Cloanto and the Cloanto logo are registered trademarks, and Personal Fonts Maker, PFM, Printer Driver Modifier, PDM, FFDL, Personal Paint, PPaint, Personal Write and PWrite are trademarks of Cloanto Italia sas. ColorFont and ColorText are trademarks of Inter/Active Softworks. Epson and ESC/P are registered trademarks of Seiko Epson Corp. Fujitsu is a registered trademark of Fujitsu Ltd. GIF is a trademark of CompuServe Inc., an H&R Block Company. IBM is a registered trademark, and PC and Proprinter are trademarks of International Business Machines Corp. NEC and Pinwriter are registered trademarks of NEC Information Systems. PCX is a trademark of ZSoft Corp. PostScript is a registered trademark of Adobe Systems Inc. Please refer to the user manuals for further information. ------------------------------------------------------------------------ Cloanto Italia sas Tel +39 432 545902 PO Box 118 Fax +39 432 609051 33100 Udine Bbs +39 432 545905 Italy Internet 100145.15@compuserve.com User and dealer inquiries should be addressed to the national distributors. Great Britain: Meridian Software Distribution Ltd. Tel +44 81 5433500 East House Fax +44 81 5432255 East Road Industrial Estate GB - London SW19 1AH North America: Haitex Resources, Inc. Tel +1 803 852-0750 PO Box 20609 Fax +1 803 852-0650 USA - Charleston, SC 29413-0609 Bbs +1 803 852-0650 German Area: Casablanca Multimedia GmbH Tel +49 234 72035 Wiemelhauser Straße 247 a Fax +49 234 72060 D - 44799 Bochum Italy: CTO spa Tel +39 51 753133 Via Piemonte 7/f Fax +39 51 753418 I - 40069 Zola Predosa Italy - Mail Order: Lago snc Tel +39 31 300174 Via Benzi 18 Fax +39 31 300214 I - 22100 Como Sweden: ProComp Tel +46 472 70845 Box 46 Fax +46 472 71680 S - 340 36 Moheda Bbs +46 472 71270 French Area: Adept Marketing Tel +41 21 7022626 Rte. de Renens 1 Fax +41 21 7022629 CH - 1030 Bussigny-prés-Lausanne Greece: Multi-RAK Tel +49 234 9489411 Karnassiotis & Radouniklis GBR Fax +49 234 9489444 Prinz-Regent-Straße 70 D - 44795 Bochum Pacific Rim: Amadeus Computers Tel +61 2 652-2712 34 Tecoma Drive Fax +61 2 652-1515 Glenorie NSW 2157 Australia ------------------------------------------------------------------------ Personal Fonts Maker and Printer Driver Modifier Introduction and Tutorial Both programs can be launched with a double-click on their Workbench icon. In order to fully exploit the disk capacity, the program files have been compressed. On not so fast systems, decompression may slow down the initial loading of the programs. To create decompressed executable files, type the following commands in a Shell window:  PFM:Utilities/Deplode PFM:PFM Destination:PFM PFM:Utilities/Deplode PFM:PDM Destination:PDM It is very easy to explore the programs by choosing from the variety of menus and gadgets. It is recommended to make a backup copy of the disk before experimenting with functions which write data. In both programs, the "Preferences/Language" option can be used to set the user interface language to either English, German or Italian. If you try to paint on the character editing box, and the program responds with a "Function not allowed (Character is OFF)" message flashing on the title bar, first turn that character on by clicking on the On/Off gadget. When you load a font having a different format than the current font format, selecting the Adapt option of the requester which appears will automatically change the program's font description to fit the new font. Fonts use different character sets. The PC character set (the program default) is used by most printers. If you want to edit an Amiga font, load the Amiga (or the NoFilter) character set before importing the Amiga font. If you want to download a font to your printer, load the corresponding printer description file first, and then load a font, as described in the following examples. For a first try, if you have a 24-pin ESC/P (Epson-compatible) printer, double-click on the "ESCPTest.pft" icon, in the "PRT_Fonts" drawer of the cover disk. This should download and print a star-symbol. The remaining part of this file contains step-by-step examples of "real world" applications of the Personal Fonts Maker and Printer Driver Modifier. Of course, the complete manual is much more detailed and fully describes the individual functions and terminology used in the examples. Downloading a Font to the Printer Before the Personal Fonts Maker was developed, Amiga fonts could be printed by text processing software only in graphics mode. This is generally of poorer quality and reduced print speed, compared with the letter quality text mode standards of the printer. Once a font has been loaded, created or modified, it can be downloaded to the printer. Its ability to output the data from any font in the format required by different printers is one of the most interesting features of the Personal Fonts Maker. For this example, the "Andromeda" font will be used. The font will be downloaded as a letter quality, proportionally spaced font. Depending on the printer being used, either the "Andromeda_24" or the "Andromeda_16" font can be used. The first is ideal for 24-pin printers, while the second is more suited for 8/9-pin and 18-pin printers. Before the font is loaded, the correct font format must be specified. This can be done through the "Font Description" requester or by loading an existing parameter file. Only the first four parameters need to be set ("X Max", "Y Max", "X Dpi" and "Y Dpi"). These will allow the program to stretch the font if it does not already fit the printer's format. The font can be loaded using the "Load PFM Font" menu. If a requester appears, informing the user that the selected font has a different format from the current font format, either the "Proceed" or the "Stretch" gadgets of the requester should be selected. The "Proceed" option should be selected only if the current font has a maximum width ("X Max") wider than that of the font being loaded, but the current height is equal to (or slightly higher than) that of the selected font. At this point, the font loaded by the Personal Fonts Maker has the dimensions required by the printer's download format. It is now necessary to select the correct FFDL sequences which will send the font data to the printer. The sequences are loaded automatically when the font parameters are loaded from a file. If the FFDL sequences in the selected parameter file already match the format of the printer, no changes need to be made to the font description. To check whether the current font format works properly on the printer being used, there is no better way than to test it. The two "Printer Test" functions perform a download and a test print. The "Printer Test/Character" function downloads and prints only the current character. This makes it easier to isolate and track down any errors, and will not print too many "garbage" characters if the printer does not interpret the data as a font download. It is very important that the FFDL sequences are set properly for the download to succeed. The following are examples of valid FFDL sequences which could be used to download the font described here. "Prologue": Epson ESC/P (Epson Standard Code for Printers), NEC Pinwriter: ESC \% (0) ESC \x (1) ESC \: NUL NUL NUL NEC Pinwriter Plus: FS \W (1) ESC \% (0) ESC \x (1) ESC \: NUL NUL NUL IBM "Compatibles": ESC \: NUL NUL NUL IBM Proprinter: ESC \I (3) ESC \= (0) (0) Fujitsu DPL24C/DPL24I: ESC \: NUL (0) (0) The "Prologue" selects a ROM (resident) font and copies its characters to the download memory. The NEC Pinwriter Plus printers require the initial "FS \W (1)" sequence (memory-set) in order to select the 8-bit character encoding mode, rather than the 7-bit mode, which would not allow characters whose code is greater than 127 to be downloaded. On some printers one or more DIP switches, or software parameters (memory/soft switch), must be set before the printer's memory can be used for the downloading of characters. In the above examples, the IBM Proprinter is set in the fixed-width letter quality mode. "ON Sequence": Epson ESC/P, NEC Pinwriter and Pinwriter Plus: ESC \& (0) CNUM CNUM (1) XSIZ (1) VDAT IBM "Compatibles": ESC \= (0) CNUM CNUM (1) XSIZ (1) VDAT IBM Proprinter: ESC \= x(1*48+2) (21) CNUM (0) (0) VIDT REPT((46-LENG(VIDT)),NUL) Fujitsu DPL24C/DPL24I: ESC \& (0x10) CNUM CNUM XSIZ VDAT The "ON Sequence" is repeated once for every "On" character in the font, sending the character's code, size and image data to the printer. Each character is downloaded individually, as one or more "Off" characters could interrupt the sequence of "On" characters (unless "Off" characters are sent as well. The "(21)" code in the IBM Proprinter sequence is the identification code for the Letter Quality II font on the IBM 4201/002 printer. Other codes can be used. The code for a draft font on an IBM 4202 or 4201/002 printer model is "(20)". Since the fixed width mode is used in the IBM Proprinter, a "REPT" instruction has been added to convert the characters of the proportionally spaced font to a fixed width, by adding some trailing "NUL" codes. "Epilogue": Epson ESC/P, NEC Pinwriter and Pinwriter Plus, IBM "Compatibles": ESC \% (1) IBM Proprinter: ESC \I (7) Fujitsu DPL24C/DPL24I: ESC \% (5) (0) The "Epilogue" is sent to the printer at the end of the download, activating the print mode in the downloaded font. The sequence for the IBM Proprinter 4201/002 selects the Letter Quality II downloaded font. This sequence is ignored by the 4202 model. The terminating "(7)" code can be replaced with "(4)", "(5)" (not on the 4202 model) and "(6)", to respectively select the draft, 12 CPI FastFont and Letter Quality downloaded font. A "Range" from 32 to 126 (decimal codes) should work on most printers. The widest possible range is 0 to 255. The printer's documentation should be read to verify which characters can be downloaded. Another restriction may be imposed by the available memory. The manual explains how to use the "TextChars" utility if the printer's memory is not sufficient to store all the characters in a font. Once the font format and the FFDL sequences have proven to work properly, the entire font can be downloaded. The "Write Font Data" functions can be used to send the font either directly to the printer, or to a file. Interacting with a Word Processor Word processors can print text in two ways: in text mode or in graphics mode. When the text mode is selected, the program sends a stream of characters and control codes to the driver, which in turn sends the data to the printer. In this mode, the images of the characters to be printed must already be in the printer's memory, either in the ROM, or in the download area. If a font has been downloaded, it can be used by a program printing in text mode. When a program prints in graphics mode, it outputs the entire text as an image. This means that each individual dot which makes up the resulting text must be sent by the word processor. Since such a large amount of data has to be sent (and translated by the driver), this technique is much slower than the text mode. Also, the (poorer) quality of a text printed in graphics mode is usually not comparable with the letter quality text modes built into modern printers. To use a font designed with the Personal Fonts Maker with software which prints the text in graphics mode, the font must be saved in the Amiga format and loaded as an Amiga font by the program which has to print it. This section explains how to use a downloaded font printing in text mode. The "PrintRawFiles" utility can be used to send the font download data stored in a file to the printer, without loading the Personal Fonts Maker. To download such a font, it is sufficient to double click on the file icon. This will automatically execute the PrintRawFiles program. PrintRawFiles can also appear in the Startup-Sequence, from where it could be used to automatically download a font to the printer whenever the system is booted. With most word processors it is possible to download a file without having to use PrintRawFiles. The "Print File" function of Cloanto's Personal Write word processor, for example, allows the user to send any file to the printer, without modifying the file's content (or allowing the printer driver to do so). The "Printer Control File" of the same word processor allows the user to select a file which is to be automatically sent to the printer before each print. Whatever method is used to send the printer download data contained in a file to the printer, it is important to remember that the data must be received by the printer "as is". The Personal Fonts Maker already writes the font download data in the printer's format. Any further processing, by a printer driver or any other software, is likely to make the file unrecognizable by the printer. Once the font has been sent to the printer, either by the Personal Fonts Maker, by PrintRawFiles or by another program, it can be used to print the text. The FFDL sequence associated with the "Epilogue" parameter usually contains the control sequences which instruct the printer to use the downloaded font. If this is not the case, such a command must be sent to the printer by the word processors. Most programs cannot do this, as this function is not supported by the Amiga printer drivers. For this reason, it is important to activate the font by placing the appropriate control codes in the "Epilogue" sequence. Once this command is received by the printer, the program printing the text should not send a command selecting a different font, as this would restore the printer's default ROM font (or another soft font). If the "Printer Test" function of the Personal Fonts Maker seems to work properly, downloading and printing a font, but the same font cannot be used by a word processor, it is likely that the word processor automatically selects a different font at the beginning of the print. If this is the case, the parameters of the word processors should be set so that the program does not automatically set a font of the printer before printing the text. Once a font has been downloaded, the new font can also be selected from the printer's control panel. Some printers can even be programmed to use the downloaded font as the default font at power-up. The solution suggested before, i.e. sending the appropriate font activation codes to select the downloaded font, is the one which works most efficiently on the majority of printers. The manual goes in depth describing potential problems which may be encountered when working with a printer. Starting with an Amiga Font This example shows how an Amiga font can be loaded with the Personal Fonts Maker and converted into a Personal Fonts Maker font ready to be downloaded to a printer. Also in this example, the conversion of a font (in this case the Amiga "Topaz 8" font) into a different format. Before the Amiga font file is loaded, a font format must be specified. When the program starts, default values are assigned to the font format. The font format is used by the Personal Fonts Maker to determine, for example, the width to height ratio. This affects the way a font is displayed. If the "Y Max" parameter is set to a different value from the height of the font being loaded, for example, the Personal Fonts Maker allows the user to stretch the character images to the new size. In this example, the font format parameters should be set as follows: "X Max" to 36, "Y Max" to 24, "X Dpi" to 360 and "Y Dpi" to 180. This format works very well if the font is to be downloaded as a letter quality font to a 24-pin printer. "Y Max" could be set to 16 if the font was to be downloaded to a printer using 8 or 9 pins, which normally prints letter quality text in two passes, and can therefore use fonts whose height is at least 16. In general, multiples of 8 should be assigned to "Y Max" to define a font format used for printer download. Once the desired font format has been determined, an Amiga font can be selected. "Import Amiga Font" displays a font requester listing the names of the different Amiga fonts which are available. A double-click on the "topaz 8 of" gadget will cause the program to load the Amiga "Topaz" font whose height is 8. Since the current font format specifies a font height of 24 (or 16, depending on the printer being used in this example), a requester will appear asking the user how the difference between the font's format and the program's format should be handled. If the "Stretch" option is selected, the program will stretch the image of each character in the "Topaz" font to the new format. The Personal Fonts Maker can work with character sets other than the Amiga set. This makes it possible to design fonts which can be interpreted by programs and printers using different character sets. During loading, the characters of the Amiga font are reordered so that they are placed in the correct positions according to the character set which is being used. This example assumes that the "PC_Usa2" set (the default set) is used. After the load operation is completed, the character editing box will contain an "enlarged" version of one of the characters in the "Topaz" font. Most characters need to be retouched manually by the user, as new details can be added to the characters thanks to the higher resolution. These changes can easily be made by using the mouse to edit the characters directly. A macro like "SetSpcKrn" can be executed on all characters in the font with the "Controlled Execution" function. This will quickly set the "Space" and "Kerning" parameters of all the characters to a standard value. Finally, the font can be saved. The "Save PFM Font" function allows the user to specify the device, drawer and name of the file to be saved. A suffix can be appended immediately after the font's name. A correct file name for the font of this example could be "Topaz_24.fnt". A Simple Macro This example shows how easy it is to record a macro which places a shadow under a character image. The same macro is already included with the Personal Fonts Maker package. To record a macro it is sufficient to execute the operations manually while the record mode is active. A character should be displayed in the editing box, so that the result of each change can be verified immediately. In this example, an 'A' character of the "Gemini_24" font is used to record the macro. In practice, it does not matter which character is used, as the macro is independent from the character and the font on which it was recorded. Before the recording of the macro is started, all special modes like the "OR" mode, the "Brush" mode or the "Define Brush" mode should be disabled. The position of the brush handle should be set to "Upper Left". The current character must be "On". The coordinates should be displayed on the title bar in the "Start 0:0" mode. The "Copy to Buffer" function should be selected, so that a copy of the original character image is always available. This can be useful if the image is to be restored after a mistake is made, or before the macro is re-executed on the entire font (including the current character, which would be "shadowed" a second time). To start the macro record mode, the "Start Record" command must be selected. In the macro requester, which appears automatically, the 'A' item in the list box (or any other one) should be selected with the mouse, to indicate that the macro which will be recorded should be assigned to the key of the keyboard. The name of the macro, "Shadow" in this example, must be written in the string gadget at the bottom of the requester. After the "Proceed" gadget is selected, the macro record mode begins. The first instruction to be recorded is the selection of the entire character as a brush. To do this, the "brush definition" mode must be activated, by selecting the "Define Brush" gadget. To mark the brush rectangle, the left mouse button must be pressed when the mouse pointer is over the top left dot in the character editing box. The mouse must then be moved (with the left button still pressed) until the pointer is both to the right of the character editing box and below it. The mouse button must not be released when the mouse pointer is over the bottom right dot of the box. The mouse button should be released only when the highlighted region includes the entire character image and the mouse pointer is beyond the bottom right corner of the character editing box. This ensures that the macro records a command like "The entire character should be defined as a brush", rather than "Mark brush from 0:0 to 26:23". This latter command would leave out parts of characters larger than 27 by 24. The definition of the brush automatically activates the "Draw with Brush" mode. The "OR" mode must also be activated, by selecting the "OR" gadget. A shadow will make the character wider. To make room for the shadow of this example the right arrow gadget associated with "X Size" must be pressed twice. This will add two columns to the character width. At this point, the brush can be used to draw a shadow to the right of the character. To do this, the mouse pointer must be moved until the coordinate box on the title bar displays "2:2". In this position, the  left mouse button should be pressed and released. The shadow has been drawn. Now the dots between the shadow and the character need to be cleared, otherwise the shadow cannot be distinguished from the character. To do this, the brush outline must be moved by one dot up and to the left, so that the coordinates on the title bar are "1:1". The right mouse button must be pressed and released in this position to clear the dots. Finally, the original character must be restored, as the previous operation has cleared most of the character image. This can be done by pressing and releasing the left mouse button when the brush coordinates are "0:0". To terminate the macro gracefully, the "OR" mode and the "Draw with Brush" mode should be terminated. This ensures that after the macro is executed the normal environment is restored. The "End Record" function must be selected to end the recording of the macro. The macro can now be tested. To do this on the same character, the "Paste from Buffer" option can be used to restore the original character image, if it was copied to the buffer before the recording of the macro began. The "Execute Macro" function can be used to execute the macro on the current character, while "Controlled Execution" will repeat the macro on all "On" characters in the font, or on another user-defined range. The "Examine Macro" and "Step Execution" options can be selected for a better understanding of the macro. The "Save Macro" function will save the macro to a file, ready to be loaded whenever necessary. In this example, the "OR" mode and the "Brush Definition" mode are disabled before the start of the macro recording and activated during the recording. This is absolutely correct and makes the macro more readable and elegant, since all the commands necessary for the macro to work properly are explicitly executed during the recording of the macro. It is, however, possible to create a functionally equivalent macro, with two commands less. This can be done by activating the "OR" mode and the "Brush Definition" mode only before the start of the recording. This can be done because the Personal Fonts Maker always places at the beginning of each macro a set of commands which describe the initial editing environment. Patching a Printer Driver Existing Amiga printer drivers can sometimes be improved if they are modified with the Printer Driver Modifier. For example, unnecessarily complex control sequences are used by the Epson X, Epson Q, NEC Pinwriter and other printer drivers to print a simple '½' (one half) character. Rather than overlapping a '1' (one), a '-' and a '2' sign moving the printer head back and forth, it is possible to use the '½' character which is already built into most printers. This example shows how to replace the existing sequence with the code associated with the '½' character in the IBM PC set, shared by the printers mentioned above. Printer drivers are stored in the "Printers" drawer, inside the "Devs" (or "Storage") drawer of the Workbench and Extras disks. The Extras disk usually contains all printer drivers. If the Printer Driver Modifier is used for the first time, it is better to use a copy of the disk on which the drivers are stored before this example is repeated. This will prevent any undesired changes being made to the drivers. Once the Printer Driver Modifier has been loaded, the printer driver must be loaded. To do this, the "Load Driver" function must be selected. In the file requester displayed by this function, the file containing the driver can be chosen from the names displayed in the list box. Among those names, "EpsonQ", "EpsonX" and "Nec_Pinwriter" would all work fine for this example. The driver is loaded immediately after the "Proceed" gadget of the file requester is selected. To access the sequence associated with the '½' character, the "Section/Character" option must be selected. The "Number" string gadget must be activated, the value contained in the gadget deleted with the and keys, and the keys <1>, <8>, <9> and typed. This will display the control sequence associated with the character whose Amiga code is 189, which is '½', in the editing gadget. The editing gadget should be selected with the mouse, and its entire content deleted (pressing while is held down, or using the and keys). The FFDL constant "(171)" (without quotes, but with the parentheses) should be written in the editing gadget. If the printer driver is saved, the decimal code 171 will be sent to the printer whenever a program using that printer driver prints a '½' character. To save the printer driver, the "Save Driver" function must be used. It is always a good practice to have a copy of the driver being modified available, in case the result of the changes needs to be reversed. Also, the modified driver should be saved with a name different from that of the original driver. In this way, the Printer Driver Modifier will be able to identify it as a variant of an original driver and issue the "Internal Name Mismatch" message when that driver is loaded again.