8086tiny: a free PC XT-compatible virtual machine/emulator written in C
PC XT-compatible virtual machine/emulator written in C created by Adrian Cable, via RaspberryPi.org:
“The personal computer as we know it today began in the early 80s with the release of the IBM PC – an incredibly complex machine for its time, and the result of hundreds of thousands of man-hours of development time, at a cost of hundreds of millions of dollars.
Thirty years later, I set out to answer the question of how small a highly portable, software PC emulator/virtual machine could be written, complete and accurate enough to simulate not just the Intel 8086 CPU but enough of the peripheral hardware to run software like Windows, AutoCAD, Lotus 1-2-3 and classic PC games. The answer: 4043 bytes of highly condensed C source code, which won the 2013 International Obfuscated C Code Contest.
Following the contest, widespread demand led to the release of 8086tiny, a fully documented and commented distribution of the original code, including full BIOS source code. 8086tiny, when deployed on the $25 Raspberry Pi, produces not only the world’s smallest but also the world’s cheapest PC.
Uniquely we believe for PC emulators, 8086tiny is released under the most free open source license possible, the MIT License, allowing use or redistribution for any purpose, commercial or non-commercial, with no restrictions whatsoever. I encourage anyone to use 8086tiny as a starting point for their own emulation projects.”
Adafruit publishes a wide range of writing and video content, including interviews and reporting on the maker market and the wider technology world. Our standards page is intended as a guide to best practices that Adafruit uses, as well as an outline of the ethical standards Adafruit aspires to. While Adafruit is not an independent journalistic institution, Adafruit strives to be a fair, informative, and positive voice within the community – check it out here: adafruit.com/editorialstandards
Stop breadboarding and soldering – start making immediately! Adafruit’s Circuit Playground is jam-packed with LEDs, sensors, buttons, alligator clip pads and more. Build projects with Circuit Playground in a few minutes with the drag-and-drop MakeCode programming site, learn computer science using the CS Discoveries class on code.org, jump into CircuitPython to learn Python and hardware together, TinyGO, or even use the Arduino IDE. Circuit Playground Express is the newest and best Circuit Playground board, with support for CircuitPython, MakeCode, and Arduino. It has a powerful processor, 10 NeoPixels, mini speaker, InfraRed receive and transmit, two buttons, a switch, 14 alligator clip pads, and lots of sensors: capacitive touch, IR proximity, temperature, light, motion and sound. A whole wide world of electronics and coding is waiting for you, and it fits in the palm of your hand.
Have an amazing project to share? The Electronics Show and Tell is every Wednesday at 7pm ET! To join, head over to YouTube and check out the show’s live chat – we’ll post the link there.