初代ポケモンのレポートは、SRAMに記録されます。初代ポケモンのSRAMは32KiBであり、各8KiBのバンク4つ(バンク0~3)で構成されています。この記事では、各SRAMバンクごとのデータ構造を示します。
※開始アドレス・終了アドレスは、メモリ上のアドレスを示しています。
※未使用領域は、データクリア以外で読み書きすることはありません。
バンク0
開始アドレス | 終了アドレス | サイズ(byte) | 内容 | 備考 |
---|---|---|---|---|
A000h | A187h | 392 | グラフィックバッファ領域0 | 圧縮されているグラフィックデータの展開に使用される (他のバッファ領域も同様) |
A188h | A30Fh | 392 | グラフィックバッファ領域1 | |
A310h | A497h | 392 | グラフィックバッファ領域2 | |
A498h | A597h | 256 | 未使用 | |
A598h | B857h | 4800 | 殿堂入りデータ(50回分) | |
B858h | BFFFh | 1960 | 未使用 |
殿堂入りデータ
殿堂入りデータは1回あたり96バイトで、下位アドレス側から古い順に入っています。
オフセット | サイズ(byte) | 内容 |
---|---|---|
0 | 16 | 1匹目の殿堂入りポケモン |
16 | 16 | 2匹目の殿堂入りポケモン |
32 | 16 | 3匹目の殿堂入りポケモン |
48 | 16 | 4匹目の殿堂入りポケモン |
64 | 16 | 5匹目の殿堂入りポケモン |
80 | 16 | 6匹目の殿堂入りポケモン |
オフセット | サイズ(byte) | 内容 |
---|---|---|
0 | 1 | 外見の内部番号 |
1 | 1 | レベル |
2 | 6 | ニックネーム |
8 | 8 | 00h (パディング) |
1回の殿堂入りポケモンが5匹以下の場合は、その回の最後の殿堂入りポケモンの直後にFFhが入り、FFhより後ろの領域は全て00hとなります。例えば3匹で殿堂入りした場合、最初の3匹分は表3のデータが書き込まれます。4匹目は外見の内部番号にFFhが書き込まれ、残りの15バイト分の領域に00hが書き込まれます。5匹目と6匹目のデータは全て00hが書き込まれます。
バンク1
開始アドレス | 終了アドレス | サイズ(byte) | 内容 | WRAM・HRAMの対応アドレス | 備考 |
---|---|---|---|---|---|
A000h | A597h | 1432 | 未使用 | ||
A598h | A59Dh | 6 | 主人公の名前 | D11Dh~D122h | |
A59Eh | ACD4h | 1847 | メインデータ | D27Bh~D9B1h | |
ACD5h | AED4h | 512 | スプライトデータ | C100h~C2FFh | |
AED5h | B02Ch | 344 | 手持ちポケモンのデータ | D123h~D27Ah | |
B02Dh | B592h | 1382 | 現在選択中のボックスのデータ | D9B2h~DF17h | |
B593h | B593h | 1 | ? | FFD7h | 詳細不明(タイル関連の値) |
B594h | B594h | 1 | チェックサム | - | A598h~B593hのチェックサム |
B595h | BFFFh | 2667 | 未使用 |
チェックサムは、次のようにして計算されます: 範囲内の値を1バイト単位で全て足し合わた値を256で割った余りを求める。その値をビット反転した値がチェックサムとなる。
レポートに書き込まれるWRAMのアドレスを昇順に並べると、次のようになります: C100h~C2FFh、D11Dh~DF17h
(すなわち、アドレスC000h~C0FFh、C300h~D11Ch、DF18h~DFFFhのデータはセーブされない)
バンク2・3
開始アドレス | 終了アドレス | サイズ(byte) | 内容 | 備考 |
---|---|---|---|---|
A000h | A565h | 1382 | ボックス1・5 | バンク2はボックス1、バンク3はボックス5 |
A566h | AACBh | 1382 | ボックス2・6 | バンク2はボックス2、バンク3はボックス6 |
AACCh | B031h | 1382 | ボックス3・7 | バンク2はボックス3、バンク3はボックス7 |
B032h | B597h | 1382 | ボックス4・8 | バンク2はボックス4、バンク3はボックス8 |
B598h | B598h | 1 | チェックサム | A000h~B598hのチェックサム(このアドレス自身もチェックサムの計算対象になる) ただし、このアドレスが読み込まれることはない |
B599h | BFFFh | 2663 | 未使用 |
外部リンク
Save data structure (Generation I) - Bulbapedia, the community-driven Pokémon encyclopedia *1
*1:リンク先の解説は英語版を対象としており、日本語版とは構造が違う点に注意