VOGONS


First post, by Lazer42

User metadata
Rank Newbie
Rank
Newbie

I have a socket 7 build in which I have two soundcards: an SB16 CT2230 and an Aztech SG Pro 16II.

These are very similar cards of course. The main reason I got the Aztech was because some games have been nearly unplayable due to very bad single cycle DMA bug behavior out of the SB16. I originally intended the Aztech as a full on replacement for the SB16, but I'm now considering using both because the SB16, when it is working correctly with a game, really does seem to me to have much cleaner sound than the Aztech.

What I'd ideally like to do is use the Sb16 as the "default" card for most things and only have a game use Aztech if I need to. I will also probably use the Aztech as the full time MPU401 output to avoid any hanging note issues. Both cards require a physical jumper to set the IO, and also have jumpers for the MPU so I can set the Aztech to 330 and the Sb16 to 300.

My best idea for doing this right now is to set the Sb16 at more "secondary" values: IO240, IRQ7, DMA3 and the Aztech at more the "primary" values of IO220m IRQ5, DMA1. This is because from what I can tell, I'm more likely to encounter games which will actually require the Aztech (i.e., to click and pop on the SB16) that will have no way to set stuff specifically, will ignore the BLASTER variable, and will just look to IO220 for the sound card no matter what I do, whereas games which will work well with the SB16 will be more likely to be newer and let me specifically configure them to use 240/7/3.

The downside to this is that any older games which would work fine on the SB16 will be use the Aztech as well.

Is there any way around this, or a better way to configure things so I am using the SB16 most of the time and can actually use the Aztech only when absolutely necessary?

Reply 1 of 4, by darry

User metadata
Rank l33t++
Rank
l33t++

My understanding is that what you want to do would require being able to re-assign IO ports and IRQs dynamically, so you could switch settings between cards as needed to run a given game .This would require cards that can be soft-configured (as opposed to using jumpers), which you do not have .

The only way around this that I see could be called "hacky", at best : using cables like these https://www.amazon.ca/gp/product/B01M1IEUAF to extend the jumper blocks for card configuration outside of the PC and into an external jumper board. Then, you could reconfigure the cards externally, even to the point of switching between pre-defined preset configurations with a switch if you want to make it fancy .

Points to consider :
a) You would to turn off the PC BEFORE changing configs.
b) Extending the jumper blocks in this way may not work well because of noise and/or impedance constraints
c) Replacing your cards with soft configurable ones (no jumpers) may be easier .

Reply 2 of 4, by Joseph_Joestar

User metadata
Rank l33t
Rank
l33t

I think your current setup is fine. It's mostly older games which suffer from the single-cycle DMA bug and they often expect the sound card at the standard settings, which your Aztech currently uses. Newer games usually let you select the address, IRQ and DMA values in setup, so you should have no problems with configuring those to use the SB16.

If the BLASTER variable is your only issue, simply set up two batch files e.g. SB16.BAT and SBPRO.BAT and run whichever you need to set the relevant values before starting a game.

PC#1: Pentium MMX 166 / Soyo SY-5BT / S3 Trio64V+ / Voodoo1 / YMF719 / AWE64 Gold / SC-155
PC#2: AthlonXP 2100+ / ECS K7VTA3 / Voodoo3 / Audigy2 / Vortex2
PC#3: Athlon64 3400+ / Asus K8V-MX / 5900XT / Audigy2
PC#4: i5-3570K / MSI Z77A-G43 / GTX 970 / X-Fi

Reply 3 of 4, by darry

User metadata
Rank l33t++
Rank
l33t++
Joseph_Joestar wrote on 2021-05-27, 15:44:

I think your current setup is fine. It's mostly older games which suffer from the single-cycle DMA bug and they often expect the sound card at the standard settings, which your Aztech currently uses. Newer games usually let you select the address, IRQ and DMA values in setup, so you should have no problems with configuring those to use the SB16.

If the BLASTER variable is your only issue, simply set up two batch files e.g. SB16.BAT and SBPRO.BAT and run whichever you need to set the relevant values before starting a game.

That would indeed be much simpler, if it covers all the OP's use cases .

However, it does not address some potential use cases such as , for example, having two different games that are both hard coded to a given set of IRQ/DMA/IO settings (likely IRQ 7, DMA 1 and , 220H) but that OP would like to use on different cards . On second thought, I would guess that this is scenario unlikely, and I am probably just over-analyzing the problem .

Reply 4 of 4, by dionb

User metadata
Rank l33t++
Rank
l33t++
darry wrote on 2021-05-27, 15:55:

[...]

That would indeed be much simpler, if it covers all the OP's use cases .

However, it does not address some potential use cases such as , for example, having two different games that are both hard coded to a given set of IRQ/DMA/IO settings (likely IRQ 7, DMA 1 and , 220H) but that OP would like to use on different cards . On second thought, I would guess that this is scenario unlikely, and I am probably just over-analyzing the problem .

Unlikely but possible, particularly from early 1990s when hard coding was common and XT (220/7/1) and AT (220/5/1) defaults both were still used.

But the question shouldn't be an abstract "Can it happen?" (yes it can), but "Will it happen with the games a, b, c, d and e that I intend to play?"

I also spent too much time overthinking this until I realized I didn't have a single game I actually played that suffered from hard coding...