Skip to content

lukepeterson/go8080cpu

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Intel 8080 CPU emulator in Go

An Intel 8080 CPU emulator, written in Go. This project uses my Intel 8080 CPU assembler, especially for running tests.

Tests Go Report Card GitHub release

Running some INR and DCR

Features

Instructions supported

  • ✅ Move, load and store (84 instructions)
  • ✅ Stack operations (13 instructions)
  • ✅ Jump (10 instructions)
  • ✅ Call (9 instructions)
  • ✅ Return (9 instructions)
  • ✅ Restart (8 instructions)
  • ✅ Increment and decrement (22 instructions)
  • ✅ Add (22 instructions)
  • ✅ Subtract (18 instructions)
  • ✅ Logical (36 instructions)
  • ✅ Rotate (4 instructions)
  • ✅ Specials (4 instructions)
  • ✅ Input/output (2 instructions)
  • ✅ Control (4 instructions)

Future enhancements

  • Replace the memory locations in tests with labels once the assembler supports them.
  • Write tests for WriteByteAt()

Running tests

Run go test ./....