Last Update 09/05/21

前景処理(ロックマンや敵が背景に隠れる処理)についての記述です。


・ステージ毎のロックマンが背景に隠れるか否かの設定(この値が$0528にORAされる) 
$7C87B〜7C88A (10) = ステージ番号: 設定値(00で隠れない、20で隠れる)

ステージ開始・中間復帰時のロックマン登場時に、この設定が読み込まれる。(*)
デフォルトではトードマンステージでのみ使用されている。
この設定はシャッターを通過する度に無効化される。

(*)更にトードマンステージでは、ボス部屋前からの復帰時にこの設定を無効化するコードが含まれている。
   (ステージ番号 = $7870Eの値)かつ(復帰部屋番号 = $78715の値)を満たすとき、背景に隠れる設定を無効化する



・トードマンステージのスクロール毎のスプライト(8x8タイル単位)が背景に隠れるか否かの設定(この値がメモリの$EFに入る) 
$7CFB1〜7CFC0 (10) = スクロール番号: 設定値(00で無効、設定した値よりも座標が下のスプライトを背景の裏に隠す)

ロックマンの他、敵などのオブジェクトにも有効な設定。



・ステージ毎のスプライト(8x8タイル単位)が背景に隠れるか否かの設定(ステージ開始、中間復帰時にこの値がメモリの$EFに入る) 
$7C88B〜7C89A (10) = ステージ番号: 設定値(00で無効、設定した値よりも座標が下のスプライトを背景の裏に隠す)
デフォルトではファラオマンステージでのみ使用されている。

ロックマンの他、敵などのオブジェクトにも有効な設定。



・ファラオマンステージでの$EFの値のクリアタイミング
ファラオマンステージではステージ後半部で前景処理を無効化するコード($EFに値00を代入する)が含まれている。
$7CF84 スクロール先の部屋番号がこの値以上ならばクリア 
$7C6FB-7C702 中間地点から復帰ならクリア(プログラム) 



・コサックステージのスプライト(8x8タイル単位)が背景に隠れるか否かの設定(毎フレームセットされ直される) 
$7C714 00で無効、設定した値よりも座標が下のスプライトを背景の裏に隠す($EFに00を入れた後、部屋番号が下の値未満ならばこの値が$EFに入る) 
$7C710 ここで設定した部屋番号以降、上の値を$EFに入れない 


※ステージに関係なくシャッターを通過する度にメモリの$EFは00にクリアされる。