ファミコンのプログラム2
■ このスレッドは過去ログ倉庫に格納されています
0225222
2006/03/06(月) 13:04:12ID:LoDqGF2/NMIルーチンとメインルーチンでそれぞれにあるのですが、mmc1レジスタを(0x80を書き込んで)リセットしてるようすがないのです。
http://emu-docs.org/NES/Mappers/mappers.txt
などでは、mmc1は5回書き込むと反映されると書いてあり、ドラクエ3のロムの場合、通常は5回づつ連続して書き込んでいるため問題ないのですが、
NMI外で0xFFFFに書き込んでいる途中でNMIが発生する場合があり、その場合はリセットしなくてはおかしくなるはずですよね?
(gnesのデバッガでみると、この場合もNMI後にはリセット無しで新しく5回カウントしてるようです。)
エミュを自作中なんですが、いつもこの部分で挙動がおかしくなるので困っています。
んでincでもリセットさせたら動くようになったので、もしや>>222のようなことなのかと思ったしだいですが、やっぱり初耳ですか。
じゃ、どこでリセットしてるんだろ。種類の違うレジスタに書き込むとリセットするとかあるんでしょうか。
■ このスレッドは過去ログ倉庫に格納されています