HP25Cのエミュ GO-25でプログラムを動かす
おそらく世界最初のプログラム関数電卓はHP-65だったのではないかと思います。HP-65の発売が1974年で、翌1975年には廉価版のHP-25が発売され、さらに1976年になると改良版のHP-25cが発売されました。
このところクラシックな電卓のエミュレータを弄っておりますが、ただ闇雲に数字をもてあそんでいても進歩がありませんのでプログラミングに挑戦してみることにしました。
プログラミングといっても当時のプログラム電卓のプログラムはどちらかというとキーを押す順番を覚えさせる形式のもので、普通に思い浮かべる高級言語を使ったプログラムとは随分と様子が異なるものです。
それでも簡単な条件判断はできますし、条件判断に従った分岐処理も可能です。今回プログラミングしてみたHP-25Cで間接アドレッシングはおそらくできないと思いますし、プログラムのサイズも49ステップで余裕があるとは言えませんが、今から40年近く前の電卓のプログラミングというのはわくわくするものです。
これが、今回使うHP-25Cのエミュ、GO-25です。表示が赤色の7セグメントであるところも上手に再現されています。また、キーの様子も上手に再現されています。ところが、よーく見るとあるはずのものがありません。そうです、プログラムスイッチです。プログラムの打ち込みモードと実行モードを切り替えるスライドスイッチがないのです。散々試した揚句、ようやく対処方法を見つけましたので、今回は備忘録として、プログラムの打ち込みから実行までを細かく書いておきます。
手順1、プログラム書き込みモードへの変更
LED表示部分をタップすることで切り替わります。プログラム実行モードのときは0.00(初期状態:FIX2ケタの時)で、プログラム書き込みモードに切り替わると00に表示が変わります。
手順2、プログラムのクリア
すでに入力済みのプログラムがある場合、これをクリアします。PRGM(fを押した後にCHSを押す)を押します。
手順3、プログラムの入力
プログラムをポチポチと入力します。今回は階乗を算出するプログラムを作ってみました。以下が今回作ってみたプログラムです。
01 STO1
02 1
03 STO2
04 RCL1
05 RCL2
06 *
07 STO2
08 RCL1
09 1
10 –
11 STO1
12 1
13 X<Y
14 GTO04
15 RCL2
※レジスターを二つ使っていますが、スタックを上手に使うとレジスター一個で、もっと効率が良くなるかも知れませんが速成ですのでご勘弁を。
手順4.実行モード(RUN)に切り替え
表示部分をタップします。
手順5、いくつの階乗を求めるのかを、1から69の正の整数で入力
手順6、プログラム実行
右下のR/Sボタンを押す。
以上です。これで階乗が計算され、結果が表示されます。このエミュですが、かなり良くできていまして、計算中、表示がシパパシパパと明滅するさまも見事に再現されています。