Difference between revisions of "Fix the EHZ Deformation bug"
From Sonic Retro
Scarred Sun (talk | contribs) m (Text replacement - "<asm>" to "<syntaxhighlight lang="asm">") |
|||
Line 49: | Line 49: | ||
[[File:S2-EHZ-Deform-Fixed.png|500px]] | [[File:S2-EHZ-Deform-Fixed.png|500px]] | ||
+ | |||
+ | Sonic 2 beta we can also do this in sonic 2 beta | ||
+ | |||
+ | Just replace the code with this | ||
+ | |||
+ | <syntaxhighlight lang="asm"> | ||
+ | move.w d4,(a1)+ | ||
+ | move.w d3,(a1)+ | ||
+ | move.w d4,(a1)+ | ||
+ | move.w d3,(a1)+ | ||
+ | move.w d4,(a1)+ | ||
+ | move.w d3,(a1)+ | ||
+ | swap d3 | ||
+ | add.l d0,d3 | ||
+ | add.l d0,d3 | ||
+ | add.l d0,d3 | ||
+ | swap d3 | ||
+ | dbf d1,loc_61B2 | ||
+ | move.w d4,(a1)+ | ||
+ | move.w d3,(a1)+ | ||
+ | move.w d4,(a1)+ | ||
+ | move.w d3,(a1)+ | ||
+ | |||
+ | rts | ||
+ | </syntaxhighlight> | ||
+ | |||
{{S2Howtos}} | {{S2Howtos}} | ||
[[Category:SCHG How-tos|Fix the EHZ Deformation bug]] | [[Category:SCHG How-tos|Fix the EHZ Deformation bug]] |
Revision as of 03:46, 15 September 2017
(Original guide by qiuu)
In Sonic 2 is in EHZ a small deformation bug, the lowest two layers don't scroll as they are not affected by the deformation code:
To fix this, go to SwScrl_EHZ:. Scroll down until you see SwScrl_RippleData:. Above it you should have this piece of code:
move.w #($B4)/12-1,d1 ; $B4 bytes
- move.w d4,(a1)+
move.w d3,(a1)+
move.w d4,(a1)+
move.w d3,(a1)+
move.w d4,(a1)+
move.w d3,(a1)+
swap d3
add.l d0,d3
add.l d0,d3
add.l d0,d3
swap d3
dbf d1,-
rts
Copy and paste this code twice into it:
move.w d4,(a1)+
move.w d3,(a1)+
In the end it should look like this:
move.w #($B4)/12-1,d1 ; $B4 bytes
- move.w d4,(a1)+
move.w d3,(a1)+
move.w d4,(a1)+
move.w d3,(a1)+
move.w d4,(a1)+
move.w d3,(a1)+
swap d3
add.l d0,d3
add.l d0,d3
add.l d0,d3
swap d3
dbf d1,-
move.w d4,(a1)+
move.w d3,(a1)+
move.w d4,(a1)+
move.w d3,(a1)+
rts
And that's it! Now it should look fixed:
Sonic 2 beta we can also do this in sonic 2 beta
Just replace the code with this
move.w d4,(a1)+
move.w d3,(a1)+
move.w d4,(a1)+
move.w d3,(a1)+
move.w d4,(a1)+
move.w d3,(a1)+
swap d3
add.l d0,d3
add.l d0,d3
add.l d0,d3
swap d3
dbf d1,loc_61B2
move.w d4,(a1)+
move.w d3,(a1)+
move.w d4,(a1)+
move.w d3,(a1)+
rts