Player (70)
Joined: 8/24/2004
Posts: 2562
Location: Sweden
Nice. I would pretty much like to lay my hand on those early versions. :D Does anyone know what that emulator might be called and what emu to use?
Active player (410)
Joined: 3/16/2004
Posts: 2623
Location: America, Québec
Highness wrote:
Nice. I would pretty much like to lay my hand on those early versions. :D Does anyone know what that emulator might be called and what emu to use?
The one so called MAME evidently. I only wish that there will be rerecording support one of these days.
Former player
Joined: 3/8/2004
Posts: 706
Any clue why they did that? Hehe.. Pissing on Russia wasn't fun enough for them? Or they where affraid that a video game would start a war?
Although the Cold War wasn't over when this game was released, the name change most probably happened because Nintendo thought a Vodka drinking boxer would be inappropriate. So instead, on the console he drinks bottles of non-alcoholic pop instead, but for some reason he's still as drunk and incoherent as ever...
remember the flyer they used to distribute with their "pledge" never to release any game that might be innappropriate for children. Hence, once Mike Tyson was no longer a viable spokesperson for a children's product, they booted him and created the imaginary "Mr. Dream."
Also, with Tyson no longer being champion and his contract having expired, it would make little sense for Nintendo to renew their contract with him.
Former player
Joined: 9/26/2004
Posts: 217
Yeah - from what I understand, Nintendo booting Tyson for not being family oriented is something of an urban legend. He lost the title and his contract was up.
Former player
Joined: 3/13/2004
Posts: 1118
Location: Kansai, JAPAN
You might be right. I just checked and Mike Tyson's rape conviction wasn't until 1992. The "Mr. Dream" Punch Out says "copyright 1990."
Do Not Talk About Feitclub http://www.feitclub.com
Joined: 4/11/2004
Posts: 155
Location: Fairfax, VA, USA
-ziplock- wrote:
I wanted to ask permission from Blip to use his patch as my official emulator (makes things easier).
Well, you certainly don't *need* my permission, but you've got it. ;)
Active player (278)
Joined: 5/29/2004
Posts: 5712
Didn't they also swap three names around in Street Fighter so the character inspired by Mike Tyson wouldn't be named "M. Bison"?
put yourself in my rocketpack if that poochie is one outrageous dude
Former player
Joined: 3/13/2004
Posts: 706
Location: Elyria/Oberlin, OH
Yep...Mike Bison became Balrog, Balrog became Vega, and Vega became M.Bison. In Alpha 3 the boxer had a win quote where he said "I'll bite your ears off!" or something to that effect...it wasn't edited in the American version. -Josh
but then you take my 75 perchance chance of winning, if we was to go one-on-one, and then add 66 and two-thirds ch...percents...i got a 141 and two-thirds chance of winning at sacrifice
Former player
Joined: 6/27/2004
Posts: 550
Location: New York
If it was about ears, it had to have been before Tyson bit Holyfield's ears off. Or did that happen before, too? At any rate, I think the names are way way more appropriate to their fighting styles now.
Former player
Joined: 3/13/2004
Posts: 1118
Location: Kansai, JAPAN
I understood the Bison/Tyson problem, but I wish they hadn't swapped Vega as well.
Do Not Talk About Feitclub http://www.feitclub.com
Joined: 6/4/2004
Posts: 284
I would have preferred M. Bison for the boxer's name as well, but I think Balrog works--sort of a "tough guy" name. I don't see that name working well for the lithe Spainard, though; Vega has more of an exotic feel to it.
Active player (278)
Joined: 5/29/2004
Posts: 5712
No no. Bison is the "tough guy" name, Balrog is the "ugly guy" name, and Vega is the "space guy" name.
put yourself in my rocketpack if that poochie is one outrageous dude
Former player
Joined: 3/13/2004
Posts: 1118
Location: Kansai, JAPAN
The more I hear it, the cooler "Vega" sounds, especially in the later games when he teleports. "Vega Warp" > "Bison Warp"
Do Not Talk About Feitclub http://www.feitclub.com
Active player (410)
Joined: 3/16/2004
Posts: 2623
Location: America, Québec
Anyway, I have decided to do a Mike Bison Punch Out run. Oops Mike Tyson.
Player (70)
Joined: 8/24/2004
Posts: 2562
Location: Sweden
Haha.. Hack the rom and change the name before you do it! :D
Former player
Joined: 9/26/2004
Posts: 217
A recent post at Gamefaqs caught my attention because it would certainly affect the way we've looked at Punch Out runs. We have been using time units to determine the fastest run, but the following allegation might change things:
davieboy wrote:
I've looked through the memory locations used by the game and I can't find where they are stored. The minute information is at 0x302 in RAM, the seconds are at 0x304 and 0x305 - but the millisecond values don't seem to be stored (I have looked very thoroughly). I think they are randomly generated. If they are randomly generated then how do we really know if 2:19.25 actually does beat 2:19.82, since we can only be accurate to the second. It also makes sense that such a game would be short on CPU cycles anywhere, so why waste precious cycles continuously incrementing a millisecond counter in RAM? I've also produced a histogram of the memory location updates per second, and no unexplained location seems to be updated enough times a second to be useful as a millisecond counter. Does anyone know any different?
Not sure if this can be proven or not, but it means that a 0:42.97 time and a 0:42.00 wouldn't be any different - might affect the landscape of the game. Not to mention the fact that the clock temporarily stops whenever speed punches are thrown or an uppercut is landed. And give this a try: Start a new game and just stand there on Glass Joe and watch the clock. The "seconds" don't exactly tick away at a consistent speed. Maybe even the "second" time-units can be manipulated by throwing certain punches at certain times (this might, say, allow you to knock down Glass Joe before the 0:40 power hook by maybe, say, throwing a punch at 0:28 instead of 0:27). Some ramblings as food for thought. Any ideas?
Emulator Coder
Joined: 10/9/2004
Posts: 453
Location: Norway
Will disassemble and confirm now. The throw a punch at the right time to prevent time from running is a known bug.
Former player
Joined: 9/26/2004
Posts: 217
Yeah - but I'm not talking about the clock stop glitch. I mean, if the seconds tick away at different speeds, perhaps it's more beneficial to your time to wait a split second longer rather than to keep punching away in order to get the clock moving at a slightly slower speed - if the clock is indeed unpredictable in its movements, it could be manipulated like any other game. But the millisecond thing is the issue here anyway - sorry to throw the topic off.
Emulator Coder
Joined: 10/9/2004
Posts: 453
Location: Norway
Punchout has this piece of code which gets called every frame (60 times pr second) $0308 and $0309 are loaded with a 16 bit increment every round. Round 1: $04F9 Round 2: $056D Round 3: $05F8 Every frame, it adds the increment to the counter at $0306 and $0307, once the upper part of this counter (16bit / 256) wraps around 100, it increments the seconds counter. This means it will increment the seconds counter: Round 1: $04F9 * 60 (frames pr second) / 256 / 100 = 2.98 times pr second Round 2: $056D * 60 (frames pr second) / 256 / 100 = 3.26 times pr second Round 3: $05F8 * 60 (frames pr second) / 256 / 100 = 3.58 times pr second This seems a bit weird, but when I tested it seemed to actually be correct. So the conclusion is: 100ths are being counted, and ARE relevant.
8780 : AD 07 03 LDA $0307	;
8783 : 18       CLC
8784 : 6D 09 03 ADC $0309	; Initialized with $F9
8787 : 8D 07 03 STA $0307
878A : AD 06 03 LDA $0306
878D : 6D 08 03 ADC $0308	; Initialized with $04
8790 : 8D 06 03 STA $0306
8793 : C9 64    CMP #$64	; Check hundred of seconds counter for $64 (decimal = 100)
8795 : 90 52    BCC $87E9	; if less than 100 skip the following code and return

8797 : E9 64    SBC #$64	; Remove anything above 100
8799 : 8D 06 03 STA $0306	; Store back
879C : CE 11 03 DEC $0311	; Decrease a counter :P
879F : EE 05 03 INC $0305	; Increase lowest digit of second
87A2 : AD 05 03 LDA $0305
87A5 : C9 0A    CMP #$0A
87A7 : D0 2D    BNE $87D6	; Check vs 10, if not 10 carry on
87A9 : A2 00    LDX #$00
87AB : 8E 05 03 STX $0305	; Blank out lowest digit
87AE : EE 04 03 INC $0304	; Increase higher digit of second
87B1 : AD 04 03 LDA $0304
87B4 : C9 06    CMP #$06
87B6 : D0 1E    BNE $87D6	; Check vs 6, if not 6 carry on
87B8 : 8E 04 03 STX $0304	; Blank out
87BB : EE 02 03 INC $0302	; Increase minute counter
87BE : AD 02 03 LDA $0302
87C1 : C9 03    CMP #$03	; Compare against 3
87C3 : D0 11    BNE $87D6	; If not 3 carry on

87C5 : A9 02    LDA #$02	; This code advances you to next round because time hit 3:00
87C7 : 8D 01 03 STA $0301	
87CA : A9 00    LDA #$00
87CC : 85 90    STA $90
87CE : 85 91    STA $91
87D0 : 85 51    STA $51
87D2 : A9 C2    LDA #$C2
87D4 : 85 50    STA $50		

87D6 : 18       CLC		; This code is performed every time a digit wraps.
87D7 : A2 04    LDX #$04
87D9 : BD 01 03 LDA $0301,X
87DC : 69 01    ADC #$01
87DE : 9D 0A 03 STA $030A,X	; It stores the time back another place but adds 1 (charachter conversion)
87E1 : CA       DEX
87E2 : D0 F5    BNE $87D9 
87E4 : A0 80    LDY #$80
87E6 : 8C 0A 03 STY $030A
87E9 : 60       RTS
Former player
Joined: 9/26/2004
Posts: 217
Interesting stuff - I mean, you could tell me these are stock options for midgets on welfare and I'd believe you, but nevertheless... This discovery did actually give me a sigh of relief, as I can't count the number of times I've replayed a fighter to beat him by milliseconds. More info on the topic:
davieboy wrote:
I have one more find regarding the milliseconds that I want to share. To summarise this note, it intends to prove that the only valid millisecond values you will ever get for a time in Punch-out are 00, 25, 48, 61, 82, 97 or 99. If some-one tells you that they beat Glass Joe in 00:35:18 then they are lying, because the game will never report 18 milliseconds. If you want to read why, here is the proof:
The rest here. Always wanted to learn about this stuff. Perhaps they should write a computer book for people that don't get this kind of thing - like a "computers for dummies" kinda book.
Former player
Joined: 3/9/2004
Posts: 484
Location: ­­
The game never reports milliseconds in the first place.
Player (36)
Joined: 9/11/2004
Posts: 2624
centiseconds then.
Build a man a fire, warm him for a day, Set a man on fire, warm him for the rest of his life.
Former player
Joined: 9/26/2004
Posts: 217
Bladegash wrote:
The game never reports milliseconds in the first place.
After each fight on the victory screen, not during play.
adelikat
He/Him
Emulator Coder, Site Developer, Site Owner, Expert player (3599)
Joined: 11/3/2004
Posts: 4739
Location: Tennessee
I'm in the last stages of two new runs for this game The WIP's can be found here: http://www.adelikat.com/Punchout.html Two runs because one exploits the clock stopping glitch and the other does not. The main reason I am posting here is to get feedback on whether I should submit one or both (i'll finish both either way). The cs run reflects the fastest possible times according to the game clock but makes the run about a minute and a half longer in real time. Here are the improved times for each run compared to my previous attempt and to the current published movie: Ver 2 Cs Ver 1 (cs) Phil & Genisto's Published Movie Piston 1 :40.25 "" :40.82 :42.82 Don 1 :14.97 :11.97cs "" :14.97 Soda :47.00 :31.82cs :32.48cs :47.00 Don 2 :58.99 :44.48cs :44.48cs 1:00.48 Sandman 2:19.00 "" 2:19.25 2:19.25 Macho :46.25 :35.82cs :35.97cs :46.48 (note: macho no cs has not yet been recorded, i've got this time during the testing). In addition I have improved ver 2 from my previous run by manipulating the opponents counts so they get up as soon as possible, making both runs as short as possible in real time.
It's hard to look this good. My TAS projects
Active player (410)
Joined: 3/16/2004
Posts: 2623
Location: America, Québec
I really hate Punch Out as well as Super Punch Out. There's too much randomness. We have tested a lot of things but not enough apparently.