Recently, I had some time on my hands, so I dig up some old games that I had previously enjoyed playing. These games are:

  1. Indiana Jones and The Last Crusade by Lucas Arts
  2. The Journeyman Project Turbo by Presto Studios
  3. The Journeyman Project 2: Buried in Time(Review)
  4. The Journeyman Project 3: Legacy of Time(Editorial, Review)
I bought BIT around 1995, when Windows 95 was launched. I felt it was so great, when the next version, Legacy of Time came out in 98 or so, I bought it. With the exception of Journeyman Project Turbo, JP2 and JP3 were both multi-CD games, and requires disk swapping during game play.

When I started playing LOT this time, I wanted no disk swaps, so I ran Sysinternal's file monitoring utility, filemon, to see how LOT was detecting it's CDs. Turns out that LOT was just enumerating all drives, and if a particular file existed in the root directory of a drive, it considered that a LOT CD. So, I copied each LOT CD to it's own directory, and created the following STARTLOT.CMD file:

SUBST M: "C:\Program Files\Red Orb Entertainment\Journeyman Project 3 - Legacy of Time\J3data\DISK1"
SUBST N: "C:\Program Files\Red Orb Entertainment\Journeyman Project 3 - Legacy of Time\J3data\DISK2"
SUBST O: "C:\Program Files\Red Orb Entertainment\Journeyman Project 3 - Legacy of Time\J3data\DISK3"
SUBST P: "C:\Program Files\Red Orb Entertainment\Journeyman Project 3 - Legacy of Time\J3data\DISK4"
LEGACY.EXE
SUBST M: /D
SUBST N: /D
SUBST O: /D
SUBST P: /D

SUBST is a very old OS command which substitutes path for drives, existing since the late 80s. When a SUBST drive is referenced by a program, the Windows file system redirects it to the path specified. So, that solved my disk swapping problem.

I then went on to play Indiana Jones and The Last Crusade. Two problems surfaced. One, a divide by zero error during application startup, then the application aborted. If the application managed to skip that error, then, when playing the game, there was no sound. This was due to the fact that Indiana Jones and The Last Crusade was published in 1989. Games at that time only supported the Adlib sound standard, and Creative's (a Singapore company) Sound Blaster standard. I was scouting for an emulation mode for my own sound chip (which was embedded in the motherboard), when I came across the open source VDMSound project.

In the readme.rtf file included in the download, VDMSound is described as:

VDMSound is a program that overcomes what has probably been the most exasperating limitation of DOS boxes since Windows NT — sound support.  VDMSound is an open, plug-in oriented platform that emulates an MPU-401 interface (for outputting high-quality MIDI music), a SoundBlaster compatible (SB16, SBPro 2, SB2, SBPro, etc.) implementation (for digital sound effects and FM/AdLib music), as well as a standard game-port interface (for playing games with joystick support).  In development are improvements to the existing joystick emulation, and possibly VESA support.

Unlike all the Win9x SoundBlaster ISA ‘legacy’ drivers available from a variety of PCI soundcard manufacturers, VDMSound is not a mere ‘wrapper’ or ‘bridge’ to existing audio hardware.  It is a self-contained, 100% software emulation program that is completely independent of your audio hardware type and settings.  VDMSound works with any soundcard, and will even work on computers that have no audio hardware at all (for instance, instead of outputting sounds through your soundcard using the standard Windows drivers, VDMSound can easily output them to disk).

After installing VDMSound, I was able to get The Last Crusade to play it's MIDI music properly.

PS: There is a forum site: Very Old Games On New Systems, that discusses how to play old games on new systems.