Nibbles 68k Version 2.5

Table of Contents
	1.0 What's New?
	2.0 Background Information
	3.0 Game Play
	4.0 Scoring System
	5.0 Game Control
	6.0 Custom Levels
	7.0 What's Next?
	8.0 Contact Information


1.0 What's New?

Version 2.5a
	* Fixed a small bug where it would give you MEGA points and overflow into
		protected memory causing the calc to crash.

Version 2.5
	* Reworked source code to convert into AMS 2.0x compatible format
	* still no libraries needed, but you need the AMS 2.0x kernel 0.6
		available on http://www.ticalc.org

Version 2.4
	* Added BSS sections to save program space (program is now 140 bytes smaller).
	* Included support for TI-92 Plus Calculator
		(tested for AMS 1.05 with DoorsOS 1.0 beta 2)
	* Included patched versions of the program files to work with the
		AMS 1.05 ROM upgrade from Texas Instruments. (www.ti.com)
	* The 1.05 patched versions are in the AMS 1.05 directory.
	* Note that the programs in the main directory will not run on AMS 1.05 and the
		ones in the AMS 1.05 directory will not run on AMS 1.00.
	* PlusShell 1.0 Alpha and DoorsOS 1.0 beta 2 kernels have been tested to work
		with the program, but versions of DoorsOS before that (like beta 1) may
		or may not work.
	
Version 2.3
	* Fixed bug in source where the game would lock up if you got more than 10 lives.

Version 2.2
	* Fixed bug in source where the game displayed more lives than you actually had.

Version 2.1
	* Fixed bug where your score would reset if it got too high even if you weren't
		cheating.
	* Fixed bug where the ESC key didn't exit the game from the intro or
		configuration screens.
	* Added constants to control initial levels, lives, and apples for
		each difficulty level instead of embedding the data within
		source code segments.

2.0 Background Information

Nibbles 68k is a clone of the popular Nibbles snake/worm game. (I don't think
it was ever a worm. Oh well, c'est la vie -- I hope I spelled that right. I
don't speak French)

Anyway, in the game you are this snake who goes around eating the apples
which are drawn on the screen. (The apples look like block btw) When you
eat the apples you grow longer until you complete the level.

3.0 Game Play

The current version of Nibbles 68k is rather self explanatory. Use your
link cable (GraphLink or Homemade Serial/Parallel) to transfer the nibbles.89z
(or nibbles.9xz for TI-92 Plus) to your calculator.

Note that if you have upgraded to ROM version 1.05, you must transfer the
nibbles program (either 89z or 9xz depending on your calculator) from the
AMS 1.05 directory because the main nibbles programs won't work with the
1.05 ROM. The patched versions in the AMS 1.05 ROM directory will work
though.

Nibbles 68k Version 2.5 has been tested to work on the TI-89 (AMS 1.00 and
AMS 1.05 using the patched program) and the TI-92 Plus (AMS 1.05). The
TI-92 Plus will have a lot of the screen blank, but it will play, nontheless.

Note that you must be running a shell kernel (PlusShell 1.0 Alpha and DoorsOS
1.0 beta 2 have been tested to work) to run Nibbles. This is because it uses
loader code from the kernel and supports its program management. If you don't
want to use kernels, then don't use this program.

To play Nibbles 68k, you can use the PlusShell Browser or the DoorsOS Explorer, 
or you can just type nibbles() from the directory it is in. It requires no libraries, 
and can be archived if you so choose. If you archive the program, however, new 
high scores will not be saved.

Game play is rather simple. The arrow keys will move the snake, or if you prefer, 
the keys 4, 5, 6, and 8 for left, down, right, and up respectively. If you need to 
pause the game and turn off the calculator to save battery life, (or in case of an 
angry instructor) just hit the HOME key. There are two cheat keys which are used 
in different areas of the game. One of them is the F3 key, but you'll have to find 
out where to push it. These cheats do two things. First, they give you infinite 
lives, and second, they let you skip a level. I might add more cheats later. There is 
a downside though. If you cheat, you cannot get a high score. Whenever you 
cheat, your score is reduced to 137. To quit the game, just hit the ESC key. This 
should work from any screen, but currently does not from the initial screen. I will 
fix this in the next version.

4.0	Scoring System

Nibbles 68k will keep score for added fun. Scoring is based on a number of 
factors. They are listed below in the order they appear.

Apples (those little blocks) are worth 10 points plus 5 times your current 
level. This means that on level 1, apples are worth 15 points. There are two 
bonuses which increase the number of points apples are worth: the speed bonus 
and the difficulty bonus.

The speed bonus works as follows. If your speed is higher than 3, but lower than 
7, each apple is worth an extra 25 points. If your speed is either 7 or 8, each apple 
is worth an additional 50 points. And, if you play on speed 9, each apple is worth 
an extra 75 points.

The difficulty bonus is simple. After you add the speed bonus and the level points 
to the base 10 apple points, the difficulty bonus is added. If you are playing on 
level 2 (medium mode), then multiply the number of points by 2. If you are on 
level 3 (hard mode), the multiply the number of points by 3.

So, apples are worth [10 + 5*level + speed bonus (0, 25, 50, or 75)] * difficulty 
level (1, 2, or 3).

In addition to apple points, there are also points awarded for each level you pass. 
For each level you pass on level 1, you get 500 points. For each level you pass on 
level 2, you get 1000 points. And for each level you pass on level 3, you get 1500 
points. In addition, for each life you have after you beat a level, add 10 points to 
your score.

The final bonus is a victory bonus. If you beat the game on level 1, add 1000 
points to your score. On level two, add 5000, and on level 3 add 10000 points.

Without cheating (or modifying the game), there is no way to exceed 70000 
points, so if you are cheating and you exceed 95000 points, your score is reset to 
0. This is so you don't get an address overflow error for trying to put too many 
digits in the score string. I may change this in the future to allow for more points 
to be scored. We'll see.

If you beat the high score (initially 1500 points), then your score becomes the new 
high score. Currently, there is only one high score and you cannot attach your 
name to it. This was because I released the game at 5:00 am in the morning after 
working on changes for 4 days solid and was too tired to do any more alterations. 
In a future version there will be 3 or 5 top scores and you will be able to write 
your name along with them.

5.0 Game Control

Nibbles 68k has both speed controls and difficulty levels to add to game control.
You can make the game as fast and hard as you want, or as slow and easy as you
want. But the harder the game is, the more points you get.

Nibbles 68k has 10 speed controls from 0-9 which influence how fast the game 
progresses. Level 0 is very slow which level 9 is very fast. As stated in Section 
3.0, the speed affects your score. The speed controls were first implemented by 
Stilgar.

Nibbles 68k also has 3 difficulty settings which affect how the game goes. Level 1 
is easy, level 2 is medium and level 3 is hard.

On the easy level, there are only 7 game levels to complete. Levels 8, 9 and 10 do 
not have to be completed to win the game. In addition, you start out with 8 lives 
and only have to eat 5 apples per level. You cannot exceed 9000 points playing on 
this level.

On the medium level, there are 10 game levels. You start with 5 lives and have to 
eat 8 apples to beat a level. Since each apple you eat makes the snake longer, this 
is more challenging. You cannot exceed 34000 points playing on this level.

On the hard level, there are 10 game levels. You start with only 3 lives and have 
to eat 12 apples to finish a level. This is EXTREMELY difficult even at alow 
speeds, so this level is worth a LOT more points. It is possible to receive almost 
67000 points playing this level.

6.0 Custom Levels

You can add custom levels to the game if you want. It is not too hard, but not 
extremely simple either. First, you must edit the source code, so if you find that 
task daunting, I guess you are out of luck.

First, edit the levels.asm file. If you want to add a new level, go to the end of the 
file. If you want to change a level, go to that level. (The comments tell you about 
the levels, so you can find them easily)

To add a new level, copy the first 19 lines of level 1 to the bottom of the file. 
Then change the longwords to reflect how the level should look. A 1 represents a 
block of 8 pixels. Each line is 5 pixels tall and 19 lines is the max. Also, the last 
line of the level MUST BE ALL ONES! This is because scoring information and 
lives/apples remaining data is displayed partially within the wall. If you had 
empty space there, it would disrupt the display. I don't think it would harm 
gameplay except that if an apple was drawn there, you might not be able to see it.

After you have added the level, you need to change the constants in nibbles.asm 
to reflect the level information. If you want to change the number of levels on 
hard mode, change levels3 to the new number. The levels2 variable is for medium 
mode levels and levels1 is for easy mode. On an unrelated note, you can also 
changes lives1/apples1 (or 2 or 3) for the number of apples and lives.

To edit a level, just find the level and change the data there. Fairly simple.

After all your changes are finished, use DoorsOS to recompile the program and 
test it. As long as you have followed directions, you should now have a/some 
custom level(s).

If you make any extra levels, please send them to me so I can add them to the 
public version of Nibbles 68k. Thanks for your cooperation.

7.0 What's Next?

What is planned for future versions of Nibbles 68k?

Extra lives based on the scoring system. (There should be some added bonus other 
than just the high score board)

An updated high score board with support for name entry and more than one high 
score (like a 3 or 5 top scores list)

Grayscale graphics to add better levels.

Change snake display to make his head distinguishable from his tail.

Add two-player support via same calculator or the link.

Add more levels and extra customization.

Add more cheat codes.

Add on-calculator level customization.

Anything you want. (Just mail me some suggestions and I'll take them under 
advisement)

8.0 Contact Information

Nibbles 68k was created by AlphaTekk Software and primarily John David
Ratliff. To send me suggestions, bug reports or comments, send email to
jdratlif@indiana.edu

The original Nibbles program was written by Stilgar. Nibbles 68k is based
upon the original version which Stilgar wrote for the TI-92.

The latest version of Nibbles 68k is always available at Techno-Plaza in
the AlphaTekk Section.

Techno-Plaza	http://www.technoplaza.net