Skip to content
HomeVideos
AllLongsCategoriesPlaylists
BooksBlogsPodcasts
HistoryListsWatch laterLiked videosFollowing

The videos, books, blogs and podcasts Hacker News keeps recommending, all in one place.

VideosBooksBlogsPodcastsAboutPrivacySettings

Data from Hacker News, HackerTube, HackerBooks, HackerBlogs and Open Library. Credits · Not affiliated with Y Combinator.

HomeVideosBooksBlogsPodcasts
Ctrl K

    [TAS] Pokémon Yellow - Arbitrary Code Execution

    MrWint

    4 HN recommenders · recommended in 6 months, 2020–2025

    YouTube

    7:45 · 598K views · Feb 5, 2017

    A tool-assisted speedrun of Pokemon Yellow by MrWint that uses arbitrary code execution to push Game Boy hardware to its limits. Through crafted inputs it injects code and ends up running other programs, such as Tetris, inside the game.

    HN points to it as the standard demonstration of arbitrary code execution on a Game Boy, and of glitches and bugs being turned into a working computer.

    Games & Game DevelopmentSpeedrunning, glitches & game hackingGame history & retro gaming
    1. 6:31
      SNES Code Injection -- Flappy Bird in SMWSethBling3M views • 10 years ago
    2. 3:15
      [TAS] [Obsoleted] GBC Pokémon: Yellow Version "arbitrary code execution" by Fracta[...] in 03:14.15TASVideosChannel154K views • 13 years ago
    3. 2:29
      [TAS] Super Mario World "Arbitrary Code Execution" in 02:25.19 by MasterjunMasterjun3943K views • 12 years ago
    4. 6:08
      Super Mario World: Arbitrary Code Injection At AGDQ 2014, Performed Liveinvalidation225K views • 12 years ago
    5. 58:44
      TasBlock at AGDQ 2017: TASBotTASVideosChannel398K views • 9 years ago
    6. 1:12:43
      Ocarina of Time TAS by dwangoAC, TASBot, Savestate, Sauraen in 53:05 - Summer Games Done Quick 2022Games Done Quick564K views • 4 years ago
    7. 22:21
      Reverse emulating the NES to give it SUPER POWERS!suckerpinch1.1M views • 8 years ago
    8. 11:55
      Super Mario World Credits Warp ExplainedFrieze638K views • 11 years ago
    9. 36:41
      TASBot plays Brain Age by micro500, xy2_ in 20:06 - Awesome Games Done Quick 2016 - Part 154Games Done Quick6M views • 10 years ago
    10. 39:03
      RustConf 2020 - Closing Keynote by Siân GriffinRust Programming Language9.8K views • 6 years ago
    11. 9:34
      New NES Tetris Technique: Faster Than Hypertapping!aGameScout5.1M views • 5 years ago
    12. 12:09
      How I Fixed a 10 Year Old Guitar Hero Bug Without the Source CodeExileLord404K views • 9 years ago
    13. 5:58
      MarI/O - Machine Learning for Video GamesSethBling12M views • 11 years ago
    14. 24:56
      The Legend of Zelda: Ocarina of Time Speedrun in 22:38, live at AGDQ2013CosmoSpeedruns1.9M views • 13 years ago
    15. 24:32
      How We Solved the Worst Minigame in Zelda's HistoryLinkus71.1M views • 6 years ago
    16. 5:22:14
      The Complete History of the A Button ChallengeBismuth2.4M views • 3 years ago
    17. 39:47
      How lucky is too lucky?: The Minecraft Speedrunning Dream Controversy ExplainedStand-up Maths8.4M views • 5 years ago
    18. 24:39
      SM64 - Watch for Rolling Rocks - 0.5x A Presses (Commentated) [OUTDATED]pannenkoek20125.5M views • 10 years ago
    19. 18:20
      FIXING the ENTIRE SM64 Source Code (INSANE N64 performance)Kaze Emanuar3.2M views • 4 years ago
    20. 44:11
      27c3: Console Hacking 2010 (en)Christiaan00833K views • 15 years ago

    6 comments from Hacker News

    1. @stepupmakeupAug 2022· in “Tetsuji: Remote Code Execution on a GameBoy Colour 22 Years Later”

      One of the crazier uses of ACE in Gameboy Pokemon games exploits is this "speedrun", by MrWint: this video ([TAS] Pokémon Yellow - Arbitrary Code Execution) I've timestamped the part where the actual exploit begins, after all of thesetup. It's worth mentioning that this isn't faked or edited in any way, and it's possible to download the input data and replicate on a emulator yourself.

      Strongly recommendsView on HN
    2. @alexb_Feb 2022· in “Accidentally Turing-Complete”

      It mentions Pokemon Yellow, but really any code run isn't really "run in the game" more so that it uses bugs to hack together alternate instructions for the game boy to execute. Good example: this video (skip to 1:20 for craziness)

      RecommendsView on HN
    3. @DweditMay 2024· in “Hackers discover how to reprogram NES Tetris from within the game”

      Sometimes even after you've come up with the exploit, you can create something really beautiful for the console to run afterwards. Pokemon Yellow: this video Super Mario World: [LINK]

      RecommendsView on HN
    4. @alex-moonSep 2025· in “Bad Apple but it's played inside Super Mario Bros”

      There is an amazing video of a similar exploit in Pokémon Yellow where they basically run a bunch of different games: this video

      RecommendsView on HN
    5. @DougBTXSep 2020· in “Show HN: A SQL database implemented purely in TypeScript type annotations”

      At the end of the day, if you look at a low enough level in the stack, there are no types. In a very concrete way, types are a high-level idea, and if the high-level stops matching the low-level, then bugs crop up. See for example Tetris implemented in Pokémon Yellow via runtime code injection: this video Their compiler missed that! So I think there's good reason to switch from talking about types as "assumptions", and think of them as compile time "assertions". Something lower-level in the stack could break the high-level code, but that doesn't make the high-level code useless, just imperfect.

      CitesView on HN