主な機能は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は昇天してしまいました。








