GERLA.CC

commodore 64 · pal e ntsc · v1.1.4

Ruote Fumanti

Race, jump the fords and outlast the police. Eight flat-out driving stages on a stock C64, written in 6510 assembly: traffic that won't move aside for you, fords and ravines to jump, and in the last stretch of every stage a police car that pulls alongside to push you off the road.

27 KB · C64 or 64C, PAL or NTSC · VICE or real hardware · free

Ruote Fumanti, cover illustration

cover illustration, not a screenshot: the C64 has sixteen colours and 320×200 pixels. The real screens are below.

What it is

A top-down driving game, with the road scrolling and you trying to stay on it. Traffic keeps its own pace and changes lane when it pleases: you overtake it, you hit it, or you land on it. Fords can't be driven round, they're jumped, and taking off needs ninety-five miles an hour: once you get there, the JUMP OK light comes on on the panel.

The inspiration comes from a classic arcade game that everyone will surely recognise, but with a few things done differently, and with engine, graphics and music written from scratch for the Commodore 64.

Ruote Fumanti, racing through traffic Ruote Fumanti, jumping the ford

Eight tracks

There are eight tracks, split across different environments, each with its own obstacles. Every track is 2304 rows long: just over eighteen thousand pixels to cover.

fords

No way round

You jump them, that's it. From standstill to 95 mph, the take-off threshold, takes 18 track rows; to 150, enough for a twenty-row ford, takes 55.

ravines

You fall, shrinking

Rock on both sides and a drop in the middle. If you don't make it, the car falls and shrinks as it vanishes into the depths. On the winter stages, sheets of ice take the place of ravines.

the police

Seven seconds, one on one

In the last stretch the traffic disappears, a police car arrives and jumping is switched off. One way out is left: hold your line, or push it off the road yourself. And that pays more than anything else in the game.

The panel tells you everything

Score, miles an hour, cars left, hits, time, the percentage of track covered and the JUMP OK light. The panel's lettering is made of sprites, not characters: that way it stays still while the road next to it scrolls, instead of jiggling with the scroll. Four lives, checkpoints along the stage, and a high score table with name entry. Two three-voice tunes on the SID, plus eight effects, and since 1.0.1 each can be switched off on its own: with the music off you hear the engines, yours rising with speed and the one of the car passing you, swelling as it comes close and fading as it goes.

Ruote Fumanti, the police car in the last metres of the track Ruote Fumanti, the finish line

Updates

1.1.4 · 30 September

No more restarts from the start line

After a crash you restarted far behind the point where you went off. The fault came in with 1.1, when the stages got longer for the duel: the counter of road covered went past zero on three stages, and the game sent you back to the grid. Now it counts the road you've actually covered, and on stage 2 you lose 30 to 190 rows instead of 750 to 1700. The tanker now turns up from stage 2 onwards, ravines included, while stage 1 keeps the trucks with no leaks. And the siren is back to the 1.1.1 one: I had rebuilt it badly during a memory clean-up.

PAL and NTSC are now one file: the game detects the machine at startup, so there's no right download to pick any more.

1.1.3 · 29 September

The oil tanker

A new vehicle, longer than the articulated lorry, in four colours, and it goes by roughly every half minute. Oil drops fall from the tap at the back and stay on the asphalt: hit one above 50 mph and you spin. The tanker can't be pushed off the road sideways, you bounce off it and lose speed: the only way to destroy it is to land on it, and it's worth the same points as any other car. It shows up on tracks 1, 4, 5, 6 and 8; where the ravines are, which take the same memory, an ordinary truck comes instead. Dropped frames stay as they were in 1.1.2.

1.1.2 · 29 September

Squealing tyres, and traffic that stops at the water

You can hear the brakes now: the tyre squeals while you hold it and stops when you let go, and the sound steps aside when there's a crash or the siren. The other cars, instead of driving into the water and wrecking themselves, stop at the edge and stay there: cars that wrecked themselves went from 12 to zero across eight stages. Two small things fixed too: the flickering lines above the counter during the chase, and the music that took one engine's sound away with it when switched off.

1.1.1 · 28 September

Traffic that follows the road

Testers said the other cars kept crashing on their own without following the road, and they were right. There were three causes: cars picked a lane at random every one or two seconds across the full width, blind to narrowings and curves, and at that speed one wheel on the grass was enough; the car blocking your way froze sideways and drove straight into whatever came; and cars entering from the top edge couldn't see what lay just below.

Now the cars look at the road ahead and stay on it, slow down before tight curves and edges, stop in front of water they can see, and the ones that would come in on impassable ground vanish instead of exploding. The car blocking your way, on the other hand, now changes lane to come and get you. Cars that wrecked themselves went from 76 out of 167 to 12 out of 189, and the crashes you cause work as before, points included.

1.1 · 27 September

Ten seconds to take out the police

It's the biggest change since the game came out, and it's all about the end of the stage. Before, the encounter with the police car lasted seven seconds and was far too soft: players told me so, and they were right.

Now at the end of the stage the road empties and the message HIT POLICE 3 TIMES AND RUN AWAY! appears: you have ten seconds. Leaning on the police car doesn't count: you have to charge it, pushing the stick into it. It answers by flashing red and then swerving at you; dodge it and it skids, and that's the moment to hit. After each hit it pulls away and comes back from the other side, and a counter says how far along you are, 1/3 and 2/3. On the third hit the police car is wrecked and the finish line appears.

If you don't make it they catch you, and you lose a car: you restart from the beginning of the straight, and when the cars run out it's game over. Stopping no longer makes the police disappear. During the duel your car sits in the middle of the screen, so you can see where it's coming from. And there are three new things to see: the points popping up when you wreck a car, with a multiplier up to five times if you take out more than one within three seconds, the sparks of the impacts, and the tyre marks drawn better through curves.

Before that: 1.0.12 fixed the count of cars pushed off to the left; 1.0.11 the wreck that stopped burning after half a second; 1.0.10 the police car that wrecked itself against the roadside; 1.0.9 the siren that kept wailing over the high score table; 1.0.8 added 50,000 points for a clean stage; 1.0.6 the score table saved to disk. September also brought the NTSC version for North American machines, where everything used to run twenty per cent too fast, the music was out of tune and the picture stuttered.

All the updates →

The controls

How it's built

Car physics, traffic, collisions, jumps, road scrolling, the chase, the panel and the music are machine code executed every frame: one complete update per video frame. The stage routes are data. All of it fits in a single 24 KB file that loads and starts by itself.

The number I'm proudest of is how rarely it doesn't make it. Measured in VICE with fixed, repeatable inputs, across all eight stages, 9600 frames in all: it drops 0.1%, and six stages out of eight drop none at all. Each frame's work finishes at raster line 143 on the median, and even in the worst case, at the ninety-ninth percentile, it reaches line 291 against a limit of 304. Which means the machine nearly always finishes its round halfway down the screen, and spends the rest of the time waiting.

How the road manages to scroll smoothly on a machine with nothing ready-made for it, with the real code, is told in full in the tutorial how the road scrolls. And the tools it was written, tested and measured with, from the editor to the script-driven emulator, are in how to make a Commodore 64 game on a Mac.

Download

1.1.4

PRG and disk · it detects PAL or NTSC by itself · free

Download on itch.io