KOVAX graphiCAL

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: Blue  
    Display technology: Organic LED 
Size: 5½"×3½"×1½" Display size: 128×64 pixels
Weight: 8 oz    
    Entry method: Reverse Polish Notation 
Batteries: 1×Built-in Li-ion Advanced functions: Trig Exp Hyp Lreg Cmem RTC Snd Units Const 
External power: USB-C   Memory functions:  
I/O: USB-C     
    Programming model: Fully-merged keystroke entry 
Precision: 13 digits Program functions: Jump Cond Subr Lbl Ind  
Memories: 10 numbers Program display: Mnemonic display  
Program memory: 265 program steps Program editing: Overwrite capability  
Chipset: PIC18F67K22   Forensic result: 9.000049708754  

graphiCALThis ridiculously beautiful calculator is not a production model.

It is not even a prototype of a production model.

It is a "labor of love" by Gábor Kovács, a Hungarian engineer who took it upon himself to, well, build some beautiful calculators. Including graphiCAL that, although the name might suggest otherwise, is not a graphical calculator: rather, it is a very capable conventional programmable calculator, designed and built in the best traditions of Hewlett-Packard's classic machines, with RPN (Reverse Polish) logic.

The case looks manufactured, but it isn't: It's 3D-printed. The keyboard layout is interchangeable. In fact, I already received an updated keyboard layout from Gábor, matching the latest revision of the calculator's firmware.

Speaking of which, the calculator is still very much in active development. Its firmware is easily upgradeable thanks to its USB-C connector that is also used to charge its internal Li-ion battery.

Internally, the calculator is powered by a PIC microcontroller, with its firmware written in its entirely by Gábor, in the microcontroller's native machine language. Talk about true old school!

There are still a few software glitches but by and large, the calculator works well and works reliably. I daresay it's already one of my favorites. I especially like its well-lit, bright OLED display, which is a pleasure to look at. The display is large enough to show the calculator's full 4-level stack, or as many as 8 program steps at any given time.

To test graphiCAL's capabilities, I used an existing program, originally written for the HP-25C, that calculates the logarithm of the Gamma-function with roughly 8 decimal digits of accuracy. The program works "out of the box", pretty much, except that the HP-25C has no label keys and does not requires an R/S instruction to end program execution.

This program uses the expanded version of Stirling's formula. It computes the logarithm of the Gamma function for any positive argument and for all negative arguments where the Gamma function is positive; the result is usually accurate to more than 8 digits of precision. The program uses only the stack and the Last X register, leaving the calculator's memory registers alone.

000     LBL A
001      1
002     x<>y
003      9
004     x<y
005    GTO 012
006     Rv
007      ÷
008    LAST x
009      1
010      +
011    GTO 003
012     Rv
013    ENTER^
014    ENTER^
015     Rv
016     Rv
017      2
018      ÷
019      π
020      ÷
021     √x
022      ÷
023     ln
024     Rv
025     Rv
026     ln
027      ×
028      +
029     x<>y
030      -
031     x<>y
032      x2
033     1/x
034      3
035      0
036      ÷
037      1
038      -
039     Rv
040     Rv
041     Rv
042      ÷
043      1
044      2
045      ÷
046      -
047    	R/S