This project was created and added to the 1kB challenge as a proof of concept. Because the 1kB challenge could use any architecture and 1kB code - it brought to me the idea of creating single binary file which would run on many architectures.
Right now there's only blinking LED demo for each architecture. In a few days I'll add more explanation of some tricks I used to deal with a fact that AVR and 8051 have the same reset vetor at address 0x0000.
This polyglot can be improved to share some kind of common data across all architectures. For example you can code brainfuck interpreter for every architecture and use common data space where th
Right now I have hand-crafted vector/boot table which will correctly "guide" the architecture's CPU to the beginning of their own code in the binary. AVR and ARM are easy because they have reset vectors at different addresses, but the 8051 added small complication which I will explain in later project logs