Virtual Museum of Calculators
Menu
C/CE
Calculators
Slide Rules
Others
Manufacturers
Search
Váltás magyarra
Back to Showroom
Casio
FX-502P
1979-82
Sharp
EL-5050
1985-89

Casio FX-501P

Brief History
In Japan, easy-to-understand programming models in imported calculators caused Casio to abandon the Fortran-like programming method used in the programmable calculators, and for the new FX-501P and FX-502P calculators debuted in 1979, develop a new method similar to used in Hewlett-Packard and Texas Instrument devices. Instead of the built-in magnetic card storages, Casio made the FA-1 interface which can be used with a simple tape recorder available in households. The machines had nonvolatile memory, so neither the program nor the memory registers were erased when powering off. The 128 (FX-501P) or 256 (FX-502P) steps program memory which can be divided to 10 areas, the 11 (FX-501P) or 22 (FX-502P) memory registers, the indirect addressing and the conditional branching made these calculators a professional tool for several purposes. The machines, taking advantage of the reduced space and energy required by liquid crystal display, became really thin and low power consumption. Perhaps their only inconvenience was the instruction codes showed in seven segment format, similar to their predecessors, a removable code mask can be placed on the keyboard for easier programming.

In 1981, the FX-601P and FX-602P were introduced, which, taking advantage of the dot matrix displays, display program codes with the label or mathematical symbol of the functions themselves, making them a very successful calculators for many years.

Another interesting feature of the machines is that it was able to program and play short melodies, taking advantage of the sound generation possibilities of the cassette interface. The Kraftwerk band of Germany composed its Pocket Calculator song with the help of the FX-501P.

Or you can listen to its short implementation of the New World Symphony..

Manufacturer:CASIO Computer Co., Ltd. (Japan)
Mfg. date:1979-82
Size:7,5×14,3×1,1 cm
Weight (ready for operate):n.a.
Type:programmable scientific
Capacity:10/10+2 digits (input/display)
12+2 digits (internal precision)
Operating logic:algebraic with precedence
CPU:Hitachi HD43108A + HD43109
Registers:2 standard (with saving the pending operation)
1 constant (with saving the pending operation)
10 bracket (with saving the pending operation)
11 memory (with aritmetic)
Features:%calculation with percent +/-change sign (direct entry of negative numbers) RVexchange registers (X-Y) Ffloating-point notation Sciscientific (exponential) notation Engengineering notation Sqrsquare root x2square pivalue of pi (3.1415..) can be recalled 1/xreciprocal trigtrigonometrical functions (sin, cos, tan and inverses: arcsin, arccos, arctan) hyphyperbolic functions (sinh, cosh, tanh and inverses: ar sinh, ar cosh, ar tanh) DMS-DDconversion of decimal and sexagesimal numbers logexponential and logarithmical functions (10- and e-base) yxraising to power SDone variable statistics: calculating mean and standard deviation P-Rconverting coordinates between rectangular and polar systems n!factorial
Display:10+2+2 digit LCD (EPSON LD-360A)
Power:2×LR44 button cell
Programming method:merged keystroke-programmable
Program capacity:128 steps
Test results:trigonometry:result of sin-1(cos-1(tan-1(tan(cos(sin(60°)))))), reference value: 60. 60.000009708
exponential:result of 0.999160000, reference value (first 14 digits): 3.0068804206375×10-70 3.006880421E-70

FX-501P

Inside of the FX-501P

Keyboard and display of the FX-501P
Detailed Description

Programming the calculators

The machines have 11 (FX-501P) or 22 (FX-502P) memory registers: the first ten (M0..M9) can be addressed with the number keys, the second ten on FX-502P with the . and the number key, the MF with F EXP, and on the FX-502P, M.F can be addressed using INV . F (EXP). Common functions such as write to memory (M in), memory display (MR), replace memory with the displayed value (X↔Y), or addition to memory (M +) and subtract from memory (M- ) can be used with their designated key, and then enter the previously detailed address. For example, adding the displayed value to register 12 can be accessed by pressing M+ . 2.

WRT mode (MODE 2) can be used to write and modify a program, PCL mode (MODE 3) to delete a program, and RUN mode (MODE 1) to run programs and perform manual calculations.

The machines can hold up to 10 separate programs with a total of 128 (FX-501P) or 256 (FX-502P) steps.

When entering WRT mode, program area identifier that do not yet contain a program will appear on the display. When a number does not appear, there is already a program in that area. By pressing the corresponding key (P0 .. P4, INV P5 .. P9), the respective program can be displayed and modified.

The program area number is displayed first, the number of free program steps is displayed on the right (at the place of the exponent). Use the SST key to move forward and the BST key to move backward one step in the program. When a program step displayed, the following displayed in order: program area, the instruction code (with one or more key codes) and finally the displayed step number.

If you enter a new program (to an empty program slot), the display shows key or keys pressed in the previous step with the previous step number in the right.

Editing and modifying the program is very simple: at a given step number, pressing any programmable key stores the newly entered instruction. The previously instructions in that step and later steps are shifted by one step (so the inserted instructions are inserted before the displayed step).

Pressing the C key clears the instruction stored in the displayed program step. Instead, you can press another key to write a new instruction to that program step, or use the FST key to finalize the deletion. In this case, the instruction originally stored in the next program step is displayed.

The following functions can be used to test and debug the program: the program can be stopped with the HLT key. If you start the program by pressing the GSB key and the program area identifier, you can run it step by step from the beginning by pressing the FST key. With this key you can always execute the instruction stored in the current step number. While holding down the BST key, the display also shows the current program step number and the current instruction.

The program can be started in RUN mode by pressing the corresponding program area key. While running, the program can be stopped by pressing the AC key.

You can use the HLT instruction to stop the program. In this case, the HLT symbol appears on the display. This instruction can be used to request for input values. The program execution can be resumed with the EXE key.

The INV PAUSE instruction stops the execution for about a second.

Up to 10 labels can be used in each program, which can be programmed by pressing LBL and the corresponding number key (0..9). You can jump to these labels with unconditional or conditional jump (branch) instructions as follows:

GOTO and the corresponding number key continues the execution of the program at the appropriate label. Four types of conditional branch can be used: INV x≥0, INV x≥F, INV x=0 and INV x=F. Each of these compares the contents of the displayed number (X register) and the 0 or F registers, respectively. If the specified condition is true, the next instruction is executed. If not, the following instruction is skipped.

Programming loops is also possible, using memory register 0 (M0) as the loop counter. The INV DSZ instruction decreases the loop counter by one, INV ISZ increases it by one. If the value of the loop counter becomes 0, the instruction following the DSZ or ISZ instruction is skipped.

The programs in each program area can be used as subprograms (subroutines), and up to four subprograms can be nested. Subroutine is called by pressing the GSB and the corresponding program area key (P0 .. P4, INV P5 .. P9). When the subroutine ends, execution returns to the program calling the subroutine.

Indirect addressing can be used with memory registers and jump instructions. If the INV IND keys are pressed before a memory operation, the operation is performed not with the desired memory register but with the number stored in the desired memory register. Valid numbers are between 0 and 19. Registers MF and M.F cannot be addressed, but can be used to store indirect address.

The INV IND key sequence programmed before the jump instructions creates a jump instruction that jumps not to the specified label (or subroutine) but to the specified label (or subroutine) stored in the specified memory register. Valid numbers are between 0 and 19. Indirection can also be used for looping instructions, in which case the specified register in M0 will be used as loop counter.

The INV IND instruction before subroutine call instruction causes calling a subroutine with program area number stored in M0 register.

The programmable keys (keystrokes) and the corresponding instruction codes are as follows:
CodeKey(s)
000
011
022
033
044
055
066
077
088
099
C0[(---
C1---)]
C2sin
C3cos
C4tan
C5-00..C5-09X↔M 0..X↔M 9
C5-0FX↔M F (EXP)
C5-10..C5-19X↔M . 0..X↔M . 9 (csak FX-502P)
C5-1FX↔M . F (EXP) (csak FX-502P)
C6-00..C6-09M in 0..M in 9
C6-0FM in F (EXP)
C6-10..C6-19M in . 0..M in . 9 (csak FX-502P)
C6-1FM in . F (EXP) (csak FX-502P)
C7-00..C7-09MR 0..MR 9
C7-07(M7)MR ∑x2
C7-08(M7)MR ∑x
C7-09(M7)MR n
C7-0FMR F (EXP)
C7-10..C7-19MR . 0..MR . 9 (csak FX-502P)
C7-1FMR . F (EXP) (csak FX-502P)
C8-00..C8-09M- 0..M- 9
C8-0FM- F (EXP)
C8-10..C8-19M- . 0..M- . 9 (csak FX-502P)
C8-1FM- . F (EXP) (csak FX-502P)
C9-00..C9-09M+ 0..M+ 9
C9-0FM+ F (EXP)
C9-10..C9-19M+ . 0..M+ . 9 (csak FX-502P)
C9-1FM+ . F (EXP) (csak FX-502P)
CC+/-
CExD
E0AC
E1×
E2÷
E3+
E4-
E5=
E6EXE
EEEXP vagy π
EP.
F0-00..F0-09LBL 0 .. LBL 9
F1-00..F1-09GOTO 0 .. GOTO 9
F2-00GSB 0 (INV IND után)
F2-P0..F2-P9GSB P0 .. GSB INV P9
(F3)(BST)
(F4)(FST)
F5hyp
F5-C2hyp sin
F5-C3hyp cos
F5-C4hyp tan
F6ENG
F7°'"
F8log
F9ln
FFINV
FF-00-00..FF-00-09INV RND 0..INV RND 9
FF-01-00..FF-01-09INV ISZ 0..INV ISZ 9
FF-02-00..FF-02-09INV x=0 0..INV x=0 9
FF-03-00..FF-03-09INV x=F 0..INV x=F 9
FF-04-00..FF-04-09INV DSZ 0..INV DSZ 9
FF-05-00..FF-05-09INV x≥0 0..INV x≥0 9
FF-06-00..FF-06-09INV x≥F 0..INV x≥F 9
FF-07INV x
FF-08INV σn
FF-09INV σn-1
FF-C0INV INT
FF-C1INV FRAC
FF-C2INV sin-1
FF-C3INV cos-1
FF-C4INV tan-1
FF-C5INV X↔Y
FF-C6INV
FF-C7INV x2
FF-C8INV 1/x
FF-C9INV n!
FF-CCINV ABS
FF-CEINV DEL
FF-E1INV xy
FF-E2INV x1/y
FF-E3INV R→P
FF-E4INV P→R
FF-E5INV %
FF-EPINV RAN#
FF-F0INV IND
FF-F1INV SAVE
FF-F2INV LOAD
FF-F3INV MAC
FF-F4INV SAC
FF-F5-C2INV hyp sin-1
FF-F5-C3INV hyp cos-1
FF-F5-C4INV hyp tan-1
FF-F6INV ENG
FF-F7INV °'"
FF-F8INV 10x
FF-F9INV ex
FF-FPINV PAUSE
FF-PPINV NOP
FPHLT
P0P0
P1P1
P2P2
P3P3
P4P4
P5INV P5
P6INV P6
P7INV P7
P8INV P8
P9INV P9
PP-04MODE 4 (DEG)
PP-05MODE 5 (RAD)
PP-06MODE 6 (GRA)

Using the FA-1 and FA-2 interfaces

The FA-1 and FA-2 interfaces can be connected using the connector on the top of the calculators. The latter is compatible with the FX-702P pocket computer too, while the former can only be used with the FX-501P, FX-502P, FX-601P and FX-602P.

You can also save programs and data on tapes. Each program and data file has a three-digit ID.

On the FA-1, you can set the appropriate operation mode with two sliding switches. CAL can be used to use the calculator as calculator, MUSIC can be used to program and generate music. The SAVE/LOAD position of the right switch can be used to load or save programs and data from/to tape recorder. CHECK mode can be used to check the saved data or programs.

The mode switch on the FA-2 interface has more positions than on FA-1, because it can be connected to the FP-10 printer: in OFF/PRT mode only the printer can be used, in MT mode the cassette interface works, in MT/PRT mode, loading from cassette and printing can be used, and CHECK mode is the same as described above.

To save or load the programs or contents of memory registers, the interface must be in CAL and SAVE/LOAD or MT position. The calculator can load or save programs in PCL mode (MODE 3), or data in RUN mode (MODE 1). You can start save by pressing INV SAVE, entering the three-digit ID, and pressing EXE. When the save is complete, 0 appears on the display.

Before loading programs, the program memory must be cleared with the INV MAC keys, then loading can be started by pressing INV LOAD, and entering the three-digit ID number and pressing EXE. When the tape recorder reaches a program file, the display shows FP (for data files shows F) and the ID of that file.

Only a parity check can be performed to verify the save process, which does not necessarily indicate a faulty recording. The keystrokes is the same as described for loading, the interface must be in CHECK mode.

Although the recording method are the same as FX-601P and FX-602P, the FP-10 printer can print only program or data sent to the interface by SAVE key. Because FX-501P and FX-502P does not contain instruction for saving the display content (as FX-601P and FX-602P do), the printer cannot be used to print results. Due to compatible recording format, the printer can be used to print programs with instruction codes only.

Music

Utilizing the sound-generating features of the FA-1 and FA-2 interfaces, it is possible to record and play simple melodies on the calculator. The FX-501P can store 15, the FX-502P can store 20 different pitches. It works as follows:

1. Set the mode selector switches on the FA-1 or FA-2 to MUSIC and SAVE/LOAD or MT.

2. Enter 15 or 20 pitch codes by storing them in memory registers and then referring to each pitch with the numbers of the memory registers. The pitch code is an integer between 0 and 255, where 0 is the highest pitch.

3. The tempo must be entered in register F (as an integer from 0 to 9).

4. In WRT mode, enter each note: first the length, then the pitch (as decribed above). These steps must be repeated for each note. The whole note (semibreve) can be specified with M +, half note (minim) with M-, quarter note (crochet) with MR, quaver with M in, semiquaver with X↔Y. For dotted notes, the . key must be pressed before these keys. To program a rest, press the EXP key after programming a note with identical length. Legato (slur) can be set with + between the corresponding notes, tie can be specified by pressing -.

5. The program must be started in RUN mode. The melody is sent to the tape recorder, so it can be played on it. The melody program can be saved to tape in the same way as any other program. For example, there are a sample of the New World Symphony:
Key(s)Display
AC0.
MODE 10.
131 M in 1131.
97 M in 297.
92 M in 392.
82 M in 482.
72 M in 572.
64 M in 664.
61 M in 761.
54 M in 854.
51 M in 951.
48 M in . 048.
45 M in . 145.
40 M in . 240.
35 M in . 335.
31 M in . 431.
110 M in . 5110.
(only FX-502P) 103 M in . 6103.
5 M in F5.
MODE 2 P0P0 x
M in . 0P0 C6-10 001
M in 6P0 C6-06 002
M in 4P0 C6-04 003
M in 3P0 C6-03 004
M in 2P0 C6-02 005
M in 1P0 C6-01 006
M in 2P0 C6-02 007
M in 4P0 C6-04 008
M- 6P0 C8-06 009
MR 7P0 C7-07 010
MR 8P0 C7-08 011
.P0 EP 012
MR 7P0 C7-07 013
M in 6P0 C6-06 014
M- 6P0 C8-06 015
M- 6P0 C8-06 016
MR 5P0 C7-05 017
M in 4P0 C6-04 018
M in 5P0 C6-05 019
.P0 EP 020
M- 6P0 C8-06 021
MR 6P0 C7-06 022
M- 6P0 C8-06 023
MR 7P0 C7-07 024
MR 8P0 C7-08 025
.P0 EP 026
MR 7P0 C7-07 027
M in 6P0 C6-06 028
M- 6P0 C8-06 029
M- 6P0 C8-06 030
MR 5P0 C7-05 031
M in 4P0 C6-04 032
M in 5P0 C6-05 033
.P0 EP 034
M- 6P0 C8-06 035
MR 6P0 C7-06 036
M- . 0P0 C8-10 037
MR . 1P0 C7-11 038
MR . 2P0 C7-12 039
.P0 EP 040
MR . 1P0 C7-11 041
M in . 0P0 C6-10 042
M- . 0P0 C8-10 043
M- . 0P0 C8-10 044
MR 8P0 C7-08 045
M in 6P0 C6-06 046
M in 8P0 C6-08 047
.P0 EP 048
M- . 0P0 C8-10 049
MR . 0P0 C7-10 050
M- . 0P0 C8-06 051
MR . 1P0 C7-11 052
MR . 2P0 C7-12 053
.P0 EP 054
MR . 3P0 C7-13 055
X↔M . 2P0 C5-12 056
X↔M . 3P0 C5-13 057
M- . 4P0 C8-14 058
X↔M . 2P0 C5-12 059
X↔M . 1P0 C5-11 060
.P0 EP 061
MR . 0P0 C7-10 062
MR . 1P0 C7-11 063
MR 9P0 C7-09 064
X↔M . 2P0 C5-12 065
X↔M . 1P0 C5-11 066
.P0 EP 067
MR . 0P0 C7-10 068
MR . 1P0 C7-11 069
MR 9P0 C7-09 070
X↔M . 2P0 C5-12 071
X↔M . 1P0 C5-11 072
M in . 0P0 C6-10 073
M in . 1P0 C6-11 074
M in 9P0 C6-09 075
X↔M . 2P0 C5-12 076
X↔M . 1P0 C5-11 077
M in . 0P0 C6-10 078
M in . 1P0 C6-11 079
M in 8P0 C6-08 080
X↔M . 2P0 C5-12 081
X↔M . 1P0 C5-11 082
M in . 0P0 C6-10 083
M in . 1P0 C6-11 084
M in 9P0 C6-09 085
M in . 1P0 C6-11 086
M in 8P0 C6-08 087
M in 3P0 C6-03 088
(FX-501P) M in . 5P0 C6-15 089
(FX-502P) M in . 6P0 C6-16 089
X↔M 3P0 C5-03 090
X↔M 4P0 C5-04 091
X↔M 5P0 C5-05 092
X↔M . 5P0 C5-15 093
X↔M 1P0 C5-01 094
X↔M . 5P0 C5-15 095
X↔M 2P0 C5-02 096
X↔M 3P0 C5-03 097
X↔M 4P0 C5-04 098
X↔M . 5P0 C5-15 099
X↔M 1P0 C5-01 100
X↔M . 5P0 C5-15 101
X↔M 2P0 C5-02 102
X↔M 3P0 C5-03 103
X↔M 4P0 C5-04 104
.P0 EP 105
M in 8P0 C6-08 106
X↔M 7P0 C5-07 107
.P0 EP 108
M in 6P0 C6-06 109
X↔M 4P0 C5-04 110
.P0 EP 111
M in 3P0 C6-03 112
X↔M 2P0 C5-02 113
X↔M . 5P0 C5-15 114
X↔M 3P0 C5-03 115
X↔M 2P0 C5-02 116
X↔M . 5P0 C5-15 117
X↔M 3P0 C5-03 118
X↔M 2P0 C5-02 119
X↔M . 5P0 C5-15 120
X↔M 3P0 C5-03 121
X↔M 5P0 C5-05 122
X↔M 8P0 C5-08 123
X↔M 5P0 C5-05 124
X↔M 3P0 C5-03 125
X↔M 2P0 C5-02 126
X↔M 3P0 C5-03 127
X↔M 4P0 C5-04 128
(FX-502P) 
X↔M . 5P0 C5-15 129
X↔M 1P0 C5-01 130
X↔M . 5P0 C5-15 131
X↔M 2P0 C5-02 132
X↔M 3P0 C5-03 133
X↔M 4P0 C5-04 134
X↔M . 5P0 C5-15 135
X↔M 1P0 C5-01 136
X↔M . 5P0 C5-15 137
X↔M 2P0 C5-02 138
X↔M 3P0 C5-03 139
X↔M 4P0 C5-04 140
.P0 EP 141
M in 8P0 C6-08 142
X↔M 7P0 C5-07 143
.P0 EP 144
M in 6P0 C6-06 145
X↔M 5P0 C5-05 146
.P0 EP 147
M in 4P0 C6-04 148
X↔M 3P0 C5-03 149
X↔M 2P0 C5-02 150
X↔M 3P0 C5-03 151
X↔M 4P0 C5-04 152
X↔M 2P0 C5-02 153
X↔M 6P0 C5-06 154
X↔M 1P0 C5-01 155
X↔M 2P0 C5-02 156
X↔M 3P0 C5-03 157
X↔M 4P0 C5-04 158
X↔M 2P0 C5-02 159
ACP0 E0 160
MODE 1 P0-

Similar items
Sharp
PC-1201
1977-78
Casio
fx-202P
1977-78
Privileg
PR56D-NC
1976
Design & HTML: Modulit Bt.
(C) www.arithmomuseum.com 2004-2016.