Casio FX-820P

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: 1984  Display type: Alphanumeric display  
New price:   Display color: Black  
    Display technology: Liquid crystal display 
Size: 3½"×7"×1" Display size: 12 characters
Weight: 12 oz    
    Entry method: BASIC expressions 
Batteries: 2×"CR-2032" Lithium + 4×"AAA" NiCd Advanced functions: Trig Exp Cmem Prnt Snd 
External power: Casio CHA-1   Memory functions:  
I/O: Casio I/O, expansion port     
    Programming model: BASIC 
Precision: 12 digits Program functions: Jump Cond Subr Lbl Ind  
Memories: 0 kilobytes Program display: Text display  
Program memory: 0 kilobytes Program editing: Text editor  
Chipset:   Forensic result: 9.00000716758  

*Requires RAM card for operation

fx820p.jpg (37818 bytes)The fx-820P is a printing member of Casio's BASIC pocket computer line. Even with a small thermal printer built-in, the device remains fairly small, compact, and usable. The built-in BASIC interpreter is the same interpreter found in literally dozens of different Casio models sold since the mid 1980s.

In other words, this machine is, well, slightly boring. No wonder I was admonished by Hugh Steers when he saw that the Gamma function examples I supply on these pages do nothing to alleviate the boredom! So, he sent me his own: an implementation in Casio BASIC that uses the Lanczos-approximation, but elegantly, computes the Lanczos coefficients on the fly, and does so within a reasonable amount of time, and with good precision. Apart from serving as evidence of Hugh's programming skills, the program also demonstrates just how useful and practical these handheld devices can be, even with their limited processing power and memory:

10 VAC:INPUT Z
20 H=1:A=-1:B=2
30 N=EXP 5.5/SQR 5.5
40 W=N/2:Y=.5:X=1:U=1
50 X=X*(Z+(1-U))/(Z+U)
60 N(U)=Y*EXP(U+5.5-LN(U+5.5)*(U+.5)):Y=Y*(U+.5)
70 FOR V=0 TO U:W=W+X*A(V)*N(V):NEXT V
80 IF U=6 THEN 130
90 T=A:FOR V=0 TO U
100 H(V)=2*T-H(V):T=B(V)
110 B(V)=2*H(V)-B(V):NEXT V
120 A=-A:U=U+1:GOTO 50
130 T=Z+.5:T=2*W*EXP(T*LN(T+5)-T-5)/Z
140 PRINT T