A Minimal Viable Working Assembler

A project log for 2:5 Scale KENBAK-1 Personal Computer Reproduction

Make a working reproduction of the venerable KENBAK-1 with a fully integrated development environment including an Assembler and Debugger.

Michael GardiMichael Gardi 04/11/2021 at 15:500 Comments

I'm still waiting on a port extender hat for my Pi 4 so I have had a lot of time to work on the KENBAK-2/5 software. I started with the Assembler based on the outline that I posed in the previous log. It is written in Python using Tkinter for the UI with no external libraries. You can find this early version of the program in the GitHub link associated with this project.

This stand alone Assembler component will eventually be incorporated into a simple IDE for the KENBAK-1.

Here is a short video of the Assembler in action.

And a screen shot of the Assembler with the Fibonacci program loaded.

Here we can see:

With the Assembler done I wrote a number of small programs to exercise the various op codes and addressing modes. These I verified by manually checking the byte codes produced against the documentation in the KENBAK-1 Programming Reference Manual. This is pretty tedious work so I was anxious to get on with the next step, an Emulator.