Solitile Essay, Research Paper
SOLITILE rev 3.5
Copyright 1989-1994 by Everett Kaser
All Rights Reserved
Requires EGA or VGA, mouse is optional
All files listed at the end of this section are Copyrighted
and may NOT be redistributed separately from the entire Solitile
package, or other than as outlined on this page and in Sections
I and II of this document.
Solitile is a game of solitaire, played with “tiles”. It derives
from several similar games, such as “Shanghai”, “Gunshy”, and
“Mahjongg”, which are played with Mah-Jong tiles. Solitile plays
the same game, but adds new starting layouts and the ability for the
player to create new layouts and/or modify the layouts provided. It
has, built-in, “westernized” pictures on the faces of the tiles, and
can also use alternate tile-sets, and the program includes a tile
editor so that the user may alter existing tile pictures or create
entirely new sets. Solitile 3 can also read in and use tile sets
created for use with Nels Anderson’s Mahjongg game (of which there
are hundreds available).
SOLITILE is being distributed as Shareware. If you use the game
for more than one week, you are expected to pay for its use. To
register the game, send the registration fee of $15.00 (U.S. funds)
to the author. For your convenience, the file REGISTER.DOC may be
printed to obtain a registration form. The author may be contacted at:
Everett Kaser phone: (503) 928-5259
Solitile Weekdays: 6:00pm – 9:00pm Pacific Time
PO Box 403 Weekends: 8:30am – 9:00pm
Albany, OR 97321-0117 VISA and MASTERCARD accepted
The game package, which MUST include the files listed below, may be
freely copied and distributed. The individual files may NOT be copied
or distributed seperately. The use of this package is subject to the
conditions outlined in section II of this file. Included files:
SOLITILE.EXE EAGLE .GIF ENCIRCLE.LYT FORUM .LYT
SOLITILE.DOC SOLITILE.GIF BEGINNER.LYT PYRAMID .LYT
REGISTER.DOC FURELISE.MUS BRIDGE .LYT TEMPLE .LYT
VENDOR .DOC HALLELUJ.MUS STARSHIP.LYT SPIDER .LYT
SOLITILE.STL SUN .LYT WEDGES .LYT
SHARON .STL VALLEY .LYT
SOLITILE — Table of Contents
I. ASP Ombudsman and Definition of Shareware
II. Disclaimer, License Agreement, and Support
III. Installing and Starting the Program
IV. Introduction to Solitile 3
V. Playing the Game
VI. Game Menu Items
VII. The MAIN Menu
VIII. The FILE SELECTION Menu
IX. The PLAYER SETUP Menu
X. The EDITORS Menu
XI. The LAYOUT Editor
XII. The TILES Editor
XIII. The FRAME PATTERNS Editor
XIV. The BACKGROUND PATTERN Editor
XV. Hints On Play
XVI. Bugs and Versions
XVII. Products Available From Everett Kaser Software
I. ASP OMBUDSMAN AND DEFINITION OF SHAREWARE
This program is produced by a member of the Association of Shareware
Professionals (ASP). ASP wants to make sure that the shareware
principle works for you. If you are unable to resolve a
shareware-related problem with an ASP member by contacting the member
directly, ASP may be able to help. The ASP Ombudsman can help you
resolve a dispute or problem with an ASP member, but does not provide
technical support for members’ products. Please write to the ASP
Ombudsman at 545 Grover Road, Muskegon, MI 49442 or send a CompuServe
message via CompuServe Mail to ASP Ombudsman 70007,3536.
Shareware distribution gives users a chance to try software before
buying it. If you try a Shareware program and continue using it, you
are expected to register. Individual programs differ on details — some
request registration while others require it, some specify a maximum
trial period. With registration, you get anything from the simple right
to continue using the software to receiving an updated program with
a printed manual.
Copyright laws apply to both Shareware and commercial software, and the
copyright holder retains all rights, with a few specific exceptions as
stated below. Shareware authors are accomplished programmers, just like
commercial authors, and the programs are of comparable quality. (In
both cases, there are good programs and bad ones!) The main difference
is in the method of distribution. The author specifically grants the
right to copy and distribute the software, either to all and sundry or
to a specific group. For example, some authors require written permiss-
ion before a commercial disk vendor may copy their Shareware.
Shareware is a distribution method, not a type of software. You should
find software that suits your needs and pocketbook, whether it’s com-
mercial or Shareware. The Shareware system makes fitting your needs
easier, because you can try before you buy. And because the overhead
is low, prices are low also. Shareware has the ultimate money-back
guarantee — if you don’t use the product, you don’t pay for it.
II. DISCLAIMER, LICENSE AGREEMENT, AND SUPPORT
— DISCLAIMER —
Users of SOLITILE must accept this disclaimer of warranty:
“SOLITILE is supplied as is. The author disclaims all warranties,
expressed or implied, including, without limitation, the warranties of
merchantability and of fitness for any purpose. The author assumes no
liability for damages, direct or consequential, which may result from
the use of SOLITILE.”
— LICENSE —
— USE AND DISTRIBUTION BY INDIVIDUALS:
SOLITILE is a “shareware program” and is provided at no charge to
the user for evaluation. Feel free to share it with your friends, but
please do not give it away altered or as part of another system. The
essence of “user-supported” software is to provide personal computer
users with quality software without high prices, and yet to provide
incentive for programmers to continue to develop new products. If you
find this program useful and find that you are using SOLITILE and
continue to use SOLITILE after a reasonable trial period, you must
make a registration payment as described on the first page of this
document. The applicable registration fee will license one copy for use
on any one computer at any one time. You must treat this software just
like a book. An example is that this software may be used by any
number of people and may be freely moved from one computer location to
another, so long as there is no possibility of it being used at one
location while it’s being used at another. Just as a book cannot be
read by two different persons at the same time.
You are encouraged to pass a copy of SOLITILE along to your friends
for evaluation. Please encourage them to register their copy if they
find that they use it. All registered users will receive a copy of
the latest version of the SOLITILE.
Site-Licenses and quantity discounts may be arranged by contacting
Everett Kaser Software.
— DISTRIBUTION BY BBS’S AND DISK VENDORS:
Anyone distributing SOLITILE for any kind of remuneration must
first contact Everett Kaser at the address above for authorization.
This authorization will be automatically granted to BBS’s and
“traditional mail-order shareware distributors” recognized by the ASP
as adhering to its guidelines for shareware distributors, and such
distributors may begin offering SOLITILE immediately. However,
Everett Kaser must still be advised so that the distributor can be kept
up-to-date with the latest version of SOLITILE). “Traditional
mail-order shareware distributors” are those offering disks of share-
ware programs for little more than the normal cost of running such a
business (usually no more than $5 per disk), usually from a printed
or on-disk catalog. It does NOT include any sales through retail
— DISTRIBUTION BY ALL OTHER MEANS:
All other forms of distribution require the express written permission
of the copyright holder before distribution may begin. These include,
but are not limited to, CD-ROMs, racks, bins, and any other forms of
“retail sales”. If you’re interested in distributing SOLITILE
by one of these (or other) means please contact Everett Kaser Software.
We’ll be glad to discuss your distribution idea with you. This
restriction is to ensure that our software is distributed in fashions
which we find acceptable to us and our customers.
— SUPPORT —
Support for products from Everett Kaser Software is available via
phone, mail, and Compuserve email for a period not less than one year
or the duration of my life, which ever is shorter, and not to exceed
your life-time or mine, which ever is shorter. See the first page of
this document for phone number, mail address, and Compuserve email
address. Updates are available at any time to registered users for a
$7 fee to cover costs of labor, materials, shipping, and handling (and
to keep me from feeling badly). Bug fixes for major bugs (if any ever
occur) will be shipped free to registered users for a period of three
months after the date of registration.
III. INSTALLING AND STARTING THE PROGRAM
It is recommended that you install Solitile in its own sub-directory
on your hard disk (or on its own floppy disk if you have no hard disk),
because the program has many support files, and placing them in their
own sub-directory will keep them all together and keep your other disk
directories from getting too cluttered.
To create a sub-directory for Solitile, you might type one of the
or MKDIR GAMESSOLITILE
or MKDIR BINGAMESSOLITILE
These are only examples, and you’ll have to decide upon a sub-directory
path that makes sense given the structure of YOUR hard disk. Once the
sub-directory has been created, you’re ready to install Solitile into
that sub-directory. If you received the files on a floppy disk, as
separate files, you would do something like:
COPY A:*.* C:SOLITILE
or COPY A:*.* D:GAMESSOLITILE
or COPY B:*.* C:BINGAMESSOLITILE
If the program came as an archive file of some sort (.ZIP, .ARC, .LZH,
etc), you will need to copy the archive file into the sub-directory
that you created (using the COPY command), then type something like:
or LHARC x SOLITILE.LZH
Once the program is installed, you can change to that sub-directory at
any time and run the program, or you can specify the path to the
SOLITILE sub-directory in your PATH environment variable (set in your
AUTOEXEC.BAT file), and then Solitile can be run from anywhere on your
hard disk without first changing to the Solitile sub-directory. (If
you do add SOLITILE to your PATH statement, remember that you will have
to reboot your computer before the PATH actually gets modified.)
The program has no optional arguments and is started by typing
The program first generates the background (see Section XIV: The
Background Editor), then draws the game screen. A copyright message
is drawn in a panel over everything else, and it may be exited at
any time by pressing a key or clicking a mouse button.
The first time the program is run, the user will be prompted for a
player name. This name must be from 1 to 8 characters long, and it
may only contain valid DOS file name characters as it will be used
to create a .PLY file for storing that player’s statistics.
Also, the first time the program is run, the HELP screens will be
displayed. This will ONLY happen the first time the program is run.
Thereafter, the HELP may be accessed via the main MENU.
IV. INTRODUCTION TO SOLITILE 3
The set of tiles consist of 168 individual tiles. There are 42
different pictures on the faces of the tiles, with each picture
appearing on four tiles.
The object of the game is to remove all of the tiles from the board.
Tiles are removed in matching pairs. For a tile to be removable, it
must not have any other tiles on top of it, and it must have either
its entire right side exposed, or its entire left side. “Exposed”
means that there is not another tile on the same level and laying
immediately against it.
A few definitions of terms:
LAYOUT: the starting pattern or arrangement of tiles, disregarding
the faces of the tiles. This simply tells the program where
to place tiles when starting a game, but not WHICH tiles to
put in any given place. Layouts are stored individually in
disk files, so there can be many, many different possible
layouts. There are 12 layouts provided with the game.
You may add to, delete, and modify these layouts. Each layout
may contain anywhere from 4 to 168 tiles, in multiples of 4
(ie, 4, 8, 12,…160, 164, 168).
BOARD NUMBER: a number between 0 and 65535, which is used to control
the placement of specific tiles in the starting layout. This
number allows you to replay a specific game at will. The game
normally starts any particular layout at Board 0. It keeps
track of the last board you were playing, and when you solve
a board, the Board number is automatically incremented. You
may specify a new Board number at any time.
MENU ITEMS: On the main game screen, any grey box around the side of
the display that contains BLUE lettering is considered a MENU
ITEM. This means that it can be activated by pointing to it
with the mouse a clicking the LEFT mouse button, or by pressing
the key corresponding to the first letter of the MENU ITEM’s
title. (ie, T for Tileset, L for Layout, M for Menu, etc.)
At all other times, the MENU ITEMS are grouped together in one
large grey panel, where each individual item can again be
activated by clicking on it with the mouse or by pressing the
key corresponding to its first letter.
BUTTONS: the Left and Right Buttons refer to the buttons on your
mouse. If you don’t have a mouse, the HOME and PGUP keys on
the numeric keypad of your keyboard perform the same functions.
These two buttons are used to control the game action. The
meaning of the two buttons is always shown in the upper right
corner of the game display.
V. PLAYING THE GAME
To select the first tile of a pair to be removed, move the cursor
onto the tile and press the LEFT BUTTON. This will cause that tile
(if it’s removable, ie. not blocked by other tiles) to be highlighted.
Once you’ve selected the first tile of the pair, move the cursor to
the second tile and, again, press the LEFT BUTTON. This will cause
the second tile to be highlighted. At this point, pressing the
LEFT BUTTON a third time will cause those two tiles to be removed,
or pressing both BUTTONs together will de-select the two tiles. If
VERIFY mode is not on, then the two tiles will be removed immediately
that you click on the second one, without requiring the third verific-
ation click. If the BLINK mode is set, then the highlighted tiles
will blink, revealing the tiles beneath them. See Section IX, The
Player Setup Menu.
A shortcut for selecting the second tile is to use the RIGHT BUTTON.
First, select the first tile using the LEFT BUTTON. Then, pressing
the RIGHT BUTTON will cause the computer to search for a removable
matching tile. If one is found, it will be highlighted. Once both
tiles are highlighted, pressing the RIGHT BUTTON again will cause
the computer to look for a different tile to use as the matching
tile. The RIGHT BUTTON can be used repeatedly to cycle through all
possible matches for the first tile you selected. When using this
method to select the second tile, VERIFY mode has no effect, and the
third verification click is required, since you may want to use the
RIGHT BUTTON to cycle through several possible matches.
If you’re having trouble finding a matching pair of removable tiles,
or if you want to see all of the pairs that are currently removable,
press the RIGHT BUTTON before selecting a tile. This will cause the
computer to search for all matching tiles that are removable. It
will highlight them, one set at a time. To cycle through the sets
of removable tiles, repeat pressing the RIGHT BUTTON until a message
appears informing you that there are no more matches. At any time
during this “help cycle”, pressing the LEFT BUTTON will abort the
“help cycle”. If VERIFY mode is off, there will be no message when
you reach the end of the “help cycle”, there will simply be no high-
As a general rule in Solitile 3, any pop-up menu may be escaped from
by pressing the ESC key or by clicking the RIGHT BUTTON.
VI. GAME MENU ITEMS
Menu options available (and keystroke to activate them if you don’t
have a mouse) while playing the game are:
(M) MENU This activates the MAIN MENU. See Section VII.
(P) PAIRS This searches for any possible matching pairs and tells
you how many are available. Similar to clicking the
RIGHT BUTTON with no tiles selected, except that it
only tells you the number of matches available WITHOUT
showing you the matches.
(U) UNDO This, uh…, un-does your previous moves (it replaces
removed pairs in reverse order) letting you back up.
(R) RETRY This re-starts the current game (same layout, same
board number) from the beginning. Use this when you
get stuck but want to give it another shot.
(D) DOS This will attempt to “spawn” a copy of COMMAND.COM,
without exiting the game. This allows you to get to
the DOS COMMAND prompt without terminating your game.
Possible reasons that it might not work is if you have
insufficient memory to load the COMMAND interpreter on
top of SOLITILE, or if the file COMMAND.COM can’t be
found by SOLITILE on your path. Once you’ve gone to
the DOS prompt this way, you must issue the EXIT
command to return to your SOLITILE game.
(B) BOARD This allows you to select a new board number. Options
(N) NEXT increments the board number
(R) RANDOM selects a random board number
(S) Specify allows you to specify the board
(L) LAYOUT Brings up the FILE SELECTION MENU (see Section VIII)
and allows you to select a new LAYOUT file. The
selected layout will become the new default layout for
the current player. All LAYOUT files have a file
extension of .LYT.
(T) TILESET Brings up the FILE SELECTION MENU (see Section VIII)
and allows you to select a new TILESET file. The
selected layout will become the new default tileset for
the current player. All TILESET files have a file
extension of .STL (Solitile style tilesets) or .TIL
(Mahjongg style tilesets). The Tileset File Selection
Menu does not automatically terminate, but rather it
displays the selected tile set for your inspection, and
allows you to select another or EXIT, accepting the
displayed one. This allows you to “browse” through the
various tilesets that you may have available to you.
( ) player name In the top center of the main game display is a box
containing the current player’s name. This box may be
clicked upon with the mouse for a quick access to the
Player Setup Menu (see section IX). There is no key-
stroke for quick access to this menu. From the key-
board, you must first bring up the Main Menu (with the
M key), then select the Player Setup Menu.
VII. THE MAIN MENU
In the top portion of the MAIN Menu, there are these options:
(G) GAME This returns you to Main Game Display, where you may
continue playing your game.
(H) HELP Displays the Help screens, which explain the basic
game playing information.
(S) SAVE GAME Saves the current game into a file with the current
player’s name and an extension of .SAV.
(R) RESTORE GAME Restores the current player’s previously SAVEd game.
(P) PLAYER SETUP Brings up the Player Setup Menu (see Section IX).
(E) EDITORS Brings up the Editors Menu (see Section X).
(Q) QUIT TO DOS Exits the program.
In the bottom portion of the MAIN Menu is information regarding the
current player’s performance with the current Layout. It shows the
player’s name, the current Layout name, and a window containing the
list of Board numbers that the player has solved on the current Layout.
Not all solved board numbers may fit in the window so scroll buttons
are provided for use with a mouse, and the cursor keys and PgUp/PgDn
keys may be used from the keyboard to scroll the list up/down.
VIII. THE FILE SELECTION MENU
The FILE SELECTION Menu is used at a number of different places in the
game, to select the player, layout, tileset, music, and GIF files. In
all situations, the FILE SELECTION Menu works the same. It provides a
list of all SUB-DIRECTORIES, followed by a list of all available files
with the appropriate file extension. These file extensions are:
.PLY player files
.LYT layout files
.STL Solitile tile set files
.TIL Nels Anderson’s Mahjongg tile set files
.MUS music files for Theme and Win music
.GIF picture files for background picture
From the keyboard, files or sub-directories may be chosen by using the
cursor and PgUp/PgDn keys to highlight the desired item, then pressing
the Enter (Return) key. In this way, you can navigate up and down the
sub-directory tree, as well as load the desired file. The current
PATH is always displayed immediately above the “files” window. With
a mouse, the sub-directory or file may be selected by pointing at it
with the mouse cursor and double-clicking the LEFT BUTTON. (If your
double click is not quite quick enough, all that will happen is that
the item you pointed to will become highlighted.) With the mouse you
can also scroll the window and highlighted item up/down by clicking
with the LEFT BUTTON upon the:
DOUBLE UP ARROWS — page up
SINGLE UP ARROW — move highlight bar up/scroll up
SINGLE DOWN ARROW — move highlight bar down/scroll down
DOUBLE DOWN ARROW — page down
Other items that are available on the FILE SELECTION Menu are:
(L) LOAD —– Loads the currently highlighted item.
(E) EXIT Exits the FILE SELECTION Menu
(R) RENAME Lets you Rename the currently highlight item.
(C) Copy Copies the currently highlighted item to another file.
(D) DELETE Lets you Delete the currently highlighted file.
IX. THE PLAYER SETUP MENU
Each player may configure the game to his or her own preferred setup.
This setup is then stored in the player’s .PLY file, along with all of
the solved board numbers for each layout that the player has tried.
The current player’s name is stored in the file SOLITILE.CFG. That
name is then used to access the .PLY file for that player. The current
player may be selected/changed from the PLAYER SETUP Menu:
(P) PLAYER allows you to select or add a player.
(E) EXIT exits the Player Setup Menu
(G) GIF FILE lets you specify the .GIF file to be used as a back-
ground for the current player.
(T) THEME toggles the Theme music on and off. If done from the
keyboard with the T key, also allows selection of the
THEME music file.
(R) REMOVE TILES toggles on and off the sound for removing tiles
(U) UNDO toggles on and off the sound for undo-ing.
(N) NO MOVES toggles on and off the sound for NO-MORE-MOVES
(W) WIN toggles the Win music on/off. From the keyboard with
the W key, also allows selection of the WIN music file.
(B) BLINK toggles on/off “blinking tiles”. When on, then during
game play, selected tiles will “blink”, alternately
showing the tile beneath them and themselves as a neg-
ative image. This may be considered cheating by some,
so when BLINK is enabled, you’ll be unable to select a
tile unless it has a removable matching tile available.
(V) VERIFY toggles on and off “verify tiles”. When on, Solitile 3
will play much as previous versions of Solitile, where
you first clicked on one tile to select it, then click-
ed on a second tile to select it, then clicked a third
time to remove those two selected tiles. With VERIFY
off, the selected tiles will be removed automatically
as soon as the second one is selected. However, when
first selecting one tile, then using the RIGHT BUTTON
to locate/highlight the second, a verifying click of
the LEFT BUTTON is still required, as the computer’s
selected match may not be the one that you had in mind.
(H) Hide GIF toggles on and off displaying of .GIF file.
When using a mouse, you may also click upon the items listed at the
bottom of the PLAYER SETUP Menu:
Player The current player’s name
GIF The current player’s background picture file name.
Theme The file name for the current player’s Theme music,
which gets played when the game first starts up (if the
THEME sound is enabled).
Win The file name for the current player’s Win music,
which gets played when a board is solved (if the WIN
sound is enabled).
Besides the “solved board numbers” and the above items, the additional
things that are kept in the player’s .PLY file are:
the player’s current LAYOUT (selected from main game display)
the player’s current TILESET (selected from main game display)
the player’s FRAME PATTERNS (created in the Frame Editor)
the player’s BACKGROUND PATTERN (created in Background Editor)
X. THE EDITORS MENU
The EDITORS Menu gives you access to the several “editors” available
with Solitile 3:
(L) LAYOUT Modify existing layouts or create new ones of your
own. (See Section XI.)
(T) TILES Modify existing tilesets or create new ones of your
own. (See Section XII.)
(F) FRAME PATTERNS allows the player to change the eight patterns used
to draw the frame (or border) around the edge of the
main game display. Any changes made to these patterns
are reflected in the player’s .PLY setup file.
(B) BACKGROUND PATTERN allows the player to change the background
pattern which is drawn on the display before the GIF
image is drawn. Any changes made to this pattern is
reflected in the player’s .PLY setup file.
(E) EXIT EDITORS returns you to the MAIN Menu.
The TILES, FRAME, and BACKGROUND editors use a common bitmap editor,
with some differences and embellishments. The rest of this section
describes those portions of the bitmap editor that are common to all
The bitmap editor four primary areas:
The color palette
The zoom/pixel edit area
The item selection area
The item selection area is different for each area and is discussed
in the appropriate section. The “cursor” may be moved from one area
to another from the keyboard by using these keys:
(F1) moves the cursor to the COLOR palette area
(F2) moves the cursor to the ZOOM area
(F3) moves the cursor to the item selection area
In the top-left corner is the color palette of 16 colors. The current
pen-color is outlined with a white-square. The current color may be
selected by clicking the LEFT mouse button on the desired color square,
or by first moving the “cursor” to the color palette area with the F1
key, and then using the cursor keys to select the desired color.
In the center of the display is the ZOOM area. This displays an
enlarged image of the item currently being edited. Many operations are
possible upon this area, as discussed below.
Down the left side of the display is the MENU area, the individual
items of which are discussed in detail below. However, each MENU item
may be activated by either pressing the key corresponding to the first
letter of the item, or by clicking the LEFT mouse button once upon the
Between the MENU and the ZOOM is the:
Work Image — the life-sized image of the item currently being
edited in the ZOOM area.
Shifter — This allows you to shift the entire Work Image, or
that portion of it that’s been marked, left, right, up,
or down. See below for how to mark an area.
ScratBuf — This is a temporary buffer to which you may copy
all or the marked portion of the Work Image, either as
a means of saving a copy while you experiment, or so
that you can “paste” it back into the Work Image at
another place. See below for how to mark an area.
There are 4 basic types of “drawing” that may be done upon the ZOOM
area: POINT, LINE, RECTANGLE, and OVAL. One of these is always
selected, as is indicated by the blue highlight on the menu. The
currently highlighted drawing method will determine exactly what will
happen when you press the LEFT or RIGHT BUTTONs while on the ZOOM area.
POINT: If the LEFT mouse button is pressed and released while holding
the mouse still, a single pixel will be set to the currently
selected color. If the LEFT mouse button is pressed and
held down while the mouse is moved, all pixels over which the
mouse cursor passes will be set to the current color. From
the keyboard, you press and release the HOME key once to
simulate the pressing of LEFT mouse button. This causes the
program to enter “drawing” mode. You must then press and
release the HOME key a second time in order to exit “drawing”
mode, or to simulate the releasing of the LEFT mouse button.
While in drawing mode, the cursor keys will move the drawing
cursor (a pencil) about on the zoom area.
LINE: Line drawing is VERY similar to Point