History of the TTC upwarp

From Ukikipedia
Jump to navigation Jump to search

September 21, 2013

Dota_Teabag performed an upwarp glitch.[1][2]

August 4, 2015

Pannenkoek2012 put a $1000 bounty on the glitch. It was thought to be an unknown hangable ceiling glitch. The hypothesis was later superceded by the random bit flip hypothesis. (See August 5, 2015)[3]

August 5, 2015

The random bit flip hypothesis was introduced in this video, labeled the current leading hypothesis.[4]

Pannenkoek2012: "The random bit flip hypothesis shown in this video is just the current leading hypothesis. Before that, it was the ceiling seams, and before that the bob-omb/explosion/coin, and before that landing on the platform/wall at the same frame. Frankly, a gamma ray happening to flip a particular bit seems a bit far-fetched to me. It's completely possible that some in-game mechanic treats the height float like an integer and decrements it, thus decreasing that bit from a 1 to a 0, in which case the glitch would be reproducible, and the bounty would be awarded to the person who submits that. The bounty is not rewarded for hypotheses as to what caused the upwarp, otherwise the bob-omb or ceiling hypotheses would have "solved" it long ago."

Following that, ECC was discussed. See: September 16, 2018

August 8, 2016

Dane created a program that made frame perfect TASing easier, by overlaying the video on top of the emulator to compare frame by frame.[5][6]

August 21, 2017

A user on Reddit claimed to have done the TTC upwarp.

"LilithFaery: It happened to me once when i was playing this game for the first time maybe. Well i was still very young and i couldn't understant what had just happened... and i think i died because i panicked."[7]

May 8, 2017

The #upwarp_pole channel was created in the discord server "SM64 TASing and ABC", and Pannen put 3 of his main videos regarding the topics there.

May 12, 2017

Notchmath talked of doing a full frame perfect TAS run of Dota_Teabag's speedrun.

October 1, 2017

Sidney made a synced audio version of the upwarp footage.[8]

February 21, 2018

Dota_Teabag (TeabagSRL) commented on the bitflip video, and suggested it could've been a cartridge tilt.

"For what its worth (This is Dota_Teabag), I often had to tilt my cartridge weird ways in order to get the game to start. It seemed if i had it all the way pressed down sometimes it wouldn't start, but if i pulled it up on one side ever so slightly, it would start just fine. So if you think that is a possible factor, it is worth considering that fact."[9]

June 4, 2018

Dane sucessfully got Dota to deliver the N64 and Mario game for hardware testing.

SM64 TASing and ABC discord - #upwarp_pole

July 29, 2018

The tests on Dota's cartridge took place. Dane couldn't recreate the upwarp on Dota's console. Basic mulmul tests were also performed.

Info on Mulmul here: "Bug: Back-to-Back Floating Point Multiplies May Give Incorrect Results (R4300 Bug)"[10]
On May 2019, the following was said regarding these tests: dane: "Yeah boot gave me a hardware test. Nothing ever turned up. But at some point we can do more advanced testing."
bad_boot: "Tbf that hardware test was more of a test to make sure I know how to write hardware tests. It tested a pretty limited subset of things that we should test. Like just some basic mulmul tests, but no other interesting fp combos, no dma stuff"

September 16, 2018

ECC was discussed as it would disprove the bitflip hypothesis. More info here: https://en.wikipedia.org/wiki/ECC_memory

Some confusion occurred after users used the VR4400 manual to assume ECC exists in VR4300 too. (VR4300 is the processor used by the N64) It was later discovered that VR4300 didn't have ECC.

According to the "VR4300, VR4305, VR4310 64-Bit Microprocessor User Manual",

"VR4300 does not have a parity check function, however, its parity error register (26) and cache error register (27) do not practically operate. These registers are defined to maintain compatibility with the VR4200."

"Because the VR4300 does not check data by using a cache parity, a parity error exception does not occur."

September 29, 2018

A bruteforcer was proven to work to find a glitch where the racing penguin slid off the slide. They tried the same program for the TTC upwarp, but it wouldn't reproduce the glitch.

"This situation is similar to that surrounding the TTC upwarp glitch in that we had footage of the glitch being done, but not a TAS recreation of it. But in this case, we actually were able to reproduce the glitch just from footage of it, whereas the TTC upwarp glitch still hasn't been reproduced. For the record, we've also tried brute forcing the TTC upwarp, but that didn't end up reproducing the glitch." - Pannen, description from CCM Racing Penguin Falling Off the Slide[11][12]


References