Top all-time · #1769
Imran Nazar
Personal blog · imrannazar.com · on HN as Two9Aprogramminggames
Imran Nazar's personal blog at imrannazar.com covers programming and games. Since 2010, 41 different Hacker News readers have linked it 68 times, most often “GameBoy Emulation in JavaScript: The CPU”. It is still writing: the last post was on 2026-07-15, and you can follow it by feed.
Too few sampled comments (20) to say how often HN recommends it.?
Why HN links it
HN readers link Imran Nazar's JavaScript Game Boy emulator article series as a detailed guide to building an emulator, plus his posts on binary trees, Commodore hardware and fonts.
- Recommended for · 7 comments
- Detailed explanations of emulator design and structure; one commenter found it very helpful and enjoyed reading it; another called it a good start and an excell
Summarised by Claude from a sample of 20 HN comments that link here. Each comment is marked recommending, critical or neutral (citing without judging); how this works.
Articles on emulation and software development, with the occasional bit of sci-fi thrown in.
Most-linked posts?
- GameBoy Emulation in JavaScript: The CPU16 people · 16 mentions · first linked 2010-07-22
- Gameboy Emulation in Javascript and HTML58 people · 8 mentions · first linked 2010-11-06
- Pong Wars on the Commodore 643 people · 3 mentions · first linked 2026-07-15
- Why was the Commodore 64 disk drive so slow?2 people · 3 mentions · first linked 2026-01-08
- GameBoy Emulation in JS Part 8: Interrupts2 people · 2 mentions · first linked 2010-11-06
- Extended Text Mode on the C642 people · 2 mentions · first linked 2018-08-01
What Hacker News says?
Porting http://imrannazar.com/GameBoy-Emulation-in-JavaScript to Typescript as a way to learn about how to write an emulator, as well as taking advantage of newer JavaScript APIs (e.g. requestAnimationFrame, ArrayBuffer etc) that were not available when this series of articles was written in 2010. We had a gameboy as a kid, but the ZX Spectrum (also Z80 CPU-based) meant more to me so hope to take what I learn from t…
Comment linking /GameBoy-Emulation-in-JavaScript
on “Ask HN: What are you learning?”Submitted De-Googling TOTP Authenticator Codes as a story · 105 points
HN discussionHow it compares with the 12 years old javascript (my most beloved) simulator with detail explanation I wonder : https://imrannazar.com/GameBoy-Emulation-in-JavaScript:-The-...
Comment linking /GameBoy-Emulation-in-JavaScript:-The-CPU
on “Writing a Game Boy Emulator in OCaml”Submitted Steganography with Brainfuck as a story · 75 points
HN discussionThere was a detailed writeup of a different Gameyboy Emulator in Javascript: http://imrannazar.com/GameBoy-Emulation-in-JavaScript
Comment linking /GameBoy-Emulation-in-JavaScript
on “JavaScript GameBoy Advance Emulator”Submitted Let's build a JPEG decoder: Huffman tables as a story · 69 points
HN discussionIf you're interested in making a GB emulator here are a few resources that helped me when I did just that a few years ago: - An intro to making a GB emulator in JS (it doesn't matter if you don't plan on using JS, it still explains the basic concepts pretty well): http://imrannazar.com/GameBoy-Emulation-in-JavaScript:-The-C... - Opcode map (note that the GB CPU is not a stock Z80, it has different timings, different…
Comment linking /GameBoy-Emulation-in-JavaScript:-The-CPU
on “GameBoy CPU Manual (2013) [pdf]”Submitted Gameboy Emulation in Javascript and HTML5 as a story · 47 points
HN discussionstoring the tree as an MPTT/NestedSet would massively simplify this, without any subquery shenanigans. https://en.m.wikipedia.org/wiki/Nested_set_model https://imrannazar.com/articles/modified-preorder-tree-trave...
Comment linking /articles/modified-preorder-tree-traversal
on “SQLite: Outlandish Recursive Query Examples”Submitted Let's Build a JPEG Decoder, part one: Exploring the concepts of JPEG compression as a story · 21 points
HN discussionI believe you're thinking along the right lines. If you're really curious to learn more, check out this series which I have enjoyed reading: http://imrannazar.com/GameBoy-Emulation-in-JavaScript
Comment linking /GameBoy-Emulation-in-JavaScript
on “I made an NES emulator – What I learned about the original Nintendo”Submitted GameBoy Emulation in JavaScript: Graphics as a story · 15 points
HN discussionMany years ago, I wrote up a post on doing this kind of thing in plain DOS .com files: https://imrannazar.com/articles/x86-printable-opcodes It's good to see the principle can be expanded to EXEs, I'll have to dig into this some more.
Comment linking /articles/x86-printable-opcodes
on “Research paper is also an executable x86 program [pdf]”Submitted Extended Text Mode on the C64 as a story · 12 points
HN discussionSure! This walkthrough[1] writing a Gameboy emulator in Javascript was very helpful in seeing how an emulator should be structured. -- Though the full source is available: the actual tutorial is more of a guideline that introduces you to the hardware and structure of the emulator. It often shows code-snippets instead of working code. The Gameboy CPU Manual[2] and OP code chart[3] have been invaluable tools. In my ex…
Comment linking /GameBoy-Emulation-in-JavaScript
on “An NES emulator written in Go”Submitted The Curious Case of Debian 12 and the SSH Failure as a story · 7 points
HN discussionIf you want to read on about how to go about building one of these, check out my friend Imran Nazar's very detailed jsgb article series: http://imrannazar.com/GameBoy-Emulation-in-JavaScript Also, the source code: https://github.com/Two9A/jsGB
Comment linking /GameBoy-Emulation-in-JavaScript
on “Super Mario Brothers GameBoy (and all GameBoy games) ported to HTML5”Submitted Let's build a JPEG Decoder as a story · 5 points
HN discussionI should write that down; -Z would've been really useful when my SSH server was falling over in a heap and I was left scrolling through strace to work out what happened. I wrote that experience up last week, for what it's worth: https://imrannazar.com/articles/linux-upgrade-fail
Comment linking /articles/linux-upgrade-fail
on “Why use strace in 2023? [video]”Submitted GameBoy Emulation in JavaScript: GPU Timings as a story · 5 points
HN discussionInvariably been linked before, but http://imrannazar.com/GameBoy-Emulation-in-JavaScript:-The-C... also addresses basics of emulator design.
Comment linking /GameBoy-Emulation-in-JavaScript:-The-CPU
on “How do emulators work and how are they written?”Submitted GameBoy Emulation in JavaScript: The CPU as a story · 5 points
HN discussionhttp://imrannazar.com/GameBoy-Emulation-in-JavaScript:-The-C...
Comment linking /GameBoy-Emulation-in-JavaScript:-The-CPU
on “GameBoy Programming Manual ”Submitted GameBoy Emulation in JavaScript (2010) as a story · 3 points
HN discussionLet's give this a blast. SEEKING WORK - REMOTE I'm a PHP/JS developer, with a background in the embedded field. You might know me from the DSemu and jsGB projects, building games console emulators in C++ and JavaScript respectively. If you need PHP/MySQL/JS work done, I'm available on a remote-work basis. I'm also open to embedded C/assembly work, if you have any. Email address on my profile, articles and code sampl…
Comment linking /
on “Ask HN: Freelancer? Seeking freelancers? (April 2011)”Submitted GameBoy emulation in JavaScript (2011) as a story · 3 points
HN discussionIt's also worth checking out Imran Nazar's excellent writeup on creating a Gameboy emulator in javascript: http://imrannazar.com/GameBoy-Emulation-in-JavaScript Direct link to the first section, the CPU: http://imrannazar.com/GameBoy-Emulation-in-JavaScript:-The-C...
Comment linking /GameBoy-Emulation-in-JavaScript:-The-CPU
on “Full Gameboy Color Emulator in Javascript”Submitted GameBoy Emulation in JavaScript: The CPU (2010) as a story · 3 points
HN discussionThere used to be a demo floating around where someone had hacked this together with the firefox nightlies' support for the orientation sensor that allowed to your drive the kart by tilting your device. It worked for macbook as well as smartphones. Unfortunately the page is now down :( http://dougt.org/random/orientationdemo/index.xhtml In lieu of that, I present to you something much more interesting: A complete ste…
Comment linking /GameBoy-Emulation-in-JavaScript:-The-CPU
on “JavaScript Super Mario Kart”Submitted GameBoy Emulation in JavaScript as a story · 3 points
HN discussion