Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/hubmartin/polyglot
Single binary runs on ARM, AVR, x51
https://github.com/hubmartin/polyglot
Last synced: about 1 month ago
JSON representation
Single binary runs on ARM, AVR, x51
- Host: GitHub
- URL: https://github.com/hubmartin/polyglot
- Owner: hubmartin
- Created: 2016-12-02T20:34:22.000Z (about 8 years ago)
- Default Branch: master
- Last Pushed: 2016-12-02T20:43:41.000Z (about 8 years ago)
- Last Synced: 2024-10-28T09:35:50.220Z (3 months ago)
- Language: Assembly
- Size: 362 KB
- Stars: 1
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Polyglot running on AVR, ARM and 8051
One binary to rule them all.
Follow this project for future explaining video and further development.
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 the brainfuck program will be located. So you end with like 4 interpreters in one binary and one data segment where is the actual program which will run really cross-platform.
In software world there are some projects that are trying to create a single polyglot file which could be opened as PDF, JPG, ZIP archive ... But I wasn't be able to find anything similar in embedded world.
Project idea was started based on 1kB Hack a Day challenge.
https://hackaday.io/contest/18215-the-1kb-challenge