Commodore P50 Programs
A collection of programs from the vintage Commodore P50 from 1978. Check out my review from last April: https://edspi31415.blogspot.com/2025/04/spotlight-commodore-p50.html.
Air Density
This equation calculates air density, in m/kg³ given the temperature of Celsius. The standard equations are used.
ρ = p ÷ (R * (T°C + 273.15)) ≈ 359.98728 ÷ (T°C + 273.15)
p = 101,325 Pa (absolute pressure)
R = 287.05 J/(kg * K) (specific gas constant)
p/R = 101325 / 287.05 ≈ 359.98728
With limited storage space of 24 steps, the equation had to be simplified.
(The step numbers are for reference, since steps cannot be reviewed on the P50.)
Start with temperature in the display. Press GOTO 00, R/S. The air density is displayed.
00 + 01 2 02 7 03 3 04 . 05 1 06 5 07 = 08 1/x 09 × 10 3 |
11 5 12 2 13 . 14 9 15 8 16 7 17 2 18 8 19 = 20 r/s 21 GOTO 22 00 |
Examples:
Example 1: Input: 0°C, Output: 1.2922837 m/kg³
Example 2: Input: 15°C, Output: 1.2250123 m/kg³
Example 3: Input: 37.8°C, Output: 1.1351898 m/kg³
Speed of Sound
This equation calculates the speed of sound (in dry air) in m/s given the temperature of Celsius.
c_air ≈ 20.05 * √(273.15 + T°C)
Start with temperature in the display. Press GOTO 00, R/S. The speed of air is displayed.
00 + 01 2 02 7 03 3 04 . 05 1 06 5 07 = 08 √x 09 × |
10 2 11 0 12 . 13 0 14 5 15 = 16 r/s 17 GOTO 18 00 |
Examples:
Example 1: Input: 0°C, Output: 331.37137 m/s
Example 2: Input: 20°C, Output: 343.28856 m/s
Example 3: Input: 37.8°C, Output: 353.55718 m/s
Decibel Gain/Loss from Power Ratio
dB = 10 * log(power output ÷ power input)
Start with power output. Press GOTO 00, R/S. Then enter power input, press R/S. The decibel gain/loss is displayed.
00 ÷ 01 r/s 02 = 03 log 04 × |
05 1 06 0 07 = 08 r/s 09 GOTO 10 00 |
Examples:
Example 1: power output = 25 W, power input = 5 W
Input: 25 GOTO 00 r/s, 5 r/s. Output: 6.9897 dB
Example 2: power output = 30 W, power input = 42 W
Input: 30 GOTO 00 r/s, 42 r/s. Output: -1.4612804 dB
Example 3: power output = 3 W, power input = 1 W
Input: 3 GOTO 00 r/s, 1 r/s. Output: 4.7712125 dB
“Radio Mathematics” ARRL. Retrieved November 1, 2025. https://www.arrl.org/files/file/ARRL%20Handbook%20Supplemental%20Files/2023%20Edition/Radio%20Supplement.pdf
Plus or Minus Operation
This program calculates a ± b (a + b and a – b). The program leaves a – b in the display and a + b in memory, which can be toggled by the memory exchange [ x ←→ M ] key.
The program uses the memory exchange key. Enter b (the term to both be added and subtracted first), then a.
00 STO 01 r/s 02 + 03 RCL 04 = 05 r/s 06 x ←→ M 07 × 08 2 09 = |
10 ± 11 + 12 RCL 13 = 14 r/s 15 GTO 16 00 |
Examples:
Remember, enter the second number (b) first.
Example 1: 5 ± 9
Input: 9 GOTO 00 r/s, 5, r/s. Output: 14 r/s -4
Example 2: 36 ± 20
Input: 20 GOTO 00 r/s, 36 r/s. Output: 56 r/s 16
Example 3: 310 ± 240
Input: 240 GOTO 00 r/s, 310 r/s. Output: 550 r/s 70
Combination
This is the combination function:
nCr = n! ÷ (r! * (n – r)!)
Due to only having one memory register and the factorial function does not distribute, one of the arguments (r) will need to be entered twice.
Input: n GOTO 00 r/s, r r/s, r r/s (again). Output: nCr.
00 STO 01 - 02 r/s 03 = 04 n! 05 1/x 06 × 07 RCL 08 n! |
09 ÷ 10 r/s 11 n! 12 = 13 r/s 14 GOTO 15 00 |
Examples:
Example 1: 52 C 5
Input: 52 GOTO 00 r/s, 5 r/s, 5 r/s. Output: 2,598,960
Example 2: 34 C 12
Input: 34 GOTO 00 r/s, 12, r/s, 12 r/s. Output: 5.4835404 E 08
Example 3: 10 C 4
Input: 10 GOTO 00 r/s, 4 r/s, 4 r/s. Output: 210
Eddie
All original content copyright, © 2011-2026. Edward Shore. Unauthorized use and/or unauthorized distribution for commercial purposes without express and written permission from the author is strictly prohibited. This blog entry may be distributed for noncommercial purposes, provided that full credit is given to the author.