- Home
- MS-DOS Emulators
- DOSVisor
DOSVisor
What it is
DOSVisor is free Windows software that runs some MS-DOS programs in a virtualized 16-bit real-mode environment. It uses the Windows Hypervisor Platform API, with hardware virtualization handling the CPU and software emulating the DOS layer. The project is primarily a demonstration of that API rather than a complete DOS emulator, and its framework is intended to be extended. A custom Interrupt Vector Table uses CPUID instructions to trigger VM exits and intercept DOS interrupts. DOSVisor captures I/O requests for emulation but supports only a small set of common requests. Timing support includes the BIOS counter, RAM refresh toggle bit, system clock, RTC registers, and DOS current-time calls; the 8253 PIT timer is not fully implemented. Keyboard handling monitors state, keeps a simple buffer, and passes input through keyboard interrupts. Basic terminal commands can run simple text-based games and other basic programs. BIOS data areas and the Program Segment Prefix are allocated but mostly unpopulated. The public repository has bin and src directories and lists no releases or packages. It was tested with FlareSay.exe from FlareOn 2023 challenge 6. The listed plan is free.
For and against
For
- Uses hardware CPU virtualization
- Intercepts DOS interrupts through VM exits
- Supports basic keyboard and terminal input
- Includes several timing mechanisms
- Public source repository
Against
- Not a complete DOS emulator
- Only a small set of I/O requests
- 8253 PIT timer is incomplete
- Repository lists no releases or packages
The verdict
DOSVisor is a focused demonstration project for selected DOS programs on modern Windows. Its limited emulation coverage and incomplete timer support make its scope narrower than a full DOS environment.
Who it suits
DOSVisor suits Windows users exploring the Windows Hypervisor Platform API or running a few sample DOS programs. It also fits developers interested in extending its emulator framework.
Plans and prices
Free
No pricing or usage limits stated; the repository is public
Read 9 Oct 2026 · github.com
On the record
- Commands
- Basic terminal commands are supported for simple text-based games and other basic programs.github.com · read 9 Oct 2026
- CPU
- It uses hardware virtualization for the CPU and emulates the DOS layer in software.github.com · read 9 Oct 2026
- CPU virtualization
- It uses hardware virtualization for the CPU and emulates the DOS layer in software.github.com · read 9 Oct 2026
- Demonstration project
- The author describes DOSVisor primarily as a demonstration of the Windows Hypervisor Platform API, not a complete DOS emulator.github.com · read 9 Oct 2026
- Distribution
- The public repository contains bin and src directories; its page lists no releases or packages.github.com · read 9 Oct 2026
- Intended audience
- The project is suitable for exploring the Windows Hypervisor Platform API and running a few sample DOS programs; the author says its framework is designed to be extended.github.com · read 9 Oct 2026
- Intended use
- The project primarily demonstrates the Windows Hypervisor Platform API and is not intended to be a complete DOS emulator.github.com · read 9 Oct 2026
- Interrupt handling
- A custom Interrupt Vector Table points interrupts to CPUID instructions so the emulator can trigger VM exits and handle them.github.com · read 9 Oct 2026
- Interrupts
- It uses a custom Interrupt Vector Table with CPUID instructions to trigger VM exits and intercept DOS interrupts.github.com · read 9 Oct 2026
- I/O support
- It captures I/O requests for software emulation, but supports only a very small set of common I/O requests.github.com · read 9 Oct 2026
- Keyboard
- It monitors keyboard state, maintains a simple key buffer and passes information to DOS programs through keyboard interrupts.github.com · read 9 Oct 2026
- Maker
- The repository is published under the GitHub account x86matthew.github.com · read 9 Oct 2026
- Purpose
- DOSVisor is a DOS emulator that uses the Windows Hypervisor Platform API to run DOS programs in a virtualized 16-bit real-mode environment on modern Windows systems.github.com · read 9 Oct 2026
- System fields
- BIOS data areas and the Program Segment Prefix are allocated but not populated, except for the BIOS counter value.github.com · read 9 Oct 2026
- Terminal
- Basic terminal commands are supported for running simple text-based games and other basic programs.github.com · read 9 Oct 2026
- Testing
- The maker reports testing DOSVisor with FlareSay.exe, a DOS game from FlareOn 2023 challenge 6.github.com · read 9 Oct 2026
- Timer limitation
- The 8253 PIT timer is not fully implemented.github.com · read 9 Oct 2026
- Timers
- Supported timing mechanisms include the BIOS counter, RAM refresh toggle bit, system clock and RTC registers; the 8253 PIT timer is not fully implemented.github.com · read 9 Oct 2026