home *** CD-ROM | disk | FTP | other *** search
- GFNAMES.TXT for GFONTS version 3.0 (September, 1990)
-
- A list of all the subprograms and assembly language calls with
- GFONTS 3.0
-
- The following list give the routine name and calling parameters
- along with a brief description.
-
- Note that unless otherwise indicated, all the calls have the
- following 6 parameters:
-
- (a$, x%, y%, xs%, ys%, clr%)
-
- where a$ is the string to print, x% is the x starting position, y%
- is the y starting position, xs% is the x stepping (distance) between
- the characters horizontally, ys% is the y stepping (distance)
- between the characters (vertically), and clr% is the color number (0
- to 15.)
-
- ---------------------------------------------------------------------------
- GFTBL (EGAsegment%, EGAoffset%, VGAsegment%, VGAoffset%)
-
- Call GFTBL to return the starting addresses of the EGA and VGA ROM
- character sets (the "universal" 8x8 set is at a standard address in
- all IBM-compatible PC's.)
- ---------------------------------------------------------------------------
-
- The thirteen ASSEMBLY calls: All of the assembly routines require
- an EGA or VGA and use the EGA BIOS for direct screen writes.
-
- EGA8x8 - assembly "universal" 8x8 characters.
- EGA8x16 - assembly double-high "universal" 8x8 set.
- EGA8x14 - assembly EGA set 8x14 characters.
- EGA8x28 - assembly EGA double-high.
- EGA16x14 - assembly EGA ROM set double-wide.
- EGA16x16 - assembly "universal" ROM set double-wide.
- EGA16x24 - assembly EGA ROM set double-wide, double-high.
- EGA16x36 - assembly EGA ROM set double-wide, double-high.
-
- The VGA... assembly fonts can use either the VGA ROM character set
- if you have a VGA, or a BLOADED 4k font file. You have to pass the
- segment and offset of the BLOADED file (using VARSEG and VARPTR) or
- the GFTBL variables (if using VGA ROM set.)
-
- VGA8x16 - VGA ROM set or BLOAD 4k font file.
- VGA8x32 - same as above except double-high.
- VGA16x16 - VGA ROM set double-wide.
- VGA16x32 - same as above only double-high.
-
- USER24 (Useg%, Uoff%, a$, x%, y%, xs%, ys%, clr%)
- 16x24 pixel characters.
- You must pass the segment and offset of the 12k font file you created
- with BIGFONT.EXE and BLOADED into QuickBASIC.
-
- Three of the assembly fonts (EGA16x24, EGA16x36 and VGA 16x32) only
- display alternate scan lines (making the font look like a raster, or
- striped.) To make solid characters you have to call the routines
- twice (or three times in the case of EGA16x36.) While some folks
- might find this a bother, this method allows striped messages, solid
- color messages and two (or three) color messages all with one
- routine! And they are very fast, to boot.
-
- Also, please note that the 16x24 pixel fonts you design with
- BIGFONT.EXE do not have to use all the available pixels. Very small
- fonts can be created (someone sent me a 3x5 pixel font made with
- BIGFONT - cute and tiny!) and you can also create VERTICAL versions
- up to 16 pixels "tall" (or backwards for computers south of the
- equator, or upside down for those who compute while doing yoga.)
-
- -----------------------------------------------------------------------------
- SUBPROGRAMS found in $GFONTS.BAS
-
- For all the "GFV..." subprograms you can use either the VGA BIOS ROM
- character set (if you have a VGA and call GFTBL) or a 4k font file
- that has been BLOADED into your QB program (and you equate the
- shared variables, VGAseg and VGAoffset with the address of the
- BLOADed file, using VARSEG and VARPTR.)
-
- The subprograms are arranged roughly by smallest to largest (but see
- Fill and Erector at the end for variable sizes.)
-
- --------------------------
- Vertical versions of the three basic fonts: (note that xstart and
- ystart are the bottom-left pixel of the character)
-
- GF8x8vert - universal ROM set
- GFE8x12vert - EGA ROM set
- GFV8x14vert - VGA ROM set (or 4k file)
-
- ------------------------------------
- Universal ROM 8x8 set twice as tall:
-
- GF8x16bold - a "thick" sort of bold
- GF8x16ital - italics
- GF8x16vert - vertical
-
- -------------------------------------
- Universal ROM 8x8 three times as tall:
-
- GF8x24
-
- ---------------------------
- EGA 8x14 ROM twice as tall:
-
- GFE8x24stripe (a$, x%, y%, xs%, ys%, clr1%, clr2%)
- stripe is 2 colors allowing "mixed" colors
- GFE8x24ital - italics
- GFE8x24vert - vertical
-
- -----------------------------------------------------
- VGA 8x14 or 4k BLOADED font file (8x16) twice as tall:
-
- GFV8x28
- GFV12x32box (a$, x%, y%, xs%, ys%, clr1%, clr2%)
- -has 2 colors and draws a box around character
- GFV8x28bent (a$, x%, y%, xs%, ys%, clr1%, clr2%)
- -has 2 colors and sort of backwards italic
- GFV8x28ital - italic
- GFV8x28vert - vertical
-
- ------------------------------------
- EGA 8x12 ROM set three times as tall:
-
- GFE8x36
- GFE8x36vert - vertical
-
- --------------------------------------
- VGA 8x14 ROM or 4k BLOADed file (8x16):
-
- GFV8x42
- GFV8x42vert - vertical
-
- --------------------------------------
- The three basic ROM sets twice as wide 2 X wide
-
- GF16x8 - universal 8x8 ROM
- GFE16x12 - EGA ROM
- GFV16x14 - VGA or 4k BLOAD file
-
- -----------------------------------------------
- GF16x16 - Universal ROM set, 2 times wide and 2 times tall
-
- ------------------------------------------------
- Universal ROM set, 2 times wide and 3 times tall
-
- GF16x24
- GF16x24ital - italic
-
- ---------------------------------------
- EGA ROM, 2 times wide and 2 times tall
-
- GFE16x24
- GFE16x24a (a$, x%, y%, xs%, ys%, clr1%, clr2%)
- - has 2 colors in broad horizontal stripes
- GFE16x24ital - italic
-
- -------------------------------------------------
- VGA ROM or 4k BLOAD 2 times wide and 2 times tall
-
- GFV16x28
- GFV16x28a (a$, x%, y%, xs%, ys%, clr1%, clr2%) - 2 colors in broad stripes
- GFV16x28ital
-
- ---------------------
- EGA 2 wide by 3 tall:
-
- GFE16x36
- GFE16x36bent - sort of backwards italic
- GFE16x36ital - italic
-
- ------------------------------
- VGA or BLOAD 2 wide by 3 tall:
-
- GFV16x42
- GFV16x42bent
- GFV16x42ital
- GFV16x42raster
-
- ----------------------------------------
- The SHADOW fonts for the three ROM sets:
- The "shadows" have 2 colors and are thicker than normal.
- clr%1 is background (I think)
-
- GF17x25shadow (a$, x%, y%, xs%, ys%, clr1%, clr2%) - 8x8 ROM set
- GFE24x36shadow (a$, x%, y%, xs%, ys%, clr1%, clr2%) - EGA set
- GFV24x42shadow (a$, x%, y%, xs%, ys%, clr1%, clr2%) - VGA or 4k BLOAD
-
- --------------------------------------
- "Stacked dots" for the three ROM sets:
- The "dots" have 3 colors, which if carefully chosen, make the font appear
- 3-D. The PSET statement is used for these.
-
- GF21x27dots (a$, x%, y%, xs%, ys%, clr1%, clr2%, clr3%) - 8x8 ROM set
- GFE24x36dots (a$, x%, y%, xs%, ys%, clr1%, clr2%, clr3%) - EGA set
- GFV24x42dots (a$, x%, y%, xs%, ys%, clr1%, clr2%, clr3%) - VGA or 4k BLOAD
-
- ------------------------------------
- "Tile" fonts for the three ROM sets:
- Tiles, Fills, and Erectors are my personal favorites
-
- GF18x19tile - 8x8 ROM set 2 wide by 2 tall - simple and nice
- GFE18x28tile (a$, x%, y%, xs%, ys%, clr1%, clr2%, clr3%)
- - EGA ROM, 2 wide by 2 tall, example for custom tile colors
- GFV18x32tile - VGA or 4k BLOAD 2 wide by 2 tall (some BLOAD's don't fit so
- well)
- GF26x27tile - 8x8 ROM 3 wide by 3 tall
- GFE27x27tile - EGA ROM 3 wide by 2 tall
- GFV27x32tile - VGA ROM or 4k BLOAD, 3 wide by 2 tall
- GFE27x41tile - EGA ROM 3 wide by 4 tall
- GFV27x45tile - VGA ROM or 4k BLOAD, 3 wide by 4 tall
-
- ---------------------------------------------------
- "Erector Set" fonts for EGA and VGA (or 4k BLOAD):
- Erectors have 2 colors, one for vertical and horizontal lines and
- the other for diagonal lines. The xsize and ysize parameters are a
- scale multiplier, that is if xsize = 2 and ysize = 3 then the font
- will be 2 times wider than the ROM size (which is always 8) and will
- be 3 times taller than the ROM size.
-
- GFEerector (a$, x%, y%, xs%, ys%, clr1%, clr2%, xsize%, ysize%) - EGA ROM
- GFVerector (a$, x%, y%, xs%, ys%, clr1%, clr2%, xsize%, ysize%) - VGA or 4k
-
- -------------------------------------------------
- "Filled" fonts for the EGA and VGA (or 4k BLOAD):
- The "fills" have x and y multiply size parameters like the Erector
- Set fonts above. They are useful for very large characters because
- they add diagonal fill areas to what would otherwise be very blocky
- fonts. They also look nice as small characters because of the
- rounded corners.
-
- GFEfill (a$, x%, y%, xs%, ys%, clr%, xsize%, ysize%) - EGA
- GFVfill (a$, x%, y%, xs%, ys%, clr%, xsize%, ysize%) - VGA or 4k BLOAD
-
- -------------------------------------------
- "Circle" fonts for EGA and VGA (or 4k BLOAD):
- These use the CIRCLE statement and have 2 colors, for border and fill color.
- They are rather slow, but are nice if you intend to "capture" a
- screen for later use.
-
- GFE48x72circ (a$, x%, y%, xs%, ys%, clr1%, clr2%)
- GFV48x84circ (a$, x%, y%, xs%, ys%, clr1%, clr2%)
-
- ---------------------------------------------------
- GFRainbow is a multicolored raster font. Clr1% is the "background"
- color (for the bars that don't change color), while clr2% is the
- beginning palette number. If you repeatedly call this font it will
- rotate the colors - a very pleasing effect.
-
- GFRainbow (a$, x%, y%, xs%, ys%, clr1%, clr2%)
-
- ------------------------------------------------------------------------
- That's all, folks. If you have a VGA and BLOAD two 12k font files
- for USER24 and four 4k font files for the BASIC "GFV..." and
- assembly "VGA..." fonts, and use 6 size combinations for Fill and
- Erector, you would have over 200 fonts at your fingertips (25 of
- them using assembly language!)
-
- Please remember that ALL source code is included and you can modify
- these fonts to your heart's content. (I have even experimented with
- 16x24 fonts using 24 colors in 640x480 256-color mode. They work!)
-
- Happy Programming....
-