If you noticed, the frame counter start before than level start. The frame counter start, pass 4 frames, stop to load pallet, and after continue again. These 4 frames are 4 lost frames in counter, and can change the final time of the act.
To fix the Frame Counter Bug, first open the sonic1.asm.
Go to loc_39E8 subroutine, find and delete or comment this line:
Now go to Level_StartGame subroutine, and add this line:
To have not problems when start from a lamppost, go to LevSz_ChkLamp and between these lines:
To fix the Frame Counter Bug, first open the sonic1.asm.
Go to loc_39E8 subroutine, find and delete or comment this line:
- Code:
move.b #1,($FFFFFE1E).w ; update time counter
Now go to Level_StartGame subroutine, and add this line:
- Code:
move.b #1,($FFFFFE1E).w ; update time counter
To have not problems when start from a lamppost, go to LevSz_ChkLamp and between these lines:
- Code:
move.w ($FFFFD00C).w,d0
bra.s loc_60D0
- Code:
;---------------------
; Fix the Frame Counter Bug // when start by a Lamppost not have this bug,
; but after correct the main bug, you see zeros in place of the numbers
movem.l d0-a6,-(sp)
move.l #$5E400003,d0
moveq #0,d1
move.b ($FFFFFE23).w,d1 ; load minutes
jsr Hud_Mins
move.l #$5EC00003,d0
moveq #0,d1
move.b ($FFFFFE24).w,d1 ; load seconds
jsr Hud_Secs
movem.l (sp)+,d0-a6
;---------------------
Last edited by OuricoDoido on Tue Jun 07, 2011 6:06 pm; edited 1 time in total