ΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝ Turbo Font v5.0α By CHAoS PRoDUCTiONS Coding :- Font Make v5.0 ( SVGA and MCGA ) - Evan Jones SVGA routines - David Webb Turbo Font v5.0 unit - Evan Jones .TFF file format - Evan Jones ΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝ Turbo Font v5.0 :- Turbon Font v5.0 is a Pascal unit that provides programmers with the power to use custom fonts in programs. This version allows the use of SVGA modes, 640x480x256, 800x600x256, 1024x768x256, to add more support for game and demo developers. It provides an easy-to-use interface. The procedures are easy to understand and are simple to use. By rewriting the unit I have increased the speed that fonts are loaded and written to the screen. For machines that do not have VESA support I have included the old MCGA, 320x200x256, mode. A lot of work has gone into this project and we hope that fellow programmers will appreaciate what we have done. Because this unit is designed for programmers to use no registration or any other form of money is required to use it. The source code however is available from us at $25 Australian. Included with this is the source code for the unit, the NEW ( colour ) .TFF file format, GFXLib source code and several example programs on using the files without the unit. Also if any one has anything to contibute to the project we would like to hear from you. Comments, Ideas and gereral chatter are encouraged. We'd like to hear you ideas on this unit and know if people are using it. Any bugs or things that aren't working can also be reported to us. Although we can't fix every problem. We thank all of you who use this unit because it was a lot of work for us and we like to know that what we are producing IS actually being used. New For v5.0 :- We have rewritten the unit completely ( the "We" is because my co-developer David Webb has decided to help me out on this version ) mainly to speed it up. Although we still have to speed up the colour font loading. It needs to be faster. SVGA modes :-). We now have support for SVGA modes and have added routines for switching into the SVGA modes. The MCGA 320x200x256 mode is still supported so for those of you who can't or don't want to use SVGA modes you can still use the old mode. Font Make v5.0 now a NEW-LOOK version of the old MCGA one. It has more features than the old one but it's not in SVGA because we couldn't get the mouse working properly. Future Versions :- Hmm.. well at the momment I'm not planning on a new release as such. I will release updates on v5.0 but these will only be minor things like bug fixes and faster routines. No Mode-X support. I'm not planning on any Mode-X stuff so for those of you who want support for it I suggest that you buy the source for the unit and write the routines to do it yourself. Functions and Procedures :- Function LoadFont ( FName : String ) : ByteBool; Loads a user font into the buffer. You must load a font before using WriteF. If the font was loaded it returns TRUE. Function LoadFontData ( FPtr : Pointer ) : ByteBool; Loads a font from and object file into the buffer. See LINK.PAS. Procedure WriteF ( DBG : ByteBool; Str : String; X, Y : Integer; FG, BG : Byte ); Writes a string to the screen. The top left corner of the font is displayed at the X, Y cordinate. If DBG is TRUE then WriteF will draw the background colour in the pixels that are set to 0. FG, BG are the foreground and background colours. The foreground colour is only used in mono fonts. Function SetSVGAMode ( Mode : ModeStruct ) : ByteBool; Sets the current video mode from one of the predefined video modes. Returns TRUE if the video mode was changed. See the avalible modes below. Procedure SetFontPal ( FntPal : FontPal; Num : Byte ); Loads the custom palette in to the DAC registers. Num is the number of colours to change. FntPal is usualy the variable FPal which contains the palette when the font is loaded. Types, Variables and Constants :- Type FontPak = Record FNTFlag : String[3]; FontLabel : String[22]; ColFlag : Byte; End; FontPal = Array[1..48] Of Byte; This type contains info on the current font loaded. DEFAULTVIDEO : ModeStruct = ( 3, 0, 0 ); MCGA320X200X256 : ModeStruct = ( $13, 320, 200 ); SVGA640X400X256 : ModeStruct = ( $100, 640, 400 ); SVGA640X480X256 : ModeStruct = ( $101, 640, 480 ); SVGA800X600X256 : ModeStruct = ( $103, 800, 600 ); SVGA1024X768X256 : ModeStruct = ( $105, 1024, 768 ); SVGA1280X1024X256 : ModeStruct = ( $107, 1280, 1024 ); The video modes useable by calling SetSVGAMode. FPak : FontPak; FontSet : FontSetT; The variable containg the info on the current font. Last Words :- I hope that this unit will help you. I would like to ask that our names be mentioned in you programs if you use this unit but of course this will never happen. Greetz :- Skaven / FC Necr”s / PM,iCE,KLF Sonic PC Purple Motion / FC Contact Info :- Evan Jones Fidonet : "Evan Jones" at 3:620/262 E-Mail : Evan.Jones@Millenium.Cbr.Fidonet.Org David Webb Fidonet : "David Webb" at 3:620/262 ΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝ EOF - Written By Evan Jones