<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
<channel>
  <title>gerla.cc · development journal</title>
  <link>https://gerla.cc/en/blog.html</link>
  <description>gerla.cc&#x27;s unfiltered devlog: games for C64, Mega Drive and Game Boy Advance, and the work tools behind them. What worked, what didn&#x27;t.</description>
  <language>en</language>
  <atom:link href="https://gerla.cc/en/feed.xml" rel="self" type="application/rss+xml"/>
  <lastBuildDate>Tue, 29 Sep 2026 09:00:00 +0000</lastBuildDate>
  <item>
    <title>Ruote Fumanti 1.1: ten seconds to take out the police</title>
    <link>https://gerla.cc/en/blog.html#ruote-fumanti-11</link>
    <guid isPermaLink="true">https://gerla.cc/en/blog.html#ruote-fumanti-11</guid>
    <pubDate>Tue, 29 Sep 2026 09:00:00 +0000</pubDate>
    <description>Two versions in two days, and they really change the game. 1.1 redoes the whole end of the stage. Before, the police car turned up, leaned on you for seven seconds and left: too soft, and the players told me so. Now the road empties, the message HIT POLICE 3 TIMES AND RUN AWAY! appears and you have ten seconds. Leaning isn&#x27;t enough: the police car has to be charged. It flashes red and swerves at…</description>
  </item>
  <item>
    <title>A C64 game, written on a Mac</title>
    <link>https://gerla.cc/en/blog.html#c64-su-mac</link>
    <guid isPermaLink="true">https://gerla.cc/en/blog.html#c64-su-mac</guid>
    <pubDate>Sun, 13 Sep 2026 09:00:00 +0000</pubDate>
    <description>A question that comes up often when talking about Ruote Fumanti: do you write it on a Commodore 64? No. Today a C64 game is written on the Mac, tested in an emulator, and the real C64, if there is one, is the final check. The tools needed are few, free, and nearly all install with a single command. I&#x27;ve lined them up in a new tutorial: how to make a Commodore 64 game on a Mac. It&#x27;s split into…</description>
  </item>
  <item>
    <title>How the road scrolls, with the real code</title>
    <link>https://gerla.cc/en/blog.html#come-scorre-la-strada</link>
    <guid isPermaLink="true">https://gerla.cc/en/blog.html#come-scorre-la-strada</guid>
    <pubDate>Sun, 13 Sep 2026 09:00:00 +0000</pubDate>
    <description>In Ruote Fumanti the road moves down pixel by pixel fifty times a second and never shakes. It looks like the simplest thing in the game, and it&#x27;s the one that took the most ingenuity, because the Commodore 64 has nothing ready-made for it. I&#x27;ve told it in full in a new tutorial, how the road scrolls, and this time with the real pieces of the program, original comments included. Inside there&#x27;s the…</description>
  </item>
  <item>
    <title>Ruote Fumanti: accelerate, jump, survive</title>
    <link>https://gerla.cc/en/blog.html#ruote-fumanti</link>
    <guid isPermaLink="true">https://gerla.cc/en/blog.html#ruote-fumanti</guid>
    <pubDate>Sat, 12 Sep 2026 09:00:00 +0000</pubDate>
    <description>A new game for the Commodore 64, and this time it&#x27;s neither a test nor a demo: it&#x27;s finished, version 1.0.0. It&#x27;s called Ruote Fumanti, a top-down driving game in eight stages, written in 6510 assembly for a stock PAL C64 with no expansions. The cover illustration. It isn&#x27;t a screenshot: the C64 has sixteen colours and 320×200 pixels, and the real screens are below. The inspiration comes from a…</description>
  </item>
  <item>
    <title>Two drawings, a Sunday, and a C64</title>
    <link>https://gerla.cc/en/blog.html#savethefrogs</link>
    <guid isPermaLink="true">https://gerla.cc/en/blog.html#savethefrogs</guid>
    <pubDate>Mon, 07 Sep 2026 09:00:00 +0000</pubDate>
    <description>Off schedule, and for once it isn&#x27;t my own stuff. Matteo85 is just starting out with Commodore 64 graphics and sent me two drawings: a SUV and a frog. The question behind them was a concrete one, do these work?, and that kind of question is answered faster by running the drawings than by discussing them. So in a couple of hours, in the gaps of a Sunday, I put them on the road. Out came an endless…</description>
  </item>
  <item>
    <title>VECTOR v0.44.0: the robot didn&#x27;t weigh anything</title>
    <link>https://gerla.cc/en/blog.html#vector-044</link>
    <guid isPermaLink="true">https://gerla.cc/en/blog.html#vector-044</guid>
    <pubDate>Sat, 05 Sep 2026 09:00:00 +0000</pubDate>
    <description>Same twelve rooms, same puzzles, same file. What changed is the thing you do between the puzzles: walking. A tester put it plainly: the robot didn&#x27;t weigh anything. It&#x27;s the kind of criticism that sounds vague at first and turns out to be the most concrete of all, because once you go and measure you find it has a precise numeric cause. Three of them, actually. He was running the whole time. Two…</description>
  </item>
  <item>
    <title>VECTOR v0.43: the camera moves, and there&#x27;s THE TOWER</title>
    <link>https://gerla.cc/en/blog.html#vector-043</link>
    <guid isPermaLink="true">https://gerla.cc/en/blog.html#vector-043</guid>
    <pubDate>Fri, 04 Sep 2026 09:00:00 +0000</pubDate>
    <description>Same demo, new build. There are still twelve rooms, but they aren&#x27;t the ones from before: all twelve have been rebuilt, and the engine grew a camera. The look around: you walk in, and the window goes to see the far end before it hands you the controls. The camera. Rooms used to be exactly one screen, 15 blocks by 10: the whole room was in front of you from the first frame, and so was its answer.…</description>
  </item>
  <item>
    <title>Twelve rooms: the second half is the same place, years later</title>
    <link>https://gerla.cc/en/blog.html#vector-dodici</link>
    <guid isPermaLink="true">https://gerla.cc/en/blog.html#vector-dodici</guid>
    <pubDate>Fri, 04 Sep 2026 09:00:00 +0000</pubDate>
    <description>From the six rooms I wrote about yesterday we&#x27;ve got to twelve, and the interesting part isn&#x27;t the number: it&#x27;s that the second half isn&#x27;t a new world. It&#x27;s the same facility, seen years later. The game is split in two, and each half introduces itself with a card. The first one: &quot;everything still works here. The doors open. The water runs. The machines wait for orders.&quot; The first six are the…</description>
  </item>
  <item>
    <title>The September surprise: a new machine, and VECTOR</title>
    <link>https://gerla.cc/en/blog.html#vector</link>
    <guid isPermaLink="true">https://gerla.cc/en/blog.html#vector</guid>
    <pubDate>Thu, 03 Sep 2026 09:00:00 +0000</pubDate>
    <description>In July I wrote that something big was cooking and that I wasn&#x27;t saying on which machine. Here it is: the Game Boy Advance. And not empty-handed, because a game came out of it along the way: VECTOR, a tribute to Portal, written from scratch for that hardware. The cover illustration. It is not a screenshot: the GBA has sixteen colours per palette and 240×160 pixels, and the real screens are below.…</description>
  </item>
  <item>
    <title>A VS Code extension, and I&#x27;m giving it away</title>
    <link>https://gerla.cc/en/blog.html#remote-sftp</link>
    <guid isPermaLink="true">https://gerla.cc/en/blog.html#remote-sftp</guid>
    <pubDate>Wed, 26 Aug 2026 09:00:00 +0000</pubDate>
    <description>No assembly and no pixels today: this comes off the other workbench. Remote SFTP/FTP is a Visual Studio Code extension, I use it every day, and from today it&#x27;s downloadable from here. For years I&#x27;ve been moving files onto remote servers while developing, and for years it&#x27;s been the same scene: you open the file with an FTP client, edit it in an editor that isn&#x27;t the one you&#x27;re using for the…</description>
  </item>
  <item>
    <title>World 11: the Beach (coming, but not just yet)</title>
    <link>https://gerla.cc/en/blog.html#pausa-estate</link>
    <guid isPermaLink="true">https://gerla.cc/en/blog.html#pausa-estate</guid>
    <pubDate>Fri, 31 Jul 2026 09:00:00 +0000</pubDate>
    <description>A small honest truth, for once with no trap: something big is cooking for the coming weeks. I won&#x27;t say what, I won&#x27;t say on which machine, but if you&#x27;ve followed this far you can feel the jump coming. Let&#x27;s say that this time the floor actually holds. There&#x27;s one obstacle, though, that no assembler can dodge: the family needs to be taken to the sea, then up to the mountains. So the workbench…</description>
  </item>
  <item>
    <title>C64: the V2 campaign lands on the breadbin too</title>
    <link>https://gerla.cc/en/blog.html#c64-v2</link>
    <guid isPermaLink="true">https://gerla.cc/en/blog.html#c64-v2</guid>
    <pubDate>Sun, 19 Jul 2026 09:00:00 +0000</pubDate>
    <description>What I built on the Mega Drive is starting to come down to the Commodore 64. The C64 v0.0.11 build is the conversion of the V2 campaign: the first two levels for now, with the gun, the enemies and the stars to collect, rewritten in 6502 assembly. Same game, same idea, another machine, and half a century less computing power. 1-2 &quot;Rhythm and Lead&quot; on the C64: the same scene as on the Mega Drive,…</description>
  </item>
  <item>
    <title>Mega Drive: the V2 campaign, from 0.0.2 to 0.0.11</title>
    <link>https://gerla.cc/en/blog.html#md-v2</link>
    <guid isPermaLink="true">https://gerla.cc/en/blog.html#md-v2</guid>
    <pubDate>Sat, 18 Jul 2026 09:00:00 +0000</pubDate>
    <description>In a few builds the Mega Drive test grew quite a bit: from a test level to a small campaign, &quot;V2&quot;. The six screens have been reworked, a few adversaries appeared, there&#x27;s a whole new presentation and a good deal of graphic polish. The game logic stays faithful to the original. The rest is better discovered by playing. The idea, really, is a design experiment: I&#x27;m trying to throw in a bit of every…</description>
  </item>
  <item>
    <title>Change of course: the prototype moves to the Mega Drive</title>
    <link>https://gerla.cc/en/blog.html#cambio-rotta</link>
    <guid isPermaLink="true">https://gerla.cc/en/blog.html#cambio-rotta</guid>
    <pubDate>Sat, 18 Jul 2026 09:00:00 +0000</pubDate>
    <description>The HTML prototype did exactly the job I built it for: locking down the rules of the game. Physics, jump feel, the worlds&#x27; betrayals, the rhythm. All decided there, where trying an idea costs ten minutes. Now I&#x27;m shelving it: it stays online, playable as it is, but I&#x27;ll stop growing it. Its turn is over, and it served me well. The reason is a surprise: I feel at home on the Mega Drive, far more…</description>
  </item>
  <item>
    <title>Bugs and pieces of code: behind the scenes</title>
    <link>https://gerla.cc/en/blog.html#sei-bug</link>
    <guid isPermaLink="true">https://gerla.cc/en/blog.html#sei-bug</guid>
    <pubDate>Thu, 16 Jul 2026 09:00:00 +0000</pubDate>
    <description>I&#x27;ve collected the most instructive porting bugs on a dedicated page, each with its code fragment and its moral. Three from the C64: the SID crackle (the pop was in the attacks, not the notes), the 6502&#x27;s register that erased the clues, and the memory silently overflowing into the charset. Three from the Mega Drive: the purple screen of a Z80 held in reset, the stripe that wouldn&#x27;t crumble on…</description>
  </item>
  <item>
    <title>Mega Drive: the first level runs, and the ROM is here</title>
    <link>https://gerla.cc/en/blog.html#md-rom</link>
    <guid isPermaLink="true">https://gerla.cc/en/blog.html#md-rom</guid>
    <pubDate>Thu, 16 Jul 2026 09:00:00 +0000</pubDate>
    <description>It wasn&#x27;t supposed to be its turn, but the prototype was sitting right there. The first Mega Drive ROM is downloadable: World 1&#x27;s first level in a 256KB .gen file that boots in emulators and should boot on flashcarts. Inside is the recipe from the July 9 post: startup, vectors and title screen in 68k assembly, game logic and rendering in C compiled for the 68000. The logic is the same as the…</description>
  </item>
  <item>
    <title>The SID stopped slapping me around: the music is in</title>
    <link>https://gerla.cc/en/blog.html#sid-musica</link>
    <guid isPermaLink="true">https://gerla.cc/en/blog.html#sid-musica</guid>
    <pubDate>Thu, 16 Jul 2026 09:00:00 +0000</pubDate>
    <description>Two days ago I wrote the SID was slapping me around. Update: we made peace. The player now runs inside the raster interrupt without blowing the frame budget, and the music is in the PRG: title theme and in-game tune, two voices for melody and bass, the third kept free for sound effects, which take priority (in a game where floors collapse, you need to hear the collapse). It&#x27;s not demoscene…</description>
  </item>
  <item>
    <title>Build 1: 2 levels, 6 screens, a PRG to download</title>
    <link>https://gerla.cc/en/blog.html#c64-build1</link>
    <guid isPermaLink="true">https://gerla.cc/en/blog.html#c64-build1</guid>
    <pubDate>Wed, 15 Jul 2026 09:00:00 +0000</pubDate>
    <description>The first downloadable build of the C64 test is online: the first 2 levels of World 1, 6 screens in total, in a 17KB PRG that boots in VICE and should boot on real hardware. &quot;Should&quot; is the key word: fake-floor collision needs checking screen by screen, and the trembling timing (a tenth of a second, which is 5 frames on PAL) is currently tuned by eye in emulation, not on a real C64. If you run it…</description>
  </item>
  <item>
    <title>The SID is tough (and it&#x27;s slapping me around)</title>
    <link>https://gerla.cc/en/blog.html#sid</link>
    <guid isPermaLink="true">https://gerla.cc/en/blog.html#sid</guid>
    <pubDate>Tue, 14 Jul 2026 09:00:00 +0000</pubDate>
    <description>Confession: music is the hardest part of the whole C64 test. The SID is not a beeper, it&#x27;s a real synthesizer: 3 voices, ADSR envelopes, analog filters, and zero mercy for someone coming from WebAudio, where a note is one line of JavaScript. Here a note is a 16-bit frequency register to compute, an envelope to program, and a player to write in assembly inside the raster interrupt without blowing…</description>
  </item>
  <item>
    <title>All 10 worlds exist. Now the real work: polishing them</title>
    <link>https://gerla.cc/en/blog.html#dieci-mondi</link>
    <guid isPermaLink="true">https://gerla.cc/en/blog.html#dieci-mondi</guid>
    <pubDate>Mon, 13 Jul 2026 09:00:00 +0000</pubDate>
    <description>Milestone: all 10 FIDATI. worlds are playable start to finish, Inferno included, rising lava included. But &quot;playable&quot; and &quot;done&quot; are two different words. It is all still a draft: even the first 6 will need another pass, and the last 4 are the roughest: the Jungle has toothed platforms that bite with too little warning, the Futuristic City teleporters sometimes lie too much even by this game&#x27;s…</description>
  </item>
</channel>
</rss>
