日記 (2025年01月)。
2025/01/01 (水)
◎
恒例の実家だけど、姪っ子がさらっと作った卵焼きがおいしくて泣いている。
◎
[アニメとか]
昨日このすば公式が
これ上げてて、あててんのよしか思いつかねぇーと思ってたら、
これ。くっそwww
2025/01/02 (木)
◎
[NetBSDとか]
[nono]
nono の FPE に不当命令パターンの処理が抜けてるのを見付けたので、
テストコード書いて F ライン例外が出ることを確認しようとしたところ、
実機の NetBSD で panic した。
ちゃんと F ライン例外が出て、ちゃんと FPU_EMULATE に処理が移って、
ただし FPE がそんなことは想定していないので、っていう流れだった。
6888x 積んだ実機でも FPU_EMULATE を有効にしてると(というかデフォルト有効なので)
panic しちゃうんだな。
FPE 側で小魚の骨みたいに全部弾かないといけない。
2025/01/03 (金)
◎
[NetBSDとか]
今の NetBSD/m68k FPE は Packed 形式をサポートしていない。それはまあ分かる。
なので FMOVE.P 命令に遭遇すると SIGFPE (Unsupported Data Type 例外のつもり)
を出そうとする。
Packed 形式をサポートしていない 68040 が Unsupported Data Type 例外を出すので、
FPE でもそれを踏襲したのだろうと思うし、それもまあ分かる。
でも 68030 には Unsupported Data Type 例外は存在してないので、
こうなると、さて…。
68030 だけで考えると、知らない命令だったので F ライン例外に落ちました、
だけのほうがすっきりしてるし扱いやすいような。うーん。
◎
[NetBSDとか]
とりあえず FMOVE.P FPn,<ea> が死ぬ件も commit したので、
自前の fmoveto.x が無事完走して (.P 以外は) 全部パスするようになった。
他の命令でも全部これやらないといけない気がするのはちょっとまた MP
が溜まってから…。(;´Д`)
◎
[nono]
ところで興が乗って
68LC040 を書いてみたものの、正解が分からなくて迷子。
あと実際には 68LC040 は何かの信号線が削られてるので X68030
には積めないらしいので、出来たところでもう何をやってるのか分からないんだけど。
2025/01/04 (土)
◎
[NetBSDとか]
元ネタ (2024/12/29 の日記)。
こないだ実機で動いた謎の未定義命令、
今日は実機でちゃんと不当命令になるな。えぇ…。
そういえば FDIV も30万回のうち1回 FAIL したし、
ひょっとしてクロックアップだろうか…。
しかしオシレータを発掘するの遠いな…。
◎
[ドラクエ]
ドラクエ3、なんとなく2周目を始めてしまった。
このゲーム、キャラを女にするほうが装備できるアイテムが多くて若干有利なので、
勇者はどっちでもいいとして、残りの3人が女というパーティとは…
と考えていて、つい出来心で、
カズマ(勇)、ダクネス(まもの使い)、アクア(盗)、めぐみん(魔) にしてしまった。
魔法使いはいつも通り賢者にして最終的にやまびこのぼうしで
エクスp…イオナズン2発とかを唱え続けててほしい。
まもの使いと盗賊はどこかで相互にチェンジしてみるかなあ。
という転職前提の人生設計で行ってみようと思う。
◎
[アニメとか]
沖縄で好きになった子が方言すぎてツラすぎる #1。
アニメでウチナーグチを聞くとポプテピを思い出すなw
それはともかくインパクトはあって面白いけどこれ1クール持つかな。
2025/01/05 (日)
◎
[ドラクエ]
めぐみんを賢者に転職。
ところでかの女神アクア様が盗賊なので、
戦闘後に「アクアはやくそうをぬすんでいた」
とか表示されるたびにあの腹立つサムズアップのドヤ顔が目に浮かんで、
込み上げてくる笑いが抑えられないw
◎
[アニメとか]
ところでここまで4本見た今季アニメのうち3本が矢野妃菜喜なの何事?
2025/01/06 (月)
◎
[nono]
なんとなく、instructiontest.x の所要時間どうやって計ってるんだろ、
nono -H でトラップ仕掛けてるのに IOCS ONTIME は呼ばれてないしな…、
というのはずっと以前から思ってたけど、
MFP の Timer-C 割り込みがワークエリアの
起動後の経過時間 (1/100 秒) をインクリメントする。
これが 100 になると起動後の経過分をインクリメントする。
ってなってて、ここを読んでるっぽいというのが分かったので、
nono の Human68k モードでも Timer-C 動かして、
割り込みハンドラでこのワークエリアを再現してみたところ、
instructiontest.x で所要時間が表示されるようになった。やったね。
本当は実時間で表示したいところだけど、とりあえずね。
しかしそろそろ本当に MFP の実時間走行について考えなければ…。
2025/01/07 (火)
◎
[ドラクエ]
モンスター50体になったので、まもの使い(ダクネス)を盗賊に転職。
攻略地図見ながら最速で集めようにも、
取り逃しがなくてもそもそも船取ってサマンオサ行くあたりまで進めないと
50 にならないのね。
まもの使いのまもの呼びは確かに強いし、
(MP 消費も倍だけど) 1ターンに2回出来るビーストモードも強いな。
それよりもまもの使いがいるとはぐれモンスターを無条件で確保できるので、
ほんとにもう別ゲームだこれ。
で、本当はこの転職と入れ替わりで盗賊(アクア)をまもの使いにしたかったけど、
盗賊はもう少し先の特技まで覚えさせてからかなあ。
2025/01/09 (木)
◎
[ドラクエ]
盗賊(アクア)がやっと追い風まで覚えたのでまもの使いに転職。
というか今回、呪文や特技を覚えるレベルが全員攻略サイトに載ってるレベルより
遅い気がするんですが、やっぱり全員名前のせいですかね…。
とかやりながらネクロゴンドの洞窟あたり。
2025/01/10 (金)
◎
[お天気]
朝、車の上で推定 2cm くらい積もってた。
起きた時はアスファルトも真っ白だったのでこれはやべーかな、
と思ってたけど準備して出掛ける頃には日向のアスファルト上は溶けてた。
日陰だけ溶けてないので自転車がやべーやつだけど。
◎
[nono]
何日か前に筒井さんから x68k 12MB だとゲストのプロセスが SEGV
すると報告されてた。
bisect して原因の commit までは分かったものの、
ATC を劇的ビフォーアフターしてる commit なので、
それのどこが悪いのか3日くらい眺め回してたけど、ようやく分かった。
書き直した時に TranslateWrite() から modified のケースがごっそり抜けてた。
よくそれで今まで1年も動いてたな…。
2025/01/11 (土)
◎
[ドラクエ]
攻略サイト見ながら上の世界のキラキラはたぶん全部回った気がする。
それにしても今回のリメイク、ラーミアの乗り心地がすごくいまいち…。
◎
[アニメとか]
薬屋のひとりごと (2期) #1。やっぱり安定してるなー。
2025/01/12 (日)
◎
[nono]
nono ver 1.1.2 リリース。ATC のバグ修正とか。
◎
[ドラクエ]
バラモス倒したけど、ビーストモード+まもの呼びが2人いるので数ターンで終わったw
ライデイン1回でのダメージがせいぜい90くらい、
バラモスは1ターンごとに60〜70くらい自動回復するのに、
まもの使いのまもの呼びで約400、ビーストモードなので倍の約800。
それが2人いるので1ターンで約1600のダメージが入るので、ゲームバランスぅ~
2025/01/13 (月)
◎
[nono]
nono にも NAPT + DHCP してくれるようなネットワークが欲しいなーとは思ってはいるものの、
壮大すぎてさすがに手のつけようがなかったところ、
libslirp というものを見付けてしまった。
その壮大すぎるところを全部やってくれるライブラリらしい。
あ る ん か い www
◎
[nono]
libslirp、ドキュメントが一切なくて、ヘッダにもうっすらコメントがあるだけなので、ほぼソースコード読みながら、
何ならそこに printf 入れてビルドした野良ライブラリをリンクして実行してみて…
っていうアホみたいな作業の挙げ句、ひとまず DHCP サーバからアドレスもらえるところまでは来た。(;´Д`)
◎
21時19分頃地震。日向灘で最大震度は5弱。この辺は震度3くらい。
揺れは大きくないけどゆらゆら長かった。
マグニチュードは速報値は 6.4 くらいだったけどすぐに 6.9 に上がって、
それに伴って津波注意報が後から遅れて出るなど、ばたばた。
2025/01/14 (火)
◎
[アニメとか]
カゲマス。あまりに石が余ってきたので普段は引かない 3% の通常ガチャを
お年玉気分で引いたら、2回目で晴れ着ローズパイセンが出たので許す。
実際無課金勢だと季節グラは凸困難なので新規で増えても戦力にはなりにくいんだけど。
◎
NHK の「カルチャーラジオ 科学と人間」が今期
「食と健康をつなぐサイエンス・栄養疫学入門」で、
聞いてみるとすごく面白い。
#2「因果の逆転」で、
朝食を食べない子は学力テストが悪い話は自分も完全に騙されていたほうだけど、
先生が「残酷な話ですが」と前置きしたので、
育ちがいい悪いとかそういう話かなまでは察したものの、
もっと残酷な話だった。
朝食云々ではなく単純に成績のいい子の共通点について疫学的な調査をした結果によると
最も相関が高いのが家が裕福かどうか。お、おう…、いきなり身も蓋もないわね。
2番目が母親の教育歴が長いかどうか。あ、うん…。
3番目が父親の教育歴が長いかどうか。お、おう…、
2と3はほぼ1と相関してますよね…。
という感じで、貧しい家の子は朝ごはんも食べられない(割合が高い)し成績も悪い(割合が高い)というまるで救いようのない話だった。
あと1年間朝ごはんを学校でも無償で提供する施策をしたところ、
成績はあまり上がらなかったというデータもあるそうで、アッハイ…。
2025/01/15 (水)
◎
[アサルトリリィ]
前田かおりんの彼氏バレ(?)か何かと水素水とふるさと納税の情報量が多くてアレ…。
◎
[アニメとか]
ふとしたことで久しぶりにインフィニット・ストラトスの ED 曲を聞いてる。
ヒロイン5人分のうち、はなざーさん版と日笠さん版が好きなんだよね、
と思ったけどこの2人、陰実の王女姉妹じゃないか。
◎
[nono]
libslirp。
外(と言ってもおうちの中)に向かって telnet とかすると、
確かにサーバに telnet のセッションは来たっぽいし、
それを監視するイベントも libslirp 内には追加できてるっぽいんだけど、
そっから状態が変わらなくて、この状態を変えるのはどこの誰だ…っていう…。
ドキュメントを書け。
◎
[nono]
libslirp。
お、コネクション張れた。
でもまだ名前が引けないっぽいな。
UDP の問題なのか DNS の設定が何か足りないのか、
てかドキュメントを書け。
2025/01/16 (木)
◎
[nono]
libslirp。
名前が引けなかったのは、nono を動かしてたホストの
/etc/resolv.conf が nameserver ::1 だったからっぽい。
nameserver 127.0.0.1 を足したら nono の中からも名前引けるようになった。
まだ slirp 内の IPv6 設定はしてないからなのかどうか分からないけど、
だとしてもそんなところでホストの設定に干渉されて大丈夫なのか?
2025/01/17 (金)
◎
[宇宙とか]
Starship 7回目のテストで、第1段が分解してフロリダ沖の大西洋に降り注いだらしい。
映像がいくつか出回ってたけど、
完全にプラネテスで軌道上の平和のモニュメント(ゴミ)を大気圏に落下させた時の絵。
アニメで見て (根拠があるとかではなくて、なんせ見たことがない光景なので)
リアリティがないなと思ってたけど、ほんとにこう見えるんだ…。
◎
[nono]
libslirp。
タイマー作って IPv6 有効にして、
おまけに VirtIONet がマルチキャスト受け取る設定になってなかったので、
がばがばに受け取るようにしたら、
たぶんルータアドバタイズ受け取ったっぽくて勝手に IPv6 アドレス付いた。
すげー。感動するな。
さすがに家には RA 吐くようなルータは設定してないし(というか
IPv6 で外に出れないし)、
qemu の usermode なら同じことやってくれててそうだけど家だとブリッジにするし、
外だと qemu 使わないし、
という組み合わせにより RA なんか受け取る環境なかったからな。
それにしても、
libslirp のタイマーをお前が作ってコールバックだけ呼べと言いたそうな関数群、
その割になくても IPv4 は動く、
ドキュメントは一切ない、みたいな感じで、
何のタイマーやねんこれ…と思ってソース見たら RA とか出てきたので、
IPv6 知ってるから、あーはい…って感じだったけど、
もう今どきの若者なら IPv6 RA は DHCP くらいデフォの知識なんやろうか。
◎
[nono]
それはさておき、
vioif(4) でマルチキャストガバガバに受け取ったところ RA も受け取れたけど、
Lance も RTL8019AS も RA 受け取れないわね。
こっちはマルチキャストアドレスフィルタというのがあって、
一応実装してあるんだけど、これじゃ何かだめなのねん…。ぐぬぬ。
2025/01/19 (日)
◎
[アサルトリリィ]
イルマの振り返りトークショー。
19:30 からの第3部だけ配信で視聴。
- 登壇は、小松穂葉さん(MC)、槙原唯さん、
佐藤遥さん、西田奈未さん、髙橋彩音さんと尾花沢先生。
- 大きい鳥の頭を持って登場する槙原さんwww
- 俐翔と伊万里の関係はこの後展開があるかもしれないので
ここでは全部言えないが…(おや?
- 村雨と蓮月には年の離れた妹がいるが名前は言えない…(おやおや?
- 槙原さんは急に代役が決まって、
稽古場で写真撮影 (たぶんキャラ紹介映像に使うやつ) をしていたw
2025/01/22 (水)
◎
[nono]
マルチキャストフィルタの件。
CRC をソフトウェアで計算する際に逆順に見立てて処理したほうが都合がよいことがあって、
その場合出力のビット列も逆順になったものが出来る。
これを正順に戻すためにもう一度リバースすればいいのだが、
ところが (今回みたいに) ある用途では(正順の)逆順が欲しいので、
そうなると最初から逆順のまま出力しとけばいいじゃん、みたいになって、
一言で CRC と言っても出力ビット順すらバラバラなのが罠。
今回は、Lance が CRC の結果の下位6ビットを逆順にしたもの
(ソフトウェア的には
32ビットで逆順にしたものの上位6ビットを 26 右シフトみたいになりがち)、
RTL8019AS は CRC の結果(正順) の上位6ビットを取り出したものだった。
やれやれ…。
◎
[NetBSD/x68k]
筒井さんところで qemu の NetBSD/virt68k で devel/ninja-build
のビルドがエラーになるそうなので、
qemu だからじゃねーのwwwというお気持ちでちょっと
virt68k の -current を更新して nono でビルド始めてみる。
◎
地獄のトランプ2期目スタート。
トランプは ThinkPad 取り戻してくれたら手のひらクルンクルンすることもやぶさかではないw
2025/01/24 (金)
◎
[NetBSD/x68k]
ninja-build の前に依存先の python312 で落ちるな…。
だから python 嫌いなんだよね。
2025/01/25 (土)
◎
[NetBSD/x68k]
仕方ないので nono の NetBSD/x68k を(今頃ようやく) 10.1 にアップグレードして、
pkgsrc-2024Q4 の devel/ninja-build のビルドを開始。
x68k は時計が仮想時間とともに進んでいっちゃうから、
クロック 50MHz 設定の等倍速動作させてて遅いんだよね。
フルスピードならこの i5-9400F で 4〜5倍 (100MHz〜125MHz 相当) は出せるのに。
◎
[nono]
というか、よく見たら 13usec で回ってる MFP の Timer-B
は割り込み上げてないんだな。
割り込み上げないのならそもそもイベント起こす必要もないのでは…。おや?
◎
[アニメとか]
ところでカゲマスさん、
こないだからホームを随分久しぶりに(幼少)アルファに戻してみたけど、
ボイス増えてない??
2025/01/26 (日)
◎
[NetBSD/x68k]
ところで LUNA はクロック割り込みを実時間で回すように細工しただけでよかったのに、
X68030 は Timer-C 割り込みを実時間で回しても時間が合わないのかやっと分かった。
kern.timecounter.hardware=mfp を
clockinterrupt
に変えれば Timer-C 割り込みだけで時間が進むってことか。
timercounter が mfp だと、
Timer-C 割り込みごとに前回の割り込みからの経過時間を Timer-D
のフリーランカウンタで測定してその分だけ加算するんだな。
もちろん理想的にはいつ計っても 10msec ではあるはずだけど、
うっかり上位の割り込みが先に入ってると Timer-C 割り込みの
ハンドラが呼ばれるまでには時間がわずかにかかるけど、
Timer-D の 50usec 精度でそれが計れると。
これは割り込み周期だけちょろまかしてる今のモードでは
どうやっても話が合わんから無理だな。
というか VirtualBox とかでも timercounter=TSC 使ってると時間合わんからそれと同じことだよな。
◎
[nono]
ということでそれは一旦おいといて、
nono ver 1.2.0 リリース。ユーザモードネットワーク対応が目玉かな。
2025/01/27 (月)
◎
[nono]
リリースして気が楽になってがっつり向き合った途端に解決するやつ (恒例)。
ということで、X68030 の実時間モードも出来た。
というか timecounter=mfp では無理なので諦める。
2025/01/28 (火)
◎
いつもの通院だけど、10時頃行ったら採血待ちが2分っていう最速級の記録を叩き出した。
さらに午後からはもう片方の通院も行ったけど、
こっちも3分もたたずに回ってきた。今日はいい日だな。
◎
[NetBSDとか]
NetBSD でライブラリをリンクする時、
他の OS ではいらない
-Wl,-R を要求されるんだけど、
これを書かないといけない OS なのか、
書かなくていい OS なのかが一体どうすればいいんですか…、
と思って無理難題のつもりで Copilot さんに聞いてみたら、
まともな回答を出してくれたので、実装できたw
2025/01/29 (水)
◎
[PCとか]
おうちの Windows11 が勝手に 24H2 に上げられてしまった。
AsIO.sys がどうとか怒られたけどググったらどうも古くて削除していいらしい。
◎
毎年電話して明細表を送ってもらわないといけないところがあるんだけど、
先週電話に出た担当者がなんか融通きかなそうな感じだったけど、
昨日届いてみたら一か月分足りなかったので、また電話…。
2025/01/30 (木)
◎
[NetBSDとか]
続いて、VirtIO SCSI 実装のために
今の SCSI 構成から SCSI バスだけ分離しようとこないだからやってたけど、
意外とあっさり動いた。ほんまかいな。
2025/01/31 (金)
◎
[NetBSDとか]
nono の NetBSD/x68k-10.1 でビルドしてた devel/ninja-build がコケた。
qemu のせいじゃなかったかー。
とは言え atari ではビルドできてて、x68k と virt68k でビルドできないと
言われても何の手のうちようもないよなーと思いながらも、
一応エラーメッセージを追いかけてみたら、
コアダンプが出来てることに気付いた。
gdb にかけてみると関数先頭で落ちていて、
a6 に保存したスタックに対して a7 が 512KB ちょっと進んでる。
で、該当のソースコード見てみると関数の冒頭で char[] 配列を 512KB とってた。
お、おう…。
limit 確認すると確かにスタックの上限は 512KB だ。
キッズの書いたコードかな?
(atari Milan はスタックが 2048KB になっているためビルドできたようだ)
井崎のホームページへ戻る
isaki@NetBSD.org