You know how it is. You have an older computer, and you can’t run the latest software on it. Time to upgrade, right? Well, if you have been in this situation a very long time, [ryomuk] may have an answer for you. The emu8080on4004 project (Google Translate) offers a way to run 8080 code on a 4004 CPU. Finally!
The 4004 development board is a homebrew affair, and the emulator works well enough that an 8080 Tiny BASIC interpreter ran with very few changes to the source code. You can see it working in the video below. It would be cool to run CP/M, but we imagine that would be a little harder, especially resource-wise.
A few things are missing. For example, the DAA instruction doesn’t exist, and there are no provisions for interrupts. There’s only one I/O port, and using the IN instruction will block until you receive a serial port character. There is an option to implement the parity flag in the 8080 flags register, but its operation is untested.
Still, pretty impressive for a 4-bit CPU running at 740 kHz with very little memory. If you want to see more about the development board itself, check out the second video below. Want to know more about the chip that launched a family of processors that is still around? Read its biography. You can also read about the designer who put his signature on the die.
I have several 4004s and support chips in storage. Maybe it’s time to dig them out…
Maybe find a way to daisy them up to make a 16-bits processor?
Have you seen how much they are going for on eBay?
A brilliant “bigger on the inside” play! It’s worth noting that the very first Intel 4004 application employed a byte-code interpreter to emulate a more complex Japanese CPU custom-designed for the Busicom 141PF printing calculator.
Thank you for the article. I have made a PCB and upgraded from the breadboard. I have created a project page.
https://hackaday.io/project/190568-intel-4004-homebrew-computer