/var/log/hdk.log

2001 年 8 月

01

1000 円で A.I. をみる。久しぶりに吉○家で牛丼並を食べる。す○家のミニ のような、もう少し少なくて安いメニューがあったほうがいいと思う。初めて ビリヤードをする。ヤ○ダという電気屋さんのパーソナルコンピュータ関連の ものを売ってるところに行って「キーボードはどこですか」ときいたところ、 ここでは取り扱ってないから本店のほうでなどと言われる。マウスは売ってる のにキーボードは売ってないらしい。

交換前のキーボードと違って、テンキーの上下左右と Z、X キーの組み合わせ は全く問題ないようだ。

02

Bochs で Linux を走らせれば、Windows で UDF のディスクを読み込めないと きに再起動しなくてもよいのではないかと考える。Debian を入れて試そうと 思ったが、Debian の CD-ROM は持ち帰ってないことに気づく。Plamo の CD-ROM (CD-R) があったので、bootdsk をコピーして Bochs を起動。とりあ えず Bochs 上の Linux から ISO9660 の CD-ROM を読み込んでみようと、 mount -t iso9660 -r /dev/hdb /mnt としてみたところ、hdb: lost interrupt というエラーが 1 秒間隔で表示され続けて読み込めなかった。

03

今日は、桜島の灰が降って、ジョリジョリ。

04

読み書きに問題が生じていた、2000 年 1 月製造の CD-RW ドライブ PHILIPS 4424 CDRW を、新品の TEAC CD-W516EB に交換。ディスクをセットしてからア クセスできるまでの時間は長くなったが、読み書きの問題はなくなった。

05

CD-RW ドライブを交換したので、最大 32 倍速で音楽 CD から CD-DA 吸い出 しができるようになった。DVD-ROM ドライブでは明らかに他のドライブと違う 内容が吸い出されて、時々音飛びしたりするのでダメだし、今までの CD-RW ドライブでの吸い出しは最大 10 倍速程度で、普通の CD プレイヤーでノイズ がのる古い CD-R では音飛びしたりしていたので、かなり良くなった。

06

正しい発音がよくわからない GNU、Gimp、GNOME、nVidia、GIF などの単語の 発音を調べてみた。

07

昼。古畑任三郎 3 の再放送をみる。

夜。Cygwin に nice がはいっていることに気づき、優先度を下げてアルバム CD のエンコードをさせながら出力されたファイルを再生させていて、少しう とうと。はっと気づくとエンコードはとっくに終わっていて、リピートして最 初にきいていたファイルが再生されていた。

08

cpu%.exe で、タスクバーのアイコンの modify に失敗したときに delete せ ずに add すれば、時々 Windows 2000 でアイコンが端に移ってしまうことが なくなるんじゃないかと言われる。うむ、確かに delete しなくても問題なさ そうだなあ。

7 月に一回みた、録画してあった TV'S HIGH の途中から最終回までをみて、 最終回をさらにもう一回みた。

09

CD-RW ドライブのファームウェアをアップデートし、再起動。その後、ドライ ブは検出されるがディスクをセットしても認識されなくなった。

10

昼。笑っていいともをみる。来週の月曜日はめざましテレビの大塚さんがくる らしいので、念のため録画予約する。

午後。いくつか再放送があったのでみる。古畑任三郎 3 の最終回をはじめて みて、億万長者と結婚する方法の最終回を 2 回目でみて、みたことのある CITY HUNTER をみる。

11

久しぶりに、自分で作った開発中の IBM JX エミュレータのソースコードをみ て、8088 のエミュレーションで求めているクロック数がかなり間違っている ことに気づく。今は BIOS の power on self test の中の「check count down speed of timer 0」や「crt attachment test」でエラーにならないように無 理やり調整しているので、prefetch queue やトラップフラグの処理を追加し て書き直したほうがよさそう。

COM Menu のどうでもいいようなバグを修正。

Outlook Express の機能を覗いてみる。IMAP とか HTTP とかに対応していて、 APOP とか POP before SMTP とかには対応してないらしい。MS 漢字コードや 日本語 EUC などは選べなくなっている。メール送信の形式はやっぱり HTML がデフォルトになっているようだ。

12

きのうの新聞のテレビ欄をみていて、古畑任三郎の再放送の最終回の放送は実 はきのうだったことに気づく。

SOTEC PC STATION M350V なマシンで AMD の N-Bench を動かそうとする。 Setup.exe を使ってセットアップはできて、その後起動しようとすると、この 環境には対応してないみたいなエラーがでて終了してしまう。そこで Visual C++ 6.0 で読み込みトレースしようとすると、SYSTEM.CPP の場所を尋ねる見 慣れないダイアログが。なぜかデバッグ情報がついているらしい。デバッグ情 報のおかげで関数名がわかるのでエラーになっている部分もすぐ見つかり、ス キップさせて起動し、demo 開始。正しくないと思われる表示が多い。しばら くみていたら、画面の動きが停止。音楽はなっていたが、Esc を押しても終了 せず、Scroll Lock などを押してもランプに変化なし、Ctrl + Alt + Delete を押しても何も変化なし、シャットダウンして電源オフに設定してある電源ボ タンを押しても何も変化なし。対応してないというソフトを無理やり動かした りはしないほうがいいらしい。

13

今日は、雨が降ったりして涼しかったり、空調設備のある場所では寒かったり。

初めてウォー○ーサラダを飲む。う〜む。

14

録画してあったきのうの笑っていいともの前半をみる。

特濃 4.2 牛乳 1 liter が 150 円で売られてたので買う。

15

ひつまぶしを食べる。

16

コンビニの奄美鶏飯を食べる。専門の料理屋のほうがおいしい気がする。

17

前作った 8088 エミュレータのソースを参考にしながら新しく書き直していた ところ、ワード演算の IMUL 命令のオーバーフローフラグとキャリーフラグを 設定するときの条件の誤りに気づき、! を追加してみる。すると、今までうま く動いていなかった、ゴルフゲームや、タイルゲームの説明表示がうまく動く ようになった。

前の 8088 エミュレータでは乗算・除算を加減算とシフトの組み合わせで実現 しているが、なんかわけがわからないソースになってるので、今度は C の演 算子を使って普通に書いてみよう、と思ったが、前書いた IDIV 命令のところ をみてるとそのまま複写したくなってきた。うーむ、前書いたのはよくこれで 動いてるなあ、と思いながら C-SPC ... M-w C-x o C-y。

18

この怪しい CD-RW ドライブで安心してファイルを保存するには UDF にフォー マットして使えばいいと思い、74 分の CD-RW を B's CLiP でフォーマットす る。物理フォーマットは普通にできたが、論理フォーマットに 1 時間以上か かった。マウントしてみると、まだファイルを書き込んでないのに使用領域 9.8 MB、空き領域 520 MB だった。

8088 エミュレータにクロック数を求める処理を入れて、一応 CPU 部分の書き 直し完了。8259A (割り込みコントローラ) も書かないと新しい CPU 部分は動 かないので、Bochs-1.2.1 をもとに作成。今までの JX エミュレータ の 8088 と 8259A 部分を入れかえて動かし、テクニカル・リファレンスの付録 A. BIOS をみながら細かいバグ取り。そのままだと今までより速くなるという のは予想通りだったが、思ったより速いか、CPU 部分が今までより重いらしく、 処理落ちとみなされて画面更新がとまってしまう。日本語モードの BASIC の PLAY のリズム音痴はほぼなくなったが、英文モードの BASIC のほうは変わり なし。8253-5 (タイマー) も書き直さないとダメか。VSS (ビデオ・サブシス テム) まわりももっと軽くしないと、画面更新されなくてゲームで遊べない。

19

Cygwin の g++ で、throw ("String");catch (char *p) で捕まえられない。throw ("String"[0]);catch (char c) で捕まえることはできる。謎。

窓を開けたままにしていたところ、午後だんだん風が強くなってきて、机の上 がざらざらしてきた。台風は鹿児島県本土に明日の夕方最接近らしい。

実家の SOTEC M350V で使っているサウンド (Crystal SoundFusion) のドライ バは、音楽を再生してるとき他のドライバなどが CPU に負荷をかけると 0.1 秒程度の短い音がループして変な音がなることがある。モデム (LT Win Modem) がダイヤルし始めるときや接続を切るときに必ずこの現象が起きるが、 同じ回線を使ってる電話に電話がかかってきたときと電話をきったときにもこ の現象が起きやすいことに気づいた。

JX エミュレータ。前の版で動いてたあるゲームが動かないことに気づく。調 べていると、AAD 命令のところに間違いを発見。ほかのソフトは動くので、バ イト数は少ないがこんなに時間のかかる命令はほとんど使われてないというこ とか。また、物理アドレス 0x100000 以降が物理アドレス 0 以降につながっ てないというバグも発見。これらを修正しても、まだ動かないようだ。うーん。

20

JMP 系命令の実行に時間がかかっている間にジャンプ先をプリフェッチするの はまずいかと思い、ちょっと書き換えてみると、PLAY のリズム音痴復活。

午後。きのうより風が弱く、とても台風接近とは思えないほど静か。きのうの、 ゲームが動かない原因判明。このゲームは垂直帰線時割り込みを使ってるらし く、BIOS のパレットを変更する処理の途中の、ちらつきを防ぐために vertical retrace on を待つ部分で、vertical retrace のはじめに発生する 垂直帰線時割り込みの処理が長いために無限ループに陥っていた。前の版は vertical retrace のおわりに割り込みを発生させるという間違ったしくみに なっていたためうまく動いていたらしい。調整しなおしたら、うまく動くよう になった。

夜。昼と同じくらい弱い風。雨も降らなかった。エミュレータの画面表示部分 を少しだけ高速化。WM_SYSKEYDOWN と WM_SYSKEYUP を処理するために 2 行追 加して、やっと JX の PF10 キーに割り当ててある F10 キーが使えるように なった。JX の前面キーにアプリケーションキーを割り当ててあるが、これで もっと適している Alt キーを割り当てることもできそうだ。

21

今日は、きのうよりも風が強かった。

出身高校のある先生から電話があり、また行く。Turbo Linux サーバーを再起 動したらそのあとうまく動いてないようだとか。この 前ちょっとし忘れてたことだったので、すぐに済む。あとは話をしたり、 Web サーフィンしたり。その近くにあった Windows 2000 Server は、某コン ピュータウィルスの被害を受けたとか、ハードディスクドライブが検出されな くなってとかなんとか。インターネットとの接続は ISDN ルータ経由で、外部 からの接続は拒否する設定のはずだから、LAN 経由で感染したのかな。

22

朝起きると鼻が詰まっていて風邪気味。∴葛根湯を飲んであたたかくしてテレ ビをみる。

怪しい CD-RW ドライブでファイルを UDF の CD-RW に複写してみる。Verify もするのでかなり遅いけど、ISO9660 イメージをつくって書き込むよりも安心。 B's CLiP の「安全モード」は、ヘルプにある「頻繁に書き込みと消去をくり 返したメディア」への書き込みだけでなく、こういう正しく書き込めないこと があるドライブでの書き込みにも必要な機能だと思う。

夕方。天才てれびくんワイド (アニメ・スペシャル) の、アリス SOS 総集編 14 (アリス SOS の最終回) をみる。去年くらいにみたときは、13 の最初のほ うまでしかみてなかったので。

19 時、ドームのプロ野球が中止になったことを知る。野球で歌番組がないな あと思っていたが、あとで生放送でやっていたので、みる。

23

Tera Term Pro のヘルプの歴史をみていて、ver. 0.0 は MDI 仕様だったこと を知る。Tera Term Pro ver. 2.3 は、メニューの new connection を選んで ウィンドウを増やしても新たにプロセスを作っているらしいので、MDI にする のは難しそう。

24

朝 CD-RW ドライブが届く。検査・修理報告書には、ファームウェアをアップ デートして動作確認したことが書かれていた。自分で取り付けた PHILIPS 4424 CDRW を取り外すのに IDE のコネクタがなかなか外れなくて、マイナス ドライバーで外そうとして手がすべってドライバーが CPU とメモリの間に引っ かかったり、指先が痛くなったりして 20 分くらいかかったが、無事 TEAC CD-W516EB の取り付け完了。

B's CLiP で UDF の CD-RW をマウント・アンマウントするとき、PHILIPS 4424 CDRW (MITSUMI CR-4804TE) だと書き込んでいるようにはみえなかったが、 TEAC 製のドライブだと何秒間か書き込んでいるようにみえる。

230 MB の光磁気ディスク 2 枚をバックアップするために、初めて CD-R を UDF でフォーマットして使ってみた。74MIN/650MB 1-8x compatible と書かれ ている箱に入っていた CD-R をフォーマットし、ファイルやディレクトリを光 磁気ディスクから複写してみると、CD-RW のときと違って書き込みが非常に速 く、光磁気ディスクからの読み込みのほうが遅い感じ。また、CD-RW だと全容 量が 530 MB 程度になってしまうが、CD-R だとフォーマット直後の使用領域 が 5 MB 程度、空き領域が 650 MB 以上であまり無駄がない感じ。マルチセッ ションにして追記するよりずっと効率よく使えそう。

25

家でゴロゴロ。きのうの夜はよく寝たつもりなのに、今日もたっぷり昼寝。

夜。花火 13,000 発とか言ってたが、家では音もきこえなかった。

26

つくばに戻る。空港についたときに空席少々とでていて、空席待ちになったが、 無事搭乗手続きできて、搭乗口はたくさん人が並んでいて時間がかかりそうだっ たので、忘れずにマイレージの登録をして搭乗。ちょっと揺れた。羽田空港で、 空港前の道路が混雑しててバスが 15 分ほど遅れてきたが、そのあとの渋滞は なかった。

27

昼。学類計算機へ PPP 接続失敗。学情に行って、計算機室ホームページをみ てみると、

都合により、しばらくの間、PPP サービスを停止します。(2001.8.27〜)

とかかれていた。朝はつながったのにぃ。

ハードディスクドライブの静音設定 (?) を無効にしたところ、かなり速くなっ て、あるファイルを読み込もうとするとドライブのモータの回転が不安定になっ たような音がしていたのもしなくなった。

航空券を買ったときの領収書を眺めていたら、東京国際空港で買った券には 「ANA ハネダクウコウ」と印刷されていて、溝辺空港で買った券には「ANA カ ゴシマクウコウ」と印刷されていることに気づいた。

学術情報処理センターで ISO9660 + Joliet extension な CD-RW に追記した あと、CD-RW ドライブが読み込みに苦労してたので、取り出しボタンを押して あげたら、Windows 2000 がクラッシュしたらしくリセットされて、おかげで そのマシンにログオンできなくなった。

HDBENCH Ver 3.22 でベンチマークテスト。思ってたよりも浮動小数点演算が 速い。FSB 200 なのでメモリの読み書きは予想通り速い。あとは、文字列表示 が速かったり。ハードドライブは read 13111、write 8018 で、Normal Seek Mode にしたあとは read 21763、write 17180。

28

SL BENCH を動かしてみる。平均 20 FPS 程度。

Bochs を jks でコンパイル。 SGI CC でうまくできたので実行してみたが、linux の起動途中で bus error で終了してしまう。(スクリーン ショット。)

学術情報処理センターの計算機 (Windows 2000) の CD-RW ドライブのうち、 MATSHITA CD-RW CW-7585 がついてるやつで、自分の CD-RW が検出されなくて たまたまかと思っていたら、別の MATSHITA がついてるやつでもだめだった。 だめだったのは先月のも含めると 3 台。

きのうの HDBENCH の結果

学術情報処理センターの計算機 (Windows 2000) の秀丸の「秀丸エディタについて」ダイアログ。 個人名で登録されてるみたいだけどいいんだろうか。

B's CLiP で CD-R にファイルを複写していたら、CD-R の空き領域が 10 MB ぐらいになってしまって、クローズできなくなった。クローズしてないと検出 が遅くて使ってられないので、結局別の CD-R に ISO9660 + Joliet extension で書き込み。

29

10 時頃、インターネットで学外に接続できなくなった。

冷やし中華を食べたあと、12 時頃、学外に接続できるようになっていた。

夜。400 円の焼肉定食と 30 円のつぶ納豆を食べる。納豆はちょっと冷えすぎ ていたのに、実家で食べた 3 パック 100 円の納豆よりおいしかった。

30

朝。4 月から使ってた洗濯用洗剤「ブリード」を使いきる。

昼。jks で ogg123 をコンパイル。ogg123 が出力用に使う libao の irix 用 の部分は「untested」となっていて、format-> の書き忘れ がたくさんあったりして修正。mpg123 のソースを参考に 1 時間近くいじって いたらちゃんと再生できるようになった。

jks で mpg123 や ogg123 で再生したままトクト クを netscape でみたら、再生の速さが 1/2 になった。

31

きのうコンパイルしたので jks で ogg123 が使えるようにはなったが、最後 が切れてしまうという問題が残っていたのでさらに修正。あと、mpg123 の -f オプションみたいなのがないと音量が大きすぎるので、-o scalefactor:3072 のようにして音量を変えられるようにした。

jks の mpg123 で VBR な mp3 を再生するとちょっと変な音になるので、きの う参考にするために落とした mpg123 をコンパイルしてみたら、ちゃんと再生 されるようになった。

カールを食べていたら、キャラカールを発見。「名誉村民」として登 録できるらしいけど、なんか面倒くさそうなので、azalea1 のカメラで写真だ けとっておいて、食べることにした。

Win32 の bochs で CD-ROM のアクセスができなかった原因判明。Capacity を 得るのに Win32 API の GetFileSize 関数を使っていて、失敗して 4294967295 が返されているために hdb: lost interrupt とでたりしてダメだっ たようだ。そこで、cygwin 上で再コンパイルしようとしたが、_beginthread 関数と _endthread 関数を使ったままだとコンパイルが面倒みたいなので、と りあえず寝る。

トップ / 日記索引 / 日記 (2001 年 8 月)

Hideki EIRAKU