SAP-1: Assembly Programming


About a year ago, I put together a visual emulator based on the Simple-As-Possible architecture from Digital Computer Electronics: 3rd Edition (Malvino & Brown), tossed it on GitHub, and kind of forgot about it. While digging through some old projects, I came across it and decided to upload it to Itch.io.

Background

If you're familiar with computers based on the the SAP architecture, then you'll know that this is a very basic version. If you've ever seen the Ben Eater computer, it has a very similar architecture and approach. Specifically, it is based on components described for SAP-1, as presented in chapter 10 of the aforementioned book. I've added a few ideas to allow for translation from theoretical hardware to usable software: visual display of Code and RAM values, program load/save, and clock speeds with step mode.

What can you do with it?

  • Enter Assembly instructions and manipulate memory values by entering instructions on the keypad interface. 
  • Run simple programs to add, subtract, and display results. 
  • Step through programs to watch how the registers behave at each step.
  • Save/Load programs 1-4, externally edit source and RAM files in the src directory and run them in the game.

How it was built

The emulator was written using Ebiten, the self-described "dead simple 2D game library for Go". As an experienced Gopher, I was very interested in writing something purely in Go, and Ebiten worked perfectly.  

 

Files

SAP-1_0.0.3a.zip
May 22, 2022

Get SAP-1 Emulator: Assembly programming

Download NowName your own price

Leave a comment

Log in with itch.io to leave a comment.