Sonic 3C 0408 discussion

Discussion in 'Prototype Discussion' started by drx, Feb 23, 2008.

  1. muteKi

    muteKi

    Fuck it Member
    7,544
    0
    16
    Up until a few years back the main computer monitor only went up to that resolution.
     
  2. GeneHF

    GeneHF

    SEGA-ier than you'll potentially ever be. Site Staff
    8,387
    0
    16
    Scenic Studiopolis
    Complete Global Conquest
    My laptop's shooting out 1920x1200. For shame on the rest of you laptop users. :disgust:

    I knew some of those second set special stages felt familiar when playing them. Good to see I wasn't wrong.
     
  3. Skaarg

    Skaarg

    Member
    3,683
    0
    16
    I don't understand how people can use 1024x768. Everything just seems so big and bloated. I like having large resolutions where I can have plenty of space for windows, and have a lot to see when browsing the web.
     
  4. shobiz

    shobiz

    Tech Member
    Well that depends on the size of the screen. I have a 15" monitor, so 1024x768 is the best choice for me.
     
  5. Overlord

    Overlord

    ...did we just switch realities? Moderator
    17,352
    8
    18
    Berkshire, England
    Learning Cymraeg
    Maximum resolution isn't voluntary, is it =P

    Seriously though, I dunno how you all manage. I'm on 1280x1024 right now and even this I find restricting compared to 1600x1200, which my monitor sadly cannot do =(

    EDIT: Learn to proofread your posts for typos, OL
     
  6. Skaarg

    Skaarg

    Member
    3,683
    0
    16
    To get back on topic for this thread.. I'm not sure if it was noted or not, but when playing Hydrocity Act 1 and the at the miniboss, let the drowning timer start and and then jump out of the water, and you will have music from S&K.
     
  7. Isn't that a known glitch from the original game?
     
  8. Tweaker

    Tweaker

    Misfit
    12,389
    0
    0
    That was in the final Sonic 3.
     
  9. Quexinos

    Quexinos

    Since 1997 Oldbie
    1,672
    0
    0
    And it's also been pointed out in almost every Sonic 3 prototype thread at least once :P
     
  10. Lostgame

    Lostgame

    resident geek girl + record label manager Oldbie
    4,033
    0
    16
    Toronto, ON
    The O.I.C.
    Yeah, ditto. It's just hard to believe to me that people could still even stand using 1024...
     
  11. muteKi

    muteKi

    Fuck it Member
    7,544
    0
    16
    Like was mentioned before, it's all relative to the screen's size. If my monitor was really tiny I wouldn't stay with 1280x800.
     
  12. Danika

    Danika

    ... Oldbie
    143
    0
    16
    ...
    Nothing atm
    I had used 640x480 from 1993 to 2000 or so, and then I used 800x600 until 2007, then I got a new computer and switched to 1280x800 =P

    If I still used 640x480, the Internet would look really weird today =/
     
  13. Vlcice

    Vlcice

    Oldbie
    53
    0
    0
    As far as resolution goes, if I can add to the off-topic debate: one thing to keep in mind is that not everyone's browser window is the size of their screen! I run at 1680x1050, but my browser's viewable area is something like 900x840 so that I can see other application windows without too much overlapping.
     
  14. evilhamwizard

    evilhamwizard

    Researcher
    1,296
    2
    18
    Hey, let's resurrect this thread from the dead (has it really only been 9 years?).

    Mentioned a while a go, this build of the game has an interesting TRAP15 interrupt routine that goes unused. Back in 2008, I don't think we knew as much about Sonic 3 than we do now so the functionality of the routine itself was partially covered in mystery. The routine basically consists of a simple function that uses a gigantic table of common routines to jump to for debugging. There's some unused code following this routine that I'm not sure what the purpose is, but maybe you can figure it out.

    The labels I'm using are based on the Git disassembly:
    Code (ASM):
    1. ROM:0005B1AA ; =============== S U B R O U T I N E =======================================
    2. ROM:0005B1AA
    3. ROM:0005B1AA ; unused interrupt routine. this still exists in sonic 3 stand alone at 0x4313E but without the trap table
    4. ROM:0005B1AA
    5. ROM:0005B1AA                 global TRAP15
    6. ROM:0005B1AA TRAP15:                                 ; DATA XREF: ROM:off_BCo
    7. ROM:0005B1AA                 movea.l Trap15_Table(pc,d6.w),a6
    8. ROM:0005B1AE                 jsr     (a6)
    9. ROM:0005B1B0                 nop
    10. ROM:0005B1B2                 nop
    11. ROM:0005B1B4                 move    sr,d5
    12. ROM:0005B1B6                 move.w  (sp),d6
    13. ROM:0005B1B8                 andi.w  #$1F,d5
    14. ROM:0005B1BC                 andi.w  #$FFE0,d6
    15. ROM:0005B1C0                 or.w    d5,d6
    16. ROM:0005B1C2                 move.w  d6,(sp)
    17. ROM:0005B1C4                 nop
    18. ROM:0005B1C6                 nop
    19. ROM:0005B1C8                 rte
    20. ROM:0005B1C8 ; End of function TRAP15
    21. ROM:0005B1C8
    22. ROM:0005B1C8 ; ---------------------------------------------------------------------------
    23. ROM:0005B1CA Trap15_Table:   dc.l BossDefeated_StopTimer; 0 ; DATA XREF: TRAP15r
    24. ROM:0005B1CA                 dc.l BossDefeated       ; 1 ; unused?
    25. ROM:0005B1CA                 dc.l BossFlash          ; 2
    26. ROM:0005B1CA                 dc.l TimedSprite_ScreenLock; 3
    27. ROM:0005B1CA                 dc.l Child6_IncLevX     ; 4
    28. ROM:0005B1CA                 dc.l Child6_DecLevX     ; 5
    29. ROM:0005B1CA                 dc.l Child6_DecLevY     ; 6
    30. ROM:0005B1CA                 dc.l Child6_IncLevY     ; 7
    31. ROM:0005B1CA                 dc.l loc_7B0CA          ; 8
    32. ROM:0005B1CA                 dc.l Obj_IncLevEndXGradual; 9
    33. ROM:0005B1CA                 dc.l Obj_DecLevStartXGradual; $A
    34. ROM:0005B1CA                 dc.l Obj_DecLevStartYGradual; $B
    35. ROM:0005B1CA                 dc.l Obj_IncLevEndYGradual; $C
    36. ROM:0005B1CA                 dc.l Draw_And_Touch_Sprite; $D
    37. ROM:0005B1CA                 dc.l Check_CameraInRange; $E
    38. ROM:0005B1CA                 dc.l Obj_FlickerMove    ; $F
    39. ROM:0005B1CA                 dc.l Find_SonicTails    ; $10
    40. ROM:0005B1CA                 dc.l Find_OtherObject   ; $11
    41. ROM:0005B1CA                 dc.l Check_PlayerCollision; $12
    42. ROM:0005B1CA                 dc.l Check_PlayerInRange; $13
    43. ROM:0005B1CA                 dc.l Sprite_CheckDelete ; $14
    44. ROM:0005B1CA                 dc.l Sprite_CheckDelete2; $15
    45. ROM:0005B1CA                 dc.l loc_7A6D4          ; $16
    46. ROM:0005B1CA                 dc.l Sprite_CheckDeleteXY; $17
    47. ROM:0005B1CA                 dc.l Sprite_CheckDeleteTouch; $18
    48. ROM:0005B1CA                 dc.l Sprite_CheckDeleteTouch2; $19
    49. ROM:0005B1CA                 dc.l loc_7A700          ; $1A
    50. ROM:0005B1CA                 dc.l Sprite_CheckDeleteTouchXY; $1B
    51. ROM:0005B1CA                 dc.l Sprite_CheckDeleteSlotted; $1C
    52. ROM:0005B1CA                 dc.l sub_7A66A          ; $1D
    53. ROM:0005B1CA                 dc.l Sprite_CheckDeleteTouchSlotted; $1E
    54. ROM:0005B1CA                 dc.l Sprite_CheckDeleteTouchSlotted_2; $1F
    55. ROM:0005B1CA                 dc.l Sprite_CheckDeleteTouchSlotted_2; $20
    56. ROM:0005B1CA                 dc.l loc_7A6EA          ; $21
    57. ROM:0005B1CA                 dc.l Change_FlipX       ; $22
    58. ROM:0005B1CA                 dc.l Change_FlipXWithVelocity; $23
    59. ROM:0005B1CA                 dc.l Obj_WaitOffscreen  ; $24
    60. ROM:0005B1CA                 dc.l Check_LRControllerShake; $25
    61. ROM:0005B1CA                 dc.l Child_Draw_Sprite  ; $26
    62. ROM:0005B1CA                 dc.l Child_Draw_Sprite2 ; $27
    63. ROM:0005B1CA                 dc.l Child_DrawTouch_Sprite; $28
    64. ROM:0005B1CA                 dc.l Child_DrawTouch_Sprite2; $29
    65. ROM:0005B1CA                 dc.l Child_Remember_Draw_Sprite; $2A
    66. ROM:0005B1CA                 dc.l Child_GetPriority  ; $2B
    67. ROM:0005B1CA                 dc.l Child_GetPriorityOnce; $2C
    68. ROM:0005B1CA                 dc.l Change_FlipXUseParent; $2D
    69. ROM:0005B1CA                 dc.l sub_7B378          ; $2E
    70. ROM:0005B1CA                 dc.l Displace_PlayerOffObject; $2F
    71. ROM:0005B1CA                 dc.l Child_Draw_Sprite_FlickerMove; $30
    72. ROM:0005B1CA                 dc.l Child_Draw_Sprite2_FlickerMove; $31
    73. ROM:0005B1CA                 dc.l Child_DrawTouch_Sprite_FlickerMove; $32
    74. ROM:0005B1CA                 dc.l Child_DrawTouch_Sprite2_FlickerMove; $33
    75. ROM:0005B1CA                 dc.l MoveSprite_CircularSimple; $34
    76. ROM:0005B1CA                 dc.l MoveSprite_CircularSimpleOffset; $35
    77. ROM:0005B1CA                 dc.l MoveSprite_AtAngleLookup; $36
    78. ROM:0005B1CA                 dc.l MoveSprite_CircularLookup; $37
    79. ROM:0005B1CA                 dc.l loc_7B052          ; $38
    80. ROM:0005B1CA                 dc.l Remove_From_TrackingSlot; $39
    81. ROM:0005B1CA                 dc.l Obj_Wait           ; $3A
    82. ROM:0005B1CA                 dc.l Run_PalRotationScript; $3B
    83. ROM:0005B1CA                 dc.l ObjHitFloor2_DoRoutine; $3C
    84. ROM:0005B1CA                 dc.l ObjHitFloor_DoRoutine; $3D
    85. ROM:0005B1CA                 dc.l Obj_FadeSelectedToBlack; $3E
    86. ROM:0005B1CA                 dc.l loc_7A502          ; $3F
    87. ROM:0005B1CA                 dc.l loc_7A534          ; $40
    88. ROM:0005B1CA                 dc.l ObjHitWall_DoRoutine; $41
    89. ROM:0005B1CA                 dc.l ObjHitWall2_DoRoutine; $42
    90. ROM:0005B1CA                 dc.l SetUp_ObjAttributesSlotted; $43
    91. ROM:0005B1CA                 dc.l SetUp_ObjAttributes; $44
    92. ROM:0005B1CA                 dc.l SetUp_ObjAttributes2; $45
    93. ROM:0005B1CA                 dc.l SetUp_ObjAttributes3; $46
    94. ROM:0005B1CA                 dc.l loc_7B0A4          ; $47
    95. ROM:0005B1CA                 dc.l sub_7B2FE          ; $48
    96. ROM:0005B1CA                 dc.l sub_7B33A          ; $49
    97. ROM:0005B1CA                 dc.l sub_7B286          ; $4A
    98. ROM:0005B1CA                 dc.l sub_7B2CC          ; $4B
    99. ROM:0005B1CA                 dc.l Swing_LeftAndRight ; $4C
    100. ROM:0005B1CA                 dc.l Chase_Object       ; $4D
    101. ROM:0005B1CA                 dc.l sub_7A960          ; $4E
    102. ROM:0005B1CA                 dc.l Chase_ObjectXOnly  ; $4F
    103. ROM:0005B1CA                 dc.l Chase_ObjectYOnly  ; $50
    104. ROM:0005B1CA                 dc.l AddRings           ; $51
    105. ROM:0005B1CA                 dc.l PLC_EndSignStuff   ; $52
    106. ROM:0005B1CA                 dc.l Refresh_ChildPosition; $53
    107. ROM:0005B1CA                 dc.l Refresh_ChildPositionAdjusted; $54
    108. ROM:0005B1CA                 dc.l Refresh_ChildPosWait; $55
    109. ROM:0005B1CA                 dc.l loc_7AAB2          ; $56
    110. ROM:0005B1CA                 dc.l Find_SonicTails8Way; $57
    111. ROM:0005B1CA                 dc.l Obj_EndSignControlAwaitStart; $58
    112. ROM:0005B1CA                 dc.l Animate_RawGetFaster; $59
    113. ROM:0005B1CA                 dc.l loc_79B7E          ; $5A
    114. ROM:0005B1CA                 dc.l Animate_RawGetSlower; $5B
    115. ROM:0005B1CA                 dc.l loc_79BFE          ; $5C
    116. ROM:0005B1CA                 dc.l AnimateRaw_MoveChkDel; $5D
    117. ROM:0005B1CA                 dc.l loc_7AACC          ; $5E
    118. ROM:0005B1CA                 dc.l loc_7AA58          ; $5F
    119. ROM:0005B1CA                 dc.l Swing_MoveWaitNoFall; $60
    120. ROM:0005B1CA                 dc.l loc_7AAFA          ; $61
    121. ROM:0005B1CA                 dc.l loc_7AAF2          ; $62
    122. ROM:0005B1CA                 dc.l Animate_Raw        ; $63
    123. ROM:0005B1CA                 dc.l Animate_RawNoSST   ; $64
    124. ROM:0005B1CA                 dc.l Animate_RawAdjustFlipX; $65
    125. ROM:0005B1CA                 dc.l loc_798DE          ; $66
    126. ROM:0005B1CA                 dc.l Animate_RawAdjustFlipY; $67
    127. ROM:0005B1CA                 dc.l loc_79912          ; $68
    128. ROM:0005B1CA                 dc.l loc_7AA62          ; $69
    129. ROM:0005B1CA                 dc.l loc_7AB18          ; $6A
    130. ROM:0005B1CA                 dc.l Swing_UpAndDown    ; $6B
    131. ROM:0005B1CA                 dc.l Swing_UpAndDown_Count; $6C
    132. ROM:0005B1CA                 dc.l Obj_Song_Fade_ToLevelMusic; $6D
    133. ROM:0005B1CA                 dc.l Obj_PlayLevelMusic ; $6E
    134. ROM:0005B1CA                 dc.l Restore_PlayerControl; $6F
    135. ROM:0005B1CA                 dc.l Restore_PlayerControl2; $70
    136. ROM:0005B1CA                 dc.l Change_Act2Sizes   ; $71
    137. ROM:0005B1CA                 dc.l CreateChild1_Normal; $72
    138. ROM:0005B1CA                 dc.l CreateChild2_Complex; $73
    139. ROM:0005B1CA                 dc.l CreateChild3_NormalRepeated; $74
    140. ROM:0005B1CA                 dc.l CreateChild4_LinkListRepeated; $75
    141. ROM:0005B1CA                 dc.l CreateChild5_ComplexAdjusted; $76
    142. ROM:0005B1CA                 dc.l CreateChild6_Simple; $77
    143. ROM:0005B1CA                 dc.l CreateChild7_Normal2; $78
    144. ROM:0005B1CA                 dc.l CreateChild8_TreeListRepeated; $79
    145. ROM:0005B1CA                 dc.l Obj_Song_Fade_Transition; $7A
    146. ROM:0005B1CA                 dc.l Set_IndexedVelocity; $7B
    147. ROM:0005B1CA                 dc.l Set_IndexedVelocity2; $7C
    148. ROM:0005B1CA                 dc.l sub_7B274          ; $7D
    149. ROM:0005B1CA                 dc.l CopyWordData_2     ; $7E
    150. ROM:0005B1CA                 dc.l CopyWordData_3     ; $7F
    151. ROM:0005B1CA                 dc.l CopyWordData_4     ; $80
    152. ROM:0005B1CA                 dc.l CopyWordData_5     ; $81
    153. ROM:0005B1CA                 dc.l CopyWordData_6     ; $82
    154. ROM:0005B1CA                 dc.l CopyWordData_7     ; $83
    155. ROM:0005B1CA                 dc.l CopyWordData_8     ; $84
    156. ROM:0005B1CA                 dc.l PalLoad_Line1      ; $85
    157. ROM:0005B1CA                 dc.l EnemyDefeated      ; $86
    158. ROM:0005B1CA                 dc.l Go_Delete_Sprite   ; $87
    159. ROM:0005B1CA                 dc.l Go_Delete_Sprite_2 ; $88
    160. ROM:0005B1CA                 dc.l loc_79E52          ; $89
    161. ROM:0005B1CA                 dc.l Perform_DPLC       ; $8A
    162. ROM:0005B1CA                 dc.l PLCLoad_AnimalsAndExplosion; $8B
    163. ROM:0005B1CA                 dc.l loc_7B3F4          ; $8C
    164. ROM:0005B1CA                 dc.l Set_VelocityXTrackSonic; $8D
    165. ROM:0005B1CA                 dc.l Obj_EndSignControl ; $8E
    166. ROM:0005B1CA                 dc.l Make_LevelSizeObj  ; $8F
    167. ROM:0005B1CA                 dc.l StartNewLevel      ; $90
    168. ROM:0005B1CA                 dc.l Go_Delete_SpriteSlotted2; $91
    169. ROM:0005B1CA                 dc.l MoveSprite_AngleYLookup; $92
    170. ROM:0005B1CA                 dc.l MoveSprite_AngleXLookupOffset; $93
    171. ROM:0005B1CA                 dc.l MoveSprite_AngleXLookupOffset_2; $94
    172. ROM:0005B1CA                 dc.l MoveChkDel         ; $95
    173. ROM:0005B1CA                 dc.l MoveTouchChkDel    ; $96
    174. ROM:0005B1CA                 dc.l MoveSlowFall_AnimateRaw; $97
    175. ROM:0005B1CA                 dc.l MoveSprite_LightGravity; $98
    176. ROM:0005B1CA                 dc.l MoveFall_AnimateRaw; $99
    177. ROM:0005B1CA                 dc.l Move_AnimateRaw    ; $9A
    178. ROM:0005B1CA                 dc.l Move_AnimateRaw_Wait; $9B
    179. ROM:0005B1CA                 dc.l Move_WaitNoFall    ; $9C
    180. ROM:0005B1CA                 dc.l MoveWaitTouch      ; $9D
    181. ROM:0005B1CA                 dc.l loc_7A3B2          ; $9E
    182. ROM:0005B1CA                 dc.l loc_7A3C0          ; $9F
    183. ROM:0005B1CA                 dc.l MoveDraw_SpriteTimed; $A0
    184. ROM:0005B1CA                 dc.l MoveDraw_SpriteTimed2; $A1
    185. ROM:0005B1CA                 dc.l Animate_RawMultiDelay; $A2
    186. ROM:0005B1CA                 dc.l Animate_RawNoSSTMultiDelay; $A3
    187. ROM:0005B1CA                 dc.l Animate_RawMultiDelayFlipX; $A4
    188. ROM:0005B1CA                 dc.l Animate_RawNoSSTMultiDelayFlipX; $A5
    189. ROM:0005B1CA                 dc.l Animate_RawMultiDelayFlipY; $A6
    190. ROM:0005B1CA                 dc.l Animate_RawNoSSTMultiDelayFlipY; $A7
    191. ROM:0005B1CA                 dc.l Wait_Draw          ; $A8
    192. ROM:0005B1CA                 dc.l AnimateRaw_DrawTouch; $A9
    193. ROM:0005B1CA                 dc.l Go_Delete_SpriteSlotted3; $AA
    194. ROM:0005B1CA                 dc.l Go_Delete_SpriteSlotted; $AB
    195. ROM:0005B1CA                 dc.l Player_Load_PLC    ; $AC
    196. ROM:0005B1CA                 dc.l Load_PLC_Raw       ; $AD
    197. ROM:0005B1CA                 dc.l Obj_EndSign        ; $AE
    198. ROM:0005B1CA                 dc.l AfterBoss_Cleanup  ; $AF
    199. ROM:0005B1CA                 dc.l Add_To_DMA_Queue   ; $B0
    200. ROM:0005B1CA                 dc.l Create_New_Sprite  ; $B1
    201. ROM:0005B1CA                 dc.l Create_New_Sprite3 ; $B2
    202. ROM:0005B1CA                 dc.l MoveSprite         ; $B3
    203. ROM:0005B1CA                 dc.l MoveSprite2        ; $B4
    204. ROM:0005B1CA                 dc.l Draw_Sprite        ; $B5
    205. ROM:0005B1CA                 dc.l ObjCheckCeilingDist; $B6
    206. ROM:0005B1CA                 dc.l ObjCheckFloorDist  ; $B7
    207. ROM:0005B1CA                 dc.l ObjCheckFloorDist2 ; $B8
    208. ROM:0005B1CA                 dc.l ObjCheckRightWallDist; $B9
    209. ROM:0005B1CA                 dc.l ObjCheckLeftWallDist; $BA
    210. ROM:0005B1CA                 dc.l Delete_Current_Sprite; $BB
    211. ROM:0005B1CA                 dc.l Sprite_OnScreen_Test; $BC
    212. ROM:0005B1CA                 dc.l Delete_Sprite_If_Not_In_Range; $BD
    213. ROM:0005B1CA                 dc.l Obj_Explosion      ; $BE
    214. ROM:0005B1CA                 dc.l GetSineCosine      ; $BF
    215. ROM:0005B1CA                 dc.l Play_Sound_2       ; $C0
    216. ROM:0005B1CA                 dc.l Play_Sound         ; $C1
    217. ROM:0005B1CA                 dc.l SolidObjectFull    ; $C2
    218. ROM:0005B1CA                 dc.l SolidObjectTop     ; $C3
    219. ROM:0005B1CA                 dc.l Add_SpriteToCollisionResponseList; $C4
    220. ROM:0005B1CA                 dc.l Random_Number      ; $C5
    221. ROM:0005B1CA                 dc.l HUD_AddToScore     ; $C6
    222. ROM:0005B1CA                 dc.l Load_PLC           ; $C7
    223. ROM:0005B1CA                 dc.l loc_7C022          ; $C8
    224. ROM:0005B1CA                 dc.l Sprite_OnScreen_Test2; $C9
    225. ROM:0005B1CA                 dc.l sub_23812          ; $CA
    226. ROM:0005B1CA                 dc.l Init_ArtScaling    ; $CB
    227. ROM:0005B1CA                 dc.l Obj_AIZ_Miniboss_Cutscene; $CC
    228. ROM:0005B1CA                 dc.l LevelSizes         ; $CD
    229. ROM:0005B1CA                 dc.l Sonic_Load_PLC     ; $CE
    230. ROM:0005B1CA                 dc.l Tails_Load_PLC     ; $CF
    231. ROM:0005B1CA                 dc.l Child_CheckParent  ; $D0
    232. ROM:0005B1CA                 dc.l Child_AddToTouchList; $D1
    233. ROM:0005B1CA                 dc.l Perform_Art_Scaling; $D2
    234. ROM:0005B1CA                 dc.l sub_7B58A          ; $D3
    235. ROM:0005B1CA                 dc.l sub_7B5A4          ; $D4
    236. ROM:0005B1CA                 dc.l Queue_Kos_Module   ; $D5
    237. ROM:0005B1CA                 dc.l MoveSprite_CircularSimpleCheckFlip; $D6
    238. ROM:0005B1CA                 dc.l HurtCharacter      ; $D7
    239. ROM:0005B1CA                 dc.l Obj_CreateBossExplosion; $D8
    240. ROM:0005B1CA                 dc.l EnemyDefeat_Score  ; $D9
    241. ROM:0005B1CA                 dc.l CreateChild9_TreeList; $DA
    242. ROM:0005B1CA                 dc.l Obj_RobotnikHead3  ; $DB
    243. ROM:0005B1CA                 dc.l Animate_Sprite     ; $DC
    244. ROM:0005B1CA                 dc.l GetArcTan          ; $DD
    245. ROM:0005B1CA                 dc.l Swing_Setup1       ; $DE
    246. ROM:0005B1CA                 dc.l MoveSprite_Circular; $DF
    247. ROM:0005B1CA                 dc.l Set_Raw_Animation  ; $E0
    248. ROM:0005B1CA                 dc.l loc_7B5CA          ; $E1
    249. ROM:0005B1CA                 dc.l loc_7B5CE          ; $E2
    250. ROM:0005B1CA                 dc.l sub_7B5DA          ; $E3
    251. ROM:0005B1CA                 dc.l MoveSprite_CustomGravity; $E4
    252. ROM:0005B1CA                 dc.l CreateChild10_NormalAdjusted; $E5
    253. ROM:0005B1CA                 dc.l sub_7B18C          ; $E6
    254. ROM:0005B1CA                 dc.l Wait_FadeToLevelMusic; $E7
    255. ROM:0005B1CA                 dc.l Obj_RobotnikHead4  ; $E8
    256. ROM:0005B1CA                 dc.l Stop_Object        ; $E9
    257. ROM:0005B1CA                 dc.l Obj_81             ; $EA
    258. ROM:0005B1CA                 dc.l loc_7B73C          ; $EB
    259. ROM:0005B1CA                 dc.l sub_7B766          ; $EC
    260. ROM:0005B1CA                 dc.l loc_7B636          ; $ED
    261. ROM:0005B1CA                 dc.l HurtCharacter_Directly; $EE
    262. ROM:0005B1CA                 dc.l Check_InMyRange    ; $EF
    263. ROM:0005B1CA                 dc.l loc_6982A          ; $F0
    264. ROM:0005B1CA                 dc.l Check_PlayerCollision2; $F1
    265. ROM:0005B1CA                 dc.l loc_6279A          ; $F2
    266. ROM:0005B1CA                 dc.l Check_InTheirRange ; $F3
    267. ROM:0005B1CA                 dc.l SolidObjectFull2   ; $F4
    268. ROM:0005B1CA                 dc.l sub_1BB74          ; $F5
    269. ROM:0005B5A2 ; ---------------------------------------------------------------------------
    270. ROM:0005B5A2                 moveq   #0,d0           ; seems to be unused code from here, matches 0x4315e in sonic 3 which is also unused
    271. ROM:0005B5A4                 move.b  5(a0),d0
    272. ROM:0005B5A8                 move.w  off_5B5B0(pc,d0.w),d1
    273. ROM:0005B5AC                 jmp     off_5B5B0(pc,d1.w)
    274. ROM:0005B5AC ; ---------------------------------------------------------------------------
    275. ROM:0005B5B0 off_5B5B0:      dc.w loc_5B5BC-off_5B5B0 ; DATA XREF: ROM:0005B5A8r
    276. ROM:0005B5B0                                         ; ROM:off_5B5B0o ...
    277. ROM:0005B5B2                 dc.w loc_5B676-off_5B5B0
    278. ROM:0005B5B4                 dc.w loc_5B6B4-off_5B5B0
    279. ROM:0005B5B6                 dc.w loc_5B71E-off_5B5B0
    280. ROM:0005B5B8                 dc.w loc_5B758-off_5B5B0
    281. ROM:0005B5BA                 dc.w locret_5B784-off_5B5B0
    282. ROM:0005B5BC ; ---------------------------------------------------------------------------
    283. ROM:0005B5BC
    284. ROM:0005B5BC loc_5B5BC:                              ; DATA XREF: ROM:off_5B5B0o
    285. ROM:0005B5BC                 lea     off_5B924,a1
    286. ROM:0005B5C0                 jsr     SetUp_ObjAttributes
    287. ROM:0005B5C6                 move.b  #0,4(a0)
    288. ROM:0005B5CC                 move.w  #$1E8,$10(a0)
    289. ROM:0005B5D2                 move.w  #$F0,$14(a0) ; '='
    290. ROM:0005B5D8                 move.w  #$B,$2E(a0)
    291. ROM:0005B5DE                 move.w  #2,(word_FFFFF662).w
    292. ROM:0005B5E4                 bset    #0,4(a0)
    293. ROM:0005B5EA                 bset    #0,$2A(a0)
    294. ROM:0005B5F0                 lea     (unk_FFFFE138).w,a1
    295. ROM:0005B5F4                 lea     unk_5BAD2,a2
    296. ROM:0005B5F8                 moveq   #0,d0
    297. ROM:0005B5FA                 moveq   #$22,d6 ; '"'
    298. ROM:0005B5FC
    299. ROM:0005B5FC loc_5B5FC:                              ; CODE XREF: ROM:0005B602j
    300. ROM:0005B5FC                 move.b  (a2)+,d0
    301. ROM:0005B5FE                 add.w   d0,(a1)
    302. ROM:0005B600                 addq.w  #8,a1
    303. ROM:0005B602                 dbf     d6,loc_5B5FC
    304. ROM:0005B606                 move.w  d7,-(sp)
    305. ROM:0005B608                 moveq   #0,d0
    306. ROM:0005B60A                 moveq   #0,d1
    307. ROM:0005B60C                 lea     off_5B626,a6
    308. ROM:0005B610                 moveq   #7,d7
    309. ROM:0005B612
    310. ROM:0005B612 loc_5B612:                              ; CODE XREF: ROM:0005B61Ej
    311. ROM:0005B612                 movea.l (a6)+,a1
    312. ROM:0005B614                 movea.l (a6)+,a2
    313. ROM:0005B616                 move.b  (a6)+,d0
    314. ROM:0005B618                 move.b  (a6)+,d1
    315. ROM:0005B61A                 bsr.w   sub_5BAF6
    316. ROM:0005B61E                 dbf     d7,loc_5B612
    317. ROM:0005B622                 move.w  (sp)+,d7
    318. ROM:0005B624                 rts
    319. ROM:0005B624 ; ---------------------------------------------------------------------------
    320. ROM:0005B626 off_5B626:      dc.l RAM_Start          ; DATA XREF: ROM:0005B60Co
    321. ROM:0005B62A                 dc.l unk_FFFF0B00
    322. ROM:0005B62E                 dc.l $201FFFF
    323. ROM:0005B632                 dc.l $C0FFFF
    324. ROM:0005B636                 dc.l $E000303
    325. ROM:0005B63A                 dc.l unk_FFFF02C0
    326. ROM:0005B63E                 dc.l unk_FFFF1600
    327. ROM:0005B642                 dc.l $201FFFF
    328. ROM:0005B646                 dc.l $380FFFF
    329. ROM:0005B64A                 dc.l $19000303
    330. ROM:0005B64E                 dc.l unk_FFFF0580
    331. ROM:0005B652                 dc.l unk_FFFF2100
    332. ROM:0005B656                 dc.l $201FFFF
    333. ROM:0005B65A                 dc.l $640FFFF
    334. ROM:0005B65E                 dc.l $24000303
    335. ROM:0005B662                 dc.l unk_FFFF0840
    336. ROM:0005B666                 dc.l unk_FFFF2C00
    337. ROM:0005B66A                 dc.l $201FFFF
    338. ROM:0005B66E                 dc.l $900FFFF
    339. ROM:0005B672                 dc.l $2F000303
    340. ROM:0005B676 ; ---------------------------------------------------------------------------
    341. ROM:0005B676
    342. ROM:0005B676 loc_5B676:                              ; DATA XREF: ROM:0005B5B2o
    343. ROM:0005B676                 subi.w  #$20,$10(a0) ; ' '
    344. ROM:0005B67C                 subq.w  #1,$2E(a0)
    345. ROM:0005B680                 bmi.s   loc_5B698
    346. ROM:0005B682                 bsr.w   sub_5B7C2
    347. ROM:0005B686                 lea     (off_5B938).l,a1
    348. ROM:0005B68C                 jsr     Animate_Sprite
    349. ROM:0005B692                 jmp     Draw_Sprite
    350. ROM:0005B698 ; ---------------------------------------------------------------------------
    351. ROM:0005B698
    352. ROM:0005B698 loc_5B698:                              ; CODE XREF: ROM:0005B680j
    353. ROM:0005B698                 addq.b  #2,5(a0)
    354. ROM:0005B69C                 move.w  #$C,$2E(a0)
    355. ROM:0005B6A2                 move.b  #1,$30(a0)
    356. ROM:0005B6A8                 move.b  #$FF,$31(a0)
    357. ROM:0005B6AE                 jmp     Draw_Sprite
    358. ROM:0005B6B4 ; ---------------------------------------------------------------------------
    359. ROM:0005B6B4
    360. ROM:0005B6B4 loc_5B6B4:                              ; DATA XREF: ROM:0005B5B4o
    361. ROM:0005B6B4                 tst.w   $2E(a0)
    362. ROM:0005B6B8                 beq.s   loc_5B6C2
    363. ROM:0005B6BA                 subq.w  #1,$2E(a0)
    364. ROM:0005B6BE                 bsr.w   sub_5B7C2
    365. ROM:0005B6C2
    366. ROM:0005B6C2 loc_5B6C2:                              ; CODE XREF: ROM:0005B6B8j
    367. ROM:0005B6C2                 lea     unk_5B838,a1
    368. ROM:0005B6C6                 bsr.w   sub_5B7EA
    369. ROM:0005B6CA                 bne.s   loc_5B6CE
    370. ROM:0005B6CC                 rts
    371. ROM:0005B6CE ; ---------------------------------------------------------------------------
    372. ROM:0005B6CE
    373. ROM:0005B6CE loc_5B6CE:                              ; CODE XREF: ROM:0005B6CAj
    374. ROM:0005B6CE                 addq.b  #2,5(a0)
    375. ROM:0005B6D2                 bchg    #0,4(a0)
    376. ROM:0005B6D8                 move.w  #$B,$2E(a0)
    377. ROM:0005B6DE                 move.w  #4,(word_FFFFF662).w
    378. ROM:0005B6E4                 subi.w  #$28,$10(a0) ; '('
    379. ROM:0005B6EA                 bchg    #0,4(a0)
    380. ROM:0005B6F0                 bchg    #0,$2A(a0)
    381. ROM:0005B6F6                 lea     (RAM_H_scroll_buffer).w,a1
    382. ROM:0005B6FA                 moveq   #0,d0
    383. ROM:0005B6FC                 move.w  #$400,d1
    384. ROM:0005B700
    385. ROM:0005B700 loc_5B700:                              ; CODE XREF: ROM:0005B702j
    386. ROM:0005B700                 move.l  d0,(a1)+
    387. ROM:0005B702                 dbf     d1,loc_5B700
    388. ROM:0005B706                 lea     (unk_FFFFE13C).w,a1
    389. ROM:0005B70A                 lea     unk_5BAD2,a2
    390. ROM:0005B70E                 moveq   #0,d0
    391. ROM:0005B710                 moveq   #$22,d6 ; '"'
    392. ROM:0005B712
    393. ROM:0005B712 loc_5B712:                              ; CODE XREF: ROM:0005B718j
    394. ROM:0005B712                 move.b  (a2)+,d0
    395. ROM:0005B714                 sub.w   d0,(a1)
    396. ROM:0005B716                 addq.w  #8,a1
    397. ROM:0005B718                 dbf     d6,loc_5B712
    398. ROM:0005B71C
    399. ROM:0005B71C locret_5B71C:                           ; CODE XREF: ROM:0005B9F4j
    400. ROM:0005B71C                                         ; sub_5BAF6+1Ej
    401. ROM:0005B71C                 rts
    402. ROM:0005B71E ; ---------------------------------------------------------------------------
    403. ROM:0005B71E
    404. ROM:0005B71E loc_5B71E:                              ; DATA XREF: ROM:0005B5B6o
    405. ROM:0005B71E                 subq.w  #1,$2E(a0)
    406. ROM:0005B722                 bmi.s   loc_5B740
    407. ROM:0005B724                 addi.w  #$20,$10(a0) ; ' '
    408. ROM:0005B72A                 bsr.w   sub_5B7D6
    409. ROM:0005B72E                 lea     (off_5B938).l,a1
    410. ROM:0005B734                 jsr     Animate_Sprite
    411. ROM:0005B73A                 jmp     Draw_Sprite
    412. ROM:0005B740 ; ---------------------------------------------------------------------------
    413. ROM:0005B740
    414. ROM:0005B740 loc_5B740:                              ; CODE XREF: ROM:0005B722j
    415. ROM:0005B740                 addq.b  #2,5(a0)
    416. ROM:0005B744                 move.w  #$C,$2E(a0)
    417. ROM:0005B74A                 move.b  #1,$30(a0)
    418. ROM:0005B750                 move.b  #$FF,$31(a0)
    419. ROM:0005B756                 rts
    420. ROM:0005B758 ; ---------------------------------------------------------------------------
    421. ROM:0005B758
    422. ROM:0005B758 loc_5B758:                              ; DATA XREF: ROM:0005B5B8o
    423. ROM:0005B758                 tst.w   $2E(a0)
    424. ROM:0005B75C                 beq.s   loc_5B766
    425. ROM:0005B75E                 subq.w  #1,$2E(a0)
    426. ROM:0005B762                 bsr.w   sub_5B7D6
    427. ROM:0005B766
    428. ROM:0005B766 loc_5B766:                              ; CODE XREF: ROM:0005B75Cj
    429. ROM:0005B766                 lea     unk_5B8AE,a1
    430. ROM:0005B76A                 bsr.w   sub_5B7EA
    431. ROM:0005B76E                 bne.s   loc_5B772
    432. ROM:0005B770                 rts
    433. ROM:0005B772 ; ---------------------------------------------------------------------------
    434. ROM:0005B772
    435. ROM:0005B772 loc_5B772:                              ; CODE XREF: ROM:0005B76Ej
    436. ROM:0005B772                 addq.b  #2,5(a0)
    437. ROM:0005B776                 st      (word_FFFFF660).w
    438. ROM:0005B77A                 move.b  #unk_FA,d0
    439. ROM:0005B77E                 jsr     (Play_Sound_2).l
    440. ROM:0005B784
    441. ROM:0005B784 locret_5B784:                           ; DATA XREF: ROM:0005B5BAo
    442. ROM:0005B784                 rts
    443. ROM:0005B786 ; ---------------------------------------------------------------------------
    444. ROM:0005B786                 moveq   #0,d0           ; unused code, this matches 0x43342 in sonic 3 but is also unused
    445. ROM:0005B788                 move.b  5(a0),d0
    446. ROM:0005B78C                 move.w  off_5B794(pc,d0.w),d1
    447. ROM:0005B790                 jmp     off_5B794(pc,d1.w)
    448. ROM:0005B790 ; ---------------------------------------------------------------------------
    449. ROM:0005B794 off_5B794:      dc.w loc_5B798-off_5B794 ; DATA XREF: ROM:0005B78Cr
    450. ROM:0005B794                                         ; ROM:off_5B794o ...
    451. ROM:0005B796                 dc.w loc_5B7BC-off_5B794
    452. ROM:0005B798 ; ---------------------------------------------------------------------------
    453. ROM:0005B798
    454. ROM:0005B798 loc_5B798:                              ; DATA XREF: ROM:off_5B794o
    455. ROM:0005B798                 lea     off_5B92E,a1
    456. ROM:0005B79C                 jsr     SetUp_ObjAttributes
    457. ROM:0005B7A2                 move.b  #0,4(a0)
    458. ROM:0005B7A8                 move.b  #4,$22(a0)
    459. ROM:0005B7AE                 move.w  #$174,$10(a0)
    460. ROM:0005B7B4                 move.w  #$D8,$14(a0) ; '+'
    461. ROM:0005B7BA                 rts
    462. ROM:0005B7BC ; ---------------------------------------------------------------------------
    463. ROM:0005B7BC
    464. ROM:0005B7BC loc_5B7BC:                              ; DATA XREF: ROM:0005B796o
    465. ROM:0005B7BC                 jmp     Draw_Sprite
    466. ROM:0005B7C2
    467. ROM:0005B7C2 ; =============== S U B R O U T I N E =======================================
    468. ROM:0005B7C2
    469. ROM:0005B7C2
    470. ROM:0005B7C2 sub_5B7C2:                              ; CODE XREF: ROM:0005B682p
    471. ROM:0005B7C2                                         ; ROM:0005B6BEp
    472. ROM:0005B7C2                 lea     (unk_FFFFE138).w,a1
    473. ROM:0005B7C6                 move.w  #$22,d6 ; '"'
    474. ROM:0005B7CA
    475. ROM:0005B7CA loc_5B7CA:                              ; CODE XREF: sub_5B7C2+Ej
    476. ROM:0005B7CA                 subi.w  #$20,(a1) ; ' '
    477. ROM:0005B7CE                 addq.w  #8,a1
    478. ROM:0005B7D0                 dbf     d6,loc_5B7CA
    479. ROM:0005B7D4                 rts
    480. ROM:0005B7D4 ; End of function sub_5B7C2
    481. ROM:0005B7D4
    482. ROM:0005B7D6
    483. ROM:0005B7D6 ; =============== S U B R O U T I N E =======================================
    484. ROM:0005B7D6
    485. ROM:0005B7D6
    486. ROM:0005B7D6 sub_5B7D6:                              ; CODE XREF: ROM:0005B72Ap
    487. ROM:0005B7D6                                         ; ROM:0005B762p
    488. ROM:0005B7D6                 lea     (unk_FFFFE13C).w,a1
    489. ROM:0005B7DA                 move.w  #$22,d6 ; '"'
    490. ROM:0005B7DE
    491. ROM:0005B7DE loc_5B7DE:                              ; CODE XREF: sub_5B7D6+Ej
    492. ROM:0005B7DE                 addi.w  #$20,(a1) ; ' '
    493. ROM:0005B7E2                 addq.w  #8,a1
    494. ROM:0005B7E4                 dbf     d6,loc_5B7DE
    495. ROM:0005B7E8                 rts
    496. ROM:0005B7E8 ; End of function sub_5B7D6
    497. ROM:0005B7E8
    498. ROM:0005B7EA
    499. ROM:0005B7EA ; =============== S U B R O U T I N E =======================================
    500. ROM:0005B7EA
    501. ROM:0005B7EA
    502. ROM:0005B7EA sub_5B7EA:                              ; CODE XREF: ROM:0005B6C6p
    503. ROM:0005B7EA                                         ; ROM:0005B76Ap
    504. ROM:0005B7EA                 subq.b  #1,$30(a0)
    505. ROM:0005B7EE                 bne.s   loc_5B830
    506. ROM:0005B7F0                 moveq   #0,d0
    507. ROM:0005B7F2                 move.b  $31(a0),d0
    508. ROM:0005B7F6                 addq.b  #1,d0
    509. ROM:0005B7F8                 cmp.b   1(a1),d0
    510. ROM:0005B7FC                 bcs.s   loc_5B804
    511. ROM:0005B7FE                 tst.b   3(a1)
    512. ROM:0005B802                 bne.s   loc_5B834
    513. ROM:0005B804
    514. ROM:0005B804 loc_5B804:                              ; CODE XREF: sub_5B7EA+12j
    515. ROM:0005B804                 move.b  d0,$31(a0)
    516. ROM:0005B808                 move.b  (a1),$30(a0)
    517. ROM:0005B80C                 lea     6(a1),a2
    518. ROM:0005B810                 moveq   #0,d1
    519. ROM:0005B812                 move.b  2(a1),d1
    520. ROM:0005B816                 move.w  d1,d2
    521. ROM:0005B818                 tst.w   d0
    522. ROM:0005B81A                 beq.s   loc_5B826
    523. ROM:0005B81C
    524. ROM:0005B81C loc_5B81C:                              ; CODE XREF: sub_5B7EA+38j
    525. ROM:0005B81C                 subq.b  #1,d0
    526. ROM:0005B81E                 beq.s   loc_5B824
    527. ROM:0005B820                 add.w   d2,d1
    528. ROM:0005B822                 bra.s   loc_5B81C
    529. ROM:0005B824 ; ---------------------------------------------------------------------------
    530. ROM:0005B824
    531. ROM:0005B824 loc_5B824:                              ; CODE XREF: sub_5B7EA+34j
    532. ROM:0005B824                 adda.w  d1,a2
    533. ROM:0005B826
    534. ROM:0005B826 loc_5B826:                              ; CODE XREF: sub_5B7EA+30j
    535. ROM:0005B826                 movea.w 4(a1),a3
    536. ROM:0005B82A
    537. ROM:0005B82A loc_5B82A:                              ; CODE XREF: sub_5B7EA+44j
    538. ROM:0005B82A                 move.w  (a2)+,(a3)+
    539. ROM:0005B82C                 subq.w  #2,d2
    540. ROM:0005B82E                 bne.s   loc_5B82A
    541. ROM:0005B830
    542. ROM:0005B830 loc_5B830:                              ; CODE XREF: sub_5B7EA+4j
    543. ROM:0005B830                 moveq   #0,d0
    544. ROM:0005B832                 rts
    545. ROM:0005B834 ; ---------------------------------------------------------------------------
    546. ROM:0005B834
    547. ROM:0005B834 loc_5B834:                              ; CODE XREF: sub_5B7EA+18j
    548. ROM:0005B834                 moveq   #1,d0
    549. ROM:0005B836                 rts
    550. ROM:0005B836 ; End of function sub_5B7EA
    551. ROM:0005B836
    552. ROM:0005B836 ; ---------------------------------------------------------------------------
    553. ROM:0005B838 unk_5B838:      dc.b   4                ; DATA XREF: ROM:loc_5B6C2o
    554. ROM:0005B839                 dc.b   7
    555. ROM:0005B83A                 dc.b $10
    556. ROM:0005B83B                 dc.b $FF
    557. ROM:0005B83C                 dc.b $FC ; n
    558. ROM:0005B83D                 dc.b $10
    559. ROM:0005B83E                 dc.b  $E
    560. ROM:0005B83F                 dc.b $60 ; `
    561. ROM:0005B840                 dc.b  $E
    562. ROM:0005B841                 dc.b $60 ; `
    563. ROM:0005B842                 dc.b  $E
    564. ROM:0005B843                 dc.b $60 ; `
    565. ROM:0005B844                 dc.b  $E
    566. ROM:0005B845                 dc.b $60 ; `
    567. ROM:0005B846                 dc.b  $E
    568. ROM:0005B847                 dc.b $60 ; `
    569. ROM:0005B848                 dc.b  $E
    570. ROM:0005B849                 dc.b $60 ; `
    571. ROM:0005B84A                 dc.b  $E
    572. ROM:0005B84B                 dc.b $60 ; `
    573. ROM:0005B84C                 dc.b  $E
    574. ROM:0005B84D                 dc.b $EE ; e
    575. ROM:0005B84E                 dc.b  $E
    576. ROM:0005B84F                 dc.b $62 ; b
    577. ROM:0005B850                 dc.b  $E
    578. ROM:0005B851                 dc.b $EE ; e
    579. ROM:0005B852                 dc.b  $E
    580. ROM:0005B853                 dc.b $EE ; e
    581. ROM:0005B854                 dc.b  $E
    582. ROM:0005B855                 dc.b $EE ; e
    583. ROM:0005B856                 dc.b  $E
    584. ROM:0005B857                 dc.b $EE ; e
    585. ROM:0005B858                 dc.b  $E
    586. ROM:0005B859                 dc.b $EE ; e
    587. ROM:0005B85A                 dc.b  $E
    588. ROM:0005B85B                 dc.b $EE ; e
    589. ROM:0005B85C                 dc.b  $E
    590. ROM:0005B85D                 dc.b $EE ; e
    591. ROM:0005B85E                 dc.b  $E
    592. ROM:0005B85F                 dc.b $84 ; ä
    593. ROM:0005B860                 dc.b  $E
    594. ROM:0005B861                 dc.b $62 ; b
    595. ROM:0005B862                 dc.b  $E
    596. ROM:0005B863                 dc.b $60 ; `
    597. ROM:0005B864                 dc.b  $E
    598. ROM:0005B865                 dc.b $60 ; `
    599. ROM:0005B866                 dc.b  $E
    600. ROM:0005B867                 dc.b $60 ; `
    601. ROM:0005B868                 dc.b  $E
    602. ROM:0005B869                 dc.b $60 ; `
    603. ROM:0005B86A                 dc.b  $E
    604. ROM:0005B86B                 dc.b $60 ; `
    605. ROM:0005B86C                 dc.b  $E
    606. ROM:0005B86D                 dc.b $EE ; e
    607. ROM:0005B86E                 dc.b  $E
    608. ROM:0005B86F                 dc.b $A6 ; ª
    609. ROM:0005B870                 dc.b  $E
    610. ROM:0005B871                 dc.b $84 ; ä
    611. ROM:0005B872                 dc.b  $E
    612. ROM:0005B873                 dc.b $62 ; b
    613. ROM:0005B874                 dc.b  $E
    614. ROM:0005B875                 dc.b $60 ; `
    615. ROM:0005B876                 dc.b  $E
    616. ROM:0005B877                 dc.b $60 ; `
    617. ROM:0005B878                 dc.b  $E
    618. ROM:0005B879                 dc.b $60 ; `
    619. ROM:0005B87A                 dc.b  $E
    620. ROM:0005B87B                 dc.b $60 ; `
    621. ROM:0005B87C                 dc.b  $E
    622. ROM:0005B87D                 dc.b $EE ; e
    623. ROM:0005B87E                 dc.b  $E
    624. ROM:0005B87F                 dc.b $C8 ; +
    625. ROM:0005B880                 dc.b  $E
    626. ROM:0005B881                 dc.b $A6 ; ª
    627. ROM:0005B882                 dc.b  $E
    628. ROM:0005B883                 dc.b $84 ; ä
    629. ROM:0005B884                 dc.b  $E
    630. ROM:0005B885                 dc.b $62 ; b
    631. ROM:0005B886                 dc.b  $E
    632. ROM:0005B887                 dc.b $60 ; `
    633. ROM:0005B888                 dc.b  $E
    634. ROM:0005B889                 dc.b $60 ; `
    635. ROM:0005B88A                 dc.b  $E
    636. ROM:0005B88B                 dc.b $60 ; `
    637. ROM:0005B88C                 dc.b  $E
    638. ROM:0005B88D                 dc.b $EE ; e
    639. ROM:0005B88E                 dc.b  $E
    640. ROM:0005B88F                 dc.b $EC ; 8
    641. ROM:0005B890                 dc.b  $E
    642. ROM:0005B891                 dc.b $C8 ; +
    643. ROM:0005B892                 dc.b  $E
    644. ROM:0005B893                 dc.b $A6 ; ª
    645. ROM:0005B894                 dc.b  $E
    646. ROM:0005B895                 dc.b $84 ; ä
    647. ROM:0005B896                 dc.b  $E
    648. ROM:0005B897                 dc.b $62 ; b
    649. ROM:0005B898                 dc.b  $E
    650. ROM:0005B899                 dc.b $60 ; `
    651. ROM:0005B89A                 dc.b  $E
    652. ROM:0005B89B                 dc.b $60 ; `
    653. ROM:0005B89C                 dc.b  $E
    654. ROM:0005B89D                 dc.b $EE ; e
    655. ROM:0005B89E                 dc.b  $E
    656. ROM:0005B89F                 dc.b $EE ; e
    657. ROM:0005B8A0                 dc.b  $E
    658. ROM:0005B8A1                 dc.b $EC ; 8
    659. ROM:0005B8A2                 dc.b  $E
    660. ROM:0005B8A3                 dc.b $C8 ; +
    661. ROM:0005B8A4                 dc.b  $E
    662. ROM:0005B8A5                 dc.b $A6 ; ª
    663. ROM:0005B8A6                 dc.b  $E
    664. ROM:0005B8A7                 dc.b $84 ; ä
    665. ROM:0005B8A8                 dc.b  $E
    666. ROM:0005B8A9                 dc.b $62 ; b
    667. ROM:0005B8AA                 dc.b  $E
    668. ROM:0005B8AB                 dc.b $60 ; `
    669. ROM:0005B8AC                 dc.b  $E
    670. ROM:0005B8AD                 dc.b $EE ; e
    671. ROM:0005B8AE unk_5B8AE:      dc.b   4                ; DATA XREF: ROM:loc_5B766o
    672. ROM:0005B8AF                 dc.b   7
    673. ROM:0005B8B0                 dc.b $10
    674. ROM:0005B8B1                 dc.b $FF
    675. ROM:0005B8B2                 dc.b $FC ; n
    676. ROM:0005B8B3                 dc.b   0
    677. ROM:0005B8B4                 dc.b  $E
    678. ROM:0005B8B5                 dc.b $EE ; e
    679. ROM:0005B8B6                 dc.b  $E
    680. ROM:0005B8B7                 dc.b $60 ; `
    681. ROM:0005B8B8                 dc.b  $E
    682. ROM:0005B8B9                 dc.b $60 ; `
    683. ROM:0005B8BA                 dc.b  $E
    684. ROM:0005B8BB                 dc.b $60 ; `
    685. ROM:0005B8BC                 dc.b  $E
    686. ROM:0005B8BD                 dc.b $60 ; `
    687. ROM:0005B8BE                 dc.b  $E
    688. ROM:0005B8BF                 dc.b $60 ; `
    689. ROM:0005B8C0                 dc.b  $E
    690. ROM:0005B8C1                 dc.b $60 ; `
    691. ROM:0005B8C2                 dc.b  $E
    692. ROM:0005B8C3                 dc.b $60 ; `
    693. ROM:0005B8C4                 dc.b  $E
    694. ROM:0005B8C5                 dc.b $EE ; e
    695. ROM:0005B8C6                 dc.b  $E
    696. ROM:0005B8C7                 dc.b $62 ; b
    697. ROM:0005B8C8                 dc.b  $E
    698. ROM:0005B8C9                 dc.b $60 ; `
    699. ROM:0005B8CA                 dc.b  $E
    700. ROM:0005B8CB                 dc.b $60 ; `
    701. ROM:0005B8CC                 dc.b  $E
    702. ROM:0005B8CD                 dc.b $60 ; `
    703. ROM:0005B8CE                 dc.b  $E
    704. ROM:0005B8CF                 dc.b $60 ; `
    705. ROM:0005B8D0                 dc.b  $E
    706. ROM:0005B8D1                 dc.b $60 ; `
    707. ROM:0005B8D2                 dc.b  $E
    708. ROM:0005B8D3                 dc.b $60 ; `
    709. ROM:0005B8D4                 dc.b  $E
    710. ROM:0005B8D5                 dc.b $EE ; e
    711. ROM:0005B8D6                 dc.b  $E
    712. ROM:0005B8D7                 dc.b $84 ; ä
    713. ROM:0005B8D8                 dc.b  $E
    714. ROM:0005B8D9                 dc.b $62 ; b
    715. ROM:0005B8DA                 dc.b  $E
    716. ROM:0005B8DB                 dc.b $60 ; `
    717. ROM:0005B8DC                 dc.b  $E
    718. ROM:0005B8DD                 dc.b $60 ; `
    719. ROM:0005B8DE                 dc.b  $E
    720. ROM:0005B8DF                 dc.b $60 ; `
    721. ROM:0005B8E0                 dc.b  $E
    722. ROM:0005B8E1                 dc.b $60 ; `
    723. ROM:0005B8E2                 dc.b  $E
    724. ROM:0005B8E3                 dc.b $60 ; `
    725. ROM:0005B8E4                 dc.b  $E
    726. ROM:0005B8E5                 dc.b $EE ; e
    727. ROM:0005B8E6                 dc.b  $E
    728. ROM:0005B8E7                 dc.b $A6 ; ª
    729. ROM:0005B8E8                 dc.b  $E
    730. ROM:0005B8E9                 dc.b $84 ; ä
    731. ROM:0005B8EA                 dc.b  $E
    732. ROM:0005B8EB                 dc.b $62 ; b
    733. ROM:0005B8EC                 dc.b  $E
    734. ROM:0005B8ED                 dc.b $60 ; `
    735. ROM:0005B8EE                 dc.b  $E
    736. ROM:0005B8EF                 dc.b $60 ; `
    737. ROM:0005B8F0                 dc.b  $E
    738. ROM:0005B8F1                 dc.b $60 ; `
    739. ROM:0005B8F2                 dc.b  $E
    740. ROM:0005B8F3                 dc.b $60 ; `
    741. ROM:0005B8F4                 dc.b  $E
    742. ROM:0005B8F5                 dc.b $EE ; e
    743. ROM:0005B8F6                 dc.b  $E
    744. ROM:0005B8F7                 dc.b $C8 ; +
    745. ROM:0005B8F8                 dc.b  $E
    746. ROM:0005B8F9                 dc.b $A6 ; ª
    747. ROM:0005B8FA                 dc.b  $E
    748. ROM:0005B8FB                 dc.b $84 ; ä
    749. ROM:0005B8FC                 dc.b  $E
    750. ROM:0005B8FD                 dc.b $62 ; b
    751. ROM:0005B8FE                 dc.b  $E
    752. ROM:0005B8FF                 dc.b $60 ; `
    753. ROM:0005B900                 dc.b  $E
    754. ROM:0005B901                 dc.b $60 ; `
    755. ROM:0005B902                 dc.b  $E
    756. ROM:0005B903                 dc.b $60 ; `
    757. ROM:0005B904                 dc.b  $E
    758. ROM:0005B905                 dc.b $EE ; e
    759. ROM:0005B906                 dc.b  $E
    760. ROM:0005B907                 dc.b $EC ; 8
    761. ROM:0005B908                 dc.b  $E
    762. ROM:0005B909                 dc.b $C8 ; +
    763. ROM:0005B90A                 dc.b  $E
    764. ROM:0005B90B                 dc.b $A6 ; ª
    765. ROM:0005B90C                 dc.b  $E
    766. ROM:0005B90D                 dc.b $84 ; ä
    767. ROM:0005B90E                 dc.b  $E
    768. ROM:0005B90F                 dc.b $62 ; b
    769. ROM:0005B910                 dc.b  $E
    770. ROM:0005B911                 dc.b $60 ; `
    771. ROM:0005B912                 dc.b  $E
    772. ROM:0005B913                 dc.b $60 ; `
    773. ROM:0005B914                 dc.b  $E
    774. ROM:0005B915                 dc.b $EE ; e
    775. ROM:0005B916                 dc.b  $E
    776. ROM:0005B917                 dc.b $EE ; e
    777. ROM:0005B918                 dc.b  $E
    778. ROM:0005B919                 dc.b $EC ; 8
    779. ROM:0005B91A                 dc.b  $E
    780. ROM:0005B91B                 dc.b $C8 ; +
    781. ROM:0005B91C                 dc.b  $E
    782. ROM:0005B91D                 dc.b $A6 ; ª
    783. ROM:0005B91E                 dc.b  $E
    784. ROM:0005B91F                 dc.b $84 ; ä
    785. ROM:0005B920                 dc.b  $E
    786. ROM:0005B921                 dc.b $62 ; b
    787. ROM:0005B922                 dc.b  $E
    788. ROM:0005B923                 dc.b $60 ; `
    789. ROM:0005B924 off_5B924:      dc.l off_5B940          ; DATA XREF: ROM:loc_5B5BCo
    790. ROM:0005B928                 dc.b $C0 ; +
    791. ROM:0005B929                 dc.b $88 ; ê
    792. ROM:0005B92A                 dc.b   0
    793. ROM:0005B92B                 dc.b $80 ; Ç
    794. ROM:0005B92C                 dc.b $10
    795. ROM:0005B92D                 dc.b   0
    796. ROM:0005B92E off_5B92E:      dc.l off_5B940          ; DATA XREF: ROM:loc_5B798o
    797. ROM:0005B932                 dc.b   0
    798. ROM:0005B933                 dc.b   3
    799. ROM:0005B934                 dc.b   1
    800. ROM:0005B935                 dc.b   0
    801. ROM:0005B936                 dc.b   8
    802. ROM:0005B937                 dc.b   0
    803. ROM:0005B938 off_5B938:      dc.l unk_20000          ; DATA XREF: ROM:0005B686o
    804. ROM:0005B938                                         ; ROM:0005B72Eo
    805. ROM:0005B93C                 dc.b   1
    806. ROM:0005B93D                 dc.b   2
    807. ROM:0005B93E                 dc.b   3
    808. ROM:0005B93F                 dc.b $FF
    809. ROM:0005B940 off_5B940:      dc.l unk_A0030          ; DATA XREF: ROM:off_5B924o
    810. ROM:0005B940                                         ; ROM:off_5B92Eo
    811. ROM:0005B944                 dc.b   0
    812. ROM:0005B945                 dc.b $56 ; V
    813. ROM:0005B946                 dc.b   0
    814. ROM:0005B947                 dc.b $7C ; |
    815. ROM:0005B948                 dc.b   0
    816. ROM:0005B949                 dc.b $A2 ; ó
    817. ROM:0005B94A                 dc.b   0
    818. ROM:0005B94B                 dc.b   6
    819. ROM:0005B94C                 dc.b $D8 ; +
    820. ROM:0005B94D                 dc.b  $F
    821. ROM:0005B94E                 dc.b   0
    822. ROM:0005B94F                 dc.b   0
    823. ROM:0005B950                 dc.b $FF
    824. ROM:0005B951                 dc.b $F0 ; =
    825. ROM:0005B952                 dc.b $D8 ; +
    826. ROM:0005B953                 dc.b   7
    827. ROM:0005B954                 dc.b   0
    828. ROM:0005B955                 dc.b $10
    829. ROM:0005B956                 dc.b   0
    830. ROM:0005B957                 dc.b $10
    831. ROM:0005B958                 dc.b $F8 ; °
    832. ROM:0005B959                 dc.b  $F
    833. ROM:0005B95A                 dc.b   0
    834. ROM:0005B95B                 dc.b $18
    835. ROM:0005B95C                 dc.b $FF
    836. ROM:0005B95D                 dc.b $E0 ; a
    837. ROM:0005B95E                 dc.b $18
    838. ROM:0005B95F                 dc.b  $F
    839. ROM:0005B960                 dc.b   0
    840. ROM:0005B961                 dc.b $28 ; (
    841. ROM:0005B962                 dc.b $FF
    842. ROM:0005B963                 dc.b $E0 ; a
    843. ROM:0005B964                 dc.b $F8 ; °
    844. ROM:0005B965                 dc.b  $F
    845. ROM:0005B966                 dc.b   0
    846. ROM:0005B967                 dc.b $38 ; 8
    847. ROM:0005B968                 dc.b   0
    848. ROM:0005B969                 dc.b   0
    849. ROM:0005B96A                 dc.b $18
    850. ROM:0005B96B                 dc.b  $F
    851. ROM:0005B96C                 dc.b   0
    852. ROM:0005B96D                 dc.b $48 ; H
    853. ROM:0005B96E                 dc.b   0
    854. ROM:0005B96F                 dc.b   0
    855. ROM:0005B970                 dc.b   0
    856. ROM:0005B971                 dc.b   6
    857. ROM:0005B972                 dc.b $D8 ; +
    858. ROM:0005B973                 dc.b  $F
    859. ROM:0005B974                 dc.b   0
    860. ROM:0005B975                 dc.b $58 ; X
    861. ROM:0005B976                 dc.b $FF
    862. ROM:0005B977                 dc.b $F0 ; =
    863. ROM:0005B978                 dc.b $D8 ; +
    864. ROM:0005B979                 dc.b   7
    865. ROM:0005B97A                 dc.b   0
    866. ROM:0005B97B                 dc.b $68 ; h
    867. ROM:0005B97C                 dc.b   0
    868. ROM:0005B97D                 dc.b $10
    869. ROM:0005B97E                 dc.b $F8 ; °
    870. ROM:0005B97F                 dc.b  $F
    871. ROM:0005B980                 dc.b   0
    872. ROM:0005B981                 dc.b $70 ; p
    873. ROM:0005B982                 dc.b $FF
    874. ROM:0005B983                 dc.b $E0 ; a
    875. ROM:0005B984                 dc.b $18
    876. ROM:0005B985                 dc.b  $F
    877. ROM:0005B986                 dc.b   0
    878. ROM:0005B987                 dc.b $80 ; Ç
    879. ROM:0005B988                 dc.b $FF
    880. ROM:0005B989                 dc.b $E0 ; a
    881. ROM:0005B98A                 dc.b $F8 ; °
    882. ROM:0005B98B                 dc.b  $F
    883. ROM:0005B98C                 dc.b   0
    884. ROM:0005B98D                 dc.b $90 ; É
    885. ROM:0005B98E                 dc.b   0
    886. ROM:0005B98F                 dc.b   0
    887. ROM:0005B990                 dc.b $18
    888. ROM:0005B991                 dc.b  $F
    889. ROM:0005B992                 dc.b   0
    890. ROM:0005B993                 dc.b $A0 ; á
    891. ROM:0005B994                 dc.b   0
    892. ROM:0005B995                 dc.b   0
    893. ROM:0005B996                 dc.b   0
    894. ROM:0005B997                 dc.b   6
    895. ROM:0005B998                 dc.b $D8 ; +
    896. ROM:0005B999                 dc.b  $F
    897. ROM:0005B99A                 dc.b   0
    898. ROM:0005B99B                 dc.b $B0 ; ¦
    899. ROM:0005B99C                 dc.b $FF
    900. ROM:0005B99D                 dc.b $F0 ; =
    901. ROM:0005B99E                 dc.b $D8 ; +
    902. ROM:0005B99F                 dc.b   7
    903. ROM:0005B9A0                 dc.b   0
    904. ROM:0005B9A1                 dc.b $C0 ; +
    905. ROM:0005B9A2                 dc.b   0
    906. ROM:0005B9A3                 dc.b $10
    907. ROM:0005B9A4                 dc.b $F8 ; °
    908. ROM:0005B9A5                 dc.b  $F
    909. ROM:0005B9A6                 dc.b   0
    910. ROM:0005B9A7                 dc.b $C8 ; +
    911. ROM:0005B9A8                 dc.b $FF
    912. ROM:0005B9A9                 dc.b $E0 ; a
    913. ROM:0005B9AA                 dc.b $18
    914. ROM:0005B9AB                 dc.b  $F
    915. ROM:0005B9AC                 dc.b   0
    916. ROM:0005B9AD                 dc.b $D8 ; +
    917. ROM:0005B9AE                 dc.b $FF
    918. ROM:0005B9AF                 dc.b $E0 ; a
    919. ROM:0005B9B0                 dc.b $F8 ; °
    920. ROM:0005B9B1                 dc.b  $F
    921. ROM:0005B9B2                 dc.b   0
    922. ROM:0005B9B3                 dc.b $E8 ; F
    923. ROM:0005B9B4                 dc.b   0
    924. ROM:0005B9B5                 dc.b   0
    925. ROM:0005B9B6                 dc.b $18
    926. ROM:0005B9B7                 dc.b  $F
    927. ROM:0005B9B8                 dc.b   0
    928. ROM:0005B9B9                 dc.b $F8 ; °
    929. ROM:0005B9BA                 dc.b   0
    930. ROM:0005B9BB                 dc.b   0
    931. ROM:0005B9BC                 dc.b   0
    932. ROM:0005B9BD                 dc.b   6
    933. ROM:0005B9BE                 dc.b $D8 ; +
    934. ROM:0005B9BF                 dc.b  $F
    935. ROM:0005B9C0                 dc.b   1
    936. ROM:0005B9C1                 dc.b   8
    937. ROM:0005B9C2                 dc.b $FF
    938. ROM:0005B9C3                 dc.b $F0 ; =
    939. ROM:0005B9C4                 dc.b $D8 ; +
    940. ROM:0005B9C5                 dc.b   7
    941. ROM:0005B9C6                 dc.b   1
    942. ROM:0005B9C7                 dc.b $18
    943. ROM:0005B9C8                 dc.b   0
    944. ROM:0005B9C9                 dc.b $10
    945. ROM:0005B9CA                 dc.b $F8 ; °
    946. ROM:0005B9CB                 dc.b  $F
    947. ROM:0005B9CC                 dc.b   1
    948. ROM:0005B9CD                 dc.b $20
    949. ROM:0005B9CE                 dc.b $FF
    950. ROM:0005B9CF                 dc.b $E0 ; a
    951. ROM:0005B9D0                 dc.b $18
    952. ROM:0005B9D1                 dc.b  $F
    953. ROM:0005B9D2                 dc.b   1
    954. ROM:0005B9D3                 dc.b $30 ; 0
    955. ROM:0005B9D4                 dc.b $FF
    956. ROM:0005B9D5                 dc.b $E0 ; a
    957. ROM:0005B9D6                 dc.b $F8 ; °
    958. ROM:0005B9D7                 dc.b  $F
    959. ROM:0005B9D8                 dc.b   1
    960. ROM:0005B9D9                 dc.b $40 ; @
    961. ROM:0005B9DA                 dc.b   0
    962. ROM:0005B9DB                 dc.b   0
    963. ROM:0005B9DC                 dc.b $18
    964. ROM:0005B9DD                 dc.b  $F
    965. ROM:0005B9DE                 dc.b   1
    966. ROM:0005B9DF                 dc.b $50 ; P
    967. ROM:0005B9E0                 dc.b   0
    968. ROM:0005B9E1                 dc.b   0
    969. ROM:0005B9E2                 dc.b   0
    970. ROM:0005B9E3                 dc.b   2
    971. ROM:0005B9E4                 dc.b $FC ; n
    972. ROM:0005B9E5                 dc.b   0
    973. ROM:0005B9E6                 dc.b   0
    974. ROM:0005B9E7                 dc.b   0
    975. ROM:0005B9E8                 dc.b $FF
    976. ROM:0005B9E9                 dc.b $F8 ; °
    977. ROM:0005B9EA                 dc.b $FC ; n
    978. ROM:0005B9EB                 dc.b   0
    979. ROM:0005B9EC                 dc.b   0
    980. ROM:0005B9ED                 dc.b   0
    981. ROM:0005B9EE                 dc.b   0
    982. ROM:0005B9EF                 dc.b   0
    983. ROM:0005B9F0 ; ---------------------------------------------------------------------------
    984. ROM:0005B9F0
    985. ROM:0005B9F0 loc_5B9F0:                              ; CODE XREF: VInt_2+28p
    986. ROM:0005B9F0                 move.w  (word_FFFFF662).w,d0
    987. ROM:0005B9F4                 beq.w   locret_5B71C
    988. ROM:0005B9F8                 clr.w   (word_FFFFF662).w ; Predicted (Code-scan)
    989. ROM:0005B9FC                 move.w  loc_5BA00+2(pc,d0.w),d0 ; Predicted (Code-scan)
    990. ROM:0005BA00
    991. ROM:0005BA00 loc_5BA00:                              ; DATA XREF: ROM:0005B9FCr
    992. ROM:0005BA00                 jmp     loc_5BA04(pc,d0.w) ; Predicted (Code-scan) (Uncertain target!)
    993. ROM:0005BA04
    994. ROM:0005BA04 loc_5BA04:
    995. ROM:0005BA04                 ori.b   #$36,d4 ; '6'
    996. ROM:0005BA08                 lea     (VDP_control_port).l,a5
    997. ROM:0005BA0E                 move.l  #$94169300,(a5)
    998. ROM:0005BA14                 move.l  #$96859580,(a5)
    999. ROM:0005BA1A                 move.w  #(loc_977A+5),(a5)
    1000. ROM:0005BA1E                 move.w  #$5100,(a5)
    1001. ROM:0005BA22                 move.w  #$80,(word_FFFFF640).w ; 'Ç'
    1002. ROM:0005BA28                 move.w  (word_FFFFF640).w,(a5)
    1003. ROM:0005BA2C                 lea     unk_5BAB2,a1
    1004. ROM:0005BA30                 move.l  #$49500003,d0
    1005. ROM:0005BA36                 bra.w   loc_5BA76
    1006. ROM:0005BA3A ; ---------------------------------------------------------------------------
    1007. ROM:0005BA3A                 lea     (VDP_control_port).l,a5
    1008. ROM:0005BA40                 move.w  #(word_8EB6+$4B),(a5)
    1009. ROM:0005BA44                 move.l  #$941F93FF,(a5)
    1010. ROM:0005BA4A                 move.w  #loc_9780,(a5)
    1011. ROM:0005BA4E                 move.l  #$40000083,(a5)
    1012. ROM:0005BA54                 move.w  #0,(VDP_data_port).l
    1013. ROM:0005BA5C
    1014. ROM:0005BA5C loc_5BA5C:                              ; CODE XREF: ROM:0005BA62j
    1015. ROM:0005BA5C                 move.w  (a5),d1
    1016. ROM:0005BA5E                 btst    #1,d1
    1017. ROM:0005BA62                 bne.s   loc_5BA5C
    1018. ROM:0005BA64                 move.w  #(word_8EB6+$4C),(a5)
    1019. ROM:0005BA68                 lea     unk_5BAC2,a1
    1020. ROM:0005BA6C                 move.l  #$49A00003,d0
    1021. ROM:0005BA72                 bra.w   *+4
    1022. ROM:0005BA76
    1023. ROM:0005BA76 loc_5BA76:                              ; CODE XREF: ROM:0005BA36j
    1024. ROM:0005BA76                 lea     (VDP_data_port).l,a6
    1025. ROM:0005BA7C                 move.l  #$1000000,d6
    1026. ROM:0005BA82                 moveq   #7,d1
    1027. ROM:0005BA84                 moveq   #9,d2
    1028. ROM:0005BA86
    1029. ROM:0005BA86 loc_5BA86:                              ; CODE XREF: ROM:0005BAA2j
    1030. ROM:0005BA86                 move.l  d0,4(a6)
    1031. ROM:0005BA8A                 move.w  d1,d3
    1032. ROM:0005BA8C                 movea.l a1,a2
    1033. ROM:0005BA8E
    1034. ROM:0005BA8E loc_5BA8E:                              ; CODE XREF: ROM:0005BA9Cj
    1035. ROM:0005BA8E                 move.w  (a2)+,d4
    1036. ROM:0005BA90                 bclr    #$A,d4
    1037. ROM:0005BA94                 beq.s   loc_5BA9A
    1038. ROM:0005BA96                 bsr.w   sub_5BAA8
    1039. ROM:0005BA9A
    1040. ROM:0005BA9A loc_5BA9A:                              ; CODE XREF: ROM:0005BA94j
    1041. ROM:0005BA9A                 move.w  d4,(a6)
    1042. ROM:0005BA9C                 dbf     d3,loc_5BA8E
    1043. ROM:0005BAA0                 add.l   d6,d0
    1044. ROM:0005BAA2                 dbf     d2,loc_5BA86
    1045. ROM:0005BAA6                 rts
    1046. ROM:0005BAA8
    1047. ROM:0005BAA8 ; =============== S U B R O U T I N E =======================================
    1048. ROM:0005BAA8
    1049. ROM:0005BAA8
    1050. ROM:0005BAA8 sub_5BAA8:                              ; CODE XREF: ROM:0005BA96p
    1051. ROM:0005BAA8                 moveq   #$28,d5 ; '('
    1052. ROM:0005BAAA
    1053. ROM:0005BAAA loc_5BAAA:                              ; CODE XREF: sub_5BAA8+4j
    1054. ROM:0005BAAA                 move.w  d4,(a6)
    1055. ROM:0005BAAC                 dbf     d5,loc_5BAAA
    1056. ROM:0005BAB0                 rts
    1057. ROM:0005BAB0 ; End of function sub_5BAA8
    1058. ROM:0005BAB0
    1059. ROM:0005BAB0 ; ---------------------------------------------------------------------------
    1060. ROM:0005BAB2 unk_5BAB2:      dc.b $A0 ; á            ; DATA XREF: ROM:0005BA2Co
    1061. ROM:0005BAB3                 dc.b $80 ; Ç
    1062. ROM:0005BAB4                 dc.b $A0 ; á
    1063. ROM:0005BAB5                 dc.b $81 ; ü
    1064. ROM:0005BAB6                 dc.b $A0 ; á
    1065. ROM:0005BAB7                 dc.b $82 ; é
    1066. ROM:0005BAB8                 dc.b $A0 ; á
    1067. ROM:0005BAB9                 dc.b $83 ; â
    1068. ROM:0005BABA                 dc.b $A0 ; á
    1069. ROM:0005BABB                 dc.b $84 ; ä
    1070. ROM:0005BABC                 dc.b $A0 ; á
    1071. ROM:0005BABD                 dc.b $85 ; à
    1072. ROM:0005BABE                 dc.b $A0 ; á
    1073. ROM:0005BABF                 dc.b $86 ; å
    1074. ROM:0005BAC0                 dc.b $A4 ; ñ
    1075. ROM:0005BAC1                 dc.b $87 ; ç
    1076. ROM:0005BAC2 unk_5BAC2:      dc.b $A4 ; ñ            ; DATA XREF: ROM:0005BA68o
    1077. ROM:0005BAC3                 dc.b $87 ; ç
    1078. ROM:0005BAC4                 dc.b $A0 ; á
    1079. ROM:0005BAC5                 dc.b $86 ; å
    1080. ROM:0005BAC6                 dc.b $A0 ; á
    1081. ROM:0005BAC7                 dc.b $85 ; à
    1082. ROM:0005BAC8                 dc.b $A0 ; á
    1083. ROM:0005BAC9                 dc.b $84 ; ä
    1084. ROM:0005BACA                 dc.b $A0 ; á
    1085. ROM:0005BACB                 dc.b $83 ; â
    1086. ROM:0005BACC                 dc.b $A0 ; á
    1087. ROM:0005BACD                 dc.b $82 ; é
    1088. ROM:0005BACE                 dc.b $A0 ; á
    1089. ROM:0005BACF                 dc.b $81 ; ü
    1090. ROM:0005BAD0                 dc.b $A0 ; á
    1091. ROM:0005BAD1                 dc.b $80 ; Ç
    1092. ROM:0005BAD2 unk_5BAD2:      dc.b $12                ; DATA XREF: ROM:0005B5F4o
    1093. ROM:0005BAD2                                         ; ROM:0005B70Ao
    1094. ROM:0005BAD3                 dc.b   4
    1095. ROM:0005BAD4                 dc.b   4
    1096. ROM:0005BAD5                 dc.b   2
    1097. ROM:0005BAD6                 dc.b   2
    1098. ROM:0005BAD7                 dc.b   2
    1099. ROM:0005BAD8                 dc.b   2
    1100. ROM:0005BAD9                 dc.b   0
    1101. ROM:0005BADA                 dc.b   0
    1102. ROM:0005BADB                 dc.b   0
    1103. ROM:0005BADC                 dc.b   0
    1104. ROM:0005BADD                 dc.b   0
    1105. ROM:0005BADE                 dc.b   0
    1106. ROM:0005BADF                 dc.b   0
    1107. ROM:0005BAE0                 dc.b   0
    1108. ROM:0005BAE1                 dc.b   4
    1109. ROM:0005BAE2                 dc.b   4
    1110. ROM:0005BAE3                 dc.b   6
    1111. ROM:0005BAE4                 dc.b  $A
    1112. ROM:0005BAE5                 dc.b   8
    1113. ROM:0005BAE6                 dc.b   6
    1114. ROM:0005BAE7                 dc.b   4
    1115. ROM:0005BAE8                 dc.b   4
    1116. ROM:0005BAE9                 dc.b   4
    1117. ROM:0005BAEA                 dc.b   4
    1118. ROM:0005BAEB                 dc.b   6
    1119. ROM:0005BAEC                 dc.b   6
    1120. ROM:0005BAED                 dc.b   8
    1121. ROM:0005BAEE                 dc.b   8
    1122. ROM:0005BAEF                 dc.b  $A
    1123. ROM:0005BAF0                 dc.b  $A
    1124. ROM:0005BAF1                 dc.b  $C
    1125. ROM:0005BAF2                 dc.b  $E
    1126. ROM:0005BAF3                 dc.b $10
    1127. ROM:0005BAF4                 dc.b $16
    1128. ROM:0005BAF5                 dc.b   0
    1129. ROM:0005BAF6
    1130. ROM:0005BAF6 ; =============== S U B R O U T I N E =======================================
    1131. ROM:0005BAF6
    1132. ROM:0005BAF6
    1133. ROM:0005BAF6 sub_5BAF6:                              ; CODE XREF: ROM:0005B61Ap
    1134. ROM:0005BAF6                 move.w  d1,d2
    1135. ROM:0005BAF8                 andi.w  #1,d2
    1136. ROM:0005BAFC                 addq.w  #1,d2
    1137. ROM:0005BAFE                 lsl.w   #6,d2
    1138. ROM:0005BB00                 swap    d2
    1139. ROM:0005BB02                 move.w  d1,d3
    1140. ROM:0005BB04                 lsr.w   #1,d3
    1141. ROM:0005BB06                 addq.w  #1,d3
    1142. ROM:0005BB08                 lsl.w   #6,d3
    1143. ROM:0005BB0A                 swap    d3
    1144. ROM:0005BB0C                 bsr.w   sub_5BB22
    1145. ROM:0005BB10                 btst    #1,d0
    1146. ROM:0005BB14                 beq.w   locret_5B71C
    1147. ROM:0005BB18                 btst    #1,d1
    1148. ROM:0005BB1C                 bne.s   loc_5BB20
    1149. ROM:0005BB1E                 movea.l a3,a5
    1150. ROM:0005BB20
    1151. ROM:0005BB20 loc_5BB20:                              ; CODE XREF: sub_5BAF6+26j
    1152. ROM:0005BB20                 movea.l a5,a2
    1153. ROM:0005BB20 ; End of function sub_5BAF6
    1154. ROM:0005BB20
    1155. ROM:0005BB22
    1156. ROM:0005BB22 ; =============== S U B R O U T I N E =======================================
    1157. ROM:0005BB22
    1158. ROM:0005BB22
    1159. ROM:0005BB22 sub_5BB22:                              ; CODE XREF: sub_5BAF6+16p
    1160. ROM:0005BB22                 movea.l a2,a4
    1161. ROM:0005BB24                 swap    d2
    1162. ROM:0005BB26                 lea     (a2,d2.w),a3
    1163. ROM:0005BB2A                 swap    d2
    1164. ROM:0005BB2C                 move.w  d1,d5
    1165. ROM:0005BB2E                 andi.w  #1,d5
    1166. ROM:0005BB32                 bsr.w   sub_5BB9C
    1167. ROM:0005BB36                 btst    #1,d1
    1168. ROM:0005BB3A                 beq.s   loc_5BB5E
    1169. ROM:0005BB3C                 swap    d2
    1170. ROM:0005BB3E                 move.w  d2,d4
    1171. ROM:0005BB40                 swap    d2
    1172. ROM:0005BB42                 add.w   d4,d4
    1173. ROM:0005BB44                 move.w  d0,d3
    1174. ROM:0005BB46                 andi.w  #1,d3
    1175. ROM:0005BB4A                 lsl.w   d3,d4
    1176. ROM:0005BB4C                 adda.w  d4,a4
    1177. ROM:0005BB4E                 move.w  d1,d5
    1178. ROM:0005BB50                 lsr.w   #1,d5
    1179. ROM:0005BB52                 swap    d3
    1180. ROM:0005BB54                 lea     (a4,d3.w),a5
    1181. ROM:0005BB58                 swap    d3
    1182. ROM:0005BB5A                 bsr.w   sub_5BBB4
    1183. ROM:0005BB5E
    1184. ROM:0005BB5E loc_5BB5E:                              ; CODE XREF: sub_5BB22+18j
    1185. ROM:0005BB5E                 btst    #0,d0
    1186. ROM:0005BB62                 bne.s   loc_5BB6A
    1187. ROM:0005BB64                 btst    #1,d0
    1188. ROM:0005BB68                 beq.s   locret_5BB9A
    1189. ROM:0005BB6A
    1190. ROM:0005BB6A loc_5BB6A:                              ; CODE XREF: sub_5BB22+40j
    1191. ROM:0005BB6A                 swap    d2
    1192. ROM:0005BB6C                 lea     (a2,d2.w),a2
    1193. ROM:0005BB70                 lea     (a2,d2.w),a3
    1194. ROM:0005BB74                 swap    d2
    1195. ROM:0005BB76                 move.w  d1,d5
    1196. ROM:0005BB78                 andi.w  #1,d5
    1197. ROM:0005BB7C                 bsr.w   sub_5BB9C
    1198. ROM:0005BB80                 btst    #1,d1
    1199. ROM:0005BB84                 beq.s   locret_5BB9A
    1200. ROM:0005BB86                 move.w  d1,d5
    1201. ROM:0005BB88                 lsr.w   #1,d5
    1202. ROM:0005BB8A                 swap    d3
    1203. ROM:0005BB8C                 lea     (a4,d3.w),a4
    1204. ROM:0005BB90                 lea     (a4,d3.w),a5
    1205. ROM:0005BB94                 swap    d3
    1206. ROM:0005BB96                 bsr.w   sub_5BBB4
    1207. ROM:0005BB9A
    1208. ROM:0005BB9A locret_5BB9A:                           ; CODE XREF: sub_5BB22+46j
    1209. ROM:0005BB9A                                         ; sub_5BB22+62j
    1210. ROM:0005BB9A                 rts
    1211. ROM:0005BB9A ; End of function sub_5BB22
    1212. ROM:0005BB9A
    1213. ROM:0005BB9C
    1214. ROM:0005BB9C ; =============== S U B R O U T I N E =======================================
    1215. ROM:0005BB9C
    1216. ROM:0005BB9C
    1217. ROM:0005BB9C sub_5BB9C:                              ; CODE XREF: sub_5BB22+10p
    1218. ROM:0005BB9C                                         ; sub_5BB22+5Ap ...
    1219. ROM:0005BB9C                 moveq   #7,d6
    1220. ROM:0005BB9E
    1221. ROM:0005BB9E loc_5BB9E:                              ; CODE XREF: sub_5BB9C+Ej
    1222. ROM:0005BB9E                 bsr.w   sub_5BBCC
    1223. ROM:0005BBA2                 addq.w  #4,a2
    1224. ROM:0005BBA4                 bsr.w   sub_5BBF6
    1225. ROM:0005BBA8                 addq.w  #4,a3
    1226. ROM:0005BBAA                 dbf     d6,loc_5BB9E
    1227. ROM:0005BBAE                 dbf     d5,sub_5BB9C
    1228. ROM:0005BBB2                 rts
    1229. ROM:0005BBB2 ; End of function sub_5BB9C
    1230. ROM:0005BBB2
    1231. ROM:0005BBB4
    1232. ROM:0005BBB4 ; =============== S U B R O U T I N E =======================================
    1233. ROM:0005BBB4
    1234. ROM:0005BBB4
    1235. ROM:0005BBB4 sub_5BBB4:                              ; CODE XREF: sub_5BB22+38p
    1236. ROM:0005BBB4                                         ; sub_5BB22+74p ...
    1237. ROM:0005BBB4                 moveq   #7,d6
    1238. ROM:0005BBB6
    1239. ROM:0005BBB6 loc_5BBB6:                              ; CODE XREF: sub_5BBB4+Ej
    1240. ROM:0005BBB6                 bsr.w   sub_5BC20
    1241. ROM:0005BBBA                 addq.w  #4,a4
    1242. ROM:0005BBBC                 bsr.w   sub_5BC4A
    1243. ROM:0005BBC0                 addq.w  #4,a5
    1244. ROM:0005BBC2                 dbf     d6,loc_5BBB6
    1245. ROM:0005BBC6                 dbf     d5,sub_5BBB4
    1246. ROM:0005BBCA                 rts
    1247. ROM:0005BBCA ; End of function sub_5BBB4
    1248. ROM:0005BBCA
    1249. ROM:0005BBCC
    1250. ROM:0005BBCC ; =============== S U B R O U T I N E =======================================
    1251. ROM:0005BBCC
    1252. ROM:0005BBCC
    1253. ROM:0005BBCC sub_5BBCC:                              ; CODE XREF: sub_5BB9C:loc_5BB9Ep
    1254. ROM:0005BBCC                 bsr.w   *+4
    1255. ROM:0005BBD0                 move.b  (a1)+,d2
    1256. ROM:0005BBD2                 move.b  d2,d3
    1257. ROM:0005BBD4                 andi.b  #$F0,d2
    1258. ROM:0005BBD8                 move.b  d2,d4
    1259. ROM:0005BBDA                 lsr.b   #4,d4
    1260. ROM:0005BBDC                 or.b    d2,d4
    1261. ROM:0005BBDE                 move.b  d4,(a2)+
    1262. ROM:0005BBE0                 move.b  d4,3(a2)
    1263. ROM:0005BBE4                 andi.b  #$F,d3
    1264. ROM:0005BBE8                 move.b  d3,d4
    1265. ROM:0005BBEA                 lsl.b   #4,d4
    1266. ROM:0005BBEC                 or.b    d3,d4
    1267. ROM:0005BBEE                 move.b  d4,(a2)+
    1268. ROM:0005BBF0                 move.b  d4,3(a2)
    1269. ROM:0005BBF4                 rts
    1270. ROM:0005BBF4 ; End of function sub_5BBCC
    1271. ROM:0005BBF4
    1272. ROM:0005BBF6
    1273. ROM:0005BBF6 ; =============== S U B R O U T I N E =======================================
    1274. ROM:0005BBF6
    1275. ROM:0005BBF6
    1276. ROM:0005BBF6 sub_5BBF6:                              ; CODE XREF: sub_5BB9C+8p
    1277. ROM:0005BBF6                 bsr.w   *+4
    1278. ROM:0005BBFA                 move.b  (a1)+,d2
    1279. ROM:0005BBFC                 move.b  d2,d3
    1280. ROM:0005BBFE                 andi.b  #unk_F0,d2
    1281. ROM:0005BC02                 move.b  d2,d4
    1282. ROM:0005BC04                 lsr.b   #4,d4
    1283. ROM:0005BC06                 or.b    d2,d4
    1284. ROM:0005BC08                 move.b  d4,(a3)+
    1285. ROM:0005BC0A                 move.b  d4,3(a3)
    1286. ROM:0005BC0E                 andi.b  #$F,d3
    1287. ROM:0005BC12                 move.b  d3,d4
    1288. ROM:0005BC14                 lsl.b   #4,d4
    1289. ROM:0005BC16                 or.b    d3,d4
    1290. ROM:0005BC18                 move.b  d4,(a3)+
    1291. ROM:0005BC1A                 move.b  d4,3(a3)
    1292. ROM:0005BC1E                 rts
    1293. ROM:0005BC1E ; End of function sub_5BBF6
    1294. ROM:0005BC1E
    1295. ROM:0005BC20
    1296. ROM:0005BC20 ; =============== S U B R O U T I N E =======================================
    1297. ROM:0005BC20
    1298. ROM:0005BC20
    1299. ROM:0005BC20 sub_5BC20:                              ; CODE XREF: sub_5BBB4:loc_5BBB6p
    1300. ROM:0005BC20                 bsr.w   *+4
    1301. ROM:0005BC24                 move.b  (a1)+,d2
    1302. ROM:0005BC26                 move.b  d2,d3
    1303. ROM:0005BC28                 andi.b  #$F0,d2
    1304. ROM:0005BC2C                 move.b  d2,d4
    1305. ROM:0005BC2E                 lsr.b   #4,d4
    1306. ROM:0005BC30                 or.b    d2,d4
    1307. ROM:0005BC32                 move.b  d4,(a4)+
    1308. ROM:0005BC34                 move.b  d4,3(a4)
    1309. ROM:0005BC38                 andi.b  #$F,d3
    1310. ROM:0005BC3C                 move.b  d3,d4
    1311. ROM:0005BC3E                 lsl.b   #4,d4
    1312. ROM:0005BC40                 or.b    d3,d4
    1313. ROM:0005BC42                 move.b  d4,(a4)+
    1314. ROM:0005BC44                 move.b  d4,3(a4)
    1315. ROM:0005BC48                 rts
    1316. ROM:0005BC48 ; End of function sub_5BC20
    1317. ROM:0005BC48
    1318. ROM:0005BC4A
    1319. ROM:0005BC4A ; =============== S U B R O U T I N E =======================================
    1320. ROM:0005BC4A
    1321. ROM:0005BC4A
    1322. ROM:0005BC4A sub_5BC4A:                              ; CODE XREF: sub_5BBB4+8p
    1323. ROM:0005BC4A                 bsr.w   *+4
    1324. ROM:0005BC4E                 move.b  (a1)+,d2
    1325. ROM:0005BC50                 move.b  d2,d3
    1326. ROM:0005BC52                 andi.b  #$F0,d2
    1327. ROM:0005BC56                 move.b  d2,d4
    1328. ROM:0005BC58                 lsr.b   #4,d4
    1329. ROM:0005BC5A                 or.b    d2,d4
    1330. ROM:0005BC5C                 move.b  d4,(a5)+
    1331. ROM:0005BC5E                 move.b  d4,3(a5)
    1332. ROM:0005BC62                 andi.b  #$F,d3
    1333. ROM:0005BC66                 move.b  d3,d4
    1334. ROM:0005BC68                 lsl.b   #4,d4
    1335. ROM:0005BC6A                 or.b    d3,d4
    1336. ROM:0005BC6C                 move.b  d4,(a5)+
    1337. ROM:0005BC6E                 move.b  d4,3(a5)
    1338. ROM:0005BC72                 rts
    1339. ROM:0005BC72 ; End of function sub_5BC4A
    This code still exists in Sonic 3 stand alone, but it's lacking the massive subroutine table (it just jumps straight to the Sonic 3 equivalent to 0x5B5A2). There's still a few subroutines I couldn't identify, but hopefully the purpose of these routines are a bit clearer now. In both this prototype and Sonic 3 stand alone, all of this appears after the Nemesis archive containing the Sonic 3 End Credit graphics (ArtNem_S3EndingGraphics) and before the code for Obj_86. None of this appears in Sonic & Knuckles.

    While on the subject of 408, there's some massive sections of unused data in the ROM that seem to be repeats of tiles for Knuckles and some other weird data around 895EE-C719B (right after the debug tables and right before sound stuff begins), 1FF098-27FFFA, and 2CD8D4-2FFFFA. Does anyone wanna take a look?
     
  15. kazblox

    kazblox

    Member
    137
    0
    16
    Sonic 3?
    Since there's absolutely nothing left except the trap handler in Sonic 3, it just leads to.... broken code of the giant Sonic object from the SEGA screen in Sonic 2. Which is also seen above in 408, unsurprisingly.

    All the instructions necessary to load the scale data were removed, but the most interesting thing about this iteration of the object is that it was coded at a time where addressed objects were completely implemented, but it was still using the old subtype data system, making this one of the earliest leftovers. Along with that unused Knuckles signpost art...

    I'm guessing that it was pretty late when they removed a bunch of the leftovers.

    P.S.: Natsumi did all the back work for this months ago for analyzing what the trap handler does. Sorry chump, but hey, you did a good job on the work!
     
  16. kazblox

    kazblox

    Member
    137
    0
    16
    Sonic 3?