椋の木
2026年10月2日金曜日
Apple Disk II (repair)
Disk II Controller cardの故障かもしれないと、74LSシリーズのロジックICの交換をしてみた。このcardが複数あったので、複数のカードの全てのロジックICの交換をしてみたり、PROMの交換をしてみたが治らなかった。多分、Disk II Controller cardは正常だったのだろう。
次に、Apple Disk II 本体のデジタル基板(アナログカード/ドライブ内蔵基板)の故障の可能性を考えた。
Apple Disk II 本体のデジタル基板(ドライブ内蔵基板)のロジックICを何種類か(CA3146,74LS125)3台全部新品に取り換えてみたのだが無駄だった。ネットを探すとdriveの回転数がずれていて、それを補正すればいい、というのだ。LockSmith6.0を使えばいいとあるのだが、肝心のドライブが全滅では手が出ない。当然の事だがドライブヘッドの掃除はisopropyl alcoholを使って実行済だった。
しばらく放置していたのが、ある日思い立ってドライブヘッドをしつこく洗うという事をしてみた。それまでは、Disk IIのヘッドの掃除といえば全部の覆いを除去せずに、端の方から綿棒を差し込んでチョロチョロとこするだけだったのだが、よくよく調べてみると、ドライブヘッドの上の鉄板って簡単に取れるのね。
そしてアルコールでしっかり掃除しましたとさ。結果、2台は復活。
よくよく思い出してみれば、古いゲームディスクをDisk IIで動作させてから動作不能になったのだった。
でも、残った1台はどうやっても動いてくれなかった。なので、回転数の調節をしてみる事にした。
LockSmith6.0を立ち上げて、動作不良のDisk IIにフロッピーを入れて回転数の調査をしようとしたのですが、ライトプロテクトがかかっているので回転数の調査ができないとの結果。あれ?そんな事ないはずなのだが。そうするとApple Disk II のデジタル基板(ドライブ内蔵基板)の方の故障かもしれんと、3個ある電解コンデンサを交換してみた。結果、最後の1台が復活しました。 取り外した電解コンデンサーです。代替のコンデンサーにAxial Capacitorが入手できなかったので、普通のRadial capacitorにしています。
それにしても、Disk IIの回転数を調節するはずの半固定抵抗の位置がどこだか分からなかった。まあ、最近の事だからAIに聞けばよかったのだろうが、そういう事をする必要は無くなった。
さて、故障の原因となった古いフロッピーディスクを探さないといけない。というので、探してみました。結果、判ってきたのはフロッピーディスク表面にある1-2mmの多発性の斑点が問題ではないのか、という点です。光にフロッピーディスク表面をかざしてみると判別がより簡単になります。 なんとかこの斑点を写真に撮ってみようとしたのですが、やはり難しいですね。こういう斑点のあるフロッピーディスク表面をアルコールを綿棒でちょっとこすってみると わずかにこすっただけでも、このようになる場合もありますし、もう少し時間をかけていると、なる場合もあります。そして綿棒にはフロッピーディスク表面の磁性体粉が付着していました。こういった磁性体粉がApple Disk IIのdrive headに付着してread issueを発生させていたのでしょう。いずれにしても、こういうフロッピーディスクはdriveに入れては駄目だという事ですね。
2026年7月15日水曜日
Apple IIe motherboard fix
ただここではマザーボードに問題のある製品を入手したので、後の利便のために記録しておく。
1台めのApple IIe(non-enhanced)の症状は電源スイッチを入れてもマザーボード上のLEDが点灯しない。
もちろんモニター画面には何も表示されない。
電源ラインの抵抗値をチェックしてみると+5V,+12V,-5Vに問題はなかったが、-12Vラインがアースラインと導通があるという結果だった。そこで、-12Vラインから各種の部品を切り離してみた。しかし問題は解消しなかった。
この写真は電源入力付近であるが、電解コンデンサーC9,C12,C15,C17が並んでいる。このうちどのコンデンサーか忘れたが-12Vラインと関係ある物がある。つまり-12Vを創り出していたコンデンサーの容量抜けで、電源(PSU)が電流を流さなくなったものと想像された。
そこで、この4個のコンデンサーを新品に交換してみた。4個のコンデンサー規格はいずれも10uFですが小さな方(C9,C17)の耐圧は6.3V,大きな方(C12,C15)の耐圧は15V。
結果はマザーボード上のLEDが点灯するようになりました。ただモニター画面には何も表示されない。
そうなるとビデオ出力に近い箇所のコンデンサーも容量抜けかもしれない。
この写真はビデオ出力部分です。ここのコンデンサー(C8,10uF,6.3V)を新品に交換しました。結果、モニター画面にApple IIという表示が現れました。
2台めのApple IIe(non-enhanced)の症状はマザーボード上のLEDは点灯するのですが、モニター画面には何も表示されない。
前回の経験からコンデンサーC8を交換してみました。ついでに電解コンデンサーをすべて交換しました。で、問題は解決しました。Apple IIeのマザーボード上の電解コンデンサーはすべて10uFですが、耐圧がC12,C15だけ15Vで、他の物は6.3Vになっています。
【参考】
1)https://mirrors.apple2.org.za/ftp.apple.asimov.net/documentation/hardware/machines/Apple%20IIe%20Repair%20Guide%20-%20Double%20Density.pdf
2)https://wiki.reactivemicro.com/Apple_IIe_Motherboard
2026年7月7日火曜日
ADTPro, Apple Super serial card and Apple IIgs
1)Apple super serial card(SSC)
2)USBシリアル変換ケーブル
3)ADTProというソフト
Windows側で使うソフトはADTPro-2.1.0
これをRS232C USB シリアル変換ケーブル-->
DB9ピン パラレル(D-sub25ピン) DB25アダプタ-->SSC
という順序で接続
この状態でApple II slot2にSSCを入れて電源オン。
]IN#2
]Ctrl+A
APPLE SSC:という表示がでます。
ここで
14Bと入力(これは9600ボーレイトの設定:下記を参照)
そしてWindows側ADTProでserial 設定->MENU->Bootstrapping->ProDOS->Speediboot
これで、windows側には無事に転送できたという表示になるのですが、Apple II側には何ら の反応もありません。本来からClient softが起動するはずなのですが。
ヌルモデムを使って接続する必要がある?-->クロスケーブルをはさんでも結果は同じ。
シリアル変換ケーブルが壊れている?-->別の変換ケーブルを使っても結果は同じ。
SSCが壊れているかと考えてSSCを3台入手しましたが同じ結果でした。ここで止まったままです。
そこで最近流行のAIに尋ねてみました。使っているAIはClaude.ai(Fable5)。
AIの答えはこうでした。
ADTPro公式の配線ページによると、SSCとホストPCの接続はストレートケーブルでもヌルモデムケーブルでもよいが、ジャンパーブロックがその切り替えを担う。ストレート接続ならブロックの矢印を下向き「Terminal」に、ヌルモデム接続なら上向き「Modem」に設定する必要があります。
え?そんなページがあったのか、という驚きでした。
考えてみると、ジャンパーブロックは上向きでないといけないと思い込んでいたのです。確かにMODEMモードでは上向きにという表現がどこかにあったはずです。
そういう次第で入手したSSCのジャンパーブロックはすべて上向きにしていたのです。
で、ジャンパーブロックを下向きにしたら、Apple IIのモニター画面に文字が流れて、しばらくするとADTProのクライアントプログラムが立ち上がりました。 ただ、DOS3.3を立ち上げているとうまくいかないですね。なのでDISK IIにはDOS3.3フロッピーディスクを入れずに、いったんCtrl+ResetしてからIN#2としたらいいですね。
============================================================
さて、ここからはApple IIgs(ROM3)でADTProを使う設定です。IIgsにはシリアルポートとしてモデムポート(slot2),プリンターポート(slot1)の二つがありますが、さてどちらを使った方がいいでしょう?
まずWindowsとIIgsの接続にはUSBシリアル変換ケーブル===>ヌルモデム(シリアル・クロスケーブル)===>IIgsとします。 Windows10==>USB Serial Convert Cable==>Null MODEM==>Apple printer cable==>IIgsと接続しています。複雑だわ。
上記のようにモデムポート(slot2)を使ってみました。IIgsの設定の方ですが、adtpro.comの解説にはESC+Ctrl+Left_Appleを押さえてコントロールパネルを開いてモデムポートの設定をデフォールト設定にして使いなさいと書かれている。それにしても、デフォールトの速度設定が1200ボーではいくら何でも遅すぎるので、ここを9600ボーに設定。
IIgsを起動してCtrl+ResetしてIN#2と入力し、Windows10のADTProを起動し、
ADTPro==>Bootstrapping==>Speediboot
で転送開始。その結果ですが、IIgsモニター画面に転送されたデータが表示されるのですが、途中で止まってしまいます。
転送プロトコールを工夫してもダメです。ひょっとしてモデムポートでは無くプリンターポートを使うのかな?と考えて、そちらを使ってみました。コントロールパネルを開いてプリンターポートの設定をデフォールトにしてみました。IIgsから、IN#1と入力した後、Windows10のADTProからspeedibootを転送開始。Apple IIe+Super Serial Cardの転送で見たようなデータがIIgsモニター画面を流れてゆきます。やった!と思ったのですが、次のような表示で止まりました。
FOUND SLOT 8
LOADING MLI
SLOT8というのは聞いたことも無いので調べてみるとモデムポートの事らしい。ということは、プリンターポートを使っていては駄目だということらしい。でも先ほどモデムポートを使って駄目だったのだがと、じっくりプリンターポートの設定と比べてみた。すると、一つだけ違いがあった。それは
ADD LF after CR: Yes
となっていた事。
モデムポート設定をこのようにすればいいらしい。
Apple IIgsにはA9M0106という3.5インチフロッピーディスクドライブが対応している。そこでADTProで2mgファイルを転送して800Kフロッピーディスクに書き込みしてみました。これは問題なく可能でした。ただ一つ注意点があるとすれば、3.5インチドライブにフロッピーディスクを入れてないとADTProには認識されないという事です。 =================================================================================
SSCのマニュアル
SSCの通信モードへの準備
ジャンパーブロックとスイッチSW1-5およびSW1-6が正しく配置されている場合、SSCは通信モードで動作する準備が整います。
ジャンパーブロックの三角形が「MODEM」の文字の方を向いている場合は、ブロックを取り外し(必要に応じてICエクストラクタを使用)、三角形が「MODEM」の方を向くように再度挿入してください(図3-1)。
先の尖ったものを使用して、スイッチSW1-5とSW1-6の両方をONに設定してください(図3-1参照)。
これにより、SSCは通信モードになります。
通信モードコマンド
このセクションで説明するコマンドは、コンピュータプログラムに組み込むことで実行できます。 BASICまたはDOS環境では、Apple(またはリモート端末)のキーボードから直接入力することもできます。
BASICプログラムでは、制御文字とコマンドをPRINT文に記述します。
Pascalプログラムでは、コマンドをWRITE文またはWRITELN文に組み込みます。
これらのコマンドをキーボードで入力してSSCに反映させるには、まずIN#sコマンド(SSCをスロットに挿入した状態)を実行する必要があります。次にコマンド文字(通常は(CTRL-A)、下記参照)を入力すると、ディスプレイ画面に「APPLE SSC:」というプロンプトが表示されます。(RETURN)までの文字は、SSCコマンドとして解釈されます。
(RETURN)を押す前に左矢印キーを押すと、コマンドがキャンセルされ、「APPLE SSC:」プロンプトが再び表示されます。
これらのコマンドの多くは、SSCの物理スイッチ設定を上書きします。そのため、Apple IIのケースを開けてSSCスイッチ設定を手動で変更する必要はありません。値を物理スイッチ設定に戻すには、Apple IIを再起動またはリセットするか、後述のリセットコマンドを入力してください。
コマンド形式
すべてのコマンドは、通信モードコマンド文字(通常は(CTRL-A)、下記参照)で始まり、(RETURN)で終わります。 (CTRL-A)という表記は、「Ctrlキーを押しながらAキーを押す」という意味です。コマンド形式には3種類あります。
1)数字(n)の後に大文字のアルファベットが続く(例:4Dでデータフォーマット4を設定)
2)単に大文字のアルファベットが続く(例:RでSSCをリセット)
3)大文字のアルファベットの後にスペースが続き、Eで機能を有効にする、またはDで機能を無効にする(例:L Dで改行文字の自動生成を無効にする)
(n) の許容範囲は、各コマンドの説明に記載されています。 有効化または無効化の選択は (E/D) と表記されます。
Enable/Disable コマンドの (E/D) の前にアンダースコア ( ) が付いているのは、単にスペースが必要であることを示すためのものです。
SSC は、コマンドとオプションの最初の文字と数字のみをチェックします。これらの文字はすべて大文字でなければなりません。 記憶を助けるために追加できるその他の文字は、SSC には影響しません。
例えば、E(cho E(nable は E と同じです。SSC は無効なコマンドを無視します。
コマンド文字
通信モードにおける通常のコマンド文字は (CTRL-A) です。 コマンド文字自体をSSC経由で送信するには、 (CTRL-A)(CTRL-A) と連続して2回入力します((RETURN) は不要です)。この特殊なコマンドを使用すると、SSCの動作に影響を与えずに、 また別のコマンド文字に変更してから元に戻すことなく、コマンド文字を送信できます。
コマンド文字を (CTRL-A) から (CTRL-別の文字)(例:(CTRL-W))に変更する場合は、(CTRL-A)(CTRL-W) と入力します。
元に戻すには、(CTRL-W)(CTRL-A) と入力します。どちらのコマンドの後も、(RETURN) は不要です。
制御文字を
コマンド文字 (CTRL-A) は ASCII コード 1 です。BASIC と Pascal でこの文字を生成する方法は次のとおりです。
Integer BASIC: PRINT "*command" *embedded (CTRL-A)
Applesoft BASIC: PRINT CHR$(2): "command"
Pascal: WRITELN (CHR(2),'command');
通信モードコマンド一覧
表3-4は、通信モードで使用されるコマンドの一覧です。 簡潔にするため、本章の残りの部分で詳しく説明する一部のコマンドは省略しています。 アスタリスク(*)が付いているコマンドは、Pascalではサポートされていません。
スイッチ設定を変更するコマンド
このセクションで説明するコマンドは、SSCのスイッチ設定を上書きするか、SSCの関連する動作に影響を与えます。Resetコマンドは、スイッチの選択状態を復元します。
ボーレート-(n)B
このコマンドは、SSC上のスイッチSW1-1~SW1-4の物理設定を上書きします。 例えば、ボーレートを9600に変更するには、(Ctrl+A)14B(Enter)と入力します。
| (n)= | SSC Baud Rate |
|---|---|
| 0 | use SW1-1 to SW1-4 |
| 1 | 50 |
| 2 | 75 |
| 6 | 300 |
| 8 | 1200 |
| 14 | 9600 |
| 15 | 19200 |
データフォーマット-(n>D)
このコマンドを使用すると、スイッチSW2-1およびSW2-2の設定を上書きできます。下の表は、
例えば、(CTRL-A)3D(RETURN)と入力すると、SSCは各文字を次の形式で送信します。 スタートビット1つ(常に送信)、データビット5つ、ストップビット1つ。
| (n)= | Data Bits | Stop Bits |
|---|---|---|
| 0 | 8 | 1 |
| 1 | 7 | 1 |
| 2 | 6 | 1 |
| 3 | 5 | 1 |
| 4 | 8 | 2 (1 with (n)P options 4 through 7) |
| 5 | 7 | 2 |
| 6 | 6 | 2 |
| 7 | 5 | 2 (1-1/2 with |
パリティ(n>P)
表3-6. データフォーマットの選択
このコマンドを使用すると、SSCが送信データを生成する際、および受信データを確認する際に使用するパリティの種類を指定できます。 利用可能なパリティオプションは5つあります。
| (n)= | Parity to Use |
|---|---|
| 0, 2, 4 or 6 | none |
| 1 | odd parity (odd number of l's) |
| 3 | even parity (even number of l's) |
| 5 | MARK parity (parity bit always 1) |
| 7 | SPACE parity (parity bit always ) |
例えば、(CTRL-A)1P(RETURN)と入力すると、SSCが送信を行い、奇数パリティをチェックします。奇数パリティとは、 各文字の最上位ビットが、その文字に既に奇数個の1ビットが存在する場合は1、それ以外の場合は偶数個の1ビットが存在する場合は1となり、合計が常に奇数になることを意味します。これは、データの送信エラーをチェックする簡単な方法ですが、万全ではありません。(付録Fを参照。)
Generate (LF) Out-L_(E/D)
このコマンドを使用すると、SSC は各キャリッジリターン (CR) 文字の後に自動的にラインフィード (LF) 文字を生成して送信します。 これはスイッチ SW2-5 の設定を上書きします。
例えば、(CTRL-A)L E(RETURN) と入力すると、プリンターは編集用のリストや原稿をダブルスペースで出力します。
Mask (Suppress) (LF) In-M_(E/D)
(Ctrl+A)M D(Return)と入力した場合、SSCはキャリッジリターン(CR)文字の直後に続くラインフィード(LF)文字を削除しません。
Reset the SSC-R
(Ctrl+A)R(Return)と入力すると、BASICプログラムにPR#ØとIN#0を送信してからSSCをリセットするのと同じ効果が得られます。このキーボードコマンドは、SSCへの以前のすべてのコマンドをキャンセルし、物理スイッチの設定を元に戻します。
その他のコマンド
このサブセクションで説明するコマンドは、文字とビデオ画面の処理を制御します。3つのコマンドは、(CR)、(LF)、(FF)文字の送信後の時間遅延を制御します。
Translateコマンドは、小文字と大文字の表示を制御します。 2コマンドとFコマンドは、それぞれ制御文字とキーボードで入力された文字を抑制します。
Xコマンドは、XON/XOFFプロトコルの一部として、SSCに文字ストリームのXOFFをチェックさせます。 最後に、(n)Sコマンドは、ビデオ出力を選択されたスロットにルーティングし、Eコマンドは画面上の文字の表示(エコー)を抑制します。
Set Time Delays-(n)C, (n)L, (n)F
プリンタによっては動作が遅く、Apple II に「プリンタビジー」信号やハンドシェイク信号を送信しないものがあります。このようなプリンタがモデム経由で SSC に接続されている場合、次の 3 つの遅延コマンドを使用すると良いでしょう。
(n)C コマンドは、Apple II が改行文字を送信した後、次のグループ (通常は次の行) を送信する前に、指定された時間だけ待機するようにします。これにより、プリントヘッドが印刷を再開する準備が整い、ページの左端に戻るのに十分な時間が確保されます。(n)L コマンドは、改行文字の後にプリンタプラテンが回転して用紙が次の行を受け取る位置に垂直になるようにする時間を与えます。
(n)F コマンドは、用紙送り文字の後にプリンタプレートが用紙を次のページの先頭に移動させる時間を与えます (通常は改行文字よりも長い時間)。
| (n)= | Time Delay |
|---|---|
| 0 | none |
| 1 | 32 milliseconds |
| 2 | 250 milliseconds (1/4 second) |
| 3 | 2 seconds |
プリンターのユーザーマニュアルを参照して、プリントヘッドとプラテンの移動にかかる時間を確認してください。プリンターをリモートデバイスとして使用する場合、これらの3つの遅延時間に適切な値を設定する必要があります。重要なのは、プリンター部品が必要な距離を移動するのに十分な時間を確保しつつ、印刷速度が著しく低下するほど時間を長くしすぎないことです。
Translate Lowercase Characters-(n)T
Apple IIのモニターは、入力された小文字をすべて大文字に変換してから、ビデオ画面またはBASICプログラムに送信します。
| (n)= | 小文字の扱い方 |
|---|---|
| 0 | BASICプログラムやビデオ画面に渡す前に、すべての小文字を大文字に変換します。これは、Apple IIのモニターが小文字に対して行う処理と同じです。 |
| 1 | すべての小文字をそのまま渡します。Apple IIの画面上での小文字の表示は未定義です(意味不明な文字になります)。 |
| 2 | 小文字を大文字反転文字として表示します。(つまり、白地に黒文字として表示します)。 |
| 3 | 小文字をそのままプログラムに渡しますが、小文字は大文字に、大文字は大文字反転文字として表示します。(つまり、白地に黒文字として表示します)。 |
制御文字の抑制(Zコマンド)
(Ctrl+A)Z(Enter)と入力すると、SSCはそれ以降の制御文字(およびコマンド)を認識できなくなります。 Zコマンドを発行すると、以降のすべてのコマンドは無視されます。これは、送信データにSSCが制御文字と誤認する可能性のあるビットパターンが含まれている場合に便利です。 Zコマンドを実行した後にコマンド認識を回復するには、SSCをリセットするか、アドレス$5F8+s(SSCがスロットに挿入されている場合)の最上位ビットをクリアする必要があります。
Find Keyboard-F_(E/D)
キーボードのFキーとDキーを同時に押すと、キー入力によるデータ破損を防ぐことができます。 このコマンドを使用すると、プログラムに(Ctrl+A)F Dというコマンドを追加し、その後にデータ取得ルーチンを記述できます。
XOFF Recognition-X_(E/D)
通信モードでは、SSCは接続されたデバイスから送信されるXOFF文字(10進数19、付録D参照)を自動的に認識し、文字の送信を継続します。デバイスからXON文字(10進数17、付録D参照)を受信すると、SSCは送信を再開します。XOFF認識を無効にするには、(Ctrl+A)X D(Enter)を押してください。
Specify Screen Slot-(n)S
このコマンドを使用すると、テキストやリストを表示するデバイスのスロット番号を指定できます。 (通常はスロット番号、つまりApple IIのビデオ画面です。)これにより、SSCを他のカードスロット(例えば80桁表示周辺機器カード)に「連結」できます。 SSCのファームウェアが他のカードのファームウェアに情報を渡すには、他のカードのCs空間内に出力エントリポイントが必要です。 これは、現在入手可能なすべてのApple II用80桁表示カードに当てはまります。 例えば、スロット番号2にSSCが挿入され、リモート端末が接続されており、スロット番号3に80桁表示カードが挿入されているとします。 (CTRL-A)3S(RETURN)と入力すると、リモート端末からのデータがスロット番号3のカードを経由して連結され、Apple IIに80桁形式で表示されます。(Pascalでは使用できません。)
Echo Characters on the Screen-E_(E/D)
Apple IIでは、ほとんどのコンピュータと同様に、ビデオ画面に文字を表示(エコー)する処理は、キーボードから文字を受信する処理とは別のステップで行われます。タイプライターのように、これらを一つのステップとして捉えがちですが、実際には別の処理です。例えば、(CTRL-A)E D(RETURN)と入力しても、SSCは受信した文字をApple IIの画面に転送しません。この仕組みは、端末に入力されたパスワードを隠したり、文字の二重表示を防いだりするのに利用できます。
2026年4月22日水曜日
Apple2-IO-RPi
主な機能はWifiを使ってネットワーク接続できる事。
次にSD_Card上にApple II用のイメージファイルを置けること。
Raspberry pi Zero 2 W を使ってインストール
まず、Raspberry Pi Imagerを使ってRaspberry Pi OS(Bookworm 64-bit) Lite
をSD cardに書き込みます。
そのSD cardをRaspberry piに装着し、windowsマシンとUSB経由で接続します。
そしてWindowsマシンからsshでRaspberry piに接続します。
接続後
wget --no-cache -O - https://raw.githubusercontent.com/tjboldt/Apple2-IO-RPi/main/RaspberryPi/setup.sh | bash
でインストールできるとあるのですが、簡単にはできません。
ほとんど諦めかけました。
まずRapberry pi OS ですが、最新のOSでは駄目でした。 ちょっと古いBookwormを使ってうまくできたはずなのですが、 最後の部分で Unit file raspi-config.service does not exist というメッセージで止まってしまいます。 まあ、これは無視してもいいようですね。 問題はsetup.shというスクリプトの最後の方
sudo systemctl disable avahi-daemon.service
sudo systemctl disable triggerhappy.service
sudo systemctl disable raspi-config.service ← ここでエラー
sudo systemctl daemon-reload
なのでdaemon-reloadやってないだけなのです。
まず
sudo systemctl status apple2driver
としてドライバーが動作しているか確認します。
active(running)
という表示がされれば動作はOKです。
そして最後の行にあった
daemon-reloadを動作させます。
sudo systemctl daemon-reload
その後
sudo reboot
で再起動。
なのですが、Apple IIのモニター画面には"."が表示され続けるだけで 一向に前に進んでくれません。
いえ、これでうまく動作できる場合もあるようですので、その場合はここまでお終いです。
さて、ここから始めのwgetの行まで戻ります。
wget --no-cache https://raw.githubusercontent.com/tjboldt/Apple2-IO-RPi/main/RaspberryPi/setup.sh
でsetup.shというスクリプトをダウンロードします。
ここで
git config --global pack.threads "1"
というオマジナイを入力します。
setup.shはそのままでは実行できないので
chmod 777 setup.sh
sudo ./setup.sh
でスクリプトの実行が始まります。 これで以後は前回の通りです。
エラーが出て気持ちが悪いという人は
nano setup.sh
としてスクリプトの最後の方にあるraspi-configの行を削除して
sudo ./setup.sh
とすればエラーが出なくなるはずです。
Raspberry Pi Zero 2 Wはメモリが512MBしかないので、gitがマルチスレッドでpackを処理しようとするとメモリ不足になり、クローンが壊れた状態で完了してしまう。結果としてビルドされたバイナリも不完全で、Apple II側ではドットが延々と出るだけ(通信が確立できない状態)になっていたのかもしれません。
git config --global pack.threads "1"
これでgitのpack処理をシングルスレッドに制限し、メモリ消費を抑えることができます。
Apple2-IO-RPiカードは2台製作していまして、
1台目はうまく動作したのですが、2台目が動きません。
画像左の5段に並んだ最下段は74LS245 Data Bus Buffer
一方、画像最上段は74LVC245 Input Level Shifter
つまりどちらも245なので、これを一緒の物だと勘違いしていた訳。
最初に提示した画像の左最下段にあるTTLで、これが74LVC245だとわかるかもしれません。
そういう次第で、何度やってもApple II側でApple2-IO-RPiカードの起動ができなかったのです。
途中でモニターに落ちていました。
最初の画像でEEPROM AT28C64Bのソケットのチップが入っていませんでしたけど。
これには訳がありまして、Apple2-IO-RPiカードの起動ができない間、何度もApple IIスロットにカードを
抜き差ししていて、疲れていたんでしょうね。逆刺ししてしまいました。そしてAT28C64Bは昇天してしまいました。
気を取り直してApple2-IO-RPiカードに向かいます。使うRaspberry Piには何種類かあります。
1)"Raspberry Pi Zero 2 W"を使うクラシックハードウェアと呼んでいる物。
2)"Raspberry Pi Pico"を使う物。
ここでは1)の方しか試していないので、2)は省きます。
1)の場合は"AT28C68B"というEEPROMにコントロールブログラムを書き込む必要があります。その際にはEPROM Writer(XGecu Pro T48)を使用しました。ただ、解説をよく読むとEPROM Writerが無くてもユーティリティ・プログラムが用意されているという記述があります。ユーティリティはGitHubのリリースにあるApple2-IO-RPi.hdvドライブイメージに含まれています、との事ですが、とんでもなく面倒そうなので、多分私ならどこかで間違えそうです。ですので試していません。
次に、その書き込みをするデータ(AT28C68B.bin)なのですが、どこにあるのか分かりませんでした。最近は眼前にあっても気が付かない事が多くて。数日の後、偶然に見つけることができました。
https://github.com/tjboldt/Apple2-IO-RPi/releases/latest
にありました。その過程でよくよく見たらkiCAD用のデータがあるではないの。(https://github.com/tjboldt/Apple2-IO-RPi/tree/main/Hardware)これを使えば生基板を買わなくても格安基盤製作メーカーに発注できるではないの。残念な事をした。
さて、完成したApple2-IO-RPiをApple IIに取り付けて電源を入れるとモニター画面にドットが連続して表示されます。
ここで
-shell
と入力すると80カラムモードになりraspberry piのホームディレクトリの表示になります。
ここから先に何をしたらいいのか、しばらくはわかりませんでした。何故なら、すでにFloppyEmuは手持ちにあったので Apple2-IO-RPiのSD cardに何を書き込むのかが解らなかったのです。
しばらく後、Apple II用のMidi cardを入手しました。そのcardをApple IIに取り付けて、はて?これをどうやって動かすのだろうかと悩みました。何しろ付属していると思っていたドライバーが書き込まれたフロッピーディスクが無かったのですから。それはネット上の某所にありました。入手したドライバーファイル(MIDIPLAY.HDV)を解凍してみると、容量が32MBのハードディスクに書き込むためのファイルでした。
始めはFloppyEmuから起動すれば問題ないだろうと思っていました。しかし遅まきながらそれは無理だろうと考えるようになりました。
そこでApple II SCSI CardをApple IIのスロットに取り付けて、それにExternal SCSI Hard Driveに接続した上で、ADTProの出番です。Windows上にあるHDVファイルをADTProを使ってApple IIのExternal SCSI Hard Driveに書き込んでみました。
何しろシリアル転送なので32MBのファイル転送には2時間以上かかったはずです。
そしてApple IIをreboot。あっという間にドライバーファイルの起動完了しました。ただねぇ、500MBのHard Driveのたった32MBしか使わないというのは、大変にもったいない話。それにHDV,2MGといったファイル拡張子を持ったファイルをいちいち2時間以上もかけてADTProで転送するのも大変だ。何とかならないか?
ここまできて、やっとApple2-IO-RPiの存在を思い出しました。
そうなのです。Apple2-IO-RPiはWiFi経由でネット接続ができるのです。ですので、Windows側から例えば"WinSCP"などを 使ってApple2-IO-RPiに接続してやればいいのではないかと。実際にやってみると32MBのファイルなんてあっという間に転送完了してしまいました。
Windowsで消せないファイル
何かをインストールしたはずみに出来たものだと思いますが、はっきりしません。
そのファイルをPowershellで見ますと、下記のようになってました。
Mode LastWriteTime Length Name
---- ------------- ------ ----
-a---- 2025/06/04 8:15 32768 StateRepository-Deployment.srd-shm
-a---- 2025/06/04 8:15 32768 StateRepository-Machine.srd-shm
最近になってやっと削除できたので、忘備録として書いておきます。特に物忘れが多くなってきたので。
Powershellでcaclsというコマンドを使って削除したいファイルの削除権を設定するのだそう。
削除権を設定したいユーザー名が不明ならば
net user
でユーザー名を調べてから使います。
このファイルの場合は
cacls StateRepository-Deployment.srd-shm /g tagosaku:f
tagosakuはユーザー名なので自分が使っている名称に書き換えて。
これができれば後は簡単で
rm StateRepository-Deployment.srd-shm
で削除できました。
2026年4月11日土曜日
BlueSCSI WiFiと漢字Talk 7.5.3
MacintoshはLC475を、OSはMacOS 7.5.3とMacOS 8.0を使いました。
MacOS 8.0に設定文書を読みながらDynaPortの設定をしてみると簡単にインターネット接続できました。
次にMacOS 7.5.3です。
これはまったく歯が立ちませんでした。
いや、正確に言うと、漢字Talk 7.5.3ではインターネット接続ができませんでした。
ところが、MacOS 7.5.3(英語版)ではインターネット接続できました。
では、MacOS 7.5.3(英語版)+ 漢字Talk 7.5.3のことえりシステムをインストールしては?
結果はインターネット接続ができませんでした。
まあ、そんな事ならMacOS 8.0で日本語を使ってWiFi接続でOKではないのかと。
それにWiFiさえ諦めれば、漢字Talk 7.5.3を使う事ができるのですから。
ただねぇ、LC475は別売されたネットワークカードをPDSスロットにささないと
ネットワークが使えないのです。でも、PDSスロットにはすでにApple IIe Cardが
ありますのでネットワークカードは却下です。
Apple IIe Cardは
MacOS7.5.3が上限のようで、それ以後のMacOSでは使えないとの事。
まあ、そういった事情がありまして、最後に試したのが
Japanese Language Kitという、英語システムに日本語を組み込むアプリです。
これは1.44M Floppy Disk 13枚に収納されています。
ただ入手したJapanese Language Kit インストーラーがある一枚目のディスクがディスクエラー。
ディスクを修復できないものかと探してみましたらDiskDup_Proというアプリがあるそう。
これはちょっとしたディスクエラーなら読み出して、ディスクイメージファイルを作れるとの事。
で、やってみました。
1回や2回では当然エラーで中断されます。でも10回20回となるとエラー発生までの時間が延びてきて
30回を越えた頃になんとかディスクイメージファイルが作れました。
そのディスクイメージファイルを新規の2HDフロッピーに書き込んでInstallerが使えるようになりました。
さて
MacOS 7.5.3(英語版)+ Japanese Language Kit
でどうだったかというと
インターネット接続できました。
Sega Saturn (VA0) CD drive board recap
| 電圧 | 容量 | 個数 |
|---|---|---|
| 10V | 220μ | 1個 |
| 10V | 100μ | 3個 |
| 10V | 47μ | 1個 |
| 16V | 22μ | 1個 |
| 25V | 10μ | 1個 |
| 50V | 4.7μ | 1個 |














