「注意事項」の編集履歴(バックアップ)一覧に戻る

注意事項 - (2014/07/28 (月) 22:49:51) のソース

**実機での動作について
-Nestopia・NnnesterJ・VirtuaNESの3つで動作が確認できれば実機でも動く可能性が高いでしょう。
-背景のみならず、スプライトの表示もVBlank中に済ませる必要があります。
//-変数宣言時の初期値設定は効果がありません。

**無限ループ
-以下の処理は無限ループになります。
#highlight(c){{{
signed char i;
char j;
j = 0;
for (i=10; i >= j; i--) {}
}}}

-回避するには、評価式に使用する変数もsignedにする必要があります。
#highlight(c){{{
signed char i,j;
j = 0;
for (i=10; i >= j; i--) {}
}}}

**描画について
-背景の描画などを行った後は、スクロール値を設定する必要があります。&br()($2006や$2007にアクセスすると、スクロール値が書き換わるため。)
#highlight(c){{{
VBlank();
SetBackground(0x20,0x00,(char *)bg,10)
SetScroll( 0, 0 );
}}}
-VBlank中やNMI割り込み中に行う処理の優先順位はDMA→BG描画(一部)→その他の処理(パッドのチェックなど)の順。
-VBlank中を確認して描画処理を行っても、VBlank終了間際だと画面がちらつく場合があります。&br()その場合はVBlankを2回チェックしてから描画処理を行いましょう。

**計算について
-サブルーチンの引数に割り算などをそのまま渡すと落ちます。&br()例)SetScroll(10 / 3,0)&br()一旦変数に入れるなどしてからサブルーチンを呼び出しましょう。