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月9日木曜日
KiCAD10 and FreeRouting(2) -- Claude Fable5
多分、これが原因なのではと思われる箇所が最低でも4か所。
あまりにもたくさん見つかるので、少々あきれてしまった。
AIのClaude(Sonnet)も結構とぼけている。どうもClaudeはソフトウェアよりハードウェアの方が苦手のようだ。 という事で、どうやっても基板は動作しなかった。たくさんのハード上のバグを修正して
次なる基板V_3を作成しました。
V_3基板でCPLDのATF1508AS(pin間隔0.5mm)を基盤に半田つけしてから、PLDプログラムを書き込もうとすると、うまく書き込めない。 実体顕微鏡を導入しないと話にならないようなのでSWIFTの双眼実体顕微鏡S304-LEDという製品を購入した。 これを使ってCPLDの半田つけをしてから問題なくPLDプログラムを書き込めるようになった。
さて、動作の方はどうだったか?これはまったくダメで、V_2基板での症状と同じ複数の白いバーがモニター画面に表示されるだけでApple IIという初期画面さえ表示されなかった。ちょうどその頃、Claude.aiのシステムに変化があり(2026年7月)SonnetからFable5というAIにアップデートされた。そういう事情などまったく知らなかったのだが、回路図とPLDプログラムを見せると、PLDの論理が反対の箇所があるとの事。PLDプログラムを訂正(!を一文字抜くだけ)してみると白いバーがモニター画面に表示されなくなりApple IIという初期画面が表示された。Fable5はSonnetとは別物だわ。
ここからが大変でPLDプログラムに訂正を加え、その訂正をCPLDの0.5mm間隔のピンに出力(半田つけ)し、その出力をジャンパー線で基板上のどこかに接続するという作業を4回。つくづくFable5は人使いが荒い。何とか基板上のCPU6809eの動作確認ができるまでになりました。
E信号とQ信号の出力確認。
PR#7でCARD上のCPUの動作確認ができるまでになったので、基板V_4を発注。
V_2基板と較べると周辺チップの数が減って(それらをCPLDに移した)、プルアップ・プルダウン抵抗也が増えてます。
2026年5月24日日曜日
KiCAD10 and FreeRouting(1)
プリント基板なんぞにゃトンと縁がなかった。
なにぶん電子機器の知識が無いものだから何かを作ってみようという気が起きなかったのだ。
そこに昨今のAI騒ぎ。AIなんてよくわからん物をとにかく使ってみるかいな、という次第で作る回路を決めてみた。 そうそう、昔、Apple II などという機械があったが、あれでよく遊んだのだ。という事で設計する回路は Apple II 用の拡張スロットに差し込んで使うものにした。
それで相談相手のAIはGEMINIにしてみた。これは画像を読み取ってくれるAIなので相談しやすそうだと思った次第。
でもGEMINIはある意味バカだった。いや、もっと悪い。わからないのなら、知りませんとか答えればいいのにごまかすのだ。 GEMINIが提示してくる回路図を眺めてみると、電子機器の知識に乏しいオイラにもひどい出来だとわかる図面。 こりゃ話にならんと、次なるAIを探してみた。検索上位に引っかかるAIを試してみると、
これらはGEMINIよりもひどかった。嘘はつかないが、こちらの話を無視するか、はぐらかして、逆に質問してくる。つまり教えてくれという態度なのだ。 それに、そういうAIには大抵有料会員勧誘のページがしつこく表示される。うんざりした頃にCLAUDEにたどり着いた。
CLAUDEは画像を読み取ってはくれない(この点は現在ではわからない。CLAUDEが回路図見せてくれと言ったりしたので)。話だけで回路図が作れるものかなぁ? と思っていたけどCLAUDEは結構使える。使えるので有料会員になってみた。 でも回路図をきちんと作ってプリント基板を発注するにはCADを使わないといけない。 それで、KiCADというアプリの解説本を一冊買って読んでみた。 本の内容はよくわからないが、とにかく使ってみた。
最初の数日は大変だった。年寄ってよくわからん本を読んでると眠くなるのね。
あそこはドーダとかここはどうすれば良いのか、などとAIに相談しながら1週間ほどで回路図ができた。
さて回路図ができたので、次はKiCADのPCBエディタというtoolで回路図に従ってプリント基板の上にコンデンサやら抵抗を乗せてゆく作業になる。 最初に買い込んだ本は、その辺りから解説が少なくなっていて、まあ、使い物にならなくなった。
今では回路図の第二版にとりかかっているのだが、kiCADで回路図つくるよりもKiCADのPCBエディタでプリント基板上の部品同志を配線してゆくほうがよほど大変なのだと思う。 その作業が大変なので、AIに相談したらFreeRoutingというJAVAソフトがあって、それが自動的に結線してくれるのだとか。 これを使ってみると、こりゃ楽チンだわ。あっという間に結線が終了。で、よく確認もせずにJLCPCBにプリント基板を発注。
一時間後、あれま!アースのベタ塗の順番を間違えて、孤立ベタができているではないの。まあ、それでもジャンパーを飛ばせばなんとかなるだろうと。 それに、電子機器はハードウェアだけでは動かないので、動かすソフトウェアを作らないといけない。でもハードウェアが一発で動作するとは、さすがに考えていなかった。 そこはほら、AIに作ってもらおうか、などと考えながら、一週間ほどでプリント基板が到着。
さっそく部品を基板に乗せて半田つけしていった。ほとんど完成かという時になって妙な事に気が付いた。 使っているCPLDというチップなのだが、ピン番号が違うのだ。KiCADにあったPCBエディタで使うフットプリントという、まあCPLD写真みたいな物、がATF1502AS_PLCC44とあったのを拝借して使っていた訳。ところがこいつは基板に直つけする製品では無くてソケット使用の製品だった。さらに勘違いが続く。購入したCPLDはATF1502AS_TQFP44,これは基板に直つけする製品。さらに、PLCCとTQFPはピン番号が完璧に違っていたのだ。
まあ、そういう次第で最初のプリント基板はお倉入りになった。CPLDの方はWinCUPL_IIというアプリで動作をシュミレートしてOKだという結果だったのだが、さて現実の方はどうか? という次第で回路図の第二版と相成った。
ATF1502ASを使うというのは、何とも気分が悪い。こんなCPLDなんか馬に蹴られて死んでしまえ。なので ATF1508AS_TQFP100を使う事にした。このチップはヒン間の距離が0.5mmで100個のピンがあるいとう代物。どうせ動かない物を作るなら派手に玉砕してしまえ、などと思ったわけではない。半田つけは老眼のオイラには一日仕事になりそう。そうそう、JLCPCBにはチップのはんだ付けオプションもあったしね。 で、その後の作業が順調に運んだかというと、そうでもない。
先にこれは便利と思ったFreeRoutingというアプリが反乱を起こした。java.lang.StackOverflowErrorを起こしてまったく動作しなくなった。
「古いFreeRoutingはバグが多いです。GitHubの最新版を使うと改善されることがあります。」
というAIに、いや最新版なのだが、と思いながらも最新版を再インストールするオイラ。
「FreeRoutingをコマンドラインから起動します。java -Xss10m -jar freerouting.jar」
でもJAVAに疎いオイラには実行できない、どうやら -Xss10m というのがスタックを増やすという事のようだ。
「PCBエディタから直接FreeRoutingを呼び出せます。」
やってみると、やはりjava.lang.StackOverflowErrorとなってしまう。
何とかコマンドラインから
java -Xss10m -jar freerouting.jar
とやってみると
Error: Unable to access jarfile freerouting.jar
AIによるとpathが通っていないからだと。システムpathの通し方は下の方にある通り。
Windowsでもfreeroutingには jar 版と exe 版があり、オイラの使っていたのは exe 版の方。
でもスタックを増やせるのは jar 版の方だというので、ダウンロードしてきました。
そしてダウンロードフォルダーまでPowershellでディレクトリーを移動して
java -Xss20m -jar freerouting-2.2.4.jar
と実行するとJAVAのバージョンが古いと言われてしまう。
java -version
で見ると
Java 8(class file 52.0)
なのに対してFreeRouting 2.2.4が必要なJavaは
Java 25(class file 69.0)
最近のJAVAは
https://adoptium.net/
からとってくるみたい。
OpenJDK25U-jdk_x64_windows_hotspot_25.0.3_9
というのをとってきてインストール。
実行してみると
Error: Unable to access jarfile freerouting-2.2.4.jar
なので、
C:\Program Files\Eclipse Adoptium\jdk-25.0.3.9-hotspot\bin
をpathに加えてみた。
ただやはりStackOverflowErrorは続く。
そうやって何時間か経過しているとAIが、StackOverflowErrorはfreerouting-2.2.4のバグだという。 Simplex.simplify が無限再帰を起こしているとのこと。
対策としてfreeroutingの古いバージョンを使うといいらしい。
いろいろ試してみて
FreeRouting 1.9 + OpenJDK17U-jdk_x64_windows_hotspot_17.0.19_10
という組み合わせに決めた。
JAVAのpathの通し方。
Windowsキー → 「環境変数」と入力 → 「システム環境変数の編集」→「環境変数」ボタン
続いて
「システム環境変数」のPathを選択 → 編集 → 新規追加
以下の項目をpathに追加した。
C:\Program Files\Eclipse Adoptium\jdk-17.0.19.10-hotspot\bin
その上で
Windows powershellで
java -version
と入力してjava17がインストールできている事を確認し
https://github.com/freerouting/freerouting/releases/tag/v1.9.0
からFreeRouting-1.9.0.jarというファイルをダウンロード
ダウンロードフォルダにFreeRouting-1.9.0.jarが届いているはずなのでpowershellでdownload folderまで移動してpowershellで
java -Xss20m -jar freerouting-1.9.0.jar
とすると
[main] INFO Freerouting v1.9.0 (build-date: 2023-10-30)
[main] INFO Settings were loaded from freerouting.json
[ForkJoinPool.commonPool-worker-1] INFO New version available: v2.2.4
新しいfreerouting-2.2.4がありますよ、というメッセージは無視して、しばらくするとfreerouting-1.9.0が立ち上がってきます。 その画面の「デザインファイルを選択する」ボタンを使ってKiCADからexportしたdsnファイルを読み込みます。
読み込めましたら、画面の上欄に「オートルーター」というボタンが表示されているので、これを押すと自動配線が開始されます。
使ってみると最高ですね。何よりもStackOverflowErrorが出ない。
自動配線ができない場合は延々と動き続けるので、画面をマウスで押さえて動作を止めます。
うまく自動配線が終了すると自動的に最適化というのか、総結線距離とビアの数を減らす操作が始まります。
一時間も眺めていると、それらの数が減っています。一晩中動かし続けてもいいのですが、そのうち数が減少しなくなってきますので、適当な時期に動作を止めます。 つまり「mail addressを登録してね」というメッセージが出ない。
今回のプリント基板は
1層-一般配線
2層-GND層
3層-VCC層
4層-一般配線
の4層基板にしました。
最初はfreeroutingがStackOverflowErrorを出して使えないので4層基盤なら手配線できるだろうと始めたのですが、
徹夜しても完成しない。しないどころか、どうやって完成したものか見当もつかない状態になってしまった。 freeroutingを使うなら1.9.0ですね。
この状態で久しぶりにfreerouting-2.2.4を使ってみると数本だけ配線して200か所以上未配線で終了してしまった。
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のファイルなんてあっという間に転送完了してしまいました。
2025年12月2日火曜日
Amiga 1200 video fix
中古の Amiga1200を使っていて今まで気が付かなった不具合があった。 気が付かなったというのは、Amigaのビデオ出力をNTSCだけで使っていたから。
それを最近になってRGB出力経由で15KHzのモニターに接続してみたのだ。
するとどうだろう、フロッピードライブにアクセスがある度にモニター画面が暗転するのだ。 ドライブにフロッピーディスクを入れてなくてもアクセスは約2秒毎に発生するのですから、 これは使いものになりません。
でも、こんな問題は電解コンデンサーが古くなったのが原因だろうと考えて、コンデンサー を新しい物に交換してみました。でも状況は好転しませんでした。
この現象をFlickerと呼んでいいのかは別にして、 とりあえずFlickerと呼んでおきます。
ネットを検索していますとFlicker現象の問題発生の 報告がありました。最後の方に検索にひっかかったのはDACチップの基準電圧の問題でした。
出典がどこにあったのか忘れてしまいましたが、それによると、 いつの頃かわからないがAmiga1200のDACチップが新しいチップに交換されたらしい。 DACチップの基準電圧として1.2Vを入力する必要があった(古いDAC)のだが、新しいDACチップ では1.2Vの必要が無くなったらしい。その移行がスムーズに行けばよかったのだが 一部フィリッピン辺りで製造されていたマザーボードでは古いDACが無対策のまま出荷されたとの事。 その結果フロッピーディスクドライブにアクセスするとDACへの基準電圧が低下して Flickerが発生する事があるとの事。
Amiga1200のマザーボードになるDACチップのすぐそばに8pinSMDの未取付ランド(D215)がある。そこが1.2V 電圧をDACチップに送る部分です。
対策として、ここに2.0~4.0μFの電解コンデンサーを(-側が4pin,+側が8pin)接続するか、 1.2Vのツェナーダイオードを接続するか、LM385という8pinのSMDを取り付けるといいのだそう。 1.2Vのツェナーダイオードなんてどこを探しても無い!電解コンデンサーは何だか気が引ける。 LM385を探してみたらありました。LM385M-1.2/NOPBという型番。1.2というのは1.2Vという意味 なんでしょうねぇ。
それを取り付けたのが下の写真です。取り付けは簡単に4pinと8pinしか半田付けしていません。 これでFlickerが出なくなりました。
本Amiga1200のkickstart ROMは3.1ではなく3.0でしたので、古いAmiga1200を持っている人には参考になるかもしれません。
【追記】その後、よく調べてみたら古DACの型番が「ADV101KP30」、新DACの型番が「VP101-3BA」のようですね。なので本Amiga1200は新DACですね。つまりFlicker対策版のDACでも30年程の時間経過でFlickerが出現したという事なのでしょう。
2025年8月23日土曜日
Apple IIc ROM version
でも、しばらくすると飽きちゃったのだね。どこかにしまいこんだのか、誰かに譲ったのか、売り飛ばしたのか。 どこを探しても出てこなかった。
だからIIc用のROMが、その後バージョン違いの物が出現した事も知らなかった。
今後ひょっとしてIIcが発掘される事があるかも知れないので、これを忘備録とする。
https://www.apple2faq.com/apple2faq/apple-c-rom-versions/
ここにApple IIc ROMに関する情報がある。
ROM versionの確認にはBasicから
print peek(64447)
とすれば番号が得られる。
ROM255は255
ROM0は0
ROM3は3
ROM4は4
以下に記すのはROM255からROM0へhardware updateの手順。
当然ながらROM0のROMも必要です。そのデータは
https://mirrors.apple2.org.za/Apple%20II%20Documentation%20Project/Computers/Apple%20II/Apple%20IIc/ROM%20Images/
などに公開されているようなので、必要に応じてROMを製作出来そうです。
1) Apple IIcの筐体からマザーボードを取り出す。
2) W1のジャンパーを切り離す。ある種のナイフを使う、とありますが、MOBOを傷つけないように。
3) W2のジャンパーを半田ごてを使って半田ブリッジ(shortage)。
4) ROM0をROM255を取り外したICソケットに挿入。ICの切り欠きが左側になるように。
5) 気を付けてApple IIcをくみ上げる。
ROM255からROM0になって何がメリットになるか
A) IIcの自己診断ができる。起動時に左右のapple キーとリセットキーの3個を押さえて電源を入れると、チェッカーボードをモニター画面に約1分間表示し自己診断モードになる。問題が無ければ"System OK"となる。
B) 3.5インチ 800Kの容量があるUnidisk(model_num:A2M2053)を使えるようになる。ただし、Apple 3.5 drive(model_num:A9M_0106)は使えない。
C) SmartPortが使えるようになる。
ROM3は新しいマザーボードとなりROM0のユーザーにアップルからアップグレードは提供されなかった。
Apple IIe keyborad switch(keyswitch)
キーを押すと左右に大きく揺れてしまうのだ。
キーを押し込んでもモニター画面に「4」が表示されない。
なので、問題のキーを基板から取り外してみた。
指で押さえる部分をキートップ(KEYCAP)と云うなら、そこから下側をキースイッチ(KEYSWITCH)と云う。 スイッチというくらいなのだからキーボード基板の回路をオン・オフするだけのパーツだ。 そしてこのスイッチを分解してみると底部の細いプラスチックが粉々に砕けて、 一部その破片がスイッチのオン・オフを妨げていた。
上図、左上にバネと壊れたプラスチック・パーツが見える。
思うに、誰かが嘗て「4」のキーを握りこぶしで殴りつけたみたいだ。 接着剤を使って何とか復旧を図ったのだが、粉砕状態があまりにも激しくてあきらめた。
そこで、このKSの中古品が無いかと探し始めたのだが名称がわからない。
右側が、今回取り外したKSで左側がeBayで入手したIIe用のKSを頌っていた物だ。左側のKSの型番は「SMK J-M0404」。
こちらの写真で分かるようにキーボード基板に挿入するピンの間隔が2mm程違う。つまり、まったく使えなかった。確かにApple IIeでも使われていたようだが、これは違った。
さて、問題は取り外したKSだけど、型番は案外簡単にわかった。まあ調査不足だったわけ。
問題のKSの型番は「ALPS SKCC」シリーズのよう。
https://telcontar.net/KBK/SwitchCollection/series?id=29
SKCC seriesの中でもcream tallがApple IIe用の製品らしい。Parts number: SKCCAF
そういった情報を元にeBayを探してみると、ありました。
このKEYSWITCHはApple IIからApple IIeにかけて使われた製品のよう(VINTAGE APPLE IIではまた別のKEYSWITCHです)。
そしてSMK J-M0404の方はApple IIeからApple IIe platinumにかけて使われたKSのようです。
という事で久しく使われる事なく道具箱の肥やしになっていたSMK J-M0404ですが
交換後に取り付けるべき"DEL" KEYCAPには以前の所有者が使ったと思われる接着剤と折れたKEYSWITCHの軸が固着していたので、これを除去しなければならなかった。アセトンの手持ちはあるのだが、これはプラスティックを溶かすので使えない。次善の策としてプラモデル製作用に購入していたペイント溶剤(シンナー)があったので、それを塗布して接着剤の固着を「ふやかす」ことにした。これは成功した。小さなマイナスドライバーを使って固着部分を除去する事ができた。
2025年8月3日日曜日
Recap of Amiga2000 Power Supply (PSU)
高圧部分もあるので感電するかもしれませんし、交換に失敗するとPSUが壊れるかもしれません。
ですので注意が必要です。
交換用の電解コンデンサーリストです。
200V 680uF *2
35V 220uF *2
16V 3300uF *3
25V 220uF *1
50V 1uF *5
50V 10uF *2
25V 47uF *2
コンデンサー購入の注意点では680uFの製品なのですが、電源基板上にはほとんど余裕が無いので、200V以上の製品になると多分取り付ける事が困難になると思います。
交換前の680uFコンデンサー2個です。大きいです。
そのコンデンサーの上方にPinソケットがみえます。電源基盤を取り外すときは、このソケットを外します。
680uFのコンデンサーは基板上に基板と同系色の接着剤で固定されていました。最初は気が付きませんでした。ただ、接着剤を処理しないことには、コンデンサーを取り外しできません。
コンデンサーを取り外したところです。右上は新しいコンデンサーに交換後です。見てわかるように周囲との隙間がありません。取り外したコンデンサーの基板上に残った接着剤が見えます。
三個のコンデンサー16V 3300uF です。
電源出力ラインの集合です。右側の少し奥にファン用電源の3ピンが見えます。
ファン用電源の3ピンを上から見たところです。
2025年7月29日火曜日
PiStorm install on Amiga
PISTORMを動作させるには目下、Emu68と今回のようなソースコードからコンパイルする2通りの方法があります。個人的な感想を述べれば、Emu68の方が簡単ですね。
これをRaspberry Pi ImagerでSD cardに先ほどダウンロードしたZIPファイルを指定して書き込みます。
具体的にはCHOOSE OSで「カスタムイメージを使う」を選択してSD cardに書き込みします。 なお、その際にSSHとWiFiの設定は済ませておいた方が便利です。後でもそれらの設定はできるのですが、Pi2WにUSBキーボードを接続しないといけません。そのUSBケーブルもMicroUSB変換しないとPi2Wに接続できません。そしてRaspberry Piの方に先ほど書き込みの終わったSD Cardを挿入してWindowsマシンとUSBケーブルで接続します。 あらかじめWiFiを設定しているとPi2Wはブート時に自動的にWiFiに接続されるのでSSHでホストマシンから操作できます。なおPi2WのIPアドレスを調べるには"Advanced_IP_Scanner"などを使うといいです。Windows10上のSSHクライアントはTeraTermを使いました。
Pi2Wにログインし以下の入力をします。
sudo apt-get update
sudo apt-get install git libsdl2-dev
git clone https://github.com/captain-amygdala/pistorm.git pistorm
cd pistorm
make
エラーが出ていなければ、"emulator"という実行ファイルができているはずです。
次にOPENOCDのINSTALL
sudo apt-get install openocd
OPENCDでは無くてOPENOCDですので。これを勘違いして1月程悩みました。
その後
./flash.sh
sudo ./emulator
で動作するようなります。ただそれではAMIGAの起動時にPISTORMが起動しないので自動起動するように設定します。
sudo vi /etc/systemd/system/pistorm.service
に以下の内容を書き込みます。
[Unit]
Description=PiStorm emulator
After=network.target
StartLimitIntervalSec=0
[Service]
Type=simple
Restart=always
RestartSec=1
User=root
ExecStart=/home/pi/pistorm/emulator
WorkingDirectory=/home/pi/pistorm
[Install]
WantedBy=multi-user.target
ここまででも、エミュレーターとして動作するのですが、設定ファイル(default.cfg)に便利な設定をしてしてゆきます。ここでもかなり悩みました。まず、default.cfgがありません。それにはamiga.cfgというファイルがありますので、これをコピーします。
cp amiga.cfg default.cfg
この設定では同じディレクトリーにkick.romが無いといけないので、kickstartファイルを入手出来ない場合は、上記の設定内容を書き換えるか、設定してはいけません。 個人的にはAmigaForeverからkickstart ROMファイルを購入しました。AmigaForeverは、2025年6月頃に最新のアップデートがあったようで、最新版を入手しました。 ところがdefault.cfgを作ってからpistormがうまく動作しなくなりました。なので、その内容を調査してみました。すると
map type=rom address=0xF80000 size=0x80000 file=kick.rom ovl=0 id=kickstart
の行をコメントアウトして
#map type=rom address=0xF80000 size=0x80000 file=kick.rom ovl=0 id=kickstart
とするとpistormが動作するようになりました。
この行が何をしているかというとkick ROMファイルを参照して、OSを起動しようとしている箇所です。これで何日か悩みました。 でkick.romファイルが壊れているという結論になりました。そこで某所からダウンロードしたkickstart_2.0.romファイルなるものを使いました。 すると再びpitormが動作開始しました。なおPi2Wにkick.romファイルを転送するには初めてWinSCPを使いましたが、これは便利ですねぇ。 Pi2Wのpistormディレクトリに転送したkickstart_2.0.romファイルの名称をkick.romに変更します。
mv kickstart_2.0.rom kick.rom
(後々、考えてみるとAmigaForeverのkick.romが壊れていた、というのでは無いようですね。というのもこう言ったソフトでkickstartROMファイルをチェックする際、どうやらCheckSumを調べているようなのです。つまりAmigaForever11版のROMファイルは新しいので、古いpistormソフトでは認識してくれないというのが実情のようです。)
ここで簡単にAmigaOSの説明をしますとkickstartというのはMS-DOSのようなものです。まあOSです。そしてその上に乗っかるのがWorkBenchです。これはMS-DOSの上に乗っかったWindowsという例えでしょうか。まあGUI-interfaceですね。でAmigaOSには世代がありまして、
最初のAmiga1000には
kickstart1.2
次の世代Amiga500,Amiga2000には
kickstar1.3
という具合です。ですのでAmiga500などが新しいOSを使おうとするとkickstart2.xなりのROMチップを海外から個人輸入しないといけませんでした。それを思うとネットからダウンロードしたファイルを使えるのですから便利になりました。
2025年7月24日木曜日
Amiga2000 motherboard repair
2025年6月20日金曜日
Apple IIe Power supply explosion
2025年5月31日土曜日
Repair Astec Power Supply for Apple IIe
| 電圧 | 容量 | 個数 |
|---|---|---|
| 10V | 220μ | 3個 |
| 10V | 1000μ | 4個 |
| 16V | 680μ | 1個 |
| 16V | 330μ | 2個 |
| 250V | 47μ | 4個 |
【参考】 (1)回路図とパーツリスト:https://bitsavers.org/pdf/apple/power_supply/Astec_Power_Supplies_Aug82.pdf
2015年9月13日日曜日
MacOSX86でHDDをパーテションしたら
boot0:GPT
boot0:test
......
boot0:boot1h?
でストップするようになりました。HDDデータは無事でしたので、一旦別のHDDに全てのデータを移してから該当のHDDをディスクユーティリティーを使ってパーテション(フォーマット)してシステムを再インストール・MultiBeastインストール・4TBのHDDでも起動可能なようにboot loaderを書き換えて修復完成のはずでした。でも駄目だったんです。同じ箇所でストップするのです。
どうやらパーテションが同一の物だとEFIエリアの書き換えまでやってくれないようです。確実にEFIを新規にするにはHDDのパーテションを1から2にした後で再度1に戻してやればよかろうと思い至りました。そこでディスクユーティリティーを使ってパーティションを2個(2TB+2TB=4TB)にしました。そこまではよかったんですがパーティションを2個から1個にする事ができません。パーティションマップは表示できるもののパーティションを変更するためのタブやボタンがグレイに変わって一切の入力を受け付けてくれません。ディスクユーティリティーって結構オバカだったみたいです。
仕方が無いのでterminalでdiskutilコマンドを使う事にしました。使い方のキモは本家アップルのサイトに簡単な説明があります。
https://support.apple.com/kb/PH8292?locale=ja_JP&viewlocale=ja_JP
ですが若干の補足があったほうがいいようです。以下はその補足です。
ターゲットのHDDはMountainLionX86です。デスクトップ上には"MountainLionX86"と"MountainLionX86 2"の2個しか表示されていませんが、実際は3個のパーティション、ここではdisk0,disk2,disk3に分割されています。
disk0から消去しようとしましたがデスクトップ上に表示されていないのにunmountしないと駄目みたい。
diskutil unmount /dev/disk0
とやったら、ディスクを丸ごとunmountするにはunmountでは無くunmountDiskコマンドを使えとの事。
diskutil unmountDisk /dev/disk0
で無事にアンマウント完了。すぐに
diskutil eraseDisk JournaledHFS+ MacProHD GPTFormat disk0
で消去できるのかと思ったらエラー。
ひょっとしてdisk2,disk3を先に消去しておかなければ駄目なのかと、早速消去。でもpartition mapが無いから消去できないとつれない返事。
実際のところdisk2,disk3はunmountDiskだけでOK。後はdisk0の消去でパーティションは1個に戻す事ができました。
このHDDにシステムを再々度インストール・MultiBeastインストール・4TBのHDDでも起動可能なようにboot loaderを書き換えて修復完成となりました。
2014年12月24日水曜日
パーコンの故障
そのまま3ヶ月ほど経過したある日、そのパーコンを shutdown しすると何だか物の焦げたように臭いがしました。翌日いくら起動ボタンを押してもウントモスンとも云わなくなってました。どうやらマザーボードが死んだようです。ビデオカードの不調を放置していたためにマザーボードの故障を招いてしまったと深く反省する結果になりました。
その後1ヶ月して、今度は別のパーコンが壊れました。 Core-i7 2600K, GA-Z68X-UD3-B3 マザーボードで、4年程前に組み上げたものです。これは起動ボタンを押しても、一瞬だけファンが回転するものの、すぐに動作を停止してしまいます。電源の故障じゃないのかな?と考えて、先に壊れていたパーコンから電源を取り出して交換してみる事にしました。取り出した電源ボックスを開けてみると、中に大量のワタ屑のような埃が詰まっていました。これを綺麗に取り除き Core-i7 2600K マシンの電源と交換しましたところ、無事に起動ボタンに反応して動作を開始するようになりました。
それほど酷使したわけでもないのに4年程で壊れる電源ってどうなってるんでしょう?
今年は本当にいろんな物が壊れて交換が必要になりました。
2014年12月22日月曜日
NaviStudio5
近所のカーショップで幾つかの条件をテストした製品を探してみました。
(1) 出雲大社まで道案内できる事。これ、やってくれなかったんですよね。
(2) 二階建ての道路で、どの階を走行しているのか認識できる事。
(3) 高速道路に入るインターチェンジを指定できる事。
(3)は目の前にある阪神高速に入りたいのに、中国自動車道へと案内されるというひどい目に遭った経験からです。この条件で満足できるカーナビに付け替えて、古いカーナビは一応たたき壊して下さいとお願いしておきました。
この新しいパイオニアのカーナビ、向こう3年間無料で道路情報の更新データをサーバーマシンからWindowsマシンに接続した 'SD Card' にダウンロードして、カーナビのデータを最新に保てるんです。これまでに数回小規模のアップデータが公開された事がありましたけれど、無事にデータ更新を済ませる事ができました。そして、ついに最初のメージャーアップデートがありました。データ量は8GBほど。それまでと同様の手段でダウンロードしたデータを 'SD Card' に書き込んで行くんですが40%を越えたあたりで必ずエラー発生によりデータを 'SD Card' に書き込み失敗します。
こういう場合は、元データが悪いか 'SD Card' が悪いかに決まってます。でも元データは公開されてから既に1ヶ月以上経過しており、データに問題があれば、すぐに訂正されたはずです。そこで 'SD Card' を交換したり、新品にしたり。でもエラーは続きます。1回のデータダウンロードで、それが失敗したと判明するまでに1時間ほどかかりましたので、20回の失敗で20時間ほど無駄な時間を過ごしました。
ここまでで、ははん、と見当のついた人は偉い!
ふと思いついて 'SD Card Reader' を古い物に交換してみました。これで、エラーは出なくなりました。
この粗悪品の名称は ELECOM MR-A39HWHF1 made in China でした。もっときちんと壊れてくれれば苦労しなくて済んだのに、、、。
2014年9月22日月曜日
4TB hard drive and GA-Z68X-U3DH-B3 firmware update from BIOS to UEFI
これは何か変だとやっと気がつきました。ネットで調査したら BIOS 起動の Windows の HDD(NTFS) では 2TB までしか認識できないのね。Mac OSX では大昔に HDD 容量制限は事実上なくなっていたので完璧に不意をつかれました。では、BIOS 起動の OSX86 ではどうなのか?当然ですが、2TB までしか認識しませんでした。何しろ使っているマザーボード (GA-Z68X-U3DH-B3)が古かったようです。ウィンドウズの世界って変化が激しすぎてついていけません。問題解決には BIOS を UEFI という物にアップデートしないといけません。そのためには USBメモリーに Bootable DOS システムを作成する必要があるとか。しかも 2GB 以下の容量のUSBメモリーでないといけないらしい。これが無いのです。どこの店を探しても4GB以上のUSBメモリーしか置いていない。変化が激しくて、、、
2GB microSD card を見つけることができたので、それを使って Bootable DOS システムを作成しました。Gigabyte から U1L(UEFI BIOS) というファイルをダウンロードして解凍すると update_uefi というフォルダの中に autoexec, FLASHEFI, Z68XUD3H.U1l という3個のファイルがあるので、それを Bootable DOS システムを作成した UBSメモリーの中にコピーします。
そして作成した USBメモリーをブートドライブに指定して起動させると BIOS から UEFI への書き換えをやってくれます。この辺りはここが参考になりました。
簡単に書いてますけど、やってる最中には胸ドキドキですね。で肝心の hard drive は 1.8TB partion のまま、MacOSX の DiskUtility で NTFS から GPT format に変更していました。これを UEFI 起動した Windows7 でいじって何とか 4TB RAW Volume に復帰できました。RAW という表示は初めて見ましたけれど、要するに Windows じゃ認識できないという意味らしいです。
さて、次に OSX86 10.7.5 Lion を起動させてみると BIOS boot では問題なかったんですけれど UEFI boot では kernel panic をきたして起動不能になっていました。BIOS から UEFI への書き換えに失敗したに違いないと思いましたが、考えてみれば Windows7 は順調に起動、いや BIOS の頃と比べると起動時間が随分と短縮しています。それに MultiBeast boot までは問題なく動作しています。そこから MacOSX に起動プロセスが移ってすぐに kernel panic となっているので、問題は OSX86 10.7.5 drive 上のファイルにある事になります。OSX に問題はないでしょうから 86 部分、つまり /Extra/ 以下に問題がある事になり、/Extra/DSDT.aml を削除すると kernel panic が発生しなくなりました。
これでやっと 4TB hard drive を使う準備が整いました。
2014年8月4日月曜日
KINIVO USB bluetooth dongle BTD-400 in OSX 10.5.8 Leopard
そこで前回やった kext の Info.plist の書き換えをします。するとうまく認識されて使えるようになります。ただどの程度使えるのかは試してみないと分らない。
productID=0x21e8(8680)
vendorID=0x0a5c(2652)
という認識で書き換えた Info.plist では MediaLink BT4.0 adapter と同じになっています。
これを Apple wireless keyboard 2011, magic mouse で使ってみました。ペアリングは簡単にできました。再起動してもマウスやキーボードを自動的に認識します。ですので通常の使用には問題ありません。しかし、スリープからの復帰は不可でした。HID Proxy 非対応ですね。「コマンドキー+S」や「オプション起動」はできません。
余談ながら、KINIVO BTD-400 を X86 OSX 10.7.5 で使ってみました。本例と同様の Info.plist の書き換えしないと認識されません。使っていて kernel panic が2回ありました。一度コンピューター本体の電源を切ってから起動してみると kernel panic をきたさなくなりました。
この KINIVO BTD-400 Ver. 4.0 と同等の製品があります。
I-O DATA の USB-BT40DLE です。そもそも使われているチップが KINIVO BTD-400 同じ Broadcom製で同一の productID と venderID を持っています。使っている側からは、この2製品は同じ製品に見えます。通常の使用には問題ありませんがスリープからの復帰は不可で HID Proxy 非対応です。まあ、いずれの製品にしても OSX 非対応なのに OSX 対応を謳った製品の方が使えないという皮肉な結果になりました。
2014年7月26日土曜日
Belkin USB bluetooth dongle F8T016 in OSX 10.5.8 (Leopard)
その場所は "/System/Library/Extensions/IOBluetoothFamily.kext/Contents/Plugins/BroadcomUSBBluetoothHCIController.kext/Contents/Info.plist" にあります。そのInfo.plistの内容です。
●これは OSX 10.5.8 (Leopard) の Info.plist を Property List Editor による一部表示です。
●そしてこちらは OSX 10.8.5 (Mountain Lion) の Info.plist を Property List Editor による一部表示です。一見して分るのは項目数が増えている事です。
これは OSX 10.8.5 (Mountain Lion) のInfo.plist の中の belkin USB dongle F8T016 の定義部分です。一番上の行の右側にある <> は明らかにゴミなので削除して下さいね。
この定義部分を"PASTE HERE !!!" の部分にペーストします。以前にペーストする場所を "Microsoft Bluetooth 2.0 USB Dongle" の下に置いてみたら動作しなかったので、上にしておいた方がいいかと思います。
ただし、Mountain Lion と Leopard ではその記述に若干の違いがあるので、ペーストしたものを一部 OSX 10.5.8 用に修正します。
これは OSX 10.5.8 (Leopard) にパッチ後のProperty List Editor による表示です。ついでですから Belkin 以外にも IOGear や MediaLink の定義も追加してみました。
最終的に、システム環境設定のBluetoothの詳細設定で、うまく「Bluetooth デバイスがスリープを解除することを許可」にチェックが入るようになりました。
ただ Belkin USB bluetooth dongle F8T016 といってもバージョン違いがあるらしく、F8T016ng という製品を使いました。F8T016ne でもOKらしいとはネット上の情報です。分らないのはパッケージのどこを探しても ng やら ne などの表記がされていない事です。














































