Skip to content

An emulator for the 8-bit Intel 8080 microprocessor.

License

Notifications You must be signed in to change notification settings

nsdigirolamo/i8080emu

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

87 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

i8080emu

About

This is an emulator for the 8-bit Intel 8080 microprocessor from the 1970s. This emulator passes a comprehensive suite of tests that you can use to verify its equivalence with a real Intel 8080 chip.

Build

You will need cargo installed on your machine to build the emulator from source. Once you've cloned the repository, navigate to its root directory and run the following command:

cargo build --release

Run

If you have a program compiled for the Intel 8080, this emulater will be able to run it using the run command:

i8080emu run /path-to-program/program.COM

Test

You will need to download the tests before you can run them. If you have curl installed on your machine, you can download the tests with the following command:

curl \
-O https://altairclone.com/downloads/cpu_tests/8080PRE.COM \
-O https://altairclone.com/downloads/cpu_tests/TST8080.COM \
-O https://altairclone.com/downloads/cpu_tests/CPUTEST.COM \
-O https://altairclone.com/downloads/cpu_tests/8080EXM.COM

Then, run a test of your choosing with the run command:

i8080emu run CPUTEST.COM

Any printing during the course of the program's execution will be directed to your terminal's standard output:

DIAGNOSTICS II V1.2 - CPU TEST
COPYRIGHT (C) 1981 - SUPERSOFT ASSOCIATES

ABCDEFGHIJKLMNOPQRSTUVWXYZ
CPU IS 8080/8085
BEGIN TIMING TEST
END TIMING TEST
CPU TESTS OK

The longest test suite is 8080EXM.COM, which takes around 30 minutes to run. The other test files only take a few seconds each.

Resources

Below are resources that were helpful during the development of this emulator.

Documents

  1. Intel 8080 Microcomputer Systems User's Manual September 1975
  2. Intel 8080 Assembly Language Programming Manual
  3. Intel MCS-80/85™ Family User's Manual October 1979
    • Also available here
  4. 8080/8085 Assembly Language Programming Manual
  5. CP/M Plus Operating System Programming Guide

Sites

  1. altairclone.com provides a variety of downloads related to the Intel 8080: manuals, ROMs, CPU tests, etc.

Other Emulators

  1. 8080 by superzazu (GitHub) is an Intel 8080 emulator written in C.
  2. i8080-core by begoon (GitHub) is an Intel 8080 emulator written in C specifically for the KR580VM80A, which was a Russian clone of the Intel 8080.
  3. i8080-javascript by chris-j-akers (GitHub) is an Intel 8080 emulator written in Javascript that you can use online here.

About

An emulator for the 8-bit Intel 8080 microprocessor.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages