
 CrASH v1.1                               (C)1997 Hideaki Omuro & Jeff Mears


 CrASH Instruction Manual

  We would like to congratulate you for choosing the CrASH shell, the most
advanced shell available for the TI-82.  CrASH features relocation, a
non-crashable keyboard handler, several very useful commonly used routines,
and compatibility with ASH 3.

  NOTE: The non-crashable keyboard handler only affects CrASH programs.
Any ASH 3 programs running under CrASH will still crash if you turn the
calculator off during a KEY_HAND.  Correctly written CrASH programs, however,
will not.

  Thoroughly read the setup instructions below before trying to run CrASH on
your TI-82.  If you are ultimately unable to run CrASH on your calculator,
please contact the authors (see below).


 Introducing CrASH

  CrASH is a software program written for the TI-82 that allows the user to
run programs written in assembly language.  When CrASH is invoked, it will
display a list of assembly programs, from which a selection can be made.
Similar programs do exist, such as ZShell for the TI-85, and ASH, also for
the TI-82.

  CrASH is compatible with most ASH 3 programs; that is, programs written for
ASH v3.0 will run on CrASH.  The primary exception are the "self-loading"
ASH programs - the ASH programs that can be run simply by executing the
program directly without loading ASH first.


 Contents

 Software License Agreement
 System Requirements
 Features
 Files Included
 Installing CrASH
 Using CrASH
 Compatibility
 Incompatible Programs List
 CrCrASH - Crash to CrASH
 Programming for CrASH
 If Your Calculator Crashes
 Contacting Information
 Credits
 History


 Software License Agreement

  Your use of this software implies that you agree to the terms of this
agreement.

  This program (CrASH) and its accompanying documentation is Copyright 1997
Hideaki Omuro and Jeff Mears.  Portions other than the documentation and the
program (such as Tunnel) may be someone else's copyright.  See those files
for details.

  No warranties are expressed or implied.  Period.  In no event shall the
authors Hideaki Omuro, Jeff Mears, or any other person mentioned in this
document be held liable for damages resulting from the USE or MISUSE of this
product, including but not limited to implied warranties of fitness for a
particular purpose.

  Every file included in the CrASH.ZIP archive is of our work.  We encourage
you to distribute the archive, as long as all files are kept intact, in
unmodified form.  If you decide to place CrASH on your web page, please
notify an author of CrASH, though this is not required.

  At no time for any reason shall this software be reverse engineered,
decompiled or disassembled.  The distribution of modified files in this
archive is not only unallowed, but also unneeded.

  TI-82, TI-85, and TI are copyrights, trademarks and/or registered
trademarks of Texas Instruments Incorporated.


 System Requirements

 A TI-82 with rom versions 16.0, 17.0, 18.0, or 19.0
 A graphlink cable and software to send a backup file to the calculator
                                 or
 A link cable and a TI-82 that already contains CrASH

  CrASH v1.1 has been tested to function correctly on TI-82 calculators
with rom versions 16.0, 17.0, 18.0 and 19.0.  In order to check the rom
version of your TI-82, go to the MODE menu and press [Alpha]-[S].  A screen
displaying the rom version should be displayed, along with "Enter Self Test?"
Press [CLEAR] to exit this screen.  DO NOT press [ENTER], as this will cause
the calculator to perform a self-test procedure that ends with a memory
reset.

  If you happen to own a TI-82 with a different rom version than the ones
listed above, please contact the authors, and an attempt will be made to
include support for your rom version in our next version of CrASH.  Even if
you don't have a ROM version listed above, try running CrASH anyways.  The
few other ROM versions should also work.


 Features

- Allows you to run programs written in assembly language on the 82.
- Compatibility confirmed with 82 ROM versions 16.0, 17.0, 18.0 and 19.0.
- Uncrashable "standard" key handler for native CrASH programs.
- Does not require you to press enter after running prgmCRASH.
- "Boss Key" routine that does not crash.
- Runs most (Two total so far confirmed not to) ASH 3.0 programs.
- Relocates programs in memory for easy programming.
- Built-in random number routine and fast display copy routine.
- Easy access to the Link and Mem menus directly from CrASH.
- Nice show off of our programming skill with a smooth scrolling menu bar :)


 Files Included

 The standard CrASH shell
--------------------------
CrASH    TXT This file
CrASH    82B The TI-82 Backup-file containing CrASH
CrCrASH  82P The CrASH shortcut...
Tunnel   82P The first program converted to CrASH...

 Programmer's files for CrASH (also included in archive)
---------------------------------------------------------
CrASHprg TXT Programmer's Function Reference
CrASH82  INC Include file for use with Table Assembler (TASM)
CrCrASH  ASM The source to CrCRASH.82P
Tunnel   ASM The source to Tunnel.82P
Tunnel   TXT Text file explaining Tunnel
CrAsm    BAT Batch file to assemble .ASM files to .82P program files
CrPRGM82 EXE Program which will convert .OBJ assembly code to .82P files


 Installing CrASH

  The installation of CrASH onto your TI-82 is actually quite a simple
process!  All that needs to be done is for the CrASH.82B backup file to be
transferred to the calculator via the TI-GRAPHLINK software or other means.
If another TI-82 already has CrASH on it, it is also possible to transfer it
from that calculator by sending a backup to your calculator.

  Because this involves the transfer of backup files, the memory of the
destination calculator WILL be cleared.  In order to prevent losing data,
copy current files from your calculator onto your computer.  If you are
obtaining CrASH from another calculator, it is also possible to copy the data
that you wish to keep over to that calculator and then receive a backup that
contains that data.


 Using CrASH

  To start CrASH, go to the program menu by pressing [PRGM].  Select the
program called CRASH.  After pressing [ENTER] to run CrASH, hold it down
until it loads.  A list of every assembly program will be displayed on your
screen.  If no assembly programs eixst on your calculator, then you will see
that your screen will display "No Programs."

  Inside the CrASH shell, you can change the contrast as normal.  You may
also press [2nd]+[OFF] to turn off the calculator, press [2nd]+[LINK] to
access the Link menu, or [2nd]+[MEM] to access the Memory menu.  In addition,
the calculator will automatically turn off when left on for about five
minutes with no activity, unless Crash to CrASH is loaded (discussed later).
To exit CrASH, press [MODE] or [2nd]+[QUIT].  Because of the safe keyboard
handler, it is safe to turn off the calculator during CrASH.

  Use the up/down arrow keys, highlight a program you wish to run, then press
[ENTER].  If you have more than 9 assembly programs, only 9 will appear in
the list.  You can press the right/left arrow keys to see the other programs.

  Once you press [ENTER], the assembly program will begin execution.  Follow
the instructions as indicated in the program or a help file included with the
program.

  You cannot run CrASH assembly programs directly from the prgm menu.  The
CrASH files in your prgm menu when you hit [PRGM] on your calculator will
start with a inverted lower-case 'a' signifying that it is a program written
in 'a'ssembly, and when you try, you will get a syntax error.

  NEVER delete either MATRIX called 'a' on your TI-82, because these two
variables are necessary for the correct operation of CrASH.  Deleting either
matrix can cause undesired operation on your system.  Do not worry about
their sizes; one seems to take up 39643 bytes, but actually, it takes up only
6 bytes.  All together, for the correct functionality of CrASH, you only need
three variables on your TI-82: CRASH, a, and a.


 Compatibility

  CrASH was written to be compatible with the well known ASH v3.0.  CrASH
therefore supports the running of such programs.  However, CrASH does not
support ASH v3.0 programs which can be run directly from the [PRGM] menu, as
mentioned before.  This even means that these programs will not even be
displayed as part of the menu, and therefore you cannot select them.  Also,
some ASH v3.0 programs might not function correctly inside CrASH.

  Although CrASH can run ASH programs, ASH will NOT run programs specifically
written for CrASH.  In order to check for compatibility with ASH programs, be
sure to check that an ASH program will not conflict with part of CrASH.  We
have not yet encountered an ASH program (that is not self-loading) that does
not work with CrASH.


 Incompatible Programs List

  When we find programs that are NOT compatible with CrASH we will list them
here in this section.

 Current programs total: 2
- Turbo, any version.  Turbo is is incompatible with the speed-dependent
CR_GRBCopy (the function) used by CrASH programs and CrASH itself.  (CrASH
will also be incompatible with any hardware turboing for the same reason)
- ARK, v1.1.  We don't know why this program does not run on CrASH, but
suspect that it is modifying a certain ASH address which CrASH does not have.

 CrCrASH - Crash to CrASH

  Included in the archive file was a file called CrCrASH.82p.  This is a very
useful program demonstrating interrupts that simplifies entrance to CrASH.
While this program is running, all the user must do to enter CrASH is press
[ON] and [Y=] at the same time, using interrupts.  The example code in the
programmer's package shows how to code a simple interrupt routine.

  NOTE: There are 4 main problems with Crash to CrASH.  First, APD (auto
power down) will not function when Crash to CrASH is loaded.  Second, there
is a possibility that your calculator will crash if you receive a backup (IE
to upgrade your CrASH version) while Crash to CrASH is loaded.  Third, you
CANNOT reset your calculator with it loaded.  Fourth (too many, huh? :) ),
some ASH programs use the calculator in a way that is incompatible with
interrupt handlers such as Crash to CrASH, and will crash your calculator
when run.  However, few such programs exist.


 Programming for CrASH

  See CrASHprg.TXT for information on how to program for CrASH.


 If Your Calculator Crashes

  We have (hopefully) removed every bug that will cause CrASH to crash.
However, this possibility still exists, and we want you to know how to get
your calculator working again.  When your calculator does not respond to any
keys and/or the calculator is displaying a bunch of garbage, it may be
crashed.  If this happens, there is a fairly simple procedure to follow to
reset your calculator's memory and get it working again.  Even when we wrote
CrASH (and crashed our calculators several thousand times), we never needed
to go to step 5 (lithium battery).  It's not very common to have to remove
all the batteries.

 1. Open the battery cover.
 2. Remove one AAA battery.  This will cause the display to turn off if it
    hadn't already.
 3. Hold the ON button for 5 seconds.
 4. Reinsert the battery and try turning it on.
 5. If the calculator still doesn't respond, you may repeat the above process
    or try removing the lithium battery (the round one) and all the AAA
    batteries for 2 to 3 minutes.  Replace them and try again.
 6. If THIS doesn't work, your calculator probably didn't work in the first
    place.


 Contacting Information

  If you would like to contact a developer of CrASH for questions, comments,
bug reports, or suggestions, please send e-mail to the following address:

                     crashman@technologist.com

  You may be able to find CrashMan (Hideaki Omuro) on ICQ: UIN# 5942763

  You will always be able to find the most recent version of CrASH at:
                       http://www.ticalc.org


 Credits

Programmers:
  Hideaki Omuro (did most of the work)
  Jeff Mears (mostly the 82 hacker - discovered some tricks)

Documentation:
  Hideaki Omuro
  Katsuyuki Omuro (Yes, related)
  Jeff Mears

Crash to CrASH:
  Hideaki Omuro

Fast Tunnel:
  Andrew Von Dollen (Waffy)

Special Thanks to the Beta testers of CrASH:
  Andrew Von Dollen (Waffy)
  Brian Couchman, and other people at our high school


 History

Nov 1997: Version 1.0  - Non-public release (needed more updates)
Nov 1997: Version 1.0c - Added Crash to CrASH to package
Dec 1997: Version 1.0e - Fixed annoying stack bug that crashes
Dec 1997: Version 1.0f - Added ability to load CrASH without enter key
Dec 1997: Version 1.1  - Public release, fixed everything that caused CrASH
                         to crash on its own
