Advertisement
Guest User

Untitled

a guest
Jun 28th, 2017
85
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. ROM:0001A18E ; =============== S U B R O U T I N E =======================================
  2. ROM:0001A18E
  3. ROM:0001A18E
  4. ROM:0001A18E Get_LevelSizeStart:                     ; CODE XREF: ROM:00004948p
  5. ROM:0001A18E                 clr.b   ($FFFFEE30).w
  6. ROM:0001A192                 clr.b   ($FFFFEE08).w
  7. ROM:0001A196                 clr.b   ($FFFFEE0A).w
  8. ROM:0001A19A                 clr.b   ($FFFFEE0B).w
  9. ROM:0001A19E                 clr.b   ($FFFFEE39).w
  10. ROM:0001A1A2                 moveq   #0,d0
  11. ROM:0001A1A4                 move.b  d0,(Dynamic_resize_routine).w
  12. ROM:0001A1A8                 move.w  d0,($FFFFF660).w
  13. ROM:0001A1AC                 move.w  d0,($FFFFF662).w
  14. ROM:0001A1B0                 move.w  (Current_zone).w,d0
  15. ROM:0001A1B4                 ror.b   #1,d0
  16. ROM:0001A1B6                 lsr.w   #4,d0
  17. ROM:0001A1B8                 lea     LevelSizes(pc,d0.w),a0
  18. ROM:0001A1BC                 move.l  (a0)+,d0
  19. ROM:0001A1BE                 move.l  d0,($FFFFEE14).w
  20. ROM:0001A1C2                 move.l  d0,($FFFFEE0C).w
  21. ROM:0001A1C6                 move.l  d0,($FFFFEE1C).w
  22. ROM:0001A1CA                 move.l  (a0)+,d0
  23. ROM:0001A1CC                 move.l  d0,(Camera_min_Y_pos).w
  24. ROM:0001A1D0                 move.l  d0,(Camera_target_min_Y_pos).w
  25. ROM:0001A1D4                 move.l  d0,($FFFFEE20).w
  26. ROM:0001A1D8                 move.w  #$60,($FFFFEE2C).w ; '`'
  27. ROM:0001A1DE                 move.w  #$60,($FFFFEE2E).w ; '`'
  28. ROM:0001A1E4                 move.w  #$FFFF,($FFFFEEA8).w
  29. ROM:0001A1EA                 move.w  #$FFFF,($FFFFEEAA).w
  30. ROM:0001A1F0                 bra.w   loc_1A374
  31. ROM:0001A1F0 ; ---------------------------------------------------------------------------
  32. ROM:0001A1F4 LevelSizes:     dc.w  $1308, $6000,     0,  $390; 0
  33. ROM:0001A1F4                                         ; DATA XREF: Get_LevelSizeStart+2Ao
  34. ROM:0001A1F4                                         ; Change_Act2Sizes+8o
  35. ROM:0001A1F4                 dc.w      0, $4640,     0,  $590; 4
  36. ROM:0001A1F4                 dc.w      0, $6000,     0, $1000; 8
  37. ROM:0001A1F4                 dc.w      0, $6000,     0, $1000; 12
  38. ROM:0001A1F4                 dc.w      0, $6000, $FF00, $1000; 16
  39. ROM:0001A1F4                 dc.w      0, $6000,     0, $1000; 20
  40. ROM:0001A1F4                 dc.w      0, $6000,     0,  $B20; 24
  41. ROM:0001A1F4                 dc.w      0, $6000,     0, $1000; 28
  42. ROM:0001A1F4                 dc.w      0, $6000,     0, $1000; 32
  43. ROM:0001A1F4                 dc.w      0, $6000,     0, $1000; 36
  44. ROM:0001A1F4                 dc.w      0, $7000, $FF00,  $800; 40
  45. ROM:0001A1F4                 dc.w      0, $7000,     0,  $B20; 44
  46. ROM:0001A1F4                 dc.w      0, $6000,     0, $1000; 48
  47. ROM:0001A1F4                 dc.w      0, $6000,     0, $1000; 52
  48. ROM:0001A1F4                 dc.w      0, $6000,     0, $1000; 56
  49. ROM:0001A1F4                 dc.w      0, $6000,     0, $1000; 60
  50. ROM:0001A1F4                 dc.w      0, $6000,     0, $1000; 64
  51. ROM:0001A1F4                 dc.w      0, $6000,     0, $1000; 68
  52. ROM:0001A1F4                 dc.w      0, $6000,     0, $1000; 72
  53. ROM:0001A1F4                 dc.w      0, $6000,     0, $1000; 76
  54. ROM:0001A1F4                 dc.w      0, $6000,     0, $1000; 80
  55. ROM:0001A1F4                 dc.w      0, $6000,     0, $1000; 84
  56. ROM:0001A1F4                 dc.w      0, $6000,     0, $1000; 88
  57. ROM:0001A1F4                 dc.w      0, $6000,     0, $1000; 92
  58. ROM:0001A1F4                 dc.w      0, $6000,     0, $1000; 96
  59. ROM:0001A1F4                 dc.w      0, $6000,     0, $1000; 100
  60. ROM:0001A1F4                 dc.w      0, $6000,     0, $1000; 104
  61. ROM:0001A1F4                 dc.w      0, $6000,     0, $1000; 108
  62. ROM:0001A1F4                 dc.w      0, $12C0,  $100,  $190; 112
  63. ROM:0001A1F4                 dc.w      0, $12C0,  $100,  $190; 116
  64. ROM:0001A1F4                 dc.w      0, $12C0,  $200,  $390; 120
  65. ROM:0001A1F4                 dc.w      0, $12C0,  $200,  $390; 124
  66. ROM:0001A1F4                 dc.w      0, $12C0,  $100,  $190; 128
  67. ROM:0001A1F4                 dc.w      0, $12C0,  $100,  $190; 132
  68. ROM:0001A1F4                 dc.w      0, $12C0, $FF00, $1000; 136
  69. ROM:0001A1F4                 dc.w      0, $12C0,     0,   $90; 140
  70. ROM:0001A1F4                 dc.w      0, $12C0,  $100,  $190; 144
  71. ROM:0001A1F4                 dc.w      0, $12C0,  $100,  $190; 148
  72. ROM:0001A1F4                 dc.w    $60,   $60,     0,  $240; 152
  73. ROM:0001A1F4                 dc.w    $60,   $60,     0,  $240; 156
  74. ROM:0001A1F4                 dc.w      0, $6000,     0, $1000; 160
  75. ROM:0001A1F4                 dc.w      0, $6000,     0, $1000; 164
  76. ROM:0001A1F4                 dc.w      0, $6000,     0, $1000; 168
  77. ROM:0001A1F4                 dc.w      0, $6000,     0, $1000; 172
  78. ROM:0001A1F4                 dc.w      0, $6000,     0, $1000; 176
  79. ROM:0001A1F4                 dc.w      0, $6000,     0, $1000; 180
  80. ROM:0001A1F4                 dc.w      0, $6000,     0, $1000; 184
  81. ROM:0001A1F4                 dc.w      0, $6000,     0, $1000; 188
  82. ROM:0001A374 ; ---------------------------------------------------------------------------
  83. ROM:0001A374
  84. ROM:0001A374 loc_1A374:                              ; CODE XREF: Get_LevelSizeStart+62j
  85. ROM:0001A374                 tst.b   (Last_star_post_hit).w
  86. ROM:0001A378                 beq.s   loc_1A38C
  87. ROM:0001A37A                 jsr     Load_Starport_Settings
  88. ROM:0001A380                 move.w  ($FFFFB010).w,d1
  89. ROM:0001A384                 move.w  ($FFFFB014).w,d0
  90. ROM:0001A388                 bra.w   loc_1A43C
  91. ROM:0001A38C ; ---------------------------------------------------------------------------
  92. ROM:0001A38C
  93. ROM:0001A38C loc_1A38C:                              ; CODE XREF: Get_LevelSizeStart+1EAj
  94. ROM:0001A38C                 move.w  (Current_zone).w,d0
  95. ROM:0001A390                 ror.b   #1,d0
  96. ROM:0001A392                 lsr.w   #5,d0
  97. ROM:0001A394                 lea     (Sonic_Start_Locations).l,a1
  98. ROM:0001A39A                 lea     (a1,d0.w),a1
  99. ROM:0001A39E                 moveq   #0,d1
  100. ROM:0001A3A0                 move.w  (a1)+,d1
  101. ROM:0001A3A2                 move.w  d1,($FFFFB010).w
  102. ROM:0001A3A6                 moveq   #0,d0
  103. ROM:0001A3A8                 move.w  (a1),d0
  104. ROM:0001A3AA                 move.w  d0,($FFFFB014).w
  105. ROM:0001A3AE                 tst.b   (Last_star_post_hit).w
  106. ROM:0001A3B2                 bne.w   loc_1A43C
  107. ROM:0001A3B6                 cmpi.w  #0,(Current_zone).w
  108. ROM:0001A3BC                 bne.s   loc_1A3E6
  109. ROM:0001A3BE                 cmpi.w  #2,(Player_mode).w
  110. ROM:0001A3C4                 bcc.s   loc_1A3E6
  111. ROM:0001A3C6                 move.w  #$40,d1 ; '@'
  112. ROM:0001A3CA                 move.w  d1,($FFFFB010).w
  113. ROM:0001A3CE                 move.w  #$420,d0
  114. ROM:0001A3D2                 move.w  d0,($FFFFB014).w
  115. ROM:0001A3D6                 move.w  #0,d1
  116. ROM:0001A3DA                 move.w  d1,(Camera_min_X_pos).w
  117. ROM:0001A3DE                 move.w  d1,(Camera_target_min_X_pos).w
  118. ROM:0001A3E2                 move.w  d1,(Camera_min_X_pos_P2).w
  119. ROM:0001A3E6
  120. ROM:0001A3E6 loc_1A3E6:                              ; CODE XREF: Get_LevelSizeStart+22Ej
  121. ROM:0001A3E6                                         ; Get_LevelSizeStart+236j
  122. ROM:0001A3E6                 cmpi.w  #$500,(Current_zone).w
  123. ROM:0001A3EC                 bne.s   loc_1A43C
  124. ROM:0001A3EE                 cmpi.w  #2,(Player_mode).w
  125. ROM:0001A3F4                 bcs.s   loc_1A43C
  126. ROM:0001A3F6                 move.w  #$35A0,d1
  127. ROM:0001A3FA                 move.w  d1,(Camera_min_X_pos).w
  128. ROM:0001A3FE                 move.w  d1,(Camera_target_min_X_pos).w
  129. ROM:0001A402                 move.w  d1,(Camera_min_X_pos_P2).w
  130. ROM:0001A406                 move.w  #$3780,d1
  131. ROM:0001A40A                 move.w  d1,($FFFFB010).w
  132. ROM:0001A40E                 move.w  #$36F0,d1
  133. ROM:0001A412                 move.w  d1,(Camera_X_pos).w
  134. ROM:0001A416                 move.w  d1,(Camera_X_pos_P2).w
  135. ROM:0001A41A                 move.w  #$1E0,d0
  136. ROM:0001A41E                 move.w  d0,($FFFFB014).w
  137. ROM:0001A422                 move.w  #$200,d0
  138. ROM:0001A426                 move.w  d0,(Camera_min_Y_pos).w
  139. ROM:0001A42A                 move.w  d0,(Camera_target_min_Y_pos).w
  140. ROM:0001A42E                 move.w  d0,(Camera_min_Y_pos_P2).w
  141. ROM:0001A432                 move.w  d0,(Camera_Y_pos).w
  142. ROM:0001A436                 move.w  d0,(Camera_Y_pos_P2).w
  143. ROM:0001A43A                 rts
  144. ROM:0001A43C ; ---------------------------------------------------------------------------
  145. ROM:0001A43C
  146. ROM:0001A43C loc_1A43C:                              ; CODE XREF: Get_LevelSizeStart+1FAj
  147. ROM:0001A43C                                         ; Get_LevelSizeStart+224j ...
  148. ROM:0001A43C                 subi.w  #$A0,d1 ; 'á'
  149. ROM:0001A440                 bcc.s   loc_1A444
  150. ROM:0001A442                 moveq   #0,d1
  151. ROM:0001A444
  152. ROM:0001A444 loc_1A444:                              ; CODE XREF: Get_LevelSizeStart+2B2j
  153. ROM:0001A444                 tst.w   (Competition_mode).w
  154. ROM:0001A448                 bne.s   loc_1A454
  155. ROM:0001A44A                 move.w  (Camera_max_X_pos).w,d2
  156. ROM:0001A44E                 cmp.w   d2,d1
  157. ROM:0001A450                 bcs.s   loc_1A454
  158. ROM:0001A452                 move.w  d2,d1
  159. ROM:0001A454
  160. ROM:0001A454 loc_1A454:                              ; CODE XREF: Get_LevelSizeStart+2BAj
  161. ROM:0001A454                                         ; Get_LevelSizeStart+2C2j
  162. ROM:0001A454                 move.w  d1,(Camera_X_pos).w
  163. ROM:0001A458                 move.w  d1,(Camera_X_pos_P2).w
  164. ROM:0001A45C                 subi.w  #$60,d0 ; '`'
  165. ROM:0001A460                 bcc.s   loc_1A464
  166. ROM:0001A462                 moveq   #0,d0
  167. ROM:0001A464
  168. ROM:0001A464 loc_1A464:                              ; CODE XREF: Get_LevelSizeStart+2D2j
  169. ROM:0001A464                 cmp.w   (Camera_max_Y_pos).w,d0
  170. ROM:0001A468                 blt.s   loc_1A46E
  171. ROM:0001A46A                 move.w  (Camera_max_Y_pos).w,d0
  172. ROM:0001A46E
  173. ROM:0001A46E loc_1A46E:                              ; CODE XREF: Get_LevelSizeStart+2DAj
  174. ROM:0001A46E                 move.w  d0,(Camera_Y_pos).w
  175. ROM:0001A472                 move.w  d0,(Camera_Y_pos_P2).w
  176. ROM:0001A476                 rts
  177. ROM:0001A476 ; End of function Get_LevelSizeStart
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement