Skip to content

Curriculum map

How the curriculum fits together.

Start with a system track or explore the shared subjects first. Lessons explain the immediate task and connect to deeper ideas when they help. These are parts of one curriculum, not stages you must complete in order.

Build and investigate

System tracks

Guided projects in a particular language and machine. Learn its syntax, tools and hardware as you make things.

Programming concepts

Foundations

Explore instructions, representation and execution through pseudocode. Start here or visit an idea when it becomes useful.

Game-making concepts

The Craft

Shared maths and design explanations in development. Current outlines show the intended coverage.

Context and reference

The Vault

An encyclopaedia connecting machines, games, people and the circumstances in which they worked.

Techniques to adapt

Pattern Library

Concrete implementations with assumptions and trade-offs, connected to lessons and particular machines.

Choose a starting point

Begin with what you want to make or understand

You can start a system track without completing Foundations. BASIC and assembly are independent entry points; one is not a qualification for the other. A track teaches its language and machine, with links to shared explanations.

Work through a project

Build in guided, runnable stages

Within a game, follow the development sequence: each stage explains what changes and gives you something to try. When a concept is unfamiliar, use its linked explanation and return to the game. You do not need to invent a project of your own to get started.

Shared layers

Explore the shared subjects.

Lesson counts reflect published lesson pages, not a claim that every planned topic is complete. An outline describes intended coverage.

Foundations

The BasicsWhat a program is, before any machine or language: instructions in order, a way to show things, a place to remember, and a way to ask.5 lesson pagesWorking It OutThe computer does arithmetic on values it did not have when you wrote the program, grows a box from its own value, and decides what to do with a leftover.3 lesson pagesDecisionsA program that reacts: test a value, choose between paths, keep a yes or no in a box, and join questions together.4 lesson pagesTruth TablesA way to write down every case a question can have, so you can see that two different-looking tests are the same test.3 lesson pagesRepeatingThree kinds of loop: a set number of times, until something happens, and only while something holds. The second one is the shape of every game.3 lesson pagesStructureLists, jobs with names, jobs that take a value and hand one back, and the one skill that separates getting it done from getting stuck.4 lesson pagesCounting in TwosHow a machine counts: binary, hex, two bytes together, and a minus sign made of nothing but switches.4 lesson pagesWorking the BitsThe tools that change a byte one switch at a time, slide the whole row, turn a letter into a number, and carry a fraction on a machine that only counts in whole steps.5 lesson pagesGates and the AdderThe same truth tables, built out of wire, and then wired into something that adds. This is where a machine stops being magic.3 lesson pagesFrom Source to SiliconThe instructions you write are not the instructions the machine runs. Something translates, and when it does the translating is the difference between a game that keeps up and one that cannot.5 lesson pages

The Craft

Machine routes

Where the ideas become code.

Every machine has its own route, and the systems directory is where they live — with what is shipping, what is in build, and what is planned, kept current from the catalogue rather than restated here.

Browse systems →

Trust layerSources & Standards

What counts as checked, cited, built, run and real.

Context layerThe Vault

The people, companies, games, hardware and culture around the lessons.

Practical layerSetup Guide

Emulators, toolchains, ROMs and the first run on a real old machine.