Texas Instruments TI-92

Datasheet legend
Ab/c: Fractions calculation
AC: Alternating current
BaseN: Number base calculations
Card: Magnetic card storage
Cmem: Continuous memory
Cond: Conditional execution
Const: Scientific constants
Cplx: Complex number arithmetic
DC: Direct current
Eqlib: Equation library
Exp: Exponential/logarithmic functions
Fin: Financial functions
Grph: Graphing capability
Hyp: Hyperbolic functions
Ind: Indirect addressing
Intg: Numerical integration
Jump: Unconditional jump (GOTO)
Lbl: Program labels
LCD: Liquid Crystal Display
LED: Light-Emitting Diode
Li-ion: Lithium-ion rechargeable battery
Lreg: Linear regression (2-variable statistics)
mA: Milliamperes of current
Mtrx: Matrix support
NiCd: Nickel-Cadmium rechargeable battery
NiMH: Nickel-metal-hydrite rechargeable battery
Prnt: Printer
RTC: Real-time clock
Sdev: Standard deviation (1-variable statistics)
Solv: Equation solver
Subr: Subroutine call capability
Symb: Symbolic computing
Tape: Magnetic tape storage
Trig: Trigonometric functions
Units: Unit conversions
VAC: Volts AC
VDC: Volts DC
Years of production:   Display type: Graphical display  
New price:   Display color: Black  
    Display technology: Liquid crystal display 
Size: 5"×9"×1½" Display size: 240×120 pixels
Weight: 20 oz    
    Entry method: Formula entry 
Batteries: 4×"AA" alkaline + 1×"CR-2032" Lithium Advanced functions: Trig Exp Hyp Lreg Grph Solv Intg Ab/c Cplx Symb Cmem Mtrx 
External power:   Memory functions:  
I/O: TI-GraphLink™     
    Programming model: Formula programming 
Precision: 14 digits Program functions: Jump Cond Subr Lbl Ind  
Memories: 64(0) kilobytes Program display: Formula display  
Program memory: 64 kilobytes Program editing: Formula entry  
Chipset:   Forensic result: 8.9999999817692  

ti92.jpg (40163 bytes)What a nice change after all those uninspiring, schoolboard-designed graphing calculators that I got my hands on in recent months! The TI-92 is at last a serious, no-compromise engineering tool, a true competitor to (if not outright a better machine than) top-of-the-line Hewlett-Packard models.

The TI-92 is a handheld (ahem; it does weigh a hefty pound and a quarter) machine with symbolic algebra, calculus, geometry, and other capabilities. I knew this was an interesting machine, but I admit I was still stunned by the capabilities it delivers. For instance, if you ever wanted to know the factorial of 100, the TI-92 tells you easily: it's 93,326,215, 443,944,152,681,699,238,856,266,700,490, 715,968,264,381,621,468,592,963,895,217, 599,993,229,915,608,941,463,976,156,518, 286,253,697,920,827,223,758,251,185,210, 916,864,000,000,000,000,000,000,000,000.

See what I mean by no compromise?

I've already spent a few hours exploring the capabilities of this machine. I also spent a few hours using this machine, further exploring my favorite computation example, the Gamma function. Surprisingly, the TI-92 does not have a built-in implementation of this important function; it only calculates the factorial for non-negative integers. The challenge, then, is to create a Gamma function implementation that behaves much like the TI-92's built in functions; i.e., an implementation that is accurate, yields symbolic and/or integer results when possible, and executes efficiently.

My explorations are still a work-in progress, but here is a fresh variant on Stirling's approximation that calculates the logarithm of the Gamma function on the TI-92:

:lnГ(z)
:Func
:If real(z)<0 or real(z)<10 and fPart(z)≠0 and fPart(z)≠.5 Then
:Return lnГ(z+1)-ln(z)
:ElseIf imag(z)=0 and real(z)<450 and fPart(z)=0 Then
:Return ln((z-1)!)
:ElseIf imag(z)=0 and fPart(z)=.5 Then
:If iPart(z)>0 Then
:Return lnГ(z-1)+ln(z-1)
:Else
:Return ln(√(π))
:EndIf
:Else
:Return (z-.5)*ln(z)-z+.5*ln(2*π)+1/12/z-1/360/z^3+1/1260/z^5-1/1680/z^7+1/1188/z^9
:EndIf
:EndFunc