Powered by Faux86: A portable, open-source 8086 PC emulator for bare metal Raspberry Pi
F86-DOS is an "Operating System" powered by Faux86 designed to be run bare metal on a Raspberry Pi. This means that the emulator runs directly on the hardware so no OS needs to booted on the Pi.
- 8086 and 80186 instruction set emulation
- CGA / EGA / VGA emulation is mostly complete
- PC speaker, Adlib and Soundblaster sound emulation
- Serial mouse emulation
- Download Release
- Flash it on a small SD card using Balena Etcher or Win32DiskImager
- Profit
By default Faux86 boots from a floppy image dosboot.img
, and filename is hardcoded in kernel.cpp
Since MS-DOS is accessing the SD card directly, it does not work for large SD card types. I have found the best solution is to use a small capacity SD card and flash the image as a 32MB card.
USB keyboard and mouse should be plugged in before booting - hot swapping of devices is not supported.
A:\
MS-DOS Read-Only floppy image.C:\
SD card; system file, kernel, etc, files are hidden to make partition easier to be browsed.D:\
Any attached mass storage device.
MS-DOS boot up from dosboot.img
floppy image, with some out-of-the-box customiztion you may like to know:
C:\AUTOEXEC.BAT
you can easly edit it using edit; that's the main reason why I forked this repo.PATH
All executables included into MS-DOS floppy drive are in PATH.KEYBOARD.SYS
Missing layout definition.
- Raspberry Pi [A, B, A+, B+]
- Raspberry Pi 2 [B]
- Raspberry Pi 3 [A+, B, B+]
- Raspberry Pi Zero
Where're Raspberry PI 4 and Raspberry PI 400?
I've never bought a PI 4 and/or the Commodre-Vibes PI400; so can't test it all but jepalza did and released binaries on Raspberry PI Official Forum!
- Download - The one originally published by jepalza | drive.google.com
- Download - The mirror on this repository | github.com
By the way if you got an RPI4 I suggest you to install DOSBox on RaspberryOS (formerly Rasbian) and make it start at boot; Faux86 is not able to run anything compiled for 386 architecture and it official support up to 186; instead of DOSBox that can run over the 98% of DOS-Softeca.
I mainly forked originally repository cause of many software-related lack of features I've already mantioned in Features, like: missing keyboard definition, missing autoexec edit feature, etc.
I run this on an old Raspberry PI 1 Model B, the last one with analog video out with a 512mb SD card; it's just funny to spend a nice DOScember and running some old DOS software; for gaming pruposes I use different hardware and different software.
If you have my same setup and you want to connect RPI to an old analog monitor edit config.txt
in SD root as follow:
hdmi_ignore_hotplug=1 # Ignore HDMI Output
sdtv_mode=0 # Set NTSC
Where sdtv_mode
value can be different depending on encoding system used by your TV or Monitor.
Value | Encoding |
---|---|
0 | NTSC |
1 | JAP-NTSC |
2 | PAL |
3 | BR-PAL |
- Faux86 has been developed by John Howard
- Faux86 was originally based on Fake86 by Mike Chambers; now developed as XTulator. A lot of the code has been shuffled around or rewritten in C++ but the core CPU emulation remains mostly the same.
- Circle to interface with the Raspberry Pi
Released under GNU General Public License v2 as per LICENSE file stored in this repository.