DOSEmuメモ (2) NFS

割とあっさりできました.ここを参考にしました.

デーモンの立ち上げは,Slackware64 15.0ではこんな順番でした

/etc/rc.d/rc.rpc start
/etc/rc.d/rc.nfsd start

唯一引っかかったのは,サーバーへ接続しようとしたクライアントのポート番号が大きすぎたため,最初の設定ではマウントできなかったことです.

これは,VMWareのクライアントであるSlackware64が,ホストであるMac miniのNAT経由でサーバーにつなごうとしたためだと思います.そこで,ホストの/etc/exportsに “insecure” オプションを追加しました.

nfsでマウントさせるディレクトリー    MacminiのIPv4アドレス(insecure,rw)

これで,マウントしたサーバーのディレクトリーをdosemuのD:ドライブにして,dosemuから読み出せることを確認しました(書き込みはまだやってませんが😅).

Linuxマシンの間ではUser IDを統一しているので,そのへんの問題も生じませんでした.

rc.rpcとrc.nfsdを実行可能に変更したので,次のサーバーのブート時には自動的に起動するはずです.

電波時計校正に疑似JJY

わが家は鉄骨ラーメン構造で,屋根にも外壁にも鋼板が使われているので,屋内の電波環境はよくありません.いまではAMやFMをラジオの内蔵アンテナやロッドアンテナで聞くようなことはないのですが,昔もよく聞こえなかったと記憶しています.

電波時計の校正に使われる40kHzおよび60kHzのJJYも場所によって受信できたりできなかったりです.

特にシャックのメインの時計は定位置では全く校正ができず,放って置くとどんどん時間が進みます.一度無線クラブのオンエアミーティングで呼び出したとき,1分くらいフライングしてしまい,メンバーに少し早いんじゃないといわれたことがあります.実害といえばそのくらいなんですが,合っていない電波時計ってその存在意義が問われます.

電波時計.JJYと同期していると液晶の右上の角に同期のマークが表示される.

それで,週に一度くらい窓辺に置いて同期しますが,1か月くらい忘れることもしばしばですし,夏場の窓辺は高温になるのであまり時計に良くないです.

最近SNSのお仲間がM5ATOM Liteと専用基板を組み合わせた疑似JJY発信機を紹介してくださったので,早速真似しました.どちらもスイッチサイエンスから買えます.

ハードウェアは特に組み立てるというレベルの話ではなく,ピンヘッダーを合わせて差し込むだけです.

ソフトは結構手こずりました.Arduinoはかなり昔に少しいじりましたが,すっかりご無沙汰です.最初macOS用のArduino IDEをダウンロードして,ドライバーが要るとか要らないとか言うのでM5StackのサイトからCP210x用のドライバーをダウンロードしましたがどうもこれは違うようです.

次に一番得意なSlackware64に移り,どうもCP-210xでなく,FTDIのドライバーと当たりをつけ,とりあえずUSBポートにM5ATOM Liteを差し込むとKernel moduleがロードされUSBポートとして見えました.

ここまではそれほど時間はかかりませんでしたが,ここから先が長くて,シリアルポートは認識されましたが,なかなかボードが認識できません.というか,ボードのリストにM5Stackのシリーズが表示されません.あっちのPC,こっちのOSと移りいろいろためしました.

これは結局,ボードマネージャーにesp32を追加する必要がありました.ようやくそれがわかって最終的にmacOSでSketchを書き込み,動作させることができました

昨夜仕掛けて朝の段階で,電波を受信して同期しているマークが表示されています.

無事,JJYと同期しているマークが表示されている.

余談ですが,あっちのPCこっちのOSと移っている間に久しぶりにWindows 10 (32bit)も起動してみました.そしたら,Google Driveがもはや32bitはサポートしていないよと言って,自らをuninstallしてしまいました.また肝心なArduino IDEも32bit版はありませんでした.もう32bit OSは使えないですね.

Linux Kernel driverでは,ftdi_sio.ko.
“M5なんとか” ではないんです😅
Mac miniにはFTDIのUSBシリアルコンバータを2つつないで使っているので,敢えてドライバーの追加は不要ということが試行錯誤の過程で解りました.

Bochsメモ (3) dosemu以外だめな模様

結局,dosemu以外では動きませんでした.

なかなかFreeDOS/VをHDDにインストールできませんでした.FreeDOS/V 1.38のフロッピーイメージから起動して,空のディスクイメージファイルをHDSETUP.BATでフォーマットしようとしてもエラーが出ます.

そこで,FreeDOSの最新版(英語版)を当該のディスクイメージにインストールして,HDDイメージからブートできることを確認したうえで,FreeDOS/Vのフロッピーからブートして,

FORMAT C: /S

を実行したらエラーなくフォーマットできましたので,このあと手作業でFreeDOS/Vのファイルをコピーしました.

そうしたら,KVM/QEMUでもBochsでもこのディスクイメージからブートできるようになりました.

しかし,Control + Space を押しても鳳が起動しません.

macOS上のBochsにて,ディスクイメージにインストールできたFreeDOS/V 1.38を起動したところ.CNTL+Spaceを押しても半角スペースが入力されるだけで鳳が起動しない.

KVM/QEMUでも同じです.

一方dosemuで起動後に Control + Spaceを押すと,

dosemuが起動して, CNTL + Spaceを押して鳳を起動したところ.

このように,右下の隅に “鳳” の文字が表示され,単漢入力モードになります.

残念ながらFreeDOS/V + 鳳をインストールしても,dosemu以外(Bochs, KVM/QEMU)では単漢入力ができない,というのが現時点での結論です.

xzにsshのバックドア

久しぶりにセキュリティー界騒然の事態ですね.劇場型のやり取りなどで3年がかりでxzのメインテナーに加わった人物がxzにsshのバックドアを仕組んだそうで,スパイ映画さながらです.

問題になるのは,xz (liblzma) 5.6.0と5.6.1だそうです.日常的なファイルの圧縮展開に利用されるばかりでなく,圧縮効率が高いため多くのdistroがパッケージをxzで圧縮して配布していてます.

手元のMac miniではMacPortsを使っているのでxzが入っているはずです.調べてみると(注意: xzコマンドを発行してバージョンを調べるのは危険かもしれません),

まさにドンピシャのものが入ってました.早速,

port selfupdate
port upgrade outdated

をかけたら,安全とされる古いバージョンに戻りました.

ちなみに,手元のいくつかのdistroで調べたところ,Slackware64とARM (32bit)の15.0は5.2.5で問題なし,Debian BookwormとRaspberry Pi OS Bookwormも5.4.1で問題なしですが,ManjaroはAMD64, ARM64とも5.6.1で今のところupdateは来てません(2024年4月4日09:35JST現在)

圧縮のスピードはかなり遅いですが😅
ただし,Slackware AArch64 currentは5.6.1です.他のアーキテクチャーのcurrentも5.6.1の可能性が高いです.
Manjaroは配布パッケージの圧縮にgzipを使っているようなので.ユーザーがxzをなにかの目的で使わなければ大丈夫なのかもしれません.

DOSBoxメモ (9) 一から出直し

行き詰まってしまいました.というのは,DebianのBochsがまともに動いてくれないのです.起動するとすぐにデバッガーに落ちます.

動作をまとめた表には, “Installed and working” としていましたが, “Installed but NOT working” にしました.Raspberry Pi 5 Model B (RPi5)のRaspberry Pi OS (RPiOS)も同じです.これらの環境ではインストールに成功して試しもしないで動くものだと思い込んだようです.

なんかDebianはモジュール化にこだわっているようで,Bochsを動かしたいだけなのに,いくつものバッケージをインストールする必要があり,それに過不足があるのか他の設定に問題があるのか,そのあたりかなり手強そうなので,もうこれ以上追求しません.

現在Bochsがまともに動くことを確認している環境は,Slackware AArch64 current (RPi5), Slackware ARM 32bit 15.0 (RPi4), macOS (Mac mini & Macbook)のみです.

スピード的に,CPUをエミュレートするRPi4, RPi5は不利なのでマクドで行くのがよさそうです.

しかし,マクドではQEMUの環境を整えていないので,Bochsのディスクイメージをホスト側でいじる事ができません.

なら,Slackware64でいこう,ということになりました.Slackware ARMとAArch64でbuildできて動くんですから,AMD64用OSならまちがいなく動くでしょう.

また,方針も大幅変更で,クリーンインストールにより最新のFreeDOSが動くようにして,そこになんとか鳳をはめ込む方向にします.

RPi5はまだなんとか使えそうなスピードですが,RPi4は無理です.
関東ではマック,関西とフランスではマクド.
仮想ディスクイメージをnbdによってボリュームとしてマウントする事ができない.