SSブログ

Lawrence Livermore Lab's 8080 BASIC と CP/M Issue、SDK-80 の思い出 [PC]

 シャックの模様替えに合わせて断捨離中。こんなのが出てきた。

Dr. Dobb’s Journal of Computer Calisthenics & Orthodontia Running Light without Overbyte
の Lawrence Livermore Lab's 8080 BASIC と CP/M 特集。

LLL BASIC は、初の浮動小数点演算の BASIC。CP/M 特集は、Gary A. Kildall が巻頭記事を書いている。

8080 の浮動小数点演算は、今はなき bit 誌のマイクロコンピュータ増刊号の解説を見ながら研究室の SDK-80 に移植して、使っていた。この移植を通じて、2の補数、正規化などを覚えた。
bit の増刊号では、エディタ、アセンブラの解説もあったので、それも SDK-80 に移植した。
SDK-80 の端末は、20mA カレントループで繋がった Teletype 社の ASR-33。キーボードと印字機構、紙テープのリーダーとパンチャーが付いていた。
エディタは、ラインエディタ。入力している行を境にして、上の部分をバッファの前に、下の部分をバッファの後ろに配置し、間に行を追加していく。途中の行間に行を追加する場合は、それに合わせてバッファの内容を移動させる。これでエディタの動きを覚えた。
アセンブラは2パス・アセンブラ。最初でラベルの位置を計算し、ラベルとアドレスのテーブルを作る。2パス目で、ジャンプやサブルーチンコールのラベルを実際のアドレスに置き換えて、メモリ中に展開していく。
プログラムする時は、エディタのマシン語紙テープを SDK-80 に読ませて、エディタを起動する。
ラインエディタでアセンブラのソースを記述し、紙テープに穿孔する。
アセンブラのマシン語紙テープを SDK-80 に読ませ、アセンブラを起動する。
エディタで作ったソースの紙テープをアセンブラに2回読ませて、やっとアセンブラ・プログラムのマシン語が SDK-80 のメモリに入る。
これを通信速度 110bps のテレタイプでやると、ものすごい騒音と時間がかかる。
今でも、ジャ、ジャ、ジャ、という紙テープリーダーの音を思い出す。
そのうち、エディタとアセンブラは ROM 化した。

BASIC は、研究室の他の仲間が整数 BASIC を SDK-80 に移植していた。
LLL BASIC は、移植せずに終わった。CP/M は、会社に入ってから毎日使った。その頃には、端末はビデオ端末になっていた。ADM-3 とか、VT-100 とか。これらの機械は、全て ASCII キーボード。A の横にはコントロール・キーがあり、その配置に指が馴染んでいた。
今は昔の話。

〔Lawrence Livermore Lab's 8080 BASIC の載った号〕
LLL_8080_BASIC.jpg
〔CP/M 特集号〕
All-CP-M_issue.jpg

〔Intel SDK-80〕
基板
MYSSTE_80.jpg
キット
MYSYST_80.jpg
8255 と 8251 が付いていたが、8255 と ROM / RAM は別基板で追加していた。
〔Teletype 社 ASR-33〕
ASR-33_2.jpg
左側にあるのが、紙テープのリーダーとパンチャー。
〔ビデオ端末〕
ADM-3
Adm3aimage.jpg
DEC VT-100
Terminal-dec-vt100.jpg
これは会社に入ったあと、VAX-11 の端末としても使った。

※ SDK-80、ASR-33、ADM-3、VT-100 の写真は Wikipedia から引用させてたいだきました。
nice!(1)  コメント(0) 
共通テーマ:趣味・カルチャー

nice! 1

コメント 0

コメントを書く

お名前:[必須]
URL:
コメント:
画像認証:
下の画像に表示されている文字を入力してください。