So, a little-known fact about the Apogee Sound System (the audio library used in ROTT and differing Build Engine games), is that […]
So, a little-known fact about the Apogee Sound System (the audio library used in ROTT and differing Build Engine games), is that it has audio recording capabilities.
These appear to be used for voice chat in multiplayer ROTT LAN sessions. If you see any DemandFeed-related code in the audio library (e.g., FX_StartDemandFeedPlayback), it seems to be used on the receiving side as follows: First, audio arrives from the network and is added to an internal playback buffer. The DemandFeed code is then used in order to play back the sound data from this buffer. This differs from playing a premade audio segment, say a WAV or VOC file.
The opposite is essentially done for sound which is recorded and then sent over LAN.
Now, as it turns out, the last version of VMware's desktop VM software has improved SB16 support. There might still be enough which is missing, but audio recording is, in fact, covered, at least partially. (I actually don't recall checking if this worked before the update, but it's still been a good chance.)
Other than VMware, and possibly also NTVDM for Windows XP, only other environments which I know to have working audio recording for SB-compatible DOS programs are actual DOS/Win9x setups with compatible sound cards.
As the following step, locating DOS software which supports audio recording with the SB *and* can do so under VMware turned out to be less than "simple".
While not letting me hear the recording as-is, I could at least see the reported volumes, using Cthugha: http://www.afn.org/~...a/archives.html
As for actually hearing whatever is recorded with a microphone: Eventually, I looked at the Apogee Sound System sources, which include the sound playback utility PS, and modified it into RAW PCM sound recorder, shortly named RS.
Source on GitLab: https://gitlab.com/NY00123/audiolib-rs
Last binary and source are currently available from my Duke4.net-hosted site: https://ny.duke4.net/files.html