This is a reconstruction of the original 1981-82 IBM PC BIOS source code using scanning and transcription of the BIOS listings found in the IBM Technical Reference manuals.
All 3 versions of the IBM PC BIOS were built using Intel ASM86 on an Intel development system. In each case the BIOS source code is a single large file and the BIOS code is 8KB which resides at F000:E000
Intel 8086 monitor program that fits in a single boot sector.
A portable, open-source 8086 PC emulator for bare metal Raspberry Pi. Boots as its own OS as you'd expect but emulates a MS-DOS machine from the silicon up. Emulates the 8086 and 80186 processor cores. Does CGA, EGA, and VGA graphics. Still in the early stages.
x86 virtualization in JavaScript, running in your browser and NodeJS.
Disk images to boot and run: https://copy.sh/v86/
A list of all of the interrupts in the 32-bit x86 CPU architecture.
A cheat-sheet for reverse engineering malware, by Lenny Zeltser.
A free and libre textbook of OS design and implementation on the x86 architecture. The full book can be read here or downloaded as a PDF from this site, or you can check out the book from its Github repository (https://github.com/littleosbook/littleosbook).
BinNavi is a tool for performing static and dynamic reverse engineering of executables for a number of platforms - x86, ARM, PowerPC, and MIPS. Can connect to remote debuggers on other systems to examine running code. Extensible with scripts, can annotate call flow graphs. The source is on Github: https://github.com/google/binnavi
Unicorn is a super-CPU emulator which handles multiple common processor core architectures, from x86 to Arm. Based on QEMU, written in pure C for speed and portability. Has multiple API bindings for different languages. Does just-in-time (JIT) translation of opcodes. Designed from the ground up to be thread-safe.
A utility that lets you edit disks and recover data, including entire partitions. Supports multiple operating systems.