VOGONS


First post, by figbash

User metadata
Rank Newbie
Rank
Newbie

Hi, I'm new here 😀 I recently purchased an SC-88ST Pro, and I mostly bought it to play Descent, so of course that's the only game I can't get to work with it.
I have a machine running DOS 6.22 with an SB-16 and an Awe64 Gold, and another machine running Win98SE with an SB Live.
Whenever I run Descent with the music in setup set to the General MIDI option, it will lock up the computer it's on. Doom, Duke3D, and Raptor all work fine with the SC-88 on both. Descent also works fine when not set to General MIDI.
Descent 2 has the same issue, only it says something about not being able to detect sound before the crash.

Has anyone had any luck with getting Descent to work with external sound modules and sound blaster cards? Alternatively, are there any affordable sound cards it does work with?

Thanks, it's driving me nuts!

Reply 1 of 17, by jheronimus

User metadata
Rank Oldbie
Rank
Oldbie

Which card do you connect SC-88ST to? Is it SB16 or AWE64 Gold? What are your resource configurations? IRQ/DMA/MPU ports?

There could be a conflict between the Roland and AWE64 MIDI capabilities. If you try to use AWE64 in General MIDI mode under DOS 6.22 in a protected mode game (such as Descent) you will have your system freeze. AWE32/64 will only work in a native AWE32 mode in games. In GM mode the game will address the card through an MPU port which is partly done in software (hence the issue with protected mode games).

So ideally you should connect Roland to SB16 and change the MPU401's port so that it would be different from AWE64's MPU401 port. For instance, set SB16 MPU to 300 and AWE64 Gold's MPU to 330.

MR BIOS catalog
Unicore catalog

Reply 2 of 17, by jesolo

User metadata
Rank l33t
Rank
l33t

Any particular reason why you have both a SB16 and AWE64 in the same PC? Unless you have the SB16 installed for real OPL3 FM synthesis, I can't see why you would need to install both sound cards. Since you have a Sound Canvas already, do you need the AWE64? What is the model number of your SB16?

However, if you do connect your Sound Canvas to your AWE64's MIDI/Game port, ensure that you have the following statement in your Autoexec.bat file:
SET MIDI=SYNTH:2
This will then route all MIDI data to your MIDI/Game port.
SYNTH:1 is obviously to route MIDI data to the onboard EMU8000 synthesis chip.

You can create a boot menu configuration to enable you to select either one of the two.

Reply 4 of 17, by figbash

User metadata
Rank Newbie
Rank
Newbie

Sorry it sounded like both cards are in at the same time, there is only one sound card in it at a time, the DOS machine simply has ISA slots so I can use both of those cards on it vs the other which only has PCI. I'd prefer to use the Awe64 simply because I like it more, but I have been trying the SB16 as it has a lot less variables for figuring this out.

I have tried it with both cards and the same thing happens with both. The settings are 5,220,330,1 on both cards, just the defaults, and currently all there is in the machine is the SB16 and an S3 ViRGE/DX. The SB16 model is CT2940. I don't think it's a resource issue as all other games seem to work and there's nothing to conflict with.

I'm just trying to verify that anyone has managed to get Descent 1/2 in particular to work with an SB16 and a Sound Canvas.

Reply 6 of 17, by jheronimus

User metadata
Rank Oldbie
Rank
Oldbie
figbash wrote:

Sorry it sounded like both cards are in at the same time, there is only one sound card in it at a time, the DOS machine simply has ISA slots so I can use both of those cards on it vs the other which only has PCI. I'd prefer to use the Awe64 simply because I like it more, but I have been trying the SB16 as it has a lot less variables for figuring this out.

I have tried it with both cards and the same thing happens with both. The settings are 5,220,330,1 on both cards, just the defaults, and currently all there is in the machine is the SB16 and an S3 ViRGE/DX. The SB16 model is CT2940. I don't think it's a resource issue as all other games seem to work and there's nothing to conflict with.

I'm just trying to verify that anyone has managed to get Descent 1/2 in particular to work with an SB16 and a Sound Canvas.

How did you connect Roland to your SB16 gameport? I had issues once when I've plugged in both MIDI IN and MIDI OUT cables into the module. Some games would stutter heavily, others would give some sort of errors. You only need to connect your MIDI OUT cable into the MIDI IN port, not both of them.

MR BIOS catalog
Unicore catalog

Reply 7 of 17, by figbash

User metadata
Rank Newbie
Rank
Newbie
jheronimus wrote:

How did you connect Roland to your SB16 gameport? I had issues once when I've plugged in both MIDI IN and MIDI OUT cables into the module. Some games would stutter heavily, others would give some sort of errors. You only need to connect your MIDI OUT cable into the MIDI IN port, not both of them.

I'm just going from the game port on the SB16 to the MIDI-IN on the module, I had read here that having both caused issues. Too bad I wish that was it!

Reply 8 of 17, by jesolo

User metadata
Rank l33t
Rank
l33t
figbash wrote:

Sorry it sounded like both cards are in at the same time, there is only one sound card in it at a time, the DOS machine simply has ISA slots so I can use both of those cards on it vs the other which only has PCI. I'd prefer to use the Awe64 simply because I like it more, but I have been trying the SB16 as it has a lot less variables for figuring this out.

I have tried it with both cards and the same thing happens with both. The settings are 5,220,330,1 on both cards, just the defaults, and currently all there is in the machine is the SB16 and an S3 ViRGE/DX. The SB16 model is CT2940. I don't think it's a resource issue as all other games seem to work and there's nothing to conflict with.

I'm just trying to verify that anyone has managed to get Descent 1/2 in particular to work with an SB16 and a Sound Canvas.

Can you clarify what does 5 & 1 constitute? Is 5 your IRQ & 1 your DMA channel? What is your High DMA channel? Is it DMA 5 or, are you also using your low DMA channel?

Last edited by jesolo on 2019-10-31, 15:29. Edited 1 time in total.

Reply 9 of 17, by jesolo

User metadata
Rank l33t
Rank
l33t
maxtherabbit wrote:

AFAIK, the SET MIDI is only relevant for creative's DOS .MID player and does not affect games whatsoever

Not on an AWE based card. The SET MIDI=SYNTH parameter specifically defines where MIDI data should be routed to.

Last edited by jesolo on 2019-10-31, 15:29. Edited 1 time in total.

Reply 11 of 17, by figbash

User metadata
Rank Newbie
Rank
Newbie
jheronimus wrote:

Are there any other cards in your system? I remember that some NICs can conflict with MPU port.

I pulled out all the cards besides the SB16 and video card

jesolo wrote:

Can you clarify what does 5 & 1 constitute? Is 5 your IRQ & 1 your DMA channel? What is your High DMA channel? Is it DMA 5 or, are you also using your low DMA channel?

IRQ 5, IO 220, MPU 330, DMA 1 and 5

Reply 12 of 17, by jesolo

User metadata
Rank l33t
Rank
l33t
figbash wrote:
I pulled out all the cards besides the SB16 and video card […]
Show full quote
jheronimus wrote:

Are there any other cards in your system? I remember that some NICs can conflict with MPU port.

I pulled out all the cards besides the SB16 and video card

jesolo wrote:

Can you clarify what does 5 & 1 constitute? Is 5 your IRQ & 1 your DMA channel? What is your High DMA channel? Is it DMA 5 or, are you also using your low DMA channel?

IRQ 5, IO 220, MPU 330, DMA 1 and 5

I seem to recall Duke Nukem 3D having issues with the high DMA channel. Not sure if Descent has the same problem but, if your setup menu does have the option to select DMA5, just select DMA1.

Reply 13 of 17, by maxtherabbit

User metadata
Rank l33t
Rank
l33t
jesolo wrote:
maxtherabbit wrote:

AFAIK, the SET MIDI is only relevant for creative's DOS .MID player and does not affect games whatsoever

Not on an AWE based card. The SET MIDI=SYNTH parameter specifically defines where MIDI data should be routed to.

at least on my AWE64, if the game is outputting general MIDI to port 330, the ONLY way for me to get synth through the EMU chip is through the use of AWEUTIL /EM:GM and changing the SET MIDI parameter does nothing

that being said, for games that have native AWE support it may be different?

Reply 14 of 17, by jesolo

User metadata
Rank l33t
Rank
l33t

I think you're confusing real mode and protected mode in game GM support on AWE cards versus where the MIDI data is being routed to.
As you've mentioned, for real mode games, you have to use the /EM:GM parameter in Aweutil. For protected mode games, you require native AWE support (you then just set Aweutil with the /S parameter).

However, if you wish to connect an external MIDI synth (like a Roland Sound Canvas) to your AWE64 and you wish to play the GM music of your games via the Sound Canvas, then you use the /S parameter in Aweutil and you insert the SET MIDI=SYNTH:2 statement in your Autoexec.bat file.

That way, you completely bypass the EMU8000 synthesis chip.

Reply 15 of 17, by maxtherabbit

User metadata
Rank l33t
Rank
l33t
jesolo wrote:
I think you're confusing real mode and protected mode in game GM support on AWE cards versus where the MIDI data is being routed […]
Show full quote

I think you're confusing real mode and protected mode in game GM support on AWE cards versus where the MIDI data is being routed to.
As you've mentioned, for real mode games, you have to use the /EM:GM parameter in Aweutil. For protected mode games, you require native AWE support (you then just set Aweutil with the /S parameter).

However, if you wish to connect an external MIDI synth (like a Roland Sound Canvas) to your AWE64 and you wish to play the GM music of your games via the Sound Canvas, then you use the /S parameter in Aweutil and you insert the SET MIDI=SYNTH:2 statement in your Autoexec.bat file.

That way, you completely bypass the EMU8000 synthesis chip.

I'm not confused, but the purpose for me bringing up those seemingly unrelated things was to point out that the General MIDI games who write data to 0x330 do not play through the EMU chip without the intervention of AWEUTIL. I assume that means the data is being shat out the gameport MIDI irrespective of the SET MIDI environment variable (since it's not going anywhere else), but I lack an external MIDI module to prove it.

Reply 17 of 17, by jesolo

User metadata
Rank l33t
Rank
l33t
maxtherabbit wrote:

I'm not confused, but the purpose for me bringing up those seemingly unrelated things was to point out that the General MIDI games who write data to 0x330 do not play through the EMU chip without the intervention of AWEUTIL. I assume that means the data is being shat out the gameport MIDI irrespective of the SET MIDI environment variable (since it's not going anywhere else), but I lack an external MIDI module to prove it.

Apologies, you are correct.

I recalled of a POST here on Vogons where this was previously was discussed and my memory was a bit hazy in terms of what the purpose of the SET MIDI=SYNTH parameter actually was.
After founding that POST again (SET MIDI AUTOEXEC.BAT Question), I've confirmed that the SET MIDI=SYNTH parameter is indeed only meant for Creative's own "Play" utility in order to route MIDI data to either the internal EMU8000 synthesis chip or, to the external game/MIDI port. Otherwise, the use of this environment variable is completely optional.

As for games that use native AWE support. If you specify "AWE32 MIDI" or similar option in the game's setup menu, it will address the EMU8000 synthesis chip directly and completely bypass the MPU-401 MIDI interface (normally at port 330h). As I recall, in such a case, you need to specify what your EMU8000 synthesis' address is (via the SET BLASTER environment variable). There is a FAQ that was released by Creative that goes into detail on how Aweutil works.
If you do wish to use an external MIDI synth with these games, then you would just select "General MIDI" or "Sound Canvas" in the game's setup menu, run Aweutil with the /S parameter and it should then work.