
    Chess Font Diagram (v1.0) - Copyright 2000 Alan Hickey
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    Program to create text files (and HTML files) to record the
    position of a chess game using some of the available chess
    TrueType fonts.

    I hope you find this Freeware program useful.
    If you like it, send me an Email.
    If you don't like it, send me an Email.
    If you find any bugs, send me an Email.
    If you have any suggestions, send me an Email.
    {ifend}
    My Email addresses are as follows:
                    Alan_Hickey_00@hotmail.com
                    AlanH@onyxnet.co.uk
                    AlanH@emirates.net.ae


    Disclaimer
    ==========
    This software is provided free - as is. I take no responsibility
    for any problems you may have with it. It works fine on my
    machine, but that doesn't mean it'll work on anyone else's.
    By using this Freeware you accept this risk.


    Distribution
    ============
    You may distribute this software freely, as long as it is
    distributed in its original ZIP file, containing this text file.


    Installation
    ============
    Couldn't be easier. Just make a new folder/directory anywhere you
    like and unzip the files to there.


    Files
    =====
    There are only three:
                    ChessFnt.EXE  -  The program.
                    Sample.BRD    -  A saved game sample.
                    ReadMe.TXT    -  This file.

    After you have run the program once, a further file is created
    called ChessFnt.INI which will contain your chosen settings.


    Requirements
    ============
    Windows 9x. The program does work in Windows 3.1x, but some of
    the screen elements will not display exactly as I designed them.

    The Open and Save dialogs are Windows 3.1x style, so long file
    names are not supported except that file aliases will be
    recognised.

    Screen resolution set to at least 800x600, 256 colour, but HiColor
    (16 bit) is recommended.

    At least one chess font already installed.


    File Associations
    =================
    You might like to associate the BRD extension with the program
    file so that you can double-click a BRD file icon to start the
    program. There is a button in the Settings dialog that will create
    the association. Once the association has been made, the button
    can then be used to destroy the association. This is useful in the
    unlikely event that you want to un-install the program.


    Un-installation
    ===============
    Run the program, click the 'Settings' button and then click the
    'Disassociate from BRD files' button. Quit the program and then
    delete ChessFnt.EXE, ChessFnt.INI, ReadMe.TXT and any BRD files.


    BRD Files
    =========
    These are just text files which can be opened by Windows Notepad.
    You can select the text in a BRD file and then copy it into any
    word processor ready to be formatted with a chess font. The first
    line in a BRD file is the name of the font. The rest is a 10x10
    grid of characters.


    Using the Program
    =================
      Starting Up
      -----------
      The program starts by default with a board set up for the start
      of a game.

      If you have associated BRD files with ChessFnt.EXE, you can just
      double-click an BRD icon, or drag one and drop it on the
      ChessFnt.EXE icon itself or, if you have a desktop shortcut to
      the program, drag one and drop it on the shortcut.

      If you have no chess fonts installed the program will not run,
      but a dialog box will tell you the names of the supported fonts.

      The program expects to find TrueType font files (TTF) in the
      WINDOWS\FONTS folder in Windows 9x and in the WINDOWS\SYSTEM
      directory in Windows 3.1x.

      The Chess Board
      ---------------
      Move the mouse cursor over the board and it will change to a
      cross. Left click on the piece you want to move, then right
      click on the square you want to move it to. It's as easy as
      that. If you have automatic castling switched on and you move a
      king two spaces to the left or right, the rook will move to the
      correct place as long as there are no other pieces in the way.

      The Text Editor
      ---------------
      You can manually edit the text in the little panel at the top
      left of the main window, and whatever changes you make will be
      reflected on the board. This is, however, very difficult to use.
      That's why I wrote the program in the first place!

      You can select the text in the panel and copy it to the Windows
      clipboard by hitting Ctrl-C. It can then be pasted into any word
      processor ready to be formatted with a chess font.

      New Game Button
      ---------------
      Sets up the board for the start of a new game.

      Open Button
      -----------
      Lets you open a previously saved BRD file.

      Save Button
      -----------
      Lets you save your position either to a BRD file or to an HTM
      (HTML web page) file. If you choose this latter (default)
      option, the HTM file can then be read by your Internet browser.
      The HTM file uses the font name, colours and size that you have
      set in the program.

      Help Button
      -----------
      Displays this ReadMe.TXT file.

      Add Button and Radio Buttons
      ----------------------------
      Select the type and colour of the piece you want to add, click
      the square on the board where you want it to go, and then click
      the Add button. Choosing to add a Blank means deleting a piece.

      Settings Button
      ---------------
      Brings up a dialog where you can set:

          1) The display font (and HTML font).

          2) The display colours (and HTML colours).

          3) The HTML font size.

          4) Whether or not the introduction text displays at startup.

          5) Automatic castling on or off.

          6) Single or double line borders.

          7) Notation characters from your chosen font or notation
             indicator boxes. If you choose boxes, the notation
             characters will not be included when you save a file.

      These settings are saved to ChessFnt.INI when you exit the
      program.

      There is also the BRD file association button which will read
      'Disassociate from BRD files' if you have made the association
      or 'Associate with BRD files' if you have not.

      Quit Button
      -----------
      Exits the program without asking any daft questions like "Do you
      really want to quit?" I have always believed that users of
      software are of equal intelligence with those who write it!
      The ESC key also quits the program.

      Using the Keyboard
      ------------------
      All the controls have underlined 'accelerator' keys.
      Use Alt+[letter] to hit a button. The accelerator keys are:

            M : new gaMe              O : Open...
            S : Save...               H : Help
            D : aDd piece             K : King
            Q : Queen                 R : Rook
            B : Bishop                N : kNight
            P : Pawn                  A : blAnk
            W : White                 C : blaCk
            E : sEttings...           U : qUit

      Once a key is selected it keeps focus even when you click on the
      chess board. This is very useful when you want to add a number
      of the same type of piece. For instance, to add a line of black
      knights across the middle select Knight, Black and then click
      square A5. Click the Add piece button. Now click square B5 and
      hit the space-bar, click square C5 and hit the space-bar, click
      square D5 and hit the space-bar, etc.

      In the Settings dialog the accelerator keys are:

            N : foNt                  H : HTML font size
            F : Foreground colour...  B : Background colour...
            U : show startUp intro    A : Allow automatic castling
            S : Single lines          D : Double lines
            M : notation froM font    X : notation boXes
            O : OK                    C : Cancel
            R : associate with (or disassociate from) bRd files

      Once a control is focussed you can use the standard Windows
      dialog keys as follows:

            TAB           : to move focus to the next control
            Shift-TAB     : to move focus to the previous control
            Alt-DownArrow : to open a drop-down list
            Space-bar     : to press a button
            Space-bar     : to change the state of a check-box
            Arrows        : to move around the text in an edit-box
            Arrows        : to select a radio button
            Shift-Arrows  : to select the text in an edit-box
            Ctrl-C        : to copy selected text to the clipboard
            Ctrl-X        : to cut selected text to the clipboard
            Ctrl-V        : to paste text from the clipboard
            ENTER         : to OK a dialog
            ESC           : to cancel a dialog


    Supported Fonts
    ===============
    The following fonts are currently supported and are available for
    download from http://www.enpassant.dk/chess/homeeng.htm
                Chess Adventurer
                Chess Alfonso-X
                Chess Cases
                Chess Condal
                Chess Harlequin
                Chess Kingdom
                Chess Leipzig
                Chess Line
                Chess Lucena
                Chess Magnetic
                Chess Mark
                Chess Marroquin
                Chess Maya
                Chess Mediaeval
                Chess Merida
                Chess Millennia-D
                Chess Millennia-L
                Chess Motif

      Character Map
      -------------
      The character map for the fonts listed above is as follows:

            Character    Result
            ---------    ------
                w        A black queen on a white square
                q        A white queen on a white square
                W        A black queen on a black square
                Q        A white queen on a black square
                t        A black rook on a white square
                r        A white rook on a white square
                T        A black rook on a black square
                R        A white rook on a black square
                m        A black knight on a white square
                n        A white knight on a white square
                M        A black knight on a black square
                N        A white knight on a black square
                v        A black bishop on a white square
                b        A white bishop on a white square
                V        A black bishop on a black square
                B        A white bishop on a black square
                l        A black king on a white square
                k        A white king on a white square
                L        A black king on a black square
                K        A white king on a black square
                o        A black pawn on a white square
                p        A white pawn on a white square
                O        A black pawn on a black square
                P        A white pawn on a black square
                +        An empty black square
                *        An empty white square
                2        Upper border (single)
                8        Lower border (single)
                4        Left border (single)
                5        Right border (single)
                1        Upper left corner (single)
                3        Upper right corner (single)
                7        Lower left corner (single)
                9        Lower right corner (single)
                "        Upper border (double)
                (        Lower border (double)
                $        Left border (double)
                %        Right border (double)
                !        Upper left corner (double)
                #        Upper right corner (double)
                /        Lower left corner (double)
                )        Lower right corner (double)

      Annotated Border Characters
      ---------------------------
      These fonts also contain annotated border characters as follows:
      The upper-case characters in this list, with key codes from 0192
      to 0207, produce annotated single borders. The lower-case
      characters, with key codes from 0224 to 0239 produce annotated
      double borders.

          Characters    Key Codes     Result
          ----------    ---------     ------
             &       0192 & 0224    Left border with the number 1
             &       0193 & 0225    Left border with the number 2
             &       0194 & 0226    Left border with the number 3
             &       0195 & 0227    Left border with the number 4
             &       0196 & 0228    Left border with the number 5
             &       0197 & 0229    Left border with the number 6
             &       0198 & 0230    Left border with the number 7
             &       0199 & 0231    Left border with the number 8
             &       0200 & 0232    Bottom border with the letter A
             &       0201 & 0233    Bottom border with the letter B
             &       0202 & 0234    Bottom border with the letter C
             &       0203 & 0235    Bottom border with the letter D
             &       0204 & 0236    Bottom border with the letter E
             &       0205 & 0237    Bottom border with the letter F
             &       0206 & 0238    Bottom border with the letter G
             &       0207 & 0239    Bottom border with the letter H


    Known Issues
    ============
    1) Running in Windows 3.1x
       -----------------------
       A number of the screen elements, buttons, labels etc. will not
       display exactly as designed because of the different way 3.1x
       handles the display compared to 9x. The program is, however,
       fully operational.  For the check-boxes in the Settings dialog
       to have a 3D look in Windows3, you need to have CTL3DV2.DLL in
       your Windows directory.

    2) Windows with Arabic Support
       ---------------------------
       Some of the characters for the left border annotation numbers
       and the bottom border annotation letters display as Arabic
       characters with varying character widths. This, therefore,
       screws everything up. I have absolutely no intention of
       addressing this problem. If you are using Arabic Windows,
       tough luck. You can, however, still use the program by
       selecting notation 'Indicator boxes' in the Settings dialog.
       This will switch off all the notation characters. There could
       well be a similar problem with Windows for other languages like
       Hebrew or Chinese but I have no wish to find out.

    3) Manual Editing
       --------------
       If you manually edit the text in the little panel at the top
       left of the main window, and add invalid characters, it can
       seriously mess up the left click / right click move sequence.
       Try putting in a few '?' characters and you'll see the problem.
       This will be sorted out by disallowing the insertion of invalid
       characters at the next release.


    Possible Future Enhancements
    ============================
    1) Support for More Fonts
       ----------------------
       Currently the program supports only one character map, used by
       those fonts listed above. Other fonts with different character
       maps might be added if I get around to it.

    2) Checking for Legal Moves
       ------------------------
       Currently the program lets you do as you like. I might add a
       user switchable option for move legality checking.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~