trigolet_rodolphe wrote:So I am curious - is this an AWE64 issue in general? Is MIDI only output through the SPDIF port in DOS on an AWE64 Gold, as I partly suspect? I've been unable to find a definitive answer to either.
Hi, I am the (somewhat) happy owner of a SB64 AWE GOLD, too 😀 I write "somewhat" happy, because even though it's one of the best DOS-compatible cards I have ever owned, it does have its quirks when it comes to MIDI and FM. A few facts I observed during the years:
1. There is no real MPU-401 under port 330h. Applications are expected to use the EMU8000 chip directly instead (via 620h). However, a funky MPU-401 emulation layer is provided for desperate people, it requires you to load AWEUTIL as a TSR. AWEUTIL uses some NMI magic to catch I/O events on port 330h, and translates them into EMU8000 messages. This works only with real-mode applications, and even then - not every one. I noticed for example that if I try to use XMS calls right after having output a note to AWEUTIL, the driver will crash (and my PC reboots). If I wait 2ms between AWEUTIL calls and XMS calls, then everything works fine. All this to say: don't count on AWEUTIL as a 100% reliable method to get music (I wasn't able to make it work with Wacky Wheels for instance, no regrets though, since Wacky Wheels MIDI is awful anyway - the OPL music in this game is much brighter).
Additional note: for the above-mentionned MPU-401 AWEUTIL emulation to work, the card MUST have the "MFBEN" jumper (JP4) set. This appears to be responsible for generating NMIs.
2. The FM part is not a fully standard OPL3 either (or at least - not directly wired on 388h like the original YMF262 should be). It works pretty well and all, but unlike real OPL3, it needs to be activated ("rerouted?") by the AWEUTIL driver first (AWEUTIL /S is enough, no need for the TSR part, BUT if an application screws with the EMU chip, then you might loose FM sound until you re-run AWEUTIL /S again). However, sometimes - let's say every 3 reboots or so - FM music works even without being initialized, but the sound is noisier than it should, and some nasty hissing/cycling can be heard in background (while if I call AWEUTIL /S at boot time, then the FM synth works like a charm, always).
As for the SPDIF output - I do have it, but never used it (I don't even have any hardware that I could connect to that).
Finally, here I provide my autoexec.bat & config.sys lines related to the SB gold initialization, I hope it will help:
=== CONFIG.SYS ===
DEVICE=C:\SYSTEM\SB64\CTCM.EXE
=== AUTOEXEC.BAT ===
SET MIDI=SYNTH:1 MAP:E MODE:0
CD C:\SYSTEM\SB64
CTCU /S
DIAGNOSE /S
AWEUTIL /S
REM Uncomment the memory hog below only if desperate for MPU-401 emulation
REM AWEUTIL /EM:GM /KEY-
MIXERSET /P /Q
CD \
Note, that I have no BLASTER variable set at all. The BLASTER variable is automatically set by the DIAGNOSE driver. On my system, I obtain this:
C:\SET BLASTER
BLASTER=A220 I5 D1 H5 P330 E620 T6
Overall, I'm pretty happy with the SB64 AWE Gold, as it produces a really nice sound (especially when listening to MIDI). If I wouldn't be so much into MIDI listening however, I'd probably replace it with my Aztech Sound Galaxy Waverider 32, which works flawlessly, provides a real MPU-401 interface and has really clean FM synth, and doesn't require any drivers at all to work (but its on-board GM samples aren't as nice as the ones on the SB64 Gold).