エントリー

2022年03月の記事は以下のとおりです。

初代PC-6001にPC-6031を繋ぐ

  • 2022/03/30 11:29

 PC-6001用のフロッピーディスクドライブが動き出したことで,私の気持ちは一気にPC-6001に傾きました。ここは意を決して初代PC-6001をレストアしようではありませんか。

 この初代PC-6001は,PC-6001mk2が出た直後に投げ売りされていた時に買ってもらったものです。発売から2年が経過し,その後初代でも動くソフトが激減して世代交代を実感するのですが,緑バックの見やすい画面,大文字のファンクションキー,そしてかわいらしい筐体と意外に使いやすいキーボードと,私にとっては魅力一杯のマシンでした。

 なんといっても,私が初めて使ったコンピュータですし,プログラムを組むことやコンピュータのシステム構成を学ぶ機会をくれた,記念すべきパソコンなのです。

 今にして気が付くのは,2年ほどでPC-6001を卒業してしまったことで,当時の私には難しすぎて理解出来ずにいたことがそのままになっていたことをがあるという事実です。今ならとても簡単に理解出来ることが,当時の私にはさっぱりわかりませんでした。

 だから,今,新しいマシンに触れているのと同じ新鮮さがあります。ほら,よくあるじゃないですが,今の知識と能力のまま小学生に戻れたらっていうやつ,まさにあれなんです。

 今の力なら出来る事,でも当時は考えも及ばなかったことに,ハードウェアの自作があります。当時は情報源も少なく,部品の入手方法も限られており,しかも高価でしたから小学生には到底無理な工作も,今なら十分可能です。

 そして,今の私が考えたのが,16kバイトの拡張RAMと拡張BASICのROM,そしてFDインターフェースを1枚にのせた拡張ボードです。

 ご存じの通り,PC-6001でPC-6031を使おうと思ったら,拡張ユニットPC-6011と拡張BASICカートリッジが必要です。通常ディスクBASICと呼ばれるものがROMで供給されるのですからフリーエリアは大きく減りませんし,起動も迅速なので歓迎すべきところですが,貴重な拡張スロットが消えてしまうのは痛いところです。

 しかも実用性から必須である拡張RAMまで考えると,当時一体どれだけの人がPC-6031を使っていたのか首をかしげたくなりますよね。

 私の考えていたカードは,3つの機能を持つもので,これ1つでPC-6001mk2のモード1からモード4をカバーするものです。RAMは256kビットのSRAMで簡単配線,ROMも27256を使って2つの16kバイトの空間をスイッチで切り替える事が可能,そして8255を搭載しFDインターフェースも装備ということで,まさにPC-6001をフルスペックで使うカードなのです。

 個人的には,純正で用意されていなかったものを勝手に付け足すのはPC-6001に限っては違うなと思っていて,ROMのエリアに書き込み可能なフラッシュを置いたり,RAMをバンク切り替えで増やしたりということには,興味はありません。

 そんなわけで,構成を考えます。

 まずRAMは256kビットのSRAMを半分だけ使います。残りの半分は無駄になりますが,A14をLowに固定して殺してしまいます。アドレスは8000hからBFFFhまでの16kバイトなので,簡単なデコード回路でRAMをイネーブルすればよいと考えました。ただ,これは結局失敗に終わります。

 さらに,RAMのCSをスイッチで切り離しでやればRAMカードリッジを抜き差しする手間も省けて楽ちんという事になり,この段階ですでに純正を越えるものになりそうな予感がします。

 ROMは4000hから7FFFhまでの16kバイトですが,PC-6001は4000hから5FFFhと,6000hから7FFFhまでの8kバイトごとにエリアが分かれています。どちらにしても,この16kバイトの空間に27256を割り当て,A14にスイッチを取り付けて16kバイトx2の構成としてROMの交換を再現します。

 さらにCSをスイッチで切り離せるようにしておき,ROMカートリッジを完全に抜いた状態も再現出来るようにします。

 FDインターフェースは8255の3つの8ビットポートがそのまま外のコネクタに出ているだけなので簡単です。アドレスはD0hからD3hまでで,しかも下位4ビットはデコードされていないので,D5hからD7hまでイメージがでても構いません。あと,これはPC-6011相当の機能ですので,CSを切り離す必要はないでしょう。

 回路を考えますが,アドレスデコーダやリセットの反転でどうしてもゲートが中途半端な数になり,いくつか余ってしまいます。特にROMについては4000hから5FFFhのエリアと6000hから7FFFhまでのエリアがそれぞれデコードされてCSが出ているので,これらをORしてROMに突っ込めばよいのですが,それにはANDゲートが1つ必要です。

 他はNANDゲートとORゲートで間に合うので,わざわざANDゲートを使うのは悔しいですから,ここはショットキーダイオードでAND回路を作る事にしました。

 そうやって作ったカードですが,残念な事にRAMが動きません。暴走します。ROMは動いているようですが,FDインターフェースも動いてくれません。なかなか大変そうなかんじです。

 RAMは,アドレスバスがCPUからだけでVDGのアクセスでは動かないことを知らず,VDGのアクセスが出来ないRAMになってしまい,動作しなかったようです。多くの先人が開拓した外部DRAM用の信号を転用する回路に組み直して解決しました。勝手なことをすんな,という話です。

 8255のアドレスデコードもゲートを減らすために一部ダイオードORを使ったのですが,アクセスが全くできません。実はD0とD1が入れ替わっていたという恥ずかしいミスが原因だったのですが,動き出してもRAMのアクセスが時々不安定になっていました。

 波形を見ると,ダイオードORの出力の波形がヨレヨレ,データバスの衝突も起きている感じです。PC-6001は結構タイミングがシビアな設計を行っているようで,ルーズな設計ではトラブルが出がちです。やはりダイオードORは厳しいかと,アドレスデコーダを再設計しました。

 ROMのデコーダも,ワンゲートのANDの在庫が見つかったのでこれに切り替え,結局すべてどっかで見たような回路に落ち着いてしまいました。そのROMですが,半分は拡張BASICを入れるとして,もう半分はI/Oに掲載されていたEXAS BASICコンパイラを打ち込んであるので,これを焼くことにします。

 N60BASICはとにかく遅く,せっかくのグラフィック機能やサウンド機能が有効に利用出来ません。自ずとマシン語に頼ることを考えますが,当時の私にはちんぷんかんぷんでした。後にわかるのは,Z80のアセンブリ言語は全然難しいものではなく,PC-6001の内部情報に関する資料を全く持っていないことが原因だったということでした。

 作ったゲームが遅くて話にならないとうなだれていたとき,EXAS BASICコンパイラで作られたゲームが製品として世に出ていることを知ると,これが自分の限界を超えるツールであると意識をするようになりますが,そうはいっても当時の私に1万円を越える買い物は簡単ではなく,夢で終わってしまったのでした。

 それがこうして,実機でコンパイルをし,BASICで書いたプログラムが高速で動作するのを味わうと,本当に感慨深いものがあります。

 そうそう,FDインターフェースのコネクタについてです。今どきアンフェノールの36ピンコネクタなんて簡単には手に入らないでしょうし,手に入っても正規品の在庫でしょうから高価なはずです。

 ひょっとするとと思って,昨年注文したデジットのお楽しみ箱を探してみると,アンフェノールのメスコネクタの圧着タイプが入っていました。他にも16ピンと10ピンのコネクタも見つかり,手持ちのフラットケーブルを使って変換ケーブルを作ることにしました。

 基板に直接アンフェノールコネクタを置ければいいんですが,ピッチが2.54mmではないのでそのままではマウント出来ず,ユニバーサル基板でスマートに作るには変換ケーブルの世話になるのが一番早いです。

 PC-6001のFDインターフェースは本来36ピンで,8ビットポートが3つで24ピン,これにリセットを加えて25ピン,残りの11本はGNDです。全部繋いでおく必要もなかろうということで16ピンと10ピンのコネクタを使ってギリギリ本数で配線を行います。

20220330112957.JPG

 完成したのがこの写真です。基板はあるお店のオリジナル品を買いましたが,実は製造不良があり,このクオリティなら返品だなあと思ったのですが,使えないわけではないですし,気の毒なのでこのまま使うことにしました。

 ということで,なんとか動き出したのですが,実際に動かしてみると,あの初代でフロッピーが使える事の感激は,それがかつての憧れだったことを思い出させてくれます。カセットはカセットで趣がありますが,やっぱりフロッピーの便利さは一度使うともう戻れません。
 
 しかし最大の問題は,5インチの2Dや1Dのディスクの入手が難しい事。40年も前の磁気メディアですから当たり前の事とは思いますが,AppleIIでも使うこの手のディスク,なんとかしないとちょっと厳しいなあと思います。

PC-6031の復活

 実家から持ち帰ったレトロPCのレストア第2弾は,AppleIIに続いてPC-6001です。

 そう,うちにはPC-6000シリーズの三種のレアアイテム(勝手に私が言ってます)と言われるPC-6031,PC-6061,PC-6053のうち,PC-6031とPC-6053があります。

 PC-6031は5インチフロッピーディスクドライブ,PC-6053はボイスシンセサイザです。

 PC-6031はPC-6000シリーズ用として登場した,当時としては安価なフロッピーディスクドライブでした。PC-8001やPC-8801と同様にインテリジェントタイプで,本体とはパラレルI/Fで接続するものでしたが,コントローラはPC-8031やPC-80s31のZ80とは違い,8049を使ってコストダウンを図っています。

 このため,ドライブ側のZ80にプログラムを流し込み,並列動作させるという技が使えません。ですが,コマンド体系そのものは互換性があるらしく,実はPC-6001にPC-80s31を繋いでも動作します。(確認済みです)

 PC-6031はPC-6001mk2なら直結なのですが,mk2の後に登場したPC-6601で3.5インチへの移行が方向付けられ,PC-6601SRでは1DDになって容量も倍増しています。

 とはいえ,PC-6001のソフトの供給はカセットテープが主流であり,わざわざフロッピーディスクを買っていた人はいないでしょう。

 PC-6053に至っては,実物を見た人も少ないのではないでしょうか。PC-6001mk2は「話す」機能が有名でしたが,これはPC-6001のオプションであるPC-6053をいわば内蔵したもので,しゃべるパソコンは実はPC-6001が最初だったわけです。

 結局の所,安いことを理由に手に入れたPC-6001に,本体と同じ値段のフロッピーディスクを追加できる人は少なく(しかも2万円の拡張ユニットと1万円の拡張BASICが必要),それが可能な人は最初からPC-8801を買うという話です。PC-6053に至っては,欲しいと思った人はほとんどいなかったでしょう。

 私の場合,どちらも使っていた当時に買ったものではなく,随分後から二束三文で手に入れたものなのですが,PC-6001(初代)を手に入れたのもPC-6001mk2が登場して随分経ってからでしたし,その後はX1turboに移行していたので,使った記憶はありません。

 ですが,あのPC-6001でフロッピーディスクが使えるというのは面白い体験ですし,初代PC-6001がmk2のようにしゃべるのも興味深いものです。

 特にPC-6031について便利でもあり,機能的に見劣りしていることをあえて楽しむレトロPCにおいて,楽しむのに便利になるフロッピーディスクはとてもありがたいもので,私としては大事にしたいものの1つです。

 さて,初代PC-6001ではさらにレアと呼ばれるPC-6011(拡張ユニット)とPCS-6001R(拡張BASIC)が必須になるPC-6031ですが,mk2ではどちらも内蔵されたので,直結可能です。私はmk2も持っていますので,PC-6031は実際に動かして使っていましたが,しばらく実家に置き去りにされており,昨年秋に実家から運び込んだPC-6031は,もう20年も通電していないものでした。

 そこで,AppleIIに続いて,PC-6000シリーズをレストアすることしました。まずはPC-6001mk2からです。

 PC-6031を使うにも,PC-6001mk2が動かなくては話になりません。通電の前にタンタルコンデンサをすべてセラミックに置き換えて,電源を入れてみます。最初は起動せず,なんどかリセットを行うと起動するようになりました。不安定ですね。さらに音が出ません。

 とりあえず電源ユニットを含めた電解コンデンサを交換,電圧のチェックを行って再調整を行いました。すると動作は安定します。電圧が4.5V付近まで下がっていたので,これが不安定の原因だったようです。

 音が出ないのは相変わらずで,これはボリュームが破損していました。おそらく本体から出っ張ったシャフトを引っかけてしまったのでしょう。

 部品取りのPC-6001から移植して修理完了。動作も問題はないのですが,あまりに汚いので清掃しようとしましたが,キートップを外そうとしてキーを折ってしまいました。こんなに脆かったっけ?

 さすがに落ち込みましたが,ダメモトで接着剤で修理しました。想像以上にがっちり固定できたようで,今のところ問題なく使えています。

 さて,PC-6031です。これもえらい汚いので分解して掃除から始めます。PC-6000シリーズに共通の問題として,ACコードが劣化し,内部の銅が錆びるというものがありますが,これは危険ですので交換が必要です。

 コントローラ基板のタンタルコンデンサを交換し,組み直します。電源を入れてみますが,一瞬LEDが点灯した後,沈黙。どうも電源ユニットが壊れているようです。

 いやー,スイッチング電源は修理の経験が浅いので,ちょっと焦りました。とりあえず目視で焦げたり変色した部品がないかを確認しますが,どれも問題なし。電解コンデンサの容量抜けも確認しますが,これも問題ではありません。

 あとは回路を順に追いかけてチェックしていくのですが,2次側の製流用のダイオードであるSB340が壊れてショートしているのを発見,手持ちの40V2Aのものにとりあえず交換すると復活しました。これは後日同じSB340に交換することになるのですが,これくらいで電源が復活して本当によかったです。

 心配していたコントローラ基板も動作していますし,もっと心配していたドライブそのものも無事でした。

 ということで,とりあえずPC-6001mk2とPC-6031は動き出しました。

 しばらくゲームを楽しんでいたのですが,懐かしい上に楽しいです。今のスマホのゲーム以下の表現力ですが,それでも十分遊べるのは,ゲームの本質的な部分が良く出てきてからでしょう。

 さて,PC-6001mk2が動いても,まだちょっと物足りません。私は初代PC-6001を,mk2が出た後にあえて選んだ人ですし,背景が緑色であることも,ファンクションキーが大文字で設定されていることも,テキストやセミグラフィック画面の色が反転表示になることも,全部含めてPC-6001が好きなのです。

 後継機であり,周囲の多くが手に入れたmk2に対して,わざわざ初代機を選んだくせに引け目を感じ続けていた事に対する自分なりの納得の仕方として,これらのちょっとした違いであったことは今もまだ鮮明であり,PC-6001mk2で5インチフロッピーディスクが動いても,感動はまだ半分というところなのです。

 まずは,我々兄弟が散々遊んだPC-6001初代の復活。そしてこれをPC-6031と繋いで,当時の憧れを具現化する作戦に出ましょう。

 うちのPC-6001は満身創痍で,20年ほど前に電源回路(初代はシリーズレギュレータなのです)の製流用ダイオードがショート,メイン基板のタンタルコンデンサもショート,サブCPUの8049が破損し交換(ちょうど手に入ったmk2のサブCPUに交換しました),PC-6006(RAMカートリッジ)のDRAMが1つ破損し交換と,なかなか苦労して修理した記憶があります。

 とりあえず電源を入れてみると動いたので深刻な故障はなさそうですが,困ったのは長年接触していたビニールケーブルの可塑剤によって筐体の一部が溶けてしまっていることです。こればかりはどうにもなりません・・・

 部品取りとして買った別のPC-6001から筐体を持ってくるしかないのですが,これも過去に一度全塗装している(しかしその後汚れて傷だらけになってしまった)ので,まずはこれを剥がすことから始めないといけません。

 コツコツやるしかないのですが,いつになることやら・・・

私のAppleII~パドルが動かない

 修理が終わったAppleIIでしばらく遊んでいたのですが,思った以上にパドルやジョイスティックがないと全く遊ぶことが出来ないソフトが多いことに気が付きました。

 ジョイスティックがあくまでオプション扱いだった国産の同時期のパソコンでは,ほとんどの場合キーボードで遊ぶことが可能だったので,AppleIIでも似たようなものだと思っていたのですが,冷静に考えて見るとAppleIIではパドルが標準添付で,同梱のデモソフトの1つにあったブロック崩しもパドルが繋がっていないとゲームが始まらないというものだったりします。

 AppleIIのパドルはスイッチでもなく電圧入力でもなく,抵抗入力です。内部にかの有名なタイマICである555が4つ入った558というICがいて,コイツの時定数を外部のボリュームで可変するのです。

 その結果558の発振周波数が変化しますが,この周波数をソフトで読み取って,パドルの回転角を知るわけです。

 標準添付されたパドルはまさにツマミであり,ジョイスティックのような二軸のもんではありませんでしたが,後々オプションで販売されるようになったジョイスティックは,再田尾で4つまで接続可能なパドルのうち2つをX軸とY軸に割り当てていました。

 ボリュームは150kΩで,目一杯回して0Ωになった場合でも,本体内に100Ωが入っていますので発振は止まりません。

 ということで,amazonでプレスレ用に作られたと思われるアナログスティックのコピー品を安価に買います。これは10kΩですので,そのまま接続してもまともには動きません。

 そこでいろいろ調べてみると,GNDとの間にコンデンサを追加する方法がありました。なるほど,よく考えつくなあ。

 内蔵のコンデンサは0.022uFで,外部のボリュームが150kΩですので,その積は3300。これを10kΩで割ってやると,0.33uFになります。この組み合わせなら同じ周波数が発振するというわけです。

 早速作ってみました。問題ないはず・・・なのに,全く動きません。

 ボタンは動くのですが,パドルは全く動作してくれないのです。配線ミスかもしれないと思い,直接100kΩの抵抗をゲームI/Oに差し込んだのですが,反応なし。

 オシロスコープで波形を見てみると,発振していません。ははーん,これはよくある,558の故障だな。

 しかし,558はすでに製造中止。「買えない」「見つからない」「aliexpressで買ったら偽物が届いた」「555を4つ使った互換基板を作った」と,世界中のAppleIIマニアが558の故障に怯えて毎日を過ごしているのを知っているだけに,私も焦りました。

 しかし探してみると,秋葉原のお店で売っていることが判明。通販もやっているので早速手配しました。本場アメリカでは枯渇したICが秋葉原の店頭にあるとは,すごいです。

 数日後届いた558を交換しましたが,やっぱりだめでした。うーん,ここが故障しているわけではなさそうです。しかし,558は555に比べても単純な回路で動作しますし,4つのモジュールすべてが動いていませんので,どうも納得いきません。

 回路図を改めて眺めてみると,4つのモジュールで共有している0.1uFのコンデンサが目に付きました。普通の積層セラミックなのであまり気にしなかったのですが,調べてみると正常に値が出てこず,非常に小さい値を示しています。

 交換すると,まさにビンゴ。ちゃんとパドルが動くようになりました。積層セラミックって劣化するんですね。これ,DCで容量を測定すればほとんど容量が出てこず,しかし1kHzで測定すると正常な値が出てくるのです。こういう故障もあるんだなあと,いい勉強になりました。

 さすがに40年を超えた部品ですしから,そりゃ壊れるでしょう。ということで,一気にマザーボード上の0.1uFを全部交換することにしました。手間がかかりましたが,これで一安心。

 起動すると,なにやらカーソルの点滅がやけに速いのです。こんなものかなあと思っていたのですが,どうも気ぜわしいのでYouTubeで他の方のAppleIIを見てみると,やはりもっとゆっくり点滅しています。

 そういえば,AppleIIのカーソル点滅は,555を使ってハードウェアでやってたよなあと思い出し,回路図を見てみました。すると,ここでも0.1uFのコンデンサに3.3MΩと12kΩの抵抗でタイミングを作っています。計算すると理論値は2.1Hz程度になるのですが,実測すると2.8Hzと随分高速です。

 この部分のコンデンサは精度と温度特性を考えてセラミックではなく,フィルムコンデンサにしたので,値がおかしいという事は考えにくいです。新品ですので破損もないでしょう。

 ならば抵抗か,と周波数を決定する抵抗の3.3MΩを調べてみると,なんと2.5MΩほどに下がっていました。計算すると2.8Hz程度になりますので,これが原因だったようです。

 手持ちの3.3MΩに交換すると,点滅がもとの落ち着きを取り戻してくれました。

 抵抗,それも1MΩを越えるような高抵抗は,結構簡単に劣化して値が変わります。今回は近くにあるコンデンサの交換の際に熱がかかって,値がずれたのでしょう。

 他の抵抗も予防的に交換して,これでようやく完成です。

 電源ユニットの一次側のコンデンサも,高圧のコンデンサを入手出来たのでこの機会に全部交換しました。いやー,大変でした。

 これで思いつく所はすべて手を入れました。チェックプログラムも通ります。怪しかったキーボード裏側のスライドスイッチ(RESETかCTRL+RESETかを選ぶ)も直しました。

 あとは散々遊ぶだけです。試しにと始めたチョップリフターで,あっという間に1時間。ロードランナーは本家ならではのサークルクリアに見とれているうちに30分経過してしまいました。

 私のAppleIIはそれほど程度は良くなかったのですが,それでも致命的な故障はなかったですし,それでもプロンプトは出てくれましたので,対応が楽でしたし,必ず直せるという見込みも立ちました。ラッキーだったと思います。

 AppleIIへの理解が深まり,興味も出てきました。当時,AppleIIを買えたのは大人だけで,いわば今の私の年齢の人が手に入れたものだったはずです。もし私が当時生きていたら,今のような関心を持つのだろうと思います。

 それは,子どもの頃に使っていたPC-6001への理解の深さとは別の物で,単に長い時間使ったとか,自分の基礎を作ったとか,そういうノスタルジーとは違う,大人ならではの理解力の高さによる,楽しさなんじゃないかと思います。

 そういえば私は,PC-6001のメモリマップやVRAMの構成を,知りませんからね。

 もうしばらくAppleIIで遊ぶことにします。

私のAppleII~電源修理編

 さて,昨日のことなのですが,修理したばかりのApple2が,壊れてしまいました。

 リビングのテーブルにApple2を設置し,のんびりとディスクのフォーマットを行っていたところ,なんだかお湯が沸いたような音が出たと思ったら,突然ボンと爆発音がしました。

 煙がふわーっと立ち上がってプラスチックの焦げた臭いが広がります。不思議と本体は動き続けているので,私はてっきりディスクドライブが壊れたんだと思っていました。

 あわてて電源を切りましたが,煙はおさまりません。嫁さんが血相を変えてすっ飛んできました。このあとしばらく説教され,私は打ちひしがれながらApple2を自室に運び込んだのでした。

 よく見ると,電源ユニットから煙が出ています。しかもカラカラと音がしています。なにかの部品が吹き飛んだのでしょう,1980年の日付印が押されたASTEC製の電源ユニットですので,42年前ですから壊れてもそりゃ仕方がないです。

 しかし,爆発というのは妙にテンションが上がります。命の危険があると動物はアドレナリンを増やして活発に動くようになるそうですが,まさにこれです。

 気を取り直して電源ユニットを取り外して開封しました。このASTEC製のAA11040Bという電源は,開封に2ヶ所あるリベットをドリルで潰してしまわないといけませんので,ドキドキしながら作業を続けます。

 フタを開けると,見事に1次側のMPコンデンサが破裂して吹き飛んでいます。ACラインに入っている0.1uFです。焦げ臭いので,袋に入れたまま撮影しました。

 20220303115447.JPG

 ヒューズも切れていませんし,他の部品に破損や焼損はなさそうです。発熱や放電による変色も見られませんので,とりあえず壊れたのはここだけのようです。

 しかし,これだけの破損がありながら,なぜヒューズが切れなかったのかなあと思って回路図を見ていると,このコンデンサの後ろにヒューズがあるんですね。これじゃコンデンサの破損による事故を防げないですよね。いいのかなあ。

 早速修理ですが,あいにく私は高圧系の部品の在庫はほとんど持っていません。なので耐圧250VのAラインに使えるようなコンデンサなんて持っていたかなあと探してみたのですが,なんと半年前に買ったデジットのお楽しみ箱に数個入っていました。安規マークも入ったものなので,今回の用途にもってこいです。

 さらに,せっかくですので電解コンデンサも可能な限り交換しますが,やっぱりスイッチング電源の高圧側に使えるような高耐圧品の在庫を持っていないので,低圧側のコンデンサを中心に交換を行います。

 ここで失敗したのが,電解コンデンサの極性です。基板のシルク印刷が間違っていると思われる部分があり,回路図を確かめる羽目になりました。google先生に聞いてみると,どうも世界中のユーザーが同じような問題で困っているようで,正しい極性を調べることが出来ました。いくつか反対になっていたようです。

 外したコンデンサの容量をチェックすると,ほとんどのコンデンサで問題がありません。1つだけ半分になっていた物がありましたが,無理に交換する必要もなかったのかも知れません。

 高圧側についてもチェックしましたが,こちらも今のところ問題はなし。

 ところでASTECと言えば,今でも電源メーカーとして知られていますが,当時は香港で製造されていました。香港がまだイギリス領であり,西側と見られていた時代の話です。

 さすがに香港ということで,部品も日本製が多いです。まだ日本が製造で潤っていた時代ですからね,なんか感慨深いものがあります。トランジスタは松下やNECのものが多く使われていますし,電解コンデンサもニチコンのものが入っていました。

 さて,部品の交換を済ませたのち,目視で確認を行ってからこわごわ通電します。電圧は問題なく出ているようで,これなら本体に戻すことが出来るでしょう。

 本体に戻して電源投入。何事もなかったようにApple2は起動しました。

 一難去ってまた一難。そりゃ40年以上前の機械ですので,まともに動く方がおかしいのですが,予防的な交換作業も行えましたし,これでもうしばらく安全に使えるでしょう。
 

 

私のAppleII

 昨年秋に実家が引き払われ,すぐに必要がないが捨てるに惜しいものは,捨てるか自宅に運び込むかの判断を迫られました。

 多くが捨てられる運命にありながら(そしてそれは時に失敗でったことを思い起こさせますが),しぶとく生き残ったものがAppleIIです。

 このAppleII,経緯は良く思い出せないのですが,大学時代に働いていたパソコンショップに,ジャンクとして持ち込まれた大量の廃棄物に混じっていたものを,安く分けてもらったんじゃなかったかと思います。

 AppleIIに非純正の5インチドライブ,たったこれだけです。あとはお店に残っていた数枚のディスクのバックアップで,他の周辺機器もマニュアルも一切ありません。

 一応,DOS3.3が起動するところは確認出来たのですが,ProDOSは起動しません。そこから先はなにもすることが出来ず,また使い方もよく分からないので,そのまま放置していました。

 せめてなにかゲームが動けばなあ,と思ったりしましたが,ないものはないですし,そもそもこのAppleIIの素性がわからないですから,ゲームが動くものなのかどうかさえも判然としません。

 しかし,少し温かくなってきたこともあって,目の前にあるAppleIIを本気で動かして見ようという事になりました。(同時にPC-6001も復活させるのですがそれはまた後日)

 まず,このAppleIIが何者なのかです。調べてみると,AppleII J-plusであることがわかりました。RAMは48kB実装,ROMは10kBASICが搭載されています。キーボードにはカタカナも印刷されており,底面には冬至の代理店である東レのシールが貼られていますし,マザーボードにも"Toray"のスタンプがあちこちに押されています。

 当時わからなかったのはここから先で,まずJ-pulsとは何者なのか,です。互換性が低いので嫌われているとか,いろいろ話は耳にしますが,本当の所はどうなのでしょう。

 まず,東レが輸入したものですので,電源は100Vにもきちんと適応しますし,検査も行われています。信頼性は高いでしょう。ただし,F800からのモニタROMには,ベースとなったplusの"AUTOSTART"とは異なるROMが刺さっており,これが互換性を下げているのだそうです。

 ただ,この個体はROMがEPROM(2716)に換装されていて,そのためにCS2を反転させるインバータ(7404)を挟んだ下駄が履かされていました。これ,もしかしたらplusのAUTOSTARTに感想してあるんじゃないですかね・・・

 30年ぶりに通電しますが起動せず。ソケットを少し押し込めば起動するようになりましたので,接触不良だったのでしょう。

 次,ディスクドライブです。ニューテックという会社の互換ドライブ「飛鳥」で,チノンのハーフハイトのドライブが使われています。

 純正のDiskIIが良かったのですが,これもないものは仕方がありません。とはいえ,問題は互換性だけの話であって,信頼性や大きさなどは飛鳥の方がよいと思います。

 インターフェースカードは何故か純正と互換品の2枚が手元にあります。純正品は16と書かれたシールがあるので16トラック対応品でしょう。たしかどちらのカードも動作したと思うのですが,今回は純正品を使うことにします。

 これも最初は動かなかったのですが,抜き差しを何度かやっているうちに動くようになりました。接触不良には困ったものです。

 さて,ここまで動作する事がわかったので,一度分解して清掃します。ケースは風呂場でゴシゴシ荒い,キーボードはキートップを外して洗剤で洗います。マザーボードもホコリを払い,元通り組み立てます。

 綺麗になったAppleIIですが,さらに話を前に進めましょう。

 AppleIIには膨大なソフトがあるのですが,その多くが合法/非合法な形で,ディスクイメージとしてネット上に転がっています。体験するだけならエミュレータですぐ楽しめるのが良いところなのでしょうが,実機で動かすという話になると急激にハードルがあがります。

 AppleIIのディスクは一般的なフォーマットとは異なり,PCで書き込んだり出来ません。仮に出来たとしても,今どきPCに5インチの1Dや2Dのドライブが繋がっている可能性はほぼゼロでしょう。

 調べてみると,ADTProというソフトがあるそうで,これを使うとPCから実機に転送し,ディスクに書き込むことも出来るんだそうです。

 ただし,基本的にはAppleIIeやAppleIIcをターゲットにしているようで,私のAppleII+ではかなり大変なことがわかりました。

 まず,データの転送にはシリアルポートを使うのですが,AppleIIeやAppleII+ではSuperSerialCardなるカードが必要です。そんなもんあるかいな!

 そういう人のために,とカセットインターフェースを使う方法も用意されていて,その発想に感心したのですが,ディスクへの書き戻しはProDOSベースでないといけないそうです。

 そのProDOSはAppleII+でも動くのですが,RAMを64kBに増設しないといけないらしく,それにはLanguageCardなるカードが必要です。そんなもんあるかいな!

 とまあ,ここで詰んでしまったのですが,時代は21世紀です。今手元にある部品をかき集めれば,16kBくらいのメモリ増設など訳ないんじゃないかと,自作の道を模索してみました。

 AppleIIの生みの親のWozは,他社に先駆けてDRAMを手なずけて,安い価格で大容量メモリをAppleIIに与えることが出来ました。これがAppleIIの勝因の1つだと言えるのですが,私の手元には256kBitのSRAMが腐るほどあります。アクセスが簡単な非同期メモリであるSRAMを使えば,こんなカードは朝飯前,のはずでした。

 検討を始めて,私は増設っていうけど,どのアドレスにメモリを増設すんのよ,という疑問にぶち当たります。そう,AppleIIは,48kBのRAM,12kBのROM,そして4kBのI/Oがマッピングされていて,6502という8ビットCPUのアドレスをすべて使い切っています。

 64kBをすべてRAMにしてしまえば,ブートさえ出来ません。こういう時日本のマシンではバンク切り替えを使うんだよなあ・・・

 調べてみると,なかなかややこしいことがわかってきました。まず,64kBフルRAMしてBASIC以外の言語を走らせるために,LanguageCardというものがありました。

 これは16kBのRAMとF8のROMソケットがある純正カードですが,この16kBがマッピングされるのは本体のROMのエリアである$D000から$FFFFまでです。あれ,12kBしかこのエリアはあいていませんが,このうち$D000から$DFFFまでの4kBは,バンクを切り替えて2枚使えるようになっています。

 これで一応16kBマッピングできましたが,今後はROMとの切り替えが必要です。そこでカード内にソフトスイッチを設けて切り替えています。以下の様な感じです。

$C080 : BANK0のRAMをリード,ただし書き込みは禁止
$C081 : ROMをリード,2回目のアクセスでBANK0のRAMが書き込み可能
$C082 : ROMをリード,RAMへの書き込みは禁止
$C083 : BANK0のRAMをリード,2回目のアクセスでBANK0のRAMが書き込み可能
$C088 : BANK1のRAMをリード,ただし書き込みは禁止
$C089 : ROMをリード,2回目のアクセスでBANK1のRAMが書き込み可能
$C08A : ROMをリード,RAMへの書き込みは禁止
$C08B : BANK1のRAMをリード,2回目のアクセスでBANK1のRAMが書き込み可能

 いやはや,これを実装しないといけないんですね・・・面倒くさい。

 素直にLanguageCardやサードパーティーの互換品をデッドコピーすることも考えたのですが,これにはDRAMが使われているので面倒すぎます。ここはさくっとSRAMを使いたいのです。

 そこで,いろいろな回路を参考にして,256kBitのSRAMを使った16kB増設メモリカードを設計しました。

 256kBitだと計算があわない?鋭いですね,その通りで,今回は半分の16kBだけ使っています。もったいないですが,設計が楽なのでそうしました。

20220302153430.JPG

 これが完成写真です。SRAMは手持ちの関係でNECのuPD43256を使っています。あとは74HCが5チップで,なかなか小さくまとまっていると思います。余ったゲートは1つもありません。

 そうそう,~INHという信号を本体に戻す必要があるのですが,これ,本体内部でワイアードORされるので,オープンコレクタで出力しないといけないんですよ。でも,せっかくCMOSで作っていますし,わざわざこれだけのためにTTLを使うのもバカバカしいので,ここは基本に戻って,トランジスタで作ってあります。といっても抵抗内蔵のデジタルトランジスタなので簡単でしたが・・・

 あと,カードエッジコネクタと基板ですよ。今どきApple用のユニバーサル基板なんか簡単には手に入りませんので,MSX用のものを買いました。形がややいびつなのと,コネクタのサイズがやや大きいので削ったことを除けば,良い基板だったと思います。

 基板も高価ですし,せっかく作るのですから,真面目に回路を設計,検証して,間違いないように配線をしていきます。ソフトスイッチまわりはD-FFを多用しますので,その出力を上手く条件に当てはめて,SRAMのアドレスやらCSなどを作っていきます。

 慎重に進めた結果,一発動作です。これはうれしいなあ。

 DOS3.3では,整数型の6KBASICをこのカードにロードしてくれます。INTと打ち込めばプロンプトも>になりますし,6kBASICでないと動かないデモソフトも動くようになりました。

 さて,これでうちのAppleIIplusは64kBモデルになりました。ProDOSも動くはず・・・あれ,動きません。

 ロードが途中で止まりますので,RAMカードに問題があるのかも知れません。

 そこで,いろいろ調べたのですが,まずDOS3.3で6kBASICに切り替えが出来ているので,多分RAMは大丈夫なはずです。その後,どうにかRAMチェックプログラムを手に入れたのですが,やはり問題なしという結論になりました。

 ただ,このチェックプログラムは,文字化けがすごくて,まともに画面が表示されていませんでした。AppleIIeなど小文字が使えるマシンをターゲットにすれば文字化けも起こるものなので気にしてなかったのですが,どうも大文字ばかりが使われているようです。

 さらに同じプログラムでROMをチェックすると,F8のROMは"Unknown"となってしまいました。ここは本来"AUTOSTART"と出て欲しいのです。

 うーん,もしかしてこれがJ-plusの非互換性なのかも・・・

 とりあえず,AUTOSTARTのROMを入手しましょう。とはいえ,ROMそのものを手に入れるのはもう不可能。そこで,PlusのF8のROMイメージを手に入れ,これをEPROMに書き込むことにします。

 でも言うは易しで,私は2716や2732が書き込めるライタなど持っていません。これらはピン数が少ない,複数電源が必要,書き込みに21Vが必要ときつい縛りがあり,多くのROMライタが対応しなくなっています。

 ということで手持ちのライタで書ける2764を9316BというAppleIIのマスクROMに変換する下駄を作る事にしました。せっかくですので,PlusのROMの続きにJ-plusのROMも置いておき,スイッチで選べるようにしておきます。

 さっとバイナリを準備し,いざ書き込むとエラーで書き込めません。しばらく悩んだのですが,私が使っているLEAPER3cは27C64には対応していても,2764には対応していないことを忘れていました。そう,このデバイスには21Vの書き込み電圧が必要で,LEAPER3cは対応しないのです。

 仕方がないので27C256で書き込み,下駄基板を改造して本体に装着。凡ミスをいくつか修正して,起動させることができました。

 チェックプログラムでもROMを"AUTOSTART"と認識してくれるようになりましたので,ドキドキしながらProDOSをブートさせます。すると上手く起動してくれました。ああ,初めて見るProDOSの起動画面・・・

 こうなってくると,ADTProも動き出しますし,ゲームを書き戻すことも出来るようになりました。夢だったTimeZoneも,この目で実機で動くのを見る事が出来るなんて。移植版で死ぬほど遊んだChopLifterやLodeRunnerも,動いています。

 大きな感動に包まれ,こういう作業をちゃんと続けられる技術力がまだ残っていたことに安心したのですが,気が付いたのは5インチのFDの在庫です。2HDばかり手元に残し,2Dは捨ててしまったのですが,実はX68000もPC-9801も捨ててしまったので2HDには出番がありません。むしろ,X1turboやPC-6001,AppleIIといった2Dばなり使うマシンが残っているのです。

 しかも,貴重な10枚のブランクディスクは,カビにやられていました。

 そこで当時,高価だったディスクを節約する方法として良くおこなれた,裏返して使うという方法を試みました。

 AppleIIのディスクはかなり特殊で,インデックスホールを用いずソフトだけでセクタを管理します。なので書き込み禁止ノッチだけを開けてやれば,裏返しても使えるそうなのですが,果たして互換ドライブでも使える手口なのでしょうか?

 やってみたところ,上手くいきました。これでAE(ゲームです)なんかも1枚におさまります。

 ということで,立った1週間で急激にAppleIIを進化させました。まさか私のAppleIIのROMがAUTOSTARTではなく,それが原因でProDOSが動かなかったというのも,このAppleIIを入手した時には思いつくことすらなかったことでしょう。

 一発動作のRAMカードもうれしく,久々に30年前の根性による配線を堪能しました。面倒と思い土,やってみると楽しい作業でした。

 今回の製作にはもう1つ記念すべきことがあり,それはワイアリングペン用のワイヤを,とうとう使い切ったということです。

 それは小学6年生の時の話で,万能基板を使い出した当時の私は,配線をなんとか楽ちんに出来ないものかと悩んでいました。抵抗の足では交差させることができませんし,ビニール線では太くて盛りそばのようになってしまいます。

 そんなとき,ペンの先から細いワイヤーが出てきて,しかもハンダの熱で被覆が溶け,そのままハンダ付け出来てしまうと言う夢のような話があると耳にしました。当時よく行っていたシリコンハウス共立でも売られていましたが,輸入品だったのでびっくりするほど高価でした。

 そこで,消耗品として売られていたワイヤだけ買ってきました,それでも当時500円ほどしたと思うので,大変高価なものだったのです。

 本当にハンダの熱で被覆が溶け,そのままハンダ付けまで出来るのかなあと試したのですが,そんな甘い話はなく,被覆が溶けるのは事実でも,はんだめっきをしないでハンダ付けを行うのは難しく,そんなに作業が楽になるというものではありませんでした。

 ペン本体も,古いボールペンを改造して作ってはみたものの,やっぱり不便で使わなくなりましたが,一生かかっても使い切れないだけの長さのワイヤを,絶縁された極細のワイヤとして細々と使うことにしたのでした。

 しかし,数年後にはそこそこ使いこなせるようになり,このワイヤで多くのものを作ってきました。使っても使っても減ることのない,底なしのワイヤでした。

 そんなワイヤですが,少し前から量が減っているのが目立って来ました。そして今回,とうとう使い切ったというわけです。35年かかりました・・・

 実は,このワイヤはただのポリウレタン線で,コイルを巻いたり小型モーターをバラしたりすれば,簡単に手に入るものです。一応この太さのポリウレタン線はリールで買ってあるのでそれこそ一生困ることはないとおもいますが,独特の緑色で着色されたこのワイヤーが見納めになるというのは,さみしいと同時に妙な達成感もあったりします。

ページ移動

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

ユーティリティ

2022年03月

- - 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 31 - -

検索

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

ユーザー

新着画像

過去ログ

Feed