Altair8800 再び!〜 フロントパネル覚書
昨年11月、念願のAltair8800 (Clone)を手に入れ、プログラミング例もご紹介したがマシン語に関しては相変わらず亀の歩みの如く勉強中である(笑)。OS X El Capitanがリリースされた時代に実に時代錯誤なことをやっているが、今回は取り急ぎフロントパネルの構成を再確認し私自身の覚書として整理を試みたい。
以前ご紹介したようにAltair8800を実際にオペレーションしてポピュラーエレクトロニクス誌に載っていたサンプルプログラムを入力し、走らせてみた。しかし本来なら今回のアーティクルが最初で実演は後というのがノーマルな手順のはずだが、せっかちな私は魅力的な実演を先にやってしまった...(笑)。
自分でいうのも変だが、大切なのは記述どおりオペレーションできたことではなく、その意味と本質を理解することだ。しかしこちらは一筋縄ではいかず、私自身まだまだAltair8800の全容を承知しているわけでもないし残念ながら今のところ実践的な8080のマシン語プログラミングを熟知しているわけでもないので、ここではAltair8800のフロントパネルを確認し、どのような構成になっているのか、各LEDやスイッチ類の役割はどのようなものなのか...といった概要を自身の覚書として記しながらご紹介したいと思う。ただし繰り返すが不明な点には当然のことながら触れない…(笑)。
さて、Altair8800のフロントパネルは濃いグレーに塗られたボード上に赤色LEDと金属製のトグルスイッチが配置されているだけだ。そしてフロントパネル最下部には MITS社のロゴと"ALTAIR 8800 COMPUTER" と金属板にプリントされたものが貼られている。これがAltair8800のフロントデザインの全てである。

※Altair8800 のフロントパネル【クリックで拡大】
まずはLEDの配列を確認しておきたい。
ご覧のようにLEDは上段に18個、下段に18個の合計36個あるが、均等に配置されているのではなくそれぞれの役割に分かれて配置されている。
上段は一番左の "INTE" および "PROT" 右に8つ列んでいるLEDはその下に "STATUS" とプリントされているように8080のD7からD0に出力されるデータのステータス情報を意味する。
その右に一列にD7, D6, D5, D4, D3, D2, D1, D0とプリントされた位置に列んでいる8つのLEDはご想像の通りデータバスの状態を表示するものだ。
ちなみにD6とD5、D3とD2の間には区切りがあるが、これは3 bit単位でデータ表示を区切っているわけで、Altair8800は8進数表示が採用されていることによる。
それは当時DEC社のミニコンなどがその8進数を採用していたこともありそれを踏襲したものだろう。8進数ではひとつの数が3ビットになるため、Altair8800のLEDや後述するトグルスイッチ類は基本的に3個づつ区切られているわけだ。

※Altair Systemマニュアルにおけるパネルの構成および組み立て解説
2段目のLEDは下にプリントされている白線による区切りを確認するとその性格が分かってくる。
左から"WAIT" "HLDA" はそれぞれCPUのWAITおよびHLDA信号を表しているが、A15からA0まで16個のLEDが3ビットずつ区切られ列んでいる。無論これらはアドレス表示を行うLEDだ。
さて続いてトグルスイッチを見てみよう。
上段のスイッチはデータ入力用のスイッチだ。右から見て0から15まで16個のスイッチがその上にあるアドレス/データ表示のLEDと対応して列んでいる。これらのスイッチは一般的なスイッチ同様上下に「カチン」と切り換えることが出来るが、上げれば "1" を、下げれば "0" を意味する。
この右から8個のトグルスイッチ(上段LEDのD0~D7に対応)を上下させ、データをメモリなどにセットすることになる。さらに全16個のスイッチは2段目のA0~A15のLEDに対応しアドレスを設定するために使う。ただし左から8つのスイッチは SENSE SW. として白線で分類されている。これらはI/Oアドレス空間に割り当てられている入力ポートのようだが、今のところ私には使い方は不明...。ともあれAltair8800のトグルスイッチは限られた数で複数の役割を兼務している。
最後に下段のトグルスイッチだが、一番左位置に離れて置かれているのは文字通りAltair8800の電源スイッチだ。ちなみにつまらないことかも知れないが、なぜ上で "OFF" そして下で "ON" なのか…が気になった。なぜなら前記したように上段のトグルスイッチは皆、上にすると "1" で、下にすると"0" を意味する。であるならパワースイッチも上が "ON" の方が整合性があると思ったからだ。ただし横にある "STOP/RUN" スイッチに合わせたとも考えられるが...。
しかし推定の域を出ないが使用途中に服や袖がひっかかり、間違って電源を落とすことがないようにとの配慮なのかも知れない。上でも下でも同じと思われるかも知れないが実際にオペレーションしてみるとこの方が少なからずトラブルが少ないように思うようになった...。
>
※拡大したLEDとトグルスイッチの一部。トグルスイッチも特別なものではなく極一般的なものが使われている
問題は後の8つのスイッチだが、コマンドスイッチとでも言ったらよいのか...命令を実行するスイッチ類である。
面白いのは上段のスイッチとは仕組みが違っていてこれらのスイッチはバネにより上下にしても指を離すと常に中央位置に留まるようになっていることだ。無論、上と下で命令が異なる。
例えば "RUN - STOP" は文字通りプログラムをRUNあるいはSTOPさせるスイッチだ。ただしRUNするとアドレス0からのスタートというわけではなくそのときにアドレス表示されている位置からとなる。
なお電源をONにしたとき、このRUN - STOP スイッチはSTOPになっているはずだ。だからこそ他のコマンドスイッチが有効となるに違いない。
"SINGLE STEP" スイッチは1命令ずつ、あるいは1マシンサイクルずつ、命令を実行させたり、1秒間に数命令ずつ実行させるためのスイッチであり、いわゆるデバッグ用と思われる。
"EXAMINE - EXAMINE NEXT" はメモリの内容を読み出すためのコマンドスイッチ、"DEPOSIT - DEPOSIT NEXT" は、メモリの内容を書き換えるためのスイッチである。また "RESET - CLR" はシステムのリセットを行うスイッチであり、RESETはCPUのリセットとなりアドレス表示も0にする。そしてCLRはバスのI/Oデバイスをリセットするためのスイッチだろう。
さらに"PROTECT - UNPROTECT" スイッチは、メモリの書き込み保護のためにあるスイッチだが、対応するメモリボードがなければ意味がないようなので今のところは無視(笑)。そして最後にふたつ "AUX" と記されたスイッチがあるがその記載のとおり外部機器を接続した場合に使うスイッチのようなのでこれまた今のところ考えないようにしたい(笑)。
しかしあらためてAltair8800を前にして思うことはこの時代におけるテクノロジーの進化の激しさである。Altair8800が出荷されたのは1976年だったが同年にはApple 1がリリースされ翌年の1977年にはApple IIが登場する。確かにAltair8800は大きな期待をもって新しい市場を作り上げたが潤沢に出荷がなされた時、時代は早くもホビー用コンピュータからパーソナルコンピュータの時代に移りつつあった。

※Altair8800とLisaを列んで設置
ちなみに当研究所の作業机の上に、故あっていまAltair8800とLisaが列んで設置してある。しかし個人でコンピュータを持つ夢を託されたAltair8800と、コンシューマー向けとして初めてGUI とマウスが搭載されたLisaとの間が7年しかないことに驚きを覚える。
Altair8800への興味は尽きない…。
以前ご紹介したようにAltair8800を実際にオペレーションしてポピュラーエレクトロニクス誌に載っていたサンプルプログラムを入力し、走らせてみた。しかし本来なら今回のアーティクルが最初で実演は後というのがノーマルな手順のはずだが、せっかちな私は魅力的な実演を先にやってしまった...(笑)。
自分でいうのも変だが、大切なのは記述どおりオペレーションできたことではなく、その意味と本質を理解することだ。しかしこちらは一筋縄ではいかず、私自身まだまだAltair8800の全容を承知しているわけでもないし残念ながら今のところ実践的な8080のマシン語プログラミングを熟知しているわけでもないので、ここではAltair8800のフロントパネルを確認し、どのような構成になっているのか、各LEDやスイッチ類の役割はどのようなものなのか...といった概要を自身の覚書として記しながらご紹介したいと思う。ただし繰り返すが不明な点には当然のことながら触れない…(笑)。
さて、Altair8800のフロントパネルは濃いグレーに塗られたボード上に赤色LEDと金属製のトグルスイッチが配置されているだけだ。そしてフロントパネル最下部には MITS社のロゴと"ALTAIR 8800 COMPUTER" と金属板にプリントされたものが貼られている。これがAltair8800のフロントデザインの全てである。

※Altair8800 のフロントパネル【クリックで拡大】
まずはLEDの配列を確認しておきたい。
ご覧のようにLEDは上段に18個、下段に18個の合計36個あるが、均等に配置されているのではなくそれぞれの役割に分かれて配置されている。
上段は一番左の "INTE" および "PROT" 右に8つ列んでいるLEDはその下に "STATUS" とプリントされているように8080のD7からD0に出力されるデータのステータス情報を意味する。
その右に一列にD7, D6, D5, D4, D3, D2, D1, D0とプリントされた位置に列んでいる8つのLEDはご想像の通りデータバスの状態を表示するものだ。
ちなみにD6とD5、D3とD2の間には区切りがあるが、これは3 bit単位でデータ表示を区切っているわけで、Altair8800は8進数表示が採用されていることによる。
それは当時DEC社のミニコンなどがその8進数を採用していたこともありそれを踏襲したものだろう。8進数ではひとつの数が3ビットになるため、Altair8800のLEDや後述するトグルスイッチ類は基本的に3個づつ区切られているわけだ。

※Altair Systemマニュアルにおけるパネルの構成および組み立て解説
2段目のLEDは下にプリントされている白線による区切りを確認するとその性格が分かってくる。
左から"WAIT" "HLDA" はそれぞれCPUのWAITおよびHLDA信号を表しているが、A15からA0まで16個のLEDが3ビットずつ区切られ列んでいる。無論これらはアドレス表示を行うLEDだ。
さて続いてトグルスイッチを見てみよう。
上段のスイッチはデータ入力用のスイッチだ。右から見て0から15まで16個のスイッチがその上にあるアドレス/データ表示のLEDと対応して列んでいる。これらのスイッチは一般的なスイッチ同様上下に「カチン」と切り換えることが出来るが、上げれば "1" を、下げれば "0" を意味する。
この右から8個のトグルスイッチ(上段LEDのD0~D7に対応)を上下させ、データをメモリなどにセットすることになる。さらに全16個のスイッチは2段目のA0~A15のLEDに対応しアドレスを設定するために使う。ただし左から8つのスイッチは SENSE SW. として白線で分類されている。これらはI/Oアドレス空間に割り当てられている入力ポートのようだが、今のところ私には使い方は不明...。ともあれAltair8800のトグルスイッチは限られた数で複数の役割を兼務している。
最後に下段のトグルスイッチだが、一番左位置に離れて置かれているのは文字通りAltair8800の電源スイッチだ。ちなみにつまらないことかも知れないが、なぜ上で "OFF" そして下で "ON" なのか…が気になった。なぜなら前記したように上段のトグルスイッチは皆、上にすると "1" で、下にすると"0" を意味する。であるならパワースイッチも上が "ON" の方が整合性があると思ったからだ。ただし横にある "STOP/RUN" スイッチに合わせたとも考えられるが...。
しかし推定の域を出ないが使用途中に服や袖がひっかかり、間違って電源を落とすことがないようにとの配慮なのかも知れない。上でも下でも同じと思われるかも知れないが実際にオペレーションしてみるとこの方が少なからずトラブルが少ないように思うようになった...。
>

※拡大したLEDとトグルスイッチの一部。トグルスイッチも特別なものではなく極一般的なものが使われている
問題は後の8つのスイッチだが、コマンドスイッチとでも言ったらよいのか...命令を実行するスイッチ類である。
面白いのは上段のスイッチとは仕組みが違っていてこれらのスイッチはバネにより上下にしても指を離すと常に中央位置に留まるようになっていることだ。無論、上と下で命令が異なる。
例えば "RUN - STOP" は文字通りプログラムをRUNあるいはSTOPさせるスイッチだ。ただしRUNするとアドレス0からのスタートというわけではなくそのときにアドレス表示されている位置からとなる。
なお電源をONにしたとき、このRUN - STOP スイッチはSTOPになっているはずだ。だからこそ他のコマンドスイッチが有効となるに違いない。
"SINGLE STEP" スイッチは1命令ずつ、あるいは1マシンサイクルずつ、命令を実行させたり、1秒間に数命令ずつ実行させるためのスイッチであり、いわゆるデバッグ用と思われる。
"EXAMINE - EXAMINE NEXT" はメモリの内容を読み出すためのコマンドスイッチ、"DEPOSIT - DEPOSIT NEXT" は、メモリの内容を書き換えるためのスイッチである。また "RESET - CLR" はシステムのリセットを行うスイッチであり、RESETはCPUのリセットとなりアドレス表示も0にする。そしてCLRはバスのI/Oデバイスをリセットするためのスイッチだろう。
さらに"PROTECT - UNPROTECT" スイッチは、メモリの書き込み保護のためにあるスイッチだが、対応するメモリボードがなければ意味がないようなので今のところは無視(笑)。そして最後にふたつ "AUX" と記されたスイッチがあるがその記載のとおり外部機器を接続した場合に使うスイッチのようなのでこれまた今のところ考えないようにしたい(笑)。
しかしあらためてAltair8800を前にして思うことはこの時代におけるテクノロジーの進化の激しさである。Altair8800が出荷されたのは1976年だったが同年にはApple 1がリリースされ翌年の1977年にはApple IIが登場する。確かにAltair8800は大きな期待をもって新しい市場を作り上げたが潤沢に出荷がなされた時、時代は早くもホビー用コンピュータからパーソナルコンピュータの時代に移りつつあった。

※Altair8800とLisaを列んで設置
ちなみに当研究所の作業机の上に、故あっていまAltair8800とLisaが列んで設置してある。しかし個人でコンピュータを持つ夢を託されたAltair8800と、コンシューマー向けとして初めてGUI とマウスが搭載されたLisaとの間が7年しかないことに驚きを覚える。
Altair8800への興味は尽きない…。
- 関連記事
-
- AIBO Expo'99 の思い出 (2015/10/30)
- IIJ4U が IIJmioサービスへ統合に見る〜私的インターネット雑感 (2015/10/23)
- iPhoneは電話機として最良のデザインなのか?iPhoneの未来は?! (2015/10/21)
- ネコロ(NeCoRo)の秘密を訪ねて〜オムロン本社訪問記 (2015/10/20)
- 2003年発刊「マッキントッシュその赤裸々な真実!」に見るMacユーザーの葛藤物語 (2015/10/16)
- Altair8800 再び!〜 フロントパネル覚書 (2015/10/09)
- 西垣通編者訳「思想としてのパソコン」に思う 〜 パソコンへの夢はかなったのか? (2015/09/22)
- 意外と知られていない? カラーパネルの活用 (2015/09/04)
- iPhone 6 Plusの iSightカメラ交換プログラム顛末記 (2015/08/26)
- 窓用エアコン CORONA CW-A1615-WS 取付顛末記 (2015/08/24)
- MOメディアを最終整理 (2015/08/19)