VOGONS


First post, by janskjaer

User metadata
Rank Member
Rank
Member

I have recently re-organised my Sound Blaster drivers on my MS-DOS 6.22 installation. However, I am now receiving errors from both MIXERSET and AWEUTIL.
My hardware setup is an integrated VIBRA16C and AWE32 upgrade card.

The errors reported are:
Sound Mixer Control v2.15 - MIXERSET /P /Q:

MIXER0007: BLASTER environment not set or incomplete or invalid.

AWEUTIL TSR v1.34 - AWEUTIL /S:

ERR016: Hardware does not exist at the I/O address

This is strange, because just before MIXERSET /P /Q, DIAGNOSE /S reports:

BLASTER environment is set at: A220 I5 D1 H5 P330 E620 T6

and these settings have never had to change in all the years I've used the system.

Even before DIAGNOSE, CTCM reports 3 of 3 devices (VIBRA16C, GamePort, AWE32) have been successfully initialised.
Despite the errors reported, the devices work flawlessly. DIAGNOSE produces both 8- and 16-bit digitised audio, and the AWE32 is also playing without issue. This is also the same for other sound setup applications such as HMI.

I compared my AUTOEXEC.BAT and CONFIG.SYS from a previous error-less snapshot, and the only difference is the order that the variables (CTCM, SOUND, BLASTER, MIDI) are set is slightly different, and CTCM is called from AUTOEXEC.BAT instead of as a DEVICE in CONFIG.SYS (how the Sound Blaster driver configures it by default). However, emulating the previous configuration and order exactly, still did not solve the problem.

I found that when I remove 'MODE:0' from the 'SET MIDI=' line in AUTOEXEC.BAT, I no longer receive the errors from MIXERSET or AWEUTIL.

Here is the problematic ...
AUTOEXEC.BAT (condensed):

@ECHO OFF
ECHO [set variables]
PROMPT $P$G
PATH=C:\;C:\DOS;C:\DOS\SUPPKIT;C:\APPS\PKWARE
SET TEMP=C:\TEMP
SET TMP=C:\TEMP

ECHO [display]
MODE CON CODEPAGE PREPARE=((437) C:\DOS\EGA.CPI)
MODE CON CODEPAGE SELECT=437

ECHO [keyboard]
KEYB UK,,C:\DOS\KEYBOARD.SYS

ECHO [mouse]
C:\DEVICES\MOUSE\MOUSE.COM /L=GB

ECHO [cdrom]
C:\DOS\MSCDEX.EXE /D:MSCD000 /L:D
C:\DOS\SMARTDRV.EXE /X

ECHO [sound, common]
SET CTCM=C:\DEVICES\SOUND\CTCM
SET BLASTER=A220 I5 D1 H5 P330 E620 T6
SET MIDI=SYNTH:1 MAP:E MODE:0

ECHO [sound, SB16 / AWE32]
SET SOUND=C:\DEVICES\SOUND\SB16
C:\DEVICES\SOUND\SB16\DIAGNOSE /S
C:\DEVICES\SOUND\SB16\MIXERSET /P /Q
C:\DEVICES\SOUND\SB16\AWEUTIL /S

[sound, CTCU]
C:\DEVICES\SOUND\CTCM\CTCU /S

CONFIG.SYS:

DEVICE=C:\DOS\HIMEM.SYS
DOS=HIGH,UMB
FILES=50
BUFFERS=50
LASTDRIVE=Z
COUNTRY=044,,C:\DOS\COUNTRY.SYS
DEVICE=C:\DOS\DISPLAY.SYS CON=(EGA,437,2)
DEVICEHIGH=C:\DEVICES\CDROM\VIDE-CDD.SYS /D:MSCD000
DEVICE=C:\DEVICES\SOUND\CTCM\CTCM.EXE

How is the existence of 'MODE:0' causing these errors?

DELL Dimension XPS M200s
:Intel P1 MMX 200MHz
:64MB EDO
:DOS 6.22/Win95b
:Matrox Millenium II + m3D (PowerVR PCX2)
Chaintech 7VJL Apogee
:AMD AthlonXP 2700+
:512MB DDR
:Win98SE/2000 SP4
:3dfx Voodoo5 5500 AGP

Reply 2 of 9, by Joseph_Joestar

User metadata
Rank l33t
Rank
l33t

The variable order in your AUTOEXEC.BAT looks odd to me. Try using this and see if that helps:

SET BLASTER=A220 I5 D1 H5 P330 E620 T6
SET SOUND=C:\DEVICES\SOUND\SB16
SET MIDI=SYNTH:1 MAP:E MODE:0
SET CTCM=C:\DEVICES\SOUND\CTCM
C:\DEVICES\SOUND\SB16\DIAGNOSE /S
C:\DEVICES\SOUND\SB16\AWEUTIL /S
C:\DEVICES\SOUND\SB16\MIXERSET /P /Q
C:\DEVICES\SOUND\CTCM\CTCU /S

That's the order that I get when installing the drivers for my AWE64 using the official CD.

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 9, by janskjaer

User metadata
Rank Member
Rank
Member
Joseph_Joestar wrote on 2021-10-30, 15:40:
The variable order in your AUTOEXEC.BAT looks odd to me. Try using this and see if that helps: […]
Show full quote

The variable order in your AUTOEXEC.BAT looks odd to me. Try using this and see if that helps:

SET BLASTER=A220 I5 D1 H5 P330 E620 T6
SET SOUND=C:\DEVICES\SOUND\SB16
SET MIDI=SYNTH:1 MAP:E MODE:0
SET CTCM=C:\DEVICES\SOUND\CTCM
C:\DEVICES\SOUND\SB16\DIAGNOSE /S
C:\DEVICES\SOUND\SB16\AWEUTIL /S
C:\DEVICES\SOUND\SB16\MIXERSET /P /Q
C:\DEVICES\SOUND\CTCM\CTCU /S

That's the order that I get when installing the drivers for my AWE64 using the official CD.

The order I have it in is the order which is inserted into my AUTOEXEC.BAT after first installing the CTCM package, then installing the SB16 driver package. Creative provide CTCM as a pre-requisite before installing any Sound Blaster driver, hence it's environment variable being set first. But, I could be wrong.

Nevertheless, I tried your ordering but it didn't work.
However, removing DIAGNOSE /S from the AUTOEXEC.BAT did stop the errors being reported.
The question is, how has DIAGNOSE /S in my AUTOEXEC.BAT worked up until now, and never caused these errors to be reported before?

My initial thought was that, by omitting DIAGNOSE /S from the AUTOEXEC.BAT means the hardware configuration is not set by the BLASTER environment ('SET BLASTER='). But it's irrelevant, as the parameters specified for the BLASTER environment are the correct ones for the hardware anyway (and exactly the same ones set by CTCM's response). It's not as if DIAGNOSE /S is initiating any incorrect BLASTER parameters. So, I am still confused why omitting this would prevent the errors.

So, I tried a few test scenarios:

A1: Start the system without DIAGNOSE /S in AUTOEXEC.BAT.
A2: No errors in MIXERSET and AWEUTIL.
A3: Run DIAGNOSE /S.
A4: Run MIXERSET /P /Q and AWEUTIL /S.
A5: Receive errors in MIXERSET and AWEUTIL.

B1: Start the system with DIAGNOSE /S in AUTOEXEC.BAT.
B2: Receive errors in MIXERSET and AWEUTIL.
B3: Run CTCM.
B4: Run MIXERSET /P /Q and AWEUTIL /S.
B5: No errors in MIXERSET and AWEUTIL.

At this point, I was suspicious what DIAGNOSE was actually doing, so I continued ...

B6: Run CTCM.
B7: Run MIXERSET /P /Q and AWEUTIL /S.
B8: No errors in MIXERSET and AWEUTIL.
B9: Run DIAGNOSE /S.
B10: Run MIXERSET /P /Q and AWEUTIL /S.
B11: Receive errors in MIXERSET and AWEUTIL.
B12: Run DIAGNOSE /S.
B13: Run MIXERSET /P /Q and AWEUTIL /S.
B14: No errors in MIXERSET and AWEUTIL.

Manually executing CTCM after the system has booted, resolves the errors in MIXERSET and AWEUTIL, no matter how many times CTCM is subsequently executed.
However, each execution of DIAGNOSE /S, acts as a flip, between whether the errors in MIXERSET and AWEUTIL are displayed or not. Which means, DIAGNOSE /S can both set and unset the BLASTER environment (CTCM does not do this).

Another pertinent question here is, how is the omission of 'MODE:0' resolving this problem?

DELL Dimension XPS M200s
:Intel P1 MMX 200MHz
:64MB EDO
:DOS 6.22/Win95b
:Matrox Millenium II + m3D (PowerVR PCX2)
Chaintech 7VJL Apogee
:AMD AthlonXP 2700+
:512MB DDR
:Win98SE/2000 SP4
:3dfx Voodoo5 5500 AGP

Reply 4 of 9, by maxtherabbit

User metadata
Rank l33t
Rank
l33t

I don't understand why you want such a deep analysis of the situation. DIAGNOSE /S is NOT meant to be used with PnP cards that use CTCM instead. Period. Just remove it and move on.

PS when you have a PnP card the SET BLASTER statement is irrelevant. The BLASTER environment variable is set by the CTCM command and that's that

Reply 5 of 9, by Joseph_Joestar

User metadata
Rank l33t
Rank
l33t
maxtherabbit wrote on 2021-10-30, 17:30:

I don't understand why you want such a deep analysis of the situation. DIAGNOSE /S is NOT meant to be used with PnP cards that use CTCM instead.

Is this documented somewhere? I've heard it mentioned before, but no one ever explains how they came to that conclusion.

It's not that I disbelieve you, I'm just wondering why installing the drivers from the AWE64 official CD adds that line.

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 6 of 9, by maxtherabbit

User metadata
Rank l33t
Rank
l33t
Joseph_Joestar wrote on 2021-10-30, 17:58:
maxtherabbit wrote on 2021-10-30, 17:30:

I don't understand why you want such a deep analysis of the situation. DIAGNOSE /S is NOT meant to be used with PnP cards that use CTCM instead.

Is this documented somewhere? I've heard it mentioned before, but no one ever explains how they came to that conclusion.

It's not that I disbelieve you, I'm just wondering why installing the drivers from the AWE64 official CD adds that line.

honestly idk 🤣

I just followed the various guides I've seen online over the years

Reply 7 of 9, by janskjaer

User metadata
Rank Member
Rank
Member
maxtherabbit wrote on 2021-10-30, 17:30:

I don't understand why you want such a deep analysis of the situation. DIAGNOSE /S is NOT meant to be used with PnP cards that use CTCM instead. Period. Just remove it and move on.

I think you're missing the point. I'm trying to figure out how something works. I'm not interested in merely setting something the way someone suggested just because it appears to work. What happens when there are other potential issues with the configuration later on? Because I haven't gained an understanding of how the program functions, I can't rely on myself to come up with the solution.

Yes, you're right that PnP cards only need to be configured with CTCM, and I appreciate the solution you've provided, but I choose not to be ignorant of why something works in a particular way.

DELL Dimension XPS M200s
:Intel P1 MMX 200MHz
:64MB EDO
:DOS 6.22/Win95b
:Matrox Millenium II + m3D (PowerVR PCX2)
Chaintech 7VJL Apogee
:AMD AthlonXP 2700+
:512MB DDR
:Win98SE/2000 SP4
:3dfx Voodoo5 5500 AGP

Reply 8 of 9, by maxtherabbit

User metadata
Rank l33t
Rank
l33t
janskjaer wrote on 2021-10-30, 18:51:
maxtherabbit wrote on 2021-10-30, 17:30:

I don't understand why you want such a deep analysis of the situation. DIAGNOSE /S is NOT meant to be used with PnP cards that use CTCM instead. Period. Just remove it and move on.

I think you're missing the point. I'm trying to figure out how something works. I'm not interested in merely setting something the way someone suggested just because it appears to work. What happens when there are other potential issues with the configuration later on? Because I haven't gained an understanding of how the program functions, I can't rely on myself to come up with the solution.

Yes, you're right that PnP cards only need to be configured with CTCM, and I appreciate the solution you've provided, but I choose not to be ignorant of why something works in a particular way.

I respect your desire to understand things, this just IMO seems like a rather uninteresting deep dive into something that has long been settled. There are no other issues with the configuration. I've been using a myriad of both PnP and non-PnP soundblasters for decades using the configurations as stated. But hey if this is that interesting to you by all means continue

Reply 9 of 9, by janskjaer

User metadata
Rank Member
Rank
Member
maxtherabbit wrote on 2021-10-30, 19:13:
janskjaer wrote on 2021-10-30, 18:51:
maxtherabbit wrote on 2021-10-30, 17:30:

I don't understand why you want such a deep analysis of the situation. DIAGNOSE /S is NOT meant to be used with PnP cards that use CTCM instead. Period. Just remove it and move on.

I think you're missing the point. I'm trying to figure out how something works. I'm not interested in merely setting something the way someone suggested just because it appears to work. What happens when there are other potential issues with the configuration later on? Because I haven't gained an understanding of how the program functions, I can't rely on myself to come up with the solution.

Yes, you're right that PnP cards only need to be configured with CTCM, and I appreciate the solution you've provided, but I choose not to be ignorant of why something works in a particular way.

I respect your desire to understand things, this just IMO seems like a rather uninteresting deep dive into something that has long been settled. There are no other issues with the configuration. I've been using a myriad of both PnP and non-PnP soundblasters for decades using the configurations as stated. But hey if this is that interesting to you by all means continue

I also appreciate that learning this set of utilities in a little more detail than the regular usage is also not to everyone's tastes. However, with all due respect, I certainly wouldn't want to discourage anyone's efforts in how detailed they want to get with this or any other topic - it all becomes a knowledge base. If it isn't to appealing to you, you don't have to read or respond to it - take it or leave it. If there is someone who shares the same attention to detail, and knows these tools in more depth, this is my way of reaching out to them for more info. But, I do appreciate your assistance, whether that be concise or detailed, so once again, thanks for the resolution.

DELL Dimension XPS M200s
:Intel P1 MMX 200MHz
:64MB EDO
:DOS 6.22/Win95b
:Matrox Millenium II + m3D (PowerVR PCX2)
Chaintech 7VJL Apogee
:AMD AthlonXP 2700+
:512MB DDR
:Win98SE/2000 SP4
:3dfx Voodoo5 5500 AGP