FX-602P Page

Japanese version

This page is written for FX-602P, the best (IMHO) programmable calculator made by CASIO Corp. in 1980's. Please note that this page is a subset of the original Japanese version.

Webmaster: Dr. K. Miyahara (mail address at the bottom of this page)

I love this color!!

--- Note from webmaster
1. Please include 'FX-602P' or 'FX-603P' in your mail subject to avoid my anti-spam filter. ;-)
2. I am very sorry, but I can't help to buy someone's FX-603P. (not enough time for shopping, shipping, ... etc) Sorry.

What's New (YYYY/MM/DD)
New (helpful?) hints for Quiz are added.
*Big News* New links, including FX-602P Simulator project are added. Thanks, Martin!



What is FX-602P?
It is a programmable calculator made by CASIO Corp. It was released in March, 1981 and had been sold until (at least) 1989. The list price in Japan was 29,500 yen. (See below & informations in other countries are welcome.)
Although it has passed more than 10 years since its end of sales, there are still a lot of freaks of this calculator in Japan (including myself). ;-)

Price Record (FX-602P)
Year Country Price Source
Aug-Sep, 1984France690-700 FF (french francs)Y. Gour
1984Germany199 DM (tax incl.)Dusan
1981-89Japan29,500 JPY (list price)CASIO Catalogue
1982-83?Japan19,800 JPY? (shop price)my memory :-)

What can it do?
It has a lot of functions so you may hardly believe it was created 20 years ago. :-) I remember its catalog which claimed (in Japanese) it is 'a programmable calculator of new generations.' :-) :-) :-)

Followings is a brief list of functions of FX-602P

(*1) You need a cassette interface option FA-1 or FA-2.

What kind of programming system does it have?
Although most other calculators made by CASIO uses BASIC (these calculators are actually called pocket computers), the programming system of FX-602P series is different. Its programming system is much similar to an assmbler. So, especially for those who are familiar with an assembler, it is not hard to understand. You will learn more details in a quick command reference shown below.

Do you have a quick command reference?
Partly. Here it is.

Quick Command Reference (functions excluded)
Command Meaning
MinxxPut a current value (=x register) to variable xx (xx=00 to 19, F, 1F)
MRxxRefer variable xx (Put variable xx to x register)
M+xxAdd x to variable xx
M-xxSubtract x from variable xx
X<-->MxxExchange x with variable xx
x=0if x is zero, go to the next command as usual. Otherwise, skip the next command
x>=0if x is equal to or greater than zero, go to the next command as usual. Otherwise, skip the next command
x=Fif x is equial to variable F, go to the next command as usual. Otherwise, skip the next command.
x>=Fif x is equal to or greater than the variable F, go to the next command as usual. Otherwise, skip the next command
GOTOxjump to label x(x=0 to 9)
LBLxlabel for GOTO command
GOSUBPxCall a subroutine program Px(x=0 to 9) and come back when it is finished
HLTStop and wait until EXE key is pushed
PAUSEPause for around 1 sec.
"..."display "..." (This command is called an ALPHA sentence.) You may refer x by #, variable xx by ARxx (xx=00 to 19, F, 1F)
ISZIncrement the variable 00 (MR00) and if it is equal to zero, skip the next command. Note: This command is useful for loop control.
DSZDecrement the variable 00 (MR00) and if it is equal to zero, skip the next command. Note: This command is useful for loop control.
IND MRxxIndirect reference. Refer variable of variable of xx. For example, if MR00 is 3 and MR03 is 5, IND MR00 is 5. (Do you understand?)
IND GOTOxIndirect jump. Jump to label of variable x(x=00 to 09). For example, if MR00 is 3, IND GOTO0 means "jump to LBL3."
IND GOSUB(0)Indirect subroutine call. Call a subroutine of variable 00 (fixed). For example, if MR00 is 3, IND GOSUB(0) means "GOSUBP3."

Do you have a manual?
Ask Google.

Are there any brother machines?
FX-602P (601P) is based on its brothers FX-501P and FX-502P. FX-50xP has 7-segmented displays and can't show alphabets. It has only 128 ot 256 steps for programming. As a whole, FX-50xP is similar to FX-602P.

FX-601P is a cheaper version of FX-602P. The difference between 601P and 602P is that FX-601P has only 128 programming steps and 11 variables.

FX-702P is quite different. Its programming language is (simplified) BASIC, though both FX-702P and 602P can use the same cassette interfece FA-1 and FA-2.

FX-603Pis an upper version of FX-602P released in 1990. Its list price (19,800 yen) is even cheaper than FX-602P. :-) It has 6144 steps and 110 variables (Monster!), and two-line alphabetical displays. However, it is much bigger than FX-602P and its interface is not compatible with FX-602P. It needs FA-6S for cassette/PC interface. Some people still prefer FX-602P for its small size and well-balanced functions. In other words, they (or I should say 'we') love FX-602P. :-)

How can I get one?
It seems almost impossible to get FX-602P now. If you are really, really lucky, you may find one in some auction sites. I recommend to try FX-603P instead, which is also a nice calculator and can be still obtained from CASIO (I think). However, FX-603P is no longer on CASIO's home page, too. So it will be getting hard to obtain one in the future.

Are there any options?
As far as I know, FA-1/FA-2 (cassette interface) and FP-10 (printer) were only options for FX-602P.
For FX-603P, FA-6S(cassette/PC interface) and FP-40? (printer) are available. FA-6 is a former version of FA-6S and is not VCCI compatible.

Can I change screen contrast?
For FX-603P, you can do it with a contrast adjustment dial on the side. However, it seems impossible to change screen contrast of FX-602P easily. According to this page, you may have to adjust an internal potentiometer. If you know a key combination to change screen constrast of FX-602P, please let me know.


Q.1 Increment, increment
Put GSBP9 GSBP9 ISZ to P9 and execute P9. How much does MR00 increase? (The answer depends on your machine. Just try.) And can you explain why?

Q.2 Make one tenth
An arbitrary integer from 0 to 99999 is stored in MR00. Make a smallest program to put MR00 one tenth (1/10) of its original value. For example, if the initial value of MR00 is 11, MR00 should be 1.1 after execution. Following example requies 6 steps. MR00 / 10 = Min00 Can you make it in only 5 steps? (Values of other memories should not be assumed.)
(Hint: Actually this technique works for most calculators I have ever tried. Not FX-602P/603P specific.)

Note: If you need more hints, click
here. - New!

Q.3 Half steps
Again, an arbitrary integer from 0 to 99999 is stored in MR00. Rewrite a following 10-step program in just 5 steps. MR00 * 20 + 100 = Min00

Q.4 What is this program?
Can you tell what is this program for?

SAC M-09 LBL0 XD MR09 x>=0 x=0 GOTO0 MR07

Q.5 Wanna big?
Enter MODE 1 MAC AC 2.5 and then run P0. Find a 3-step program P0, which outputs the largest number. P0 itself is counted as one step, so you have only two steps left. You may not use

"Error" message is considered as 0. My best record is over 10^15. If you find a better answer, please let me know.

Programming Tips

Most of these techniques have been well-known since '80 and are not my invention. ;-)
Equal or lesser
You can use the build-in commands x>=0 or x>=F to check "equal or greater." If you need to check "equal or lesser", try following combinations: "x>=0 x=0" or "x>=F x=F"

If not ...
Let's say you want to make a program which jumps to label 2 if register x is NOT equal to MRF. The following program, "x=F GOTO1 GOTO2 LBL1", works just fine, but there is a better answer. With the following program "x=F x=0 GOTO2", you don't waste a label and can save a step. In this case, x=0 works as a 'short jump command.' Please note that this technique can not be applied if MRF is 0.

If A and B
When you want to check both MR01 and MR02 are equal or greater than zero, the following 4-step program works for you. "MR01 x>=0 MR02 x>=0" Similarly, if you want to check whether both MR01 and MR02 are zero, your program will be like this: "MR01 x=0 MR02 x=0"

[Advanced tips] Basically, the first condition and the second condition must be the same. But if the first condition involve the second one, then you may use this tip. For example, consider the following program. "MR01 x>=0 MR02 x=0"

If A or B
This is similar to the above tip, but this time you would like to check if either MR01 or MR02 are zero. The above program should be slightly changed as "MR01 x=0 x=F MR02 x=0". MRF is arbitrary number but must not be zero. You may notice x=F in the above example is a 'short jump command' shown in the 'If not ...' tip. Please check the above 5-step program really works as expected.

[Advanced tips] If the second condition involve the first condition, this tip can be applied. For example, "MR01 x=0 x=F MR02 x>=0" means 'If MR01 is equal to zero OR MR02 is equal or greater than zero, then ...'

Range Check (0 <= x <= MRF or 0 <= x < MRF)
These 3-step commands are useful for range checking: "x>=0 x>=F x=F" and "x>=0 x>=F x=0". The first one is to check 0 <= x <= MRF and the second one for 0 <= x < MRF. Please check by yourself why they work.

Hidden characters
Please check this image. :-)

Some hidden characters shown by a normal ALPHA command.

MP3'ed programs are here:
Program1, Program2 (Right click to save files)

Quick way to load these programs into your FX-602P with FA-1: Enter Mode 3 INV LOAD P0(or any) EXE. Then start the MP3 file.
(Rest under translation)

Wave Files Handling

(Under translation)

Let's Play Music!

(Under translation)

Program Library

0.5 kbyte Tiny Mahjong for FX-602P/603P

This is a simplified Mahjong game for two players. Your opponent (FX-602P or 603P) plays on its own strategy without cheating (!). This program was first created in 1986 and updated recently. Enjoy!

(Note: The original Japanese document has much more detailed explanations, but I don't have enough time to make full translation. Sorry.)

Program Source:

*Program is shown in a FX-603P type ASCII text format. Please ask if you find unfamiliar words.
*Please visit here about the wav2bin converter program.
*Freeware, (c)1986-2004 K. Miyahara

Game Rules:


(Score) = 16 x (Base) x (Factor)

(Base) = 50 + 10 x (Number of Kotsu)

(Factor) : See below

Sum of Bonus and Factor
Sum of BonusFactor
Bonus Hand
Pinfu1Shuntsu only & the last set must have two waiting tiles like 67. ex. 12233467 8
Tanyao12-8 only. ex. 333456888
Iipeiko1Two sets of the same Shuntsu or Kotsu. ex. 223344789
Dora1One or more Dora (=lucky tile, shown during play)
Chanta2Each set has 1 or 9. ex. 111123789
Toitoi2Kotsu only. ex. 222444777
3renko2Sequential Toitoi. ex. 555666777
Tenho2Finished in the first turn
Chinroto (Yakuman)8 (exclusive)1 or 9 only. ex. 111999999
Issyoku (Yakuman)8 (exclusive)all the same number. ex. 666666666

*Please let me know if anyone scores a Yakuman hand. Yes, FX-602P did it once. Beware :-)
(Under translation)

FX-602P Links

If you have a problem about following links, please let me know. I will fix or remove the link as soon as possible.

  • FX-602P Simulator project
  • another FX-602P Simulator
  • Casio FX-602P - wav2bin(below) is a very nice program for FX-602P.
  • wav2bin page
  • Vintage programmable calculators
  • Casio FX-602P
  • Casio FX-502P Geek - Very COOL! Deep analysis & so much cool stuff.
  • Casio FX-602P - Cool!
  • pooh's calculator collection - FX-602P is here
  • Marcus' FX602P Page
  • Vorstellung: Casio FX-602P
  • Casio FX-602P programs
  • Mon musee de l'Informatique
  • Museum of Pocket Calculating Devices
  • Casio FX-602P
  • The Pocket Computer Museum - FX-602P is here
  • casio fx-602p
  • Caz Pocket Computers Collection - Great collections of pocket computers, including FX-602P and FX-603P. My new guestbook is here.


    *Big News* New links, including FX-602P Simulator project are added. Thanks, Martin!
    Price Table is updated.
    I added a new link(Caz Pocket Computers Collection). Also, I have a new guestbook.
    I underestimated the risk of SPAM boming on my guestbook. :-< I will close the current and find a new one soon.
    I added FAQ about contrast, a new quiz, and a new link(casio fx-602p). If you know a key combination to change screen constrast of FX-602P, please let me know.
    Now I have one-line guestbook. (Sorry, I may not see it often.)
    A new link (Vintage programmable calculators) added.
    Added two MP3'ed programs which can display hidden characters. Sorry, these programs are for FX-602P & FA-1 (or FA-2) only.
    Price Record of FX-602P added. Thank you for your information, Dusan. :-)
    A new link (Casio FX-602P) added. Image of "Hidden characters" added.
    Added 0.5 kbyte Tiny Mahjong for FX-602P/603P
    Another very cool site added. Thank you, FX-502P Geek!
    Oops, sorry for no updates for one year. I add a new link for a very cool fx-602p site. Thanks, Gilles!
    "Recently I've got some E-mails about this page. I don't have enough time to respond to these E-mails or to update this page at this moment. I hope I will have time next month. Sorry." - webmaster
    Added one tip.
    Added two more tips.
    Added two programming tips from the original Japanese version.
    Quick translation from the original Japanese version. Sorry for translation mistakes!

    You may link this page freely. Informations and comments are always welcome. Please let me know!

    [ Japanese version ]

    Last modified 2013/05/06