# Casio graphic calculators

Casio has produced the world's first graphing calculator, the fx-7000G. Since then, most of the calculators produced by the company can be grouped into either the First, Second or Third generation.

## First generation
### Original series

First produced in 1985, these include the fx-7000G, fx-6000G, fx-6500G, fx-7200G, fx-7500G, fx-8000G, fx-8500G.

### Power Graphic series (1990)

Around 1990, the Power Graphic series introduced: F1 through F6 shortcut keys which enabled significantly greater ease of use, polar, parametric and inequality graphs; box and factor zoom; multiple graph scrolling; range initialization; integration; matrix mode; fractions; permutations; combinations; normal probabilities; SI unit symbols; Models: fx-7700G, fx-7700GB, fx-8700G, fx-8700GB. The GB models have a communications port. (French versions: fx-7800G, fx-7800GC, fx-8800G, fx-8800GC).
Also made was the low-end fx-6300G (French: fx-6800G) with a smaller screen and fewer features, and the fx-6200G which didn't have any programming functionality.

### Icon Menu Power Graphic series (1993)

Around 1993, the Icon Menu Power Graphic series introduced a new interface, using icons instead. New features would include numerical differentiation; matrices in programs; and an equation solver. Models produced after the fx-7700GE contained 24K memory, allowing for dynamic graphing, a complex calculation and table mode, a more advanced equation solver; larger matrices (up to 255x255); sigma calculations; graph solver for roots, and intercept, maximum, and minimum value calculation.
Models: fx-7300G, fx-7700GE (alternatively, fx-7700GH), fx-9700GE, fx-9700GH, CFX-9800G
France only: fx-6900G, fx-7900GC, fx-9900GC, CFX-9900GC

## Second generation
### 9850 series (9750/9850/9950/9970)

First manufactured in 1996, there have been numerous variations of the CFX-9850G. The 9850 series models have 3-colour screens apart from the fx-9750G which is black and white. The 9950G has 64k memory compared to the 32k of the original 9850G. The 9970G has symbolic algebra. Later versions such as the Ga, GB and GC models fixed some bugs from the original G model and added some stats and finance features. The GB models have a built-in software library.
(French versions: 9750=Graph 30,35,fx-8930GT; 9850,9950=Graph 60,65,CFX-9930GT,9940,9960; 9970=Graph 80)

### 7400 series

First made in 1996, this series is essentially a cut-down version of the 9850 series. For instance, it does not have the commands Getkey, Locate, Text or matrices or complex numbers, and the screen is smaller.
Models: fx-7400G, fx-7400G Plus, fx-7450G, fx-7400G Plus GY
France only: fx-6910G, Graph 20, Graph 25, FX-7400G II

### Algebra FX series

First made in 1999, these have flash memory which provides larger capacity than previous models, however due to the short lifespan of the original flash memory used, they would stop working after a few years. Casio since stated that the problem was resolved. The Algebra FX 2.0 versions have symbolic algebra, while the FX 1.0 versions lack this. There are community written tools for accessing the ROM-DOS operating system thus allowing C and Pascal compilers to be used.
Models: Algebra FX 2.0, FX 1.0, Algebra FX 2.0 Plus, FX 1.0 Plus (French versions: Graph 100, Graph 100+)

### 9860 G/GII series

First made in 2005, the 9860 models are much faster than previous models and can be programmed in C/C++ using the official software development kit.
In 2009, the GII models were produced along with a corresponding OS update for the original 9860G, now containing features such as GCD, LCM, modulus operator, random integer generation, units conversion, string functions, and new probability and inverse probability distributions available within programs.
The fx-9860G Slim and fx-9860GII have a display backlight which can be turned on and off.
Models: fx-9860G, fx-9860G SD, fx-9860G Slim, fx-9860GII, fx-9860GII SD, fx-9750GII, fx-7400GII (French versions: Graph 85, Graph 85 SD, Graph 85 Slim, Graph 75, Graph 95, Graph 35+ USB, Graph 25+ Pro)
Australia only: fx-9860G AU, fx-9860G AU Plus
The fx-9750GII and fx-7400GII are low-budget versions with restricted OS functionality. Also, the fx-7400GII does not have a USB 1.1 port.
The architecture of the 9750GII is similar to the 9860GII and therefore the former can be unofficially upgraded to the later Operating System offering more features particularly pretty printed equations and Vector arithmetic. This is not supported by Casio.

### 7400, 9750 and 9860 GIII series

The 7400, 9750 and 9860 GIII series was introduced in 2020 and includes a modern design language, increase in user memory for programming, support for implicit multiplication and a faster processor clock-speed and a MicroPython interpreter. The top-of-the-line 9860 GIII however, does not include a backlit display. The updated models also forgo the FA124 program used to connect the calculator to a computer, and can be connected directly as a flash storage device. Unlike the 9750 GII, the 9750 GIII sports the same feature set as the 9860 GIII with the only difference being the color scheme and the storage available to the user.

## Third generation
### fx-CG Prizm series

Announced for January 2011, these models have a high-resolution color display (396×224 screen with 384×216 pixels (21×8 characters) window with 2$^{16}$ colors), a USB 2.0 port, 16 MB of flash memory and a feature called Picture Plot. The Prizm is permitted on all major standardized tests including ACT, SAT, AP, GCSE and GCE examinations. The only known difference between the fx-CG10 and the fx-CG20 Prizm versions is that the fx-CG10 cannot open picture files that have been edited by users. The SD card slot is no longer available. The processor is based on a custom Renesas SH4-A family SH7305 CPU.
Additional features over fx-9860GII include:
* Real time integration display
* Random sample in probability calculations
* Conditional format in spreadsheet
* Preloaded Picture Plot
* Preloaded Metric conversion
* USB connection to computer now treats calculator as mass storage device
Although no official SDK has been released yet, several community SDKs exist using either some of the fx-9860G SDK tools or parts of the GNU toolchain. The Prizm Mini-SDK originally required Casio fx-9860 SDK to function, which was later replaced by PrizmSDK.
An updated model, called the fx-CG50 or Graph 90+E in France, was released in January 2017 with a more modern design (similar to the Classwiz scientific calculators) and a faster processor. The main menu screen has also been redesigned. Apart from that, it was very similar to the fx-CG10/20 upon release. Subsequent OS updates for the fx-CG50 have further differentiated it from its predecessors, for example the addition of a MicroPython interpreter.
* Models: fx-CG10 (North America), fx-CG20 (other regions), fx-CG50
* Australian models: fx-CG20AU, fx-CG50AU
* French models: Graph 90+E
* Chinese models: fx-CG20 CN

### Classwiz CG series

The Classwiz CG Series was announced by Casio at the National Council of Teachers of Mathematics (NCTM) conference at Chicago, United States in late September 2024. The Classwiz CG succeeds the fx-CG Prizm Series initially announced in 2011. The first model in the series, called the fx-CG100, retains the same power source as its predecessors (4 AAA batteries) instead of Li-ion batteries used by contemporary calculators and also adopts a USB C connector for connecting with a computer (instead of a mini-USB connector) while retaining the 2.5 mm I/O connector for connecting to other calculators. The fx-CG100 also adopts a more uniform design language shared with Casio's Classwiz scientific calculators in order to make an easier transition to different models amongst the Classwiz series according to Casio. A big change as compared to the PRIZM series is the non-availability of Casio BASIC programming language in the new calculator instead relying on only Python for programming as well as a more simplified exam mode. Another major change in the keyboard layout is the removal of function keys and their replacement with the directional keys for accessing the menu system. The calculator also adopts the same menu based layout as the Classwiz scientific calculators.
In France, the Classwiz CG Series was introduced in March 2024 with reduced functionality and is known as the Graph Math +. A non-programmable variant with a monochrome screen called the Graph Math Light was also introduced in the French market for exams where programmable calculators are not allowed.

## Programming language

Casio graphic calculators use Casio BASIC, a programming language based on BASIC. Variable names are restricted to single letters A-Z, which are shared by all programs including subroutines which are stored as separate programs. This means there are no local variables; they are all global. These variables are also shared by other functions of the calculator, for instance, drawing a graph will overwrite the X and Y values. MicroPython was added to Casio graphing from the PRIZM fx-CG50 and the fx-9860 GIII series. The latest Classwiz CG Series of graphing calculators instead use the Python programming language.

### First-generation programming language

Loops are constructed by incrementing or decrementing the value of a variable with the Isz and Dsz commands in conjunction with the Lbl and Goto commands, rather than using simpler conditional commands, such as for or while. Arrays are achieved by overwriting other letters, for example A[0]=A, A[1]=B, A[2]=C. The available space for arrays can be extended with the Defm command so that Z[1], Z[2] etc. can be used depending on how much unused memory capacity is available.

### Second-generation programming language

The second-generation programming language includes conditional and iterative functions and the ability for real-time user interaction with the Getkey command. It also introduces the ability to place characters anywhere on the screen using the Locate and Text commands. Additionally, the method for using array variables was changed, now using lists and matrices.

### Games

Some of the more recent Casio calculators have come with software that allows the user to link the computer to the calculator, download games already written for the calculators or code their own games and then have the software sync it to the device. However, due to the fact that Casio hasn't published a Software Development Kit for the fx-CG10/20/50, it is reasonably hard for a user to create their own game. All of the games are coded by the community, based on the community's own SDK, and so feature copies of popular games that can be re-coded to work on the device, for example Tetris, Pong and Snake; more complex games can also be coded, however due to storage constraints the size is limited.

### Python

Some of the newer Casio graphing calculators, such as the Casio FX-9860GIII, have MicroPython built in the graphing calculator, allowing the user to upload or write Python scripts on the calculator.