HackerTubewatch
Surprise me
Frame from I made a NES emulator in 15 minutes Plays via YouTube's privacy-enhanced embed

I made a NES emulator in 15 minutes

3 videos recommended on HN
YouTube
3 HN users recommended this tutorial5 months2013–2022 score 5.5
Years with an HN recommendation, 2007–2026

HN programmers admire it as a clean, clever demonstration of emulator design and as the standout of a favorite programming YouTuber.

Bisqwit writes a NES emulator in C++ in about 15 minutes of tool-assisted, sped-up coding, narrated with captions. It shows an accurate emulator built with a compile-time generated 6502 instruction table. Part 2 covers compiling and running it.

“Here's a very clean and clever NES emulator in C++ by Bisqwit of TAS fame” (HN, 2015)

1 strong recommendations · 4 recommendations · 4 citations · Tutorials · intermediate

9 Hacker News comments

From the HN archive; up to 20 kept per video, favoring different commenters. Recommendations first.

@petercooper Jan 2019 Strongly recommends
on HN thread Let’s Create a Speech Synthesizer in C++17 [video]
Agreed. My favourite programming YouTuber by a long stretch. If anyone is unfamiliar with him and wants to watch some of the "classics" I'd recommend these: His "cracking videogame passwords" series: [link] Creating a Doom-style 3D engine in C: [link] Creating a Rogue-like game in C++11: [link] Creating a PIC16 emulator and NES music player: [link] Creating a NES emulator: [this video] Creating a DOS VGA raytracer: [link]
Classic video among favorite programming YouTuber's work.
@petercooper Apr 2014 Recommends
on HN thread Ask HN: Your favorite YouTube channels?
Read more
[link] record high quality videos at many programming conferences each year and then share the recordings on YouTube. So much to enjoy here, especially if you're open source leaning, like most of the events they do. O'Reilly puts up lots of good stuff at [link] although the webinar recording quality leaves a lot to be desired. A real random set of tech topics though and often something worth watching. Entrepreneur - [link] - usually puts up lots of short videos with a business tip in or something. Sometimes longer interviews. Usually worthwhile if a little superficial at times. The guy who founded Something Awful has a ridiculously addictive channel - [link] - he generally plays horrifically poorly produced indie games with his sidekick Shmorky and I could listen to their absurdist banter all day. It's a bit of a mish mash but [link] always blows my mind when he does his coding videos such as coding a NES emulator in C++11: [this video] [link] is awesome if you're into supercars. He's currently doing a tour of European supercar events and factories putting up a video each day. Far Lands or Bust - [link] - is a guy who started to walk towards the 'far lands' in a Minecraft maps years ago. He's something like 10% of the way but is still plodding along recording his progress. This is a real pilgrimage with all the highs and lows that entails. MrThaiBox123 - [link] - is a British IT expert who seems to have an endless supply of cash to buy gadgets, phones, and amazing computer setups.
Coding videos like building a NES emulator.
@atesti Mar 2015 Recommends
on HN thread Nes emulator written in go
Here's a very clean and clever NES emulator in C++ by Bisqwit of TAS fame: [this video] He presents the code in the style of a tool assisted run, typing it in in high speed. I never saw templates used like that to create the unrolled CPU dispatcher
Clean NES emulator coded at tool-assisted speed.
@petercooper Oct 2016 Recommends
on HN thread Ask HN: What is your favorite YouTube channel for developers?
[link] is by far my favorite and I've spent many hours watching him. He does things like create a Doom-style engine from scratch: [link] .. create a NES emulator: [this video] .. work back from a C++17 example to show why new C++ standards are needed: [link] .. and even building a Tetris clone in GW-BASIC: [link] .. Right now, he's doing a series on cracking 80s videogame passwords: [link] Sirajology - [link] - is another interesting one. He moves a bit too quickly for me, but does things like explain machine learning in 5 minutes or how to generate music with systems like Tensorflow.
Channel favorite that creates a NES emulator.
@molticrystal Oct 2022 Recommends
on HN thread Smolnes: A NES emulator in less than 5000 significant bytes of C++
Those who enjoy this might also enjoy "Creating a NES emulator in C++11" [0] [1] [2] while not short in bytes of code(space) there is a nice video series short in minutes(time). Bisqwit takes you on a 30 minute tool assisted coding journey of making an NES emulator and also provides a 15 minute followup Q&A video explaining different aspects. [0] [this video] [1] [link] [2] [link]
Tool-assisted coding journey of making an NES emulator.

Citations, criticism and jokes

@GhotiFish Oct 2013 Cites it
on HN thread A quick look at the Redis source code
Yes. It is certainly more pithy. ACTUALLY! It reminds me of a technique Bisqwit used when he made his emulator. He used strings to define the behavior of certain instructions, the strings were actually interpreted at compile time. Though I think this is a C++ specific trick. [this video] he brings in the instruction table at 1:30
Bisqwit's compile-time instruction table technique.
@grapeshot Dec 2013 Cites it
on HN thread Show HN: I made an easy-to-understand 6502 emulator in pure C
It's possible to do something like that in C. In C++, you can even do some template magic to create all the appropriate functions for each opcode based on something like the original instruction decode ROM. Brilliant and short code, but very difficult to write in the first place. Here's a very apropos example of this technique as applied to the 6502. [this video]
Template-generated opcode dispatch for 6502.
@0xcde4c3db Nov 2018 Cites it
on HN thread Goboy: Multi-Platform Nintendo Game Boy Color Emulator Written in Go
The main advantage to NES emulation is that it's a very mature area of study. High-quality documentation is much more readily available than for other systems, and there's more public discussion of the specific problems that NES emulator authors encounter (both primarily on nesdev.com [1] [2]). There's even a sort of tool-assisted speedrun of writing an accurate NES emulator, if you're into that sort of thing [3] [4]. [1] [link] [2] [link] [3] [this video] [4] [link]
Tool-assisted speedrun of writing an accurate NES emulator.

Video list and Hacker News comment labels from HackerTube (prompted by @karpathy), released under ODC-By 1.0, built on the open-index/hacker-news archive. Hacker News data is provided by Y Combinator; comments remain the work of their authors. Video titles, channel names and thumbnails belong to their creators and are shown via YouTube. HackerTube Watch is an unofficial edition. Data export of 2026-10-31.

Keyboard shortcuts

/
Search
j k
Next / previous video
r
Surprise me
l
Like (video page)
w
Watch later (video page)
?
This help
Esc
Close