MITS BASIC のプログラム・紙テープを入手

私の手元に何とも興味深いアイテムが到着した。それは幅25mmほどの巻き取られている紙テープだが、一面に小さな穴が空いている。実はこれ、MITS社 Altair 8800でBASICインタプリタを走らせるためのプログラムなのである。どうやら添付の情報などを関連して考えると1977年2月に供給されたものらしい。                                                                                                        
BASICというプログラミング言語は1970年代後半に登場したマイコンあるいはパーソナルコンピュータで多くのユーザーに支持された。それは「beginner's all-purpose symbolic instruction code」すなわち「初心者向けの汎用記号命令コード」の略だといわれているが当時は「BASICを知らずしてマイコンを使うべからず」といった雰囲気まであった。そして私自身もワンボードマイコンで4K BASICを走らせ、後にコモドールPETやApple IIでBASICを夢中で勉強したものだ…。
ここでBASICの仕様についてのあれこれを論じるつもりはないが、この初心者にもとっつきやすいプログラミング言語をビル・ゲイツとポール・アレンが1975年Altair 8800用に移植したことでAltair 8800というホビーコンピュータが広く支持され、かつそれをきっかけにマイクロソフト社が起業した経緯はご承知のとおりである。

MITSBASIC_011.jpg

※この度入手した紙テープ媒体のMITS BASICと関連資料


この種の話の中で、ときに「ゲイツらがAltair BASICを開発した」という言い方をすることがあるが、誤解がないように申し上げておけばBASICという言語は当時すでに存在しており、正しくはゲイツらはAltair 8800で走るようスケールダウンし移植したということになる。
なおBASICは1964年、米国ダートマス大学の数学者ジョン・ケメニーとトーマス・カーツにより、コンピュータ教育用の言語として開発されたものである。
ともかくこれをきっかけとしてBASICはマイクロプロセッサを使ったコンピュータの事実上の標準言語となったのである。
ただしゲイツらが作り上げたAltair 8800用BAISCは当初紙テープ(鑽孔テープ)で販売提供されたのだった。

問題は昨今、すでに若い方々の中にはフロッピーディスクを知らない人たちも存在する時代になった。そんな中で鑽孔テープでプログラムを供給するという事実を分かりやすく説明する難しさは理解していただけるものと思う。
今回、こうしたアイテムを手に入れた訳はその実物を若い人たちや子供たちに見せてやりたいと考えたからに他ならない…。

1977年にワンボード・マイコンを手にした私自身、前記したように4K BASICインタプリタを手にしたのはソノシートであり、それをカセットテープにバックアップ(コピー)して利用していた時代だった。とはいえマイコンやパソコンで鑽孔テープを使った経験はない。
ただしその時代に勤務先で使っていたテレックスという電話回線を使ったテレタイプ通信端末がその鑽孔テープを使うシステムだったことでもあり、日々使い込んだ実体験からそれがどのようなものであるかを身にしみて知っている...。

ちなみに当時のテレックスがなぜ鑽孔テープを使っていたかは明白だ。その理由は通信費用が馬鹿高かったからである。常時接続など考えられない時代であり、海外との情報交換は国際電話をかけるか、このテレックスで文章を送り合うのが一般的だった。
テレックスに限って説明すれば、通信は相手の端末へダイヤル接続し、回線が繋がったのを確認後、タイプライターのようにキーボードを打ってテキストを入力すると相手の端末にもそのテキストが打ち出され、ロール用紙にプリントアウトされるという仕組みだ。
問題はその通信費用は回線が接続してから切るまでの間に適用されるわけだから、いわゆるリアルタイムにタイピングするということはほとんどやらなかった。
リアルタイムだと見栄えの良い修正手段もなかったし、あっという間に時間が経ってしまい高額な通信料金が請求されるからだ。

ではどうするか…。まず必要な文章をオフラインで入力し、それを紙テープに記録するわけだ。情報は紙テープに空けられる小さな穴の配列でアルファベットが記録され、そうして作った送信用テープをテレックスのリーダー部にセットしてから電話回線を接続し、テープを送り終えたら即回線を切るというのが定石だったのである。
したがって熟練すると紙テープの長さで大方の通信時間…したがって通信費用が分かるようになるが、通信費を少なくするため文章には略語も多々使われたものだ。またタイプミスした場合、その位置に戻して一列すべてに穴を空けることで送信時にその列は無視されることになり修正もまずまず容易であった。

ところでそのテレックスはどんな機器かとビジュアルを探したが適当なものがなかったのでリンクを貼っておくので参考にしていただきたい。私が勤務先の会社で使っていたのも丁度そんな感じの機器で幅とボリュームなどはちょっとした銀行のATM程度はあった。その左側に紙テープのパンチとそれを読む機器が装備されていた。

さて、私が今般入手したAltair 8800向けBASICの由来だが、実はいまのところよく分かっていない。
鑽孔テープと一緒に添付されているのは十数枚のドキュメントとそれらが収納されていた紙製のファイルフォルダであり詳しい経緯を追うのは難しいかも知れない。
ただし収納フォルダやドキュメントのマシンコードがプリントされているページには「MITS Basic 3.2」と手書きされ、テープ自体のリード部位にも「MITS 12K Basic 3.2V」および「Intel Format」と小さなシールが貼られている。ドキュメントのページ端には年月日を表していると思う "2ー2ー 78" という文字が手書きされているが「MITS 12K Basic 3.2V」に続くメモはカセットテープにセーブするルーチンも含んでいるといった意味なのだろうか...。

MITSBASIC_05.jpg

※紙テープには「MITS 12K Basic 3.2V」および「Intel Format」と小さなシールが貼られている


マシン語のリストに記されている簡単なメモがあるが、それはカセットテープに保存するためのものらしい…。「カセットテープはメモリの0000Hから2AAFH番地にロードされる」とある。

MITSBASIC_04.jpg

※ダンプリストの他「MITS 12K Basic」をカセットテープで使う方法などが記されている


混乱させるのは別途「ia7301 Computer in a Book Programming Pad」と印刷されたプログラミングシートだ。ちなみに "ia7301" を調べて見ると1976年に米国Iasis社より発売されたトレーニングコンピュータで一見NEC TK-80のようなワンボードマイコンが3穴のバインダーに組み込まれているといったある種のポータブル可能なマイコンだった。
この "ia7301"のCPUはインテル8080だからしてMITS社のAltair 8800と同じだ。ただしどうやらMITS BASICによるプログラムのあれこれを手元にあった"ia7301" 用プログラムシートに書き込んだ...ということのように思える。

ビル・ゲイツとポール・アレンがAltair 8800用として作ったBASICは当初4Kのものと8Kのものがあったようだが、いずれも1975年にリリースしているはずで、だとすれば本鑽孔テープはマイクロソフト社のものではないかも知れない。あるいはその後にバージョンアップしたものなのか...。私が1978年暮れに買ったコモドール社製 PET 2001のBASICも確か12K BASICだった記憶があるからして、マイクロソフト社も12K BASICを供給していた時代があったように思うのだが...。

MITSBASIC_06.jpg

※紙テープにはこんな感じで小さな穴が空けられているが。この一列が一文字を表している。なお中央付近のより小さな穴はテープ送りのためにある


ともかく「ia7301 Computer in a Book Programming Pad」のプログラミングシートを使った記述はアドレス、マシン語、ニーモニックコードそしてコメント欄に手書きでデータが書かれている。そしてコメント欄には「Note : On start of MITS Basic at Addres 0000 There is a jump to 283A.」と書かれており、続いて「The Program from 283A to 28D4 jusr looks at Front Panel switch position to set up I/O.」などとBASICをMITSのマシンにロードする手順が書かれている。

MITSBASIC_03.jpg

※「ia7301 Computer in a Book Programming Pad」プログラミングシートにMITS BASICをマシン(Altair 8800)にロードする手順などが記されている


こうした内容から見て、この資料および鑽孔テープはMITS社のAltair 8800を対象としたものであることは間違いないようだ。多くの資料を確認したが「Altair BASIC」という呼び方が一般的だったようだし「MITS BASIC」という名称はほとんど使われていないので言い切るのにブレーキがかかったが、何しろ「MITS」といえばAltairを開発したMITS社のことに間違いないし、MITS社のそれもインテルのCPUを使ったコンピュータはAltair 8800シリーズしかなかったわけで「MITS BASIC」といえばAltair BASICのことを指すことは確かなようだが、もしお詳しい方がいらっしゃればご教授願いたい...。

無論この鑽孔テープが問題なく動作するかはやってみないと分からないが、Altair 8800本体は勿論テープリーダーがなければ検証のしようもない。いや、そもそもがこれを動かそうなどと思っているわけではないが、個人で所有が可能になった最初期のホビーコンピュータであるAltair 8800でBASICを走らせることがどのようなことなのかを子供たちやお若い方々に知っていただけるようにというのが目的なのだ。
本資料についてはまだまだ調査しなければならないことが多いが、また新しいことが分かったらご報告したいと思う。

【追記】
その後、当該鑽孔テープは間違いなくMITS社のAltair 8800向け12K BASICで、当時ミニコンのBASICとほぼ同じ機能を持っていた「Altair EXTENDED BASIC」であることが判明。さらにテープの読み取りに成功し、インテルHEXフォーマットと同じ文字列が出力されている。
この事実はあのビル・ゲイツ氏が1975年から76年に作ったBASICプログラムファイルを再現したことを示すが、紙テープの信頼性をあらためて認識させることとなった。
なぜならもし当該「Altair EXTENDED BASIC」が8インチフロッピーで入手した場合、動作する動8インチ・ディスクドライブを用意してもフロッピーが劣化して読み出しは不可能だったに違いない。なにしろ37年ほども前の記録メディアなのだから…。
しかし紙テープは特殊な中性紙で作られているため保管がよければ一般の印刷物のように酸化してボロボロになることはなく100年単位で保存ができるものらしい。
詳しい事はまだ明言できないが、この貴重な鑽孔テープを何とかして活かしたいと考えている。

関連記事
メイン広告
ネットショップ先行販売
ブログ内検索
New web site
[小説]未来を垣間見たカリスマ  スティーブ・ジョブズ
ジョブズ学入門
WATCH 講座
大塚国際美術館ひとり旅
ラテ飼育格闘日記
最新記事
お勧めの新旧記事
カテゴリ
リンク
メールフォーム

名前:
メール:
件名:
本文:

プロフィール

appletechlab

Author:appletechlab

主宰は松田純一。1989年Macのソフトウェア開発専門のコーシングラフィックシステムズ社設立、代表取締役就任 (2003年解散)。1999年Apple WWDC(世界開発者会議)で日本のデベロッパー初のApple Design Award/Best Apple Technology Adoption (最優秀技術賞) 受賞。

2000年2月第10回MACWORLD EXPO/TOKYOにおいて長年業界に対する貢献度を高く評価され、主催者からMac Fan MVP’99特別賞を授与される。著書多数。音楽、美術、写真、読書を好み、Macと愛犬三昧の毎日。マネキン造形研究中。日本シャーロック・ホームズクラブ会員。日本リュート協会会員。ゆうMUG会員