Actions

SCHG

Difference between revisions of "Sonic Jam/RAM Editing"

From Sonic Retro

m (Added another few addresses, split up Sonic and Tails' animation attributes)
Line 36: Line 36:
 
|-
 
|-
 
| $FF8FC || Things regarding I/O; Controller info, and bit flags affecting the screen.
 
| $FF8FC || Things regarding I/O; Controller info, and bit flags affecting the screen.
 +
|}
 +
 +
==Object Memory Map==
 +
 +
===Camera===
 +
{|class="prettytable" style="width:auto;"
 +
! Address || Type || Description
 +
|-
 +
| $D0000 || Long || Pointer to Tails' object
 +
|-
 +
| $D0004 || Long || Pointer to the stack?
 +
|-
 +
| $D000C || Long || Pointer to subroutine?
 +
|-
 +
| $D0014 || Word || Y-axis Rotational Velocity
 +
|-
 +
| $D0018 || Long || Distance from Target
 +
|-
 +
| $D0020 || Long || Maintained Vertical Offset
 +
|-
 +
| $D0028 || Euler Rotation || Rotation
 +
|-
 +
| $D0030 || 3D Vector || Target's Position
 +
|-
 +
| $D0040 || 3D Vector || Position
 +
|}
 +
 +
===Sonic===
 +
{|class="prettytable" style="width:auto;"
 +
! Address || Type || Description
 +
|-
 +
| $D0060 || Long || Pointer to Tails' Object
 +
|-
 +
| $D0064 || Long || Pointer to the stack?
 +
|-
 +
| $D006C || Long || Pointer to subroutine?
 +
|-
 +
| $D0078 || Long || Pointer to Animation Attributes
 +
|-
 +
| $D007D || Byte || Unknown. Seems to affect Sonic's lighting.
 +
|-
 +
| $D007E || Byte || Unknown. Altering will crash the game.
 +
|-
 +
| $D0080 || Long || Pointer. Unknown.
 +
|-
 +
| $D0084 || Long || Pointer. Unknown.
 +
|-
 +
| $D0088 || Euler Rotation || Rotation.
 +
|-
 +
| $D008E || Word || Unknown. Affects Sonic's lighting.
 +
|-
 +
| $D0090 || 3D Vector || Velocity. Relative to direction, with X being forward.
 +
|-
 +
| $D009C || Long || Scale. Works like a 3D Vector component. Messes with his lighting when not 1.0.
 +
|-
 +
| $D00A0 || 3D Vector || Position.
 +
|-
 +
| $D00B0 || Long || Pointer. Unknown.
 +
|}
 +
 +
===Tails===
 +
{|class="prettytable" style="width:auto;"
 +
! Address || Type || Description
 +
|-
 +
| $D0180 || Long || Pointer to another object
 +
|-
 +
| $D0184 || Long || Pointer to Sonic's Object
 +
|-
 +
| $D018C || Long || Pointer to subroutine?
 +
|-
 +
| $D0198 || Long || Pointer to Animation Attributes
 +
|-
 +
| $D019D || Byte || Unknown. Seems to affect Tails' lighting.
 +
|-
 +
| $D019E || Byte || Unknown. Altering will crash the game.
 +
|-
 +
| $D01A0 || Long || Pointer. Unknown.
 +
|-
 +
| $D01A4 || Long || Pointer. Unknown.
 +
|-
 +
| $D01A8 || Euler Rotation || Rotation.
 +
|-
 +
| $D01AE || Word || Unknown. Affects Tails' lighting.
 +
|-
 +
| $D01BC || Long || Scale. Works like a 3D Vector component. Messes with his lighting when not 1.0.
 +
|-
 +
| $D01C0 || 3D Vector || Position.
 +
|-
 +
| $D01D0 || Long || Pointer. Unknown.
 +
|-
 +
| $D01D8 || Long || Pointer. Perhaps to the path he follows?
 +
|-
 +
| $D01DC || Long || Progress along the path. Ranges from $0 to $18FFFFF.
 
|}
 
|}
  
 
{{SCHGuides}}
 
{{SCHGuides}}
 
[[Category:SCHG: Sonic Jam]]
 
[[Category:SCHG: Sonic Jam]]

Revision as of 22:01, 5 March 2021

SCHG: Sonic Jam
Main Article
Sonic World

Models
Animations
Textures
Sounds
RAM Editing

High Work RAM Map

Here are some places of interest in High Work RAM.

Address Description
$4A7BC A list of Sonic's model component footer addresses.
$4D9CC A list of addresses that each point to the jump table for an animation.
$4DBAC A few addresses that point to Sonic's 3 models, and some parameters(?).
$5EF34 An object table of some sort.
$65F7C Animation Data. Matches up starting at $25F7C in MUSEUM.MUS.
$7F908 Model Data. Matches up starting at $3F908 in MUSEUM.MUS.
$D0000 Object Memory.
$DA000 Texture Definitions. Matches up starting at $250A4 in MUSEUM.MUS.
$DD000 Dynamic list of addresses, likely things to copy to VDP1.
$E3000 2D Vertex coordinates for VDP1?
$E7000 Corresponds to $00000 in VDP1 VRAM.
$F4B00 Stuff regarding the 3D Pad.
$F5420 Animation attributes for Sonic.
$F5DC0 Animation attributes for Tails.
$FF8FC Things regarding I/O; Controller info, and bit flags affecting the screen.

Object Memory Map

Camera

Address Type Description
$D0000 Long Pointer to Tails' object
$D0004 Long Pointer to the stack?
$D000C Long Pointer to subroutine?
$D0014 Word Y-axis Rotational Velocity
$D0018 Long Distance from Target
$D0020 Long Maintained Vertical Offset
$D0028 Euler Rotation Rotation
$D0030 3D Vector Target's Position
$D0040 3D Vector Position

Sonic

Address Type Description
$D0060 Long Pointer to Tails' Object
$D0064 Long Pointer to the stack?
$D006C Long Pointer to subroutine?
$D0078 Long Pointer to Animation Attributes
$D007D Byte Unknown. Seems to affect Sonic's lighting.
$D007E Byte Unknown. Altering will crash the game.
$D0080 Long Pointer. Unknown.
$D0084 Long Pointer. Unknown.
$D0088 Euler Rotation Rotation.
$D008E Word Unknown. Affects Sonic's lighting.
$D0090 3D Vector Velocity. Relative to direction, with X being forward.
$D009C Long Scale. Works like a 3D Vector component. Messes with his lighting when not 1.0.
$D00A0 3D Vector Position.
$D00B0 Long Pointer. Unknown.

Tails

Address Type Description
$D0180 Long Pointer to another object
$D0184 Long Pointer to Sonic's Object
$D018C Long Pointer to subroutine?
$D0198 Long Pointer to Animation Attributes
$D019D Byte Unknown. Seems to affect Tails' lighting.
$D019E Byte Unknown. Altering will crash the game.
$D01A0 Long Pointer. Unknown.
$D01A4 Long Pointer. Unknown.
$D01A8 Euler Rotation Rotation.
$D01AE Word Unknown. Affects Tails' lighting.
$D01BC Long Scale. Works like a 3D Vector component. Messes with his lighting when not 1.0.
$D01C0 3D Vector Position.
$D01D0 Long Pointer. Unknown.
$D01D8 Long Pointer. Perhaps to the path he follows?
$D01DC Long Progress along the path. Ranges from $0 to $18FFFFF.
Sonic Community Hacking Guide
General
SonED2 Manual | Subroutine Equivalency List
Game-Specific
Sonic the Hedgehog (16-bit) | Sonic the Hedgehog (8-bit) | Sonic CD (prototype 510) | Sonic CD | Sonic CD (PC) | Sonic CD (2011) | Sonic 2 (Simon Wai prototype) | Sonic 2 (16-bit) | Sonic 2 (Master System) | Sonic 3 | Sonic 3 & Knuckles | Chaotix | Sonic Jam | Sonic Jam 6 | Sonic Adventure | Sonic Adventure DX: Director's Cut | Sonic Adventure DX: PC | Sonic Adventure (2010) | Sonic Adventure 2 | Sonic Adventure 2: Battle | Sonic Adventure 2 (PC) | Sonic Heroes | Sonic Riders | Sonic the Hedgehog (2006) | Sonic & Sega All-Stars Racing | Sonic Unleashed (Xbox 360/PS3) | Sonic Colours | Sonic Generations | Sonic Forces
Technical information
Sonic Eraser | Sonic 2 (Nick Arcade prototype) | Sonic CD (prototype; 1992-12-04) | Dr. Robotnik's Mean Bean Machine | Sonic Triple Trouble | Tails Adventures | Sonic Crackers | Sonic 3D: Flickies' Island | Sonic & Knuckles Collection | Sonic R | Sonic Shuffle | Sonic Advance | Sonic Advance 3 | Sonic Battle | Shadow the Hedgehog | Sonic Rush | Sonic Classic Collection | Sonic Free Riders | Sonic Lost World
Legacy Guides
The Nemesis Hacking Guides The Esrael Hacking Guides
ROM: Sonic 1 | Sonic 2 | Sonic 2 Beta | Sonic 3

Savestate: Sonic 1 | Sonic 2 Beta/Final | Sonic 3

Sonic 1 (English / Portuguese) | Sonic 2 Beta (English / Portuguese) | Sonic 2 and Knuckles (English / Portuguese)
Move to Sega Retro
Number Systems (or scrap) | Assembly Hacking Guide | 68000 Instruction Set | 68000 ASM-to-Hex Code Reference | SMPS Music Hacking Guide | Mega Drive technical information