Navigation Log - なびろぐ -
2011/09版 その3

...X680x0 spirit inside...

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

hauN
Go amazon.co.jp

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


2011/09/21 (水) 台風

あさ〜 (生活)

_ 0300充電開始、1000再起動。


一日 (生活)

_ 旅の後始末。車で買い物に出てる間に風雨が強くなり、視界が悪くなったところのバックでガリってしまうなど。


今日のお買い物 (買い物)


2011/09/22 (木) 晴後雨

あさ〜 (生活)

_ 0300充電開始、1000再起動。


一日 (生活)

_ 昨日ガリった車のボディのタッチアップとか。

_ 夕方にまかべさんとこへ打ち合わせに。


今日のお買い物 (買い物)


2011/09/23 (金)

あさ〜 (生活)

_ 0330充電開始、1000再起動。


一日 (生活)

_ わりとオフ。夜だけ飯ついでにS34HWいじりに出たりしたけど。


2011/09/24 (土) 晴時々曇

あさ〜 (生活)

_ 0300充電開始、0930再起動。


あきば〜 (買い物)

_ 出歩いても汗だくにならないいい天気なので、お出かけに秋葉へ。

_ それぞれ、

  • 2.5HDDケースを切らしたのでUSB3.0で追加してみる。
  • VAIOのドック接続時用オーディオ出力。
  • たまたまちょっと気になる音を出していたポータブルスピーカー。
  • nicoWnnGの12キー実装研究用。単文節以外の変換ができる携帯電話端末はこれが初めて・・・(笑)。

2011/09/25 (日) 曇時々晴

あさ〜 (生活)

_ 0330充電開始、1130再起動。


BS新チャンネル (AV)

_ BSスカパーの試験放送を正午から見届ける。

_ じゃ録画鯖に新しいチャンネルの登録をしようか・・・と作業しているうちに日が暮れた・・・。

_ うちは「昔のままのPT2録画環境をカスタムして使っている」ので、最近のバージョンでの対応方法は使えない。各種チャンネルテーブルに新チャンネルを追加後、結局BonDriverとRecTestに新しいBSチャンネルを追加して再コンパイルする作業が必要だった。

_ おまけに、KB2538242でVS2005SP1のvcredistパッケージを最新版にしなければならないところ、録画鯖は「安定動作を保つためOS更新をしない」方針で使っていたため、結局OS更新が必要になり大幅に時間を食ったり。


来月の購入予定 (購入予定)

_ いつものまんが王


2011/09/26 (月)

あさ〜 (生活)

_ 0330充電開始、1130再起動。


一日 (生活)

_ 朝から・・・正確には昨晩遅くから・・・喉が痛い。風邪かな・・・。


2011/09/27 (火) 曇時々晴

あさ〜 (生活)

_ 0330充電開始、1130再起動。


一日 (生活)

_ 鼻づまり・鼻水・くしゃみ・咳・・・完全に風邪。ディスプレイ見てると目が充血してわりときつい。


2011/09/28 (水) 晴時々曇

あさ〜 (生活)

_ 0530充電開始、1230再起動。


液晶残像調査 (PC)

_ ついったでの話の流れから、液晶の残像時間を計ってみることに。

機種時間
PSP-100012/240秒
PSP-30008/240秒
DSi8/240秒
Thinkpad X408/240秒
VAIO Z116/240秒
iPad6/240秒
GALAXY tab6/240秒
LCD2490WUXi25/240秒
REGZA 37Z70003/240秒

_ 調査方法はいたって単純で、「白地に黒の文字が表示されている状態」から、「文字が消えたときに完全に白地になるまで」をExilim EX-FH100の240fpsムービーで撮影して、フレーム数をみるという方法。

_ やはりPSP-1000の遅さが際立つ。そのへんから話は始まったんだけども。


2011/09/29 (木) 晴時々曇

あさ〜 (生活)

_ 0530充電開始、1230再起動。


垂直・水平同期処理の話 (PC)

_ ついったでの話の流れから、垂直・水平同期処理を語ることに。

_ 自分の分は以下の通り。

今だと意識しなければいけないシーンはそうそうないが、CRTコントローラが扱うレジスタやメモリをCPUから触るときは「いまCRTが画面上のどこを走査しているか」を把握しなければならない時代があった

最も基本的なこととして、CRTは「1つの点が左から右、上から下に動きながら輝度を変えることで面を表現する」ことを知っておく必要がある。画面制御系のレジスタやメモリ内容をCRTへの信号に変えるのがCRTコントローラの役目

最初期は「画面走査中にCRT系のレジスタやメモリに触るとCRT制御に影響が出てノイズになる」ので「画面走査中はアクセスできないようにハード的に処理する」とか「CPUアクセス時は画面走査そのものを止める」とかだった

少し進むと、「CRTが画面走査中でも適宜CPUが書き込めるように配慮する」ようになり、また「画面走査中でない」ことをCPUで監視できるようにすることで高速転送が可能に。「監視しなくてもいいようにCPU割り込みをかけられる」ものも

「1つの点が左から右、上から下に動きながら面を描く」ということは、その点が右端へ到達したら左端へ戻す必要があり、下端に到達したら上端に戻す必要がある。これにかかる期間を帰線期間といい、それぞれ水平帰線期間・垂直帰線期間という

ゲームは高速大量に画面処理を行う必要があるので、帰線期間、それも比較的長い「垂直帰線期間」にまとめてアクセスすることが重要になる。また監視にCPUを割くのがもったいないので割り込みが重宝される。これが垂直同期(VSYNC)処理

もちろん、水平帰線期間も有効に使おうという考えはあり、同様に水平同期(HSYNC)処理といわれた。ただ、当時のCPUは性能が低くあまりできることがないと考えたのか実装はそれほど多くはなかった

HSYNCが検出できるようになると、「任意の水平帰線期間でCRTコントローラが扱うレジスタやメモリを書き換える」ことで、静的な表示では不可能だった表現を行うようになる。これがラスター処理といわれるもの

HSYNCを検出できないハードは珍しくなかったが、「CRTCがスプライトを描画するときに重なりがあったら割り込みを発する」機能を代替で使ったり、「VSYNCからの経過時間」をポーリングor割り込みで検出して代替することもあった

HSYNC処理でできることは「スクロールレジスタの書き換え」だけに留まらず、スプライト座標やパレットカラーの書き換え、CGの書き換え、画面の色モードや解像度の書き換えなど多岐に渡る

うねうね系のスクロールレジスタ変更は使いやすくてインパクトがあったのでよく使われ、ついにはラスター毎のスクロールレジスタまで持つに到ったと

このへんまでがラインバッファ系の画面表示のしくみで、フレームバッファ系の画面表示になるとこの手の知識はほぼ不要、せいぜい「VSYNCでバッファのフリップを行う」ことくらいしか知らなくてよくなる

ただ、フレームバッファ方式でも「1つのバッファをフリップさせず常に表示させ続け、垂直帰線期間に入ったらバッファの更新を始める」やり方もある

更新が間に合わないと画面が崩れるが、間に合うなら「ラインバッファ方式と同等のレイテンシで描画できる」利点があり、昨日TLに出ていたダブルバッファ方式のレイテンシの欠点はなくなる話につながる、と


かけん迎撃 (イベント)

_ 夕方から新宿まさみやで、出張できていたかけんを迎撃。途中から塩兄も参戦。


2011/09/30 (金) 晴後曇

あさ〜 (生活)

_ 0630充電開始、1330再起動。


一日 (生活)

_ 昼からずっとコード書きっぱ。とことん腹減ったので吉野家で牛丼特盛をおかずにごはん食ったりとか。




hauN Last update: Saturday, 08-Oct-2011 03:32:38 JST
Access Count: 805129 (start 1997/07/04)

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

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