Welcome
Welcome to my corner of the web, where retro computing meets deep technical exploration. If you’re passionate about programming on vintage hardware or enjoy the raw, hands-on experience of C and assembly, you’re in the right place. Here, I dive into the intricacies of old-school coding, unraveling the details of building software for retro systems and sharing techniques that bring those machines back to life. For even more content, check out my YouTube channel, where I recreate the experience of being a programmer from the 80s and 90s trying to get to grips with these machines. Whether you’re nostalgic for the past or just curious, this is the space to rediscover the roots of computer programming.
Blog Posts
These are some notes on how to manually draw triangles in code. Possibly useful if you’re trying to write your own software renderer, or are just curious how it works.
There’s two ways to do this. One is quite CPU intensive, the other is mathematical and less CPU intensive. The CPU intensive version scales well if run on something with multiple cores, like a GPU. So there’s tradeoffs in which method is used and when.
I use Obsidian as my central note storing system. Here’s how I sync all my files between my phone, laptop and desktop machines. For free.
Intro
First, Obsidian is actually a piece of software worth paying for. I used to simply store a bunch of text files in a folder and edit them with any old random text editor. Obsidian makes this easier. Linking between pages, the tree view, the nice colours… it all makes the job of editing and managing text nicer.
While shopping I find a self service checkout that’s having a bad day.
Someone call IT support, the HDD in this one has died. Still, it’s nice to see penguins out in the wild.
This post is showing some sort of bug in my blog template. There is supposed to be an image up there, but it’s not showing.
I’m creating a game engine from scratch. Last time I wrote about the entity component system and how that works. This time I want to explain how the entities get created.
There’s loads of blog posts and YouTube videos explaining how to be more organised, how to stop procrastinating, and how to generally be more productive. None of them seem to be written for people who are busy, rather than trying to avoid work.
Let’s make a game engine properly, rather than beating on it until something works. This time, I’m creating an entity component system.
My #Chromebook just had another update, and it’s now gained the ability to be controlled using facial gestures. And it’s pretty cool.
Projects
I’ve built a joystick interface for my Agon Light, using a PCB I found online. This is an improvement on the last time I did this and just stuck wires in the GPIO ports.
Continue reading
Here’s how to send text out the Agon Light’s USB port to an attached serial monitor, so it can be used for debug logging.
Continue reading
How to write code for the Agon Light (and Console8) using C instead of BASIC, under Linux. It might work with WSL2 in Windows, and it might work on a Mac.
Continue reading