Graphic calculators made by Casio include the touchscreen ClassPad 300 as well as the models with traditional buttons which can be divided into two main generations listed below.
Casio produced the world's first graphing calculator, the fx-7000G.

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 facility.

Icon Menu Power Graphic series (1993)
Around 1993, the Icon Menu Power Graphic series introduced: An icon-driven menu interface, further increasing ease of use, numerical differentiation; matrices in programs; and an equation solver. Models: fx-7700GE, later renamed fx-7700GH.
(French version: fx-7900GC)

Additionally, there were models with 24K memory which introduced: dynamic graphing; complex numbers; table mode; a more advanced equation solver; larger matrices (255x255); sigma calculations; graph solver for roots, intercepts, max and mins. These include the fx-9700GE, later renamed fx-9700GH (wider screen) and the CFX-9800G (3-color screen).
(French versions: fx-9900GC, CFX-9900GC)

Also made with an icon menu but none of the above features was the fx-7300G (French: fx-6900G).

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 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 the year 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 (French versions: fx-6910G, Graph 20, Graph 25, FX-7400G II

Algebra FX series

First made in the year 1999, these have flash memory which provides larger capacity than previous models, however due to the short lifespan of the original flash memory used, these calculators stop working after a few years. Casio has stated that this problem has been fixed. The Algebra FX 2.0 versions have symbolic algebra, while the FX 1.0 versions do not. 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 the year 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, with new functions gcd/lcm/mod, random integer, units conversion, string functions, and new probability and inverse probability distributions available within programs. The 9860G OS update was not absolutely identical to an actual 9860GII model.

The fx-9860G Slim and fx-9860GII have a backlight display.

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.

fx-CG Prizm series
Announced for January 2011, these models have a high-resolution color display (396x224 screen with 384x216 pixels (21x8 characters) window with 216 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. 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.

The new model, fx-CG50 or Graph 90+E in France, has a more modern design 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 through the addition of a MicroPython interpreter.

Models: fx-CG10 (North America), fx-CG20 (other regions), fx-CG50
Australia models: fx-CG20 AU
France models: Graph 90+E
China models: fx-CG20 CN

Programming

Casio graphic calculators use a BASIC-like programming language but 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 example, drawing a graph will overwrite the X and Y values.

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 For or While commands.  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

Compared to the first generation models these have many more commands including: For and While Loops, If.. Then structures and the ability for real-time user interaction with the Getkey command and the ability to place characters anywhere on the screen with the Locate and Text commands. Also the method for using array variables was changed to 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 could be recoded 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. The most well-known community for the Prizm (and other calculators) is cemetech.net.

Python
Some of the newer Casio graphing calculators have a version of MicroPython built in, allowing the user to upload or write Python scripts on the calculator.

References

External links
 Manuals at support.casio.com

Graphing calculators
Graphing calculators