Welcome to Data Crystal's new home! Data Crystal is now part of the TCRF family (sort of).
The wiki has recently moved; please report any issues in Discord. Pardon the dust.

Sonic Crackers/ROM map: Difference between revisions

From Data Crystal
Jump to navigation Jump to search
(added rommap contents)
 
 
(11 intermediate revisions by 4 users not shown)
Line 1: Line 1:
{{rommap|game=Sonic Crackers}}


==ROM Contents==
==ROM Contents==
0   Header
* <tt>0</tt> - Header
200 =Code
* <tt>200</tt> - Code
1E14 =Collision array
* <tt>1E14</tt> - Collision array
3E14 =Curve and resistance mapping
* <tt>3E14</tt> - Curve and resistance mapping
3F14 =Code
* <tt>3F14</tt> - Code
3F2A =Something affecting Sonic's movement
* <tt>3F2A</tt> - Something affecting Sonic's movement
44C4 =Pallete (1) - unknown
* <tt>44C4</tt> - Pallete (1) - unknown
44E4 =Code
* <tt>44E4</tt> - Code
4684 =Palletes (4) - unknown
* <tt>4684</tt> - Palletes (4) - unknown
4704 =Code
* <tt>4704</tt> - Code
6F62 =Palletes (2) - Sega logo
* <tt>6F62</tt> - Palletes (2) - Sega logo
6FA2 =Compressed Art - Sega logo
* <tt>6FA2</tt> - Compressed Art - Sega logo
7348 =Code
* <tt>7348</tt> - Code
749C =Palletes (2) - main menu
* <tt>749C</tt> - Palletes (2) - main menu
74DC =Code - title and menu screens
* <tt>74DC</tt> - Code - title and menu screens
75DA =Nemesis Compressed Art - alphabet from main menu screens
* <tt>75DA</tt> - Nemesis Compressed Art - alphabet from main menu screens
78E8 =Mappings - title screen
* <tt>78E8</tt> - Mappings - title screen
7E08 =Code - field levels
* <tt>7E08</tt> - Code - field levels
7E98 =Palletes (2) - Sonic & Tails; arms & rings
* <tt>7E98</tt> - Palletes (2) - Sonic & Tails; arms & rings
7ED8 =Code - field levels
* <tt>7ED8</tt> - Code - field levels
835C =Pallete - Rainbow Field cycling
* <tt>835C</tt> - Pallete - Rainbow Field cycling
837C =Code
* <tt>837C</tt> - Code
83EA =Pallete - Electric Field cycling
* <tt>83EA</tt> - Pallete - Electric Field cycling
856A =Code
* <tt>856A</tt> - Code
8572 =Pallete - Electric Field cycling
* <tt>8572</tt> - Pallete - Electric Field cycling
85D4 =Code
* <tt>85D4</tt> - Code
8988 =Palletes (2) - Sonic & Tails on field levels
* <tt>8988</tt> - Palletes (2) - Sonic & Tails on field levels
89C8 =Code
* <tt>89C8</tt> - Code
8D08 =Palletes (8) - Techno Tower Zone
* <tt>8D08</tt> - Palletes (8) - Techno Tower Zone
8E08 =Code
* <tt>8E08</tt> - Code
90B6 =Nemesis Compressed Art - borders from menu screens
* <tt>90B6</tt> - Nemesis Compressed Art - borders from menu screens
90EA =Mappings - "SELECT" menu screens
* <tt>90EA</tt> - Mappings - "SELECT" menu screens
93CA =Code
* <tt>93CA</tt> - Code
9C68 =Palletes (2) - Speed Slider Zone
* <tt>9C68</tt> - Palletes (2) - Speed Slider Zone
9CA8 =Code
* <tt>9CA8</tt> - Code
9CF0 =Palletes (2) - Techno Tower Zone (unused)
* <tt>9CF0</tt> - Palletes (2) - Techno Tower Zone (unused)
9D30 =Code
* <tt>9D30</tt> - Code
EDE4 =Pallete - TTZ cycling
* <tt>EDE4</tt> - Pallete - TTZ cycling
EE0C =Code
* <tt>EE0C</tt> - Code
EE4C =Pallete - TTZ cycling
* <tt>EE4C</tt> - Pallete - TTZ cycling
EE5C =Code
* <tt>EE5C</tt> - Code
EEBA =Pallete - TTZ cycling
* <tt>EEBA</tt> - Pallete - TTZ cycling
EEDA =Code
* <tt>EEDA</tt> - Code
EF38 =Pallete - TTZ cycling
* <tt>EF38</tt> - Pallete - TTZ cycling
EF58 =Code
* <tt>EF58</tt> - Code
EFA4 =Pallete - TTZ cycling
* <tt>EFA4</tt> - Pallete - TTZ cycling
EFD4 =Code
* <tt>EFD4</tt> - Code
FDB0 =Music data
* <tt>FDB0</tt> - Music data
15630 =Unknown
* <tt>15630</tt> - Unknown
30000 =Uncompressed Art - Numbers and letters from the HUD
* <tt>30000</tt> - Uncompressed Art - Numbers and letters from the HUD
30E80 =Nemesis Compressed Art - Orbs / fireballs or something (no pointer points to this item)
* <tt>30E80</tt> - Nemesis Compressed Art - Orbs / fireballs or something (no pointer points to this item)
30EE2 =Nemesis Compressed Art - SSZ 8x8 tiles
* <tt>30EE2</tt> - Nemesis Compressed Art - SSZ 8x8 tiles
3452C =Enigma Compressed Data - SSZ 16x16 tiles
* <tt>3452C</tt> - Enigma Compressed Data - SSZ 16x16 tiles
35762 =Enigma Compressed Data - SSZ 128x128 tiles
* <tt>35762</tt> - Enigma Compressed Data - SSZ 128x128 tiles
39086 =Enigma Compressed Data - SSZ level layout
* <tt>39086</tt> - Enigma Compressed Data - SSZ level layout
3931E =SSZ primary collision index
* <tt>3931E</tt> - SSZ primary collision index
3971E =SSZ secondary collision index
* <tt>3971E</tt> - SSZ secondary collision index
39B1E =Nemesis Compressed Art - SSZ 8x8 bg tiles
* <tt>39B1E</tt> - Nemesis Compressed Art - SSZ 8x8 bg tiles
3A5FE =Enigma Compressed Data - SSZ 16x16 bg tiles
* <tt>3A5FE</tt> - Enigma Compressed Data - SSZ 16x16 bg tiles
3A6E8 =Enigma Compressed Data - SSZ 128x128 bg tiles
* <tt>3A6E8</tt> - Enigma Compressed Data - SSZ 128x128 bg tiles
3A7B8 =Enigma Compressed Data - SSZ bg layout
* <tt>3A7B8</tt> - Enigma Compressed Data - SSZ bg layout
3A7CE =Nemesis Compressed Art - TTZ 8x8 tiles
* <tt>3A7CE</tt> - Nemesis Compressed Art - TTZ 8x8 tiles
3BB24 =Enigma Compressed Data - TTZ 16x16 tiles
* <tt>3BB24</tt> - Enigma Compressed Data - TTZ 16x16 tiles
3C60A =Enigma Compressed Data - TTZ 128x128 tiles
* <tt>3C60A</tt> - Enigma Compressed Data - TTZ 128x128 tiles
3ED12 =Enigma Compressed Data - TTZ level layout
* <tt>3ED12</tt> - Enigma Compressed Data - TTZ level layout
3EEC4 =TTZ primary collision index
* <tt>3EEC4</tt> - TTZ primary collision index
3F2C4 =TTZ secondary collision index
* <tt>3F2C4</tt> - TTZ secondary collision index
3F6C4 =Nemesis Compressed Art - TTZ 8x8 bg tiles
* <tt>3F6C4</tt> - Nemesis Compressed Art - TTZ 8x8 bg tiles
409E2 =Enigma Compressed Data - TTZ 16x16 bg tiles
* <tt>409E2</tt> - Enigma Compressed Data - TTZ 16x16 bg tiles
4108C =Enigma Compressed Data - TTZ 128x128 bg tiles
* <tt>4108C</tt> - Enigma Compressed Data - TTZ 128x128 bg tiles
4183E =Enigma Compressed Data - TTZ bg layout
* <tt>4183E</tt> - Enigma Compressed Data - TTZ bg layout
41954 =Uncompressed Art - splash screen
* <tt>41954</tt> - Uncompressed Art - splash screen
41B9C =Nemesis Compressed Art - springs
* <tt>41B9C</tt> - Nemesis Compressed Art - springs
41F76 =Nemesis Compressed Art - horizontal spikes
* <tt>41F76</tt> - Nemesis Compressed Art - horizontal spikes
4221E =Nemesis Compressed Art - vertical spikes
* <tt>4221E</tt> - Nemesis Compressed Art - vertical spikes
42486 =Uncompressed Art - animated patterns in TTZ
* <tt>42486</tt> - Uncompressed Art - animated patterns in TTZ
44946 =Uncompressed Art - "COMBI" (unused)
* <tt>44946</tt> - Uncompressed Art - "COMBI" (unused)
44A66 =Uncompressed Art - end-of-level splash screen? (unused)
* <tt>44A66</tt> - Uncompressed Art - end-of-level splash screen? (unused)
44F66 =Uncompressed Art - numbers
* <tt>44F66</tt> - Uncompressed Art - numbers
451E6 =Uncompressed Art - exclaimation mark and minute symbol
* <tt>451E6</tt> - Uncompressed Art - exclaimation mark and minute symbol
45246 =Uncompressed Art - stars and rings (some unused)
* <tt>45246</tt> - Uncompressed Art - stars and rings (some unused)
45906 =Uncompressed Art - seconds symbol
* <tt>45906</tt> - Uncompressed Art - seconds symbol
45926 =Palletes (2) - Rainbow Field
* <tt>45926</tt> - Palletes (2) - Rainbow Field
45966 =Compressed Art (Unknown Format) - 8x8 tiles for Rainbow Field
* <tt>45966</tt> - Compressed Art (Unknown Format) - 8x8 tiles for Rainbow Field
48FE0 =Mappings - Rainbow Field foreground
* <tt>48FE0</tt> - Mappings - Rainbow Field foreground
4B002 =Mappings - Rainbow Field background
* <tt>4B002</tt> - Mappings - Rainbow Field background
4C014 =Palletes (2) - Electric Field
* <tt>4C014</tt> - Palletes (2) - Electric Field
4C054 =Compressed Art (Unknown Format) - 8x8 tiles for Electric Field
* <tt>4C054</tt> - Compressed Art (Unknown Format) - 8x8 tiles for Electric Field
5108A =Mappings - Electric Field foreground
* <tt>5108A</tt> - Mappings - Electric Field foreground
530AC =Mappings - Electric Field background
* <tt>530AC</tt> - Mappings - Electric Field background
54460 =Empty
* <tt>54460</tt> - Empty
60000 =Uncompressed Art - Sonic's arms
* <tt>60000</tt> - Uncompressed Art - Sonic's arms
64000 =Uncompressed Art - Tails' arms
* <tt>64000</tt> - Uncompressed Art - Tails' arms
66680 =Index system for frames used for Sonic's arm
* <tt>66680</tt> - Index system for frames used for Sonic's arm
667D8 =Pattern load cues - Sonic's arm
* <tt>667D8</tt> - Pattern load cues - Sonic's arm
66B34 =Mappings - Sonic's arm
* <tt>66B34</tt> - Mappings - Sonic's arm
66D5C =Something to do with how Sonic's arm is connected to Sonic
* <tt>66D5C</tt> - Something to do with how Sonic's arm is connected to Sonic
66E26 =Index system for frames used for Sonic
* <tt>66E26</tt> - Index system for frames used for Sonic
66F92 =Pattern load cues - Sonic
* <tt>66F92</tt> - Pattern load cues - Sonic
67302 =Mappings - Sonic
* <tt>67302</tt> - Mappings - Sonic
6777C =Index system for frames used for Tails' arm
* <tt>6777C</tt> - Index system for frames used for Tails' arm
6788C =Pattern load cues - Tails' arm
* <tt>6788C</tt> - Pattern load cues - Tails' arm
67B34 =Mappings - Tails' arm
* <tt>67B34</tt> - Mappings - Tails' arm
67CD2 =Something to do with how Tails' arm is connected to Tails
* <tt>67CD2</tt> - Something to do with how Tails' arm is connected to Tails
67DD2 =Index system for frames used for Tails
* <tt>67DD2</tt> - Index system for frames used for Tails
67FBE =Pattern load cues - Tails
* <tt>67FBE</tt> - Pattern load cues - Tails
6852C =Mappings - Tails
* <tt>6852C</tt> - Mappings - Tails
68A06 =Code
* <tt>68A06</tt> - Code
68A42 =Index system for frames used for Sonic on field levels
* <tt>68A42</tt> - Index system for frames used for Sonic on field levels
68ABA =Pattern load cues - Sonic on field levels
* <tt>68ABA</tt> - Pattern load cues - Sonic on field levels
68BE6 =Mappings - Sonic on field levels
* <tt>68BE6</tt> - Mappings - Sonic on field levels
68CFA =Code
* <tt>68CFA</tt> - Code
68D36 =Index system for frames used for Tails on field levels
* <tt>68D36</tt> - Index system for frames used for Tails on field levels
68DC6 =Pattern load cues - Tails on field levels
* <tt>68DC6</tt> - Pattern load cues - Tails on field levels
68EF2 =Mappings - Tails on field levels
* <tt>68EF2</tt> - Mappings - Tails on field levels
68FD6 =Empty
* <tt>68FD6</tt> - Empty
80000 =Uncompressed Art - Sonic
* <tt>80000</tt> - Uncompressed Art - Sonic
90000 =Uncompressed Art - Sonic on field levels
* <tt>90000</tt> - Uncompressed Art - Sonic on field levels
98000 =Uncompressed Art - Text
* <tt>98000</tt> - Uncompressed Art - Text
A0000 =Uncompressed Art - Tails
* <tt>A0000</tt> - Uncompressed Art - Tails
B0000 =Uncompressed Art - Tails on field levels
* <tt>B0000</tt> - Uncompressed Art - Tails on field levels
B3820 =Empty or unused data until end of ROM
* <tt>B3820</tt> - Empty or unused data until end of ROM


==Savestate Contents (Speed Slider Zone)==
==Savestate Contents (Speed Slider Zone)==
2478 =Unknown
* <tt>2478</tt> - Unknown
2678 =Collision Data
* <tt>2678</tt> - Collision Data
2E78 =Unknown
* <tt>2E78</tt> - Unknown
3180 =16x16 Tile Mappings
* <tt>3180</tt> - 16x16 Tile Mappings
4938 =128x128 Tile Mappings
* <tt>4938</tt> - 128x128 Tile Mappings
BC38 =Level Layout
* <tt>BC38</tt> - Level Layout
C238 =16x16 Background Tile Mappings
* <tt>C238</tt> - 16x16 Background Tile Mappings
C4F8 =128x128 Background Tile Mappings
* <tt>C4F8</tt> - 128x128 Background Tile Mappings
C878 =Background Layout
* <tt>C878</tt> - Background Layout
F85C =Palletes
* <tt>F85C</tt> - Palletes


==Savestate Contents (Techno Tower Zone)==
==Savestate Contents (Techno Tower Zone)==
2478 =Unknown
* <tt>2478</tt> - Unknown
2678 =Collision Data
* <tt>2678</tt> - Collision Data
2E78 =Unknown
* <tt>2E78</tt> - Unknown
3180 =16x16 Tile Mappings
* <tt>3180</tt> - 16x16 Tile Mappings
3FD0 =128x128 Tile Mappings
* <tt>3FD</tt>0 - 128x128 Tile Mappings
9B50 =Level Layout
* <tt>9B50</tt> - Level Layout
9D50 =16x16 Background Tile Mappings
* <tt>9D50</tt> - 16x16 Background Tile Mappings
A748 =128x128 Background Tile Mappings
* <tt>A748</tt> - 128x128 Background Tile Mappings
B748 =Background Layout
* <tt>B748</tt> - Background Layout
F85C =Palletes
* <tt>F85C</tt> - Palletes


==Mappings for Title Screen, Menu and Field Levels==
==Mappings for Title Screen, Menu and Field Levels==
Each image on the game select screen is made up of 8x8 pixel tiles. The way these tiles are arranged is called mappings. Each 8x8 tile is given a two-byte value based on where it appears in the VRAM: Starting at 0000, so that on the title screen 0003 is a hash symbol (#). To change which pallete the tile uses, add 2000 to its value.
Each image on the game select screen is made up of 8x8 pixel tiles. The way these tiles are arranged is called mappings. Each 8x8 tile is given a two-byte value based on where it appears in the VRAM: Starting at 0000, so that on the title screen 0003 is a hash symbol (#). To change which pallete the tile uses, add 2000 to its value.


Pattern Load Cues for Sonic and Tails:
==Pattern Load Cues for Sonic and Tails==
 
Pattern load cues tell the game which graphics are to be loaded into the VRAM from the ROM for each frame of Sonic's sprite. Each load cue consists of ten bytes:
Pattern load cues tell the game which graphics are to be loaded into the VRAM from the ROM for each frame of Sonic's sprite. Each load cue consists of ten bytes:
QQQQ 9704 RRR0 D380 FFFF
QQQQ/9704/RRR0/D380/FFFF
 
QQQQ = The number of tiles that should be read from the ROM, where:
 
    1000 = 1 tile
    2000 = 2 tiles
    0001 = 10 tiles
    1001 = 11 tiles
    1002 = 21 tiles


RRR = Where to start reading tiles from in the ROM, where 000 is the first of Sonic's tiles in the ROM; 001 is the second etc.
* [[SC QQQQ|QQQQ]] -The number of tiles that should be read from the ROM.
 
* RRR -Where to start reading tiles from in the ROM, where 000 is the first of Sonic's tiles in the ROM; 001 is the second etc.
The purpose of all the other bytes is unknown.
* The purpose of all the other bytes is unknown.
 
Mappings for Sonic and Tails:


==Mappings for Sonic and Tails==
Mappings define how the 8x8 tiles are arranged to make up the characters' sprites. Each mappings block consists of six bytes:
Mappings define how the 8x8 tiles are arranged to make up the characters' sprites. Each mappings block consists of six bytes:
SS YY TT TT XX ZZ
SS/YY/TT/TT/XX/ZZ
 
SS = Size and shape of the piece of sprite, where:
 
    00 = 1 tile high, 1 tile wide
    01 = 2 tiles high, 1 tile wide
    02 = 3 tiles high, 1 tile wide
    03 = 4 tiles high, 1 tile wide
    04 = 1 tile high, 2 tiles wide
    0E = 3 tiles high, 4 tiles wide
    0F = 4 tiles high, 4 tiles wide (this is the largest possible sprite piece)


YY and XX = Position of the sprite piece.
* [[SC SS|SS]] -Size and shape of the piece of sprite.
* YY and XX Position of the sprite piece.
* TTTT -Which tiles from the VRAM are to be displayed on the screen. 0000 is the first tile in the VRAM, 0001 is the second etc.
* ZZ -Defines whether there are additional pieces of sprite in the current frame of animation or not. 00 tells the game to assume the next mappings block is part of the same sprite frame. FF tells the game to end the current sprite frame and start a new one.


TTTT = Which tiles from the VRAM are to be displayed on the screen. 0000 is the first tile in the VRAM, 0001 is the second etc.
==References==
* [http://sonicology.fateback.com/ Sonicology] The source of the rom map for this game.


ZZ = Defines whether there are additional pieces of sprite in the current frame of animation or not. 00 tells the game to assume the next mappings block is part of the same sprite frame. FF tells the game to end the current sprite frame and start a new one.
{{Internal Data}}

Latest revision as of 14:28, 24 January 2024

Chip tiny.png The following article is a ROM map for Sonic Crackers.

ROM Contents

  • 0 - Header
  • 200 - Code
  • 1E14 - Collision array
  • 3E14 - Curve and resistance mapping
  • 3F14 - Code
  • 3F2A - Something affecting Sonic's movement
  • 44C4 - Pallete (1) - unknown
  • 44E4 - Code
  • 4684 - Palletes (4) - unknown
  • 4704 - Code
  • 6F62 - Palletes (2) - Sega logo
  • 6FA2 - Compressed Art - Sega logo
  • 7348 - Code
  • 749C - Palletes (2) - main menu
  • 74DC - Code - title and menu screens
  • 75DA - Nemesis Compressed Art - alphabet from main menu screens
  • 78E8 - Mappings - title screen
  • 7E08 - Code - field levels
  • 7E98 - Palletes (2) - Sonic & Tails; arms & rings
  • 7ED8 - Code - field levels
  • 835C - Pallete - Rainbow Field cycling
  • 837C - Code
  • 83EA - Pallete - Electric Field cycling
  • 856A - Code
  • 8572 - Pallete - Electric Field cycling
  • 85D4 - Code
  • 8988 - Palletes (2) - Sonic & Tails on field levels
  • 89C8 - Code
  • 8D08 - Palletes (8) - Techno Tower Zone
  • 8E08 - Code
  • 90B6 - Nemesis Compressed Art - borders from menu screens
  • 90EA - Mappings - "SELECT" menu screens
  • 93CA - Code
  • 9C68 - Palletes (2) - Speed Slider Zone
  • 9CA8 - Code
  • 9CF0 - Palletes (2) - Techno Tower Zone (unused)
  • 9D30 - Code
  • EDE4 - Pallete - TTZ cycling
  • EE0C - Code
  • EE4C - Pallete - TTZ cycling
  • EE5C - Code
  • EEBA - Pallete - TTZ cycling
  • EEDA - Code
  • EF38 - Pallete - TTZ cycling
  • EF58 - Code
  • EFA4 - Pallete - TTZ cycling
  • EFD4 - Code
  • FDB0 - Music data
  • 15630 - Unknown
  • 30000 - Uncompressed Art - Numbers and letters from the HUD
  • 30E80 - Nemesis Compressed Art - Orbs / fireballs or something (no pointer points to this item)
  • 30EE2 - Nemesis Compressed Art - SSZ 8x8 tiles
  • 3452C - Enigma Compressed Data - SSZ 16x16 tiles
  • 35762 - Enigma Compressed Data - SSZ 128x128 tiles
  • 39086 - Enigma Compressed Data - SSZ level layout
  • 3931E - SSZ primary collision index
  • 3971E - SSZ secondary collision index
  • 39B1E - Nemesis Compressed Art - SSZ 8x8 bg tiles
  • 3A5FE - Enigma Compressed Data - SSZ 16x16 bg tiles
  • 3A6E8 - Enigma Compressed Data - SSZ 128x128 bg tiles
  • 3A7B8 - Enigma Compressed Data - SSZ bg layout
  • 3A7CE - Nemesis Compressed Art - TTZ 8x8 tiles
  • 3BB24 - Enigma Compressed Data - TTZ 16x16 tiles
  • 3C60A - Enigma Compressed Data - TTZ 128x128 tiles
  • 3ED12 - Enigma Compressed Data - TTZ level layout
  • 3EEC4 - TTZ primary collision index
  • 3F2C4 - TTZ secondary collision index
  • 3F6C4 - Nemesis Compressed Art - TTZ 8x8 bg tiles
  • 409E2 - Enigma Compressed Data - TTZ 16x16 bg tiles
  • 4108C - Enigma Compressed Data - TTZ 128x128 bg tiles
  • 4183E - Enigma Compressed Data - TTZ bg layout
  • 41954 - Uncompressed Art - splash screen
  • 41B9C - Nemesis Compressed Art - springs
  • 41F76 - Nemesis Compressed Art - horizontal spikes
  • 4221E - Nemesis Compressed Art - vertical spikes
  • 42486 - Uncompressed Art - animated patterns in TTZ
  • 44946 - Uncompressed Art - "COMBI" (unused)
  • 44A66 - Uncompressed Art - end-of-level splash screen? (unused)
  • 44F66 - Uncompressed Art - numbers
  • 451E6 - Uncompressed Art - exclaimation mark and minute symbol
  • 45246 - Uncompressed Art - stars and rings (some unused)
  • 45906 - Uncompressed Art - seconds symbol
  • 45926 - Palletes (2) - Rainbow Field
  • 45966 - Compressed Art (Unknown Format) - 8x8 tiles for Rainbow Field
  • 48FE0 - Mappings - Rainbow Field foreground
  • 4B002 - Mappings - Rainbow Field background
  • 4C014 - Palletes (2) - Electric Field
  • 4C054 - Compressed Art (Unknown Format) - 8x8 tiles for Electric Field
  • 5108A - Mappings - Electric Field foreground
  • 530AC - Mappings - Electric Field background
  • 54460 - Empty
  • 60000 - Uncompressed Art - Sonic's arms
  • 64000 - Uncompressed Art - Tails' arms
  • 66680 - Index system for frames used for Sonic's arm
  • 667D8 - Pattern load cues - Sonic's arm
  • 66B34 - Mappings - Sonic's arm
  • 66D5C - Something to do with how Sonic's arm is connected to Sonic
  • 66E26 - Index system for frames used for Sonic
  • 66F92 - Pattern load cues - Sonic
  • 67302 - Mappings - Sonic
  • 6777C - Index system for frames used for Tails' arm
  • 6788C - Pattern load cues - Tails' arm
  • 67B34 - Mappings - Tails' arm
  • 67CD2 - Something to do with how Tails' arm is connected to Tails
  • 67DD2 - Index system for frames used for Tails
  • 67FBE - Pattern load cues - Tails
  • 6852C - Mappings - Tails
  • 68A06 - Code
  • 68A42 - Index system for frames used for Sonic on field levels
  • 68ABA - Pattern load cues - Sonic on field levels
  • 68BE6 - Mappings - Sonic on field levels
  • 68CFA - Code
  • 68D36 - Index system for frames used for Tails on field levels
  • 68DC6 - Pattern load cues - Tails on field levels
  • 68EF2 - Mappings - Tails on field levels
  • 68FD6 - Empty
  • 80000 - Uncompressed Art - Sonic
  • 90000 - Uncompressed Art - Sonic on field levels
  • 98000 - Uncompressed Art - Text
  • A0000 - Uncompressed Art - Tails
  • B0000 - Uncompressed Art - Tails on field levels
  • B3820 - Empty or unused data until end of ROM

Savestate Contents (Speed Slider Zone)

  • 2478 - Unknown
  • 2678 - Collision Data
  • 2E78 - Unknown
  • 3180 - 16x16 Tile Mappings
  • 4938 - 128x128 Tile Mappings
  • BC38 - Level Layout
  • C238 - 16x16 Background Tile Mappings
  • C4F8 - 128x128 Background Tile Mappings
  • C878 - Background Layout
  • F85C - Palletes

Savestate Contents (Techno Tower Zone)

  • 2478 - Unknown
  • 2678 - Collision Data
  • 2E78 - Unknown
  • 3180 - 16x16 Tile Mappings
  • 3FD0 - 128x128 Tile Mappings
  • 9B50 - Level Layout
  • 9D50 - 16x16 Background Tile Mappings
  • A748 - 128x128 Background Tile Mappings
  • B748 - Background Layout
  • F85C - Palletes

Mappings for Title Screen, Menu and Field Levels

Each image on the game select screen is made up of 8x8 pixel tiles. The way these tiles are arranged is called mappings. Each 8x8 tile is given a two-byte value based on where it appears in the VRAM: Starting at 0000, so that on the title screen 0003 is a hash symbol (#). To change which pallete the tile uses, add 2000 to its value.

Pattern Load Cues for Sonic and Tails

Pattern load cues tell the game which graphics are to be loaded into the VRAM from the ROM for each frame of Sonic's sprite. Each load cue consists of ten bytes: QQQQ/9704/RRR0/D380/FFFF

  • QQQQ -The number of tiles that should be read from the ROM.
  • RRR -Where to start reading tiles from in the ROM, where 000 is the first of Sonic's tiles in the ROM; 001 is the second etc.
  • The purpose of all the other bytes is unknown.

Mappings for Sonic and Tails

Mappings define how the 8x8 tiles are arranged to make up the characters' sprites. Each mappings block consists of six bytes: SS/YY/TT/TT/XX/ZZ

  • SS -Size and shape of the piece of sprite.
  • YY and XX - Position of the sprite piece.
  • TTTT -Which tiles from the VRAM are to be displayed on the screen. 0000 is the first tile in the VRAM, 0001 is the second etc.
  • ZZ -Defines whether there are additional pieces of sprite in the current frame of animation or not. 00 tells the game to assume the next mappings block is part of the same sprite frame. FF tells the game to end the current sprite frame and start a new one.

References

  • Sonicology The source of the rom map for this game.