e8086, by the name itself, is a 8086 system emulator written badly in C
As the description said, this project is NOWHERE to be fully perfect (except if anyone is willing to fix all of its potentital bugs)
Clone the repository
git clone https://github.com/wkokplauo666/e8086
cd e8086Build and run
make
./bin/e8086 [BINARY_FILE]As of today there are only 2 I/O operation to interact with the user, which are:
I/O addresses:
0x0000-0xffff: CHAR
| Field | Size | Direction | Description |
|---|---|---|---|
CHAR |
byte |
OUT |
Character to print |
I/O addresses:
0x0000-0xffff: CHAR
| Field | Size | Direction | Description |
|---|---|---|---|
CHAR |
byte |
IN |
Character buffer |
in al, 0xff ; get keypress, I/O address is arbitrary
mov al, 'H'
out 0xff, al ; prints H