Repolode
otya128

otya128/winevdm

Runs 16-bit Windows (1.x to 3.1) programs on 64-bit Windows through an emulator, with a DOS mode for DOS executables.

Stars
3,652
Forks
209
Open issues
352
Last commit
14 days ago

What is it?

winevdm is a 16-bit Windows emulator ported to 64-bit Windows. Classic Win16 applications from Windows 1.x, 2.x, 3.0 and 3.1 can run directly on modern 64-bit systems, where the native NTVDM subsystem no longer supports them.

The project combines a CPU emulator with Wine-derived code that converts 16-bit API calls into 32-bit Win32 calls, and it includes a DOS emulation layer for running DOS executables. Win16 programs can be started by dragging them onto otvdm.exe or by running otvdmw.exe, and an installer mechanism handles 16-bit setup programs.

The project also redirects writes to the WINDOWS directory for older programs that save settings there, since recent Windows versions block that. DOS emulation is described as incomplete, with DOSBox or MS-DOS Player recommended for DOS software.

Key features

  • 01Runs Win16 executables from Windows 1.x through 3.1 on 64-bit Windows.
  • 02Converts 16-bit API calls to 32-bit Win32 calls using Wine-derived code.
  • 03Includes a DOS emulation layer for running DOS executables.
  • 04Supports drag-and-drop launching and an install.inf-based installer flow.
  • 05Redirects writes to the WINDOWS directory for older programs that save settings there.

Use cases

  • Running legacy Windows 3.1 business or game software on a modern 64-bit PC.
  • Testing or preserving old Win16 applications without a virtual machine.
  • Launching simple DOS programs from the command line, with DOSBox as a fallback.

Quick start

  1. 1

    Download the stable version from the releases page

  2. 2

    Install the Visual C++ Redistributable if VCRUNTIME140.dll is missing

  3. 3

    Run the install shortcut, or right-click install.inf and select Install

  4. 4

    Run a Win16 program through the emulator

    winevdm.exe CALC.EXE

Things to know

  • It runs only on 64-bit Windows.
  • DOS emulation is incomplete, so DOSBox or MS-DOS Player is recommended for DOS programs.
  • It is licensed under GPL-2.0, a copyleft license.

In collections

Topics

#emulator#win16#windows#legacy-software#retro-computing#dos

FAQ

What is winevdm?
Runs 16-bit Windows (1.x to 3.1) programs on 64-bit Windows through an emulator, with a DOS mode for DOS executables. winevdm is a 16-bit Windows emulator ported to 64-bit Windows. Classic Win16 applications from Windows 1.x, 2.x, 3.0 and 3.1 can run directly on modern 64-bit systems, where the native NTVDM subsystem no longer supports them.
Is winevdm free to use? What license does it have?
winevdm is open source under the GPL-2.0 license. Check the license terms before using it in commercial products.
Is winevdm still maintained?
Actively maintained. The last commit to winevdm was on Oct 24, 2026.
What can I use winevdm for?
Running legacy Windows 3.1 business or game software on a modern 64-bit PC. Testing or preserving old Win16 applications without a virtual machine. Launching simple DOS programs from the command line, with DOSBox as a fallback.
How do I install winevdm?
Download the stable version from the releases page Install the Visual C++ Redistributable if VCRUNTIME140.dll is missing Run the install shortcut, or right-click install.inf and select Install Run a Win16 program through the emulator: winevdm.exe CALC.EXE
Where can I get winevdm?
The source code and installation instructions are on GitHub: https://github.com/otya128/winevdm

Summary generated by AI from the project's README. GitHub stats refresh daily.

Related projects

Python tool that converts VGM sound-chip register logs for X68000 into structured MML and PCM IR, with optional MDX/PDX compilation.

Other#vgm#mml#x68000
13+1 this week0PythonMITUpdated 3 days ago