PC-286BOOKにSCSI
2024.03.27
これは相当古い。90年代前半の話。
その頃、SPC-SCSIというのが有って、MB89352を(本来SCSIが内蔵されていない機種に)組み込んで動かすのが流行っていました。
なんと、ワープロ専用機に組み込んだ人もいました。(当時トラ技の記事あり)
このためのSCSIドライバがフリーソフトで公開されていたので、本当に有り難かった。
ほかにもSCSI接続の試みは有って、EasyHardというのだが、ケーブル1本だけでSCSIのHDDをつなぐ。もはや専用ICすら不要。
ダイナブックのパラレルポートを利用したもので、電気的にはSCSIの規格を満たさないところもあるが一応動くというもの。
残念ながらPC98系では片方向しかデータが行かないので原理的にできませんでした。AT互換機はデータが双方向だったのでこんな事もできたんですね。
当時の私に依頼があったのは、PC-286BOOKというEPSONのPC98互換機にSCSIを組み込めないか、という話。パソコン通信仲間の学校の先生から。
オプションのモデムを組み込む部分があり、そこが引き出しのようになっているので、ここに何とか(基板とコネクタが)おさまらないか、と。
当時はサンハヤトの感光基板、その片面パターンでMB89352と終端抵抗や周辺ICを載せた基板を手作りしたものでした。
実際に作ってテストした時の写真が昔のネガの中に残っていました。


(お気づきかもしれないが、ネガを裏返しにしてしまった!)
確か、配布されていたドライバでは(PC286BOOK上では)I/Oアドレスが競合するので、自分でSYMDEBを使い、空いているI/Oアドレスにパッチを当てて書き換えたのでした。
これを含めて、2~3点ほど試行錯誤があったような記憶です。
思い出してみると、ソースをアセンブルしようにも86用のアセンブラがなかったか、有ったと思うけれど。手っ取り早いのはパッチだなと思ったんだろう。SYS(ドライバ)をデバッガに読み込み、逆アセンブルしながらI/Oアクセスの命令を探して、書き換えて、保存した、というのが手順。
今さらこんな事を書いても仕方ないけど、SCSIのHDDから起動はできません。(起動の為のROMはない)
まずフロッピーから起動して、SPC-SCSI用のドライバを組み込んでから初めてSCSIが使えるようになります。
それでも当時は不便とは思いませんでした。HDDやMOが使えるようになっただけで、まるで今までとは天と地のような差を感じました。
確か依頼主は小学校の先生だったかな。これを見たその先生の知り合いの先生も、自分も欲しいと言い出してもう1台作っておさめたような記憶です。
確か最初の1台だけは手配線で作ったはず。何度も手配線で作るのは大変だから、それで感光基板で何枚も作れるようにしたわけだ。
その頃、SPC-SCSIというのが有って、MB89352を(本来SCSIが内蔵されていない機種に)組み込んで動かすのが流行っていました。
なんと、ワープロ専用機に組み込んだ人もいました。(当時トラ技の記事あり)
このためのSCSIドライバがフリーソフトで公開されていたので、本当に有り難かった。
ほかにもSCSI接続の試みは有って、EasyHardというのだが、ケーブル1本だけでSCSIのHDDをつなぐ。もはや専用ICすら不要。
ダイナブックのパラレルポートを利用したもので、電気的にはSCSIの規格を満たさないところもあるが一応動くというもの。
残念ながらPC98系では片方向しかデータが行かないので原理的にできませんでした。AT互換機はデータが双方向だったのでこんな事もできたんですね。
当時の私に依頼があったのは、PC-286BOOKというEPSONのPC98互換機にSCSIを組み込めないか、という話。パソコン通信仲間の学校の先生から。
オプションのモデムを組み込む部分があり、そこが引き出しのようになっているので、ここに何とか(基板とコネクタが)おさまらないか、と。
当時はサンハヤトの感光基板、その片面パターンでMB89352と終端抵抗や周辺ICを載せた基板を手作りしたものでした。
実際に作ってテストした時の写真が昔のネガの中に残っていました。


(お気づきかもしれないが、ネガを裏返しにしてしまった!)
確か、配布されていたドライバでは(PC286BOOK上では)I/Oアドレスが競合するので、自分でSYMDEBを使い、空いているI/Oアドレスにパッチを当てて書き換えたのでした。
これを含めて、2~3点ほど試行錯誤があったような記憶です。
思い出してみると、ソースをアセンブルしようにも86用のアセンブラがなかったか、有ったと思うけれど。手っ取り早いのはパッチだなと思ったんだろう。SYS(ドライバ)をデバッガに読み込み、逆アセンブルしながらI/Oアクセスの命令を探して、書き換えて、保存した、というのが手順。
今さらこんな事を書いても仕方ないけど、SCSIのHDDから起動はできません。(起動の為のROMはない)
まずフロッピーから起動して、SPC-SCSI用のドライバを組み込んでから初めてSCSIが使えるようになります。
それでも当時は不便とは思いませんでした。HDDやMOが使えるようになっただけで、まるで今までとは天と地のような差を感じました。
確か依頼主は小学校の先生だったかな。これを見たその先生の知り合いの先生も、自分も欲しいと言い出してもう1台作っておさめたような記憶です。
確か最初の1台だけは手配線で作ったはず。何度も手配線で作るのは大変だから、それで感光基板で何枚も作れるようにしたわけだ。
テーブルタップの交換と分解
2024.02.28
テスターの手入れ(大した内容じゃないけど重要)
2024.02.19
CP/M移植(4)
2024.02.16
MZ-2000へのCP/M移植で重要な役割を果たしたのは8251ボード(自作)だ。
外部との通信あってこそ、移植ができた。
本体を後ろから見た時に拡張BOXの左側、上から2段目にプリンタI/Fのスロットがある。
そのプリンタI/F基板から配線を引き出し、自作のボードをくっつけた。
WindowsのPCでBIOSをアセンブルし、そのHEXをRS-232C経由でMZへ送る。
MZ側ではBASICでHEXの受信プログラムを作った。BIOSが実際にロードされる番地へ、受信したデータを書き込んでいく。
当然BASICは遅いからとりこぼさないように、送り出し側のPCでは十分にウェイトを入れた。とにかく確実性を重視した。
遅いのは見ているから遅く感じるのであって、ほかの用事でもやっていればいつの間にか終わっているものである。
とにかくMZのRAM上におさまれば、しめたもの。これをBSAVEでフロッピーに保存する。CP/Mを構成する他のファイルも同じようにした。
RAMに必要な物を全部ロードした状態で、BIOSの先頭番地へジャンプすれば、これでCP/Mが起動するわけである。
但し、ジャンプする前にフロッピーをCP/M用に(忘れずに)入れ替えておく必要がある。
この時点でのBIOSは、1文字入力、1文字出力を8251にしてある。RS-232Cで操作するようになっている。
MZには画面もキーボードもあるが、これらを一切使わずに、つまりワンボードマイコンとあまり変わらない状態で使っていたわけだ。
WindowsのPCのTeraTerm画面にCP/Mの表示、なんとも奇妙な感じだったが、とにかく動き始めた。
DIRなど実行するとフロッピーにアクセスし、確かにCP/Mが動いた。
外部との通信あってこそ、移植ができた。
本体を後ろから見た時に拡張BOXの左側、上から2段目にプリンタI/Fのスロットがある。
そのプリンタI/F基板から配線を引き出し、自作のボードをくっつけた。
WindowsのPCでBIOSをアセンブルし、そのHEXをRS-232C経由でMZへ送る。
MZ側ではBASICでHEXの受信プログラムを作った。BIOSが実際にロードされる番地へ、受信したデータを書き込んでいく。
当然BASICは遅いからとりこぼさないように、送り出し側のPCでは十分にウェイトを入れた。とにかく確実性を重視した。
遅いのは見ているから遅く感じるのであって、ほかの用事でもやっていればいつの間にか終わっているものである。
とにかくMZのRAM上におさまれば、しめたもの。これをBSAVEでフロッピーに保存する。CP/Mを構成する他のファイルも同じようにした。
RAMに必要な物を全部ロードした状態で、BIOSの先頭番地へジャンプすれば、これでCP/Mが起動するわけである。
但し、ジャンプする前にフロッピーをCP/M用に(忘れずに)入れ替えておく必要がある。
この時点でのBIOSは、1文字入力、1文字出力を8251にしてある。RS-232Cで操作するようになっている。
MZには画面もキーボードもあるが、これらを一切使わずに、つまりワンボードマイコンとあまり変わらない状態で使っていたわけだ。
WindowsのPCのTeraTerm画面にCP/Mの表示、なんとも奇妙な感じだったが、とにかく動き始めた。
DIRなど実行するとフロッピーにアクセスし、確かにCP/Mが動いた。
CP/M移植(3)
2024.02.16
親戚からもらったMZ-2000にCP/Mを移植しようとしたわけだが、じつは使用していたフロッピー一式の中に添付してくれていたらしい。
それを自分は気づかずに、どこかの段階で捨ててしまったようだ。
もともとは大阪の町工場で使われていたMZ、当時PC98互換機と入れ替わりになって不要となり、よかったらあげるよというのでもらった物。
その、くださった方から「CP/Mのディスクもあったでしょう」と後で言われた。(えっ、そうだったのか)
添付されていたフロッピーは、タバコのヤニと手垢にまみれて汚れがひどく、傷の入った物も多く、読み込ませてみるとエラーが出たりしてダメな物があった。
そして当時の自分の無知、シャープBASICとHu-BASICでお互いのディスクを読ませる事はできないという事を最初は知らず、
たとえばシャープBASICを動かしている状態で、Hu-BASICのディスクを読ませてみて、あれっ、エラーか、じゃあダメだなと(誤った)判断をしてしまった。
結局これらは全部ダメみたいだな、捨てるしかないな、というのでゴミと一緒に燃やしてしまったのである。(当時は自宅でゴミを燃やすのは普通で、いまのように禁止されていなかった)
そんなわけで、間違ってCP/Mのフロッピーを捨ててしまったために、はるかに遠い回り道への旅が始まったのである。
それを自分は気づかずに、どこかの段階で捨ててしまったようだ。
もともとは大阪の町工場で使われていたMZ、当時PC98互換機と入れ替わりになって不要となり、よかったらあげるよというのでもらった物。
その、くださった方から「CP/Mのディスクもあったでしょう」と後で言われた。(えっ、そうだったのか)
添付されていたフロッピーは、タバコのヤニと手垢にまみれて汚れがひどく、傷の入った物も多く、読み込ませてみるとエラーが出たりしてダメな物があった。
そして当時の自分の無知、シャープBASICとHu-BASICでお互いのディスクを読ませる事はできないという事を最初は知らず、
たとえばシャープBASICを動かしている状態で、Hu-BASICのディスクを読ませてみて、あれっ、エラーか、じゃあダメだなと(誤った)判断をしてしまった。
結局これらは全部ダメみたいだな、捨てるしかないな、というのでゴミと一緒に燃やしてしまったのである。(当時は自宅でゴミを燃やすのは普通で、いまのように禁止されていなかった)
そんなわけで、間違ってCP/Mのフロッピーを捨ててしまったために、はるかに遠い回り道への旅が始まったのである。
2024.03.27 13:45
|







