home *** CD-ROM | disk | FTP | other *** search
- _ __
- / |/ / ____ ____ ___ ____ / , ____ ____
- / / / / / / ' / / / / /_ /___/ *
- / / (___/| (___ / (___/ (____ / / (___ * 1.90
- * * *
- Copyright © Chris Taylor, 1996.
- ___________________________________________________________________________
-
- MacroLife is suitable for use with all versions of RISC OS.
-
- If this is an unregistered copy, please read the end of this file
- for information on the extra goodies you get when you register
- (and support the charity Motivation).
-
- This Help file is split into sections:
-
- * Introduction
- * What is Life? <-- For newcomers to Life
- * How to use this program
- * Quick start <-- MacroLife essentials
- * The Manual
- * Acknowledgements
- * Registering your copy of MacroLife <-- why register?
-
- There is more information in the Docs directory within the application.
-
- *** MacroLife also supports on-line help via Acorn's Help application ***
- ___________________________________________________________________________
-
- ******************
- ** Introduction **
- ******************
-
- MacroLife is a desktop version of the famous game of Life,
- invented by the British mathematician John Horton Conway in 1970.
-
- It displays a scrollable window onto a Life plane, or grid, onto
- which you can place patterns of cells and watch how they evolve.
-
- Besides running on the desktop, MacroLife offers a very large Life plane.
- It is 65,536 cells on a side, over 4 billion cells in total.
-
- Facilities are provided to assist with navigating around the plane, but
- they are only needed if you want to generate really large patterns.
-
- Other features include:
- * saving, loading and editing of Life planes and regions.
- * predefined Lifeforms.
- * random field generation.
- * an option to switch to other algorithms such as '3-4' Life.
- * a provision for returning to the start position.
- * a wide range of magnifications.
- * ...
-
- *******************
- ** What is Life? **
- *******************
-
- Life is a fascinating 'game' in which patterns of cells on a
- two-dimensional plane evolve according to a simple rule.
-
- Despite its simplicity, Life patterns can behave like living organisms,
- moving, growing and even - theoretically, at least - reproducing and
- evolving.
-
- Each cell on the Life plane may be in one of two states, 'Alive' or
- 'Dead'. Time is measured in generations, each generation being produced
- by applying a calculation to each cell on the grid. This rule of Life
- is as follows:
-
- A cell will be alive in the next generation if it has exactly three
- living neighbours. If it has two live neighbours, it will preserve its
- state. If it has any other number, it will be dead.
- Each cell has eight neighbours, including the diagonally adjacent cells.
-
- The smallest object in Life is the 'blinker'; three cells in a row.
- The rules of Life switch the blinker between horizontal and vertical
- every generation:
-
- *
- *** * ***
- *
-
- The pattern on the icon bar, the glider, is the simplest of many Life
- 'spaceships', patterns which move. The glider moves diagonally:
-
- *
- * * * * * *
- *** ** * * ** *
- * ** ** ***
-
- The other Life pattern which MacroLife uses as a symbol is called the
- 'r pentomino', since with imagination it looks a little like a lower
- case 'r':
- **
- **
- *
-
- The word 'pentomino' is simply an extension of 'domino': a domino has
- two sections, and a pentomino has five.
- Putting an 'r' pentomino on the Life plane and selecting 'Run' results
- in an explosion of growth and activity.
-
- There are many approaches to exploring Life, you can place large random
- patterns and watch them 'evolve', design new Lifeforms, or simply have
- fun crashing Life spaceships and other patterns into each other to see
- what happens.
-
- The Draw file 'Patterns' in the MacroLife Docs directory contains a
- catalogue of Life patterns (including a prolific but unstable 'Acorn').
-
- Since Life was described by Martin Gardner in his Scientific American
- column, many enthusiasts have spent countless hours exploring its
- behaviour.
- Several books are available which describe these explorations, including
- 'The recursive universe' by William Poundstone, which among many other
- things describes how a Life pattern could reproduce itself.
-
- In the last few years, some remarkable discoveries have stimulated a
- fresh wave of interest in Life. Dean Hickerson, David Bell and others
- have led the search for new Lifeforms, and many of their creations are
- available in the library supplied with the registered version of
- MacroLife.
-
- *****************************
- ** How to use this program **
- *****************************
-
- Quick start
- ===========
- To start MacroLife, double-click on the application to run it and then
- click Select over the icon bar icon. This will create a new Life plane.
- You can add new cells to the plane by clicking with Select. You can
- also hold down the Select button and drag the mouse around, much like
- using Paint. Use Adjust to remove cells.
-
- When you have created your pattern, click on the 'Run' button or choose
- 'Run' from the Edit menu to watch it evolve. If it goes too fast, you
- can single-step the display using the 'Step' button or menu item.
-
- MacroLife has a collection of Life patterns - 'Lifeforms' - built in;
- you can call them up via the 'Add Lifeform' entry in the Edit menu.
-
- Once you have selected a Lifeform, a grey pattern with a dashed box
- surrounding it will appear on the plane. You can move this around with
- the mouse and then click Select to place it. A good pattern to start
- with is the 'Glider gun', in the 'Guns' submenu.
-
- If the Help application is running, it will display additional
- information about about each Lifeform in the menu.
-
- There are many facilities provided for editing these patterns, and you
- can combine them to build new ones.
-
- As an example, place a glider gun on the Life plane and run it until
- the 'Gen' display reaches 61. (It should now look like the pattern in
- MacroLife's start-up banner.) Now choose 'Glider mirror' from the
- 'Others' submenu. Move the grey glider until it is superimposed on the
- leading glider from the gun, and click 'Select'. If you start the
- program running again, a continuous stream of gliders should bounce
- off the mirror.
-
- When the generation reaches 106, stop the program and choose
- 'Glider mirror' again. This time, to match up the gliders you will need
- to rotate the mirror. Press 'A' on the keyboard to rotate the mirror
- A)nticlockwise, and you will be able to superimpose the gliders and
- start running again.
-
- You can also copy blocks of cells around the plane, and you can rotate
- and reflect these as well.
-
- To return to your starting position, or get rid of all the cells:
- * Double-click over the 'Gen' display to set the Generation to 0.
- * Double-click over the 'Pop' display to set the Population to 0.
-
- MacroLife uses two file types: Lifeforms, which can be automatically
- included in the 'Add Lifeform' menu, and Life planes, which store the
- whole plane together with settings and window positions.
-
- You can load both types of file by double-clicking on them, but
- MacroLife can only edit one plane at a time. Double-clicking on a
- Lifeform file will add it to any existing patterns on the plane.
- You can also drag Lifeform files onto the plane. They will appear
- centred on the mouse pointer.
-
- The Manual
- ==========
-
- The icon bar menu
- -----------------
- This has the usual 'Info' and 'Quit' items, and a 'Help' item which
- displays the file you are reading. The 'Save choices' item will save
- the options set for the current Life plane. It will be shaded if you
- do not have a plane open. It saves the choices set from the 'Options'
- dialogue box and various others including the scale, the speed, whether
- the grid is displayed, and the Life rule to be used. These will then
- be used whenever a new plane is created.
- It doesn't save the size and position of the plane window; this can be
- done by selecting the 'With settings' option when saving a Life plane.
-
- The toolbar
- -----------
- The toolbar at the top of the window displays information about the
- current Life plane and provides various controls. The 'Gen' and 'Pop'
- displays show the current generation and the population - the number of
- living cells. The 'X' and 'Y' displays show the co-ordinates of the
- cell at the centre of the visible region of the plane.
- 'X' increases from left to right, and 'Y' increases from top to bottom.
- The 0, 0 point is near the centre of the plane.
- Immediately to the right of the 'eye' button on the toolbar, an optional
- display gives quick help on the function of the icon under the pointer.
- You may need to turn off 'Narrow toolbar' via the Options dialogue box
- to see this.
- All of the controls and information on the toolbar can also be accessed
- from the menu, so if you don't like it, you can turn it off.
-
- Main toolbar controls:
-
- * RUN/STOP - Once you have created a pattern, you can start producing
- new generations by clicking on the run button on the
- toolbar - the one with the solid arrow.
- The arrow will change to a block; click on this to stop.
-
- You can also stop the program by pressing the Escape key.
- This can be used to interrupt long calculations.
- You can force the program to stop even when drawing a
- new generation using Ctrl-Escape.
-
- * STEP - The button with the 'broken arrow' is used to single-step,
- producing one new generation each time you click on it.
-
- * SCALE - The 'magnifying glass' button allows you to change the
- scale. The current scale is shown in the title bar.
- You can set magnifications of less than 1:1, right down to
- the point where the whole plane is visible.
- As the magnification falls below 1:1, less and less detail
- is shown, but at least one pixel will always be on if any
- cell in that region is occupied.
- Clicking on the scale button with adjust toggles between
- the current and the previously selected scales.
- Clicking on the scale button with shift-Select and
- shift-Adjust respectively decrease and increase the scale.
-
- * CENTRE - Click with Select on the 'target' button between the
- X and Y grid co-ordinate displays to re-centre the window,
- moving the visible area to the middle of the plane.
- Click with Adjust to move the centre of the view to the
- average of all the living cells on the plane.
- Click with shift-Select to drag the visible area around
- the window. The mouse pointer will change to a hand, and
- Select can be used to drag the window once, or Adjust to
- repeat the dragging operation. (You can also use the Shift
- view button to do this).
-
- Other functions available from the toolbar:
-
- * CLEAR - To clear all the cells from the plane, double-click
- with Select over the population display.
-
- (i.e. Double-click on the Population to set it to zero.)
-
- * RESET - To reset the plane to its start point (generation zero),
- double-click with Select over the generation display.
- This will only work if the generation is greater than zero
- and the 'keep start point' option is selected.
-
- (i.e. Double-click on the Generation to set it to zero.)
-
- * NEW START - To make the current generation the new generation zero,
- double-click with Adjust over the generation display.
- This will only work if the generation is greater than zero
- and the 'keep start point' option is selected.
-
- * MOVE VIEW - Double-clicking on either the X or Y grid co-ordinate
- displays will open a dialogue box allowing you to move
- the window directly to a specified co-ordinate. It's
- usually easier to use the overview windows to move around.
-
- Additional toolbar controls:
-
- Some of the following controls may not be immediately visible. You can
- choose whether these buttons appear above or to the right of the main
- controls via the Options dialogue box.
- Drags (and many other operations) can be aborted by pressing the Escape
- key, and repeated by using Adjust instead of Select.
- If a Lifeform or block has less than ten thousand cells, live cells in
- the block are displayed in grey.
- When dragging, the Population and Generation figures are temporarily
- replaced by the Width and Height of the dragbox.
-
- * GRID - The grid button switches the grid lines on and off.
- The grid is only shown at magnifications of 3:1 or greater.
-
- * LIFEFORMS - The 'R Pentomino' button produces a pop-up menu from
- which you can choose a predefined Lifeform to drag onto
- the plane. Before the drag starts, MacroLife will scale
- down the display if required, so that the entire Lifeform
- will be visible in the current window.
-
- The predefined Lifeforms are stored within special library files in
- the Lifeforms directory within the MacroLife application.
- You can also put your own creations into the five subdirectories within
- this one. MacroLife automagically builds the menus using first the
- library file !FormLib and then any Lifeforms it finds in these
- directories, so they will appear the next time you run the program.
- If you have registered, you will receive a library management tool,
- libform, with which you can create new Lifeform libraries or extract
- the Lifeforms from existing ones.
- Each directory also contains a text file giving more information about
- the Lifeforms in the library, these are used by the online help system.
- If you want to give your Lifeforms a title other than the filename,
- click on the 'toggle size' icon on the 'save area as' dialogue box -
- see SAVE AREA.
-
- * RANDOM - Clicking on the 'random dots' button opens a dialogue box
- which allows you to specify the required density. You can
- then drag a box which will be filled with a random pattern
- at that density. If you want to superimpose the random
- pattern on an existing one, hold down the shift key during
- the drag.
-
- * BLOCK CLEAR- The button with a blank white square is used to clear areas
- of the plane. After clicking on it, you can drag a box on
- the Life plane which will be cleared of cells.
-
- * BLOCK FILL - The button with a solid black square is used to fill areas
- of the plane. After clicking on it, you can drag a box on
- the Life plane which will be filled with new cells.
-
- * BLOCK MOVE - The 'scissors' button is used to move blocks of cells
- around the plane. Drag a box around the cells you wish to
- move and then click Select to move them to a new location.
-
- * BLOCK COPY - The 'camera' button is used to copy blocks of cells
- around the plane. Drag a box around the cells you wish to
- copy and then click Select to copy them to a new location.
-
- After a Lifeform has been chosen, or a Move or Copy block has been
- selected, the pointer shape changes to an 'F'. At this stage, you can
- press any of the following keys before clicking Select to place the
- block of cells:
- H - Horizontal flip - will reverse the block left-to-right.
- V - Vertical flip - will flip the block upside-down.
- C - Clockwise rotate - will rotate the block 90° clockwise.
- A - Anticlockwise rotate - will rotate the block 90° anticlockwise.
- You can use any combination of keypresses, and the 'F' will change its
- orientation to match the current transformation.
- (R - Rotate and F - Flip also work as synonyms for C and H)
- When a block of cells is placed, normally all of the cells are set,
- whether 'alive' or 'dead'. If you want to merge the new pattern into
- its destination, use shift-Select or shift-Adjust.
-
- * SPEED - To alter the speed at which MacroLife produces new
- generations, click on the 'speedometer dial' button and
- choose the speed you require from the dialogue box which
- appears. The needle on the dial will change to show the
- new speed.
- Clicking on the speed button with shift-Select and
- shift-Adjust respectively decrease and increase the speed.
-
- If you select the 'Full speed' option and then run,
- everything else on the desktop will stop, and the toolbar
- displays won't be updated. The display on the hourglass
- will show the last two digits of the generation.
- You can stop the program by clicking Adjust or pressing
- the Escape key.
- Clicking on the speed button with ctrl-Select and
- ctrl-Adjust switch single-tasking full speed off and on.
-
- * STOP AT - Clicking on the '1103' button opens a dialogue box which
- allows you to set a generation at which the program will
- stop, optionally beeping to let you know it has finished.
-
- * RULE - This button initially shows a 'Glider' like that on the
- icon bar and indicates the rule being used to calculate new
- generations. Clicking on it opens a dialogue box showing
- the three predefined rules, Conway's Life, 3-4 Life, and
- Fredkin's game. The symbols are Lifeforms found in planes
- running with the selected rule.
-
- A fourth option in this box allows you to experiment with
- other rules. If you select the 'User defined' option,
- the window will expand to show additional controls which
- allow the conditions for cell birth and survival to be
- changed. The block labelled 'Cells' determines which of
- the 'neighbour' cells are considered. The block labelled
- 'Try' allows you to select one of the predefined rule sets
- which are provided as examples.
-
- 3-4 Life is a variation in which cells with either three or
- four neighbours are alive in the next generation. There is
- no distinction between 'birth' and 'survival', as with
- Conway's Life.
-
- Fredkin's game is an unusual variation in which all
- patterns, however complex, reproduce themselves. The rules
- are even simpler than Life: diagonally adjacent neighbours
- are not considered and if one or three of the four
- remaining neighbours is alive, the cell will be alive in
- the next generation.
-
- HighLife is the default 'User' rule. It is an interesting
- variation on Conway's original.
-
- Clicking on the rule button with shift-Select and
- shift-Adjust cycle the selected rule backwards and forwards
- through the available options.
-
- * SAVE - The 'floppy disc' button opens a standard 'save as'
- dialogue box so you can save the current plane.
- If you select the 'With settings' option, the current
- size and position of any open MacroLife windows will
- also be saved, together with settings such as the speed
- and scale. If you save an empty Life plane called
- 'LifePlane' into the application directory, MacroLife
- will start up with this plane open, but will not set
- the filename, so it won't be accidentally overwritten.
-
- * SAVE AREA - This is the floppy disc with a Lifeform superimposed on it.
- If you click on this button the pointer will change to
- an arrow with a Lifeform attached. Move the pointer to a
- corner of the area you want to save and drag the bounding
- box until it surrounds the area. When you release select,
- a 'save as' box will appear and you can save the area as a
- Lifeform file. This file can then be dragged back onto the
- plane. The Lifeform will appear centred on the cell over
- which you released the mouse button.
- You don't have to size the box exactly, as MacroLife will
- automatically shrink it to fit when it saves the Lifeform.
-
- * SHIFT VIEW - Click with Select to drag the visible area around the
- window. The mouse pointer will change to a hand, and Select
- can be used to drag the window once, or Adjust to repeat
- the dragging operation.
-
- * MOUSE - The 'mouse XY' button opens a small window which shows
- the current plane X and Y co-ordinates under the pointer.
-
- * OVERVIEW - Clicking on the 'eye' button opens all three overview
- windows. They can also be opened individually via the root
- menu.
-
- Each overview window shows which areas in the part of the plane which
- it represents contain occupied cells. These are indicated by black
- 'blobs' within the boxes. The red highlight shows which area is
- currently at the centre of the main window. If a blue highlight
- appears, this roughly represents the area currently visible in the
- main window.
-
- The Global window shows the entire plane. Each 'box' within the window
- represents an area of 4096 by 4096 cells.
- The Regional window shows the contents of the area currently highlighted
- in the Global window. Each box represents an area of 256 by 256 cells.
- The Local window shows the contents of the area currently highlighted in
- the Regional window. Each box represents an area of 16 by 16 cells.
-
- By clicking on the overview windows, you can move the view of the main
- window around the plane. Clicking on the Global window resets both the
- Regional and Local positions, and clicking on the Regional window resets
- the Local position, so start with Global and work down if you want to
- move a large distance.
-
- The root menu
- -------------
- The main menu has three submenus: File, Edit, and View, and an item which
- opens the Options dialogue box.
-
- The File menu
- -------------
- From the File menu, you can save the plane or portions of it to disc.
- It has the following items:
-
- * Info - This leads to an info box which provides
- information about the current Life plane.
- * Save - Duplicated on the toolbar, this leads to a
- standard 'save as' box, and lets you save the
- entire Life plane to disc.
- If you have already saved the plane, clicking
- in this item will save it immediately.
- * Save area - Duplicates the toolbar button.
- * Export - This leads to an 'export as' box which lets
- you save the Life plane as a text file. This
- format can be read by a number of Life
- programs, for example XLife on Unix machines.
- Text files can be imported by dragging them to
- the icon bar, as long as a plane is not
- already being displayed.
-
- The Edit menu
- -------------
- The Edit menu allows you to control the production of new generations
- and to add new Life patterns to the plane. It has the following items:
-
- * Run (/Stop) - Duplicates the toolbar run/stop button
- * Step - Duplicates the toolbar step button
- * Set speed - Duplicates the toolbar speedometer button
- * Set rule - Duplicates the toolbar rule button.
- * Stop at - Duplicates the toolbar button.
- * Block edit - Leads to a submenu with four items which
- duplicate the Clear, Fill, Move and Copy block
- toolbar buttons.
- * Add Lifeform - Duplicates the toolbar button.
- * Random field - Duplicates the toolbar button.
- * Clear plane - This opens the same dialogue box as a Select
- double-click on the toolbar Population display.
- * Reset plane - This opens the same dialogue box as a Select
- double-click on the toolbar Generation display.
- * New start - This opens the same dialogue box as an Adjust
- double-click on the toolbar Generation display.
-
- The View menu
- -------------
- The View menu provides controls which affect the appearance of the Life
- plane. It has the following items:
-
- * Centre view - This has the same effect as a Select click on
- the toolbar centre button.
-
- * Average view - This has the same effect as an Adjust click on
- the toolbar centre button.
-
- * Shift view - This has the same effect as a Select click on
- the toolbar shift button
-
- * Move view - This opens the same dialogue box as a
- double-click on the toolbar X or Y co-ordinate
- displays.
- * Scale view - Duplicates the toolbar magnifier.
- * Show grid lines - Duplicates the toolbar grid button.
- * Show mouse position - Duplicates the toolbar mouse XY button.
- * Show overviews - Clicking on this item will open all three.
- overview windows. They can also be opened
- individually via the submenu.
- * Show tools - Turns the toolbar on or off.
-
- The Options dialogue box
- ------------------------
- This dialogue box allows you to specify the following:
-
- * Colours - The colours used on the Life plane.
- * Wrap at border - Whether patterns 'wrap around' when they reach
- the edge of the plane.
- * Keep start point - Whether the start point (generation zero) will
- be saved. You may wish to turn off this
- feature if you are short of memory.
- * Auto scroll - Whether the window will scroll if you are
- adding or deleting cells or dragging blocks of
- cells and the mouse gets close to the edge.
- * Toolbar help - Whether a 'quick help' text is provided.
- This appears to the right of the 'eye' button
- on the toolbar and describes the button
- currently under the mouse pointer.
- * Narrow toolbar - Whether a single row of buttons is spread
- along a narrow toolbar, or a double row is
- stacked on a wider toolbar.
-
- The options you set will only apply to the current plane. Click on
- 'Save choices' on the iconbar menu to store them permanently.
-
- The Choices file
- ----------------
- MacroLife normally saves its Choices file in the application directory,
- and can optionally start up with a default Life plane, if one is saved
- into the application directory. If this is not possible, for example if
- MacroLife is run from a read-only archive or from a CD-ROM, a system
- variable, MacroLife$ChoicesDir, can be defined. This will specify an
- alternative directory which will be used instead.
- If you have a registered copy of MacroLife, this is where the program
- will look for the registration file.
-
- **********************
- ** Acknowledgements **
- **********************
-
- Acorn's technical people, for designing a great family of computers.
- Dominic Symes and his cohorts for Zap, a superlative text editor.
- Jason Williams et al. for the Wimp library DeskLib, which made Life easier.
- Dick Alstein for TemplEd, a template editor that doesn't drive you crazy.
- Mark Moxon and David Matthewman at Acorn User, for taking an interest.
- Neil Burgess and Randolph Morris at BEEBUG, for extensive testing :-)
- Robin Watts, for helpful suggestions and being my first customer.
- Steve Spry, for tracking down a bug just before release. Only one, Steve?
- Dean Hickerson, David Bell and others for many of the new Lifeforms.
- William Poundstone, for a fascinating book on cosmology and Life.
- (The recursive universe, Oxford University Press 1985)
-
- ****************************************
- ** Registering your copy of MacroLife **
- ****************************************
-
- On registration, you will receive:
-
- * The latest version of MacroLife.
- * A key file which will suppress the initial registration message
- and enter your name in the Licence field.
- * !LibForm, a Lifeform library management tool.
- * An archive containing hundreds of amazing Life patterns.
- * An illustrated manual.
- * Free upgrades (on receipt of the original disc and return postage).
-
- To register, send a cheque for eight pounds to the address below.
- If you are on the net, I can email you the files (without the printed
- manual) for seven pounds.
- I will then donate four pounds to Motivation, a charity which designs
- inexpensive wheelchairs and organises their production using local
- materials in countries which cannot afford commercial models.
-
- If you wish to use !MacroLife on a network, site licences cost an
- additional sixteen pounds. Again, half of this goes to Motivation.
-
- Please make the cheque payable to Mr C.J.Taylor. If you prefer,
- you can send two cheques, one made out to Motivation.
-
- If you find a bug in !MacroLife, or would like additional features, or
- just want to tell me how great/awful it is, please write/email me:
-
- Chris Taylor email: chris@sati.demon.co.uk
- 32 Burghley Court tel: 01908 569556
- Great Holm
- Milton Keynes
- MK8 9EL
-
- This address should be valid until September 1996.
- After this date, write to:
-
- The Haven
- Buffler's Holt
- nr Buckingham
- MK18 5DN
-