For convenience I'll also include a basic overview here.
EXACT is an abbreviation for 'Emulating X86 iAPX CPU on NeT'.
This project was primarily done for two reasons:
In favor of RASM, which is basically a work-in-progress Game Engine written in Rust. Getting fluent in WebAssembly meant writing efficient code and eased its debugging.
Experience. an in-depth study of processor that still has alot in common with x86_64 will surely assist in writing optimized code; even though the 8086 lacked any concepts of caches (as an example).
The emulator has been thoroughly documented, except in places where doing so would have been considered extremely verbose or otherwise obivous.
All OpCodes (Even Illegal ones) have been implemented, however instructions that require physical hardware access and interrupts are not available.
This is mostly a bare-bones emulator considering that it only emulates a single 8086 without any co-processors, interrupt controllers or other Multimedia devices.
I've written a few (short) Assembly examples that can be run on the emulator too, inside the 'Examples' folder. However, EXACT supports more complicated programs as well.
First I should mention that the project is opensource, available here: https://github.com/VioletVillain/EXACT
For convenience I'll also include a basic overview here.
EXACT is an abbreviation for 'Emulating X86 iAPX CPU on NeT'.
This project was primarily done for two reasons:
In favor of RASM, which is basically a work-in-progress Game Engine written in Rust. Getting fluent in WebAssembly meant writing efficient code and eased its debugging.
Experience. an in-depth study of processor that still has alot in common with x86_64 will surely assist in writing optimized code; even though the 8086 lacked any concepts of caches (as an example).
The emulator has been thoroughly documented, except in places where doing so would have been considered extremely verbose or otherwise obivous.
All OpCodes (Even Illegal ones) have been implemented, however instructions that require physical hardware access and interrupts are not available.
This is mostly a bare-bones emulator considering that it only emulates a single 8086 without any co-processors, interrupt controllers or other Multimedia devices.
I've written a few (short) Assembly examples that can be run on the emulator too, inside the 'Examples' folder. However, EXACT supports more complicated programs as well.