Navigation Log - なびろぐ -
1999/09版 その1

...X680x0 spirit inside...

Last update: Saturday, 04-Jun-2011 17:29:57 JST
Access Count: (start 1997/07/04)
この日記はGNSで生成しています。
この日記の画像はOPTPiX webDesigner Ver.4で生成しています。

hauN
Go amazon.co.jp

■ご注文リストから■ [一覧]
■Amazonギフト券■ [購入]
ゆゆ式 3巻 []
ゆゆ式 3巻
Amazonほしい物リスト


1999/09/01 (水)

あさ〜

_ 1:00AM充電開始、6:30AM再起動。

_ あとひと月、の予定だが、どーなるか。


ひる〜

_ これ書いたらすぐ出先らしい。じゃっ。

_ @出先。終わり。


しんくろ

_ 直帰。渋谷へ到着するも、まだ6:00PM。

_ どっかでゆっくりお茶しながら読書でも・・・ってことで初EARL。なかなか。

_ 今日はかつ味のあとあんな店。東鳩本だったりKanosoだったりブレーカー落として登場だったり馬車馬だったり。


ぐるぐる

_ 差分検知より、それの整形のほうが問題という気がしないでもない。単純に「タグ全部ばっさりポイ」だけじゃ読むに堪えなさそーだ・・・Lynxか何かで整形出力してからdiffするんかな。

_ でも数時間に一度ならWWW自動取得ツールで更新分だけざっくりローカルに取り込んでしまうほうが楽だし読みやすい気がする。かといって毎時間やったところで1行2行の差分ばっかりザクザク出てきてしまって、訳のわからない日記も出てきそう。

_ Z80の直行性。BCDEHLをレジスタでなく「CPU内部バッファへのラベル」・・・つまり68系のダイレクトページメモリインデックスに付けるラベルと同じよーなもの・・・と考えれば、それほど悪かった気はしないでもない。

_ PS版lainの話たてのさんとこで見た記憶があったよーな・・・あった

_ ホット・クールって、「hotな=アツアツの情報のある」・「coolな=イカす情報のある」サイトってことだと思うんですが・・・。

_ さくらDVDは2枚ずつのリリースなので、負担は倍に増えるかと・・・^^。

_ あの程度のレジスタ使用じゃまだまだ。Z80は表裏レジスタとIX・IYまで使えば全部で20本(うちフラグレジスタ2本)の8bitレジスタがあることになりますもの。

_ GNSバグですか? ん〜・・・とりあえず手許ではWin98・WinNT・FreeBSD2.2.5・RedHat6.0、他にも使用者から動作報告を頂いていることもあって、それなりの確認はとれていると思うのですが・・・。gawkやmawkが落ちるということそのものがかなり怪しいので、まず動作環境を調べるべきかと思います・・・。


1999/09/02 (木)

あさ〜

_ 2:00AM充電開始、6:30AM再起動。こんなんで活動できるんか・・・。


ひる〜

_ かなりげんなりなでばっぐ・・・というか原因究明作業。

_ ・・・あとは野となれ山となれ・・・。

_ 昼飯はケンタ。辛口復活したのカー。

_ ロードとストアで命令が違うのは、アセンブラを楽に作るため(オペランド2つより1つのほうが楽)だというのは知られた話。「命令が少ないのとオペランドが少ないの、どっちが美しい?」ってところでしょう。

_ 再インストールせずにマザーを変更するときは、一度Safe modeで起動して全ドライバを削除してから再起動すると、トラブルが少なくなります。この例ではとくにトラブルなかったみたいですけど。

_ ・・・mobioがディスク最適化中にfreeze・・・ヘンなことになってなければいいが・・・。

_ 電話。ひと月後の予定はひと月半後に伸びてしまった・・・。


Z80そろそろしめくくり

_ ということで、メールでZ80コードアンケートは24通。投稿作品が届いたので掲載しませう。この乗算ルーチンは初見でしたわ・・・。


; A*BC = BC*DE = HL が全て成立するかどうかをチェックする
;     by <A HREF="http://www.yuasa.kuis.kyoto-u.ac.jp/ylab/koyama/">koyama</A>
;
;    結果は Z flag に反映される。(真なら 1、偽なら 0)
;    フラグ以外のレジスタは全て元の値を維持。 (A も元のまま)
; 
; 基本的な流れ:
;    A ≠ DE のときは (BC=0 and HL=0) なら真、さもなくば偽。
;    A = DE のときは (A=0 and HL=0) なら真、さもなくば乗算して調べる。
; 値の退避:
;    まず DE をスタックに退避、
;    そして E を使って A を退避。
;    乗算に入ったら DE を使って HL を退避する。
;    PUSH/POP するのは結局一回だけで済む。
; その他:
;    JR より JP が速いのはわかっているが
;    ここではコードサイズの最適化を意識しているのと
;    Position Independent になることを意識してみた。

COMPARE:
   PUSH DE                ; DE の退避
   CP   E                 ; A=E かどうか
   LD   E, A              ; A の退避 (フラグは変化しない)
   JR   NZ, BC_HL_0_CHECK ; if (A≠E) goto BC_HL_0_CHECK;
   XOR  A                 ; D と E のチェックのため A ← 0
   CP   D                 ; D が 0 かどうか
   JR   NZ, BC_HL_0_CHECK ; if (D≠0) goto BC_HL_0_CHECK;
   OR   E                 ; E (退避された A) が 0 かどうか
                          ; 比較ついでに A ← E もやってるのがミソ
   JR   Z, HL_0_CHECK     ; if (A=0) goto HL_0_CHECK;
;
; ここに辿りついた時は、 D=0, A=E になっている。
; 逆に言うと、 POP DE すれば LD A, E で全て戻るので
; A,D,E は全部こわしてよい。
;
; ここから乗算
; 以下、 A の各ビットを stuvwxyz と表現することにする。
;
   LD   E, D          ; 既に D=0 だから、これだけで DE = 0 になる
   EX   DE, HL        ; HL = 0, DE = 元のHL
   SCF                ; Cflag = 1 (この 1 が最終的に End Mark になる)
   ADC  A, A          ;CF=s,A= tuvwxyz1, HL = 0
   JR   NC, MUL_LOOP2 ; s が 0 なら飛ばすので、
                      ;             結局 HL = BC * s になる
MUL_LOOP1:            ; 以下同様の理屈で、
   ADD  HL, HL        ; ループを繰り返すごとに、以下のように変化する↓
   ADD  HL, BC        ;    A = tuvwxyz1, HL = BC *   s
MUL_LOOP2:            ;    A = uvwxyz10, HL = BC *( 2s+  t)
   ADD  A, A          ;    A = vwxyz100, HL = BC *( 4s+ 2t+  u)
   JR   Z, MUL_END    ;    A = wxyz1000, HL = BC *( 8s+ 4t+ 2u+  v)
   JR   C, MUL_LOOP1  ;    A = xyz10000, HL = BC *(16s+ 8t+ 4u+ 2v+ w)
   ADD  HL, HL        ;    A = yz100000, HL = BC *(32s+16t+ 8u+ 4v+2w+ x)
   JR   MUL_LOOP2     ;    A = z1000000, HL = BC *(64s+32t+16u+ 8v+4w+2x+ y)
                      ;    A = 10000000, HL = BC*(128s+64t+32u+16v+8w+4x+2y+z)
                      ;    A = 00000000 で抜ける
                      ;     (ループ回数を数えるためのレジスタが不要なのがミソ)
MUL_END:              ;       これで結局 HL = BC * A となる。
   OR   A             ; Cflag = 0  (SUB HL,DE っていう命令が無いんだもん…)
   SBC  HL, DE        ; (乗算結果 - 元のHL) で、一致してれば Z flag が立つ。
   EX   DE, HL        ; HL を復帰
   POP  DE            ; DE を復帰
   LD   A, E          ; 元は A=E なので、これで A も復帰することになる。
   RET
;
; あとは HL が 0 かどうかが関わるやつ (最初の方のチェックで分岐してくる)
;
BC_HL_0_CHECK:            ; B,C,H,L が「全部 0」かどうか調べればいいので、
   LD   A, B              ; B から始めて
   OR   C                 ; ひたすら OR を取っていくわけですな。
HL_0_CHECK:               ;      (←ここから入ってくる場合は A が 0 なので、
   OR   H                 ;         この OR が LD A, H と等価になるのがミソ)
   OR   L                 ; この時点で、 OR 取った分が全部 0 なら Z flag = 1
   LD   A, E              ; 退避されていた A の値を戻す
   POP  DE                ; 退避されていた DE の値を戻す
   RET


よる〜

_ 定時後しばらく話し込んでから撤収。雨だ〜〜〜。

_ おとーとがいないので、夕飯はレトルトカレー。

_ 燃えよドラゴンを見てたり読書してたり・・・。


ぐるぐる

_ (TXでは特に)番組中でゲームやアニメの曲をBGMに使うことはよくあります。特に意識せずにTVをBGVにしてると少なくとも1日1曲2曲はソレ系が聞けるし・・・。

_ 引っ張られるのは、URIをキーにgrep検索してるから。前者は後者の一部なので、どっちも検索にひっかかってしまうんですな。


1999/09/03 (金)

あさ〜

_ 1:30AM充電開始、6:30AM再起動。こんな睡眠時間で平気な体ではなかったはずなんだがなぁ・・・。


ひる〜

_ じゃ、まぁ、そんなわけで、いろいろdoc書きが必要になるわけだな・・・。

_ ししとう安いですねー。今週は2度ほど使用しましたが、一度おとーとが火吹いてました^^。

_ 2日連続でLunchを引いた。らっき。

_ VRAMの実装方法は決まってないので、リソースはDIBデータで持っておいて、それをDDSurfaceに一度DIBのBlt系のAPIでputしてDDBにしたあとに、DDBを実際のCopy Srcにする・・・という使い方をするはずです。

_ フレッシュ・ロボ経由でアブノーマルチェック。恋愛166.35「動物代表級のどちらかってーとノーマル」、生活134.15「哺乳類代表級のノーマル?」。しかしこれまた答えられない問題が・・・。

  1. 「就職先を選ぶなら日本のどこ?」・・・「仕事とあたしどっちが大切なの?」と同じ質問。んなもんわかるかっ。
  2. 「恋人を選ぶうえで一番大事なのは?」・・・波長が合うかどうか。
  3. 「次のうち、外見や性格が同じなら結婚したい相手は?」・・・いや、わしは外見も性格も境遇も仕事もあまりパラメータにゃならない(と思う)んですが。

_ 昼飯はJCでオムライス弁当・・・あ、チンするの忘れた^^;。

_ 8進数で9てバグ?・・・って、「8進数の数値文字列に8以上の数字があるときのsscanf()の%i・%lの動作」がどう定義されていたかの問題だと思うです。

_ 森の里*1か・・・厚木西高時代が懐かしいですな。そーいや、吹奏楽部はあいかわらず凄いらしくて、ついに中山ちゃんが海外留学・・・なんて話が同窓会報で来てたっけっか・・・。マイコン部はまだ生きているんだろか?

*1: 丹沢に片足突っ込んだところ*2を切り開いて作った学園研究都市。ほんの半径1kmほどの場所に本当に何でもかんでもあって、「森の里病院で生まれて森の里小行って森の里中行って西高出て青学行ってNTTとか富士通とか(研究所がある)行って・・・」っつーギャグが在校時にありましたな・・・^^。

*2: 森の里を下りると「下界」って言うし、冬は市街地は雨なのに森の里だけ雪だったりするし、ちょっと歩く(「歩く」じゃ遠いかも)と七沢温泉やら飯山温泉だし。

_ 半月伸ばされる予定はなくなったとのこと。うひ。

_ ぱやーんの日記が書き変わってないのに更新時刻が変化しているが・・・なぜ?


よる〜

_ 定時撤収。まさみやで呑み。日本酒は久しぶりだ。


ぐるぐる

_ そんなに御飯王のひとって寝てなかったっけ?・・・ 見てみる


 1999/09/01 00:44
 1999/09/01 02:43
 1999/09/01 04:41
 1999/09/01 06:40
 1999/09/01 08:39
 1999/09/01 09:40
 1999/09/01 10:43
 1999/09/01 11:44
 1999/09/01 16:45
 ----/--/-- --:--
 1999/09/01 18:44
 1999/09/01 20:43
 1999/09/01 22:42
 1999/09/02 02:44
 1999/09/02 09:41
 1999/09/02 15:44
 1999/09/02 16:44
 1999/09/02 18:44
 1999/09/02 21:44
 1999/09/02 23:42
 1999/09/03 01:41
 1999/09/03 03:40
 1999/09/03 05:39
 1999/09/03 10:37
 1999/09/03 19:42
 1999/09/03 19:50
 1999/09/03 21:44
 1999/09/03 23:43

・・・寝てないと思われてもおかしくないですねぇ・・・^^。


1999/09/04 (土)

あさ〜

_ 2:30AM充電開始、9:30AM再起動。気分的には朝じゃなくて昼だな・・・^^;。


ひる〜

_ 部屋片付けたり洗濯したり。

_ 昼飯ついでにヨドバシでも回ってくることにする。・・・ぐるぐるして、天下一品でから揚げ定食。

_ janusさんとこからJIUJING創作をひととーり読む。なんかこう、ものすごい「痛烈な皮肉」を感じた。技巧的だがハートのない文章の羅列。読者をもてなす・・・と言っていてもそれは作者の想いのみで、二次創作にあたってもっとも必要であると思われる「読者が作品を読んで感じる『その向こう側にある原作』」についてまったく考えられていない・・・いや、むしろそれを排除して書いたようにみえる・・・そんな文章が、読者をどれほどもてなすことができるのか。旧態依然とした「小説」の文法にとらわれていて、映像や音声やゲームの世界から文章の世界へ来た新しいストリームを理解しようとしていない。・・・すべてことごとくゲームやアニメから発生した文章群とは逆のベクトルを向いている。

_ 稚拙だろうが何だろうが、面白いものを伝えることができれば勝利。もちろん、技巧をこらすことができれば、面白いものをより面白くできることができるけども。

_ 電話。夜の予定がキャンセルになった。秋葉へ出ようか。


お誕生会

_ 秋葉へ出る。集合時間までてきとーにぐるぐるしてから、天狗へ。

_ 本日はX-TT葵ちゃん1歳ということで、こんな感じ

_ 9:00PMで上がって帰投。風呂部してKenjiが来てにらたまロボが来て、以下略・・・。


1999/09/05 (日)

あさ〜

_ 1:30AMころ充電開始、8:30AM再起動。わしが寝ている間はずっと起きてて、わしが起きたとたん寝始めるし・・・。

_ てきとーにいろいろしているうちに、やっぱK6+Socket7+AGPはダメだろーということで、まとまる。


ひる〜

_ つーわけでヨドバシ。お値段見つつ、以下敗北。

  • ABIT BH6 (Socket370→Slot1コネクタ付属)
  • Celeron 400MHz PPGA

_ 帰ってげんこつでメシのあと、組み立て。あっとゆーま。

_ 起動。あっとゆーま。

_ クロックアップ。83MHz×6までいけるかな。

_ しばらく動作試験。非常に安定。満足。


よる〜

_ たまP到着。風呂部して焼肉の材料を買ってくる。

_ 焼肉。3人くらいだとすごくスムーズだ。

_ 新システムのベンチを採ろうと思ったのだが、Rage Furyのドライバがタコってていろいろ障害が続発。Final RealityなぞはATIのwwwにまで障害報告が出ていて、対策は「バージョンを落とせ」・・・おい。

_ 以下、なんとか採れた分だけ。


■Database Entry K6-2-100x4+RageFury

Benchmark results:
Radial blur,             5N,  32.02, rips,  4.429, Rmark
Chaos zoomer,            5N,  44.86, rips,  2.180, Rmark
25 Pixel,                5N, 114.98, kpps,  3.675, Rmark
Robots,                  5N,  35.83, rips,  9.283, Rmark
Fillrate,                5N,  50.46, MPps, 10.923, Rmark
City scene,              5N,  50.27, rips, 12.474, Rmark
Video card bus transfer, 5N,  55.93, MBps,  1.781, Rmark
Direct3D bus transfer,   5N,  51.22, MBps,  4.378, Rmark
-----------------------------------------------------------------------------
Visual appearance,           100.00, percent
-----------------------------------------------------------------------------
Overall 3D,                   3.584, Rmark
Overall 2D,                   3.304, Rmark
Overall bus rate,             2.560, Rmark
-----------------------------------------------------------------------------
OVERALL SCORE,                3.346, Rmark
-----------------------------------------------------------------------------

■Database Entry Celeron-83x6.0 + RageFury

Benchmark results:
Radial blur,             5N,  39.64, rips,  5.483, Rmark
Chaos zoomer,            5N,  66.12, rips,  3.213, Rmark
25 Pixel,                5N, 288.14, kpps,  9.209, Rmark
Robots,                  5N,  56.89, rips, 14.739, Rmark
Fillrate,                5N,  49.81, MPps, 10.781, Rmark
City scene,              5N,  79.73, rips, 19.784, Rmark
Video card bus transfer, 5N,  93.01, MBps,  2.961, Rmark
Direct3D bus transfer,   5N,  70.51, MBps,  6.026, Rmark
-----------------------------------------------------------------------------
Visual appearance,           100.00, percent
-----------------------------------------------------------------------------
Overall 3D,                   4.431, Rmark
Overall 2D,                   4.348, Rmark
Overall bus rate,             3.881, Rmark
-----------------------------------------------------------------------------
OVERALL SCORE,                4.324, Rmark
-----------------------------------------------------------------------------


 ★ ★ ★  HDBENCH Ver 2.610  ★ ★ ★ 
使用機種   
Processor  AMD K6 3D 400.5MHz [AuthenticAMD family 5 model 8 step C] 
解像度     1024x768 1677万色(32Bit)  
Display    ATI Rage 128 GL SG TV AGP 2X (English)

  ALL   浮    整    矩    円   Text Scroll DD  Read Write Memory Drive
 9642 25102 31050     0     0     0     0   0 10622 10364 15866  E:10MB


 ★ ★ ★  HDBENCH Ver 2.610  ★ ★ ★ 
使用機種   
Processor  Pentium II 499.8MHz [GenuineIntel family 6 model 6 step 5] 
解像度     1024x768 1677万色(32Bit)  
Display    ATI Rage 128 GL SG TV AGP 2X (English)

  ALL   浮    整    矩    円   Text Scroll DD  Read Write Memory Drive
10952 40527 32160     0     0     0     0   0  7693  7241 25653  E:10MB







1999/09/06 (月)

あさ〜

_ Kenjiはお帰り、たまPはお泊まりで、1:30AM充電開始、7:00AM再起動。


ひる〜

_ ふにふに。

_ 今でもCMやってると思いますが・・・^^。

_ 日記システム側にDIを搭載するんですか・・・GNSでは今のところ考えていません。というのも、

  1. Last-Modified-Detected:やExpire:は、agentが生成するものであって日記本体が生成するものではない。
  2. TitleやAuthor-Nameは現在のところコンテンツを全文検索する必要はなく「agent側が与えても構わない」。
  3. 全文検索して作るべきものはKeyword:とContent-Type:くらいしかないが、実は内容に関わらずほとんど固定ではないか?

・・・と考えると、日記鯖のようなところ*1はともかく、日記システム側がそれを提供する必要性は低いと思われます。DI化を促進する要因は「Last-Modified:(いつ更新されたか)」だけでなく、その情報を「Last-Modified-Detected:(いつ検知したか)」「Authorized-url:(誰が検知したか)」「Expire:(いつまで有効か)」が欲しいということなのです。DIに限らずちょっと情報交換システムを考えれば、これらのない情報がいかに不安定かつ危険なものであるかがわかるかと思いますが・・・。

*1: 日記鯖には登録全日記のDIをリアルタイム提供してほしいです。はうンもhina.txt形式でなくhina.di形式で欲しい・・・。

_ 昼飯はFMでお好み弁当。

_ぞうきんの煮付け」って、インパクトある言葉だなぁ・・・映像どころか臭いまで漂ってくるよーな・・・^^;。

_ 部長んとこ、やっぱり評判 いいですね。ウチもスピーカー入れたはいいがそれっきり・・・セッティングの技法を学んだりアクセサリを試したりしたいところだが・・・。

_ サーバがあればpushするのは確かにいいですね。ただ、わざわざポート開いて通信するのも面倒だな・・・基本的に一方向通信だし・・・DIをメールで投げればいいとか、そんな実装ならすぐできますけども。

_ みず谷なおき原画展東京開催が決まった模様。Last-Modifiedによると決まったのは先週みたいだけど^^;。

_ プログレッシブは慣れます*2。慣れると非プログレッシブTVの画はかなり目にきます。それでも「上質なブラウン管の画」だと非プログレッシブでも見やすい・・・というか普通のプログレッシブTVの画よりも見やすいです。先日しばしPowerWIDEの画を見ていてそう感じたのでした・・・今のDRCじゃあの画出てないし。

*2: 平面ブラウン管と同じくらいに。

_ Last-Modified-Detected:は問題ないですが、Expire:はダメです。Expire:は「自分自身の有効期限」であり、最後の更新が10日前だからって9日前に期限切れになるわけではないからです。ループは「検知し断ち切る機能」さえ実装していれば問題はないはず・・・DIならそれを検知できますから。


よる〜

_ 定時撤収。ちょいとヨドバシ寄ってから帰投。

_ 夕飯はエセ石狩鍋。

_ たまP置き土産開封。CDを大量に置いていったのだが・・・おお、ZUNTATA初期三部作(DARIUS・NIGHT STRIKER・NINJA WARRIORS)だ。なぜかわし持ってなかったりする・・・つーか昔もたまPから借りてたから^^;。


ぐるぐる

_ SDB更新時刻取得方法を設置。近日中にユーザーがテストできるページを開設予定・・・しばし待て。


1999/09/07 (火)

あさ〜

_ 1:30AM充電開始、7:00AM再起動。蒸し暑い。

_ ふるふるから「はうンにっき」のDI化を行なったというので、SDBに実装。ただし、WDBにパッチが必要です。


ひる〜

_ ふにふに。

_ 散財欲を刺激するな(汗)。わしが前にいろいろお試ししたときはDCD-1650ARがいちばん値段と満足度のバランスのいいブツだったな・・・DCD-S10IIとの差はあまりよくわからなかったので。本体ヘッドホン端子&聞き慣れないヘッドホンだったせいかもしれんけど。

_ CDといえば・・・昨晩たまPから借りたCDを聴いていて、「TAITO GAME MUSIC VOL.2」(アルファレコード)のDARIUSの基盤収録音が当時にしてはやたらいい録音だったので驚いた。当時ありがちな貧弱な録音環境やかけすぎリバーブとは無縁の世界。基盤から漏れる「CPUが走る音」は残っているが、これはむしろ「入っていて然るべき音」として気にしないことにする。どっかに板残ってないかな・・・残ってないだろーなぁ・・・。

_ href 、= が抜けて・・・ますね。直します。かなり修正入っているから、そろそろ公開しないとな・・・。

_ 昼飯はおろし唐揚げ弁当。ウナギまんが出ていたので食べる・・・カレーにせよ何にせよ、うなぎはやめたほうがいいと思う・・・^^;。


よる〜

_ 定時撤収。さっさと帰る・・・生さくら5分だけ観られた^^。

_ 夕飯は肉焼いておしまい。

_ WDBのアップデート作業・・・無事V1.03公開。

_ あと、更新時刻チェッカーを作成。「あのページの更新時刻採れるかな?」と調べるのにどーぞ。


ぐるぐる

_ ・・・更新時刻チェッカーしゃあるさんにいじめてもらう。かなり機能アップできたらしい・・・感謝。


1999/09/08 (水)

あさ〜

_ 2:00AM充電開始、7:00AM再起動。きっつ〜。


ひる〜

_ パッチモジュールの動作試験。

_ case insensitiveの話。ソースをよーく見たら、たった1行の変更で済むらしい。済まぬ>関係者

_ 昼飯はらんぷ亭でおろし定食。ついでに「Honey(1)」(橘裕)「夢幻伝説タカマガハラ(5)」(立川恵)をゲットしてくる。

_ またもはうン鯖内の更新が検知できなくなっているのに気づく。case sensitive問題が解決してないせいか・・・修正は済んでいたので携帯で接続してput。2:45PM更新からに期待・・・。

_ WDBにしろ朝日奈にしろ、修正したあとの動作チェックが面倒だったんだが、昨晩から更新時刻チェッカがGET/HEADの動作チェックにも使えるようになった。便利だ。フフニヤ。

_ 猫DIはよさげな感じです。ただWDB V1.03ではcase sensitive問題が解決していないため読めません(汗)。とりあえず1067行を


if ( /^${key}:[ \t]+(.*)/<FONT COLOR="#FF0000">i</FONT> ) {

にすれば読めると思います・・・。

_ ・・・2:55PM。おー読めた読めた。

_ Method:WDBでは未使用。動作経過を蓄積するためにしか使用していません。あー、file://のサポートもやらないとなぁ・・・。

_ あ、CD忘れた・・・シンクロで返すつもりだったのに・・・。

_ 触発されて、ついにMM/DDだけでも採れるようにしてみる実験・・・結果はシンクロで。WDBは日付解析部がパターン分だけCOPY/PASTEしてあるようなバカ形式だが、おかげで新しいフォーマットを追加するのは簡単だ(汗)。


しんくろ

_ 定時撤収。「ジオブリーダーズ(5)」(伊藤明弘)・「彼氏彼女の事情(8)」(津田雅美)をゲットしつつ、いつもの場所へ。

_ あれ、3人かい。新しいGoldRushでハンバーグ。

_ あんな店ではずっとWDBの修正作業。改行のないHTMLからの抽出に対応するのに手間取っているうちに終わってしまったよーな気がする(汗)。


ぐるぐる

_ 家でもしばらく格闘して、ようやく満足いく動作に仕上がったので実験開始。検索キー指定時に不要な部分を切り落としてから日付抽出ができるようにしてみた。検索キーに".+*"のいずれかが含まれていると、検索キーの正規表現で切り出しに成功した部分のみから日付マッチングを行なう。例えば"Last.*"と指定すると、"Last"を含む行の"Last"より後の文字からマッチングするわけ。

_ 相互参照は、労多くして実入りの少ない機能だと思います。掲示板のような1記事1URIなシステムなら、システムの機能としてそれを準備するのはたやすいことですが、日記システムの場合は

  1. GNSでの「自分へのリンク」はただのHTMLであり、GNSが理解している「構造」ではない。「構造」でない部分には手を出さない。
  2. ある日のファイルが他の日のファイル内容に言及することは、システム側で行なうべきではない。
  3. 運用レベルで十分乗り切れる。過去分に追記することはよくあるし、ある程度意味のある集合が完成したら目次を作ったりサマリページを作ったりすることは前後自動参照に頼るよりずっと価値のある結果を生む。
  4. 盲目的に自動化に頼ることは賢い選択ではない。払うコストと得る利益にもっとも効率のいい方法を考えるべき。たとえば単語登録・・・打鍵数が減るわけじゃないなら、ヘタに単語登録するより「IME ON/OFFを無意識にできるよう訓練する」ほうが汎用性が高い。もし登録するにしても、
    • @@あ <A HREF=""></A>
    • @@ふぉんt <FONT SIZE="" COLOR=""></FONT>
    • @@たbぇ <TABLE BORDER=1><TR><TD></TD></TR></TABLE>
    とかやる。ここまで打鍵を減らせるなら、登録する価値がある。最初が"@@"で始まっているのは、あとで辞書管理するときに楽になるから。

・・・こんな考えを持っています。


1999/09/09 (木)

あさ〜

_ 2:00AM充電開始、7:00AM再起動。眠すぎ。

_ 背中スケスケヲヤジ再び。やっぱ、いや〜〜〜っ^^;。


ひる〜

_ ふにふに。

_ ひゅーひゅー>誰となく。

_ メールテンプレートミス。わしの場合、Becky!ですが

  • 基本はニセ。
  • 一部フォルダの返信だけホンモノ。

という設定で、間違ったことは一度もないです。

_ ところで・・・今日は99年9月9日ということでY2Kイベント日・・・という話があったが、ホントにそんな実装あるんだろうか。2桁年と月日をpackして入れるなら6桁で、その終端コードに"999999"を使う可能性ならまだ考えられるのだが・・・それは99年9月9日にはならないよなぁ・・・。

_ 日付データの実装パターン。

  1. 文字8バイトあるいは8桁数字(4バイト)で"YYYYMMDD"。9999年まで。
  2. 文字6バイトあるいは6桁数字(3バイト)で"YYMMDD"。Y2Kの源はこれ。
  3. ANSI Cのtime_t。2038年まで。
  4. 16bitで適当にpack。論理127年*1まで。

*1: ビットで"YYYY YYYM MMMD DDDD"などと格納するので、年が128年で巡回する。先日のGPS問題はこのYが週番号となっている同様問題だった。

_ ここ1年半くらいの仕事であちこちのソースをいじる機会があったが、修正部コメントや変更履歴表に付加するタイムスタンプの年号がどれ見ても2桁ばっかり。変更履歴表をわざわざ4桁に再フォーマットして再配布しても、そこに2桁の年号をつけて返してくる。コイツら、思想レベルじゃなくて障害回避レベルでしかY2Kを問題意識してないんだなぁ・・・と思った。

_ ・・・あら・・・WDBのhina.diの時刻情報が9時間前になってる。どっかで"GMT"を落っことしてしまったらしい・・・あとで修正しときます。

_ 昼飯はいなり+のりまき+おむすび。

_ GMT落っこち問題を修正。

_ しかし今日はひどいな・・・500byte/sec以下だ・・・。

_ /-_-はDelegateか何か特有のものだったはず。一般的なやり方は、


> telnet proxyserver 8080                  ← 8080はproxyのポート番号
GET http://www.shonan.ne.jp/ HTTP/1.0[CR]
[CR]                                       ← 空のままCR。空行で終わりとなる

でOK。

_ あかりちゃん経由で精神年齢鑑定。「66歳/幼稚度20%/大人度83%/老人度76%」だってさ。


よる〜

_ 定時撤収。放銃しまくって帰投。

_ 夕飯は親子丼。

_ 麦茶作ってたら・・・指2本ほど煮出す。片手日記書きはきつい・・・。


ぐるぐる

_ WDBをV1.04にupdateしました。いいかげん、これで安定してくれ・・・^^;。


1999/09/10 (金)

あさ〜

_ 1:00AM充電開始、7:00AM再起動。

_ ・・・あ、WDBの新版を公開した時にSDBに使っているWDBモジュールもupdateをかけたはずだったんだが、間違って1日前のをputしてしまったらしい(汗)*1。あわてて直す。

*1: ファイル管理はWin側でやっているのだが、テストと.tar.gz作成はFreeBSD側で行なっている。・・・ということで、FreeBSD側で作ったtar.gzをWin側に転送せずにftpしてしまったというオチ。公開アーカイブはバージョン番号入っているから間違えずに済むんだけども。

_ ・・・なつみかん、人気あるなぁ・・・。


ひる〜

_ ふにふに。

_ "Thu Sep 9 15:17:06 1999"から"936857826"を得る方法・・・って、みさきチェックはそれを積まずにいままで動いていたんですか・・・逆に不思議。いちばん簡単なのはmican *2のソースにある通りtimegm()を使うことかと。WDBは自前で計算してますが。

*2: micanへのURL、ぽぽぽに書きません? 天野からなつみかん経由で探してしまったり。

_ 年越しかぁ・・・部長のおせちと雑煮がウチで食えるとわし的最高なんだが(汗)。まぁ、どこにせよ、みんなで呑みつつ食いつつ遊びつつTVでY2K発生イベントを今か今かと待つのが今年のトレンドか*3

*3: 端末前でヒーコラしてるのがもう一つのトレンドかもしれんが、それはイヤ^^;。

_ 昼飯はFMでのり弁当。

_ SDB登録後・・・結局PAZ氏の日記の更新時刻取得に一度も成功していない。SDBが10秒でタイムアウトにするのがその理由。実測してみると、HEADするだけでだいたい15秒から20秒かかっている。静的に置いてある画像なんかを狙うと瞬時に反応が返ってくるから、サーバそのものや転送経路に問題があるわけじゃない。hnsのソースを見ると、HEADリクエストでも必死に本文を生成しながら、結局捨てちゃうらしい。これじゃ重いわな・・・。Content-Length:を返すためならともかく、そうでないならリソースの無駄遣いだ・・・。

_ このまま放っておいて無駄なリソース食わせるのもナニだし、これだけのためにリモートたぐるのもナニだし、ここだけタイムアウトを例外扱いするのもナニだし、タイムアウト時間を延長するのはサーバ負担を考えると好ましくないし、かといってエントリ削除するのはイヤだし・・・どうしたものか・・・。

_ ナデシコ劇場版は10/22のDVD発売が待ち遠しい状態。そーいやナデ祭からもう1年ですな・・・そろそろまた観たい的。

_ 日本酒吟醸の会、今度は行きたいんだが・・・まずはがきゲットからか。・・・と思ったらはがきなしでも入れるみたい。


肉体会

_ 定時撤収。さくさく肉体会待ち合わせポイント到着。1時間前^^;。ファーストキッチンで涼む。

_ 肉体会。400gはいい感じだったが、満足度はかう少年のほうが高いかも。USBと虚数が今夜のメインストリームだったようだ。

_ 主将ニセポイントを視認したりしつつ、撤収。


ぐるぐる

_ 仲間由紀恵対応(笑)を見て、チェッカで確認してみる・・・あ、バグってる^^;。

_ 対策を施してローカルテスト、成功したので本番投入・・・したが、昼間にhina.diの解析部をいじった分のテストを忘れてて、それが怪しかったためにヤバい事態に。がががっと直して動作確認して、しばらくircしてたらCXが放送終了して放送開始・・・寝よう^^;。




hauN Last update: Saturday, 04-Jun-2011 17:29:57 JST
Access Count: 824072 (start 1997/07/04)

メールはこちらへ...[後藤浩昭 / Hiroaki GOTO / GORRY / gorry@hauN.org]

「表紙へ戻る」
「会議室」 「最新版」 「なびろぐindex」 「GNSソースを読む」