Last update: Saturday, 04-Jun-2011 17:29:57 JST |
_ 差分検知より、それの整形のほうが問題という気がしないでもない。単純に「タグ全部ばっさりポイ」だけじゃ読むに堪えなさそーだ・・・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が落ちるということそのものがかなり怪しいので、まず動作環境を調べるべきかと思います・・・。
_ かなりげんなりなでばっぐ・・・というか原因究明作業。
_ ・・・あとは野となれ山となれ・・・。
_ 昼飯はケンタ。辛口復活したのカー。
_ ロードとストアで命令が違うのは、アセンブラを楽に作るため(オペランド2つより1つのほうが楽)だというのは知られた話。「命令が少ないのとオペランドが少ないの、どっちが美しい?」ってところでしょう。
_ 再インストールせずにマザーを変更するときは、一度Safe modeで起動して全ドライバを削除してから再起動すると、トラブルが少なくなります。この例ではとくにトラブルなかったみたいですけど。
_ ・・・mobioがディスク最適化中にfreeze・・・ヘンなことになってなければいいが・・・。
_ 電話。ひと月後の予定はひと月半後に伸びてしまった・・・。
_ ということで、メールで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検索してるから。前者は後者の一部なので、どっちも検索にひっかかってしまうんですな。
_ じゃ、まぁ、そんなわけで、いろいろdoc書きが必要になるわけだな・・・。
_ ししとう安いですねー。今週は2度ほど使用しましたが、一度おとーとが火吹いてました^^。
_ VRAMの実装方法は決まってないので、リソースはDIBデータで持っておいて、それをDDSurfaceに一度DIBのBlt系のAPIでputしてDDBにしたあとに、DDBを実際のCopy Srcにする・・・という使い方をするはずです。
_ フレッシュ・ロボ経由でアブノーマルチェック。恋愛166.35「動物代表級のどちらかってーとノーマル」、生活134.15「哺乳類代表級のノーマル?」。しかしこれまた答えられない問題が・・・。
_ 昼飯は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
・・・寝てないと思われてもおかしくないですねぇ・・・^^。
_ 部屋片付けたり洗濯したり。
_ 昼飯ついでにヨドバシでも回ってくることにする。・・・ぐるぐるして、天下一品でから揚げ定食。
_ janusさんとこからJIUJING創作をひととーり読む。なんかこう、ものすごい「痛烈な皮肉」を感じた。技巧的だがハートのない文章の羅列。読者をもてなす・・・と言っていてもそれは作者の想いのみで、二次創作にあたってもっとも必要であると思われる「読者が作品を読んで感じる『その向こう側にある原作』」についてまったく考えられていない・・・いや、むしろそれを排除して書いたようにみえる・・・そんな文章が、読者をどれほどもてなすことができるのか。旧態依然とした「小説」の文法にとらわれていて、映像や音声やゲームの世界から文章の世界へ来た新しいストリームを理解しようとしていない。・・・すべてことごとくゲームやアニメから発生した文章群とは逆のベクトルを向いている。
_ 稚拙だろうが何だろうが、面白いものを伝えることができれば勝利。もちろん、技巧をこらすことができれば、面白いものをより面白くできることができるけども。
_ 電話。夜の予定がキャンセルになった。秋葉へ出ようか。
_ たま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
_ ふにふに。
_ 今でもCMやってると思いますが・・・^^。
_ 日記システム側にDIを搭載するんですか・・・GNSでは今のところ考えていません。というのも、
・・・と考えると、日記鯖のようなところ*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ならそれを検知できますから。
_
SDB更新時刻取得方法を設置。近日中にユーザーがテストできるページを開設予定・・・しばし待て。
_ ふにふに。
_ 散財欲を刺激するな(汗)。わしが前にいろいろお試ししたときはDCD-1650ARがいちばん値段と満足度のバランスのいいブツだったな・・・DCD-S10IIとの差はあまりよくわからなかったので。本体ヘッドホン端子&聞き慣れないヘッドホンだったせいかもしれんけど。
_ CDといえば・・・昨晩たまPから借りたCDを聴いていて、「TAITO GAME MUSIC VOL.2」(アルファレコード)のDARIUSの基盤収録音が当時にしてはやたらいい録音だったので驚いた。当時ありがちな貧弱な録音環境やかけすぎリバーブとは無縁の世界。基盤から漏れる「CPUが走る音」は残っているが、これはむしろ「入っていて然るべき音」として気にしないことにする。どっかに板残ってないかな・・・残ってないだろーなぁ・・・。
_ href 、= が抜けて・・・ますね。直します。かなり修正入っているから、そろそろ公開しないとな・・・。
_ 昼飯はおろし唐揚げ弁当。ウナギまんが出ていたので食べる・・・カレーにせよ何にせよ、うなぎはやめたほうがいいと思う・・・^^;。
_ パッチモジュールの動作試験。
_ 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してあるようなバカ形式だが、おかげで新しいフォーマットを追加するのは簡単だ(汗)。
_ 家でもしばらく格闘して、ようやく満足いく動作に仕上がったので実験開始。検索キー指定時に不要な部分を切り落としてから日付抽出ができるようにしてみた。検索キーに".+*"のいずれかが含まれていると、検索キーの正規表現で切り出しに成功した部分のみから日付マッチングを行なう。例えば"Last.*"と指定すると、"Last"を含む行の"Last"より後の文字からマッチングするわけ。
_ 相互参照は、労多くして実入りの少ない機能だと思います。掲示板のような1記事1URIなシステムなら、システムの機能としてそれを準備するのはたやすいことですが、日記システムの場合は
・・・こんな考えを持っています。
_ ふにふに。
_ ひゅーひゅー>誰となく。
_ メールテンプレートミス。わしの場合、Becky!ですが
という設定で、間違ったことは一度もないです。
_ ところで・・・今日は99年9月9日ということでY2Kイベント日・・・という話があったが、ホントにそんな実装あるんだろうか。2桁年と月日をpackして入れるなら6桁で、その終端コードに"999999"を使う可能性ならまだ考えられるのだが・・・それは99年9月9日にはならないよなぁ・・・。
_ 日付データの実装パターン。
*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%」だってさ。
_ ふにふに。
_ "Thu Sep 9 15:17:06 1999"から"936857826"を得る方法・・・って、みさきチェックはそれを積まずにいままで動いていたんですか・・・逆に不思議。いちばん簡単なのはmican *2のソースにある通りtimegm()を使うことかと。WDBは自前で計算してますが。
_ 年越しかぁ・・・部長のおせちと雑煮がウチで食えるとわし的最高なんだが(汗)。まぁ、どこにせよ、みんなで呑みつつ食いつつ遊びつつTVでY2K発生イベントを今か今かと待つのが今年のトレンドか*3。
*3: 端末前でヒーコラしてるのがもう一つのトレンドかもしれんが、それはイヤ^^;。
_ 昼飯はFMでのり弁当。
_ SDB登録後・・・結局PAZ氏の日記の更新時刻取得に一度も成功していない。SDBが10秒でタイムアウトにするのがその理由。実測してみると、HEADするだけでだいたい15秒から20秒かかっている。静的に置いてある画像なんかを狙うと瞬時に反応が返ってくるから、サーバそのものや転送経路に問題があるわけじゃない。hnsのソースを見ると、HEADリクエストでも必死に本文を生成しながら、結局捨てちゃうらしい。これじゃ重いわな・・・。Content-Length:を返すためならともかく、そうでないならリソースの無駄遣いだ・・・。
_ このまま放っておいて無駄なリソース食わせるのもナニだし、これだけのためにリモートたぐるのもナニだし、ここだけタイムアウトを例外扱いするのもナニだし、タイムアウト時間を延長するのはサーバ負担を考えると好ましくないし、かといってエントリ削除するのはイヤだし・・・どうしたものか・・・。
_ ナデシコ劇場版は10/22のDVD発売が待ち遠しい状態。そーいやナデ祭からもう1年ですな・・・そろそろまた観たい的。
_ 日本酒吟醸の会、今度は行きたいんだが・・・まずはがきゲットからか。・・・と思ったらはがきなしでも入れるみたい。
_ 仲間由紀恵対応(笑)を見て、チェッカで確認してみる・・・あ、バグってる^^;。
_
対策を施してローカルテスト、成功したので本番投入・・・したが、昼間にhina.diの解析部をいじった分のテストを忘れてて、それが怪しかったためにヤバい事態に。がががっと直して動作確認して、しばらくircしてたらCXが放送終了して放送開始・・・寝よう^^;。
メールはこちらへ...[後藤浩昭 / Hiroaki GOTO / GORRY / gorry@hauN.org]