# Solved: Setting sound card in DOS



## moozer (Jul 3, 2005)

Hi, I've been having problems with sounds in some old games. Can I use the SET BLASTER command in config.sys (or autoexec.bat) to get the PC to point to my card?

I have a Yamaha DS-XG (I think!!!), but would the SET BLASTER command line work?

I believe - looking at old PC magazine articles - that I'd set it up as:

SET BLASTER=A240 I9 D0 (Where (A) is port address, (I) is IRQ and (D) is DMA)

Any thoughts/help very much appreciated. I love my old games and would really like to play them with sound!!

Cheers

Moozer


----------



## Dan Penny (Mar 25, 2005)

"I have a Yamaha DS-XG (I think!!!),..."

First determine exactly what sound device is running. Download/install/run Everest Home Edition (clean freeware). http://www.majorgeeks.com/download4181.html This will provide details of the system hardware.

Look under the Multimedia listing in the *Summary* section, or under the *PCI / PnP Audio* section. Post the results.


----------



## moozer (Jul 3, 2005)

Thanks Dan:- 

HERE'S WHAT IT GIVES:-

Device Description Type

Yamaha DS-XG Audio CODEC	PCI


----------



## Dan Penny (Mar 25, 2005)

OK. I know you're in the DOS forum but, how you are running these matters.

What Windows version are you running?

Are you running these games;

in RAW_DOS (booting straight into DOS on start up)?

launching it/them through windows?

restarting in MSDOS Mode from windows?


----------



## moozer (Jul 3, 2005)

I'm running Windows 98 Second Edition and using DOS 6.0. I tend to swap and change the way I use DOS. If I'm in Windows, I'll drop to DOS window or restart in MS-DOS mode. If I'm just booting up, I'll boot to DOS (sorry for being so vague!!!)

The problem lies with setting up the sound in the DOS games (whether setup is through raw DOS or Windows MS-DOS mode). None of my DOS games will recognise a sound card using "auto-detect".

As a guide, the most recent games I own which use DOS are Quake, Tomb Raider and Realms of the Haunting (all from '96).


----------



## Dan Penny (Mar 25, 2005)

DOS 6.x is a 16 bit O/S. Unless you have a specific reason for doing so, (the games environment?) you could run DOS 7.x (underlying 98SE) as a stand alone and gain some speed and features. (See my article here; http://www.d-a-l.com/articles/library/35.html.) If you choose to go this route, post back as you're not really creating a stand alone machine, all the files are already there, you just need to modify a couple of startup file to achieve this end. But the article will give you an idea of what's involved before we start.

Also, I should mention up front that I'm not a gamer, so for _particular gaming information_ you'll have to wait until someone with that expertise pops along, or post in a gaming forum here (if there is one) or elsewhere once your DOS environments are set up. But I can help you with the hardware & O/S & DOS.

OK, that said, it seems you have two scenarios;
"... If I'm in Windows, I'll drop to DOS window or restart in MS-DOS mode..."
This makes it a DOS 7.x environment.

"... If I'm just booting up, I'll boot to DOS..."
I take it this is your DOS 6.x environment?
Do you have a c:\dos directory set up for this?
How do you boot to this?

Do these games that you mentioned run under either?

Some do, some don't?

Sorry to run on like this but if things can be set for just two elements (Win98SE & DOS 7.x, these two ~go~ together) as opposed to three (Win98SE, DOS 7.x, DOS 6.x_16 bit, here there's a distinct difference) things are _much_ easier. So answer the above and we'll proceed based upon your answers.


----------



## moozer (Jul 3, 2005)

It might be worth mentioning that I installed MS-DOS 6 prior to installing Windows 98 SE (so the Windows is not a "clean install", but Windows would override MS-DOS, yes?) - would it be worth removing all MS-DOS 6 files and re-installing Windows?



Dan Penny said:


> "... If I'm just booting up, I'll boot to DOS..."
> I take it this is your DOS 6.x environment?
> Do you have a c:\dos directory set up for this?
> How do you boot to this?


Using the F8 key at startup (Windows 98 Boot menu) - would this use the DOS 7 environment or the existing DOS 6?



> Do these games that you mentioned run under either?


The games run fine. Just without sound - a bit annoying when the games I play usually involve "baddies" letting you know their presence with a sound!!!
When I install the games, the prompt for sound setup arrives and upon detecting my sound card - they just can't!


----------



## Dan Penny (Mar 25, 2005)

"It might be worth mentioning that I installed MS-DOS 6 prior to installing Windows 98 SE (so the Windows is not a "clean install", but Windows would override MS-DOS, yes?)"

Yes, the 98SE install should have over-written the 6.x install. (Sys'd the drive for DOS 7.x and set the paths for same.) The DOS 6.x files are probably still in C:\DOS. Is this correct? Depending on how DOS 6.x is/was "installed", it can be removed as apparently you're not using it.

Use the F8 key and boot to the DOS command prompt. Type in "ver" and post what you get as a response. If you get;

Windows 98 [Version 4.10.2222]

then DOS 6.x is defininitely bypassed/gone.

(I want to be absolutely clear on where these files are, and how they're "set up" (if applicable) before removal.)

" - would it be worth removing all MS-DOS 6 files and re-installing Windows?"
You shouldn't have to reinstall Windows.

"Using the F8 key at startup (Windows 98 Boot menu) - would this use the DOS 7 environment..."
Yes. Verify as mentioned above.

Note that your system will assign things differently when you boot to RAW_DOS as opposed to when you're in Windows and jump to DOS (command window) or Restart in DOS. When you "Restart in DOS Mode", you're actually still in Windows control. So when you set things up for these games, you should follow the same startup method each time you run them. Please indicate how you're going to be running these games. As I've stated, some modifications to your startup files can be done so you can easily boot to the environment you choose. (All indications seem to be RAW_DOS, but please confirm.)

If you'll be running in RAW_DOS, I've uploaded an old (FreeWare, so it's legal) DOS utility to my webspace http://www.cyberus.ca/~danpenny/SYSCHK.EXE which will tell you (at least) the free IRQ's available while in the RAW_DOS environment. Download (and scan, keep your guard up) the file to the root directory of C: so it's easily accessable while in DOS. While in the DOS environment, run the file, and note the free IRQ's available. (Just type "syschk" at the C:\> prompt.)

So let's go from here and clean things up (as applicable), and then we'll set things up for the "proper" games environment.


----------



## moozer (Jul 3, 2005)

Okay. Thanks for your help Dan!

Confirmation that DOS does not exist on my system (I must've deleted it a while ago - can't remember doing so!) - so version is Windows 98 [Version 4.10.2222].

I've done a SYSCHK in DOS and it reports:-

IRQ # Active Device Name 
----- ------ ------------------------------
IRQ0 Yes System Timer
IRQ1 Yes Keyboard
IRQ2 Yes Cascade->IRQ9
IRQ3 Yes COM2 
IRQ4 Yes COM1 
IRQ5 No Open
IRQ6 Yes Floppy Disk Controller
IRQ7 No Open
IRQ8 Yes Real-Time Clock
IRQ9 Yes IRQ2->Cascade
IRQ10 No Open
IRQ11 Yes Unknown
IRQ12 Yes PS/2 Style Mouse
IRQ13 Yes Internal (Math Coprocessor)
IRQ14 Yes ST34311A 
IRQ15 Yes Unknown

So IRQ 5,7 and 10 are free? What is this cascade on IRQ's 2 and 9???

What now, friend?


----------



## Dan Penny (Mar 25, 2005)

"So IRQ 5,7 and 10 are free?"
Yes.

What is this cascade on IRQ's 2 and 9???
An AT systems uses IRQ 2 on the motherboard so instead of leaving it empty, IRQ 9 now is wired to this IRQ, in effect, cascading, or redirecting, the IRQ. So IRQ 9 is now redirected to IRQ 2. When a interrupt request is made, the CPU saves the current state of registers in a small amount of memory called the stack, then the CPU is directed to the interrupt vector table, which is a list of program locations that represent each interrupt. Here, the CPU locates the interrupt handler for the desired interrupt request and executes the routine. Once the desires task is finished, the prior register contents are popped from the stack they are being held in and the CPU will continue with it's task it was performing prior to the interrupt.

This setup may be easier than anticipated. Driver packages are avaiable from Yamaha for 98 & DOS. Download both packages and install. Post back with your results.

http://www.yamahamultimedia.com/yec/helpcenter/customer/help_win/soundcard_Whelp.html


----------



## moozer (Jul 3, 2005)

Hmmm....Already had the 98 version so downloaded the DOS version. Setup had to be done in Windows and it pointed to the 98 version of the driver, thus installing intself with that but as the 98 version. :s

The Dos version should be v.3.16, and the 98 version is v.4.07.104 (which is the only one on the system that I can see)

I'll try again - just realised that maybe I should go into MS-DOS mode to set it up.


----------



## moozer (Jul 3, 2005)

Okay. Restarted in MS-DOS mode and the setup utility kicked in. Here are some details:

Legacy Audio : ENABLE
SB port address : 220
IRQ channel : INTA#
DMA channel : 1
FM port address : 388
MPU prt address :330
IRQ channel : INTA#
JOY port address : 201
IRQ MODE : INTA#1


There's a test sound facility. I checked it and the sound was nice and crisp. Checked a second time and it sounds like Metallica gone into distortion overdrive!!!

The Autoexec.bat now points to the sound card:

SET BLASTER=A220 I5 D1 T4

What's the T4 part?

What now, Dan?


----------



## Dan Penny (Mar 25, 2005)

The BLASTER environment variable specifies the base I/O address, interrupt number and DMA channel hardware configuration of the Sound Blaster 16. The command for setting the BLASTER environment variable is as follows:

SET BLASTER=A220 I5 D1 H5 P330 T6

Where:
A Specifies the Sound Blaster 16 base I/O port
I Specifies the interrupt request line
D Specifies the Low DMA channel
H Specifies the High DMA channel
P Specifies the MPU-401 base I/O port
T Specifies the card type

If things are distorting, the first thing I'd check are the volume levels (both input levels and output levels). Something may be set to MAX whereas 60 or 70% would do. I don't have the sound device or utilities to check out so anything here is a best guess.

Once that is sorted out, run the games setup utility to pick the "card" for that game. As I stated, I'm not a gamer so... Any that I used to play (Duke Nukem, RAPTOR, etc) had multiple "cards" to pick from and usually you'll find at least one compatable listing which will work with your "card" once it has been set up.


----------



## moozer (Jul 3, 2005)

Thanks, Dan.

Am I okay to use the Blaster variables which you suggested in the autoexec.bat?

Interestingly Duke Nukem 3D is one of the problem games!!!!

I'll try the volumes and get back to you.

Moozer


----------



## moozer (Jul 3, 2005)

Everything is working fine, Dan! Just one game that I'm struggling with, but it's probably a case of rooting around the different cards to get the one I need.

One thing: 
I have to restart in MS-DOS mode to get the yamaha sound system initiated. Not a major problem, but would I be able to point to the initiation executable in autoexec.bat so that I can go into DOS from the Windows startup menu command prompt only option.

That aside, thankyou ever so much for your patience and expertise - you've made this English dude a happy one!!!

Until next time I have a DOS problem....LOL

All the best, mate!

Moozer.


----------



## Dan Penny (Mar 25, 2005)

Sorry to be away for so long...

"... but would I be able to point to the initiation executable in autoexec.bat so that I can go into DOS from the Windows startup menu command prompt only option."

Autoexec.bat (if present) is always run when you start your 98 machine. (Unless you choose Step by Step Confirmation mode to start. Then you can tell it not to run.) So if you're starting "Command prompt only", any commands in autoexec.bat for the sound device should run.


----------



## moozer (Jul 3, 2005)

Okey dokey!! 

Thanks, Dan.

Moozer


----------



## Dan Penny (Mar 25, 2005)

You're welcome.


----------

