CokeOS v3 1998-1999

HE Coke machine used to be connected directly to a computer, and Walter Brisken and Blake Jones had hacked together some software to make it work. That was CokeOS version 1. When Steve Ginzberg made the 68HC11-based controller board, I wrote a bunch of firmware to serve as an operating system and allow the board to accept commands from an external host. That was CokeOS version 2.

ut it was messy. It was difficult to understand and extend. It wasn't easy to use. I wanted something beautiful. So I made CokeOS v3. And it was Good.

okeOS v3 consists of a kernel, memory manager, and a collection of modules. The kernel provides standardized access to communication channels, timers, and interrupts. The memory manager allows data to be uploaded to the board. The modules act as device drivers to control various parts of the hardware. Among the many modules is my Egfx graphics driver, which supports arbitrary color depth, refresh rates, and video buffer sizes and quantities. On the dinky 30x7 LED matrix.

okeOS v3 makes it easy to write modules and easy to control the board from the external host, and it's fast despite the 2 MHz clock speed of the processor. For full details, you can go to the Coke machine firmware page.