ファミコンのプログラム4 (563レス)
ファミコンのプログラム4 http://mevius.5ch.net/test/read.cgi/gamedev/1343539143/
上
下
前次
1-
新
通常表示
512バイト分割
レス栞
抽出解除
必死チェッカー(本家)
(べ)
自ID
レス栞
あぼーん
180: 名前は開発中のものです。 [sage] 2014/04/22(火) 20:21:50.77 ID:SP0raU7v >>175 ソース読ませてもらったけど、 ldy #0 sty $2001 で、PPUのレンダリング止めると、PPUのバスが空くので その間は自由にVRAMアクセスできたと理解していたんだが 違っていたかな? そうであれば、HBlank待つ必要ないので、パレット書き換えで 非表示になるライン数を減らせると思う。 あと、割り込み時にはiフラグが立った状態でルーチンが 呼ばれるので sei は要らないと思う。 http://wiki.nesdev.com/w/index.php/CPU_interrupts#IRQ_and_NMI_tick-by-tick_execution http://mevius.5ch.net/test/read.cgi/gamedev/1343539143/180
181: 名前は開発中のものです。 [sage] 2014/04/22(火) 20:38:14.58 ID:SP0raU7v >>173 PPUのデータのバス(信号線)が1組で、PPUのレンダリング中はVRAMからデータを読み出している。 CPUがVRAMアクセスのためにPPUアドレスを設定するレジスタ($2006)とPPUがネームテーブルにアクセスするアドレスのレジスタが兼用のため、CPUがパレットのアドレスを書き込むとPPUはパレットデータを読み出してレンダリングすることになる。 と理解しているのですが、間違っていたら指摘お願いします。>他の人 http://mevius.5ch.net/test/read.cgi/gamedev/1343539143/181
185: 名前は開発中のものです。 [sage] 2014/04/22(火) 23:02:12.52 ID:SP0raU7v >>182 なるほど、了解です。 自分も実験してみよう。 http://mevius.5ch.net/test/read.cgi/gamedev/1343539143/185
186: 名前は開発中のものです。 [sage] 2014/04/22(火) 23:13:05.47 ID:SP0raU7v >>184 The PPUDATA read buffer (post-fetch) ttp://wiki.nesdev.com/w/index.php/PPU_registers#The_PPUDATA_read_buffer_.28post-fetch.29 ここに $0000-$3effは内部リードバッファから返すが、$3f00-$3fffは(PPU内部の)データバスに直接配置されている と書かれているので、この辺りの差で挙動が変わるっぽいですね。 http://mevius.5ch.net/test/read.cgi/gamedev/1343539143/186
メモ帳
(0/65535文字)
上
下
前次
1-
新
書
関
写
板
覧
索
設
栞
歴
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
AAサムネイル
Google検索
Wikipedia
ぬこの手
ぬこTOP
1.149s*