o 10時。ファイルサーバが直ったみたい。
o core な thorpej 氏からお返事。紙に書いて air mail しろってか?
o 東芝の新ノート、全部ねおまじっく(号泣)。そういう意味では Lib70 の後継は無いなあ。
マグネシウム合金は塗料が乗りにくいんじゃないかとニラんでいるのですが、 本当は?
o 初めて PAR AVION な mail を送る。床屋さん模様の封筒持って郵便局に遠征。暑い…。
「さんふらんしすこ」でなくて「きゃんべる」("p" は黙字)になってた。110円。
o ここに投げると誰が読むのかな、と telnet mail.*.org smtp して ehlo して expn するも、502 unimplemented を喰らう。まあいいか。
o 某アドレスに公開鍵を送る。ちょうどこの前 ssh を使えるようにしておいたから簡単。
o お、またなんかファイルサーバ落ちてる。このところ、毎日だな。 どうでもいいけどアナウンスすれ。
o ウチの大学の公式ページもダメ認定をお願いしますー(笑)。
o curses は、vi の端末制御コードを汎用に使えるようにしたものだと どこかで見たような…。SunOS で ldd vi しても curses 出ないし。
あのびるくんは、user interface の設計は上手だけど(csh とかも)、 謎のバグがいっぱいあったりして、コードの質は今一だなあ。
o PC Watch のバイオチップの記事って、何か勘違いしていないか? 微細化技術の代替になりそうには見えないんだが。 ちゃんと読んでないだろ…。
o NetBSD の lib/libc/db のコードで、いつの間にか pread(2)/pwrite(2) を使うようになっていた。SunOS 4 にはない…というわけで fake する。
o UVM 化した NetBSD/x68k を、最もヘビーに使っていたと思われる人物にぜひ試してもらいたいんですけど、ダメ?
o abbrev の使い方。私のオレエディタ(改造しまくり xvi)では、
ab #in #include ab #In #include ab #en #endif ...
とかしてます。本物の vi では # が含められないみたいだし、普通の xvi では abbrev が未実装なので、世界中で私しか使ってないのかも。
でもこれも本来の abbrev の使い方じゃないような…。
o あ、finger をログしてるのね。 sup@某 に finger して終っているのを確かめてから sup …ってのは cron 起動のスクリプトで自動でやっているので、メイルされても人は寝てます(笑)。
それはそうと、○ ね ○さんて寝てるんだろうか…。
o む、反応ないぞ。vm 溢れた? sup できん…。ぶちするか?
o news サーバが復活?
o vi に転びましょう。control 使わないわけではないけど。
o 某漫画で(自明?)、ロンドンブーツだ!!(©ぐ^H ガサ入れ)、1号、2号 とかいうネタがあって、訳が分からず web 検索で調べたのは内緒。TV 見ないの。
o 外し方がよく分かんなかった。
# Small Scale Integrated circuit に見えてしょうがない(笑)。
o 確かに日本語を入力しようとすると、状態がさらに増えて厄介かも。 私は skkfep を、「ESC を押すと日本語モードを解除して、さらにエディタに ESC を送る」設定にしているので、結構快適だったりしますけど。
o const は storage-class specifier ではなくて、type qualifier です。type specifier と type qualifier は、(semantics 上問題がない限り)任意の順序で書けます。
storage-class specifier が先頭にあるべしってのは ISO/IEC 9899:1990 (ISO C) の 6.9 Future language directions の記述 (6.9.3)が根拠でしょう。現在は先頭でなくても間違いじゃないけど。
storage-class は「型」ではないので、仲間外れなんでしょうね。
なお、ANSI X3.159-1989 (ANSI C) と ISO C は、ページがずれているだけで同じものだそうです。JIS X 3010:1993 (JIS C) はその日本語訳なので、同じもののはずです。
o 2130 コンソールに行って、ぶち。Solaris 2.4 におちょくられているような気が…。
o usr.bin/fstat: errx() 使うなら <err.h> 読まなきゃ。 usr.sbin/lpr: 配列 host の宣言/定義の不整合。
o 新 Let's Note は 2キーロールオーバ…。ぺけろくのようだ。 悲しすぎ。そういうところで手を抜くマシンじゃないと思ったのになあ。 デザイナが違うんだろうか。 せめて 3つ目が入ったら無視するとか(黒 NeXT みたいに)してくれないと。
既に買っちゃったひとは、マトリクス調べてソフトでがんばるしか。
o 某助手に、自転車のタイヤ交換を依頼。 チェーン全体にカバーがかかっている旧式なやつだったり、 さびさびで歪みまくりだったりで、謎の苦労をしつつ、 18時過ぎから始めて1時間位で無事終了。 ま、しばらくは動くでしょう。ありがとうです。
o MI な z8530* を使った zs な console は、sun3, mvme68k 他で実装されているようです。configure 前の console は、softc を使わずに、割り込みなしで動作させるみたい。
o インタフェース変えちゃっても、大して文句出ないような…。 そんなにユーザがいるとは思えん(笑)。
そういえば、ディスクのパーティション数を 16にしたら便利な気がするけど、さすがにそれははまりそう…。
そういえば Human68k のパーティション管理方法では 16GB が越えられないだっけ。 だれか拡張してない?
o Solaris 2.4 の /usr/ccs/bin/lorder って作業ファイルを消しそこなうみたい。ううむ。
↑ Solaris 2.5.1 では直っていた。やはり OS バージョンアップも仕様に書かないと。
o 某ダメページが学内 news で問題にされてる。ぴんち(←?)。
o ぎゃふん。bus.h を使っていないのは、 Z8530 はポートのマッピングが規定されていない(Z8030 では決まっている)からかな。
o いやなに、情報源が「ある方」だったりして、 もしかしてえらい人にこのにっきバレてるかも(汗)って思っただけなんですが、想像を逞しくする書き方でしたね。
ま、公式ページには我々はノータッチということで…。
block special を mmap(2) できるようになったらしい。あまり意味ないけど。
o c (ディスク全体)を入れて 16になるからちょうどいいかと。 OpenBSD はパーティション数が 16になったとか聞いたような気がするけど、さすがに major は変えたのかな。
o 廊下の蛍光灯の一部(階段/非常階段の前、曲がり角)がホタルックになっているのは、非常時のため? 廊下には非常灯がないからなあ(階段にはある)。
o
panic: trap
(謎汗)。
o vi (本物)は : コマンドの最後は ESC でもいいのね …って遊んでいたら core った。ダメぢゃん >Bill Joy。
o 19時。どしゃぶり。久々の雨。
o fj.kanji (7/1)より。 CP/M86 では間隔を 0x2020 で表すらしい。
ESC $ B と ESC $ ( B は同じだが、現在は ESC $ B だけみたい。 @, A, B だけね。読むときは両方受け付けるのが無難だな。
o 4.4BSD では、setsid(2) して session leader (というか orphaned process group) になると、SIGTSTP, SIGTTIN, SIGTTOU は無視されますよね。 フロントエンドプロセッサのような pty を使う(fork(2) して子は setsid(2) して制御端末を取り直す)プログラムで、子プロセスの suspend を捕捉して親ごと suspend できると便利なので解法がないか調べたところ、
おっと、全然関係のない話だな。
o X68030 をバラして、MPU にゲタを履かせて FC2 を非接続にする。 ついでにデジカメで撮影したりなんかして。開けるの面倒くさすぎ。
o メモリスイッチが 4MB 設定のまま NetBSD のフロッピーから boot しようとしたら、real mem の行を表示して固まった。メモリ不足?
メモリスイッチを書き換えて、BOOT MENU と apr_keep.dat (笑)を SRAM に転送。
o で、X のバイナリをもらってきて展開して startx する。 panic: MMU fault (ぉぃ)。grfon + 0x20 で落ちてる。また NULL ポインタにさわってるのか? continue したら cpu_reboot + 0x54 で panic: MMU fault (爆)。ダメじゃん(汗)。
o MACHINE_NONCONTIG を外すと、base memory (12MB 以下の部分ね)だけを使うはず ……あれ?
o いつも思うのだが、なんで投票所があんな危険な所にあるんだ。 歩道はないわ、車びゅんびゅんだわ。こわすぎ。
o typo って、DEFAULT の綴り間違いは私のせいじゃないです。
i386 は、コンベンショナルメモリと拡張メモリ(っていうのか?) とが必ずあるので(640KB じゃ BSD は動かん)、常に NONCONTIG なんでしょうね。 MACHINE_NEW_NONCONTIG でないときは、vm/* で MACHINE_NONCONTIG を見てるので必要だったみたいですが。
o あ、「さま」はけんと様の専用敬称(拒否権なし)なので、適当に変更をお願いします。
o NetBSD/m68k に ELF が追加された関係で、user land 絶賛コンパイル不能中。
o たんぽぽ ひとりごと。に捕捉されていた。どもです。
要するに、struct cfdriver の cd_ndevs は、attach されている unit 数ではない、ということだな。
grf1 の grfon() から ite1 を iteoff() しにいく(ite1 はない)のは、どうすればいいのかな。何もしなくていいのかな?
o というわけで書き換えて再起動。startx 今度は落ちないが…同期取れない。デフォルトのモードがそれかい。
X68kConfig を書き換えて……おお、動く。かんどー。遅いー(笑)。
o m68k 版の lesstif-0.85.3 と mozilla-19980603 をもらってくる。 libX11.so.6.1 も gdb で書き換える。おお、動く…っていうのか?
データ線はバス接続で「重い」ので、タイミング的に厳しくなりがちってことかな? でも太くしたからといって、同じ回路でバンド幅が増えるわけでもないし、なんか変。
o trace に frame が指定できるですか。 でも、今までのところ、一番良く使ったのは落ちたとき trap() で見つける pc の値なので、これをシンボリックに出してくれるだけでいいかも。
o 11時頃よりネットワーク工事。
o むむ、68040 では動かんのか。0x0turbo を GET すべきか? (←おねだり?)
o 岐阜市長森は、帰省時に通るなあ。 私より西の方の出身者の方がよく知っているはず。 高山線は、未電化で単線で、当然本数も少ないので待たされるかも。
o 著作権は財産権なので、財産をどう処分するかが所有者の自由であるのと同様に、 権利の行使(黙認することも含む)は著作権者の裁量にまかされるらしいです。
o 投票率の話。政治家の給料や政党助成金には投票率を掛け算する、 とかすれば命懸けで投票を呼び掛けるだろうな。あ、かえって投票率下がるかも(笑)。
o そこ、Xってゆーなー(汗;)を今朝見たら "一日平均:1.0アクセス" だったような気がしたが、夜に見たら 66.0 だった。謎。
o libbfd が コンパイル不能なのは、並列 make をしていたためらしい。依存関係が足りん。
o ついでに libbfd.a の中に libbfd.c を入れてしまうのをなんとかしようと思って make を調べていたら、マニュアルにない .INVISIBLE というのが使えるみたい。にや。
つうわけで、久々の pr 書き。
o 単に sort されているようなので、もっと若い(文字コードが)人を 「だったのに」化(謎)すればいいのでは。
o 尖端(ぉぃ)に来てたっすか。いなかへようおこしやす(ぉぃ)。
もじら 5.0b1 は、起動時、タイトルバーに "Netscape Navigator 5.0b1" と表示される(微笑)。速いマシンだと一瞬で消えて見えないかも。 また、何かするたびに 2回ずつ redraw されるようだ。これも速いマシンだと分からないかも。
遅いマシンはソフトウェアの質を高めるのに役立つらしい(苦笑)。
o あ、あの程度はどうってことないですけど(汗)。 (いまだに、いちおう秘密のつもりらしい(笑)。)
o おや、lannet さんとこが Not Found だ…。
o ほう、NCSA httpd は index.{html,cgi} のないディレクトリに README ファイルがあると、ディレクトリリストに README の内容を付けてくれるのか。知らんかった。
爆睡。
o a.out を Human68k の .x に変換する手抜きプログラムを書いてみたりして。 Human68k の NEmacs はロードアドレスを変えて差分を取るとか聞いた覚えがあるので、 アイデアだけいただき。
o …はいいが、startup やライブラリが要るな。startup は拙作のがあるので asm2gas で MIT syntax に変換…fpsp & 060sp 以外は完全には変換してくれないのね。
o gas の jbsr は -mc68000 のとき bsrs → bsr → jsr; -mc68020 のとき bsrs → bsr → bsrl.
020 用の gcc + gas で 68000 なコードを吐くためには、
-m68000 -Wa,-mc68000
が必要。
o 偶然見つけたが、PD libc 1.1.32 の _dos_hendspsp() (src/sys_dos/hendspsp.s) バグってるー。8 じゃなくて 9 だ。 <sys/dos_i.h> の方は正しいみたい。
BUS_ERR() って _dos_memcpy() なのか。…そうなんだけど、何か違う…。 _dos_bindno() で 0 積んでるのは何?
o ガビーン。Solaris 2.4 の chown(8) は owner:group とか owner.group とか書けない。2.5.1 のは書ける。
o THUNDER CEPTOR? ナムコばっかりだし。
o NetBSD の i18n 化。とりあえず curses ですか(ぉぃ)? (← window(1) を使ってみたいらしい(笑)。)
↑ -current じゃなくて 1.3 だかららしい。
o 0420 おや、SDB 死んでる? shonan.ne.jp のトラブルかな。そこ、 09/20 03:26 ってゆーなー。
5時過ぎの更新で直ったみたい。
o ATOK12 には、SKK の「数をパラメータとする表現の入力」、「読みのコンプリーション」 に相当する機能が実装されているらしい。
o あ、お楽しみを横取りしてしまったようで申し訳ない(笑)。
o ううむ、やはり資料として DECstation (Ultrix)も確保しておくべきだったかも。 たまたま自作 coroutine ライブラリ(preemptive でないので thread ではない)に残っていたので分かったけど。
IRIX は endian の分かるマクロを定義してくれないみたい。
o 0315 寮ネットワークで怒涛の ICMP echo の broadcast が。重いからやめれ。\ "receiver ring buffer overrun" って何事かと思ったよ。
o なぜか NetBSD/alpha を upgrade する必要に迫られて、binary snapshot をもらってくる。フロッピーで起動……やっぱり DEC 3000/300 が入ってないんですけど…。 TURBOchannel なマシンにフロッピーが付いてる訳ないと思われているのか?
面倒なので、1.3 のときのフロッピーでやる(笑)。scc ドライバがばぐばぐだ。
あ、UVM 付きだと shmdt() ってバグってるやん。やっぱり SysV IPC なんか嫌いだ(←やつあたり)。くっそー。 pr 書き(おまけ)。
このへん、mmap() とかに書き直せないの?
前者の pr は一瞬で close された。ソープ氏、暇なんだろうか(笑)。
o 怖くて今まで誰も火入れしていなかった某基板を動かす。 なんだ、動くやん。びっくり(おい)。
o で、SS20 が召し上げになったので、IPX を使ってみたり。私の使い方では、気にするほど遅くないな。
o 最近 NetBSD はコンパイル時に lint するようになったようだ。 コンパイル時間がかかるのはともかく、ウチのクロス lint はすぐ core るんだな(汗)。
入試やってる。
o クロス lint が Solaris 2 (sparc) で core るのは:
o SPARC Classic は sun4m だと、一応ツッコんでおこう(笑)。 sun4c はカーネルアドレスがそのまま I/O から見えるので便利なんだが(誰が?)、速度的には不利だったんだろうな。
o Alpha AXP asm と格闘したりして。RISC はアーキテクチャだけでなく、 コンパイラの動作(レジスタの使い方とか)も理解しないと書けないなあ。
で、アセンブリ化しなくても動かないんですけど…。
o 変更が多くて、クロス環境を追随させるのが大変だった。
しかも const まわりの不整合でコンパイルできないやん。
o LCD の I/O が書いてないのは、もしかしてソフトウェア制御で平均で ±0 になるように交流駆動しないと電気分解してしまうとか、そういう理由だったりして。
o DOS コールはほぼ機械的に生成するようにした。 IOCS コールも欲しいが、こっちはレジスタ渡しだから面倒そう。
ちなみに Human68k の gcc と BSD の gcc とでは、関数で壊してもいいレジスタが違う。-fcall-used-REG するという手もあるが。
o IOCS も一部機械的に生成。レジスタ渡しなので、全組み合わせを書き下す(汗)。
PD libc で move.q #$ff,d0 して and.l d0,xx している所があるが、 move.q は 8bit→32bit に符号拡張されるから無意味だよな。
o DEC (ってまだあるのか?)漁っていたら、NetBSD の misc/dec-docs/ に無い Digital UNIX Calling Standard for AXP Systems てのがあった。 PostScript も置いあるし。これでアセンブリもバッチリか?
o dynamic link なプログラムで、shared library にあるのと同名の関数を定義しているとき、その shlib を dlopen(3) してその symbol を dlsym(3) すると、どちらの関数のアドレスが得られるのが正しい?
o 現実の世界では、確率が 0 のできごとが平気で起こりますよね。 例えば私がこの時刻にこの座標にある確率は、座標を連続量とすれば 0 と言っても構いませんよね(←仮定が間違ってる?)。
o mnews 1.20 (だっけ)以降なら、投稿時に NNTP が切れていたら再接続するんじゃなかったかな…。
o sd0 から順に探して最初に見つかった所から起動するようになっているのは、1.3 では sd の struct cfdriver から SCSI ID が得られなかったからですよね。 -current では struct sd_softc の定義が別ファイル(sdvar.h)に分離されているので、 その気になれば sd_softc から scsipi をほじくって SCSI ID を見つけることが可能みたい。
# やっていいかどうかは謎。
o NetBSD で NFS v2, v3 のどっちで mount しているか知りたい、という話題が。statfs(2) で分かるんではと思ったのだが、 statfs ではマウント時に指定したフラグがそのまま返ってくるだけだ。 sys/nfs/nfs_vfsops.c:nfs_statfs() では現在の flag を渡しているよなあ。……あ、 sys/kern/vfs_syscalls.c:sys_statfs(), sys_fstatfs() で上書きされてる。 うーむ、仕様? バグ?