スプライトメモリ

とりあえず

スロットの割り当てパターン

IDは基本的に高い順に探索し、空きIDを見つけたらそれが割り当てられる。

ID:AとBは全てアイテム用に分類されているので省略。
ID:0 ID:1 ID:2 ID:3 ID:4 ID:5 ID:6 ID:7 ID:8 ID:9 予約1 予約2
$00 通常 なし なし
$01 通常/予約12 予約12 未使用 $5F(乗ると回転するリフト) $64(ロープ)
$02 予約1 通常/予約1 未使用 $54(回転金網) なし
$03 予約12 通常 未使用 $5E(大きい浮島) なし
$04 予約12 通常 未使用 $60(押した後のスイッチ) $9F(マグナムキラー)
$05 予約1 通常 未使用 $28(アトミックテレサ) なし
$06 通常/予約1 未使用 $88(鳥籠の翼) なし
$07 未使用 通常 未使用 なし なし
$08 通常 未使用 なし なし
$09 予約1 通常 $C5(ボステレサ) なし
$0A 通常/予約1 通常 未使用 $86(ハナチャン) なし
$0B 予約1 通常 未使用 $28(アトミックテレサ) なし
$0C 通常 未使用 なし なし
$0D 予約12 通常 未使用 $90(緑のガス球) $9F(マグナムキラー)
$0E 通常 未使用 なし なし
$0F 通常 未使用 なし なし
$10 通常 なし なし
$11 通常 予約1 未使用 $AE(スプーク) なし
$12 通常 未使用 なし $D0(連続出現右リフトン?)


OAM割り当てパターン


共通


上に漂うテレサ等は1体目・2体目両方使用する。

+$00    +$04    +$08    +$0C    +$10    +$14    +$18    +$1C   
$0300 方向転換時の持ってるスプライトなどで使用 マリオの体などで使用
$0320 マントなどで使用 ID:A ID:B 円を成すテレサ1体目
$0340 円を成すテレサ1体目 円を成すテレサ2体目
$0360
$0380
$03A0
$03C0
$03E0 円を成すテレサ2体目


K.K.の雷のみOAM割り当てに不具合があり、1スロットズレる。

+$00    +$04    +$08    +$0C    +$10    +$14    +$18    +$1C   
$0300 方向転換時の持ってるスプライトなどで使用 マリオの体などで使用
$0320 マントなどで使用 ID:A ID:B 未使用 K.K.の炎1組目
$0340 K.K.の炎1組目 炎2組目
$0360 炎2組目
$0380
$03A0
$03C0
$03E0 K.K.の炎2組目


ジュゲムの雲は手前部分を全てのスプライトより手前に表示するため、
常にスプライト用に割り当てられるOAMの先頭を使用する。
奥部分も同様に全てのスプライトより奥に表示するために、OAMの末端を使用している。
フィッシングジュゲムはクラスタスプライト領域を使用するため、
クラスタスプライトとの共存は非推奨。

+$00    +$04    +$08    +$0C    +$10    +$14    +$18    +$1C   
$0300 方向転換時の持ってるスプライトなどで使用 マリオの体などで使用
$0320 マントなどで使用 ID:A ID:B ジュゲムの雲 手前部分 ジュゲムの釣り竿
$0340 ジュゲムの釣り竿
$0360
$0380
$03A0
$03C0
$03E0 ジュゲムの雲 奥部分



メモリ00・06・0F・12 - 汎用1

通常ステージ用のスプライトメモリ。
メモリ06のみ優先スプライトが指定されているが、未使用のスプライトなので実質優先スプライトは無し。
通常スプライトで使用可能なスプライト枚数は5枚。ID9のみ端数込みで7枚使用可能。

+$00  +$04  +$08  +$0C  +$10  +$14  +$18  +$1C 
$0300
$0320 ID:A ID:B ID:0
$0340 ID:0 ID:1 ID:2
$0360 ID:2 ID:3
$0380 ID:4 ID:5
$03A0 ID:5 ID:6 ID:7
$03C0 ID:7 ID:8
$03E0 ID:8 ID:9 余り


メモリ01・11 - アスレチック・スプーク

アスレチック・スプーク用のスプライトメモリ。
優先スプライトはメモリ01の場合ロープくんと回転するリフトの2種、
メモリ11の場合スプークで、これらはスプライトを10枚使える。
通常スプライトで使用可能なスプライト枚数は5枚。メモリ00と同じくID5のみ端数分込みで7枚使用可能。

+$00  +$04  +$08  +$0C  +$10  +$14  +$18  +$1C 
$0300
$0320 ID:A ID:B ID:6
$0340 ID:6 ID:7
$0360 ID:7
$0380 ID:0 ID:1
$03A0 ID:1 ID:2 ID:3
$03C0 ID:3 ID:4
$03E0 ID:4 ID:5 余り


メモリ02 - 回転金網

回転金網を使うステージ用のスプライトメモリ。
優先スプライトは回転金網で、使用可能なスプライト枚数は9枚。
通常スプライトで使用可能なスプライト枚数は4枚だが、それぞれ5枚を割り当てられるほどスプライトが余っている。

+$00  +$04  +$08  +$0C  +$10  +$14  +$18  +$1C 
$0300
$0320 ID:A ID:B ID:0
$0340 ID:0 ID:1
$0360 ID:1 ID:2 ID:3
$0380 ID:3 ID:4 ID:5
$03A0 ID:5 ID:6 ID:7
$03C0 ID:7 余り
$03E0 余り 背景の炎で使用


メモリ03 - 巨大浮島

巨大浮島用のスプライトメモリ。巨大浮島は本家では未使用なので未使用のメモリだと思われる。
優先スプライトは巨大浮島のみ。使用可能なスプライト枚数は9枚。
通常スプライトで使用可能なスプライト枚数は5枚。
ID:8と9は未使用スロットだが割り当てはあり、それぞれ2枚までスプライトを使える。

+$00  +$04  +$08  +$0C  +$10  +$14  +$18  +$1C 
$0300
$0320 ID:A ID:B ID:0
$0340 ID:0 ID:1
$0360 ID:1 ID:2
$0380 ID:2 ID:3
$03A0 ID:4 ID:5
$03C0 ID:5 ID:6 ID:7
$03E0 ID:7 ID:8 ID:9


メモリ04 - マグナムキラー

マグナムキラー用のスプライトメモリ。
優先スプライトはマグナムキラーと押した後の緑スイッチ(?)で、使用可能なスプライト枚数はなぜか16枚ではなく17枚。
通常スプライトで使用可能なスプライト枚数は5枚。
ID:8と9は未使用スロットだが割り当てはあり、それぞれ1枚スプライトを使えるがID7と領域が被ってるため使わない方が無難だろう。

+$00  +$04  +$08  +$0C  +$10  +$14  +$18  +$1C 
$0300
$0320 ID:A ID:B ID:0
$0340 ID:0
$0360 ID:0 ID:1
$0380 ID:1 ID:2 ID:3
$03A0 ID:3 ID:4
$03C0 ID:4 ID:5 ID:6
$03E0 ID:6 ID:7 ID:8 ID:9


メモリ05 - アトミックテレサx2

アトミックテレサ用のスプライトメモリ。
優先スプライトはアトミックテレサで、使用可能なスプライト枚数は21枚。
さらに優先スロットが2枠あるため、アトミックテレサのためだけに42枚のスプライトが確保されている。
通常スプライトはスプライト枚数を2枚しか割り当てられてないため、実質4枚使用するノコノコを出すとほぼ確実にOAMが衝突し、グラ化けを起こす。


+$00  +$04  +$08  +$0C  +$10  +$14  +$18  +$1C 
$0300
$0320 ID:A ID:B ID:0
$0340 ID:0
$0360 ID:0
$0380 ID:0 ID:1
$03A0 ID:1
$03C0 ID:1 ID:2
$03E0 ID:3 ID:4 ID:5 ID:6


メモリ07 - 群れテレサ

クラスタスプライト重視のスプライトメモリ。
円を成すテレサや群れるテレサを使いたい時にこれを設定すると良いだろう。
優先スプライトは無し。
通常スプライトで使用可能なスプライト枚数は5枚。
ID:1は未使用スロットだがOAM割り当てはある。スロット設定のミスかK.K.のOAMバグを発生させない為の対処か?

※K.K.と群れテレサはID0のメモリを間借りして処理しているため、
このメモリ以外で使用すると不具合が発生する可能性がある。

+$00  +$04  +$08  +$0C  +$10  +$14  +$18  +$1C 
$0300
$0320 ID:A ID:B クラスタスプライト用領域
$0340 クラスタスプライト用領域
$0360 ID:1 ID:2
$0380 ID:2 ID:3 ID:4
$03A0 ID:4 ID:5
$03C0 ID:5 ID:6 余り
$03E0 クラスタスプライト用領域


メモリ08 - 不明

※どこで使わてるか分かりません。分かった方がいましたら解説の加筆をお願いします。

優先スプライトは無し。
通常スプライトで使用可能なスプライト枚数は5枚。

+$00  +$04  +$08  +$0C  +$10  +$14  +$18  +$1C 
$0300
$0320 ID:A ID:B ID:0
$0340 ID:0 ID:1 ID:2
$0360 ID:2 ID:3
$0380 ID:4 ID:5
$03A0 ID:5 ID:6 余り
$03C0 余り
$03E0 余り


メモリ09 - ボステレサ

ボステレサ戦用のスプライトメモリ。
優先スプライトはボステレサで、使用可能なスプライト枚数は20枚。
通常テレサとブルブルブロック以外スプライトが出ない環境のため、
通常スプライトで割り当てられているスプライト枚数はわずか1枚だが、スプライトは大量に余っている。

+$00  +$04  +$08  +$0C  +$10  +$14  +$18  +$1C 
$0300
$0320 ID:A ID:B ID:1 ID:2 ID:3 ID:4
$0340 ID:5 ID:6 ID:7 ID:8 ID:9 余り
$0360 余り
$0380 余り
$03A0 ID:0
$03C0 ID:0
$03E0 ID:0


メモリ0A - ハナチャン

ハナチャン用のスプライトメモリ。
優先スプライトはハナチャンで、使用可能なスプライト枚数は6枚。
通常スプライトで使用可能なスプライト枚数は5枚。

※ハナチャンはID/4の余りを胴体の情報のIDとして設定しているため、
このメモリ以外で使用すると胴体IDに同じ値が設定され不具合が発生する可能性がある。
ハナ・N・フォンテーンスタンド
+$00  +$04  +$08  +$0C  +$10  +$14  +$18  +$1C 
$0300
$0320 ID:A ID:B ID:0
$0340 ID:0 ID:1
$0360 ID:2 ID:3
$0380 ID:3 ID:4
$03A0 ID:5 ID:6
$03C0 ID:6 ID:7 ID:8
$03E0 ID:8 余り


メモリ0B - アトミックテレサ+円を成すテレサ

お化け屋敷用のスプライトメモリ。
アトミックテレサと円を成すテレサを同時に出したい時使うと良いだろう。
優先スプライトはアトミックテレサで、使用可能なスプライト枚数は21枚。
通常スプライトで使用可能なスプライト枚数は5枚。

+$00  +$04  +$08  +$0C  +$10  +$14  +$18  +$1C 
$0300
$0320 ID:A ID:B クラスタスプライト用領域
$0340 クラスタスプライト用領域 ID:0
$0360 ID:0
$0380 ID:0 ID:1
$03A0 ID:2 ID:3
$03C0 ID:3 ID:4 余り


メモリ0C - 円を成すテレサ・ジュゲム

お化け屋敷・ジュゲム用のスプライトメモリ。
メモリ0Bからアトミックテレサ用領域を消した物と考えると良いだろう。
優先スプライトは無し。
通常スプライトで使用可能なスプライト枚数は5枚。

+$00  +$04  +$08  +$0C  +$10  +$14  +$18  +$1C 
$0300
$0320 ID:A ID:B ジュゲム雲 手前 ジュゲム釣り竿
$0340 ジュゲム釣り竿 ID:0
$0360 ID:0 ID:1
$0380 ID:2 ID:3
$03A0 ID:3 ID:4 ID:5
$03C0 ID:5 ID:6
$03E0 ID:6 ID:7 ジュゲム雲 奥


メモリ0D - ガス球x2・マグナムキラーx2

緑のガス球用のスプライトメモリ。
優先スプライトは緑のガス球とマグナムキラーで、使用可能なスプライト枚数は17枚。
通常スプライトで使用可能なスプライト枚数は3枚。
マグナムキラーを2体出したい時はこれを使うのも悪くないだろう。


+$00  +$04  +$08  +$0C  +$10  +$14  +$18  +$1C 
$0300
$0320 ID:A ID:B ID:0
$0340 ID:0
$0360 ID:0 ID:1
$0380 ID:1
$03A0 ID:1 ID:2
$03C0 ID:2 ID:3 ID:4 ID:5
$03E0 ID:5 ID:6 ID:7


メモリ0E - 汎用2

回転リフトなど使いたい時のためのスプライトメモリ。
基本的にこれとメモリ00を使えば事足りるだろう。
優先スプライトは無し。
通常スプライトで使用可能なスプライト枚数は6枚。

+$00  +$04  +$08  +$0C  +$10  +$14  +$18  +$1C 
$0300
$0320 ID:A ID:B ID:0
$0340 ID:0 ID:1
$0360 ID:2 ID:3
$0380 ID:3 ID:4
$03A0 ID:4 ID:5
$03C0 ID:6 ID:7
$03E0 ID:7 余り


メモリ10 - クッパ戦

クッパ戦用のスプライトメモリ。
優先スプライトは指定されていないが、クッパ側が任意のIDに生成するので問題ない。
クッパ戦以外で使われていない上、クッパの仕様から別のメモリでも事足りる。
NoMoreSpriteTileLimits(通称10番パッチ / 動的割り当てパッチ)はこのメモリを改造する。
ID:9は使用可能スロットだが、メモリ割り当てはされていない。

+$00  +$04  +$08  +$0C  +$10  +$14  +$18  +$1C 
$0300
$0320 ID:A ID:B ID:0
$0340 ID:0 ID:1 ID:2 ID:3
$0360 ID:4 ID:5 ID:6 ID:7 ID:8 余り
$0380 余り
$03A0 余り
$03C0 余り
$03E0 余り

タグ:

+ タグ編集
  • タグ:

このサイトはreCAPTCHAによって保護されており、Googleの プライバシーポリシー利用規約 が適用されます。

最終更新:2015年11月28日 10:26