0630起床。
近くのお宮さんに歩いて初詣。お墓参り経由で帰還。
o 史記の漫画を読んだり。朱亥(しゅがい) という人物が出てきてちょい受け。
o
ldo im14(%r0),r
は
ldi im14,r
と書けるらしい。
ldb などがゼロ拡張ということは char は符号付きより符号なしの方が効率いい? gcc の標準は符号付きだな…。
親戚の家に行ったり、スーパーの初売を覗いたり。
9時の積雪: 10cm
その後も雪…。
o 家の携帯電話に1回切りが。かかってくるもんだな(笑)。
o 部屋の片付けというか散らかし。 MZ-2000 を動かしてみる……完動だ。うーむ、捨てるのもったいないなあ。
FD はおろか、CMT まで動くんかい。確かに何回か修理しているが…。 キーボードが若干チャタり気味なのは、前からそうか。
誰か欲しい人いないかな? ウチでは VCCI 以前のマシンは使えないしなあ…(←弱電界地域)。 某 ML に投げてみるか?
o 雪でアンテナがずれて BS 放送が全然映らなくなった。 NTSC の分は CATV でも見られるけど。
o MZ-2000 の関連を適当に整理。
o 雪の中出掛けてメガネの掛け具合を調整してもらう。
o DEC 3000 のカーネルは 1.5P だった。 バージョンだけ見るとあんまり古くないような錯覚が(笑)。
o 13時にうち発。雪深いのはうちの周りだけか(笑)。駅から電車。 名古屋あたりまでは雪があるな…。そこから先は雪は全然ない。
乗り換えにダッシュがいらなくなったな(笑)。
o ぱっと見、
つ |
津 |
の駅名表示が ? に見えた(汗)。
o 18時に着。こっちは曇。 つうわけで、遅ればせながら、あけましておめでとうございます。今年もよろしくです。
o メイル333通。
o 仕事始めで、必死に(笑)定時に出社。
定時(今日だけ12時)にとんずら、餅食って酒呑んで帰る。
o 風邪(?)で頭痛いので鎮痛剤飲んで寝。
o 昼休みに寮に戻ったら大雪。積もる勢い。
必死に職場に行ったらやむし。いいけど。
o HP-UX のシステムコールは %sr7 の space の 0xC0000004 へのサブルーチンコール(ble)らしい。 変なアーキテクチャだな…。システムコール番号を %r22 で渡すみたい。
Linux/parisc は 0x00000100 かい。うーむ。
o そこっ(以下略)(苦笑)(遅)。 AS500 いいなあ。ウチの AS500/500 はなんかあやしいし。
o 2003年になってなたのでこっそり修正。
カイシャの直前で大雨(泣)。
今日は暖かいな…。
o SS10 にシリアル端末をつないで起動してみたり。 Host ID / MAC address は ROM なのか、消えてなかった。 Linux が入っていたのだが Freeing unused kernel memory... を最後に読めなくなる。 しかも嘘のコンソールデバイスを NVRAM に書いてしまうのか、 電源を入れ直すとシリアルに何も出なくなる。うーむ。
分解してしばらく(1時間くらい)放っておくと、 NVRAM が忘れるのか、コンソールが見えるようになった。
o rarpd (/etc/ethers) や bootparamd (/etc/bootparams) の設定をして SS10 に NetBSD のスナップショット(1.5Y)をネットワーク起動してインストール。
電源を落とすとしばらく起動しないのは同じか…。
SPARCstation 10 motherboard。 TERMPWR を SCSI BUS に出しちゃだめとかいう恐いことが書いてある…。
o ふと Dhrystone してみたら SS10 (SuperSPARC 50MHz) は P54C 133MHz の 0.43 倍くらいの速度だった。同クロックなら勝てるね(ぉぃ)。
o 年賀はがきは全部外れ。
o シリアル端末すらつながっていないマシンの /etc/rc.local に
(sleep 60 /usr/X11R6/bin/xconsole -xrm "*iconName: Console (`hostname -s`)" \ -title "Console (`hostname -s`)" -daemon -display server:0.0 ) &
てなのを書いてコンソール出力が見られるようにしてみた。 セキュリティ的にアレだが LAN 内は私しかいないので問題なし(笑)。
o PA-RISC 1.1 → 2.0 でちまちまと変わってるなあ。 同じ命令でニーモニックが変わっているものも。 統合などで変わっているものもあれば、 BL → B,L ; BLE → BE,L という具合にに単に置き換えたぽいものも…。
o 久しぶりに SH4 マシンを起動したら時刻設定画面だった。 オフラインクエストを 2つほどクリアしたり。
o むむ、PA-RISC 2.0 の 64bit モードは calling convention からして互換性ないのか。
o PA-RISC のコンパイラは、text segment のアドレス(const な変数とか) は即値でロードしてしまうようだ。relocatable じゃない…。 PC (IA) 相対アドレシングが無いからそうなるのか。 いや、普通は困らんのだが…。
data segment のアドレスは r27 (dp) をうまく設定すれば OK。const 禁止? (ぉぃ)
o つうわけで、とりあえず 32bit 版の runtime architecture のドキュメント見たり。 sp は 64byte align かー。富豪だなあ。
体調不良部^Hで休み。
ぐー。
o 引数の最初の 4 word (4個とは限らない)はレジスタ渡し (スタック上は場所だけ確保)か…。 で、リンカが型(整数とか、浮動小数とか)の整合チェックをして、 使うレジスタが違ったら合わせるらしい。
o 寝ている間にボットがいじめられていたので改造したり(笑)。
o アセンブリでふにふにと書いたり。お、2回目で動いたな。
今日はカイシャ行くが、調子悪いな…。
o 初バシ(?)とするか。12時過ぎのバスで発。ぽんばし…を通過。難波経由で梅田へ。
o ヨドバシカメラでポイントカードを作る。 NTSC/U の VM と、ワゴンセールのゲームソフトと、AC 分岐コードを GET。 むむ、初回はポイント消費できないのね…。
o 地下鉄で恵美須町へ。共立でケーブル類、DISCPIER で 500ポイントと CD、BEST DO! で 16ポートスイッチング Hub (Planex FX-16NH) を GET。
南下してテクノランドで SCSI ケーブル(AMPハーフ - D-Sub ハーフ)、 戻って TWO-TOP で SCSI ターミネータ(AMPハーフ)×2。安物のケーブルには懲りたのでメーカー物を…って AMP ハーフはほとんど放逐されていて選択の余地なし。
o 18時過ぎに撤退。スーパー経由で 20時過ぎに帰寮。疲れた。
o Libretto 100 を広げたら液晶の黒の所が青(汗)。 すぐ直ったけど、そろそろ本格的にヘタってきたな。 持ち運び用だと、APM 的にこれより良いの知らないんだよなあ。修理かなあ。
o 16ポートスイッチを設置。結構コンパクトだが元の 8ポート Hub もちんまいのでちょっと場所を取るな…。
半分近く空き。ほとんど 10Mbit だ(笑)。 AS500/500 と Dreamcast (2台目)は未配線。
o せっかく 100Mbit が使えるようになったので、AS255/300 に DE500 (21140)を付ける。 単に ifconfig de0 media 100baseTX だと、スイッチが発狂して通信できない(LED 点滅)。一旦ケーブルを抜くと認識するようなので /etc/ifconfig.de0 を
inet IPv4_address netmask 255.255.255.0 media 100baseTX down !sleep 1 up
てな感じにする。
ところが、どうやっても full-duplex にならない。mediaopt full-duplex と書いてもスイッチが認識しない。どうやらスイッチが autosense 非対応(autonegotiation のみの対応)らしい。なにゅー。 まあ、ローエンドのスイッチだしな…。ちうか NIC 古すぎ?
o Lib 100 (21143) と AS255/300 の間で 2MB/s くらいは出るようで、 一応 10Mbit よりは速いみたいだ(←…)。
なんか足痛いな。
o Console/Display は、少なくとも出力ができるデバイスで、 CLASS が CL_DUPLEX のときは入力もできる。 Boot Device は、入力は必ずできるが出力は optional。 Keyboard は、Console/Display が half duplex のときに入力に使うデバイス。
でいいのか?
IODC を使い終わったら Close Connection するといいらしい。
ちうかアセンブリ書くの面倒だな…。
o Boot Device を読んでみるテスト。読めた。
…って、device 上のアドレスが 32bit しかないのに指定がバイト単位かい。 つうことは boot パーティションは先頭 4GB だか 2GB だかに収めないとだめ…。
2KB align なんだから 2KB 単位にすれば壁がもうちょっと(だいぶ?)高くなるのに…。
o HP-UX の cc, ld -N で実行ファイルを作って objcopy -O binary すると、 なぜかデータセグメントが先頭に。うーむ、分からん。
しょうがないのでアセンブリの中の .code セグメントで .stringz して C で適当に宣言してアクセス。 リロケータブルにするためには、const を付けてはいけない(笑)。
つうわけで、まがりなりにも C で書けるようになった。
ん、gcc, binutils を使えるようにすれ?
o bl (2.0 の表記では b,l) などで ,n を付けるときも戻りアドレスは (nullify された) delay slot の次の命令になるらしい。
1回休み。
o
起動時に rtsol -a
だと LAN ケーブルを挿し忘れていると
IPv6 アドレスを得られないので、rtsold -1 -a
にしてみた。
o 除算を使うとライブラリ(millicode)コールに(汗)。 しかも objcopy -O binary で出てこない。
o まだ足痛いのでカイシャの医者に診てもらったり(注: 内科(笑))。 湿布してもらって、さらに 5枚パックを GET。
よく効くな…(←目に(泣))。
o LFS 読みのプログラムが LFS version 2 で使えなくなったので直す。 セクタ単位だったのが、fragment 単位に変わったのが大きい。 superblock の構造が変わっていたり。
o ぜんざい GET (謎)。
o LFSv2 が読めるようになったのでコードを整理。 superblock の構造体のメンバ名があんまり良くなくて混乱したり。
やっぱりちょっとサイズが増えるな…。
足はかなり治った感じ。
o UFS のコードって割り算や剰余使ってるな…(汗)。
o この間ワゴンセールで買ったゲーム(シェンムー 一章 横須賀)を起動してみる。 たるいな。それはまあいいとして…。
…酔った(泣)。吐きそう。ダメだー。 PSO やナップルテールでは平気だったのだが。
む、それでワゴンセールに? (ぉぃ)
o UPS に CRT をつないでいたら、 電源投入時に過負荷になって他の機器が瞬停喰らった…。
o 仕事で歩いたりするとやっぱり足痛いな…。
o CRT は UPS から外して、代りに SCSI 箱をつないだ。
o 1日分進めるのが限界。飽きそうだ(笑)。
o 書留GET。
あげぷら。知っとるけ(←…)。
o HP C200 ゲット(←…)。
FDD と DDS2 ドライブも GET したのだが、FDD のケーブルを忘れた…。
分解掃除。仰々しい放熱器だな…。NIC は 21143 で SCSI は Symbios らしい。 Wide SCSI が differential でなくて single end になっている。 GSC な Wide SCSI (Symbios) とフレームバッファ(放熱器がついていて詳細不明) が挿さっていた。
differential より single end の方が速いのか…。
o C200 は PA8200 なのだが、キャッシュは命令 512K/データ 1M で C180 (PA8000) の 1M/1M より少ない。ううむ、単に上位機種というわけではないのか。 C180 についていた HIL とオンボードのフレームバッファが無くなっているし。
休暇。
o 寮にいたら火災報知器の点検が来た。
o C200 と一緒に GET した HDD のうち 1つに OS が入っていたので起動してみた。
しかし、やかましいな…。電源 OFF でもかすかにファンの音が…。
Ether は 21143 なので、何の問題なく 100M duplex でつながる。
o FDD のケーブルは、34ピン 1山のふつうの FDD 用コネクタで、 長さ 25cm くらいでいいようだ。ぽんばし行ったら GET するか。 あ、LAN ケーブルも足りないや(←…)。