Possible Bug: NBA Hangtime doesn't add +1 to "Current Streak" value once you have 63 consecutive wins

Having an issue with one of our games? Browse this section for answers to common problems, or post your own questions to get support from us.
Post Reply
TallaNasty
Posts: 9
Joined: Wed Sep 16, 2020 8:00 am

Possible Bug: NBA Hangtime doesn't add +1 to "Current Streak" value once you have 63 consecutive wins

Post by TallaNasty »

Current Streak shows when you input your name/pin prior to selecting teams.
On the MAME ROM, the value goes past 63 when another consecutive win is obtained. All settings from the main menu (game-specific) are set to the defaults.

It's not a huge deal to me, but definitely a flaw the devs might want to look at.
User avatar
CodeMystics
Posts: 539
Joined: Mon Oct 13, 2014 3:22 pm

Re: Possible Bug: NBA Hangtime doesn't add +1 to "Current Streak" value once you have 63 consecutive wins

Post by CodeMystics »

TallaNasty wrote: Sun Oct 11, 2020 1:17 pm Current Streak shows when you input your name/pin prior to selecting teams.
On the MAME ROM, the value goes past 63 when another consecutive win is obtained. All settings from the main menu (game-specific) are set to the defaults.

It's not a huge deal to me, but definitely a flaw the devs might want to look at.
The streak that the game stores in your permanent record in its NVRAM, which survives power cycling, is limited to 6 bits (a number 0-63). Thus, the permanent record is limited to 63. As our Arcade1Up implementation makes use of individual permanent records from the original game to allow your records to be coordinate and merged across machines, this original game limitation comes with it.

The original code quite clearly and deliberately limits the winning streak to 63, even in RAM, per the code below:

Code: Select all

ffa5b3e0:05a0 01139460:			MOVE	@PLREC_P1+U120_STREAK,A0,W
ffa5b410:1020:					INC		A0
ffa5b420:0b80 ffffffc0:			ANDI	0000003f,A0,L
ffa5b450:ca03:					JRZ.s	.bump_wins_p2			; (ffa5b490)
ffa5b460:0580 01139460:			MOVE	A0,@PLREC_P1+U120_STREAK,W
.bump_wins_p2:
Thus our behaviour is correct to the original ROM. Is it possible you are using a hacked ROM?
TallaNasty
Posts: 9
Joined: Wed Sep 16, 2020 8:00 am

Re: Possible Bug: NBA Hangtime doesn't add +1 to "Current Streak" value once you have 63 consecutive wins

Post by TallaNasty »

CodeMystics wrote: Mon Oct 12, 2020 9:51 pm
TallaNasty wrote: Sun Oct 11, 2020 1:17 pm Current Streak shows when you input your name/pin prior to selecting teams.
On the MAME ROM, the value goes past 63 when another consecutive win is obtained. All settings from the main menu (game-specific) are set to the defaults.

It's not a huge deal to me, but definitely a flaw the devs might want to look at.
The streak that the game stores in your permanent record in its NVRAM, which survives power cycling, is limited to 6 bits (a number 0-63). Thus, the permanent record is limited to 63. As our Arcade1Up implementation makes use of individual permanent records from the original game to allow your records to be coordinate and merged across machines, this original game limitation comes with it.

The original code quite clearly and deliberately limits the winning streak to 63, even in RAM, per the code below:

Code: Select all

ffa5b3e0:05a0 01139460:			MOVE	@PLREC_P1+U120_STREAK,A0,W
ffa5b410:1020:					INC		A0
ffa5b420:0b80 ffffffc0:			ANDI	0000003f,A0,L
ffa5b450:ca03:					JRZ.s	.bump_wins_p2			; (ffa5b490)
ffa5b460:0580 01139460:			MOVE	A0,@PLREC_P1+U120_STREAK,W
.bump_wins_p2:
Thus our behaviour is correct to the original ROM. Is it possible you are using a hacked ROM?
Wow, I did not know that. Sounds like that may have been a possibility. Thanks for the in-depth answer! :D
Post Reply