Casio CFX-9800G

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: 1995  Display type: Graphical display  
New price:   Display color: Color  
    Display technology: Color liquid crystal display 
Size: 7"×4"×½" Display size: 96×64 pixels
Weight: 7 oz    
    Entry method: Formula entry 
Batteries: 4×"AAA" alkaline + 1×"CR-2032" Lithium Advanced functions: Trig Exp Hyp Lreg Grph Ab/c Cplx Cmem Mtrx BaseN 
External power:   Memory functions:  
I/O: Serial port     
    Programming model: Formula programming 
Precision: 15 digits Program functions: Jump Cond Subr Lbl Ind  
Memories: 24(0) kilobytes Program display: Formula display  
Program memory: 24 kilobytes Program editing: Formula entry  
Chipset:   Forensic result:  

cfx9800g.jpg (35448 bytes)The CFX-9800G is a recent member of Casio's line of color graphing calculators. It is a "do-everything" calculator in the same league as the Hewlett-Packard HP-48SX.

Or perhaps not quite in the same league. The color display of the CFX-9800G is truly impressive, but its operating paradigm is much less sophisticated. Different data types and areas of functionality are not well integrated. For instance, trigonometric and transcendental functions are not defined for complex arguments, or arguments that would yield complex results. It also appears impossible to create a graph from the results of a user-defined program(not a function.)

The listing below is a program that calculates the Gamma function for any real argument (it would work for complex arguments as well, were it not for the lack of complex support in the built-in exponential and logarithmic functions.) This program, I believe, can be used in unaltered form on many Casio calculators and clones.

"X=":? -> X
1 -> Y
Lbl 1
X >= 0 => Goto 2
X×Y -> Y:X+1 -> X
Goto 1
Lbl 2
e(ln ((1+(76.18009172+9.5E-9)/(X+1)
  √(π×2)/X)+(X+.5)× ln (X+5.5)-X-5.5)/Y