エントリー

2023年06月27日の記事は以下のとおりです。

CE-150互換機の製作は失敗に終わる


 PC-1500はなかなか個性的なマシンで,ビジネスで使うことを想定した本格的なマシンですから,当然カナの表示や入力,印刷も可能になっています。

 しかし,標準ではダメというのがまず謎。そして別売りのオプションもROMとカセットと2つ用意されていることがなかなか興味深いです。

 後者はカナテープと呼ばれていて,約2kBのマシン語を読み込むと,以後はカナが使えるようになるというものです。なんでカナにそんなにメモリがいるのかとか,そもそもROMに焼いておくべきだろうとか,今なら当然思うのですが,PC-1500ならではの事情があったのだと思います。

 思うに,カナのビットマップデータだけではなく,プロッタプリンタのベクトルデータも持つ必要があり,それでデータ量が大きくなったのではないかと。そしてそのデータをROMに置くのは容量が足りず,ROMカートリッジかテープによる供給かを選ばざるを得なかったんじゃないかと思います。

 さて,私のPC-1500はメモリがフル実装されています。そうなるとカナが使えるようになるといいなと思う訳で,しかしカナテープは入手困難ですし,そもそもカセットインターフェースを持っていません。ROMカートリッジはRAM増設の関係で使えなくなっています。

 カナテープは某所にWAVファイルが落ちていたのでなんとかなったのですが,カセットインターフェースが最大の問題です。PC-1200シリーズのように簡単に自作出来ればいいんですが,PC-1500はそれが出来ないのです。

 PC-1500は,60ピンの拡張スロットがCPUのバスそのものです。ここにオプションを取り付ける時に,同時にROMもぶら下げて,サポート用のソフトを一緒に供給する仕組みを持っています。

 カセットインターフェースはプリンタのCE-150と同時に提供されるのですが,CE-150に内蔵されたROMがないと,CLOADやCSAVEといったカセット関係のコマンドが使えないのです。(ハードウェアは本体側のPIOが担っています)

 ということで,壊れやすくて利用価値もそんなにないプリンタを避けてきた私も,ここへ来てもう一度CE-150を手に入れる必要が生じたのでした。

 もう一度と書いたのは,かつてCE-150を手に入れたことがあったからです。この時はCE-150に入っていたPIOをあてにして入手したため,電池の液漏れで復活出来ないほどに壊れたCE-150はさっさと捨ててしまいましたが,まさかこんな形で必要になると思いませんでした。(ちなみに当時のCE-150には壊れたPC-1500もついてきたのですが,綺麗だったLCDが交換されたあと,修理して動くようになっていましたが,先日みると壊れていました。キーが入力出来なくなっていました・・・)

 今回はプリンタがダメでもカセットインターフェースを目的にしているので,なんとしても修理したいと思って,とにかくジャンクを手に入れて見たのですが,これが想像を超える状態のひどさで,もうとにかく手の下しようがないという状態でした。

 Ni-Cd電池の液漏れが強烈で,基板も無数にパターンが切れていますし,ICの足も真っ青に錆びています。一番厳しいのは基板と本体を繋ぐフレキで,これが腐食していたり,基板から剥がれたりしていて手の施しようもありません。

 ちょっとだけ修理を試みましたが,とにかく破損箇所が多くて追いつかず,回路図を見ながら基板の修復を行う手間を考えたら,もういっそのこと作り直した方が早いいうことになっていて,基板からROMとPIOを移植してカセットインターフェースをどうやって作ろうかと思案している状態です。

 ここのところレトロゲームやレトロPCの値段が上がっていて,気軽に楽しめるような感じではなくなってきました。CE-150はもともと生存率が低いですし,不人気だった時代が嘘のように値段も上がっていますので,悩ましいところです。

 てなわけで,CE-150からROMとPIO,そして60品ピンコネクタを摘出し,カセットインターフェースの機能だけを持つ新しい基板を起こし,組み立ててみたのです。

 実際に回路図を書いて基板を作って見ると分かるのですが,後悔されているCE-150の回路図というのが結構間違いが多く,信号名が違っていたり,誤字があったりと,これもまた一筋縄ではいきません。

 加えて特殊なLSIにあわせたマクロ(フットプリント)も自分で作る必要があったりして大変ではありましたが,万能基板を使って手配栓をするよりはずっと楽だと思います。

 今回はJLCPCBさんに発注しました。評判通り爆速で爆安。万能基板よりも安いくらいです。

 ワクワクして組み立てて見ますが,全然動きません。それどころか暴走します。PIOが死んでいるかも知れないと生きているPIOに交換すると暴走することはなくなりましたが,やはりカセット関係の命令が有効になりません。

 ROMのアドレスを読み出してみても正しい値が読み出せず,これはもうROMが死んでいるという結論になってしまいました。(もちん回路のミスで読めていない可能性もあるのですが,今ある資料と実際の波形から,最善を尽くした回路です)

 ROMのイメージも実は入手出来たので,これをEPROMに焼いて試すことも考えたのですが,もうそこまでする気力もなく,あきらめました。もともとカナテープを読み込んで,かなが扱えるようになることが目的でしたからね・・・

 そこでアプローチを変えます。

 某所にて,PC-1500にシリアルポートを介してPCと通信を行う方法が紹介されていました。PC-1500側に短いローダとセーバをあらかじめ手で打ち込んでおく必要があるのですが,逸れさえ済んでしまえば高速でPCとの送受信が可能です。

 問題は,このローダとセーバのアドレスが,カナテープとぶつかってしまうこと。ならよければいいじゃないかと考えたのですが,カナテープのバイナリが実はリロケータブルであることを知るのはずっと後で,この時は別のアドレスにロードしてから転送する方法を考えていました。

 入手が難しい60ピンコネクタは手元にありますし,今や失敗作となった基板も流用出来そうです。この基板をちょっと改造して,USB-シリアル変換基板からの配線と取り付けて,PC-1500とPCの間の通信が出来るようにしました。

 結果は上々で,カセットなんかもう使えないと思うほど快適です。

 ただ,問題はこのローダ/セーバがどういう動きをしているのかわっぱりわからないことです。そこでハンド逆アセンブルし,初めてのLH5801のニーモニックを読んでみました。

 やってることは割に単純で,BASICのテキストエリアのRAMを,そのままバイナリとして転送しているだけのようです。ならば,スタートアドレスを書き換えてやれば,任意のアドレスにバイナリをロード出来そうです。

 ということで,試行錯誤の末,カナテープのロードの成功しました。

 詳しい手順は次回。

ページ移動

  • 前のページ
  • 次のページ
  • ページ
  • 1

ユーティリティ

2023年06月

- - - - 1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 -

検索

エントリー検索フォーム
キーワード

ユーザー

新着画像

過去ログ

Feed