# TI-89 series

The TI-89 and the TI-89 Titanium are graphing calculators developed by Texas Instruments (TI). They are differentiated from most other TI graphing calculators by their computer algebra system, which allows symbolic manipulation of algebraic expressions—equations can be solved in terms of variables— whereas the TI-83/84 series can only give a numeric result.

## TI-89

The TI-89 is a graphing calculator developed by Texas Instruments in 1998. The unit features a 160×100 pixel resolution LCD and a large amount of flash memory, and includes TI's Advanced Mathematics Software. The TI-89 is one of the highest model lines in TI's calculator products, along with the TI-Nspire. In the summer of 2004, the standard TI-89 was replaced by the TI-89 Titanium.
The TI-89 runs on a 32-bit microprocessor, the Motorola 68000, which nominally runs at 10 or 12 MHz, depending on the calculator's hardware version. The calculator has 256 kB of RAM, (190 kB of which are available to the user) and 2 MB of flash memory (700 kB of which is available to the user). The RAM and Flash ROM are used to store expressions, variables, programs, text files, and lists.
The TI-89 is essentially a TI-92 Plus with a limited keyboard and smaller screen. It was created partially in response to the fact that while calculators are allowed on many standardized tests, the TI-92 was not due to the QWERTY layout of its keyboard. Additionally, some people found the TI-92 unwieldy and overly large. The TI-89 is significantly smaller—about the same size as most other graphing calculators. It has a flash ROM, a feature present on the TI-92 Plus but not on the original TI-92.

### User features

The major advantage of the TI-89 over other TI calculators is its built-in computer algebra system, or CAS. The calculator can evaluate and simplify algebraic expressions symbolically. For example, entering x^2-4x+4 returns $x^{2}-4x+4$. The answer is "prettyprinted" by default; that is, displayed as it would be written by hand (e.g. the aforementioned $x^{2}-4x+4$ rather than x^2-4x+4). The TI-89's abilities include:
* Algebraic factoring of expressions, including partial fraction decomposition.
* Algebraic simplification; for example, the CAS can combine multiple terms into one fraction by finding a common denominator.
* Evaluation of trigonometric expressions to exact values. For example, sin(60°) returns ${\frac {\sqrt {3}}{2}}$ instead of 0.86603.
* Solving equations for a certain variable. The CAS can solve for one variable in terms of others; it can also solve systems of equations. For equations such as quadratics where there are multiple solutions, it returns all of them. Equations with infinitely many solutions are solved by introducing arbitrary constants: solve(tan(x+2)=0,x) returns x=2.(90.@n1-1), with the @n1 representing any integer.
* Symbolic and numeric differentiation and integration. Derivatives and definite integrals are evaluated exactly when possible, and approximately otherwise.
* Calculate greatest common divisor (gcd) and least common multiple (lcm)
* Probability theory: factorial, combination, permutation, binomial distribution, normal distribution
* PrettyPrint (like equation editor and LaTeX)
* These mathematical constants are shown as symbols $\pi$, $e$, $i$ and $\infty$
* Draw 2D and 3D graph
* Calculate taylorpolynomial
* Calculate limit of a function, including infinite limits and limits from one direction
* Vector calculation
* Matrix calculation
* Calculate series (summation or infinite product)
* Calculate chi squared test
* Calculate complex numbers
* Factoring polynomial: factor(polynomial) or cfactor(polynomial)
* Solve equation: solve(equation,$x$) or csolve(equation,$x$)
* Solve first or second order differential equation: deSolve(differential equation,$x$,$y$)
* Multiply and divide SI Units: underscore _ "diamond" "MODE"
* A number of regressions:
** LinReg
** QuadReg
** CubicReg
** QuartReg
** ExpReg
** LnReg
** PowerReg
** Logistic
** SinReg
In addition to the standard two-dimensional function plots, it can also produce graphs of parametric equations, polar equations, sequence plots, differential equation fields, and three-dimensional (two independent variable) functions.

### Programming

The TI-89 is directly programmable in a language called TI-BASIC 89, TI's derivative of BASIC for calculators. With the use of a PC, it is also possible to develop more complex programs in Motorola 68000 assembly language or C, translate them to machine language, and copy them to the calculator. Two software development kits for C programming are available; one is TI Flash Studio, the official TI SDK, and the other is TIGCC, a third-party SDK based on GCC.
In addition, there is a third party flash application called GTC that allows the writing and compilation of C programs directly on the calculator. It is built on TIGCC, with some modifications. Numerous BASIC extensions are also present, the most notable of which is NewProg.
Since the TI-89's release in 1998, thousands of programs for math, science, or entertainment have been developed. Many video games have also been developed. Many are generic clones of Tetris, Minesweeper, and other classic games, but some programs are more advanced: for example, a ZX Spectrum emulator, a chess-playing program, a symbolic circuit simulator, and a clone of Link's Awakening. Some of the most popular and well-known games are Phoenix, Drugwars, and Snake. Many calculator games and other useful programs can be found on TI-program sharing sites. Ticalc.org is a major one that offers thousands of calculator programs.

### Hardware versions

There are four hardware versions of the TI-89. These versions are normally referred to as HW1, HW2, HW3, and HW4 (released in May 2006). Entering the key sequence [F1] [A] displays the hardware version. Older versions (before HW2) don't display anything about the hardware version in the about menu. The differences in the hardware versions are not well documented by Texas Instruments. HW1 and HW2 correspond to the original TI-89; HW3 and HW4 are only present in the TI-89 Titanium.
The most significant difference between HW1 and HW2 is in the way the calculator handles the display. In HW1 calculators there is a video buffer that stores all of the information that should be displayed on the screen, and every time the screen is refreshed the calculator accesses this buffer and flushes it to the display (direct memory access). In HW2 and later calculators, a region of memory is directly aliased to the display controller (memory-mapped I/O). This allows for slightly faster memory access, as the HW1's DMA controller used about 10% of the bus bandwidth. However, it interferes with a trick some programs use to implement grayscale graphics by rapidly switching between two or more displays (page-flipping). On the HW1, the DMA controller's base address can be changed (a single write into a memory-mapped hardware register) and the screen will automatically use a new section of memory at the beginning of the next frame. In HW2, the new page must be written to the screen by software. The effect of this is to cause increased flickering in grayscale mode, enough to make the 7-level grayscale supported on the HW1 unusable (although 4-level grayscale works on both calculators).
HW2 calculators are slightly faster because TI increased the nominal speed of the processor from 10 MHz to 12 MHz. It is believed that TI increased the speed of HW4 calculators to 16 MHz, though many users disagree about this finding. The measured statistics are closer to 14 MHz.
Another difference between HW1 and HW2 calculators is assembly program size limitations. The size limitation on HW2 calculators has varied with the AMS version of the calculator. As of AMS 2.09 the limit is 24k. Some earlier versions limited assembly programs to 8k, and the earliest AMS versions had no limit. The latest AMS version has a 64kb limit. HW1 calculators have no hardware to enforce the limits, so it is easy to bypass them in software. There are unofficial patches and kernels that can be installed on HW2 calculators to remove the limitations.

## TI-89 Titanium

The TI-89 Titanium was released in the June 1st, 2004, and has largely replaced the popular classic TI-89. The TI-89 Titanium is referred to as HW3 and uses the corresponding AMS 3.x. In 2006, new calculators were upgraded to HW4 which was supposed to offer increases in RAM and speeds up to 16 MHz, but some benchmarks made by users reported speeds between 12.85 and 14.1 MHz.
The touted advantages of the TI-89 Titanium over the original TI-89 include two times the flash memory (with over four times as much available to the user). The TI-89 Titanium is essentially a Voyage 200, without an integrated keyboard. The TI-89 Titanium also has a USB On-The-Go port, for connectivity to other TI-89 Titanium calculators, or to a computer (to store programs or update the operating system). The TI-89 Titanium also features some pre-loaded applications, such as "CellSheet", a spreadsheet program also offered with other TI calculators. The Titanium has a slightly updated CAS, which adds a few more mathematical functions, most notably implicit differentiation. The Titanium also has a slightly differing case design from that of the TI-89 (the Titanium's case design is similar to that of the TI-84 Plus).
There are some minor compatibility issues with C and assembly programs developed for the original TI-89. Some have to be recompiled to work on the Titanium due to various small hardware changes, though in most cases the problems can be fixed by using a utility such as GhostBuster, by Olivier Armand and Kevin Kofler. This option is generally preferred as it requires no knowledge of the program, works without the need of the program's source code, is automated, and doesn't require additional computer software. In some cases, only one character needs to be changed (the ROM base on TI-89 is at 0x200000, whereas the TI-89 Titanium is at 0x800000) by hand or by patcher. Most, if not all, of these problems are caused by the mirror memory (ghost space) or lack thereof.

## Use in schools
### United Kingdom

The Joint Council for Qualifications publish examination instructions on behalf of the main examination boards in England, Wales and Northern Ireland. These instructions state that a calculator used in an examination must not be designed to offer symbolic algebra manipulation, symbolic differentiation or integration. This precludes use of the TI-89 or TI-89 Titanium in examinations, but it may be used as part of classroom study. The SQA give the same instructions for examinations in Scotland.

### United States

In the United States, the TI-89 is allowed by the College Board on all calculator-permitted tests, including the SAT, some SAT Subject Tests, and the AP Calculus, Physics, Chemistry, and Statistics exams. However, the calculator is banned from use on the ACT, the PLAN, and in some classrooms. The TI-92 series, with otherwise comparable features, has a QWERTY keyboard that results in it being classified as a computer device rather than as a calculator.