とします。ここで、sp=消したいスプライトの面番号、y1=217(SCREEN 4以上)または209(SCREEN 3以下)、nはどんな値でも構いません。
とすると、面番号sp以降のスプライト面は表示されなくなります。
ここで、y2=216(SCREEN 4以上)または 208(SCREEN 3以下)、nはどんな値でも構いません。
y座標をy2以外にすると表示を再開しますが、消えていたほかのスプライトも再び表示されます。
それを避けたい場合は、方法1で消してください。
とします。
ここで、y2=216(SCREEN 4以上)または 208(SCREEN 3以下)、nはどんな値でも構いません。
y座標をy2以外にすると表示を再開しますが、消えていたスプライトが再び元の場所に表示されます。
それを避けたい場合は、方法1で消してください。
とします。この方法はMSX2以降の機種でのみ有効です。
VDP(9)=VDP(9) AND &B11111101
とすると表示を再開しますが、消えていたスプライトが再び元の場所に表示されます。 それを避けたい場合は、方法1で消してください。
任意のスプライトを表示しないだけなら、スプライトアトリビュート・テーブルのY座標を217(SCREEN 4以上)または209(SCREEN 3以下)にすればよいです。
VDPのコントロールレジスタの8番のビット1を書き換えることによって、スプライト全体の表示/非表示ができます(0:表示 1:非表示)。
BASICによるスプライト消去法も、これらの応用です。