@@ -218,7 +218,7 @@ void DECOMP_CAM_FollowDriver_Normal(struct CameraDC *cDC, struct Driver *d, stru
218218 // slight-down view angle
219219 if ((d -> actionsFlagSet & 0x4000 ) == 0 )
220220 {
221- cDC -> unk1A -= 8 ;
221+ cDC -> unk1A -= FPS_HALF ( 8 ) ;
222222 if (cDC -> unk1A < -0x20 )
223223 cDC -> unk1A = -0x20 ;
224224 }
@@ -227,7 +227,7 @@ void DECOMP_CAM_FollowDriver_Normal(struct CameraDC *cDC, struct Driver *d, stru
227227 // straight-forward angle
228228 else
229229 {
230- cDC -> unk1A += 8 ;
230+ cDC -> unk1A += FPS_HALF ( 8 ) ;
231231 if (cDC -> unk1A > 0 )
232232 cDC -> unk1A = 0 ;
233233 }
@@ -296,7 +296,7 @@ void DECOMP_CAM_FollowDriver_Normal(struct CameraDC *cDC, struct Driver *d, stru
296296 cDC -> BlastedLerp .desiredPos [1 ] = cDC -> unkTriplet2 [1 ] - * (short * )(scratchpad + 0x244 );
297297 cDC -> BlastedLerp .desiredPos [2 ] = cDC -> unkTriplet2 [2 ] - * (short * )(scratchpad + 0x248 );
298298
299- cDC -> BlastedLerp .framesRemaining = 8 ;
299+ cDC -> BlastedLerp .framesRemaining = FPS_DOUBLE ( 8 ) ;
300300 }
301301
302302 // if not arcade end-of-race
@@ -345,7 +345,7 @@ void DECOMP_CAM_FollowDriver_Normal(struct CameraDC *cDC, struct Driver *d, stru
345345 cDC -> BlastedLerp .desiredPos [1 ] = cDC -> unkTriplet2 [1 ] - * (short * )(scratchpad + 0x244 );
346346 cDC -> BlastedLerp .desiredPos [2 ] = cDC -> unkTriplet2 [2 ] - * (short * )(scratchpad + 0x248 );
347347
348- cDC -> BlastedLerp .framesRemaining = 8 ;
348+ cDC -> BlastedLerp .framesRemaining = FPS_DOUBLE ( 8 ) ;
349349
350350 goto LAB_8001a8b0 ;
351351 }
@@ -355,13 +355,13 @@ void DECOMP_CAM_FollowDriver_Normal(struct CameraDC *cDC, struct Driver *d, stru
355355 // if frame countdown is not finished
356356 if (cDC -> BlastedLerp .framesRemaining != 0 )
357357 {
358- * (int * )(scratchpad + 0x240 ) += (cDC -> BlastedLerp .desiredPos [0 ] * cDC -> BlastedLerp .framesRemaining ) >> 3 ;
359- * (int * )(scratchpad + 0x244 ) += (cDC -> BlastedLerp .desiredPos [1 ] * cDC -> BlastedLerp .framesRemaining ) >> 3 ;
360- * (int * )(scratchpad + 0x248 ) += (cDC -> BlastedLerp .desiredPos [2 ] * cDC -> BlastedLerp .framesRemaining ) >> 3 ;
358+ * (int * )(scratchpad + 0x240 ) += (cDC -> BlastedLerp .desiredPos [0 ] * cDC -> BlastedLerp .framesRemaining ) >> FPS_RIGHTSHIFT ( 3 ) ;
359+ * (int * )(scratchpad + 0x244 ) += (cDC -> BlastedLerp .desiredPos [1 ] * cDC -> BlastedLerp .framesRemaining ) >> FPS_RIGHTSHIFT ( 3 ) ;
360+ * (int * )(scratchpad + 0x248 ) += (cDC -> BlastedLerp .desiredPos [2 ] * cDC -> BlastedLerp .framesRemaining ) >> FPS_RIGHTSHIFT ( 3 ) ;
361361
362- * (int * )(scratchpad + 0x258 ) += (cDC -> BlastedLerp .desiredRot [0 ] * cDC -> BlastedLerp .framesRemaining ) >> 3 ;
363- * (int * )(scratchpad + 0x25c ) += (cDC -> BlastedLerp .desiredRot [1 ] * cDC -> BlastedLerp .framesRemaining ) >> 3 ;
364- * (int * )(scratchpad + 0x260 ) += (cDC -> BlastedLerp .desiredRot [2 ] * cDC -> BlastedLerp .framesRemaining ) >> 3 ;
362+ * (int * )(scratchpad + 0x258 ) += (cDC -> BlastedLerp .desiredRot [0 ] * cDC -> BlastedLerp .framesRemaining ) >> FPS_RIGHTSHIFT ( 3 ) ;
363+ * (int * )(scratchpad + 0x25c ) += (cDC -> BlastedLerp .desiredRot [1 ] * cDC -> BlastedLerp .framesRemaining ) >> FPS_RIGHTSHIFT ( 3 ) ;
364+ * (int * )(scratchpad + 0x260 ) += (cDC -> BlastedLerp .desiredRot [2 ] * cDC -> BlastedLerp .framesRemaining ) >> FPS_RIGHTSHIFT ( 3 ) ;
365365
366366 // decrease frame countdown
367367 cDC -> BlastedLerp .framesRemaining -- ;
@@ -571,6 +571,9 @@ void DECOMP_CAM_FollowDriver_Normal(struct CameraDC *cDC, struct Driver *d, stru
571571 // No camera + No ghosts (battle maps)
572572 (st1 -> count < 4 ) ||
573573
574+ // prevent advhub from playing startline
575+ (cDC -> unk8E == 0 ) ||
576+
574577 // Press Triangle
575578 ((pad -> buttonsTapped & BTN_TRIANGLE ) != 0 )
576579 )
0 commit comments