VOGONS


Reply 580 of 798, by mothergoose729

User metadata
Rank Oldbie
Rank
Oldbie
keropi wrote on 2021-04-29, 05:42:

It could be a case these drivers are not suitable for later games from 1995/1996 , the updates are 1994 ones
I tried GK1 and it sounded ok to me but can you upload a save mothergoose729 at a place where a looping sfx plays?
I will check QFG4 later as well... if these updates are truly useless for us I will remove them

When I start a new game, the boy throws the newspaper, and it the sound starts looping. It happens as soon as any sound effect plays.

If it sounds good to you then maybe it is a configuration issue? I would prefer that be the case!

Reply 581 of 798, by mothergoose729

User metadata
Rank Oldbie
Rank
Oldbie

There is a version of the 7th guest that supports wss through the sndsys.com. I could manually enter the port, irq, and DMA through the groovie.ini. The game refuses to load with "failed to load driver". Using port 530, IRQ 5, DMA 1.

Reply 582 of 798, by keropi

User metadata
Rank l33t++
Rank
l33t++

well it could mean that all these WSS games use a mode that is not supported by the CS4237 and they need to be played with SB option
it might worth the effort to try WSS with DMA0 - maybe it will help like Tyrian games?

🎵 PCMIDI mpu
🎧 Orpheus soundcard
Action Rewind
MegaCard
💻 WTB Amstrad PC7486SLC-33

Reply 583 of 798, by mothergoose729

User metadata
Rank Oldbie
Rank
Oldbie
keropi wrote on 2021-04-29, 07:08:

well it could mean that all these WSS games use a mode that is not supported by the CS4237 and they need to be played with SB option
it might worth the effort to try WSS with DMA0 - maybe it will help like Tyrian games?

I'll try with 7th guest but thus far that hasn't helped. Setting the WSS DMA to something other than the SB DMA usually causes neither to work.

EDIT: got a soft lock this time

Reply 585 of 798, by mothergoose729

User metadata
Rank Oldbie
Rank
Oldbie
appiah4 wrote on 2021-04-29, 07:54:

Why be so insistent on WSS? Why not just use SB mode?

WSS offers superior sound when it works. Higher sample rate, no DMA clicking, cleaner sound effects and voices.

Reply 586 of 798, by Joseph_Joestar

User metadata
Rank Oldbie
Rank
Oldbie
appiah4 wrote on 2021-04-29, 07:54:

Why be so insistent on WSS? Why not just use SB mode?

I can't speak for the Orpheus, but on OPTi cards, I definitively hear a difference in audio clarity between WSS and SBPro modes, when both options are available in a game's setup.

Additionally, most Sierra games from 1993 onward seem to support 16-bit sound in some shape or form: A List of DOS Games with 16-Bit Sound

PC#1: Pentium MMX 166 / Soyo SY-5BT / S3 Trio64V+ / Voodoo1 / OPTi 82C930 / AWE64
PC#2: Celeron 466 / Abit ZM6 / Voodoo3 / AWE64 Gold / YMF744 / SC-155
PC#3: AthlonXP 1700+ / Abit KT7A / GeForce4 / SBLive / ALS100
PC#4: Athlon64 3700+ / DFI LanParty / 9600GT / X-Fi Titanium

Reply 587 of 798, by keropi

User metadata
Rank l33t++
Rank
l33t++

I eventually get the looping sample in GK1 , QFG4 seems fine but I have not really played it much - it seems to be system dependent and inconsistence.
So I would say WSS in these Sierra games is not an option for us unfortunately, Soundblaster needs to be chosen.
I will write this under "known issues"

🎵 PCMIDI mpu
🎧 Orpheus soundcard
Action Rewind
MegaCard
💻 WTB Amstrad PC7486SLC-33

Reply 588 of 798, by 640K!enough

User metadata
Rank Oldbie
Rank
Oldbie

I have also been doing some testing with the Sierra drivers that keropi posted on page 29, and have had some luck with the 16-bit driver. There are a few points that demand attention:

  • Some Sierra titles are highly speed-sensitive (the drivers included). In some cases, they will throw intermittent audio failure errors, crash outright, or simply not work. Disabling caches, or using other tools to reduce system speed may help. For some titles, Sierra released patches for this purpose, but just how speed-tolerant that makes them remains unclear.
  • In many cases, their drivers are hard-coded to work with only one set of resources. In order to get sound, you must use those resources, or you'll get failures, no sound, samples "looping", etc.
  • Often, their WSS driver won't work with anything other than IRQ 7, and sometimes DMA 1 seems to be necessary. This applies to cards based on Crystal controllers; I don't know about the genuine Microsoft board or designs based on OPTi controllers.

Personally, with Orpheus configured with the following settings (and L1 cache disabled), the 16-bit WSS driver seems to work perfectly for SQ5:

WSSBase=534
WSSIRQ=7
WSSPlaybackDMA=1

In SQ5, at least, the sound is cleaner and more pleasant with the WSS driver, compared to the standard Sound Blaster driver.

I should also point out that there are no differences in resources between the WSS and Sound Blaster modes on Orpheus; except for the Sound Blaster base port (usually 220H), that isn't even possible. The Sound Blaster DMA is the WSS DMA and must always match the WSSPlaybackDMA line in your ORPHINIT config file or UNISOUND environment. The situation is the same for the WSS IRQ. There is only one set of resources, they are shared between the modes of operation and the two modes cannot be used simultaneously.

I have sent an early test build of the next version of ORPHINIT to keropi for some feedback. In my testing, it gives better results with some old WSS drivers, though that is completely independent of the resource issues mentioned above. I'm expecting to have very little time to work on the updated version for a few weeks, so unless I manage to get it ready over the next few days, it may be a little while before it's ready for a general release.

Reply 589 of 798, by mothergoose729

User metadata
Rank Oldbie
Rank
Oldbie
640K!enough wrote on 2021-04-29, 19:43:
I have also been doing some testing with the Sierra drivers that keropi posted on page 29, and have had some luck with the 16-bi […]
Show full quote

I have also been doing some testing with the Sierra drivers that keropi posted on page 29, and have had some luck with the 16-bit driver. There are a few points that demand attention:

  • Some Sierra titles are highly speed-sensitive (the drivers included). In some cases, they will throw intermittent audio failure errors, crash outright, or simply not work. Disabling caches, or using other tools to reduce system speed may help. For some titles, Sierra released patches for this purpose, but just how speed-tolerant that makes them remains unclear.
  • In many cases, their drivers are hard-coded to work with only one set of resources. In order to get sound, you must use those resources, or you'll get failures, no sound, samples "looping", etc.
  • Often, their WSS driver won't work with anything other than IRQ 7, and sometimes DMA 1 seems to be necessary. This applies to cards based on Crystal controllers; I don't know about the genuine Microsoft board or designs based on OPTi controllers.

Personally, with Orpheus configured with the following settings (and L1 cache disabled), the 16-bit WSS driver seems to work perfectly for SQ5:

WSSBase=534
WSSIRQ=7
WSSPlaybackDMA=1

In SQ5, at least, the sound is cleaner and more pleasant with the WSS driver, compared to the standard Sound Blaster driver.

I should also point out that there are no differences in resources between the WSS and Sound Blaster modes on Orpheus; except for the Sound Blaster base port (usually 220H), that isn't even possible. The Sound Blaster DMA is the WSS DMA and must always match the WSSPlaybackDMA line in your ORPHINIT config file or UNISOUND environment. The situation is the same for the WSS IRQ. There is only one set of resources, they are shared between the modes of operation and the two modes cannot be used simultaneously.

I have sent an early test build of the next version of ORPHINIT to keropi for some feedback. In my testing, it gives better results with some old WSS drivers, though that is completely independent of the resource issues mentioned above. I'm expecting to have very little time to work on the updated version for a few weeks, so unless I manage to get it ready over the next few days, it may be a little while before it's ready for a general release.

Thank for looking into it! I am inspired! I'll give it another shot today and see if I can get SQ5 working and any other games 😁.

Reply 590 of 798, by 640K!enough

User metadata
Rank Oldbie
Rank
Oldbie
mothergoose729 wrote on 2021-04-29, 20:06:

Thank for looking into it! I am inspired! I'll give it another shot today and see if I can get SQ5 working and any other games 😁.

SQ5 is one of the titles that doesn't work so well with the current version of ORPHINIT. You may get something out of the speakers, but the timing or playback rate may be wrong. As long as it doesn't crash, you can be confident that that problem will be fixed with the next release (actually, it already is, but other experimental changes may break it entirely, so the release will have to wait until it's ready).

Reply 591 of 798, by ElBrunzy

User metadata
Rank Oldbie
Rank
Oldbie

All this interest towards WSS sting my curiosity. I know next to nothing about WSS, I thought it was a specification like MPC or something like it. So please pardon my ignorance but I wonder what's the advantage of using the WSS instead of the SBPro ? Does "newer" Sierra games (like SQ5 or PQ4) only support PCM via WSS ? Does it allow for better mixing of the samples ?

Reply 592 of 798, by mothergoose729

User metadata
Rank Oldbie
Rank
Oldbie
640K!enough wrote on 2021-04-29, 20:13:
mothergoose729 wrote on 2021-04-29, 20:06:

Thank for looking into it! I am inspired! I'll give it another shot today and see if I can get SQ5 working and any other games 😁.

SQ5 is one of the titles that doesn't work so well with the current version of ORPHINIT. You may get something out of the speakers, but the timing or playback rate may be wrong. As long as it doesn't crash, you can be confident that that problem will be fixed with the next release (actually, it already is, but other experimental changes may break it entirely, so the release will have to wait until it's ready).

I tried LSL6 and GK1 and it they work! LSL6 is doing great with the 16 bit driver, GK1 seems to require the 32 bit version.

There are some issues that that prevent me from using it still. The SPDIF is reduced to a single channel (not just mono, it only plays out of the left speaker). This is a big bummer because general midi has stereo separation which gets lost, plus one channel speakers are not much fun. The AC97 headers out are stereo (at least for midi like it should be), but the WSS driver pretty much ignores the mixer settings and so volume is full blast. Just too loud to be comfortable for listening. But the driver does work so long as the WSS IRQ and SB IRQ are 7. That seems to be the difference.

I know that sierra games of this era are using 11khz or 22khz samples in mono so I wonder if that driver is doing something that effect spdif out. I look forward to your next driver release!

The SNDSYS.COM driver included with 7th guest is still hanging so no luck there. I haven't tried it yet, but the a driver by the same name is included with Beyond Zork and I expect it will probably hang or fail to load as well. I bet they drivers could be patched like the sierra games, but the two are no interchangeable.

I tried Quarantine and Warcraft II and they work great. The volume with WSS is much higher but the SPDIF output is perfect and I can just lower the volume on my DAC. The relative volumne of the line in and the FM/PCM seem right, or at least for my setup it doesn't feel like that much of a problem.

ElBrunzy wrote on 2021-04-30, 00:57:

All this interest towards WSS sting my curiosity. I know next to nothing about WSS, I thought it was a specification like MPC or something like it. So please pardon my ignorance but I wonder what's the advantage of using the WSS instead of the SBPro ? Does "newer" Sierra games (like SQ5 or PQ4) only support PCM via WSS ? Does it allow for better mixing of the samples ?

I am just learning about it myself! WSS used the OPL3 with a Microsoft special DSP for 16 bit audio at up to a 48khz sample rate. I don't know how it compares to AWE 32 or a good SB16, but for the orpheus it is the only 16 bit audio mode it supports so I am very interested in it for late DOS game. In Warcraft II the digital voices are basically flawless. I would accept the quality of voices and sound effects in those games for any modern game really. In these 1993 Sierra games it sounds cleaner than SB pro by not as much.

The last generation of DOS/windows sierra games do use higher sample rates and stereo sound so I am eager to get those working next (GK2, LSL 7).

Reply 593 of 798, by mothergoose729

User metadata
Rank Oldbie
Rank
Oldbie

Alright, I tried WSS with every seirra game I own. There are many, many more but I think the story is the same right now for most of them.

The problem with single channel SPDIF and no control over the mixer is the same for all of them. Later seirra games also have scratchy, poppy audio sometimes as background noise on top of what otherwise sounds very good.

Not working:
King's Quest VI (officially supported, provided driver doesn't detect WSS card, 16 bit driver loads but sounds can only be described as ear rape).
Space Quest VI (my version didn't included a WSS driver. Forcing the 32 bit driver causes the game to hang after the initial loading cursor)
Police Quest IV (Page protection faults with 32 bit driver).

Working Kind of
Space Quest IV (16 bit) (This game didn't included a WSS driver! Forcing it works, albeit with the issues already described).
Space Quest V (16 bit driver)
Leisure Suit Larry 6 (16 bit driver)
Leisure Suit Larry 7 (provided driver, scratchy noises)
Gabriel Knight 1 (32 bit driver)
Gabriel Knight 2 (32 bit driver or provided driver, scratchy noises)
Phantasmagoria (provided driver, sometimes scratchy)

Reply 594 of 798, by Joseph_Joestar

User metadata
Rank Oldbie
Rank
Oldbie
ElBrunzy wrote on 2021-04-30, 00:57:

All this interest towards WSS sting my curiosity. I know next to nothing about WSS, I thought it was a specification like MPC or something like it. So please pardon my ignorance but I wonder what's the advantage of using the WSS instead of the SBPro ? Does "newer" Sierra games (like SQ5 or PQ4) only support PCM via WSS ? Does it allow for better mixing of the samples ?

There's some additional info about WSS here. And I have posted some of my own observations regarding WSS on OPTi cards in this thread: OPTi 82C930 review

Basically, WSS allows sound cards that were not made by Creative to produce 16-bit sound in a number of DOS games. This is useful because Creative never officially licensed SB16 compatibility, so other sound card manufacturers were stuck with SBPro quality unless a game also supported WSS.

In summary, if your sound card is WSS compatible and the game supports WSS, choose that option for higher sound fidelity.

PC#1: Pentium MMX 166 / Soyo SY-5BT / S3 Trio64V+ / Voodoo1 / OPTi 82C930 / AWE64
PC#2: Celeron 466 / Abit ZM6 / Voodoo3 / AWE64 Gold / YMF744 / SC-155
PC#3: AthlonXP 1700+ / Abit KT7A / GeForce4 / SBLive / ALS100
PC#4: Athlon64 3700+ / DFI LanParty / 9600GT / X-Fi Titanium

Reply 595 of 798, by 640K!enough

User metadata
Rank Oldbie
Rank
Oldbie
mothergoose729 wrote on 2021-04-30, 01:06:

The SPDIF is reduced to a single channel (not just mono, it only plays out of the left speaker).

This is a side-effect of the driver's initialisation routine. I'm not sure if that is actually a useful change for the Audiotrix Pro (I doubt it), or if they're using that as a cheap method of trying to ensure that the hardware is present, but it seems like a kludge at best.

It's not a solution, but I managed to make an educated guess at the offset into the driver file, picked out the beginning of a nearby op-code and got a disassembly listing for the relevant section. For now, I managed to modify the driver so that the volume levels are not completely mangled, and S/PDIF output is somewhat normal (modified 16-bit driver attached). Depending on the speed of your machine, there may still be problems with the output, but I haven't even made an attempt to look into that yet.

There is a major problem that I noticed with that driver: it doesn't seem to incorporate any delays. The result is that, depending on the speed of your machine, there may not be enough time between I/O operations, and some register operations might have unexpected results.

I am not intimately familiar with the Sierra driver format, so won't be pursuing this much further for now. If, at some point, I'm bored, have time to spare and can find a credible reference documenting the structure and inner workings of their drivers, I may try to fix the existing one, or even write a new one from scratch.

EDIT: I took a look at a bit more of the code, and have noticed that my changes only apply when the card is configured with a base address of 534H. Their routine repeats the same code for every one of the original WSS base addresses, and those remain uncorrected. This also likely means that WSS support won't work at all if your WSSBase is set to anything other than 534, 608, E84 or F44.

mothergoose729 wrote on 2021-04-30, 01:06:

The volume with WSS is much higher but the SPDIF output is perfect and I can just lower the volume on my DAC.

This is a "problem" created, in part, by the way Crystal implemented the automatic mode switching. My solution is to have two separate INI files; one for when I am expecting to run mostly SB-compatible software, and one for when I know I'll be using WSS software. This helps a little when you encounter software that doesn't manage the mixer settings so carefully. For the WSS INI file, you make sure that your mode setting is mode=WSS, then set the volume levels in the [mixer] section (meaning FMVol, etc., as opposed to SB-FMVol, etc.). Then re-initialise using something like ORPHEUS.BAT /F:WSS.INI (from your ORPHINIT directory). You should then get more pleasant results with your WSS software, as long as it doesn't change your settings on start-up.

Attachments

  • Filename
    SOLWSS16.ZIP
    File size
    3 KiB
    Downloads
    29 downloads
    File comment
    Slightly modified 16-bit SCI driver for CS423x
    File license
    Fair use/fair dealing exception
Last edited by 640K!enough on 2021-05-08, 01:34. Edited 1 time in total.

Reply 596 of 798, by mothergoose729

User metadata
Rank Oldbie
Rank
Oldbie
640K!enough wrote on 2021-05-02, 17:44:
This is a side-effect of the driver's initialisation routine. I'm not sure if that is actually a useful change for the Audiotri […]
Show full quote
mothergoose729 wrote on 2021-04-30, 01:06:

The SPDIF is reduced to a single channel (not just mono, it only plays out of the left speaker).

This is a side-effect of the driver's initialisation routine. I'm not sure if that is actually a useful change for the Audiotrix Pro (I doubt it), or if they're using that as a cheap method of trying to ensure that the hardware is present, but it seems like a kludge at best.

It's not a solution, but I managed to make an educated guess at the offset into the driver file, picked out the beginning of a nearby op-code and got a disassembly listing for the relevant section. For now, I managed to modify the driver so that the volume levels are not completely mangled, and S/PDIF output is somewhat normal (modified 16-bit driver attached). Depending on the speed of your machine, there may still be problems with the output, but I haven't even made an attempt to look into that yet.

There is a major problem that I noticed with that driver: it doesn't seem to incorporate any delays. The result is that, depending on the speed of your machine, there may not be enough time between I/O operations, and some register operations might have unexpected results.

I am not intimately familiar with the Sierra driver format, so won't be pursuing this much further for now. If, at some point, I'm bored, have time to spare and can find a credible reference documenting the structure and inner workings of their drivers, I may try to fix the existing one, or even write a new one from scratch.

mothergoose729 wrote on 2021-04-30, 01:06:

The volume with WSS is much higher but the SPDIF output is perfect and I can just lower the volume on my DAC.

This is a "problem" created, in part, by the way Crystal implemented the automatic mode switching. My solution is to have two separate INI files; one for when I am expecting to run mostly SB-compatible software, and one for when I know I'll be using WSS software. This helps a little when you encounter software that doesn't manage the mixer settings so carefully. For the WSS INI file, you make sure that your mode setting is mode=WSS, then set the volume levels in the [mixer] section (meaning FMVol, etc., as opposed to SB-FMVol, etc.). Then re-initialise using something like ORPHEUS.BAT /F:WSS.INI (from your ORPHINIT directory). You should then get more pleasant results with your WSS software, as long as it doesn't change your settings on start-up.

That's incredible! I know your time for such projects is limited so I appreciate you taking the time. I'll give these a try today 😀.

I have a speed flexible processor. I'll try it at different settings and see if I can get the driver to act up. Worth documenting at least, even if a fix isn't forthcoming. Thanks again!

Reply 597 of 798, by keropi

User metadata
Rank l33t++
Rank
l33t++

that is awesome news 640k!enough! thanks for fixing this and sharing it!!!
I will eventually link it to the site under a "useful patches" section or something similar 😀
is it possible to do the same for the 32bit driver or it's different can of worms alltogether?

🎵 PCMIDI mpu
🎧 Orpheus soundcard
Action Rewind
MegaCard
💻 WTB Amstrad PC7486SLC-33

Reply 598 of 798, by mothergoose729

User metadata
Rank Oldbie
Rank
Oldbie

By golly it works! Some interesting observations!

I did most of my testing with Space Quest IV, which is a game that I don't believe ever officially supported WSS (at least my copy didn't come with a driver). Using the new 16 bit driver it works pretty much flawlessly. My biggest complaint is that some of the sound effects (the HUD noises in the intro over the planet Xenon for example) are too loud, but I think that is problem with the games sound design, not the driver. Using external midi with line-in everything plays properly in stereo. The audio samples them self (like voices) are all 11khz or maybe 22khz mono, but it plays out of both speakers now which is huge. My new favorite way to play this game now!

I have a VIA C3 Nehemiah processor, which is really good at approximating a 386 as well as fast 486s up through Pentium 3 speeds. Running the game at approximately the speed of a 486DX4@100mhz I didn't notice any errors. Cracking up to max speed to what is roughly similar to a P3 @600mhz I noticed that the pitch was off for some midi notes but the WSS side of things had no issues. I think the optimal speed to play this game (and most sierra games from that era really) is a 386DX33 speeds. Something else to note, sierra games are known to have issues with XMS, and the driver has no problem running without it.

Using the WSS mixer setting instead of the SB mixer settings, I do think the mixer settings are actually being used now. It is not as loud as it was before. Unfortunately, with WSS, all audio will play too fast even at 386DX33 speed settings. Running at full speed the sound might play even faster, although it is hard to tell. SB mixer settings don't have this issue. For me this isn't much of a problem.

I also tried King's Quest VI, which with the old driver would just squeal very uncomfortably (AKA ear rape) whenever samples were played. This driver works flawlessly with what played. No issues!

After checking again I realized I forgot to update the driver properly. This one still has issues with WSS.

Space Quest V, likewise, running great and sounding great too.

Police Quest 1 Remake working with 16 bit driver as well. Never officially supported. There are likely more!

King's Quest V would load the 16 bit WSS driver but would just skip all sound effects. It never officially supported WSS, although maybe it could be made to work with a game specific patch.

I don't know of any other fully voiced games sierra that are 16 bit compatible. There are probably more unvoiced 16 bit games that would work.

I mentioned earlier that LSL6 is compatible with the 16 bit driver and I was mistaken about that... it requires the 32 bit driver. The majority of WSS compatibility seirra games require the 32 bit driver. This includes LSLS7, Gabriel Knight 1 and 2, Phantasmagoria, and many others.

In a similar vein, there are other games that seem to use a common sndsys.com driver - Like 7th guest, Return to Zork, Lode Runner the Legend Returns, and likely others. A modified version of this driver may bring WSS compatibility to these titles as well.

Reply 599 of 798, by mothergoose729

User metadata
Rank Oldbie
Rank
Oldbie

After trying out a few more WSS games I am beginning to expect that not all of them expect to see WSS on port 530. Earth Worm Jim defaulted to port 520 for some reason, and I saw that theme park defaulted to 220. I don't know if this is just poor implementation in these games or not, but does anyone know other ports WSS might have used and how to properly set it in orphinit?