日記 (2024年01月)。

2024/01/01 (月)
あけおめ。
Misskey のローカルビューワをデコレーションに対応させてみてるけど、 連合の向こうの Misskey からは avatarDecorations が来ないんだな…。 どういう仕組みなんだべ。 しかも angle も offset も単位が分からんな…。
日高里菜氏のご報告きたーー。ちょっと横になる。 てか、りゅうおうとあいちゃんというか、まれいたそと義姉妹になるのか。 それと大和田仁美さんもご結婚されてて、アコとセッテさんじゃん。
毎年恒例の実家。 16時すぎ、晩飯の材料が足りないかもだからちょっと買ってきてって言われて 近くのスーパーへ行って呑気に戻ってきてみたら、 能登半島で地震のニュースで埋まってた。 震度 7 で津波警報。正月からめちゃくちゃだなおい…。 この辺も震度 2 はあったらしい。 新潟の義妹の実家のほうも無事だったようでひとまずは安心。

2024/01/02 (火)
Misskey のローカルビューワ、 MFM を preg_match で書いてたのでネストが処理できなくて、 ただあれを使ってるのはたまの地震速報くらいなので面倒で放置してたけど、 さすがに昨日からのバックログが読みづらいったらありゃしないになったので、 イベントドリブンで実装した。 おかげでこっちも面倒だからって放置してた URL のパースが雑な件も片付きそうだし、 もう少し頑張ればルビにも対応できそう。
matoken :fox: - ttyd 経由でsayakaちゃんを起動してみる。web アプリみたいですね。 どういうことなの?w
[NetBSDとか] NetBSD/virt68k とは…。 というか令和にもなって m68k port が増えることあるんだ…。

2024/01/03 (水)
[NetBSD/x68k] Goldfish-RTC とかこれ pxhtc でやろうとしてたのと同じだな。

2024/01/04 (木)
カゲマス。年末から1周年やら何やでたくさん石貰ったので (去年の復刻?)晴着ガチャ引いてみて、大人アルファ様やっときたよー。
[アサルトリリィ] 山﨑悠稀さん:この間ルド女一年会してきました (にゃんは用事で来れなかった)。 ルド女の同窓会(?)見るとニコニコしてしまう。 しかし、小菅さんとさなしまで入ってるの珍しいな。

2024/01/05 (金)
[nono] NetBSD/virt68k で使ってる gfrtc は 毎回ワンショットで次回のイベント発生時刻 (今からの間隔ではなく) を指定するタイプなので、使い勝手もまあまあ悪いけどそれはともかくとしても、 こっちの内部の都合と相性悪くて、 周期的にパルス出してくれるだけのほうが楽なんだよなーと思ったけど、 あれ? それ MFP の現行実装じゃね? うーん。
[NetBSD/x68k] でその辺調べてて気付いたけど、timecounter(9) は最大 2 * Hz (HZ=100 なら 20ミリ秒) カウント出来ないといけないって書いてあるけど、 mfp(4) 使った timecounter は 12.8 ミリ秒しかカウント出来ないような。 今の Timer-D 使った実装は知らない人が 2006年にさくっと追加したもので、 timecounter(9) の manpage にこの記載を筒井さんがどっかから持ってきたのが 2008年。うーんこの…。
カゲマス。アンネローゼ・フシアナスさんきたーwww (フルネームで言いたい)
[アサルトリリィ] 槙原唯さんと矢澤梨央さんのスペース。 22時半頃開始して、途中から真田うるはさんが加わり矢澤さんが脱落したりで 1時半すぎまでたっぷり3時間。

2024/01/06 (土)
[NetBSD/x68k] NetBSD/x68k の _delay((us) << 8) が20年くらいずっと気になってたけどついに直した。 256 倍という数字に重要な意味はなくて、 与えられた us をループで減算していって時間が経つのを待つ方式なので、 us = 1 とかだと1回目の減算で引き終わってしまって 0.数マイクロ秒 (1ループあたりだけど)しかかからなくてこれでは精度が足りない。 68030 なら8倍とか10倍にかさ上げすれば動きそうだけど、 ぎりぎり小さい倍率を攻める必要もなく100倍とかそんな感じでいいので きりのいい <<8 という意味なのかな。 ただそれがマクロの外に出てるから何か底知れない理由があるのだろうか… と20年ほど思ってたけど、たぶんないよな(´・ω・`)。 というかコメントのない古いコード読んでる時毎回 「もしやこれは何かの暗号…? 陰の叡智…??」 みたいなシャドウガーデン気分だわよ。

2024/01/07 (日)
[NetBSDとか] Jason Thorpe: Ok folks, here's NetBSD/virt68k booting multi-user after running through the installer …。たぶん QEMU/68040。

2024/01/08 (月)
[アニメとか] ぽんのみち #1。 尾道アニメと聞いていたのでしぶしぶ見てみたけど、 語尾に広島弁要素入れただけの関西弁なのはなんなんだ…。 てか、広島(安芸)人がだいたい同じ感想だったw

2024/01/09 (火)
[NetBSD/x68k] mfp のやつ、仕様の 20ミリ秒に対して 12.8ミリ秒なので1ビット足りないんだけど、 割り込み禁止中に繰り上がりが起きたら IPRB にビットが立つのを利用すると 1ビット伸ばせるとかいう真田さんみたいな話が出てきた。本当かよ。
[アサルトリリィ] ラスバレ、レギリの決勝戦を配信するってんで何が見れるのか分からんけど見てみた。 最後の最後、1秒か2秒で逆転しててもうなんだこれ。 というか、聞き馴染んだ曲が流れてるだけの別のゲームだったな…。

2024/01/10 (水)
[nono] nono の描画ルーチンは AVX2 でも用意はしてあるけど、 AVX2 を有効にするかどうかはコンパイル単位で切り替えないといけないのが面倒で ずっと #if 0 のままだったけど、ようやく対応してみた。
で、ビルドマシン兼展示用として余生を送ってる ThinkPad X201s 君、 いうて展示用にするには (ebijun さんのラズパイ (4?) で nono が4つ動いてる隣で) こちとら nono 1個であっぷあっぷしてるし、 それ言うとビルドだって隣にある Core i5-9400F 上の VirtualBox でやったほうが速いので、じゃあ一体何が出来るの!! (秋津洲画像略) と思ってたけど、 ここでまさかの「amd64 だけど AVX2 をサポートしてない CPU」 の動作確認で役に立ったわ…うん…(´・ω・`)

2024/01/11 (木)
SA さんのツイート:領土問題が激しい世界線の広島県の教科書。草
Misskey の「な」を「にゃ」にする cat モード、 いつの間にかクライアント実装に変わったのな。 以前はサーバから送られてくる情報の時点で「にゃ」になってたので 原文を復旧することは出来ないという問題はあったんだけど (したいかどうかはともかく)、 今度は、対応してないサーバ上で読むと「にゃ」にならないという問題 (困るかどうかはともかく) が起きるのだが。 この辺ほんとに若者が雰囲気だけで作ってる感じがするよなー。 まあそれはともかく、クライアント側処理になったのでありがたく うちのローカルビューワもひらがなの「な」だけ対応しておく。 本当は「ナ」も「ニャ」に変えるんだけど、 カタカニャの方は固有名詞を変更してしまいがちにゃのでやらにゃいほうが読みやすいんだよにゃ。

2024/01/13 (土)
季節の恒例行事みたいになってきたリモコンの接点修理。 フリーレンが地上波で毎週時間が変わるのでリモコン効かなくなっても 1週間以内に直さないといけない (追っかけ機能はあるにはあるけど万全ではないし)。 地上波全部やめれ…。
[アサルトリリィ] 17時からラスバレ放送局3周年公開生配信。 今度は石飛さんが体調不良で代打にためちゃん。

2024/01/14 (日)
[nono] ただの ELF の実行ファイルを /boot から実行できれば、 NetBSD の起動を待たなくても netboot でテストが即実行出来て便利なのになーと 思って調べてたけど、 loadfile() が ELF に書いてあるロード先アドレスを持って帰らないっぽいので、 無理かな。
[nono] 一方、X68k をリセットした時にたまに起きるエラーが発生しましたの原因になる スプリアス割り込みを大分減らしたはず。 壮大な状態マシンなのでとにかくきっちり作れという話だな、はい…。
[青春ブタ野郎] 青ブタ特番配信を見てた。 舞台挨拶か何かに何年かぶりにいのりんが登壇したらしいけど、 てかゆめみる少女以降翔子さんの出番が減って、 不思議要素のないただの不登校とヤングケアラーの話になってるので悲しい。

2024/01/15 (月)
[NetBSD/x68k] mfp に IPRB ハックを入れたパッチで様子を見てるけど、 どうにも (起動後1回だけ?) backwards のメッセージが出てしまうっぽい。 うーん、もう捨てるかなあ。

2024/01/17 (水)
[nono] [NetBSDとか] MFP の件がどうにも動かないので、むしゃくしゃしてやった。今は反省している…。
というわけで、ちょっと面白そうだったので nono で NetBSD/virt68k を動かしてみるテスト。
三貴さんの年末とーくのちぇき、 年始に発送連絡が来たのに2週間経っても届かないのでお問い合わせしてみたら、 処理の都合上発送連絡を先に立てたけどまだ発送してないとのことだった。 ちょうど先月末にうちに間違い郵便が来たばっかりだったので、 郵便事故かと思ってたけど、そうでないならまあよかった。

2024/01/18 (木)
[NetBSDとか] NetBSD/virt68k、たぶん QEMU が 68040 しか動いてないのか 68040 が動くので 68030 を動かすメリットがないのか分からんけど、 68030 の場合に I/O 領域を TT でマップする処理がまるっと抜けてたので書いて commit したった。

2024/01/19 (金)
[アニメとか] 前期の豚レバ、最終回放送されてなかったんか。 なんか終わったんかどうかもよう分からん終わり方したような… と思ってたわごめん。
[アサルトリリィ] これは明日で3周年 (今日で満3年) のラスバレの今日のログボ画面。
[アサルトリリィ] りりぃずたいむ。 来月ライブなので楽曲がテーマだったけど、 なぜか盛り上がったアサルトリリィ音頭の太鼓のくだりで 「幸恵様」とだけコメントが流れていっていまいち文脈が分からなかったけど、 その後「円環の御手は太鼓のためじゃねえよ」みたいなコメント流れてきてお茶吹いたw
[宇宙とか] 0時半頃、SLIM の月着陸。 JAXA 公式がリアルタイムにテレメトリを流してくれるとか随分進歩したよな。 あの見せるための画面作るだけで数か月かかってるとか言ってたけど、そうだろう。 で、着陸は成功はしたっぽいけどなんか確認中のまま、 1時半も回ったので流石に寝る…。

2024/01/20 (土)
[宇宙とか] 一夜明けて、着地した向きが想定と違ってて太陽光パネルで発電が出来てないっぽい。 でも着陸自体が目的なんだから成功は成功なんだよな。 なんかもにょる感じになっちゃったけど。
[nono] OpenBSD/luna88k (nono) で xeyes が落ちるらしい。まじかー。 実機でも確認したいところだけど、 そのためにはまずはいい加減バージョンを最新まで上げないとだが、 それをするにはファンがうるさすぎてだな…。
[NetBSDとか] virt68k というか "virt" は QEMU が用意した仮想の(マザー)ボードみたいな感じなのね。 仮想マシンと言ってしまうといわゆる VM と語弊があるので、 実在しない架空のマシンの構成仕様とでもいうほうがいいかな。 それをアーキテクチャごとに (たぶん勝手にいい感じに) 定義したものらしい。 arm と risc-v 版のハードウェア構成のドキュメントは見付けたけど、 m68k 版は見当たらないな…とかはあるけど、 とにかく、それをターゲットに動くのが NetBSD/virt68k と。

メモリ構成は、0番地からがメモリ、 そして一番後ろの 0xff'000000 から 0xff'ffffff の 16MB が I/O 空間。 うーん、シンプル。 I/O は Goldfish PIC、Goldfish TTY、Goldfish RTC+Timer、 VirtIO と Qemu Virtual System Controller の大きく5種類が定義されてるようで (それぞれの中で小分けのデバイスに分かれていたりはする)、 そのアドレス配置と割り込みの接続先情報は すべて BootInfo という構造でカーネルに直接渡される。

Goldfish PIC は汎用割り込みコントローラ。 出力は1レベルで最大 32 入力を受け付けることが出来る。 これを m68k の Lv1 から Lv7 へ1個ずつ、計6個つなぐ。 あとは割り込みを起こしたい周辺デバイスは、 割り込みを上げたいレベルを担当する PIC のどこかの入力ピンに接続する (もちろんハードウェア的に) ということ。 virt68k に限って言えば BootInfo で接続先が決まる。

Goldfish TTY は準仮想化されたシリアルコントローラのようなもの。 Goldfish RTC+Timer は準仮想化された時計とタイマーデバイスのようなもの。 この Goldfish デバイス群はどうやら Google が Android のエミュレーションのために考案したデバイスのようで、 ドキュメントもあるにはあるけど、なんというかいろいろひどい。 定義も仕様も雑だし、俺が使えればいい、俺は分かってるから読む必要がない、 みたいな文書で、 実際 RTC+Timer はこの仕様では不十分なので QEmu がたぶん勝手にレジスタ増やしてる。 という感じなので、 ドキュメントは一度ざっと目を通して後は Qemu のソース読んだほうがマシ。

VirtIO は出始めた時から面白そうだとは思ってたけど、 ずっと PCI 専用だと思ってたので、 それなら m68k では使えないなと思ってたけど (実際当初の仕様は PCI だけだった…のかな?)、 どうもメモリマップド I/O 版 (MMIO) も定義されているらしく、 virt68k ではこっちを使う。

Qemu Virtual System Controller は、 大仰な名前の割に単にこのマシンの電源を落とすための書き込みレジスタ (とこのデバイスを見つけるための読み出しレジスタ)。 とは言えこういうのがちゃんとあるのとないのでは天地の差はある。


2024/01/21 (日)
[アニメとか] [宇宙とか] 隕石の落下予測とか、もうあと一歩でストラトス・フォーの世界じゃん。
[NetBSDとか] NetBSD/wii (evbppc) とは…。
[NetBSD/x68k] MFP の件は、その後何回か再起動して数日稼働させてみてるけど、 起動してどのくらいか (数分から数時間) で1回だけ backward のメッセージが出るけど、 その後は数日間では出てことはない。 最初の1回だけってなんだべ。 しかし、これで何かが改善するわけでもないのであまりテンション上がらない作業だな。
[nono] virtio がデバイスとしてとりあえず認識出来るところまでは来た。 レジスタには 32 ビットのマジックナンバーが読み出せるレジスタがあるので、 ここでこの virtio がどっちエンディアンで動いているかは分かる。 というか元は PCI なのでリトルエンディアン一択だけど、 こう用途が広がってエンディアンが判定できるとなると まあおそらく大抵はゲストエンディアンで動かすよね。 という風潮が感じられるので、うちもレジスタはゲストエンディアンにしてみる。 一方、その 32 ビットレジスタ群とは別の構成レイアウト領域という構造体生データ置き場があって、 ここのエンディアンを反転するとどうなるかで頭を抱えていたけど、 さすがにこっちはリトルエンディアンだった。 というかそうじゃないと無理だ。

2024/01/22 (月)
[宇宙とか] SLIM の記者会見だけど、思った以上の大成功だった。 着陸直後にしーんとしてたのは、 バッテリーを保護してバッテリーが生きてるうちに必要なデータを全部吸い出すという 緊急作業が必要になったからってだけだったのね。

2024/01/23 (火)
[アニメとか] カゲマスの次の期間限定イベントなんだけど、 キャストが姉、弟、新妻なのすげーなおいwww
[nono] ちょっと別件で久しぶりに nono のパフォーマンス測ってみたら、 0.6.3 を出した翌日の修正で m68k コアのパフォーマンスがめっちゃ上がってた (440% → 610%)。 複雑なマクロのおかげで、デバッグレベルを調べるのと printf 用の引数作る順序が逆になってたんだよね…。 てことで、次回リリース時に過去の changelog 増やさなきゃw

2024/01/24 (水)
[お天気] うっすら積雪。車の上で 2cm とかそんなオーダーじゃないかな。 近くで見てないからわからんけど。
でそんな外が氷点下というのに、 台所で虫の死骸と米粒をより分けるスクリーニング作業…。 でも本当にこれで最後だ。

2024/01/26 (金)
[nono] virtio-block、少しレジスタ作ってみたらゲストからアクセスに来てゲストが panic した。

2024/01/27 (土)
LUNA-88K、爆音すぎて部屋で電源入れたままでは安眠できないレベルなんだけど、 こいつには CPU ファンもなくて、ディスクもないので (SD-SCSI 変換に換装してある)、 音が出るとすれば電源ファン1つしかなくて、 それも市販の 6cm ファンのサイズのように見えるので、 もしかしてこれだけ交換すれば平和な世界が待っているのでは…、 ということで久しぶりに蓋を空けて、 狭すぎて身動きとれない筐体からなんとかして電源ユニットを摘出。
ファーーwww → 東広島で目標値80倍有機フッ素化合物「PFAS」検出。 ちょっと前に東京の米軍基地の下流あたりで大騒ぎしてたのを フーン と思って見てたけど、そういやここも米軍の弾薬庫が近くにあるんだったわ。
[アニメとか] カゲマス、ようやく七陰列伝第一部をクリアしたぞ。 ウィクトーリア実装前にここまで読んでおかないといけなかったか。

2024/01/28 (日)
[アニメとか] カゲマス。七陰列伝第二部に入って、 七陰がみんな人間の悪魔憑きの知識がなくて 「何かがおかしい…」(CV: キョン) と思いながら読んでたけど、 これ過去の話だからまだアニメ時系列のローズパイセンとか出て来てないからか。
[宇宙とか] SLIM、予想通り、西陽が当たって復活したらしい。すげーな。

2024/01/29 (月)
[アサルトリリィ] ラスバレ放送局。さやぱかさんと石井陽菜さんという過去イチ驚愕のメンツ。 通常回に舞台の人が来たの初めてだよな。 八雲校長のメモリア実装されて、コメント欄が「家元枠」になってて草。

2024/01/31 (水)
LUNA-88K 電源ファン工作 (連載第2回)。 適当にポチった 6cm 静音ファンのほうは当然ながら 3 ピンなので、 このうちファンコントロールの黄色い線は無視して、赤と黒だけ使用。 コネクタは余り部材の中にあった同じピッチの 4 ピンコネクタに カッターで切れ目を入れて 2 ピンコネクタに仕立てて、線を途中ではんだ付け。 これで見た目いけると思ったけど、 ピンヘッダに挿してみるとどうも緩くてささった感じがしない。 ピンヘッダが部品の合間にあるのではっきりは見えないけど、 どうやらこのコネクタ、外装のプラ部分から中の金具までが 1mm 弱あって、このせいでささらないっぽい。うーん。

井崎のホームページへ戻る
isaki@NetBSD.org