Bad Apple but it's played inside Super Mario Bros

(tasvideos.org)

75 points | by carlesfe a day ago ago

13 comments

  • userbinator an hour ago

    After checking each of the 256 cells, the cell with the lowest difference is chosen.

    This is essentially the fundamental operation of a vector quantizer codec, which was popular in the early days of lossy video compression due to its low processing requirements. The fact that this term doesn't appear in the article means the author has independently discovered and reinvented this theory, which is itself quite impressive.

  • mbStavola an hour ago

    I thought the audio was just overlayed on top, but it was streamed in via the controller. It sounds AMAZING, incredibly even on the console!

  • srcoder 10 minutes ago

    Awesome!!!

    Could it run doom?

  • baobun 21 hours ago

    Super cool.

    Is it mentioned anywhere how big the payload is? How many button presses? Are the audio samples "streamed" or does it all fit in NES RAM?

    • 100th_Coin 3 hours ago

      Hey, I'm the TASer who put this run together. This was 5.8 million inputs.

      I share the full assembly code in the tasvideos writeup: https://tasvideos.org/8991S#HereSTheAsmCode

      To summarize what I put in the writeup, the 7-bit PCM audio was streamed in at approximately 25 Khz, (reading from the controller and writing to address $4011 every 71 CPU cycles.) while occasionally dipping to 9 Khz while streaming in the graphics data.

    • gregdeon 4 hours ago

      The entire TAS file takes about 16 MB, far more than the 4 KB of RAM on the NES. During the audio + video playback, the TAS is streaming via the controller by making inputs roughly 500 times per frame (15 kHz).

      • ninjin 3 hours ago

        Indeed, if you want to see what is possible with only a Famicom (or NES) itself you can have a look at Little Limit's incredible Bad Apple "port" [1]. This recording is from an emulator [2], but I know from personal experience that it plays perfectly fine on my "New Famicom" (HVC-101). This is not to detract from how amazing the posted ACE is, but it is indeed different in terms of data limitations.

        [1]: https://littlelimit.net/bad_apple_2_5.htm

        [2]: https://www.youtube.com/watch?v=eNU1lzr_m4Q

        • korhojoa an hour ago

          I like this version. https://youtu.be/WPUYjDNks9Y

          It's impressive what can be done if a lot of effort is put in.

          • ninjin 38 minutes ago

            It really is impressive, but it is also fair to point out that it uses the MXM-1 mapper which only came into existence in 2022 [1]. I find it pointless to argue whether it is "cheating" or not as the technology it uses was used for other consoles at the time and it is fun to see new mappers like this, but it is, again, very different compared to keeping it within the realm of original Famicom/NES mappers and limits.

            [1]: https://somethingnerdy.com/unlocking-the-nes-for-former-dawn

        • lll-o-lll 3 hours ago

          Interesting. The visuals, presumably somewhat hand crafted, look infinitely better in this rendition. The sound is much less compelling, however.

    • larsiusprime 4 hours ago

      There’s a full write up. Audio is streamed as button presses.

  • atulvi 3 hours ago

    can this be done on real hardware with a modified controller?