Address (hex) |
Type |
Description
|
00909FB0
|
4 Bytes
|
Control disabled in cutscene
|
00909FB4
|
4 Bytes
|
Not in cutscene, but control disabled for another reason (boss intros, etc.)
|
0091268C
|
4 Bytes
|
Music Toggle
|
00912698
|
4 Bytes
|
Currently playing music
|
0091269C
|
4 Bytes
|
Music Copy
|
03ABDC7C
|
Byte
|
Game Mode
- 0 - Restart Game (Doesn't stop music)
- 2 - Exit SADX?
- 3 - Black out screen, game still playing; or in level, disable object collision?
- 4 - Action Stage (Adventure Mode)
- 5 - Adventure Field (Adventure Mode)
- 6 - Clear Screen, Disable movement
- 7 - Clear Screen, Disable movement
- 8 - Intro Movie (-> Title Screen) (Doesn't stop music)
- 9 - Trial Mode
- 10 - Mission Mode
- 11 - Return to Character Select
- 12 - Title Screen + Menus
- 13 - Restart Game
- 17 - Jump to Adventure
- 18 - Story Introduction Screen
- 21 - Start Credits
- 22 - Credits
|
03B0E7F0
|
Struct Array (0x34*8)
|
Controller Data
Offset (hex) |
Type |
Description
|
0
|
4 Bytes?
|
0?
|
4
|
4 Bytes?
|
0x003F07FE?
|
8
|
4 Bytes
|
Held buttons
|
C
|
4 Bytes
|
Not(Held buttons)
|
10
|
4 Bytes
|
Pressed buttons
|
14
|
4 Bytes
|
Released buttons
|
18
|
Byte?
|
FF=Camera rotates right
|
1A
|
Byte?
|
FF=Camera rotates left
|
1C
|
2 Bytes (signed)
|
Control stick X (-127..127)
|
1E
|
2 Bytes (signed)
|
Control stick Y (-127..127)
|
20
|
2 Bytes (signed)
|
C stick X (-127..127)
|
22
|
2 Bytes (signed)
|
C stick Y (-127..127)
|
2C
|
4 Bytes
|
Held buttons copy
|
|
03B0EF34
|
Byte
|
Lives
|
03B0EF35
|
Byte
|
Time in frames. Max 60.
|
03B0EF38
|
Byte
|
Voice Language
|
03B0EF40
|
Byte
|
Setting this to -1 will hide the HUD. However, it is constantly being written to by code at 00413D9E. It will have no effect unless you disable that code.
|
03B0EF48
|
Byte
|
Time in minutes
|
03B0F0E4
|
2 Bytes
|
Rings. Allowing this to reach a negative value (over 32767) will crash the game.
|
03B0F0E8
|
Byte
|
Text Language
- 0 Japanese
- 1 English
- 2 French
- 3 Spanish
- 4 German
|
03B0F0EC
|
Byte
|
Debug. Setting this to a non-negative value displays collision spheres around both characters when on the ground and highlights bottomless pits in white.
|
03B0F0F8
|
Float
|
X Gravity
|
03B0F0FC
|
Float
|
Y Gravity
|
03B0F100
|
Float
|
Z Gravity
|
03B0F104
|
4 Bytes
|
Enemy Bonus
|
03B0F104
|
4 Bytes
|
Level Frame Counter
|
03B0F128
|
Byte
|
Time in seconds.
|
03B0F13C
|
4 Bytes
|
Frame Counter
|
03B18DB4
|
Byte
|
Last Story. Set this to 1 to use the Last Story's data for objects and events.
|
03B18DB5
|
Byte
|
Metal Sonic. Set this to 1 to replace Sonic with Metal Sonic. May crash if you set this during a level.
|
03B18DB8
|
Byte
|
Selection on Pause Menu
- 0 Conitinue
- 1 Restart
- 2 Set Up Pad
- 3 Quit
- 4 Map
- 5 Camera
|
03B22DC0
|
Byte
|
Current Character
- 0 Sonic
- 1 Eggman (Crash)
- 2 Tails
- 3 Knuckles
- 4 Tikal (Crash)
- 5 Amy
- 6 E-102 Gamma
- 7 Big
|
03B22DC4
|
Byte
|
Level Copy. Doesn't appear to do anything.
|
03B22DC8
|
Byte
|
Entrance Number. Only applies to Adventure Fields.
|
03B22DCC
|
Byte
|
Current Level
|
03B22DD0
|
4 Bytes
|
Set this to any non-zero value to speed up level transitions.
|
03B22DD4
|
Byte
|
Adventure Field Act
|
03B22DD8
|
Byte
|
Adventure Field Level
|
03B22DE4
|
Byte
|
Game Status. (Bad Textures) means that the level will load incorrect textures. This has no effect on the menu.
- 0 Reset Level (Bad Textures)
- 1 Clear Screen, disable movement
- 2 Crash if used directly (Used when dying/restarting)
- 3 Clear Screen, disable movement
- 4 Show Level, enable movement
- 5 Load Adventure Field
- 6 Die
- 7 Restart
- 8 Crash
- 9 Transition w/ fadeout
- 10 Clear Screen, disable movement
- 11 Restart Copy
- 12 Restart Copy
- 13 Crash
- 14 Credits
- 15 Normal
- 16 Paused
- 17 Load Level w/ Loading Screen
- 18 Crash
- 19 Return to Title Screen Copy
- 20 Return to Title Screen
- 21 Loading Screen (Bad Textures)/Menu
- 22 Restart Level (Bad Textures)
- 23 Return to Title Screen Copy
- 24 Load Level w/ Loading Screen
|
03B22DEC
|
Byte
|
Current Act
|
03B22DF0
|
Byte
|
Next Level. Change this while the screen is fading out.
|
03B22E18
|
Byte
|
Next Act. Change this while the screen is fading out.
|
03B29D08
|
2 Bytes
|
Debug. Setting this to 1 displays collision spheres around objects and activates free movement mode. (Except for Tails.)
|
03B2A2F2
|
Byte
|
Menu voice
- 0 Default
- 1 Sonic
- 2 Tails
- 3 Knuckles
- 4 Amy
- 5 Gamma
- 6 Big
- 7 Eggman
- 8 Tikal
|
03B2A2FD
|
Byte
|
Selected character in character select
- 0 Sonic
- 1 Tails
- 2 Knuckles
- 3 Amy
- 4 Big
- 5 Gamma
- 6 Super/Metal Sonic
|
03B2B3B0
|
4 Bytes
|
High Score - Emerald Coast as Sonic
|
03B2B690
|
Struct Array (0xC*7)
|
Adventure Mode data (Indexed by character ID, Last Story is slot #3)
Offset (hex) |
Type |
Description
|
0
|
Byte
|
Time of Day
|
6
|
Byte
|
Start Entrance
|
8
|
Byte
|
Start Act
|
9
|
Byte
|
Start Level
|
|
03B2C3FC
|
4 Bytes
|
Rings in Black Market
|
03B2C45C
|
4 Bytes
|
CG Movie Selection
|
03B2CAB0
|
Float
|
Main Character X Position Copy
|
03B2CAB4
|
Float
|
Main Character Y Position Copy
|
03B2CAB8
|
Float
|
Main Character Z Position Copy
|
03B2CBB0
|
Pointer
|
Camera's Object Data 1
|
03B2F718
|
Pointer
|
Pointer to level layout data
|
03B42F8C
|
Float
|
Restart X Position
|
03B42F90
|
Float
|
Restart Y Position
|
03B42F94
|
Float
|
Restart Z Position
|
03C4E468
|
4 Bytes
|
Pointer to first object in object list
|
03C539EC
|
4 Bytes
|
Current Level for Tails' opponent's AI
- 0 - Windy Valley
- 1 - Speed Highway
- 2 - Sky Deck
- 3 - Icecap
- 4 - Casinopolis
|
03C5B37C
|
Byte Array
|
Start of switch flags, one byte per switch, odd = on, even = off. Length unknown.
|
03C74880
|
4 Bytes
|
Rings in vault in Casinopolis
|
03C82304
|
Float
|
Health in Sky Chase
Max 5, decreases by .5 when hit.
|
3C88060
|
Byte Array (51232)
|
Chao save file (in garden only)
|
One bit for each emblem, starting at 03B2B5E8.
Offset |
Bit |
Description
|
0
|
0
|
Emerald Coast Level A as Sonic
|
0
|
1
|
Windy Valley Level A as Sonic
|
0
|
2
|
Twinkle Park Level A as Sonic
|
0
|
3
|
Speed Highway Level A as Sonic
|
0
|
4
|
Red Mountain Level A as Sonic
|
0
|
5
|
Sky Deck Level A as Sonic
|
0
|
6
|
Lost World Level A as Sonic
|
0
|
7
|
Ice Cap Level A as Sonic
|
1
|
0
|
Casinopolis Level A as Sonic
|
1
|
1
|
Final Egg Level A as Sonic
|
1
|
2
|
Windy Valley Level A as Tails
|
1
|
3
|
Speed Highway Level A as Tails
|
1
|
4
|
Sky Deck Level A as Tails
|
1
|
5
|
Ice Cap Level A as Tails
|
1
|
6
|
Casinopolis Level A as Tails
|
1
|
7
|
Speed Highway Level A as Knuckles
|
2
|
0
|
Red Mountain Level A as Knuckles
|
2
|
1
|
Sky Deck Level A as Knuckles
|
2
|
2
|
Lost World Level A as Knuckles
|
2
|
3
|
Casinopolis Level A as Knuckles
|
2
|
4
|
Twinkle Park Level A as Amy
|
2
|
5
|
Final Egg Level A as Amy
|
2
|
6
|
Hot Shelter Level A as Amy
|
2
|
7
|
Emerald Coast Level A as Gamma
|
3
|
0
|
Windy Valley Level A as Gamma
|
3
|
1
|
Red Mountain Level A as Gamma
|
3
|
2
|
Final Egg Level A as Gamma
|
3
|
3
|
Hot Shelter Level A as Gamma
|
3
|
4
|
Emerald Coast Level A as Big
|
3
|
5
|
Twinkle Park Level A as Big
|
3
|
6
|
Ice Cap Level A as Big
|
3
|
7
|
Hot Shelter Level A as Big
|
4
|
0
|
Emerald Coast Level B as Sonic
|
4
|
1
|
Windy Valley Level B as Sonic
|
4
|
2
|
Twinkle Park Level B as Sonic
|
4
|
3
|
Speed Highway Level B as Sonic
|
4
|
4
|
Red Mountain Level B as Sonic
|
4
|
5
|
Sky Deck Level B as Sonic
|
4
|
6
|
Lost World Level B as Sonic
|
4
|
7
|
Ice Cap Level B as Sonic
|
5
|
0
|
Casinopolis Level B as Sonic
|
5
|
1
|
Final Egg Level B as Sonic
|
5
|
2
|
Windy Valley Level B as Tails
|
5
|
3
|
Speed Highway Level B as Tails
|
5
|
4
|
Sky Deck Level B as Tails
|
5
|
5
|
Ice Cap Level B as Tails
|
5
|
6
|
Casinopolis Level B as Tails
|
5
|
7
|
Speed Highway Level B as Knuckles
|
6
|
0
|
Red Mountain Level B as Knuckles
|
6
|
1
|
Sky Deck Level B as Knuckles
|
6
|
2
|
Lost World Level B as Knuckles
|
6
|
3
|
Casinopolis Level B as Knuckles
|
6
|
4
|
Twinkle Park Level B as Amy
|
6
|
5
|
Final Egg Level B as Amy
|
6
|
6
|
Hot Shelter Level B as Amy
|
6
|
7
|
Emerald Coast Level B as Gamma
|
7
|
0
|
Windy Valley Level B as Gamma
|
7
|
1
|
Red Mountain Level B as Gamma
|
7
|
2
|
Final Egg Level B as Gamma
|
7
|
3
|
Hot Shelter Level B as Gamma
|
7
|
4
|
Emerald Coast Level B as Big
|
7
|
5
|
Twinkle Park Level B as Big
|
7
|
6
|
Ice Cap Level B as Big
|
7
|
7
|
Hot Shelter Level B as Big
|
8
|
0
|
Emerald Coast Level C as Sonic
|
8
|
1
|
Windy Valley Level C as Sonic
|
8
|
2
|
Twinkle Park Level C as Sonic
|
8
|
3
|
Speed Highway Level C as Sonic
|
8
|
4
|
Red Mountain Level C as Sonic
|
8
|
5
|
Sky Deck Level C as Sonic
|
8
|
6
|
Lost World Level C as Sonic
|
8
|
7
|
Ice Cap Level C as Sonic
|
9
|
0
|
Casinopolis Level C as Sonic
|
9
|
1
|
Final Egg Level C as Sonic
|
9
|
2
|
Windy Valley Level C as Tails
|
9
|
3
|
Speed Highway Level C as Tails
|
9
|
4
|
Sky Deck Level C as Tails
|
9
|
5
|
Ice Cap Level C as Tails
|
9
|
6
|
Casinopolis Level C as Tails
|
9
|
7
|
Speed Highway Level C as Knuckles
|
A
|
0
|
Red Mountain Level C as Knuckles
|
A
|
1
|
Sky Deck Level C as Knuckles
|
A
|
2
|
Lost World Level C as Knuckles
|
A
|
3
|
Casinopolis Level C as Knuckles
|
A
|
4
|
Twinkle Park Level C as Amy
|
A
|
5
|
Final Egg Level C as Amy
|
A
|
6
|
Hot Shelter Level C as Amy
|
A
|
7
|
Emerald Coast Level C as Gamma
|
B
|
0
|
Windy Valley Level C as Gamma
|
B
|
1
|
Red Mountain Level C as Gamma
|
B
|
2
|
Final Egg Level C as Gamma
|
B
|
3
|
Hot Shelter Level C as Gamma
|
B
|
4
|
Emerald Coast Level C as Big
|
B
|
5
|
Twinkle Park Level C as Big
|
B
|
6
|
Ice Cap Level C as Big
|
B
|
7
|
Hot Shelter Level C as Big
|
C
|
0
|
Twinkle Circuit Emblem 2
|
C
|
1
|
Sky Chase Act 1 Emblem 2
|
C
|
2
|
Sky Chase Act 2 Emblem 2
|
C
|
3
|
Sand Hill Emblem 2
|
C
|
4
|
Hedgehog Hammer Emblem 2
|
C
|
5
|
Twinkle Circuit Emblem 1
|
C
|
6
|
Sky Chase Act 1 Emblem 1
|
C
|
7
|
Sky Chase Act 2 Emblem 1
|
D
|
0
|
Sand Hill Emblem 1
|
D
|
1
|
Hedgehog Hammer Emblem 1
|
D
|
2-6
|
Chao Race
|
D
|
7
|
Sonic's Ending
|
E
|
0
|
Tails' Ending
|
E
|
1
|
Knuckles' Ending
|
E
|
2
|
Amy's Ending
|
E
|
3
|
Gamma's Ending
|
E
|
4
|
Big's Ending
|
E
|
5
|
Super Sonic's Ending
|
E
|
6-7
|
Field Emblems
|
F
|
0-7
|
Field Emblems
|
10
|
0-1
|
Field Emblems
|
All flags are one byte, either 0 or 1.
These control the model used as well.
Each entry is $10 bytes long and is sorted by Animation number.
The data here changes its location when the level is restarted. Use pointers to find them.
A pointer to this for P1 is at 03B42E30, for P2, 03B42E34.
These are all pointers.
A pointer to this data for player 1 is at 03B42E10. A pointer for player 2 is at 03B42E14. Length: $180
A pointer to this data for player 1 is at 03B3CDF0. A pointer for player 2 is at 3B3CDF4. Another pointer is at offset $C0 in data 1.
A pointer to this data is at offset $38 in data 1.