AVR-x86 is a 8086+ emulator running on AVR Arduino. This project is originally forked from https://github.com/corax89/Arduino_8086_emulator
As you can see in the image, AVR-x86 is running Brainfuck written in 8086 assembly,
AVR-x86 is based on Fake86's core, ported to AVR by corax89. In the original version, binary is stored in a RAM array, then boot up and execute it. But AVR-x86 load the binary stored in a SD card to a virtual RAM file on the SD card. So you can have more RAM for the emulator than the AVR hardware's. That also means AVR-x86 can execute larger binary file!
It takes about one minute to load a 200K file.
For fun. It just a toy.
From dmitry.gr:
It is common to see newbies asking in microcontroller forums if they can run Linux on their puny little 8-bit micro. The results are usually laughter.
- Write an bootloader for floppy disk files on SD card, not just executing one file at a time.
- Reduce the sketch file
- Boot more things
- ...
If you have any ideas, you can open an issue and tell me!
- Linux on 8-bit AVR by Dmitry.GR
- CP/M on an AVR by Spritesmods.com
- Launch .COM file on Arduino by corax89 (the repo where this repo forked)
- 8086 emulator on Arduino DUE by miker00lz
- 8086 emulator on ESP8266 (include video)
- emu86 by murray1978
There are configs macro inside config.h. You can follow the instructions in that file.
Notes: You can enable more feature if you has more flash and RAM, but for Arduino UNO, you can only enable ONE_USE
for now (autoload the file when boot, no bootprompt!).