The ArduinoX86 project is comprised of a few components:
- Software that runs on the Arduino Giga and provides a CPU server over USB
- Client software that runs on your PC and communicates with the server to operate the CPU
- Hardware shields that plug into the Arduino and provide sockets / pads for hosting CPUs
ArduinoX86 supports the following CPUs:
- 80C88
- 80C86
- NEC V20
- NEC V30
- 80L186
- 80C286
- 386EX
The Server software supports resetting and setting up the CPU, emulating memory (backed by the Arduino Giga's 8MB of SDRAM), loading an initial register state, uploading code, executing code, logging cycle states and bus operations, and retrieving the logged states and final register state.
Register set-up is accomplished programmatically on the 808X and 80186, via LOADALL on the 286 and via SMM on the 386EX.
Register read-out is accomplished programmatically on the 808X and 80186, via STOREALL on the 286, and via SMM on the 386EX.
Daniel Balsom



