diff --git a/SonLVL INI Files/ARZ/Leaves.xml b/SonLVL INI Files/ARZ/Leaves.xml index 1e00e995..da69ceb0 100644 --- a/SonLVL INI Files/ARZ/Leaves.xml +++ b/SonLVL INI Files/ARZ/Leaves.xml @@ -3,15 +3,15 @@ - + - + - + diff --git a/SonLVL INI Files/CNZ/Pinball mode.xml b/SonLVL INI Files/CNZ/Pinball mode.xml index 35a32db4..515c22a3 100644 --- a/SonLVL INI Files/CNZ/Pinball mode.xml +++ b/SonLVL INI Files/CNZ/Pinball mode.xml @@ -3,35 +3,35 @@ - + - + - + - + - + - + - + - + diff --git a/SonLVL INI Files/CPZ/Section of Pipe.xml b/SonLVL INI Files/CPZ/Section of Pipe.xml index 885bfb99..32d1cb17 100644 --- a/SonLVL INI Files/CPZ/Section of Pipe.xml +++ b/SonLVL INI Files/CPZ/Section of Pipe.xml @@ -3,7 +3,7 @@ - + diff --git a/SonLVL INI Files/Common/Invisible lava marker.xml b/SonLVL INI Files/Common/Invisible lava marker.xml index 83029c34..daace250 100644 --- a/SonLVL INI Files/Common/Invisible lava marker.xml +++ b/SonLVL INI Files/Common/Invisible lava marker.xml @@ -3,15 +3,15 @@ - + - + - + diff --git a/SonLVL INI Files/Common/InvisibleBlock.cs b/SonLVL INI Files/Common/InvisibleBlock.cs index 5e27adcf..20f3c9f2 100644 --- a/SonLVL INI Files/Common/InvisibleBlock.cs +++ b/SonLVL INI Files/Common/InvisibleBlock.cs @@ -12,7 +12,7 @@ class InvisibleBlock : ObjectDefinition public override void Init(ObjectData data) { byte[] artfile = ObjectHelper.OpenArtFile("../art/nemesis/Monitor and contents.nem", CompressionType.Nemesis); - string mapfile = "../mappings/sprite/obj74.asm"; + string mapfile = "../mappings/sprite/Invisible block.asm"; img = ObjectHelper.MapASMToBmp(artfile, mapfile, 0, 0); } diff --git a/SonLVL INI Files/Common/Monitor.xml b/SonLVL INI Files/Common/Monitor.xml index a426d233..934521b3 100644 --- a/SonLVL INI Files/Common/Monitor.xml +++ b/SonLVL INI Files/Common/Monitor.xml @@ -3,48 +3,48 @@ - + - + - + - + - + - + - + - + - + - + - + diff --git a/SonLVL INI Files/Common/PathSwapper.cs b/SonLVL INI Files/Common/PathSwapper.cs index 55685522..647ccbf1 100644 --- a/SonLVL INI Files/Common/PathSwapper.cs +++ b/SonLVL INI Files/Common/PathSwapper.cs @@ -16,7 +16,7 @@ public override void Init(ObjectData data) { List tmpartfile = new List(); tmpartfile.AddRange(ObjectHelper.OpenArtFile("Common/pathswapper-art.bin", CompressionType.Nemesis)); - string mapfile = "../mappings/sprite/obj03.asm"; + string mapfile = "../mappings/sprite/Pathswapper.asm"; byte[] artfile1 = tmpartfile.ToArray(); img = ObjectHelper.MapASMToBmp(artfile1, mapfile, 0, 0); Point off; diff --git a/SonLVL INI Files/EHZ/Waterfall.xml b/SonLVL INI Files/EHZ/Waterfall.xml index c394fbd4..05ceb9d1 100644 --- a/SonLVL INI Files/EHZ/Waterfall.xml +++ b/SonLVL INI Files/EHZ/Waterfall.xml @@ -3,19 +3,19 @@ - + - + - + - + diff --git a/SonLVL INI Files/HTZ/Lift stake.xml b/SonLVL INI Files/HTZ/Lift stake.xml index b4718c1d..f1e16506 100644 --- a/SonLVL INI Files/HTZ/Lift stake.xml +++ b/SonLVL INI Files/HTZ/Lift stake.xml @@ -11,11 +11,11 @@ - + - + diff --git a/SonLVL INI Files/HTZ/Seesaw.xml b/SonLVL INI Files/HTZ/Seesaw.xml index 21b90ebb..52987f63 100644 --- a/SonLVL INI Files/HTZ/Seesaw.xml +++ b/SonLVL INI Files/HTZ/Seesaw.xml @@ -3,7 +3,7 @@ - + diff --git a/SonLVL INI Files/MTZ/Bolt end and rope.xml b/SonLVL INI Files/MTZ/Bolt end and rope.xml index 711cc8b1..34bd7d9b 100644 --- a/SonLVL INI Files/MTZ/Bolt end and rope.xml +++ b/SonLVL INI Files/MTZ/Bolt end and rope.xml @@ -3,15 +3,15 @@ - + - + - + diff --git a/SonLVL INI Files/OOZ/Falling oil.xml b/SonLVL INI Files/OOZ/Falling oil.xml index fd234d43..39824e6b 100644 --- a/SonLVL INI Files/OOZ/Falling oil.xml +++ b/SonLVL INI Files/OOZ/Falling oil.xml @@ -3,39 +3,39 @@ - + - + - + - + - + - + - + - + - + diff --git a/SonLVL INI Files/OOZ/PushSpring.xml b/SonLVL INI Files/OOZ/PushSpring.xml index 82a1e207..8ca7d086 100644 --- a/SonLVL INI Files/OOZ/PushSpring.xml +++ b/SonLVL INI Files/OOZ/PushSpring.xml @@ -3,11 +3,11 @@ - + - + diff --git a/SonLVL INI Files/SCZ/Clouds.xml b/SonLVL INI Files/SCZ/Clouds.xml index 0b34f3a1..6a203526 100644 --- a/SonLVL INI Files/SCZ/Clouds.xml +++ b/SonLVL INI Files/SCZ/Clouds.xml @@ -3,15 +3,15 @@ - + - + - + diff --git a/SonLVL INI Files/WFZ/Cycling palette switcher.xml b/SonLVL INI Files/WFZ/Cycling palette switcher.xml index d3846163..480455fd 100644 --- a/SonLVL INI Files/WFZ/Cycling palette switcher.xml +++ b/SonLVL INI Files/WFZ/Cycling palette switcher.xml @@ -3,19 +3,19 @@ - + - + - + - + diff --git a/SonLVL INI Files/obj.ini b/SonLVL INI Files/obj.ini index 1b65f5d8..76225eee 100644 --- a/SonLVL INI Files/obj.ini +++ b/SonLVL INI Files/obj.ini @@ -2,7 +2,7 @@ codefile=Common/RingGroup.cs codetype=S2ObjectDefinitions.Common.RingGroup art=../art/nemesis/Ring.nem -mapasm=../mappings/sprite/obj37_a.asm +mapasm=../mappings/sprite/Ring.asm pal=1 spacing=24 [Sonic] @@ -17,7 +17,7 @@ codetype=S2ObjectDefinitions.Common.PathSwapper [0D] name=Signpost art=../art/nemesis/Signpost.nem -mapasm=../mappings/sprite/obj0D_a.asm +mapasm=../mappings/sprite/1P signpost.asm frame=2 [26] xmlfile=Common/Monitor.xml @@ -35,5 +35,5 @@ codetype=S2ObjectDefinitions.Common.InvisibleBlock [79] name=Star Post art=../art/nemesis/Star pole.nem -mapasm=../mappings/sprite/obj79_a.asm +mapasm=../mappings/sprite/Starpost.asm rememberstate=True \ No newline at end of file diff --git a/SonLVL INI Files/objCNZ.ini b/SonLVL INI Files/objCNZ.ini index cea9d363..5964f7b9 100644 --- a/SonLVL INI Files/objCNZ.ini +++ b/SonLVL INI Files/objCNZ.ini @@ -1,7 +1,7 @@ [44] name=Round Bumper art=../art/nemesis/Round bumper from CNZ.nem -mapasm=../mappings/sprite/obj44.asm +mapasm=../mappings/sprite/Round bumper from CNZ.asm frame=0 pal=2 rememberstate=True @@ -46,6 +46,6 @@ xmlfile=CNZ/Bumper.xml [D8] name=Colored Point Block art=../art/nemesis/Drop target from CNZ.nem -mapasm=../mappings/sprite/objD8.asm +mapasm=../mappings/sprite/Drop target from CNZ.asm frame=0 pal=2 \ No newline at end of file diff --git a/SonLVL INI Files/objMTZ.ini b/SonLVL INI Files/objMTZ.ini index b539d3be..ac04f0d8 100644 --- a/SonLVL INI Files/objMTZ.ini +++ b/SonLVL INI Files/objMTZ.ini @@ -67,7 +67,7 @@ xmlfile=MTZ/Gear.xml [71] name=Lava Bubble art=../art/nemesis/Lava bubble from MTZ.nem -mapasm=../mappings/sprite/obj71_b.asm +mapasm=../mappings/sprite/Lava bubble from MTZ.asm frame=3 pal=2 [9F] diff --git a/mappings/sprite/obj0D_a.asm b/mappings/sprite/1P signpost.asm similarity index 100% rename from mappings/sprite/obj0D_a.asm rename to mappings/sprite/1P signpost.asm diff --git a/mappings/sprite/obj0D_b.asm b/mappings/sprite/2P signpost.asm similarity index 100% rename from mappings/sprite/obj0D_b.asm rename to mappings/sprite/2P signpost.asm diff --git a/mappings/sprite/obj04_b.asm b/mappings/sprite/ARZ water surface.asm similarity index 100% rename from mappings/sprite/obj04_b.asm rename to mappings/sprite/ARZ water surface.asm diff --git a/mappings/sprite/obj1C_b.asm b/mappings/sprite/ARZ waterfall.asm similarity index 100% rename from mappings/sprite/obj1C_b.asm rename to mappings/sprite/ARZ waterfall.asm diff --git a/mappings/sprite/obj1C_e.asm b/mappings/sprite/Bolt end and rope from MTZ.asm similarity index 100% rename from mappings/sprite/obj1C_e.asm rename to mappings/sprite/Bolt end and rope from MTZ.asm diff --git a/mappings/sprite/obj04_a.asm b/mappings/sprite/CPZ and HPZ water surface.asm similarity index 100% rename from mappings/sprite/obj04_a.asm rename to mappings/sprite/CPZ and HPZ water surface.asm diff --git a/mappings/sprite/obj0C.asm b/mappings/sprite/CPZ unused platform.asm similarity index 100% rename from mappings/sprite/obj0C.asm rename to mappings/sprite/CPZ unused platform.asm diff --git a/mappings/sprite/obj1C_d.asm b/mappings/sprite/Cascading oil from OOZ 2.asm similarity index 100% rename from mappings/sprite/obj1C_d.asm rename to mappings/sprite/Cascading oil from OOZ 2.asm diff --git a/mappings/sprite/obj1C_c.asm b/mappings/sprite/Cascading oil from OOZ.asm similarity index 100% rename from mappings/sprite/obj1C_c.asm rename to mappings/sprite/Cascading oil from OOZ.asm diff --git a/mappings/sprite/objB3.asm b/mappings/sprite/Clouds from SCZ.asm similarity index 100% rename from mappings/sprite/objB3.asm rename to mappings/sprite/Clouds from SCZ.asm diff --git a/mappings/sprite/objDA.asm b/mappings/sprite/Continue sprites.asm similarity index 100% rename from mappings/sprite/objDA.asm rename to mappings/sprite/Continue sprites.asm diff --git a/mappings/sprite/objD8.asm b/mappings/sprite/Drop target from CNZ.asm similarity index 100% rename from mappings/sprite/objD8.asm rename to mappings/sprite/Drop target from CNZ.asm diff --git a/mappings/sprite/obj1C_a.asm b/mappings/sprite/Edge of ground from EHZ and HTZ.asm similarity index 100% rename from mappings/sprite/obj1C_a.asm rename to mappings/sprite/Edge of ground from EHZ and HTZ.asm diff --git a/mappings/sprite/obj27.asm b/mappings/sprite/Explosion.asm similarity index 100% rename from mappings/sprite/obj27.asm rename to mappings/sprite/Explosion.asm diff --git a/mappings/sprite/obj28_a.asm b/mappings/sprite/Flicky, Locky, and Cucky.asm similarity index 100% rename from mappings/sprite/obj28_a.asm rename to mappings/sprite/Flicky, Locky, and Cucky.asm diff --git a/mappings/sprite/obj39.asm b/mappings/sprite/Game over and time over.asm similarity index 100% rename from mappings/sprite/obj39.asm rename to mappings/sprite/Game over and time over.asm diff --git a/mappings/sprite/obj37_c.asm b/mappings/sprite/Giant ring flash.asm similarity index 100% rename from mappings/sprite/obj37_c.asm rename to mappings/sprite/Giant ring flash.asm diff --git a/mappings/sprite/obj37_b.asm b/mappings/sprite/Giant ring.asm similarity index 100% rename from mappings/sprite/obj37_b.asm rename to mappings/sprite/Giant ring.asm diff --git a/mappings/sprite/obj12.asm b/mappings/sprite/HPZ emerald.asm similarity index 100% rename from mappings/sprite/obj12.asm rename to mappings/sprite/HPZ emerald.asm diff --git a/mappings/sprite/obj13.asm b/mappings/sprite/HPZ waterfall.asm similarity index 100% rename from mappings/sprite/obj13.asm rename to mappings/sprite/HPZ waterfall.asm diff --git a/mappings/sprite/obj7D.asm b/mappings/sprite/Hidden points at end of stage.asm similarity index 100% rename from mappings/sprite/obj7D.asm rename to mappings/sprite/Hidden points at end of stage.asm diff --git a/mappings/sprite/obj35.asm b/mappings/sprite/Invincibility stars.asm similarity index 100% rename from mappings/sprite/obj35.asm rename to mappings/sprite/Invincibility stars.asm diff --git a/mappings/sprite/obj74.asm b/mappings/sprite/Invisible block.asm similarity index 100% rename from mappings/sprite/obj74.asm rename to mappings/sprite/Invisible block.asm diff --git a/mappings/sprite/obj7C.asm b/mappings/sprite/Large pylon from CPZ.asm similarity index 100% rename from mappings/sprite/obj7C.asm rename to mappings/sprite/Large pylon from CPZ.asm diff --git a/mappings/sprite/obj71_b.asm b/mappings/sprite/Lava bubble from MTZ.asm similarity index 100% rename from mappings/sprite/obj71_b.asm rename to mappings/sprite/Lava bubble from MTZ.asm diff --git a/mappings/sprite/obj31_a.asm b/mappings/sprite/Lava marker blank.asm similarity index 100% rename from mappings/sprite/obj31_a.asm rename to mappings/sprite/Lava marker blank.asm diff --git a/mappings/sprite/obj31_b.asm b/mappings/sprite/Lava marker.asm similarity index 100% rename from mappings/sprite/obj31_b.asm rename to mappings/sprite/Lava marker.asm diff --git a/mappings/sprite/obj0F.asm b/mappings/sprite/Menu from the title screen.asm similarity index 100% rename from mappings/sprite/obj0F.asm rename to mappings/sprite/Menu from the title screen.asm diff --git a/mappings/sprite/obj26.asm b/mappings/sprite/Monitor.asm similarity index 100% rename from mappings/sprite/obj26.asm rename to mappings/sprite/Monitor.asm diff --git a/mappings/sprite/obj03.asm b/mappings/sprite/Pathswapper.asm similarity index 100% rename from mappings/sprite/obj03.asm rename to mappings/sprite/Pathswapper.asm diff --git a/mappings/sprite/obj28_c.asm b/mappings/sprite/Picky.asm similarity index 100% rename from mappings/sprite/obj28_c.asm rename to mappings/sprite/Picky.asm diff --git a/mappings/sprite/obj28_e.asm b/mappings/sprite/Pocky and Pecky.asm similarity index 100% rename from mappings/sprite/obj28_e.asm rename to mappings/sprite/Pocky and Pecky.asm diff --git a/mappings/sprite/obj29.asm b/mappings/sprite/Points.asm similarity index 100% rename from mappings/sprite/obj29.asm rename to mappings/sprite/Points.asm diff --git a/mappings/sprite/obj71_a.asm b/mappings/sprite/Pulsating orb from HPZ.asm similarity index 100% rename from mappings/sprite/obj71_a.asm rename to mappings/sprite/Pulsating orb from HPZ.asm diff --git a/mappings/sprite/obj45.asm b/mappings/sprite/Push spring from OOZ.asm similarity index 100% rename from mappings/sprite/obj45.asm rename to mappings/sprite/Push spring from OOZ.asm diff --git a/mappings/sprite/obj28_b.asm b/mappings/sprite/Ricky, Wocky, Micky, Tocke, and Becky.asm similarity index 100% rename from mappings/sprite/obj28_b.asm rename to mappings/sprite/Ricky, Wocky, Micky, Tocke, and Becky.asm diff --git a/mappings/sprite/obj37_a.asm b/mappings/sprite/Ring.asm similarity index 100% rename from mappings/sprite/obj37_a.asm rename to mappings/sprite/Ring.asm diff --git a/mappings/sprite/obj28_d.asm b/mappings/sprite/Rocky.asm similarity index 100% rename from mappings/sprite/obj28_d.asm rename to mappings/sprite/Rocky.asm diff --git a/mappings/sprite/obj44.asm b/mappings/sprite/Round bumper from CNZ.asm similarity index 100% rename from mappings/sprite/obj44.asm rename to mappings/sprite/Round bumper from CNZ.asm diff --git a/mappings/sprite/obj14_b.asm b/mappings/sprite/Seesaw Sol.asm similarity index 100% rename from mappings/sprite/obj14_b.asm rename to mappings/sprite/Seesaw Sol.asm diff --git a/mappings/sprite/obj14_a.asm b/mappings/sprite/Seesaw.asm similarity index 100% rename from mappings/sprite/obj14_a.asm rename to mappings/sprite/Seesaw.asm diff --git a/mappings/sprite/obj38.asm b/mappings/sprite/Shield.asm similarity index 100% rename from mappings/sprite/obj38.asm rename to mappings/sprite/Shield.asm diff --git a/mappings/sprite/obj0B.asm b/mappings/sprite/Small yellow moving platform from CPZ.asm similarity index 100% rename from mappings/sprite/obj0B.asm rename to mappings/sprite/Small yellow moving platform from CPZ.asm diff --git a/mappings/sprite/obj8A.asm b/mappings/sprite/Sonic 1 credits.asm similarity index 100% rename from mappings/sprite/obj8A.asm rename to mappings/sprite/Sonic 1 credits.asm diff --git a/mappings/sprite/obj0E.asm b/mappings/sprite/Sonic and Tails from the title screen.asm similarity index 100% rename from mappings/sprite/obj0E.asm rename to mappings/sprite/Sonic and Tails from the title screen.asm diff --git a/mappings/sprite/objCF.asm b/mappings/sprite/Sprites from the ending sequence.asm similarity index 100% rename from mappings/sprite/objCF.asm rename to mappings/sprite/Sprites from the ending sequence.asm diff --git a/mappings/sprite/obj79_b.asm b/mappings/sprite/Starpost stars.asm similarity index 100% rename from mappings/sprite/obj79_b.asm rename to mappings/sprite/Starpost stars.asm diff --git a/mappings/sprite/obj79_a.asm b/mappings/sprite/Starpost.asm similarity index 100% rename from mappings/sprite/obj79_a.asm rename to mappings/sprite/Starpost.asm diff --git a/mappings/sprite/obj7E.asm b/mappings/sprite/Super Sonic stars.asm similarity index 100% rename from mappings/sprite/obj7E.asm rename to mappings/sprite/Super Sonic stars.asm diff --git a/mappings/sprite/obj46.asm b/mappings/sprite/Unused rolling ball from OOZ.asm similarity index 100% rename from mappings/sprite/obj46.asm rename to mappings/sprite/Unused rolling ball from OOZ.asm diff --git a/mappings/sprite/objBB.asm b/mappings/sprite/WFZ unknown object.asm similarity index 100% rename from mappings/sprite/objBB.asm rename to mappings/sprite/WFZ unknown object.asm diff --git a/mappings/sprite/obj08.asm b/mappings/sprite/Water splash and dust.asm similarity index 100% rename from mappings/sprite/obj08.asm rename to mappings/sprite/Water splash and dust.asm diff --git a/mappings/sprite/obj49.asm b/mappings/sprite/Waterfall from EHZ.asm similarity index 100% rename from mappings/sprite/obj49.asm rename to mappings/sprite/Waterfall from EHZ.asm diff --git a/mappings/spriteDPLC/obj0D.asm b/mappings/spriteDPLC/2P signpost.asm similarity index 100% rename from mappings/spriteDPLC/obj0D.asm rename to mappings/spriteDPLC/2P signpost.asm diff --git a/mappings/spriteDPLC/obj08.asm b/mappings/spriteDPLC/Water splash and dust.asm similarity index 100% rename from mappings/spriteDPLC/obj08.asm rename to mappings/spriteDPLC/Water splash and dust.asm diff --git a/s2.asm b/s2.asm index 35aa92a4..11367973 100644 --- a/s2.asm +++ b/s2.asm @@ -542,7 +542,6 @@ Vint_Lag: bra.s VintRet ; --------------------------------------------------------------------------- - ; loc_4C4: .isInLevelMode: tst.b (Water_flag).w @@ -567,7 +566,6 @@ Vint_Lag: bra.s .afterSetPalette ; --------------------------------------------------------------------------- - ; loc_526: .useUnderwaterPalette: dma68kToVDP Underwater_palette,$0000,palette_line_size*4,CRAM @@ -1331,11 +1329,12 @@ sndDriverInput: rts ; End of function sndDriverInput +; =========================================================================== +; These 'jmpTo' blocks were generated by the compiler (believed to be ProASM +; for the Amiga) whenever an imported function was called that was out-of-bounds; +; they are missing in REV02, since they switched over to a DOS-based setup using SNASM68K. jmpTos JmpTo_LoadTilesAsYouMove,JmpTo_SegaScr_VInt - - - ; --------------------------------------------------------------------------- ; Subroutine to initialize joypads ; --------------------------------------------------------------------------- @@ -4493,7 +4492,7 @@ TitleScreen_Loop: ; If the intro is still playing, then don't let the start button ; begin the game. - tst.b (IntroSonic+obj0e_intro_complete).w + tst.b (IntroSonic+titleintro_intro_complete).w beq.w TitleScreen_Loop ; If the start button has not been pressed, then loop back and keep @@ -4905,7 +4904,7 @@ Level_PlayBgm: move.b (a1,d0.w),d0 ; load from music playlist move.w d0,(Level_Music).w ; store level music bsr.w PlayMusic ; play level music - move.b #ObjID_TitleCard,(TitleCard+id).w ; load Obj34 (level title card) at $FFFFB080 + move.b #ObjID_TitleCard,(TitleCard+id).w ; load Obj_TitleCard at $FFFFB080 ; loc_40DA: Level_TtlCard: move.b #VintID_TitleCard,(Vint_routine).w @@ -4913,8 +4912,8 @@ Level_TtlCard: jsr (RunObjects).l jsr (BuildSprites).l bsr.w RunPLC_RAM - move.w (TitleCard_ZoneName+x_pos).w,d0 - cmp.w (TitleCard_ZoneName+titlecard_x_target).w,d0 ; has title card sequence finished? + move.w (TitleCard_ZoneNameText+x_pos).w,d0 + cmp.w (TitleCard_ZoneNameText+titlecard_x_target).w,d0 ; has title card sequence finished? bne.s Level_TtlCard ; if not, branch tst.l (Plc_Buffer).w ; are there any items in the pattern load cue? bne.s Level_TtlCard ; if yes, branch @@ -4956,11 +4955,11 @@ Level_TtlCard: + cmpi.b #chemical_plant_zone,(Current_Zone).w ; check if zone == CPZ bne.s + ; branch if not - move.b #ObjID_CPZPylon,(CPZPylon+id).w ; load Obj7C (CPZ pylon) at $FFFFB340 + move.b #ObjID_CPZPylon,(CPZPylon+id).w ; load Obj_CPZPylon (CPZ pylon) at $FFFFB340 + cmpi.b #oil_ocean_zone,(Current_Zone).w ; check if zone == OOZ bne.s Level_ClrHUD ; branch if not - move.b #ObjID_Oil,(Oil+id).w ; load Obj07 (OOZ oil) at $FFFFB380 + move.b #ObjID_Oil,(Oil+id).w ; load Obj_Oil at $FFFFB380 ; Level_LoadObj: misnomer now Level_ClrHUD: moveq #0,d0 @@ -5049,7 +5048,7 @@ Level_FromCheckpoint: + bsr.w PalLoad_Water_ForFade + - move.w #-1,(TitleCard_ZoneName+titlecard_leaveflag).w + move.w #-1,(TitleCard_ZoneNameText+titlecard_leaveflag).w move.b #$E,(TitleCard_Left+routine).w ; make the left part move offscreen move.w #$A,(TitleCard_Left+titlecard_location).w @@ -5062,14 +5061,14 @@ Level_FromCheckpoint: bne.s - ; loop while the title card background is still loaded lea (TitleCard).w,a1 - move.b #$16,TitleCard_ZoneName-TitleCard+routine(a1) - move.w #$2D,TitleCard_ZoneName-TitleCard+anim_frame_duration(a1) - move.b #$16,TitleCard_Zone-TitleCard+routine(a1) - move.w #$2D,TitleCard_Zone-TitleCard+anim_frame_duration(a1) - tst.b TitleCard_ActNumber-TitleCard+id(a1) + move.b #$16,TitleCard_ZoneNameText-TitleCard+routine(a1) + move.w #$2D,TitleCard_ZoneNameText-TitleCard+anim_frame_duration(a1) + move.b #$16,TitleCard_ZoneText-TitleCard+routine(a1) + move.w #$2D,TitleCard_ZoneText-TitleCard+anim_frame_duration(a1) + tst.b TitleCard_ActNumberText-TitleCard+id(a1) beq.s + ; branch if the act number has been unloaded - move.b #$16,TitleCard_ActNumber-TitleCard+routine(a1) - move.w #$2D,TitleCard_ActNumber-TitleCard+anim_frame_duration(a1) + move.b #$16,TitleCard_ActNumberText-TitleCard+routine(a1) + move.w #$2D,TitleCard_ActNumberText-TitleCard+anim_frame_duration(a1) + move.b #0,(Control_Locked).w move.b #0,(Control_Locked_P2).w move.b #1,(Level_started_flag).w @@ -5174,8 +5173,8 @@ InitPlayers: move.w (Player_mode).w,d0 bne.s InitPlayers_Alone ; branch if this isn't a Sonic and Tails game - move.b #ObjID_Sonic,(MainCharacter+id).w ; load Obj01 Sonic object at $FFFFB000 - move.b #ObjID_SpindashDust,(Sonic_Dust+id).w ; load Obj08 Sonic's spindash dust/splash object at $FFFFD100 + move.b #ObjID_Sonic,(MainCharacter+id).w ; load Obj_Sonic at $FFFFB000 + move.b #ObjID_SpindashDust,(Sonic_Dust+id).w ; load Sonic's Obj_SplashDust at $FFFFD100 cmpi.b #wing_fortress_zone,(Current_Zone).w beq.s + ; skip loading Tails if this is WFZ @@ -5184,12 +5183,12 @@ InitPlayers: cmpi.b #sky_chase_zone,(Current_Zone).w beq.s + ; skip loading Tails if this is SCZ - move.b #ObjID_Tails,(Sidekick+id).w ; load Obj02 Tails object at $FFFFB040 + move.b #ObjID_Tails,(Sidekick+id).w ; load Obj_Tails object at $FFFFB040 move.w (MainCharacter+x_pos).w,(Sidekick+x_pos).w move.w (MainCharacter+y_pos).w,(Sidekick+y_pos).w subi.w #$20,(Sidekick+x_pos).w addi_.w #4,(Sidekick+y_pos).w - move.b #ObjID_SpindashDust,(Tails_Dust+id).w ; load Obj08 Tails' spindash dust/splash object at $FFFFD140 + move.b #ObjID_SpindashDust,(Tails_Dust+id).w ; load Tails' Obj_SplashDust at $FFFFD140 + rts ; =========================================================================== @@ -5198,14 +5197,14 @@ InitPlayers_Alone: ; either Sonic or Tails but not both subq.w #1,d0 bne.s InitPlayers_TailsAlone ; branch if this is a Tails alone game - move.b #ObjID_Sonic,(MainCharacter+id).w ; load Obj01 Sonic object at $FFFFB000 - move.b #ObjID_SpindashDust,(Sonic_Dust+id).w ; load Obj08 Sonic's spindash dust/splash object at $FFFFD100 + move.b #ObjID_Sonic,(MainCharacter+id).w ; load Obj_Sonic at $FFFFB000 + move.b #ObjID_SpindashDust,(Sonic_Dust+id).w ; load Sonic's Obj_SplashDust at $FFFFD100 rts ; =========================================================================== ; loc_44D0: InitPlayers_TailsAlone: - move.b #ObjID_Tails,(MainCharacter+id).w ; load Obj02 Tails object at $FFFFB000 - move.b #ObjID_SpindashDust,(Tails_Dust+id).w ; load Obj08 Tails' spindash dust/splash object at $FFFFD100 + move.b #ObjID_Tails,(MainCharacter+id).w ; load Obj_Tails object at $FFFFB000 + move.b #ObjID_SpindashDust,(Tails_Dust+id).w ; load Tails' Obj_SplashDust at $FFFFD100 addi_.w #4,(MainCharacter+y_pos).w rts ; End of function InitPlayers @@ -6085,7 +6084,7 @@ ChangeRingFrame: subq.b #1,(Rings_anim_counter).w bpl.s + move.b #7,(Rings_anim_counter).w - addq.b #1,(Rings_anim_frame).w ; animate rings in the level (obj25) + addq.b #1,(Rings_anim_frame).w ; animate rings in the level (Obj_Ring) andi.b #3,(Rings_anim_frame).w + subq.b #1,(Unknown_anim_counter).w @@ -6104,7 +6103,7 @@ ChangeRingFrame: move.w d0,(Ring_spill_anim_accum).w rol.w #7,d0 andi.w #3,d0 - move.b d0,(Ring_spill_anim_frame).w ; animate scattered rings (obj37) + move.b d0,(Ring_spill_anim_frame).w ; animate scattered rings (Obj_LostRings) subq.b #1,(Ring_spill_anim_counter).w + rts @@ -6621,7 +6620,7 @@ SpecialStage: move.l #0,(Camera_Y_pos_copy).w cmpi.w #1,(Player_mode).w ; is this a Tails alone game? bgt.s + ; if yes, branch - move.b #ObjID_SonicSS,(MainCharacter+id).w ; load Obj09 (special stage Sonic) + move.b #ObjID_SonicSS,(MainCharacter+id).w ; load Obj_SSSonic tst.w (Player_mode).w ; is this a Sonic and Tails game? bne.s ++ ; if not, branch + move.b #ObjID_TailsSS,(Sidekick+id).w ; load Obj10 (special stage Tails) @@ -9756,10 +9755,11 @@ Obj5F_MapUnc_7240: include "mappings/sprite/obj5F_a.asm" ; sprite mappings ; ----------------------------------------------------------------------------------- Obj5F_MapUnc_72D2: include "mappings/sprite/obj5F_b.asm" + ; =========================================================================== -; ---------------------------------------------------------------------------- +; --------------------------------------------------------------------------- ; Object 87 - Number of rings in Special Stage -; ---------------------------------------------------------------------------- +; --------------------------------------------------------------------------- ; Sprite_7356: Obj87: moveq #0,d0 @@ -10365,11 +10365,11 @@ ContinueScreen: clr.b (Level_started_flag).w clr.l (Camera_X_pos_copy).w move.l #$1000000,(Camera_Y_pos_copy).w - move.b #ObjID_ContinueChars,(MainCharacter+id).w ; load ObjDB (Sonic on continue screen) - move.b #ObjID_ContinueChars,(Sidekick+id).w ; load ObjDB (Tails on continue screen) + move.b #ObjID_ContinueChars,(MainCharacter+id).w ; load Obj_ContinueChars (Sonic on continue screen) + move.b #ObjID_ContinueChars,(Sidekick+id).w ; load Obj_ContinueChars (Tails on continue screen) move.b #6,(Sidekick+routine).w ; => ObjDB_Tails_Init - move.b #ObjID_ContinueText,(ContinueText+id).w ; load ObjDA (continue screen text) - move.b #ObjID_ContinueIcons,(ContinueIcons+id).w ; load ObjDA (continue icons) + move.b #ObjID_ContinueText,(ContinueText+id).w ; load Obj_ContinueText (continue screen text) + move.b #ObjID_ContinueIcons,(ContinueIcons+id).w ; load Obj_ContinueText (continue icons) move.b #4,(ContinueIcons+routine).w ; => loc_7AD0 jsr (RunObjects).l jsr (BuildSprites).l @@ -10472,28 +10472,29 @@ ContinueScreen_AdditionalLetters: titleLetters "CONTINUE" charset ; revert character set + ; =========================================================================== ; ---------------------------------------------------------------------------- ; Object DA - Continue text ; ---------------------------------------------------------------------------- -; loc_7A68: -ObjDA: ; (screen-space obj) +; Sprite_7A68: ObjDA: +Obj_ContinueText: ; (screen-space obj) moveq #0,d0 move.b routine(a0),d0 - move.w ObjDA_Index(pc,d0.w),d1 - jmp ObjDA_Index(pc,d1.w) -; =========================================================================== -; Obj_DA_subtbl: -ObjDA_Index: offsetTable - offsetTableEntry.w ObjDA_Init ; 0 - offsetTableEntry.w JmpTo2_DisplaySprite ; 2 - offsetTableEntry.w loc_7AD0 ; 4 - offsetTableEntry.w loc_7B46 ; 6 -; =========================================================================== -; loc_7A7E: -ObjDA_Init: + move.w ContinueText_Index(pc,d0.w),d1 + jmp ContinueText_Index(pc,d1.w) +; =========================================================================== +; off_7A76: Obj_DA_subtbl: ObjDA_Index: +ContinueText_Index: offsetTable + offsetTableEntry.w ContinueText_Init ; 0 + offsetTableEntry.w JmpTo2_DisplaySprite ; 2 + offsetTableEntry.w loc_7AD0 ; 4 + offsetTableEntry.w loc_7B46 ; 6 +; =========================================================================== +; loc_7A7E: ObjDA_Init: +ContinueText_Init: addq.b #2,routine(a0) - move.l #ObjDA_MapUnc_7CB6,mappings(a0) + move.l #MapUnc_ContinueSprites,mappings(a0) move.w #make_art_tile(ArtTile_ArtNem_ContinueText,0,1),art_tile(a0) jsrto JmpTo_Adjust2PArtPointer move.b #0,render_flags(a0) @@ -10504,15 +10505,15 @@ ObjDA_Init: JmpTo2_DisplaySprite ; JmpTo jmp (DisplaySprite).l ; =========================================================================== -; word_7AB2: -ObjDA_XPositions: +; word_7AB2: ObjDA_XPositions: +ContinueText_XPositions: dc.w $116, $12A, $102, $13E, $EE, $152, $DA, $166 dc.w $C6, $17A, $B2, $18E, $9E, $1A2, $8A; 8 ; =========================================================================== loc_7AD0: movea.l a0,a1 - lea_ ObjDA_XPositions,a2 + lea_ ContinueText_XPositions,a2 moveq #0,d1 move.b (Continue_count).w,d1 subq.b #2,d1 @@ -10529,7 +10530,7 @@ loc_7AD0: move.b d1,d2 andi.b #1,d2 -- _move.b #ObjID_ContinueIcons,id(a1) ; load objDA +- _move.b #ObjID_ContinueIcons,id(a1) ; load Obj_ContinueText move.w (a2)+,x_pixel(a1) tst.b d2 beq.s + @@ -10538,7 +10539,7 @@ loc_7AD0: move.w #$D0,y_pixel(a1) move.b #4,mapping_frame(a1) move.b #6,routine(a1) - move.l #ObjDA_MapUnc_7CB6,mappings(a1) + move.l #MapUnc_ContinueSprites,mappings(a1) move.w #make_art_tile(ArtTile_ArtNem_ContinueText_2,0,1),art_tile(a1) jsrto JmpTo_Adjust2PArtPointer2 move.b #0,render_flags(a1) @@ -10572,31 +10573,32 @@ JmpTo3_DisplaySprite ; JmpTo JmpTo2_DeleteObject ; JmpTo jmp (DeleteObject).l + ; =========================================================================== ; ---------------------------------------------------------------------------- ; Object DB - Sonic lying down or Tails nagging (on the continue screen) ; ---------------------------------------------------------------------------- -; Sprite_7B82: -ObjDB: +; Sprite_7B82: ObjDB: +Obj_ContinueChars: ; a0=character moveq #0,d0 move.b routine(a0),d0 - move.w ObjDB_Index(pc,d0.w),d1 - jsr ObjDB_Index(pc,d1.w) + move.w ContinueChars_Index(pc,d0.w),d1 + jsr ContinueChars_Index(pc,d1.w) jmp (DisplaySprite).l ; =========================================================================== -; off_7B96: ObjDB_States: -ObjDB_Index: offsetTable - offsetTableEntry.w ObjDB_Sonic_Init ; 0 - offsetTableEntry.w ObjDB_Sonic_Wait ; 2 - offsetTableEntry.w ObjDB_Sonic_Run ; 4 - offsetTableEntry.w ObjDB_Tails_Init ; 6 - offsetTableEntry.w ObjDB_Tails_Wait ; 8 - offsetTableEntry.w ObjDB_Tails_Run ; $A -; =========================================================================== -; loc_7BA2: -ObjDB_Sonic_Init: - addq.b #2,routine(a0) ; => ObjDB_Sonic_Wait +; off_7B96: ObjDB_States: ObjDB_Index: +ContinueChars_Index: offsetTable + offsetTableEntry.w ContinueChars_Sonic_Init ; 0 + offsetTableEntry.w ContinueChars_Sonic_Wait ; 2 + offsetTableEntry.w ContinueChars_Sonic_Run ; 4 + offsetTableEntry.w ContinueChars_Tails_Init ; 6 + offsetTableEntry.w ContinueChars_Tails_Wait ; 8 + offsetTableEntry.w ContinueChars_Tails_Run ; $A +; =========================================================================== +; loc_7BA2: ObjDB_Sonic_Init: +ContinueChars_Sonic_Init: + addq.b #2,routine(a0) ; => ContinueChars_Sonic_Wait move.w #$9C,x_pos(a0) move.w #$19C,y_pos(a0) move.l #MapUnc_Sonic,mappings(a0) @@ -10605,23 +10607,23 @@ ObjDB_Sonic_Init: move.b #2,priority(a0) move.b #AniIDSonAni_Lying,anim(a0) -; loc_7BD2: -ObjDB_Sonic_Wait: +; loc_7BD2: ObjDB_Sonic_Wait: +ContinueChars_Sonic_Wait: tst.b (Ctrl_1_Press).w ; is start pressed? - bmi.s ObjDB_Sonic_StartRunning ; if yes, branch + bmi.s ContinueChars_Sonic_StartRunning ; if yes, branch jsr (Sonic_Animate).l jmp (LoadSonicDynPLC).l ; --------------------------------------------------------------------------- -; loc_7BE4: -ObjDB_Sonic_StartRunning: - addq.b #2,routine(a0) ; => ObjDB_Sonic_Run +; loc_7BE4: ObjDB_Sonic_StartRunning: +ContinueChars_Sonic_StartRunning: + addq.b #2,routine(a0) ; => ContinueChars_Sonic_Run move.b #AniIDSonAni_LieDown,anim(a0) clr.w inertia(a0) move.b #SndID_SpindashRev,d0 ; super peel-out sound bsr.w PlaySound -; loc_7BFA: -ObjDB_Sonic_Run: +; loc_7BFA: ObjDB_Sonic_Run: +ContinueChars_Sonic_Run: cmpi.w #$800,inertia(a0) bne.s + move.w #$1000,x_vel(a0) @@ -10634,27 +10636,27 @@ ObjDB_Sonic_Run: jsr (Sonic_Animate).l jmp (LoadSonicDynPLC).l ; =========================================================================== -; loc_7C22: -ObjDB_Tails_Init: - addq.b #2,routine(a0) ; => ObjDB_Tails_Wait +; loc_7C22: ObjDB_Tails_Init: +ContinueChars_Tails_Init: + addq.b #2,routine(a0) ; => ContinueChars_Tails_Wait move.w #$B8,x_pos(a0) move.w #$1A0,y_pos(a0) - move.l #ObjDA_MapUnc_7CB6,mappings(a0) + move.l #MapUnc_ContinueSprites,mappings(a0) move.w #make_art_tile(ArtTile_ArtNem_ContinueTails,0,0),art_tile(a0) move.b #1< ObjDB_Tails_Run +; loc_7C64: ObjDB_Tails_StartRunning: +ContinueChars_Tails_StartRunning: + addq.b #2,routine(a0) ; => ContinueChars_Tails_Run move.l #MapUnc_Tails,mappings(a0) move.w #make_art_tile(ArtTile_ArtUnc_Tails,0,0),art_tile(a0) move.b #AniIDSonAni_Walk,anim(a0) @@ -10662,8 +10664,8 @@ ObjDB_Tails_StartRunning: move.b #SndID_SpindashRev,d0 ; super peel-out sound bsr.w PlaySound -; loc_7C88: -ObjDB_Tails_Run: +; loc_7C88: ObjDB_Tails_Run: +ContinueChars_Tails_Run: cmpi.w #$720,inertia(a0) bne.s + move.w #$1000,x_vel(a0) @@ -10677,21 +10679,22 @@ ObjDB_Tails_Run: jmp (LoadTailsDynPLC).l ; =========================================================================== ; animation script for continue screen Tails nagging -; off_7CB0 -Ani_objDB: offsetTable +; off_7CB0 Ani_objDB: +Ani_ContinueChars: offsetTable offsetTableEntry.w + ; 0 + dc.b 9, 2, 3,$FF even -; ------------------------------------------------------------------------------- + +; --------------------------------------------------------------------------- ; Sprite mappings for text, countdown, stars, and Tails on the continue screen ; Art starts at $A000 in VRAM -; ------------------------------------------------------------------------------- -ObjDA_MapUnc_7CB6: include "mappings/sprite/objDA.asm" - - jmpTos JmpTo_Adjust2PArtPointer2,JmpTo_Adjust2PArtPointer - +; --------------------------------------------------------------------------- +; ObjDA_MapUnc_7CB6: +MapUnc_ContinueSprites: include "mappings/sprite/Continue sprites.asm" +; =========================================================================== + jmpTos JmpTo_Adjust2PArtPointer2,JmpTo_Adjust2PArtPointer ; =========================================================================== ; loc_7D50: @@ -13353,7 +13356,7 @@ ObjCA_Init: sub_A22A: lea (EndSeqPaletteChanger).w,a1 - move.b #ObjID_TtlScrPalChanger,id(a1) ; load objC9 (palette change handler) at $FFFFB0C0 + move.b #ObjID_TtlScrPalChanger,id(a1) ; load Obj_TtlScrPalChanger at $FFFFB0C0 move.b d0,subtype(a1) addq.b #2,routine(a0) move.w d1,objoff_3C(a0) @@ -13441,7 +13444,7 @@ loc_A2F2: moveq #$E,d0 move.b #ObjID_Tails,id(a1) ; load Tails object move.b #$81,obj_control(a1) - move.b #ObjID_TailsTails,(Tails_Tails_Cutscene+id).w ; load Obj05 (Tails' tails) at $FFFFB080 + move.b #ObjID_TailsTails,(Tails_Tails_Cutscene+id).w ; load Obj_TailsTails at $FFFFB080 move.w a1,(Tails_Tails_Cutscene+parent).w rts ; =========================================================================== @@ -13619,7 +13622,7 @@ loc_A4B6: clr.b anim(a0) clr.b anim_frame(a0) clr.b anim_frame_duration(a0) - move.l #ObjCF_MapUnc_ADA2,mappings(a0) + move.l #MapUnc_EndingSprites,mappings(a0) move.w #make_art_tile(ArtTile_ArtKos_LevelArt,0,0),art_tile(a0) jsr (Adjust2PArtPointer).l subi.w #$14,x_pos(a0) @@ -13650,6 +13653,9 @@ loc_A53A: move.w d0,y_pos(a1) move.w x_pos(a0),x_pos(a1) move.l #(1<<24)|(0<<16)|(AniIDSonAni_Wait<<8)|(AniIDSonAni_Wait<<0),mapping_frame(a1) + ; Sonic doesn't use the lower bit of 'anim_frame_duration' at + ; all, so this instead sets its duration to 1 and clears an + ; unused value. move.w #$100,anim_frame_duration(a1) rts ; =========================================================================== @@ -13893,28 +13899,28 @@ word_A874: dc.w $30,$1E ; 15 ; =========================================================================== -; ---------------------------------------------------------------------------- +; --------------------------------------------------------------------------- ; Object CE - Sonic and Tails jumping off the plane from ending sequence -; ---------------------------------------------------------------------------- -; Sprite_A894: -ObjCE: +; --------------------------------------------------------------------------- +; Sprite_A894: ObjCE: +Obj_EndingSeqChars: moveq #0,d0 move.b routine(a0),d0 - move.w ObjCE_Index(pc,d0.w),d1 - jmp ObjCE_Index(pc,d1.w) + move.w EndingSeqChars_Index(pc,d0.w),d1 + jmp EndingSeqChars_Index(pc,d1.w) ; =========================================================================== -; off_A8A2: -ObjCE_Index: offsetTable - offsetTableEntry.w ObjCE_Init ; 0 +; off_A8A2: ObjCE_Index: +EndingSeqChars_Index: offsetTable + offsetTableEntry.w EndingSeqChars_Init ; 0 offsetTableEntry.w loc_A902 ; 2 offsetTableEntry.w loc_A936 ; 4 offsetTableEntry.w BranchTo_JmpTo5_DisplaySprite ; 6 ; =========================================================================== -; loc_A8AA: -ObjCE_Init: - lea (ObjB3_SubObjData).l,a1 +; loc_A8AA: ObjCE_Init: +EndingSeqChars_Init: + lea (SCZCloud_SubObjData).l,a1 jsrto JmpTo_LoadSubObject_Part3 - move.l #ObjCF_MapUnc_ADA2,mappings(a0) + move.l #MapUnc_EndingSprites,mappings(a0) move.w #make_art_tile(ArtTile_ArtKos_LevelArt,0,1),art_tile(a0) move.b #1,priority(a0) jsr (Adjust2PArtPointer).l @@ -13989,27 +13995,28 @@ byte_A980: byte_A984: dc.b -8, 0 dc.b -$50,-$40 ; 2 + ; =========================================================================== -; ---------------------------------------------------------------------------- +; --------------------------------------------------------------------------- ; Object CF - "Plane's helixes" from ending sequence -; ---------------------------------------------------------------------------- -; Sprite_A988: -ObjCF: +; --------------------------------------------------------------------------- +; Sprite_A988: ObjCF: +Obj_TornadoHelixes: moveq #0,d0 move.b routine(a0),d0 - move.w ObjCF_Index(pc,d0.w),d1 - jmp ObjCF_Index(pc,d1.w) + move.w TornadoHelixes_Index(pc,d0.w),d1 + jmp TornadoHelixes_Index(pc,d1.w) ; =========================================================================== -; off_A996: -ObjCF_Index: offsetTable - offsetTableEntry.w ObjCF_Init ; 0 - offsetTableEntry.w ObjCF_Animate ; 2 +; off_A996: ObjCF_Index: +TornadoHelixes_Index: offsetTable + offsetTableEntry.w TornadoHelixes_Init ; 0 + offsetTableEntry.w TornadoHelixes_Animate ; 2 ; =========================================================================== -; loc_A99A: -ObjCF_Init: - lea (ObjB3_SubObjData).l,a1 +; loc_A99A: ObjCF_Init: +TornadoHelixes_Init: + lea (SCZCloud_SubObjData).l,a1 jsrto JmpTo_LoadSubObject_Part3 - move.l #ObjCF_MapUnc_ADA2,mappings(a0) + move.l #MapUnc_EndingSprites,mappings(a0) move.w #make_art_tile(ArtTile_ArtKos_LevelArt,0,1),art_tile(a0) move.b #3,priority(a0) jsr (Adjust2PArtPointer).l @@ -14023,15 +14030,15 @@ ObjCF_Init: move.w d0,objoff_32(a0) rts ; =========================================================================== -; loc_A9E4: -ObjCF_Animate: - lea (Ani_objCF).l,a1 +; loc_A9E4: ObjCF_Animate: +TornadoHelixes_Animate: + lea (Ani_TornadoHelixes).l,a1 jsrto JmpTo_AnimateSprite bra.w loc_A90E ; =========================================================================== -; ---------------------------------------------------------------------------- +; --------------------------------------------------------------------------- ; Object CB - Background clouds from ending sequence -; ---------------------------------------------------------------------------- +; --------------------------------------------------------------------------- ; Sprite_A9F2: ObjCB: moveq #0,d0 @@ -14047,7 +14054,7 @@ ObjCB_Index: offsetTable ; =========================================================================== ; loc_AA06: ObjCB_Init: - lea (ObjB3_SubObjData).l,a1 + lea (SCZCloud_SubObjData).l,a1 jsrto JmpTo_LoadSubObject_Part3 move.w art_tile(a0),d0 andi.w #$1FFF,d0 @@ -14133,7 +14140,7 @@ ObjCD_Index: offsetTable ; =========================================================================== ; loc_AAC0: ObjCD_Init: - lea (Obj28_SubObjData).l,a1 + lea (Animal_SubObjData).l,a1 jsrto JmpTo_LoadSubObject_Part3 move.l (RNG_seed).w,d0 ror.l #3,d0 @@ -14327,9 +14334,9 @@ ChildObject_AD66: childObjectData objoff_3E, ObjID_EndingSeqBird, $00 ChildObject_AD6A: childObjectData objoff_3E, ObjID_EndingSeqSonic, $00 ChildObject_AD6E: childObjectData objoff_3E, ObjID_TornadoHelixes, $00 -; off_AD72: -Obj28_SubObjData: - subObjData Obj28_MapUnc_11E1C,make_art_tile(ArtTile_ArtNem_Animal_2,0,0),1<