 ________________________________________________________________________
  
Phoenix III - The ultimate (?) grayscale shoot-em-up for the TI-83+/85/86!
  
                  Version 0.31 - Released September 7, 2002

        This program is in the public domain.  There is no warranty.
  
       E-Mail - pad@calc.org          Web Page - http://pad.calc.org/
 ________________________________________________________________________


 _____________________________________ TABLE OF CONTENTS

 1. Introduction ..................................................... 24  
 2. System requirements .............................................. 42
 3. Legal stuff ...................................................... 61  
 4. Instructions ..................................................... 87
 5. Contacting the Programmer ....................................... 124
 6. Acknowledgements ................................................ 154
 7. Version History ................................................. 196
 8. The Future ...................................................... 226

 _____________________________________ INTRODUCTION

Phoenix III is a free/open source shoot-em-up style game for the TI-83+,
TI-85, and TI-86 calculators.  This game was written completely in Z80
assembly language to fully take advantage of the calculator's capabilities.

If you want to obtain other calculator programs or learn more about TI
calculators, I would suggest visiting the web sites listed below.  They all
have large archives as well as help sections.  If you don't know how to
transfer programs to your calculator, or how to run them once you've
transferred them, you need to read their help pages to learn these things.

    http://www.ticalc.org/       ticalc.org
    http://www.calc.org/         Dimension-TI

Modification of this program is encouraged.  To facilitate this, I have
placed the program in public domain.

 _____________________________________ SYSTEM REQUIREMENTS 

TI-83+ version:
 * a TI-83+
 * 7K of memory to store the game
 * an additional 5.2K of free memory to run the game
 * Ion 1.6 (or a fully compatible shell) must be used

TI-85 version:
 * a TI-85
 * 7K of memory to store the game
 * an additional 5.2K of free memory to run the game
 * Usgard 1.5

TI-86 version:
 * a TI-86
 * 6K of memory to store the game
 * no shell is required (but you can run it from one) 

 _____________________________________ LEGAL STUFF

Since you did not pay me anything for the right to use this software, there
is no warranty of any kind.  This software has been tested, and at the time
of release the author was not aware of any serious problems with it.
However, there is still a possibility of unforeseen problems.  If you do
encounter any problems with this program, please inform me as soon as
possible (of course, I cannot guarantee that I will fix such problems).

This software is in the public domain, which means that it is not copyrighted
at all.  Thus you may use, copy, or modify it any way you want.

However, I would appreciate if you at least do the following if you are
making a modified version:

 - Don't restrict distribution of it
 - Supply source code
 - Give me a reasonable amount of credit
 - Make your version also public domain, or copyrighted under a license that
   still allows users to distibute modified versions freely 

Note that this applies only to the parts of the program that I wrote.  All of
the source code supplied was written by me.  However, the TI-86 files are
compressed by Lite86, and the main program uses the Lite86 decompression
routine also.  Lite86 is copyrighted by Kirk Meyer.

 _____________________________________ INSTRUCTIONS

To install the game on your calculator, simply send the one program file to
the calculator.  If you are using a TI-86, you must also send the string
files phx3code and phx3data, and you can start it either by typing
"Asm(phoenix3" on the home screen or from a shell.  For the TI-83+, you must
run it from Ion (or a fully compatible shell).  For the TI-85, you must run
it from Usgard.

Once you run the game, you see the title screen.  You can move your ship
around on it to start the game in a different position.  Press 2ND to begin
playing the game.

Gameplay controls:
Arrow keys - Move your ship
2ND - Shoot
MODE (TI-83 Plus) or MORE (TI-85 and TI-86) - Save the game and exit
ENTER - Pause and unpause the game

Additional controls that work everywhere:
DEL (TI-83 Plus) or EXIT (TI-85 and TI-86) - Quits immediately
PLUS - Increases contrast
MINUS - Decreases contrast

During gameplay on the TI-85 and TI-86, a panel on the right side of the
screen shows your shield status, the current level, and your score.  On the
TI-83+, only the shield status is displayed (in the lower-right corner) due
to the limit screen size.

Note that this is an early version of the game, so it is fairly short.  Once
you finish the game, it simply repeats until you are destroyed.  It gets
harder each time through, so it will become challenging after a while.

Note that it may be necessary to adjust the contrast for the grayscale to
appear clearly.  Also, the grayscale will probably flicker somewhat on a
TI-83+ nomatter what settings you use.

 _____________________________________ CONTACTING THE PROGRAMMER

If you find any bugs in this game or have suggestions or comments about it,
please tell me in E-Mail!  If you are writing to report a bug, please be
sure to tell me exactly what the problem is and describe exactly what you
did before the problem occured.  If you don't do so, it will be very hard
for me to tell what is going wrong!  You should also tell me which version
of Monster you have and which calulator you use in any mail you send me.
My main E-Mail address is:

        pad@ocf.berkeley.edu

I will usually answer my E-Mail within a week.  If you don't get any answer
in two weeks, you can try sending to the following backup addresses:

        pad@calc.org
        luezma@netscape.net
        eeulplek@hotmail.com

If your E-Mail is set up to block all messages except those from certain
addresses, always be sure that you have un-blocked my address before
sending anything to me (best to un-block all of them, since I might answer
from a different one than you sent to).

You can always get the latest version of this game, as well as other
programs of mine, from my web page.  The addresses are:

        http://www.ocf.berkeley.edu/~pad/
        http://pad.calc.org/

 _____________________________________ ACKNOWLEDGEMENTS

The vast majority of this game is my (Patrick Davidson's) own work.  However,
there are a few others whose assistance was invaluable in producing this
game, and there efforts will be acknowledged here, in no particular order:

Paul Marks                  the rotating interlaced grayscale routine for
                            the TI-83+ (I didn't actually use it in this
                            particular version though, but maybe next time)

Alan Bailey                 the Asm86 development system

David Philips               bin2var (converts binary to variables)

Kirk Meyer                  Lite86 (TI-86 compression tool)

Rusty Wagner of the ACZ     the Virtual TI emulator

Corey Taylor of the ACZ     the CalcGS map editing software

Joe Wingbermuehle           For the fast TI-83+ display copy routine,
                            and the Ion system for the TI-83+

David Boozer                All of these people were instrumental in
Magnus Hagander             developing assembly support for the TI-85 and/or
Dan Eble                    the Usgard system.
Rob Taylor
Sam Davies
Jimmy Mardell
Austin Butler
Mel Tsai

Robert Anderson             Beta testers
Toehead
Aaron Povolish
Will Chiu
Mike Lowery
Harron Li

If you should be here but were left out (or worse, I misspelled your name)
just E-Mail and I'll be sure to fix it for the next release.

 _____________________________________ VERSION HISTORY

Line counts here include all versions (which share most of the source code).
Sizes here are for the (compressed) TI-86 version.

 Version  Date       Bytes  Lines  Description
                               
    0.01  16-Apr-01   4669   4641  First release

    0.10   1-Jun-01   5298   5365  All versions now use same source files
                                   Increased player ship speed
                                   Tightened ship boundaries
                                   Added TI-85 version
                                   Added a new enemy type
                                   Added shield display to TI-83+ version

    0.20  23-Jun-01   5300   5474  Fixed high score sorting bug
                                   Fixed TI-85 memory arrangement
                                   Grayscale now option on TI-83+

    0.30  30-Apr-02   5845   5906  TI-83+ now allocates extra memory
                                   Added a new enemy
                                   Added triple cannon
                                   Implemented bosses
                                   Really fixed TI-85 memory this time
                                   Implemented flexible 83+ display delay
                                   Improved keyboard reading
                                   TI-83+ speed same in all display modes
                                   TI-83+ now pauses in grayscale

    0.31   7-Sep-02   5845   5906  TI-83+ now build with devpac8x again

 ______________________________________ THE FUTURE

At this point, the game is far from complete.  Things to be added include a
level file selector, a much larger standard level file, a more complex
power-up system, and many other things.  This game will probably be ported
to the other Z80 calculators as well, though porting it is not a high
priority (if you want such ports sooner, you could do it yourself; it should
not be terribly difficult).

In addition to Phoenix III, I do plan to develop several new games for both
the Z80 and 68K-based calculators, including a new platform game.
