de en es fr nl pl pt sv

programming

Process Automation for an Oregon Charitable Foundation

Erik L. Arneson

The Oregon Scottish Rite Education Foundation awards scholarships annually to students across Oregon who are entering into college or trade schools. Over the past few years, their foundation has grown, requiring them to distribute more scholarships than ever. However, since the foundation board is...

šŸŽ¬ Scala Days 2025

Big ball of mud

I had the pleasure of giving a talk at the Scala Days 2025 in Lausanne. The talk was titled ā€œYo Dawg, Heard You Want To FlatMap Your Direct-Styleā€. I talked about the challenges of using direct-style programming in Scala and how we can leverage the power of effect systems to make our code more...

šŸŽ¬ Scalar Conference 2025

Big ball of mud

I had the pleasure of giving a talk at the Scalar Conference 2025 in Warsaw. The talk was titled ā€œYo Dawg, Heard You Want To FlatMap Your Direct-Styleā€. I talked about the challenges of using direct-style programming in Scala and how we can leverage the power of effect systems to make our code...

Getting into Max/MSP

Chip 𓇼<br>Chirp

Some Background On the advice of my advisor noting a ā€œwell fortifiedā€ set of classes taken so far, I am taking a class this semester in a different area from my normal electrical engineering classes. The class covers Max/MSP, a visual programming environment for audio and video processing. I am...

CP/M-65

cowlark.com

I’ve just done a port of CP/M to the 6502 — for, um, reasons. It currently runs on the BBC Micro (or Master, or Tube second processor) and the Commodore 64.

EmuTOS on the AlphaSmart Dana

cowlark.com

I’ve been spending some time porting EmuTOS, an open source version of Atari TOS, to the AlphaSmart Dana portable laptop word processor typewriter thing. It runs really well, and will run (some) original Atari ST software. And, I’ve done it all on video! It’s about 38 hours of me talking about...

POLF: a game for the Commodore PET

cowlark.com

I’ve just spent a couple of weeks indulging a retrocomputing itch: I’ve just written a FPV 3D game for the Commodore PET, a 1980 text-only computer with 32kB of RAM and a 1MHz 6502. Because, apparently, I have too much free time.

Fuzix on the Raspberry Pi Pico (update)

cowlark.com

I’ve finally finished (or at least, made feature complete) my Raspberry Pi Pico Fuzix Port. This is a proper V7 Unix clone which will run on the Raspberry Pi Foundation’s $4 microcontroller board. This now requires no extra hardware to run! You can use it with a UART or an SD card. Just plug your...

Fuzix on the Raspberry Pi Pico

cowlark.com

So, my new Raspberry Pi Picos (two of them) arrived just as I was finishing up the ESP8266 Fuzix port, and naturally I had to port Fuzix to this too. I didn’t video this one, which is a shame as it would probably have been a more interesting watch.

Porting Fuzix to the ESP8266... on video

cowlark.com

I have just ā€˜finished’ a port of Fuzix, Alan Cox’s lightweight Unix for small machines, to the ESP8266 microcontroller. And: I screen recorded it all, with narration by myself, so if anyone wants to watch the entire process, you now can!

Gamepad enhancements in yquake2

Larry Davis

A recent obsession with retro gaming on Raspberry Pi using RetroPie led me to play through a few old favorites, starting of course with Wolfenstein 3D (and my subsequent work on Splitwolf). After making my way through history with Doom and Quake I, it was only natural that I load up Quake II... A...

WordGrinder 0.8 released!

cowlark.com

I’ve just released version 0.8 of WordGrinder, my minimal word processor for writing first drafts. This started life as a bugfix release but I got a bit carried away with the feature requests, and there’s a tonne of new quality-of-life improvements.

Cowgol 2.0: this time it's useful

cowlark.com

I’ve just released a proper working version of Cowgol 2.0, a brand new version of my small language for small systems. Better type checking! Better syntax! Better code generation! Better compilation speed! And, ironically, this was mostly achieved by drastically simplifying it and reducing...

Writing a lunar lander game for an actual lunar lander

cowlark.com

As it’s the 50th anniversary of the Apollo 11 moon landings, I thought this would be a great opportunity to live code a demonstration of using my new compiler to write a simple lunar lander game… but first, I’m going to port the compiler to generate code for an actual lunar lander. Yes, my target...

Live coding a compiler for CP/M, from scratch

cowlark.com

Livecoding time again today, and I’m writing a compiler. This is a prototype for an alternate take on code generation for my Cowgol programming language. This is an Ada-inspired programming language for very small systems, such as 8-bit machines, intended to be self-hosted on such systems...

Older →