Skip to content

You can make these.

Build real games. Learn what makes them work.
Explore different ideas, genres and ways to program across machines and languages.

Dash on the NES, from the 6502 assembly course
Can you time the jump?
Dash · NES · 6502 assembly.

Different games.
Different possibilities.

Safe Cracker on the Commodore 64, from the BASIC course
Can you crack the code?
Safe Cracker · Commodore 64 · BASIC.

Dodge meteors, crack a code, guide sheep home or time a jump. Each game explores different ideas and the character of its machine.

Never programmed before?

Start with The Basics: give instructions, remember a value and ask for input. No machine or language to choose yet.

Start with The Basics

Different Machines.
Different Ways In.

Choose the machine or language that interests you. The Spectrum is one starting point; the C64, Amiga and NES have their own routes.

Explore the full systems directory

Build Things.
Understand More.

Lessons guide the work. Shared subjects help you open the ideas behind it, and follow them beyond one game, language or machine. Start with the question you have.

Foundations

Explore how programs work: decisions, repetition, structure, numbers and bits. Pseudocode, diagrams and experiments keep the idea separate from a language’s syntax.

How can bits represent a number?

The same bits. Two ways to read them.

Binary
00001010
Decimal
10

Representation is an idea you can take to every system.

A BASIC dice experiment showing six counts and a coloured frequency chart
Roll, count, compare. A sample of 120 dice rolls.

Maths for Games

Explore chance, direction and movement through experiments you can change. Build a dice experiment, compare sample sizes, or turn coordinates into an aimed shot.

Explore chance and aiming

Hold right. Let go.

ResponsiveStopped

Marker

SlipperyStill moving

Marker

HeavyStopped

Marker
The same input, three responses. A moment from the Game Feel comparison.

The Craft

Make deliberate choices about how a game plays. Explore controls, movement and feedback, then test what changing one rule does to the experience.

Try the Game Feel playground

Shared subjects are useful places to enter or return to. They are not a compulsory course to finish before making a game.

Same Curiosity.
Different Possibilities.

See how the lessons use each machine’s character. These are captures from the current courses, rather than a promise that every route has the same coverage.

Safe Cracker

Commodore 64 · BASIC

Can you crack the code? Make a guess, read the clues and narrow the search.

Learn variables, decisions and repetition.

Explore Safe Cracker
Safe Cracker, a real Commodore 64 · BASIC curriculum capture
Safe Cracker · original course capture, 416 × 312.

Dash

NES · 6502 assembly

Can you time the jump? Read the controller, avoid the hazard and gather coins.

Learn controller input, movement and collisions.

Explore Dash
Dash, a real NES · 6502 assembly curriculum capture
Dash · original course capture, 256 × 240.

Flock

Commodore Amiga · 68000 assembly

Can you get the flock home? Dodge the traffic, cross the stream and fill the fold.

Learn hardware sprites, collisions and game states.

Explore Flock
Flock, a real Commodore Amiga · 68000 assembly curriculum capture
Flock · original course capture, 768 × 576.

One Game.
One Small First Step.

Meteor Storm’s first lesson moves pixels across a byte boundary. A bit that leaves one byte must arrive in the next. That small idea is the beginning of the ship’s movement.

Start Meteor Storm

Carry a pixel into the next byte

Before  10000001 00000000
After   01000000 10000000

The rightmost bit crosses the boundary. Nothing gets lost.

New to assembly? Begin with Meet Assembly

What Will
You Make?

New to programming? Begin with The Basics. Have a machine in mind? Choose its route and find something you want to make.