8 bits of history: My first game is still available on the internet

Smackeyackys excellent adventure

I was somewhere around eight or nine when the 8 bit era of personal computers started getting into action. Of course down in Australia, everything was 2 years behind what was happening in the US. My first real experience of computers wasn't a fat minicomputer over an acoustic coupler, or an S100 based Altair clone, it was "Space Invaders" in the form of a cocktail cabinet at the local sports club.

I was fascinated with it, and when the local Tandy stores started stocking TRS-80s and rich friends houses started getting Apple II's I blagged as much keyboard time as I could, either hanging out in the shops or fiddling around until my friends parents kicked me out. Magazines became an expensive hobby if you didn't have your own microcomputer. Eventually, a Microbee was purchased for our household and I promptly lost myself in it.

Image By Suzy Jackson (Suzyj (talk)) (Transfered byArosio Stefano/Original uploaded by Bilby) - Self-made (Original uploaded on en.wikipedia), CC BY-SA 3.0, https://commons.wikimedia.org/w/index.php?curid=11685848

Mine had a whopping 16 kilobytes of memory (later upgraded to 32!). The only programming language I knew was Basic, gleaned from magazines or half-learned from Commodore Vic-20 time at school or in shops. "MicroWorld Basic" wasn't exactly like the other basics, it was a half-clone of Microsoft's Basic and because of the quirks of each different 8 bit machine of the era, the cool, good, funky stuff like graphics and sound had to be translated over to the somewhat limited capability of my 'bee. I didn't care, I was captivated.

The Microbee was relatively new when we got it and the commercial software available (i.e. games) were somewhat limited. I had over the course of a couple of months hacked together a game I called "Prospector". This was done for my own amusement although a demo of it at the local Microbee store (at a small shopping centre near my house) had the employees encouraging me to submit it for sale. Which I did. This resulted in a cheque for $500 coming back to me which I promptly spent on a dot matrix printer.

I believe our adventure through time has taken a most serious turn

In the 1990s I threw everything away to do with the poor old, now non-functioning micro. Including all the cassettes containing the source code for "Prospector". Only through the magic of the internet and the dedication of Microbee enthusiasts, you can now see it again!

The hilarious instructions. 13 year old me was a riot

The gameplay was fairly simple, the little hero had to run around and pick up bags of gold without the two other guys touching him. No missiles, no strategy, no nothing. It did have some Z80 machine code sound effects which don't seem to work on the UBee 512 emulator but that doesn't matter. My knowledge of Z80 assembler was very limited despite owning a very expensive book, and the sound effects were created by bit bashing the speaker with wave forms. Most of that code was cribbed from various Microbee resources.

I wish I could remember why the image that represents gold had a big "16" on it, probably because I was a weird kid and thought "16 carat gold" was something you found on the ground. The little diamond is kinda cool looking though.

Graphics on the 'bee were created via the magic of "Programmable Character Graphics", you filled out the right spot in memory with the right bit mask and voila, you could print that character on the screen. It was actually a fantastic, backwards way of understanding binary numbers and how they translated into decimal. I had entire graph paper sheets where the PCG could be mapped out and the calculation could be done on what numbers needed to be poked into memory.

There were some basic "draw" type commands available, but they were hilariously slow. Given 4 coordinates, you told the 'bee to draw a line and watched it in slo-mo as it drew the line. In the background, the code was actually creating the right set of PCG's to match your line angle and tossing them on the screen. Clever in a kind of stupid way. Still better than a TRS-80 though.

All we are is dust in the wind, dude

It's astonishing to me that the program survived and I can play it again. Even better, you can ctrl-C in the emulator and list the source code!

There are a lot of GOTO statements in there, a pile of DATA statements that held the PCG numbers and the Z80 bytecodes for the sounds. There are even a few comments here and there to remind me what bits of the program did. The internet can be a terrible place but occasionally it tosses something wonderful your way.

Popular posts from this blog

Tailscale ate my network (and I love it)

Stupid stunts with WSL2 , Python3 and AWS ECS

Time machine: Solaris 2.6 on QEMU