VirtualXT is a IBM PC/XT (8088/V20) emulator that runs on modern hardware and operating systems. It is designed to be simple and lightweight yet still capable enough to run a large library of old application and games.
Browser version is avalible here.
- Intel 8088 or NEC V20 CPU
- Hardware CPU validator
- CGA/HGC compatible graphics
- Turbo XT BIOS 3.1 with extensions
- Keyboard controller with 83-key XT-style keyboard
- Serial port with Microsoft 2-button mouse
- Floppy and hard disk controller
- AdLib Music Synthesizer
- Ethernet adapter
- Real Time Clock
- PC speaker
The emulator is written in C11 and should be compiled with the Zig toolchain.
You also need to have SDL2 installed on your system or pass -Dsdl_path=<path to lib>
to the compiler.
git clone https://github.com/andreas-jonsson/virtualxt.git
cd virtualxt
zig build run -Drelease-fast
You can download pre-built binaries from itch.io. OSX and Linux users can also download VirtualXT using Homebrew.
brew tap andreas-jonsson/virtualxt
brew install virtualxt
If you want to embed the emulator or create a custom frontend you can find libvxt API documentation here.
A hardware validator was developed to ensure proper CPU behaviour. Some additional information about that can be found here.