Skip to content

Meet the Machine

NES · Assembly

The assembly on-ramp — meet the 6502 and the NES one idea at a time, before you build a thing.

18 units

Start with Assemble and Run Browse lessons

What this is

Not a game — a bridge. Meet the Machine moves you from a high-level mental model into the console’s own, one small idea at a time, so that when you build your first game nothing feels like magic.

Short units, each teaching exactly one thing and showing it on screen the moment it runs: a backdrop that changes colour, a tile that appears because you poured it through the PPU’s hatch, a character that moves because you read the controller. By the end you can read a register and memory view, paint the screen through the PPU, build an IF from compare-and-branch, run code from the NMI once a frame, read the joypad, loop, call a subroutine, and — most importantly — debug a machine that does exactly what you said, even when you were wrong.

Who it’s for

You’ve met variables, loops, conditionals and subroutines somewhere — the Foundations modules, our BASIC course, or any language. New to programming entirely? Start with The Basics first; this track assumes those foundations.

Come from the Commodore 64 Primer? You’re ahead — the NES runs the same 6502 family, so every CPU idea transfers. What’s new is the machine around the chip: a console that gives you nothing for free.

The shape

  • What the machine is — the build-run loop, registers, bytes, memory, the PPU and its window, colour and the palette, the shapes in CHR.
  • What it can do — decisions, the frame heartbeat (NMI), the joypad, indexing, counted loops, subroutines and the stack.
  • Rounding out — arithmetic and the carry flag, working with bits, numbers bigger than a byte.
  • The mindset — there’s no safety net; you debug by observing, not by reading errors.

You won’t have built a game yet — that’s the point. You’ll have built the understanding a game needs. Next stop: Dash.