Supermario speedrun for less than 1 second!

in #funny8 years ago


Speedrun - way of fast completing the game. Usually, it does not use the usual cheats or codes. But glitches are allowed to use games like opportunities to get outside of the main screen and go over all levels. Proponents of this method of passing game show sometimes surprising results. For example, Doom 2, some craftsmen finished are in a couple of tens of minutes.

The special love of speedrunners - to Super Mario. A person can go through Super Mario 8-bit consoles in about 6 minutes. Two years ago, a new direction - speedrun robot. The secrets of the game are almost not used here, we are talking about the passage of all levels of a special computer system. It does not presses any buttons, but connects directly to the game controller port. Recently, such system is a new record the passage of the game - to pass all levels in less than a second.

What is the secret of the robot? The new working differential system pulse code modulation NES. Single-bit data stream is used for playing basic audio samples from some of the games, including Super Mario Bros. 3.



It turned out that there is a small bug that causes the channel such that read data leads to the fact that sometimes performs additional SPU read operation of data from one of the input channels (controllers) in hardware NES. Result - pressing the button is recorded, although it was not clicking. In the current game, developers are forced to question their system controller data input channel several times in the game frame.

The robot must make sure that the game does not register two identical pressing per frame. Otherwise, the game falls into an infinite loop, constantly monitoring the input data channel until it receives an interrupt request cycle for the next frame. In this case, the system begins to read instructions from the beginning of the memory.

A few frames play proceeds to the memory area where the data by pressing the controller buttons are reserved. Robot spidranner enters into this area of transition to the final code screensaver game. And all this - less than a second.

The system in topic, called micro500. It is able to emulate clicking on the button of the controller at a rate of 7984 per second. Clearly, the man is not capable. So far, it is only the use of micro500 for Super Mario Bros. 3. Another game, for example, Zelda II: the Adventures of Link already contains the code to break the cycle instructions.


The most interesting thing is that this is the official record. Creators of a computer system using a hardware bug in the prefix, the prefix does not modify the memory directly. All they are doing - exploiting feature "iron", which allows to execute third-party code. And they do all this using a controller - or rather, its hardware emulation of a proprietary system. However, speedrunners community divided. Some people believe that everything is correct. Second, in general, agree with it, but argue that it is not interesting, because the computer system of this kind ruins all the fun.