I've been struggling to fix this too for the past week as I had the same issue with a Sound Blaster AWE64 CT4500 ISA. I never had MIDI working in DOS, but it worked in Windows 9x or XP.
Diagnose.exe worked for 8bit and 16bit tests and sound could be heard, but when playing Synthesized music there was no sound although it should've been (also no errors).
I managed to fix this by installing the AWE64 DOS package (that creates c:\SB16) , followed by the CTCM from the DOS/Win31 package.
Run CTCM.EXE with no parameters followed by AWEUTIL.COM with no parameters.
Now, when running DIAGNOSE.EXE, after selecting the Base Port, it automatically finds Wave-Table address 620H and tests the 512KB of RAM (it didn't do this before), then continues with the MPU401 address and the rest.
When it gets to the sound testing part a new option shows up: 4. AWE Synthesized music .
All 4 options produce sound now.
And it works no matter whether I choose BIOS to allocated resources automatically (Auto PnP IRQs.... ) or if I manually allocate them.
With these lines, I have all 4 sound options working right after booting into DOS:
my AUTOEXEC.BAT has:
SET CTCM=C:\CTCM
SET SOUND=C:\SB16
SET BLASTER=A220 I5 D1 H5 P330 E620 T6
REM C:\CTCM\CTCU /S
SET MIDI=SYNTH:1 MAP:E MODE:0
C:\SB16\DIAGNOSE /S
C:\SB16\AWEUTIL /S
C:\SB16\MIXERSET /P /Q
my CONFIG.SYS has:
DOS=HIGH,UMB
STACKS=9,256
FILES=130
BUFFERS=40
LASTDRIVE=Z
DEVICEHIGH=C:\CTCM\CTCM.EXE
Good luck!