Font Editor v3.0 ~~~~~~~~~~~~~~~~ Copyright 1992,1993 S.Griffiths, All Rights Reserved Introduction ~~~~~~~~~~~~ This is a font editor to edit the VGA font (yep, a REALLY useful piece of software !). Once a font has been created, a TSR program or a Device Driver can be created to allow the font to be loaded and remain resident for other programs. Font Editor is definitely not crippled in anyway, and you only have to put up with a shareware window poping up when its first loaded. The Device driver and TSR that can be created only require an mere 4K. This program is shareware and you are encouraged to pass it along to others. If you find the font editor useful (you never know, it could happen) then please send an registration fee of a mere $20 (N.Z.) and you will get a copy of the registered version and it will allow me to have a hot meal. Your comments and suggestions are most welcome. As well as the latest version the registered version includes the source code for the TSR (A86 Assembler source), the source code to the device driver (TASM Assembler) and source example code for using your designed fonts in Pascal, C, and Assembler. DISCLAIMER OF WARRANTY ~~~~~~~~~~~~~~~~~~~~~~ THIS SOFTWARE AND MANUAL ARE SUPPLIED "AS IS". THE AUTHOR HEREBY DISCLAIMS ALL WARRANTIES RELATING TO THIS SOFTWARE AND ITS DOCUMENTATION FILE, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO DAMAGE TO HARDWARE, SOFTWARE AND/OR DATA FROM USE OF THIS PRODUCT. IN NO EVENT WILL THE AUTHOR OF THIS SOFTWARE BE LIABLE TO YOU OR ANY OTHER PARTY FOR ANY DAMAGES. YOUR USE OF THIS SOFTWARE INDICATES THAT YOU HAVE READ AND AGREE TO THESE AND OTHER TERMS INCLUDED IN THIS DOCUMENTATION FILE. DUE TO THE NATURE OF EVOLVING PROGRAMMING AND THE VARIOUS HARDWARE AND SOFTWARE ENVIRONMENTS IN WHICH THIS SOFTWARE MAY BE USED, IT IS UNDERSTOOD THAT OCCASIONAL "BUGS" OR UNFITNESS MAY ARISE. THE USER SHOULD ALWAYS TEST THIS SOFTWARE THOROUGHLY WITH NON-CRITICAL DATA BEFORE RELYING ON IT. LICENSE ~~~~~~~ FEDITOR is distributed as shareware. This means that you are granted a limited license to use it for a period of 30 days. If you find it useful and decide to continue using it after the trial period, registration is required. FEDITOR is neither free software nor is it in the public domain. The software and its documentation, this file, are property of the author and may not be sold without written permission from the author. Registered users will be granted a just-like-a-book license which means a registered version of the software can be used by more than one person and can be moved from one computer to another so long as there is NO POSSIBILITY of it being used by two different persons on two different computers at the same time, just like a book can not be read by two different persons in two different places at the same time. A dealer license allows you distribute as many copies of FEDITOR as you like, to whomever you please, provided no charge is made and the following distribution terms are met. TERMS OF DISTRIBUTION ~~~~~~~~~~~~~~~~~~~~~ Redistribution of FEDITOR must include the software, its documentation file, and all supplemental files as a single unit without any modification AND subject to the following conditions: 1.Any individual is welcome to make copies for his/her friends and/or colleagues if NO FEE is charged. 2.Electronic bulletin boards, whether they charge or do not charge their users subscription fee, are welcome to post the program for down loading as long as they do not charge any fee in particular for the distribution of FEDITOR. 3.Non-commercial user groups and computer clubs may distribute the program to their members if only a small distribution fee charged. 4.Disk vendors approved by the Association of Shareware Professionals or disk vendors who explain the concept of shareware in their ads that quote a price may distribute the shareware version of FEDITOR. 5.Other commercial enterprises wishing to distribute FEDITOR either alone or in combination with other hardware, software, books or materials must obtain permission in writing from the author. HOW TO REGISTER ~~~~~~~~~~~~~~~ Please read this section before filling out the order form. 1. Read the License information (above) 2. Foreign order. Payment in the following forms is accepted: A. Cash (Please note that the author cannot be responsible for any loss in the mail) B. Bank check. C. International money order issued by banks, etc... To compensate the inconvenience of currency exchange, foreign users are charged the same amount for shipping and handling as N.Z. users. Using the Font Editor ~~~~~~~~~~~~~~~~~~~~~ The file name of the font to edit can be specified on the command line, otherwise the system font is used. To create a new font file specify the file name and include a /S on the command line to get the system VGA font. Once the program is loaded there are three main windows: the current character being edited, the available ASCII characters, and the details about the current character. To move between the editing window and the ASCII chart use [TAB]. To indicate which window is active the border will change to a double line in the active window. The arrow keys will move the highlite marker about. To change a pixel (while in the character window) press [SPACE], and to select a new character (while in the ASCII chart screen) press [ENTER]. While moving about the ASCII chart window each characters ASCII value is displayed in decimal, hex and binary. Edit Keys ~~~~~~~~~ F1 - Display help screen F2 - Save font file to disk (fnt), this over writes the existing file, which is displayed at the bottom of the screen. No backup is made. F3 - Erase current character (just blank it out). Shift+F3 - Fill current character (making it a solid block). Ctrl+F3 - Toggle current character, this will switch the pixels around, making the character go into a reverse mode. F4 - Create a device driver for the current font, with the same name as the current font. The device driver has the extension SYS, to be loaded from the CONFIG.SYS file with the DEVICE= command. F5 - As above but with the extension COM. This TSR can be loaded from DOS to switch to the new font. Ctrl+F5 - Create TSR without initialising font, this does the same as the above option, but the font isn't turned on straight away. Once the VGA mode is reset the font will be activated. F6 - This creates a file with the extension PAS, which is which is suitable for importing into pascal programs. F7 - As above, but the format is for C programs, with the extension being C. F8 - As [F6] but the extension will be ASM, and is suitable for most assemblers. F9 - This replaces the current character, whether in the ASCII window or editing window with the system font. Shift+F9 - Same as above but it gets all the system characters. Ctrl+F9 - Same as [F9] but uses the alternative font. If no alternative font has been loaded then this can't be done. F10 - This displays a window of .fnt files. The window display can be toggled by pressing [SPACE]. Select the file you wish to load with [ENTER]. Ctrl+F10 - This loads an alternative font file, but the font won't be displayed, and can be accessed with the [Ctrl-F9] option. C - Copy character to buffer, this can only be done while in the editing window. P - Paste character from buffer, if no character has been previously copied then the pasted character will be blank or garbage. H - Flip the current character horizontally. V - Flip the current character vertically. Using Shift+Arrow keys while in the edit window will scroll the current character about the box in the various directions. If the program is started with no parameters the system font will be used and its file name will be default.fnt. A small screen flicker will occur when changing a fonts pixel - this is because of the interrupt updating the memory, depending on your video card the degree of flicker might vary. Key summary: ~~~~~~~~~~~~ F1 - This Screen F2 - Save font file to disk (fnt) F3 - Erase current character Shift+F3 - Fill current character Ctrl+F3 - Toggle current character F4 - Create Device Driver for current font F5 - Create TSR for current font Ctrl+F5 - Create TSR without initialising font F6 - Create Pascal header file (pas) F7 - Create C header file (c) F8 - Create Assembler header file (asm) F9 - Get system character (for current character) Shift+F9 - Get complete system font Ctrl+F9 - Get character from alternative font F10 - Load font file (fnt) Ctrl+F10 - Load alternative font ESC - Exit to DOS C - Copy character to buffer P - Paste character from buffer H - Flip character horizontally. V - Flip character vertically. Shift+Arrow keys - Scroll character around the edit window Other Stuff ~~~~~~~~~~~ The file format is simply 16 bytes for each character, which is made up from the bit pattern in binary. Each font file should always be 4096 bytes in size, and each character has 16 bytes. The headers that can be created are for including into your own programs if you want to customise the font, the assembler code might need changing to meet your requirements. The TSR and device driver will prevent the font reverting back to the original VGA card font by installing itself on interrupt 10, although one or two programs will still get rid of it, I have only found two :- 'Carbon Copy', and 'More Fonts', however I am sure there others. Some programs will lose the font when switching to and from different graphics/text modes, but it usually gets restored when the program is exited. The TSR & Device Driver only requires a modest bit of memory (about 4k), and can be loaded high with no problems, I haven`t had it cause any conflicts with anything (yet !). Thanks to Gary Anderson for helping me with the initial TSR and the system font.