Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ROM:0001A18E ; =============== S U B R O U T I N E =======================================
- ROM:0001A18E
- ROM:0001A18E
- ROM:0001A18E Get_LevelSizeStart: ; CODE XREF: ROM:00004948p
- ROM:0001A18E clr.b ($FFFFEE30).w
- ROM:0001A192 clr.b ($FFFFEE08).w
- ROM:0001A196 clr.b ($FFFFEE0A).w
- ROM:0001A19A clr.b ($FFFFEE0B).w
- ROM:0001A19E clr.b ($FFFFEE39).w
- ROM:0001A1A2 moveq #0,d0
- ROM:0001A1A4 move.b d0,(Dynamic_resize_routine).w
- ROM:0001A1A8 move.w d0,($FFFFF660).w
- ROM:0001A1AC move.w d0,($FFFFF662).w
- ROM:0001A1B0 move.w (Current_zone).w,d0
- ROM:0001A1B4 ror.b #1,d0
- ROM:0001A1B6 lsr.w #4,d0
- ROM:0001A1B8 lea LevelSizes(pc,d0.w),a0
- ROM:0001A1BC move.l (a0)+,d0
- ROM:0001A1BE move.l d0,($FFFFEE14).w
- ROM:0001A1C2 move.l d0,($FFFFEE0C).w
- ROM:0001A1C6 move.l d0,($FFFFEE1C).w
- ROM:0001A1CA move.l (a0)+,d0
- ROM:0001A1CC move.l d0,(Camera_min_Y_pos).w
- ROM:0001A1D0 move.l d0,(Camera_target_min_Y_pos).w
- ROM:0001A1D4 move.l d0,($FFFFEE20).w
- ROM:0001A1D8 move.w #$60,($FFFFEE2C).w ; '`'
- ROM:0001A1DE move.w #$60,($FFFFEE2E).w ; '`'
- ROM:0001A1E4 move.w #$FFFF,($FFFFEEA8).w
- ROM:0001A1EA move.w #$FFFF,($FFFFEEAA).w
- ROM:0001A1F0 bra.w loc_1A374
- ROM:0001A1F0 ; ---------------------------------------------------------------------------
- ROM:0001A1F4 LevelSizes: dc.w $1308, $6000, 0, $390; 0
- ROM:0001A1F4 ; DATA XREF: Get_LevelSizeStart+2Ao
- ROM:0001A1F4 ; Change_Act2Sizes+8o
- ROM:0001A1F4 dc.w 0, $4640, 0, $590; 4
- ROM:0001A1F4 dc.w 0, $6000, 0, $1000; 8
- ROM:0001A1F4 dc.w 0, $6000, 0, $1000; 12
- ROM:0001A1F4 dc.w 0, $6000, $FF00, $1000; 16
- ROM:0001A1F4 dc.w 0, $6000, 0, $1000; 20
- ROM:0001A1F4 dc.w 0, $6000, 0, $B20; 24
- ROM:0001A1F4 dc.w 0, $6000, 0, $1000; 28
- ROM:0001A1F4 dc.w 0, $6000, 0, $1000; 32
- ROM:0001A1F4 dc.w 0, $6000, 0, $1000; 36
- ROM:0001A1F4 dc.w 0, $7000, $FF00, $800; 40
- ROM:0001A1F4 dc.w 0, $7000, 0, $B20; 44
- ROM:0001A1F4 dc.w 0, $6000, 0, $1000; 48
- ROM:0001A1F4 dc.w 0, $6000, 0, $1000; 52
- ROM:0001A1F4 dc.w 0, $6000, 0, $1000; 56
- ROM:0001A1F4 dc.w 0, $6000, 0, $1000; 60
- ROM:0001A1F4 dc.w 0, $6000, 0, $1000; 64
- ROM:0001A1F4 dc.w 0, $6000, 0, $1000; 68
- ROM:0001A1F4 dc.w 0, $6000, 0, $1000; 72
- ROM:0001A1F4 dc.w 0, $6000, 0, $1000; 76
- ROM:0001A1F4 dc.w 0, $6000, 0, $1000; 80
- ROM:0001A1F4 dc.w 0, $6000, 0, $1000; 84
- ROM:0001A1F4 dc.w 0, $6000, 0, $1000; 88
- ROM:0001A1F4 dc.w 0, $6000, 0, $1000; 92
- ROM:0001A1F4 dc.w 0, $6000, 0, $1000; 96
- ROM:0001A1F4 dc.w 0, $6000, 0, $1000; 100
- ROM:0001A1F4 dc.w 0, $6000, 0, $1000; 104
- ROM:0001A1F4 dc.w 0, $6000, 0, $1000; 108
- ROM:0001A1F4 dc.w 0, $12C0, $100, $190; 112
- ROM:0001A1F4 dc.w 0, $12C0, $100, $190; 116
- ROM:0001A1F4 dc.w 0, $12C0, $200, $390; 120
- ROM:0001A1F4 dc.w 0, $12C0, $200, $390; 124
- ROM:0001A1F4 dc.w 0, $12C0, $100, $190; 128
- ROM:0001A1F4 dc.w 0, $12C0, $100, $190; 132
- ROM:0001A1F4 dc.w 0, $12C0, $FF00, $1000; 136
- ROM:0001A1F4 dc.w 0, $12C0, 0, $90; 140
- ROM:0001A1F4 dc.w 0, $12C0, $100, $190; 144
- ROM:0001A1F4 dc.w 0, $12C0, $100, $190; 148
- ROM:0001A1F4 dc.w $60, $60, 0, $240; 152
- ROM:0001A1F4 dc.w $60, $60, 0, $240; 156
- ROM:0001A1F4 dc.w 0, $6000, 0, $1000; 160
- ROM:0001A1F4 dc.w 0, $6000, 0, $1000; 164
- ROM:0001A1F4 dc.w 0, $6000, 0, $1000; 168
- ROM:0001A1F4 dc.w 0, $6000, 0, $1000; 172
- ROM:0001A1F4 dc.w 0, $6000, 0, $1000; 176
- ROM:0001A1F4 dc.w 0, $6000, 0, $1000; 180
- ROM:0001A1F4 dc.w 0, $6000, 0, $1000; 184
- ROM:0001A1F4 dc.w 0, $6000, 0, $1000; 188
- ROM:0001A374 ; ---------------------------------------------------------------------------
- ROM:0001A374
- ROM:0001A374 loc_1A374: ; CODE XREF: Get_LevelSizeStart+62j
- ROM:0001A374 tst.b (Last_star_post_hit).w
- ROM:0001A378 beq.s loc_1A38C
- ROM:0001A37A jsr Load_Starport_Settings
- ROM:0001A380 move.w ($FFFFB010).w,d1
- ROM:0001A384 move.w ($FFFFB014).w,d0
- ROM:0001A388 bra.w loc_1A43C
- ROM:0001A38C ; ---------------------------------------------------------------------------
- ROM:0001A38C
- ROM:0001A38C loc_1A38C: ; CODE XREF: Get_LevelSizeStart+1EAj
- ROM:0001A38C move.w (Current_zone).w,d0
- ROM:0001A390 ror.b #1,d0
- ROM:0001A392 lsr.w #5,d0
- ROM:0001A394 lea (Sonic_Start_Locations).l,a1
- ROM:0001A39A lea (a1,d0.w),a1
- ROM:0001A39E moveq #0,d1
- ROM:0001A3A0 move.w (a1)+,d1
- ROM:0001A3A2 move.w d1,($FFFFB010).w
- ROM:0001A3A6 moveq #0,d0
- ROM:0001A3A8 move.w (a1),d0
- ROM:0001A3AA move.w d0,($FFFFB014).w
- ROM:0001A3AE tst.b (Last_star_post_hit).w
- ROM:0001A3B2 bne.w loc_1A43C
- ROM:0001A3B6 cmpi.w #0,(Current_zone).w
- ROM:0001A3BC bne.s loc_1A3E6
- ROM:0001A3BE cmpi.w #2,(Player_mode).w
- ROM:0001A3C4 bcc.s loc_1A3E6
- ROM:0001A3C6 move.w #$40,d1 ; '@'
- ROM:0001A3CA move.w d1,($FFFFB010).w
- ROM:0001A3CE move.w #$420,d0
- ROM:0001A3D2 move.w d0,($FFFFB014).w
- ROM:0001A3D6 move.w #0,d1
- ROM:0001A3DA move.w d1,(Camera_min_X_pos).w
- ROM:0001A3DE move.w d1,(Camera_target_min_X_pos).w
- ROM:0001A3E2 move.w d1,(Camera_min_X_pos_P2).w
- ROM:0001A3E6
- ROM:0001A3E6 loc_1A3E6: ; CODE XREF: Get_LevelSizeStart+22Ej
- ROM:0001A3E6 ; Get_LevelSizeStart+236j
- ROM:0001A3E6 cmpi.w #$500,(Current_zone).w
- ROM:0001A3EC bne.s loc_1A43C
- ROM:0001A3EE cmpi.w #2,(Player_mode).w
- ROM:0001A3F4 bcs.s loc_1A43C
- ROM:0001A3F6 move.w #$35A0,d1
- ROM:0001A3FA move.w d1,(Camera_min_X_pos).w
- ROM:0001A3FE move.w d1,(Camera_target_min_X_pos).w
- ROM:0001A402 move.w d1,(Camera_min_X_pos_P2).w
- ROM:0001A406 move.w #$3780,d1
- ROM:0001A40A move.w d1,($FFFFB010).w
- ROM:0001A40E move.w #$36F0,d1
- ROM:0001A412 move.w d1,(Camera_X_pos).w
- ROM:0001A416 move.w d1,(Camera_X_pos_P2).w
- ROM:0001A41A move.w #$1E0,d0
- ROM:0001A41E move.w d0,($FFFFB014).w
- ROM:0001A422 move.w #$200,d0
- ROM:0001A426 move.w d0,(Camera_min_Y_pos).w
- ROM:0001A42A move.w d0,(Camera_target_min_Y_pos).w
- ROM:0001A42E move.w d0,(Camera_min_Y_pos_P2).w
- ROM:0001A432 move.w d0,(Camera_Y_pos).w
- ROM:0001A436 move.w d0,(Camera_Y_pos_P2).w
- ROM:0001A43A rts
- ROM:0001A43C ; ---------------------------------------------------------------------------
- ROM:0001A43C
- ROM:0001A43C loc_1A43C: ; CODE XREF: Get_LevelSizeStart+1FAj
- ROM:0001A43C ; Get_LevelSizeStart+224j ...
- ROM:0001A43C subi.w #$A0,d1 ; 'á'
- ROM:0001A440 bcc.s loc_1A444
- ROM:0001A442 moveq #0,d1
- ROM:0001A444
- ROM:0001A444 loc_1A444: ; CODE XREF: Get_LevelSizeStart+2B2j
- ROM:0001A444 tst.w (Competition_mode).w
- ROM:0001A448 bne.s loc_1A454
- ROM:0001A44A move.w (Camera_max_X_pos).w,d2
- ROM:0001A44E cmp.w d2,d1
- ROM:0001A450 bcs.s loc_1A454
- ROM:0001A452 move.w d2,d1
- ROM:0001A454
- ROM:0001A454 loc_1A454: ; CODE XREF: Get_LevelSizeStart+2BAj
- ROM:0001A454 ; Get_LevelSizeStart+2C2j
- ROM:0001A454 move.w d1,(Camera_X_pos).w
- ROM:0001A458 move.w d1,(Camera_X_pos_P2).w
- ROM:0001A45C subi.w #$60,d0 ; '`'
- ROM:0001A460 bcc.s loc_1A464
- ROM:0001A462 moveq #0,d0
- ROM:0001A464
- ROM:0001A464 loc_1A464: ; CODE XREF: Get_LevelSizeStart+2D2j
- ROM:0001A464 cmp.w (Camera_max_Y_pos).w,d0
- ROM:0001A468 blt.s loc_1A46E
- ROM:0001A46A move.w (Camera_max_Y_pos).w,d0
- ROM:0001A46E
- ROM:0001A46E loc_1A46E: ; CODE XREF: Get_LevelSizeStart+2DAj
- ROM:0001A46E move.w d0,(Camera_Y_pos).w
- ROM:0001A472 move.w d0,(Camera_Y_pos_P2).w
- ROM:0001A476 rts
- ROM:0001A476 ; End of function Get_LevelSizeStart
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement