A textured first-person shooter and a self-driving neon city, running on a stock Commodore 64. Sixty-four kilobytes, one megahertz, one floppy disk. No cartridge, no RAM expansion.
Machine
6510 · 1 MHz · 1541
On the disk
4 worlds, 1 floppy
Built
2020 → 2026
The garden of ruins — a real frame from the disk
01 The game
One floppy, four worlds
Put the disk in and type LOAD"*",8,1. The C64 takes you from a sunset over the sea to a Doom-style dungeon, then hands you a car in a neon city that drives itself through a six-minute day. Find the way out once more and the city comes back twice the size.
The intro · “I want to code a C64 game”
01 Part one
A sunset while the game loads
A fisherman and the devil sit in a boat at sunset. The fisherman wants to make a C64 game — a shooter, a city, all sixteen colours, and it has to run at seven to ten frames a second. The devil thinks he is crazy — until he is offered the part of the main villain. Twenty-one speech bubbles in a handwritten font, eight seagulls in the sky, a slow song on the SID.
Behind it all the game is loading. PRESS BUTTON appears as soon as it is ready; if nobody presses, the story plays to its end and the game starts by itself.
The dungeon · 21 rooms, 35 demons
02 Part two
A shooter in the spirit of Doom
A menu in red letters with fire and smoke behind it, a melt, and you are in: a lobby, a hell hall, a nukage plant, an aqueduct, a gothic keep, a garden of ruins under the sky — 21 rooms, each with its own light. Imps, soldiers and blobs wait for you or come looking; grab a keycard and a new group wakes up somewhere.
Doors slide open when you shoot them, nine of them only with the right card. Seven teleport pads, medkits, armour, ammo boxes that come back a minute later, and your own face on the status bar turning pale as you get hurt. Press M for the map — the game keeps running underneath. The way out is the EXIT sign.
The city · 18:11, sunset
03 Part three
A city that drives itself
Through the EXIT and you are at the wheel of a car in a neon city by the sea. Hold W and it follows the road; tap Q or E and it takes the next street left or right by itself. Touch the steering and you are driving again.
A whole day goes by in six minutes. Tall towers stand over the low houses in front of them. The sky changes colour step by step, the sun goes down between the towers, the windows go dark late at night and light up again before dawn. Six GPS marks to reach, with your split times on the status line.
The double-size city · four times the area
04 Part four
Then the city again, twice the size
Back to the dungeon, out through the EXIT once more, and the city returns at 144 by 126 cells — four times the area, on the same floppy, at about the same driving speed. One disk side takes you all the way: the intro, the dungeon, the city, the dungeon again and the big city.
02 Watch
How it works, played for real, and the whole disk
How disk 0_1_0 works, in seven chapters: the picture, the engine, the dungeon, the sound, the city, the floppy. A play-through with no cheats, from the menu to the EXIT: all 35 enemies, the four keycards, real damage. And the earlier disk in one take, from LOAD"$",8 to a night drive through the city.
Disk 0_1_0, no cheats: the menu, the melt, then the whole dungeon to the EXIT. 50 frames a second, an info panel on the left.The earlier disk 0_0_3 in one take, from LOAD"$",8 to a night drive through the city.
How it works and the play-through show disk 0_1_0, the one you can download here. The whole-disk film shows the earlier disk 0_0_3. More films are on the channel: youtube.com/@C64.MonsteR. YouTube is only contacted when you press play.
03 Pictures
Real frames, no touch-ups
Every picture here is a frame of the game as the C64 draws it — the dungeon from one play-through, the city through one whole day.
04 Tech
Impossible, in numbers
Full-screen textured 3D, colour, music and sound on a machine from 1982 that has no graphics card. The 6510 draws every column of the picture itself, at about one megahertz.
1MHz6510, PAL, 64 KB of RAM, a 1541 drive
~11fpsin the dungeon over a whole game · below 7 for only 0.6 % of the time
~9.5fpsdriving through the city · 13.6 while steering
42colour rows in the dungeon's picture (38 in the city)
2buildings in one screen column: in the city a ray goes on past a low house to the tower behind it
138bytesfree in the dungeon's 64 KB
45blocksfree on the floppy, after everything
Colour every few lines
A normal C64 screen gives each block of 8 × 8 pixels its own few colours. ICRC changes the colours every few lines instead — a trick called FLI — so the 3D view gets fine colour rows at eye height, where the walls, the doors and the demons are, and wide rows up at the ceiling and down on the floor. The interrupts that set the rows, the status bar and the sound take about 4,000 of each frame's 19,656 CPU cycles; the rest goes to drawing.
One ray, more than one wall
Most raycasters stop at the first wall a ray meets. In the city a ray can go on: a building that may hide something taller carries a flag in its map cell, and a ray that hits it walks on to the next wall. One screen column then holds two buildings at different heights, each with its own distance, texture and light — the tall towers you see standing over the low houses in front of them. Which cells get the flag was worked out in advance from thousands of views.
Written by hand
Pure 6502 assembly, assembled with Kick Assembler, with every precalculated table generated by QBasic programs. Standing still costs almost nothing: a view that does not change is not drawn again.
The dungeon's picture and its colour rows: the thinner the row, the finer the colour.
The directory of the real disk, as the C64 lists it: nineteen files, then the hero's face in PETSCII — twenty-one extra lines that are not files at all.
Loading with the lights on
On a 1541 the game first sends its own small loader into the drive, and the main program arrives in about ten seconds. After that Krill's loader takes over: the picture, the music and the sprites keep running while the next part loads, with colour stripes in the border.
Any drive
A 1571, a 1581, an SD2IEC or JiffyDOS: the same disk still works, with the computer's own loader. Every part is packed and unpacks itself; the city unpacks in about two seconds.
Controls
Menu
Control: 1351 mouse, joystick in port 2 or keyboard · sensitivity: how fast you turn
Dungeon · mouse
Move the mouse to turn, left button fires, right button walks · WS walk · AD strafe (step sideways) · Space run on / off
Dungeon · joystick
Port 2: left and right turn, up and down walk, fire fires · AD strafe · Space run on / off
Dungeon · keyboard
WS walk · AD turn · QE strafe (step sideways) · Space fires · hold Shift to run
Dungeon extras
M map: off, small, big · N music · T the next room · Return hide the map, the gun and your face · X leave
Cheat
I in the dungeon: on / off. Full ammo and life, no damage, and every key door opens on touch.
City
W gas, S brake and reverse, AD steer · Q/E drive itself to the next street left or right · M mini map · T to the GPS mark
06 Download
Take it home
The demo disk, the four games as single files, and the tech sheet. Direct downloads — no form, no email.
How to play
In VICE: start x64sc (PAL) with true drive emulation, attach the disk image.
Type LOAD"*",8,1 and then RUN. Want to see the face first? LOAD"$",8 and LIST.
On a real C64: write the image to a 1541 floppy, or put it on an SD2IEC — it loads with the computer's own loader there.
Pick the mouse, the joystick or the keyboard in the menu, then START GAME. Stuck? In the dungeon press I: full ammo and life, no damage, and every key door opens. Press I again to turn it off.
Credits: game by C64 MonsteR · dungeon music “Floor It” by Fjaru, arranged for the SID · city music “Neon Outrun” and the intro's song by C64 MonsteR · Loader by Krill · ZX0 by Einar Saukas. This is a demo disk, not the finished game.
07 Who
C64 MonsteR
I'm Denis. ICRC started on 8 September 2020 as a hobby project; the autumn of 2026 turned it into this demo disk.
It is a demo, not the finished game. If you make videos, run a magazine or just have a C64 on the desk, I'd like to hear what you think — and if it runs on your machine, tell me which one.