MAKEFONT/readme.txt
27-Jul-1990

Files Included:
~~~~~~~~~~~~~~~

README.TXT                    The file you are reading
MAKEFONT.EXE                  The program that creates Windows .FNT files
FONTRES.ASM                   Dummy ASM file required to make a .FON
FONTRES.OBJ                   For those that do not have MASM

Revision History:
~~~~~~~~~~~~~~~~~

v1.01    A very embarrased author fixes a *MAJOR* bug in this release that
         made version 1.00 absolutely unusable.  One of those last minute
         changes that was *NEVER* tested.  Like I said, very embarrassed.

v1.00    Version 1.00 was the first version released.  It had no copyright
         notice or version indication.

The Problem:
~~~~~~~~~~~~

I am still trying to figure out why Microsoft chose to use an 8x12 font
for "DOS Windows" in Windows 3.0 386 enhanced mode.  An 8x14 font was used
for the IBM EGA (350/14==25), and an 8x16 font was used for the IBM VGA
(400/16==25).  Now we jump up into graphics mode on the VGA (640x480)
and we are using an 8x12 font!  I don't understand.

Furthermore, I am using a Video Seven VRAM board, which can do up to
800x600 with my video monitor (a NEC 3D).  An 8x12 character set is
***VERY**** hard to read at a resolution like this.  If you are also
running at 800x600, the 8x16 font really helps!


The Solution:
~~~~~~~~~~~~~

MAKEFONT is a program that will create Windows font files from those that
are in your video card's ROM.  Well, almost.  To create fonts that are
really usable for Windows 3.0, you will have to find somebody that has
a suitable linker, MASM (optional), and the resource compiler. Generally
these folks are the same that have a version of the Microsoft C compiler
and the Windows SDK.

NOTE: The linker included with C6 cannot be used since it marks the
      .EXE in error if all segments linked are zero length.  The
      Segmented Executable Linker included with C 5.1 does not have
      this problem.

MAKEFONT will create up to 3 different fonts, each of which is contained
in the VGA's ROM.  The syntax for makefont is:

   MAKEFONT <fontnumber> <fontname> <filename>

The <fontnumber> is either 1, 2, or 3, which correspond to the 8x8, 8x14
and 8x16 fonts encoded in the VGA ROM.  If you have an EGA, only fonts
1 and 2 may be used.

The <fontname> parameter contains the name of the module as known to
windows.  If you want to replace an existing font with your own font,
you should use the same name as the existing font does.  Use the EXEHDR
utility included with C 6.0 to determine this name.  Otherwise, the
fontname will probably be the same as the <filename>.

The <filename> parameter should contain the base name of the output
file name(s) desired.  The MAKEFONT program creates four files that,
their file names based on <filename> as follows:

<filename>.fnt    -     Windows font resource file
<filename>.def    -     Module definition file
<filename>.rc     -     Resource compiler script file
<filename>.mak    -     Microsoft MAKE or NMAKE makefile

A condensed form of this documentation can be obtained by typing
"MAKEFONT" at the DOS prompt.

When the make file is run (with either "MAKE <filename>.mak" or
NMAKE /f <filename>.mak", the resulting output will be a font file
usable under Windows 3.0, called <filename>.fon.


Why:
~~~~

Q. Why did I not create the .FON directly?

A. One, I didn't feel like it.  Two, I thought it might be necessary
   for some devices to change things in the DESCRIPTION line.  Since
   you have an editable .DEF file after MAKEFONT runs, this is
   possible.  This feature may, however, be supplied in a future
   version of MAKEFONT.


Q. Why did I not include the fonts generated from my machine?

A. The ROMs in most machines are copyrighted.  This includes such things
   as fonts embedded in them.  I could not give an individual a copy
   of any of the fonts from my machine, unless that person also had
   the same ROM in their machine.


Examples:
~~~~~~~~~

To make an 8x16 font usable as the OEM font under Windows 3.0:

makefont 3 OEMFONTS vga8x16
make vga8x16.mak
makefont 3 EGA80WOA vga80woa
make vga80woa.mak

Place the vga8x16.fon and vga80woa.fon files in your "windows\system"
directory.  Now change the "oemfonts.fon=" line in your "system.ini" to read:

oemfonts.fon=vga8x16.fon

If you want this font to be used in DOS windows, change or add the following
line in the [386Enh] section of your "system.ini" file:

ega80woa.fon=vga80woa.fon

The fonts generated by the MAKEFONT program can also be installed as
Windows GDI fonts, through the Control Panel.  There are probably very
few printers that could utilize them, but you could use them in Paint,
and Terminal, for example.


Contacts:
~~~~~~~~~

If you have any questions about MAKEFONT, or the procedures for changing
fonts, I can be reached at the following addresses:

Dean D. McCrory
23323 - 61st Ave. S., #AA-104
Kent, WA  98032
(206) 859-9730

GEnie:         D.MCCRORY
CompuServe:    74606,525

Suggestions as well as contributions are always appreciated.


Legalities:
~~~~~~~~~~~

Simply put, the author, Dean D. McCrory, assumes no liability for any
damage caused by the use or misuse of the program MAKEFONT.


MAKEFONT/readme.txt
