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 の載った号〕
〔CP/M 特集号〕
〔Intel SDK-80〕
基板
キット
8255 と 8251 が付いていたが、8255 と ROM / RAM は別基板で追加していた。
〔Teletype 社 ASR-33〕
左側にあるのが、紙テープのリーダーとパンチャー。
〔ビデオ端末〕
ADM-3
DEC VT-100
これは会社に入ったあと、VAX-11 の端末としても使った。
※ SDK-80、ASR-33、ADM-3、VT-100 の写真は Wikipedia から引用させてたいだきました。
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 の載った号〕
〔CP/M 特集号〕
〔Intel SDK-80〕
基板
キット
8255 と 8251 が付いていたが、8255 と ROM / RAM は別基板で追加していた。
〔Teletype 社 ASR-33〕
左側にあるのが、紙テープのリーダーとパンチャー。
〔ビデオ端末〕
ADM-3
DEC VT-100
これは会社に入ったあと、VAX-11 の端末としても使った。
※ SDK-80、ASR-33、ADM-3、VT-100 の写真は Wikipedia から引用させてたいだきました。
コメント 0