
Description
Revisiting DOS-era games usually means a virtual machine, a DOSBox setup and hunting for disk images, and half an hour is gone. Retro486 puts a whole Intel 80486DX2-66 PC in the browser: written in pure JavaScript with no dependencies, it boots FreeDOS from a web page and runs old games like Wolfenstein 3D and DOOM.
It emulates more than the CPU. You get a full motherboard: real SeaBIOS and VGA BIOS, interrupt controllers, timers, a keyboard and mouse controller, and hot-pluggable ISA and VLB expansion cards.
A full 486 CPU: Real mode, 16/32-bit protected mode and Virtual 8086 mode, with the 80487 FPU and paging.
A motherboard you can poke: The UI shows a clickable board with live address, data and IRQ lines and a seven-segment POST display. Click a slot to inspect or swap its card.
Swappable cards: Display cards from text and CGA through EGA and VGA to VBE modes, Sound Blaster 16 with AdLib, a storage controller with CD-ROM, and you can write your own card in JS in the browser.
Disk library: A set of bundled disks, or upload your own .img or .iso.
Saved state: ROMs, floppy images and disk writes live in the browser's IndexedDB, and RAM size, CPU speed and installed cards persist across reloads.
Diagnostics: Live CPU registers and a hex view of physical memory.
Open the official live demo to play right away, or serve the project root with any static server (npm start or python3 -m http.server 8080) to run it locally. The repository states no license, so check before reusing it.
It emulates more than the CPU. You get a full motherboard: real SeaBIOS and VGA BIOS, interrupt controllers, timers, a keyboard and mouse controller, and hot-pluggable ISA and VLB expansion cards.
Features
A full 486 CPU: Real mode, 16/32-bit protected mode and Virtual 8086 mode, with the 80487 FPU and paging.
A motherboard you can poke: The UI shows a clickable board with live address, data and IRQ lines and a seven-segment POST display. Click a slot to inspect or swap its card.
Swappable cards: Display cards from text and CGA through EGA and VGA to VBE modes, Sound Blaster 16 with AdLib, a storage controller with CD-ROM, and you can write your own card in JS in the browser.
Disk library: A set of bundled disks, or upload your own .img or .iso.
Saved state: ROMs, floppy images and disk writes live in the browser's IndexedDB, and RAM size, CPU speed and installed cards persist across reloads.
Diagnostics: Live CPU registers and a hex view of physical memory.
Open the official live demo to play right away, or serve the project root with any static server (npm start or python3 -m http.server 8080) to run it locally. The repository states no license, so check before reusing it.
Tags:emulator

