高校生の時に作った「よみあげくん」

 

今回もちょっとマニアックですが、
高校生の時に作った「よみあげくん」をご紹介します。

打ち込んだプログラムを読み上げてくれたら
便利じゃね?と思って作ったプログラムです。(NECのPC-6601用)

おいおいあっきーさん、なんで最近
みんなが知らないような
よくわからんパソコンのネタを書くんですか?

と思われるだろうと信じていますが(笑)

最近PC-6001エミュレータでの開発などが面白いのと、
再現が難しいとされていた音声合成が実装されたので

今まで日の目を見ることのなかった自作ソフトがようやく
無駄にご紹介できるんです!

制作したのはたしか高2か高3ぐらいですが、
アスキー出版の「PC-6001マシン語入門」と
PC-Techknow6000 Vol.1」と
「Mr.PC techinical collection」などなどの数少ない雑誌たちを眺めて
独学でプログラミングしていました。

だって…。教えてくれる人なんていなかったので…

そうかー、
当時の段階でインターネットがあれば多少は楽だったかもー

いやいやいやいや、

おいらの村にはそんなものはなかったでゲス。
そんな便利なものはなかったでやんすw

そんな私を困せたのは
talkルーチン(しゃべらせる方法)の場所と
使い方などの詳細がわからなかったので、

PC-6601やPC-6601SRのBASICインタプリタROMをかいつまんで
直接逆アセンブルして解析してました。

BasicインタプリタRomといえば16進数の塊です。
こんな感じの呪文が2000行以上続きます。

PC-6001のbasicインタプリタROM(BIOS)のデータ。PIOモニターで表示した

これに挑む感覚は

「漢字をほとんど知らないのに、
すごい長文のお経の原文を読んでいる感じ」とか

「子供用三輪車で世界一周する」とか、

「ビルゲイツの大豪邸にある石を1つ1つ観察する」
とか、そんなノリです。

この正体不明のROMの一部を解析して「おおっ なるほど!」と
叫んでできたのが「よみあげくん」です。

basicリストを読ませるのだから、もちろん
オールマシン語で作成しています。

(※ここではニーモニックで記述)

PC-6601用:basicリストを読み上げる「よみあげくん」ソースリスト。

まあ、こんなかんじでずっとプログラムを組んでいきました。

余談ですが、
当時ウチの高校でこんな感じでプログラムを組めるのが
私以外に2人いました。

そのうち1人はNECのPC-9801VMYs3のような多重スクロールを再現し、
もう一人はMZ-700でSEGAのアフターバーナーもどきを作って、
360度ぐるぐる回転させていたんです。

そりゃもう、電波ソフトから「Tiny AfterBurner」として
発売して欲しいレベルだったよ…

(「回転ですか? 行列変換の応用ですよ」とさらっといってた彼は
その後、スーファミのデスブレイドのメインプログラマーをしてた)

 

…と、ちょっと脱線した。
まあ、この「よみあげくん」は
技術的にはかなり苦労して作ってみたけど

しゃべりが遅くて使い物にならかったので、
作っただけで全く使わなかった、

というのはナイショであります。


※今回の記事はBernieさんのPC-6001VW3エミュレータを使って書いております。
(エミュレータ内のひらがながローマ字入力出来るところが最高に便利です)


(追記@150628)

よみあげくんのソースリストを公開して!
というリクエストにお応えして
裸になる思いで公開してみます。

ソースリストはこちら
※著作権は主張しません。

「何だこの呪文w」とか、
「ここは普通こういうプログラミングはしないだろが」
など、こっそりみてニヤニヤして下さい。

 

 

トップページへもどる