This page is an enterance for on-going projects.
Inside Casio Basic
I've investigated details of Casio Basic and found many undocumented topcs. All of them are compiled in my native language Japanese since 2013. I've just started translateion to English or compiling in English then translating to Japanese. If you are interested in the on-going project, please check Inside Casio Basic at e-Gadget blog. When I think it comes to be almost finished I will transfer the contents to this site.
This is a Basic Interpreter language running on Casio fx-9860G Series and fx-CG Series, provided as an Add-in program file.
Many of my Casio Basic programs can be ported to C language for add-in programs by sentaro21 a friend of mine and by myself. Those add-in programs run much faster than Casio Basic but the porting to C language is not so handy for eveyone. We discussed why original Casio Basic is so slow then we found it is because of timing of data transfer from VRAM to LCD display function and also overhead of every single command.
At first we talked about C compiler which we can code and build on Casio cals without using PC. Then an idea came up to him that a Basic interpreter should be the first step to the C compiler. He also respects my concept "anywhere anytime computing with calc". This results in primary concept of C.Basic which is compatibilie with original genuine Casio Basic. This concept helps user who knows Casio Basic, so everyone can easily enjoy programming with C.Basic. He also added nice extended functions to original Casio Basic commands and also nicely created some new commands. C.Basic also provides minimal but good enough debugging feature.
All the conversation with him and fans of C.Basic started in Japanese, that's why I decided to compile instruction manual and command reference in English. C.Basic project is also based on my detailed investigation of Casio Basic, so the command reference should have link to "Inside Casio Basic". That's why I put C.Basic contents together with Inside Casio Basic here.
If you are interested in C.Basic please take a look here (temporal introduction) and here (currntly just a list of commands). This may give you an idea of C.Basic. If you simply want to have experience of C.Basic, please try Conway's Game of Life.
This is a complier version of C.Basic for faster processing, probablly in factor of 10.
This contains source codes for Casio Basic, C.Basic and some Add-in by me and my friends.
Viva Casio Basic!
I bought Casio FX-502P long time ago and enjoyed first programming in my life with the palmtop. Programming anywhere anytime was excelent experience.
I've used FX-502P, FX-602P and FX-603P very long time in my university class and research lab and found installed programming language was almost compatible between those calcs. It really helped.
After learning Basic, C and C++ for PC programming, I usually used VBA, Visual Basic and Visual C for my simple calculation demand and a special purpose. Casio fx-5800P at those days ... I had this ... was just high-end scientific calculator to me, not a programming platform. Someday I just tried making very simple program with the fx-5800P, then found instruction manual of fx-5800P did not help whatever I want to know. Searching internet did not help, because nobody wrote details of fx-5800P Casio Basic.
Casio Basic later than 2006 is a minimal Basic language for structual programming. I really enjoyed anywhere anytime programming to make not only for simple scientific calculation but also for more general utilities for daily business and life.
I've also enjoyed easy porting of programs made with fx-5800P to fx-9860GII and fx-CG20. This is based on the language compatibility over deferent models.
During my investigation of the Casio Basic with fx-5800P I found that Casio Basic is not too bad and it is almost a structual programming language. Now I should say fx-5800P contains "Next Generation of Casio Basic". Casio launched fx-5800P in 2006, then btought fx-9860G series, fx-9860GII and Prizm fx-CG10 and fx-CG20 into the market. Programming language installed in all those is up-graded "Next Generation of Casio Basic".
Unlikely old Basic like language of Casio calcs launched before fx-5800P, the next generation of Casio Basic provides Getkey. Also Locate command and program control statements can evaluate value by ture (non-zero) or false (zero) of a variable, an expression and the Getkey command. As a good example, Casio Basic allows following code;
I skipped fx-9860G and bought fx-9860GII. Casio Basic is included in OS, the first version is OS2.01, then updated to OS2.02, OS2.04 and OS2.09. Casio has thrown resources into north American, European and Chinese market rather than Japanese. In Japan Casio has decided the latest verison for Japanese market is OS2.04 and not to update to OS2.09. As far as I investigated function of Casio Basic is same betweeen OS2.04 and 2.09. Comparing with fx-5800P, fx-9860GII Casio Basic has more features, small letter variables, commands for graphing, statistics, graphincs, strings, Serial comumicaiton, etc. To be honest I'm not so interested in playing educational features, so graphics and string commands are main subject for my investigation.
I tried porting fx-5800P Casio Basic programs to fx-9860GII and found it's not so hard work. Many of commands are compatible, excepting deferent keycode, detailed performance of basic operation commands, ?, " " and ◢. Changing keycodes and modifing usage of the basic operation comamnds properly are almost all tasks.
My first impression on fx-CG20 was ... what a slow machine! In terms of Casio Basic it's almost same excepting a few new feature relating to color and higher resolution LCD. Porting of fx-9860GII Casio Basic program to fx-CG20 is easy becasue compatibility is high. Text base program is almost compatible, because text display area is same (21 column x 7 row), key code is same, etc. Porting graphics program requires a little bit modification, but not so annoying. As far as I investigated behavior of Xdot, Xmin and Xmax, Pxlon, PxlOff, PxlChg, PxlText( ) are the subject to be modified in addition to color setup commands. If you really want colorful and high resolution output and faster calculation, fx-CG20 is good selection. However Graphics display is much slower than fx-9860GII, even text output is slower than fx-9860GII.
When fx-9860G firstly came up in the market, the processing speed was fine. But first fx-9860GII with Hitachi SH3 processor was slower than fx-9860G. Minor updated fx-9860GII wit Hitachi SH4A processor got slower. This may come from Casio's sales strategy, my guess is that Casio decied to get slower the fx-9860GII with SH4A in order to sell slow machine Prizm fx-CG10 and fx-CG20.
Make your Casio Calc faster!
This is an introduction of over-clock Add-in program made by sentaro21. Please visit
This tool is reviewd at several Casio Fans forums and for reference see very botom of this site.
I've personally used Ftune2 and Ptune2. With my fx-9860GII USB POWER GRAPHIC 2 (SH4A) safe and max clock I usually use is 280MHz insead of normal clock 29MHz. With my fx-CG20, max is 250MHz instead of normal 59MHz.
Running calculation required high CPU power and grahics program with those over-clock tool, you can enjoy whatever you cannot complete with your Casio Basic program.