VDMSound
Encyclopedia
VDMSound is an open source
(licensed under the GPL) 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 system
s. Its author is Vlad Romascanu.
and Sound Blaster
cards (standard, pro and 16), parallel port
DAC, and an MPU 401 MIDI (UART-mode) interface. It also provides joystick
support.
The official VDMSound builds run on Windows NT/2000/XP. A Windows 95/98/ME port was contributed by Chris Chua.
and MID
files.
(integrated as a Windows shell extension), accessible by right-clicking on any MS-DOS executable.
, 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. 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.)
DOSBox does not rely on the Windows 16-bit subsystem and is thus not subject to these limitations.
, 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.
VDMSound is not compatible with Windows Vista
, making the project obsolete. The current version, 2.1.0 beta, will remain the final version.
Open source
The term open source describes practices in production and development that promote access to the end product's source materials. Some consider open source a philosophy, others consider it a pragmatic methodology...
(licensed under the GPL) emulator
Emulator
In computing, an emulator is hardware or software or both that duplicates the functions of a first computer system in a different second computer system, so that the behavior of the second system closely resembles the behavior of the first system...
of legacy sound card
Sound card
A sound card is an internal computer expansion card that facilitates the input and output of audio signals to and from a computer under control of computer programs. The term sound card is also applied to external audio interfaces that use software to generate sound, as opposed to using hardware...
devices, designed to allow video games and other applications written for MS-DOS
MS-DOS
MS-DOS is an operating system for x86-based personal computers. It was the most commonly used member of the DOS family of operating systems, and was the main operating system for IBM PC compatible personal computers during the 1980s to the mid 1990s, until it was gradually superseded by operating...
to run on the Microsoft Windows
Microsoft Windows
Microsoft Windows is a series of operating systems produced by Microsoft.Microsoft introduced an operating environment named Windows on November 20, 1985 as an add-on to MS-DOS in response to the growing interest in graphical user interfaces . Microsoft Windows came to dominate the world's personal...
NT/2000/XP/95/98/Me operating system
Operating system
An operating system is a set of programs that manage computer hardware resources and provide common services for application software. The operating system is the most important type of system software in a computer system...
s. Its author is Vlad Romascanu.
Features
VDMSound emulates AdlibAdLib
Ad Lib, Inc. was a manufacturer of sound cards and other computer equipment founded by Martin Prevel, a former professor of music and vice-dean of the music department at the Université Laval...
and Sound Blaster
Sound Blaster
The Sound Blaster family of sound cards was the de facto standard for consumer audio on the IBM PC compatible system platform, until the widespread transition to Microsoft Windows 95, which standardized the programming interface at application level , and the evolution in PC design led to onboard...
cards (standard, pro and 16), parallel port
Parallel port
A parallel port is a type of interface found on computers for connecting various peripherals. In computing, a parallel port is a parallel communication physical interface. It is also known as a printer port or Centronics port...
DAC, and an MPU 401 MIDI (UART-mode) interface. It also provides joystick
Joystick
A joystick is an input device consisting of a stick that pivots on a base and reports its angle or direction to the device it is controlling. Joysticks, also known as 'control columns', are the principal control in the cockpit of many civilian and military aircraft, either as a center stick or...
support.
The official VDMSound builds run on Windows NT/2000/XP. A Windows 95/98/ME port was contributed by Chris Chua.
Sound recording
VDMSound allows the recording of all captured sound and music to WAVWAV
Waveform Audio File Format , is a Microsoft and IBM audio file format standard for storing an audio bitstream on PCs...
and MID
Musical Instrument Digital Interface
MIDI is an industry-standard protocol, first defined in 1982 by Gordon Hall, that enables electronic musical instruments , computers and other electronic equipment to communicate and synchronize with each other...
files.
User mappings
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.)
- Joystick mappings are needed principally for DOS-based flight simulation applications, when matching yokes, throttles and pedals to the simulator's expected configuration.
Graphical user interface
As of version 2.1.0 beta, VDMSound also includes a Wizard graphical user interfaceWizard (software)
A software wizard or setup assistant is a user interface type that presents a user with a sequence of dialog boxes that lead the user through a series of well-defined steps. Tasks that are complex, infrequently performed, or unfamiliar may be easier to perform using a wizard...
(integrated as a Windows shell extension), accessible by right-clicking on any MS-DOS executable.
Design
As opposed to DOSBoxDOSBox
DOSBox is emulator software that emulates an IBM PC compatible computer running MS-DOS. It is intended especially for use with old PC games. DOSBox is free software....
, which emulates an entire x86 personal computer with DOS
DOS
DOS, short for "Disk Operating System", is an acronym for several closely related operating systems that dominated the IBM PC compatible market between 1981 and 1995, or until about 2000 if one includes the partially DOS-based Microsoft Windows versions 95, 98, and Millennium Edition.Related...
, 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. 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
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.)
- Improper PICProgrammable Interrupt ControllerIn computing, a programmable interrupt controller is a device that is used to combine several sources of interrupt onto one or more CPU lines, while allowing priority levels to be assigned to its interrupt outputs. When the device has multiple interrupt outputs to assert, it will assert them in...
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
VDMSound started as a private project in 1998, in MontrealMontreal
Montreal is a city in Canada. It is the largest city in the province of Quebec, the second-largest city in Canada and the seventh largest in North America...
, 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.
VDMSound is not compatible with Windows Vista
Windows Vista
Windows Vista is an operating system released in several variations developed by Microsoft for use on personal computers, including home and business desktops, laptops, tablet PCs, and media center PCs...
, making the project obsolete. The current version, 2.1.0 beta, will remain the final version.