VDMSound

From Wikipedia, the free encyclopedia
VDMSound
Original author(s)Vlad Romascanu [1]
Initial releaseJuly 4, 2000; 23 years ago (2000-07-04) [2]
Final release
2.0.4 [2] / August 4, 2001; 22 years ago (2001-08-04) [2]
Preview release
2.1.0 Beta [1] / July 5, 2003; 20 years ago (2003-07-05) [1]
Operating systemWindows NT/2000/XP and 95/98/Me
Available inEnglish
TypeEmulator
LicenseGPLv2
Websitesourceforge.net/projects/vdmsound/ Edit this at Wikidata

VDMSound was an open-source (licensed under GPLv2) emulator of legacy sound card devices, designed to allow video games and other applications written for MS-DOS to run on the Microsoft Windows NT/2000/XP/95/98/Me operating systems. Its author is Vlad Romascanu.[1][3]

Features[edit]

VDMSound emulates Adlib and Sound Blaster cards (standard, pro and 16), parallel port DAC, and an MPU 401 MIDI (UART-mode) interface. It also provides joystick support.[4]

The official VDMSound builds runs on Windows NT/2000/XP. A Windows 95/98/ME port was contributed by Chris Chua.[5]

Sound recording[edit]

VDMSound allows the recording of all captured sound and music to WAV and MID files.[6]

User mappings[edit]

VDMSound allows the user to provide custom mappings for MIDI instruments as well as for joystick buttons and axes.

  • MIDI mappings are particularly useful when the type of MIDI device supported by a game (e.g. MT-32) is different from the type of hardware or software device actually present on the system (e.g. Microsoft GS Wavetable SW Synth.)[7]
  • Joystick mappings are needed principally for DOS-based flight simulation applications, when matching yokes, throttles and pedals to the simulator's expected configuration.[8]

Graphical user interface[edit]

As of version 2.1.0 beta, VDMSound also includes a Wizard graphical user interface (integrated as a Windows shell extension), accessible by right-clicking on any MS-DOS executable.[9]

Design[edit]

As opposed to DOSBox, which emulates an entire x86 personal computer with DOS, VDMSound emulates only the sound hardware. All other aspects of DOS emulation are managed natively by the Windows operating system's 16-bit subsystem (NTVDM) through virtualization.[10] This results in reduced system load (and thus games will run faster than under DOSBox on the same hardware specifications), at the expense of reduced compatibility (see limitations below.)

Limitations[edit]

The Windows operating system's 16-bit subsystem is lacking in several areas which directly or indirectly affect VDMSound emulation:

  • Incomplete DPMI support in Windows NT/2000/XP results in a number of games not starting or crashing randomly when they communicate with the emulated sound card
  • Improper interrupt emulation in Windows NT/2000 (but not XP) results in some games hanging when they communicate with the emulated sound card (requiring patching via CLI2NOP.[11])
  • Improper PIC emulation in Windows results in games not being able to use normal (or intelligent) mode, limiting VDMSound's MPU-401 emulation support to UART-mode only.

DOSBox does not rely on the Windows 16-bit subsystem and is thus not subject to these limitations.

History[edit]

VDMSound started as a private project in 1998, in Montreal, its motivating purpose being that of capturing in-game MIDI music through software while taking advantage of Windows NT's 16-bit subsystem virtualization. It became open-source and moved to SourceForge after a full rewrite in the early spring of 2001. It was discontinued in early 2004 (last checkin occurred on 2004-02-14), when additional improvements in emulation were no longer possible due to limitations in the Windows 16-bit subsystem. The sound emulation code from VDMSound has since been integrated into DOSBox.[12]

VDMSound was not compatible with Windows Vista, making the project obsolete. The current version, 2.1.0 beta, will remain the final version.

References[edit]

  1. ^ a b c d "The VDMSound project page". Archived from the original on 2005-01-29. Retrieved 2017-04-10.
  2. ^ a b c "What's New". Archived from the original on 2004-12-09. Retrieved 2017-04-10.
  3. ^ VDMSound on SourceForge
  4. ^ VDMSound README (rtf)
  5. ^ Win9x + VDMSound **ALPHA**
  6. ^ VOGONS: How can i dump the sound to a wav file?
  7. ^ VDMSound FAQ: The music sounds strange...
  8. ^ VOGONS: Joystick Emulation
  9. ^ The Sierra Help Pages: VDMS Launchpad
  10. ^ "Windows Driver Development Kit: Application-Based Intercepts". Archived from the original on 2010-03-04. Retrieved 2022-07-10.
  11. ^ CLI2NOP FAQ
  12. ^ Is the latest version of VDMSound 2.1.0?

External links[edit]