実機での動作について
- Nestopia・NnnesterJ・VirtuaNESの3つで動作が確認できれば実機でも動く可能性が高いでしょう。
- 背景のみならず、スプライトの表示もVBlank中に済ませる必要があります。
無限ループ
signed char i;
char j;
j = 0;
for (i=10; i >= j; i--) {}
- 回避するには、評価式に使用する変数もsignedにする必要があります。
signed char i,j;
j = 0;
for (i=10; i >= j; i--) {}
描画について
- 背景の描画などを行った後は、スクロール値を設定する必要があります。
($2006や$2007にアクセスすると、スクロール値が書き換わるため。)
VBlank();
SetBackground(0x20,0x00,(char *)bg,10)
SetScroll( 0, 0 );
- VBlank中やNMI割り込み中に行う処理の優先順位はDMA→BG描画(一部)→その他の処理(パッドのチェックなど)の順。
- VBlank中を確認して描画処理を行っても、VBlank終了間際だと画面がちらつく場合があります。
その場合はVBlankを2回チェックしてから描画処理を行いましょう。
計算について
- サブルーチンの引数に割り算などをそのまま渡すと落ちます。
例)SetScroll(10 / 3,0)
一旦変数に入れるなどしてからサブルーチンを呼び出しましょう。
最終更新:2014年07月28日 22:49