      *****************************************************
      *             Tettrix - The Instructions            *
      *****************************************************

1. The Copyright/Disclaimer.
   ~~~~~~~~~~~~~~~~~~~~~~~~~
This program is provided as is, without any warranty, expressed or 
implied.  Anything happening as a result of using this program has got 
absolutely nothing to do with the programmer, Niall Sommerville, or the 
AMOS system.  AMOS is copyrighted by Europress Software 1991, all 
rights reserved.  This program, Tettrix, and this document file are 
both copyrighted by Niall Sommerville 1991/2, and Amiga Computing.
When distributing this program, this Document file, the level data 
and the playlists must all remain intact.  The highscore chart may be
deleted at will, because the program will always try to save a new one.
If anyone has used the name `Tettrix' before me, supply me with proof
(See the address at the end), and I will change the name.  I am hereby 
releasing this program into the public domain, and if anyone uses this 
game regularly, then I would be most obliged if the could send me a donation
(Amount at you discretion - whatever you feel this game is worth - NEW PD.
Utilities would also be accepted, or AMOS Public Domain Utilities - Please,
No Demos, Music or Slideshows).  I would acknowledge the donation, and,
if you included a disk, I would send the latest version of Tettrix to you
when it was completed.  If enough replies are received, I will keep a database
of registered addicts, and keep them informed of upgrades, etc.  My hearing 
would also be improved if a registered user asked for a specific feature 
or improvement, but all requests are welcome, and will be gratefully 
accepted.

2. General Overview of Tettrix.
   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
As a previous owner of a C64, my favourite game was the classic Tetris, 
(c) Mirrorsoft.  When the Amiga version was released, I was very 
disappointed with it (the backdrop alone was enough to start a migraine), 
and it was not a patch on the original.  Some of the PD. versions are 
quite good, but I missed that program very much.  Reminiscing one day, I 
thought to myself : "Why don't I try and write a similar version to the 
C64, but utilising some of the Amiga's power ?".  And here we are ...

Tettrix - A horizontal Tetris variant.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
     IMPORTANT : THIS PROGRAM WILL NOT WORK ON A 512K AMIGA.

To be different (I don't know, maybe even unique ?), in this program, the 
pieces move horizontally, and the lines are formed vertically.  The aim 
of this game, just in case you are young, or are just back from Mars is 
this : By utilizing the randomly given pieces, you have to fill the zone, 
by making line.  A line is detected when the space between the top and 
bottom walls if filled, with no gaps, in a specific row.  This line is 
then removed, and the rest of the grid is moved down to fill the space.  
The object of the game is to make as many lines as possible.  After a 
certain number of lines have been made (variable in this version), the 
piece movement rate is increased, to make it harder.  The game ends when 
you reach the end of the zone.

3. Specific Features of Tettrix.
   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
(a) As previously mentioned, this version plays horizontally.
(b) The standard 7 shapes, and 4 separate rotations (depending on the   
    shape).
(c) 20 speed levels, which approximate to a delay of 20 (level 0) to 1   
    (level 19) 50 th's of a second between piece moving right.
(d) 3 different game types : 
    (i) Normal Game, as described above.
   (ii) Custom Game, defined by using the built-in level editor and the 
        playlist (also with an editor built-in).
  (iii) Random Game, in which a variable height of the game zone is     
        filled with block, at the start of each level, and the size of  
        the zone increases as the level increase.  Again, the number of 
        lines needed to reach the next level is variable.
(e) Built-in level editor, with the following features : 
  (i) 16 Colour edit mode - Colours are user definable for each level design.
 (ii) Ability to save/load levels to disk, for use in the playlist.
(iii) Editing features include :
      Zone flipping - X & Y.
      Zone Scrolling - Up, Down, Left & Right.
      Inversion of the Zone.
      Mouse-Controlled Editing.
      Each level can have its own value of the number of lines needed to 
      finish the level.
 (iv) Each level can have its own unique palette, saved along with the level
      data.  This can give your version of Tettrix (c) a very personal touch.
      These colours are changed automatically when playing a custom game.
(f) The Playlist.  This is a list of levels (max 20) which are to be played 
    in the custom game.  The playlist is created and edited from its own 
    editor - See later for instructions on use.
(g) The Random Game - described above.
(h) Game Timer
(i) Believe it or not, there is aprrox 60K of packed graphics and samples 
    in this program, and nearly 90K of text.  The program is approaching  
    2000 lines long, and nearly 10000 instructions.  Unpacked, the compiled 
    game code is approximately 206K.

4. Specific Instructions.
   ~~~~~~~~~~~~~~~~~~~~~~
(i) The Title Screen.
    ~~~~~~~~~~~~~~~~~
This shows the game title, author's name (me), and the continuously 
cycles between the AMOS credits and the high-score chart.  Pressing the 
fire button or the left mousebutton takes you to the menu.
 
(ii) The Menu.
     ~~~~~~~~~
This is the heart of the program, and has 6 options :  

(1) Play Normal Game, L=10 (or whatever)
    This would start a normal game with ten lines required to move onto 
    the next level.  L can be changed by using the cursor up/down keys, 
    from a minimum of 1 to a maximum of 99.
(2) Level Editor
    This takes you to the Tettrix Level Editor.      (See Later)
(3) Create A Playlist.
    This takes you to the Tettrix Playlist Editor.   (See Later)
(4) Play A Custom Game
    This allows you to play a custom game, by selecting a playlist from  
    disk to use for the game.  Incorrect selection of a file will result  
    in a normal game being started.
(5) Play A Random Game, H=10, L=10.
    This would start a random game.  Again, L is varied using the       
    cursor up/down keys.  H is the initial height of the zone that is to 
    be filled randomly, starting from the bottom of the well.  H can be 
    varied by using the cursor left/right keys, and varies from 1 to    
    30.  As you increase through the levels while playing, H is         
    increased by 1 each level, to make the game harder. 
(6) Quit Tettrix
    This does what it says, but I don't think that you will need this   
    option at all.

(iii) Basic Game Control.
      ~~~~~~~~~~~~~~~~~~~
The game can be controlled by either the mouse, or by joystick.  
Personally, I prefer playing by mouse, because it is more sensitive.  
Moving the mouse up and down moves the block, the LEFT button rotates 
the block, and the RIGHT button drops it down the zone.
  Hitting BOTH buttons together pauses the game, with the LEFT 
mousebutton to resume (This was included so that any CDTV owners who have a
disk drive could pause the game, as they have no keyboard).
Joystick control is : Up moves the block up, Down moves the block down, 
Fire rotates the block, Right drops it, and Left pauses the game, with 
fire to resume.  The SPACEBAR can also be used to pause the game.
Pressing the ESCAPE key, WHILE PAUSED, quits the current game.  This 
gives you a score of 0, and a line total of 0.

At the top of the game screen, beside the SCORE and LEVEL words, are 4 
white numbers, 2 beside each.  The two beside SCORE are the total number 
of points that you have score, and the number of lines that you have 
made.  The other two beside LEVEL are the current level you are on, and 
the number of lines you need to make to get to the next level.  
Underneath the game zone, there is a number which represents the total 
number of single blocks that are in the game zone, excluding the piece in 
motion.  This number is constantly updated, and if it reaches 0, then a 
clearance bonus of 1000 pts is added, but this is very hard to achieve 
regularly (if at all!).  The number beside it represents the highest block
from the right hand side of the zone.  It was created for debugging
purposes, but I liked it, so I left it in.

Once the game has ended, you are presented with a screen telling what type
of game you were playing, and what score you achieved with how many lines you
made.  If this score is great enought to enter the highscore chart, then the
26 letters of the alphabet will appear, along with SPC DEL and END. 
Enter your name by clicking on the required letter (max 30 chars).
    Using the LEFT  mousebutton will give lowercase letters.
    Using the RIGHT mousebutton will give UPPERcase letters.
   (This has no effect on SPC DEL END - just use the left button on them)
The highscore chart will then be saved to the s: directory - please leave the
disk write enabled as the program will quit if it cannot write the file.

Game Scoring :
~~~~~~~~~~~~~~
The game is scored as follows : 
 Making 1 line at a time                : 20 pts.
 Making 2 lines at a time               : 45 pts.
 Making 3 lines at a time               : 70 pts.
 Making 4 lines (the maximum) at a time : 95 pts.

 A total clearance of the zone earns a 1000 pt bonus.

 Dropping a game piece earns the number of points equivalent to the 
height at which you dropped the piece.  The further left along the game 
zone you drop it, the more points you get.
 A piece landing earns the inverse of the height at which it lands, i.e. 
the further right in the game zone the piece lands, the more points you 
get for it.

(iv) The Level Editor.
     ~~~~~~~~~~~~~~~~~
This is one of the special options available in this program.  Upon 
selection, you are presented with a screen similar to that used in the 
main game, but with 16 colours across the top, and a control panel at 
the bottom.  
  In the top right hand corner is a box with Lines=X in it, where X is 
between 1 and 99.  This is the number of lines required to complete this 
level, and can be varied using the cursor keys :
       Cursor Up    : Increase the number of lines by 1.
       Cursor Down  : Decrease the number of lines by 1.
       Cursor Right : Increase the number of lines by 10.
       Cursor Left  : Decrease the number of lines by 10.
  Clicking on any of the colours at the top of the screen selects that 
colour as the current drawing colour.  Note that it is uneccesary to 
select the background colour (the first one) to erase on the grid, as 
the right mouse button can be used for this purpose (like DPaint).
It has been included so that it can be modified using the R G B sliders 
at the bottom of the control panel, as can all the other colours.  In the 
middle of the screen, there is a full size version of the game zone, 
cross-hatched with lines to represent the rows and columns of the game.  
Clicking in a small box with the left mousebutton fills it with the 
current ink colour, and using the right mousebutton, with colour 0.  The 
control panel below this contain several options.  I will take these from 
left to right, going down each column.

Save : This allows you to save the level you are editing, along with the 
       colours you have defined, and the current number of lines         
       required to complete the level.  If the extension ".Lvl" is not   
       added by the user, the program will add it automatically.  It     
       helps to tell you what type if file it is.

Load : This allows you to load a previously saved level, to modify it    
       further.  The colours at the top of the screen will change to     
       reflect the colours saved in this file.

Kill : This allows you to delete any file on a disk.  There is no        
       verification, so BE CAREFUL.  If you have not already done so, I  
       advise you protect the following files from deletion using        
            PROTECT filename rwe         on : Tettrix, Tettrix.Doc

This would ensure that you could not accidentally delete the game or 
this document file.  (This version of the PROTECT command makes the file 
readable, writeable and executable.  If you wished, this Doc file could 
also be protected using just rw).  If I remember, I will do this myself 
before I send the disk away.

Next on the control panel comes the SCROLL controls, a series of 4 
arrows representing UP, DOWN, LEFT and RIGHT, strangely enough.  This 
moves the image by one box in the relevant direction in the game zone, 
and when it reaches an edge, it will wrap around, and appear at the 
opposite side.

The button with the arrows like this : <-> and the word FLIP written on 
it in green is the FLIP X control.  This flips the entire game zone 
about its middle, thus reversing the image.  The button below this with 
the vertical arrows is the FLIP Y control, and does the same thing in 
the Y direction.

Below this button are 3 sliders, one for the Red, Blue and Green 
components of the selected colour.  These are varied by clicking on the 
small box with the left mousebutton, and holding it down wile moving the 
mouse left or right, to increase or decrease the amount of R, G or B in 
the selected colour, depending on which slider you use.

The next button is INVERT, which inverts the colours of the image in the 
game zone.  It follows the following rules :
	Colour 0 goes to Colour 15
	Colour 1 goes to Colour 14
	Colour 2 goes to Colour 13         etc.
and is entirely reversible, i.e. clicking in this button twice will 
return to the original image.

Below this is the CLEAR button, which clears the entire game zone.  
There is no undo, so be careful.  Note that this option does not restore 
the palette, so that many levels can be designed before having to change 
the palette again.  If this is not what you want, write and tell me, and 
I can change this in the next version (When I get time to do it !!).

The last button is the EXIT button, which leaves the editor, and returns 
to the title sequence.  Again, there is no checking, so if you use this 
option before saving you work, upon returning, it won't be there !

(v) The Playlist Editor.
    ~~~~~~~~~~~~~~~~~~~~
This is the other special option available in Tettrix (c), and allows 
you to play any sequence of 20 levels you wish.  The playlist is only 20 
levels long, because that is the number of different speeds that this 
game runs at. 

 If you manage to finish the playlist while playing a custom game, it 
loops round and goes through the list, but this time, the levels will be 
played faster than they were the first time.  Upon selection, you are 
presented with a window containing 20 filenames.  If you have just 
loaded Tettrix (c), and have not loaded a playlist, then they will all 
contain "No Filename Loaded.". To select a level to use, just click on 
the filename that you wish to change, and the standard AMOS requester 
will appear, allowing you to pick the file which is to be placed in the 
list at that point.  If you have never used the AMOS requester, see the 
end of this document, and I will give some brief instructions for its 
use.  After selecting a file from the requester, the program will check 
the file to see if it is really a level data file, and if it is, the 
name will be inserted into the list, and the list updated on the screen. 
 There are only 3 other controls in this playlist editor.

  (i) Pressing the "s" ( or "S") key will allow you to save a playlist   
      to disk, for use in a custom game.  If the extension ".Ply" is     
      not added by the user, the program will append the filename        
      automatically.

 (ii) Pressing the "l" (or "L") key will allow you to load a previously  
      saved playlist, for further editing.

(iii) Pressing the "q" (or "Q") key will exit the playlist editor, and   
      take you back to the title sequence.

(vi) Miscellaneous.
     ~~~~~~~~~~~~~~
That is all the instructions for the program given, but I still have 
some typing to do :

(A) The AMOS File Selector.
    ~~~~~~~~~~~~~~~~~~~~~~~
The arrows and the scroll bar on the left can be used to move through 
the files in the window, and the small circle above the arrows take you 
to the parent directory.  To select a file from this selector, either 
double click on the required filename, and click on it once, and then 
click on "OK", or press Return. The button underneath "OK", labelled 
"Quit", is the reject button, and exits the requester.  This can also be 
done by pressing the ESC key.  The button labelled "SORT" sorts the 
filenames into alphabetical order, and "Lock" forces the system to CD to 
this directory, and when the file requester is used again, it will 
automatically start to scan the locked directory.  A list of the 
available devices and ASSIGNments can be obtained by pressing the right 
mousebutton over the list window.  These are selected by clicking on 
them with the left mousebutton, and the system then scans that 
directory, or disk (in the case of dfn: or dhn:).  
  Below the file window is the current search pattern, which is NOT the 
standard AmigaDOS wildcard.  It is more like MS-DOS, where the * is the 
wildcard (Or the ARP system - if you have it).  Unless you know AMOS (then why
are you reading this bit !?!), you are advised to leave this bit alone, or 
you may think that you have lost some files.  Below this is the name of 
the current directory, and below that, the current filename.

(B) About The Programmer.
    ~~~~~~~~~~~~~~~~~~~~~
The programmer, Niall Sommerville, is a 19yr old student at Heriot-Watt 
University, studying Optoelectronics & Laser Engineering, and is in his 
2nd year there.  He has bee programming computers for about 9 years, 
starting on the C64, and has had his Amiga for over 2 years.  He has a 1 
meg A500 V1.2, with 2 Floppy drives, a Philips monitor, and a Star LC-10 
mono printer.  His next upgrade is going to be at least 2 megs of 
memory, probably more.   He has been programming in AMOS for about a 
year, and has experience with other languages (On the P.C.'s at Uni : 
Pascal 4/6, 80x86 Assembly Language (Very Simple Stuff, though), Fortran 
soon).  He has a keen interest in Rock Music, Queen being his favourite band.
Address for contact : 50 Marshall Grove,
                      Hamilton,
                      Strathclyde,
                      Scotland.
                      ML3 8NN.
I am always on the lookout for good, rock-ish tunes to use in my 
programs, because I am about as musical as an underwater fart.  Any tunes 
donated and used will be credited appropriately, and a version of the 
program will be sent to the donator.  (Makes it sound as if I am wanting 
some body parts - maybe a new brain would be nice !!)

(C) Thoughts which keep me entertained.
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
(1) Is the GURU male, female, both or neither ?
(2) Why Atari are still in business ?
(3) Who the hell wants to save Lemmings anyway ?
(4) If you've enjoyed this program twice as much as I've enjoyed writing 
    it, then I've enjoyed writing it half as much as you've enjoyed      
    playing it !
(5) One-way sexism - If a man says "It's a woman's job " - he gets       
    slaughtered, but if a woman says "It's a man's job ", then all you   
    hear is "Damn right, what kind of a guy makes a woman do a job like  
    that !".
(6) Error Code 103's.
(7) The `ever so slightly annoying' sound that arises from a certain 3.5" 
    drive being empty (I wonder what kind af amplifier it is attached to  
    inside !?!).
(8) Power spikes after making a 39 break in Jimmy White's Snooker, before 
    the end of the frame.  !!!  (This one is no joke !)
(9) Only having 880K double density disks - I want 1.44 Meg !!
    (Or an IBM Totally Rewritable Optical Drive - Each DISK can store 128 Megs
     of data !!! - Any got a spare grand and a half ?)
(10) "It's your round ..."  - AAhhhhhhhhhhhh !

(D) My Top 15 Software.
    ~~~~~~~~~~~~~~~~~~~
 (1) Jimmy White's Snooker.
 (2) AMOS & The Compiler
 (3) Alien Breed
 (4) Wordworth V1.1 
 (5) F15-II
 (6) Tanx - Yes, a PD Game - Absolutely Brilliant when you`re half-cut.
 (7) M1 Tank Platoon.
 (8) F19-Stealth
 (9) Kick Off 2 & The Final Whistle etc.
(10) IK+
(11) Silkworm - Miles better playwise than SWIV
(12) PGA Tour Golf - Ever had a round of 58 before !?!
(13) Rainbow Islands 
(14) Lemmings  
(15) Super Grid Runner

(E) My Thanks.
    ~~~~~~~~~~
                                    //    
Thanks to Commodore for the Amiga \X/     (And the Guru !)
Thanks to Francois Lionet & Europress for AMOS & The Compiler.

             That's it - I did the rest all by myself. !!!

-==--==--==--==--==--==--==--==--==--==--==--==--==--==--==--==--==--==--==--=
=--==--==--==--==--==--==--==--==--==--==--==--==--==--==--==--==--==--==--==-
