FREEDOM251

Freedom251 › MS-DOS Emulators

riapyx

Free plan LinuxMacWindows

Visit riapyx Alternatives

riapyx's own site

What riapyx is

riapyx is a Rust emulator for an early PC (8086) system built around an Intel 8086, with Windows 3.0 in real mode as its main target. It can run MS-DOS 6.22 and Windows 3.0 in that mode on Linux, macOS, and Windows hosts. The emulated machine includes an XT keyboard, limited CGA display output, a serial port, a Microsoft serial mouse, and floppy and hard drives accessed through BIOS calls. CGA output is restricted to 80×25 text with 16 colors or 640×200 graphics with two colors. Several original PC components are absent, including a programmable interrupt controller, programmable interval timer, DMA controller, and proper IDE hard and floppy drives. The command line accepts hard-drive and floppy images and lets you select the boot drive. The README recommends pre-installed hard-drive images because floppy switching is unsupported and operating-system installation is unlikely to work; ELKS and FreeDOS cannot boot. A built-in debugger can step, continue, trace, dump RAM, set breakpoints, display memory, disassemble, and quit. Optional Cargo features add logs for emulated components. The project is distributed as source under the MIT license, built with Cargo and rust-sdl2, and its maker places little emphasis on performance.

Who it suits

riapyx suits developers, emulator researchers, and retro-computing users interested in examining Windows 3.0 or MS-DOS 6.22 on an emulated 8086. It is also useful for people who want source code, debugger controls, and component logging rather than a packaged consumer download.

What it does well

  • Runs MS-DOS 6.22 and Windows 3.0 in real mode
  • Supports Linux, macOS, and Windows hosts
  • Includes debugger stepping, tracing, breakpoints, and disassembly
  • Accepts hard-drive and floppy disk images
  • Optional Cargo logging covers many emulated components
  • Source code is available under the MIT license

What to know first

  • No proper IDE, DMA, timer, or interrupt-controller emulation
  • Cannot boot ELKS or FreeDOS
  • Floppy switching is unsupported, hindering OS installation
  • CGA output has only two limited display modes

Limits

The emulator has narrow hardware coverage and limited CGA modes, and it cannot boot ELKS or FreeDOS. Installing an operating system is unlikely because floppy switching is unsupported and untested.

Getting started

  1. Install Rust and Cargo
  2. Install rust-sdl2 using the referenced platform instructions
  3. Build the project with Cargo
  4. Prepare a pre-installed hard-drive image
  5. Pass hard-drive or floppy images to the command line
  6. Select which drive should boot

Verdict

Choose riapyx for source-based experimentation with an 8086-era machine and Windows 3.0 real mode. Look elsewhere for broad hardware compatibility, easy operating-system installation, packaged downloads, or performance-focused emulation.

Questions

Which host platforms are supported?

riapyx supports Linux, macOS, and Windows hosts.

Which operating systems can it run?

It can run MS-DOS 6.22 and Windows 3.0 in real mode. It cannot boot ELKS or FreeDOS.

How is riapyx distributed?

The repository provides source files and Cargo build instructions rather than described packaged downloads.

What license does it use?

The emulator code and test program are provided under the MIT license.

Does it include a debugger?

Yes. The debugger supports stepping, continuing, tracing, RAM dumps, breakpoints, memory display, disassembly, and quitting.

Facts from riapyx's own pages

Build
The project is built with Cargo and uses rust-sdl2, whose platform installation instructions are referenced for Windows and OS X users. · github.com, 9 Oct 2026
Build requirements
The project is built with Cargo and uses rust-sdl2; its README points to platform installation instructions, mainly for Windows and OS X users. · github.com, 9 Oct 2026
Compatibility limits
It cannot boot ELKS or FreeDOS, and the README says installing an operating system is unlikely because floppy switching is unsupported and untested. · github.com, 9 Oct 2026
Debugger
Its debugger supports stepping, continuing, tracing, dumping RAM, breakpoints, memory display, disassembly, and quitting. · github.com, 9 Oct 2026
Disk images
The README recommends pre-installed hard-drive images because floppy switching is unsupported and installing an operating system is unlikely to work. · github.com, 9 Oct 2026
Distribution
The repository provides source files and Cargo build instructions; its README does not describe packaged downloads. · github.com, 9 Oct 2026
Emulated hardware
It emulates an Intel 8086 CPU, XT keyboard, limited CGA graphics, a serial port, a Microsoft serial mouse, and floppy and hard drives through BIOS calls. · github.com, 9 Oct 2026
Graphics
The emulated CGA adapter supports 80×25 16-color text mode and 640×200 2-color mode. · github.com, 9 Oct 2026
Graphics limits
CGA graphics support is limited to 80×25 16-color text mode and 640×200 2-color mode. · github.com, 9 Oct 2026
Hardware gaps
It does not emulate a programmable interrupt controller, programmable interval timer, DMA controller, or proper IDE hard and floppy drives. · github.com, 9 Oct 2026
License
The emulator code and test program are provided under the MIT license. · github.com, 9 Oct 2026
Logging
Optional Cargo features provide CPU, display, mouse, serial, BIOS, storage, machine, and keyboard logs, among other debugging aids. · github.com, 9 Oct 2026
Operating systems
It can run MS-DOS 6.22 and Windows 3.0 in real mode; the README says it cannot boot ELKS or FreeDOS. · github.com, 9 Oct 2026
Original target
Its main target was running Windows 3.0 in real mode. · github.com, 9 Oct 2026
Performance
The maker says the emulator does not aim for good performance and received only minimal profiling and simple optimizations. · github.com, 9 Oct 2026
Purpose
riapyx is an early PC (8086) emulator written in Rust, targeting Windows 3.0 in real mode. · github.com, 9 Oct 2026
Usage
The command line accepts hard-drive and floppy images and lets the user choose which drive to boot. · github.com, 9 Oct 2026

Where riapyx stands on Freedom251

Look at these too