home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
norge.freeshell.org (192.94.73.8)
/
192.94.73.8.tar
/
192.94.73.8
/
pub
/
computers
/
pcjr
/
games
/
LIFE-21.LZH
/
LIFE-21.DOC
< prev
next >
Wrap
Text File
|
1989-06-15
|
17KB
|
397 lines
LIFE-21.DOC
LIFE-21 is a text mode version of J. H. Conway's game of Life.
LIFE-21 is written to run on any IBM-PC compatible computer.
All of the source code is written in Borland's Turbo Pascal and
Turbo Assembler dialects.
LIFE-21 is a shareware program, Copyright 1989 by Jeff Anderson, New
Concord, Ohio. All rights reserved, except that the shareware set
of files may be freely copied as long as no charge is imposed for
the files themselves, and the shareware version of LIFE-21 may be
used for evaluation purposes.
***************************************************
What the heck is this game of Life, and who is J. H. Conway?
John Horton Conway is an outstanding mathematician and a creator of
mathematical games. He created his game of Life in the late '60s at
the University of Cambridge. Life is a simulation game which uses a
harshly Spartan set of rules to generate a lavish universe of unlim-
ited possibilities.
The simulation in Life is played out (theoretically) on an infinite
two-dimensional grid where each square of the grid can either be
occupied by a "live" cell or be empty; a truly binary landscape.
The rules of Life were chosen so that, imagining living cells in a
two-dimensional universe, the simulation would resemble birth,
growth and death patterns. John Conway started with a modest list
of objectives:
>> No simple initial pattern should obviously grow forever.
>> Some initial patterns should seemingly grow forever.
>> Some simple initial patterns should grow for a period of time,
and then become stable or disappear.
The rules Conway finally reached are these:
Rule 1 - Start with a given initial pattern of living cells in the
grid squares (creation).
Rule 2 - If an empty square has exactly 3 living cells as immediate
neighbors, then that square will have a living cell in the
next generation (birth).
Rule 3 - If a square with a living cell in it has 2 or 3 living
cells as neighbors, then that square will have a living
cell in the next generation (survival).
Rule 4 - All squares which do not meet the requirements of Rule 2
or Rule 3 will be empty in the next generation (death).
Before fractals became the rage, the Life simulation was probably
implemented on every college mainframe in the United States, and a
number of limited-performance programs were written on personal
computers. Life Version 2.1, the program you have here, is the
1
first full-feature Life game to run on a personal computer.
LIFE-21 can create initial patterns using direct screen editing or
recall of previously saved patterns. It runs the Life simulation on
a spacious grid (64k x 64k), and the number of live cells at one
time is limited only by the memory available (over 4000 live cells
fit in a 640k MS/DOS-3.3 system). The simulation can be stopped and
the pattern edited or saved at any time. Thanks to some clever code
(and to the excellent programming tools from Borland), the simula-
tion speed of LIFE-21 outstrips most minicomputer Life games and
compares well to some mainframe setups.
***************************************************
So what does one do with a Life game?
Martin Gardner brought the Life game out of the universities and
into the public view through a series of articles in Scientific
American starting in 1970. These articles were subsequently col-
lected and expanded in one of his books, "Wheels, Life and Other
Mathematical Amusements," published by W. H. Freeman and Company.
For an overall view of the history, beauty and possibilities of the
Life simulation, this is the book to read. Most public libraries
either have it or will get it for you on request. If you wish to
pursue the theoretical implications of the Life model or cellular
automata in general, then the bibliography in Gardner's book is
essential.
To try the simulation out:
Run LIFE-21 from a directory containing all the shareware distribu-
tion files (or all the files from the REGISTER.ED directory on your
licensed floppy).
At the opening screen (or the IDLE menu) type "F" to get to the FILE
menu, then type "F" for (F)etch.
You will be presented with a list of pattern names. Type one of
these names and then a carriage return <ENTER>.
If you list the files that come with LIFE-21, you'll find these
patterns each in its own file with the extension ".LIF" on each.
After your selection, the pattern will be read from the disk. Then
the pattern will be painted on the screen, and the program will
return to the IDLE menu.
Type "R" to get to the RUN menu. Type "S" to (S)tep the Life simu-
lation from one generation to another.
You can observe how the 3-2 rule is applied to all the imaginary
grid spaces on the screen. All squares with exactly 3 living neigh-
bors will have a live cell on the next generation, and all live
2
cells with 2 or 3 living neighbors will survive on the next genera-
tion. You can move the pattern around on the screen with the cursor
control keys or the numeric keypad. If you have a numeric keypad,
then you can move the cursor diagonally, otherwise you're stuck with
the up/down and right/left movement of the cursor control keys.
When you're satisfied with the way the simulation works from one
generation to another, clear the grid by typing "E" to bring up the
EDIT menu, then type "C" to (C)lear.
Go back to the FILE menu by typing "F", then type "F" again to
(F)etch another pattern file. This time type in "BL-CAP" when the
program asks for the pattern name.
Now go to the RUN menu by typing an "R", then type "G" to let the
simulation (G)o at full speed (if you're using the shareware version
of LIFE-21, then you'll have to type "G" to continue after every 32
generations). The simple "blasting cap" pattern grows and changes
for 174 generations, then it settles down into a bunch of small
still life patterns and some blinkers. The complete pattern can't
fit on the screen. If you want to view it all, you'll have to use
the cursor keys (or numeric keypad) to move the pattern around.
You can create patterns, modify patterns, and clear the grid, all
from within the EDIT menu. Use the cursor control keys (or numeric
keypad keys) to move the cursor. Any one of several (T)oggle keys
will change the imaginary square from empty to live and back again.
The toggle keys are "T", "0", "5", <space> and <enter>.
Try building some of your own patterns or modifying some of those
provided. When you see a pattern you would like to keep, use "F" to
reach the FILE menu, then type "S" to (S)ave the pattern to the
disk. Keep the pattern name as descriptive as possible, even though
you're limited to eight characters by MS-DOS.
***************************************************
What comes with the LIFE-21 simulation?
Along with the program LIFE-21.EXE and this LIFE-21.DOC file, the
distribution disk comes with a number of pattern files which all
have the file name extension type of ".LIF." These patterns were
chosen to intrigue the newcomer. They are named:
ACORN BL-CAP E-LSS E-OWSS FUSE G-G
NW-GLID OSC-6 PUFFER PULSAR R-PENT S-HSS
T-BIRD TUMBLER W-MSS
The ACORN, BL-CAP (BLasting CAP), R-PENT (R PENTomino) and T-BIRD
(ThunderBIRD) are called Methuselah patterns. They start from less
than 10 live cells and require at least 50 generations to stabilize.
As a matter of fact the ACORN requires 5,206 generations to grow
into a stable "tree" of 633 live cells.
3
The E-LSS (Eastbound Light SpaceShip), E-OWSS (Eastbound OverWeight
SpaceShip), NW-GLID (NorthWest bound GLIDer), S-HSS (Southbound
Heavy SpaceShip) and W-MSS (Westbound Medium SpaceShip) are all
called spaceships since they replicate themselves with a slight
offset, thus "moving" along the grid space.
The example glider moves Northwest (toward the upper left on the
screen). You can draw your own glider patterns using the EDIT mode,
and these can move in any of the diagonal directions. The other
spaceship patterns furnished travel on the square, that is, North,
South, East or West. Again, you can redraw any of the example
spaceships to make them move in another direction.
Much of the early research (some called it play) with Life consisted
of crashing spaceships into each other to see what would happen.
Good clean fun, and you can call it mathematical study!
OSC-6 (OSCillator with period 6), PULSAR and TUMBLER are all oscil-
lators (figures which move, but repeat themselves in the same place
on the grid after some number of generations). The simplest of
these you can make yourself with three live cells in a row. This
period-two oscillator is called a blinker.
The FUSE is a simple pattern which "burns" diagonally. You can find
several variations on this theme in Conway's book. Copies of these
variations are included on the disk with your registered copy of
LIFE-21.
The G-G (Glider Gun) is one of the most fascinating Life patterns
because it is an oscillator with a very high period of 30 genera-
tions, and because its debris becomes a glider which flies away once
each period. This was the first pattern discovered which could grow
forever on an infinite Life grid.
The PUFFER is an example of a class of "dirty" spaceship patterns
which give off debris as they travel. PUFFER's debris vanishes
after a few generations, but some dirty spaceships leave a permanent
trail of still life patterns behind. These also could grow forever
on an infinite grid.
***************************************************
Some notes on the LIFE-21 program
LIFE-21 is a shareware package, or "try before you buy" software.
As such, its success depends on fulfilling your expectations and not
on expensive high-pressure marketing or glitzy packaging. Because
the shareware seller sidesteps most of the usual marketing expense,
shareware programs can show a profit at a fraction of the price of
equivalent retail software.
By their very nature shareware programs are freely copied and passed
around among users and bulletin boards. Because of this, the possi-
bility always exists for unauthorized modification of the software.
4
Jayel Systems has developed a simple protection scheme which pre-
vents nonprofessional sabotage of its programs or implanting of
virus-type code. As long as the program is executed from within its
own directory area, a Jayel Systems program will check itself
against an embedded check-sum as soon as it is loaded. Then, after
displaying the opening message, as soon as the user tries to operate
one of the standard program routines the program will terminate with
an appropriate message.
So long as a Jayel Systems program displays its opening message
screen and runs normally you can be sure the program is "clean." If
the program tells you it has been modified and terminates, then get
rid of it and warn the person who shared it with you. Don't risk
your computer system to a contaminated program.
***************************************************
OK, now I know all about Life!
Should I bother to register?
If you've decided you like the Life simulation of LIFE-21 and want
to use it, then you should register.
This Life simulation is not a public domain program. The distribu-
tion version is provided free to public Bulletin Boards and share-
ware vendors. All the distribution material is copyrighted and
includes a limited license to copy and use for evaluation.
This material must not be sold for profit (except for reasonable
charges for copying) or used for purposes other than evaluation
without the express written permission of Jayel Systems.
When you register LIFE-21 you will receive a new disk with the
latest revision of this program and any enhancements. This disk is
your property and can be used and treated just like any other piece
of copyrighted material you own (e.g. a book or record).
Additional patterns are included with your registered copy of LIFE-
21, along with your own personal serial number and a utility to
print out the patterns you find interesting.
When a registered LIFE-21 simulation is run, the (G)o command will
not stop after every 32 generations and some features not mentioned
here are activated.
Registered users should go on to read LIFE-LIC.DOC next.
5
REGISTRATION FORM FOR LIFE-21
DATE:__________________________
NAME:__________________________________________________________
(enter your name as you want it shown on the opening screen)
ORGANIZATION NAME:_____________________________________________
HOME ADDRESS:__________________________________________________
HOME CITY, STATE, ZIP:_________________________________________
SITE LICENSE ADDRESS:__________________________________________
(enter address as you want it shown on the opening screen)
SITE CITY, STATE, ZIP:_________________________________________
TELEPHONE NUMBER(S):___________________________________________
[ ] - Please send me a registered PERSONAL copy of LIFE-21. I've
enclosed payment of U.S.$10.00.
[ ] - Please send me a SITE LICENSED copy of LIFE-21. I've
enclosed payment of U.S.$25.00.
[ ] - I need the program on 3.5" floppy. I've enclosed $2 extra.
Because of the difficulty of pricing shipments for delivery outside
the U.S., Jayel Systems will only fill foreign orders which are
accompanied by payment with a negotiable instrument in U.S. dollars
at the prices as shown above and accompanied by a postal return
coupon for airmail delivery of a 3oz (100Gm) package.
Ohio residents pay the same $10/$25 prices, but actually receive a
slight discount since Jayel Systems includes Ohio State sales tax in
this price.
NOTE! Payment for several copies may be combined, but please fill
out a separate registration form for each copy of LIFE-21.
SEND COMPLETED FORM TO:
JAYEL SYSTEMS
P. O. BOX 323
NEW CONCORD, OH 43762
6