ファミコンのプログラム4 (563レス)
ファミコンのプログラム4 http://mevius.5ch.net/test/read.cgi/gamedev/1343539143/
上
下
前次
1-
新
通常表示
512バイト分割
レス栞
抽出解除
レス栞
267: 名前は開発中のものです。 [sage] 2014/06/08(日) 02:12:41.17 ID:CkZRo6BG >>266 続き VBlank期間は、一瞬で戻るのではなく、NTSC(日本のアナログ放送の信号規格)の場合 20本分の横線を描くぐらいの時間があります。この間、電子銃から電子は飛びません。 非VBlank期間は、ファミコンのPPUは画像の信号を作るため、 CHR-ROMからパターンを読み込んだり、VRAMからネームテーブルや 属性情報を読み込んでいて、PPUの信号線(PPUバス)を占有しています。 VBlank期間は、PPUが画像の信号を作らないので、PPUバスは開放されており CPUはPPUを介してPPUバスにつながっているVRAMにアクセスできます。 「VBlank待ちの直後にVRAMの書き換えを行え」というのは、PPUが映像信号を 作るのに邪魔にならないタイミングでVRAMにアクセスしなさいということです。 http://mevius.5ch.net/test/read.cgi/gamedev/1343539143/267
268: 名前は開発中のものです。 [sage] 2014/06/08(日) 02:53:09.19 ID:CkZRo6BG >>267 続き 非VBlank期間中にCPUがVRAMにアクセスできる方法があります。 PPUレジスタ $2001 のbit3とbit4を0にして、BGとスプライトを非表示にすることです。 画像の信号を作るためのPPUのCHR-ROMやVRAMへのアクセスが止まるので PPUバスが開放され、CPUはPPUを介してVRAMにアクセスできます。 代わりに、画面に何も表示されない箇所が現れることになります。 BGとスプライトを非表示にするタイミングにばらつきがあると、 画面がちらつく現象となります。 > VBlankのタイミングと書き換えは理解しずらいのですが、ファミコンのPPUの仕様なんですかね。 ファミコンの設計による制限であるため、仕様と言えば、その通りです。 http://mevius.5ch.net/test/read.cgi/gamedev/1343539143/268
メモ帳
(0/65535文字)
上
下
前次
1-
新
書
関
写
板
覧
索
設
栞
歴
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
AAサムネイル
Google検索
Wikipedia
ぬこの手
ぬこTOP
1.878s*