Time Counter Stopping
4 years ago
Massachusetts, USA

Periwinkle, can you look at smb2j's code? The green springs launch you so high and the timer doesn't stop there.

KilleDragon likes this
United States

Had to find an SMB2J disassembly first, but fortunately one already exists in the interwebs. SMB2J's game timer code is almost identical to SMB1's, but one big difference is that when comparing the player's Y position to check if the player is below the screen, SMB2J uses bpl instead of bcs. This essentially (for all intents and purposes) means that it's doing a signed comparison rather than an unsigned comparison...so very high Y values would be treated as negative numbers (255 = -1, 254 = -2, etc.), and would thus be considered to be above the screen rather than very, very far below the screen. So that's why the game timer still counts down when you hop on a ride on one of those green springs. I bet that the developers must've noticed this when they were testing the green springs, and so they fixed it for SMB2J. :)

As for SMB1, I don't know of any way (without using cheat codes) to get high enough to be able to exploit this bug. You'd have to reach basically a full screen-height above the top of the screen...and Mario doesn't jump anywhere near that high.

KilleDragon and AndrewG like this
Game stats
Followers
7,810
Runs
8,824
Players
1,793
Latest news
Requirements for High-Level Any% Runs

Any% (NTSC) runs below 4:57.000 must now fulfill additional requirements in order to be verified.

  • The run's full session must be included in the submission description.
  • For emulator runs below 4:57.000, some form of input display must be visible for the duration of the run. A hand-cam or input
4 months ago