Skyline
Your first C64 program: build a city by writing straight to the screen. POKE blocks into screen memory, light the windows from colour memory, randomise the towers, and set the hour with two registers — a cityscape that composes itself.
In Meet C64 BASIC you learned that the screen is
memory — POKE a block into an address from 1024 onward and it appears, and the colour
lives separately at 55296. Skyline turns that one idea into a picture: a city of towers
that builds itself out of black, lights its own windows, and never looks the same twice.
There's no input and no game loop here — Skyline is a canvas. It's the first program in Volume 1 because everything later (a rover you drive, a lander you fly) is drawn the same way: characters and colour POKEd to the screen by address. Learn to compose a still picture first, and motion is just doing it again, faster, in a loop.
What you'll build:
- A single block placed by the
1024 + R*40 + Cformula - A tower from a
FORloop, then a row of towers from a nestedFOR - Lit windows, drawn from colour memory alongside the towers
- Random heights and random windows, so no two cities match
- A dusk sky and border set by two registers — the hour of the whole scene
6 units. About 5–6 hours. This builds straight on Meet C64 BASIC — start there if the screen-as-memory idea is new.
Unit roadmap
The grid
One block, placed by address — then a tower from a loop
A skyline
Nested loops raise a row of towers, and colour lights the windows
A city of its own
Randomness makes every city different; two registers set the hour