VOGONS


UNISOUND - Universal ISA PnP Sound Card Driver for DOS v0.82a

Topic actions

Reply 760 of 776, by robertmo3

User metadata
Rank Oldbie
Rank
Oldbie

why this thread is not sticky?

Reply 761 of 776, by Carrera

User metadata
Rank Member
Rank
Member

Not enough honey?

Reply 763 of 776, by moturimi1

User metadata
Rank Member
Rank
Member
JazeFox wrote on 2025-05-11, 16:31:
Hi! Thank you all for your words :) […]
Show full quote

Hi! Thank you all for your words 😀

moturimi1 wrote on 2025-05-06, 08:44:

I would like to know if you plan on improving the detection of the Kurzweil Pinnacle soundcard.

I guess you have a rev.F card (you didn't specify system/card details).
In the next version your card will be detected and initialized. Anyway, I'm afraid that the volume will remain the same. Unisound does not mess with the DSP firmware binaries and code required to manipulate the routing and mixer capabilities.

Thank you for the update. It will always be good to have more exotic soundcards being supported by this great tool.
As there are issues with the Kurzweil Turtle Beach Pinnacle I had to find a compromise by using a EWS64 with Kurzweil Turtle Beach HOMAC daugtherboard. I would have loved to use the Pinnacle directly under DOS, but there seem to be weird mixer settings. Without initializing Windows this can not be solved as there is no DOS mixer tool to my knowledge.

I am currently planning on putting 6 soundcards in one computer.
Currently I have a config running with 5 soundcards:
- Soundscape Elite (W534, I10, D0, P320),
- AWE32 CT3670 (A220, I5, D1, H5 , P0, F0, MPU turned of),
- PAS16 (I3, F388, D0 --> for OPL3)
- PicoGus (A240, I7, D3, P330) with attached WavetablePi
- EWS64XL with internal Wavetable (P310) and attached Kurzweil Turtle Beach HOMAC (P340).
Without UniSound it would not have been possible. When I only set the MidiPorts of the EWS64XL, I would not get any sound under DOS for MIDI at 310 and 340. It is the issue with the muted CS4236 output I guess. Without turning on the Crystal and WSS/DMA/IRQ, CS32MIX.exe would not find any hardware to unmute. Anyhow with installed WSS Crystal all DMAs are occupied. DMA 0, 1, 3. Setting the DMA of the EWS64 to any of these settings mutes the digital sound of the other card sharing that same DMA port.
The current solution is to set the EWS64 with Unisound in a last step to the DMA port that I do not need for the game that I want to play in the next step. So e.g. AWE32 or GUS for digital sound, then I set the DMA of EWS64 to DMA 0. If I want to use AWE32 and Soundcape or PAS16 then I set the EWS64 to DMA 3. This is unfortunately a compromise, but it works.

Therefore thank you so much for this great tool! I am a soundcard freak and without this tool it would not be possible to use the cards together in one computer.

Last edited by moturimi1 on 2025-06-17, 12:12. Edited 2 times in total.

Reply 764 of 776, by megatog615

User metadata
Rank Newbie
Rank
Newbie

IGNORE ALL OF THIS. IT WAS AN ISSUE WITH MY BATCH FILE.

JazeFox wrote on 2025-04-30, 18:21:
Hi, that behavior is really strange. Just to be sure, I tried to reproduce your settings, but everything worked well: - Plugged […]
Show full quote
megatog615 wrote:
For some reason UNISOUND is setting up my AWE64 with DMA1/HighDMA1 on the first try. Starting BLOOD results in a crash complaini […]
Show full quote

For some reason UNISOUND is setting up my AWE64 with DMA1/HighDMA1 on the first try. Starting BLOOD results in a crash complaining about high DMA being incorrect. Running UNISOUND again after that sets up DMA1/HighDMA5 as expected from my BLASTER variable:

BLASTER=A220 I5 D1 H5 P330

...which is the FreeDOS default.

.......

UNISOUND is being loaded after BLASTER is set.

Don't forget that UNISOUND is setting High DMA to 5 after a game loaded. If I run UNISOUND twice in a row it doesn't fix it. Only after Blood crashes does it set correctly.

Hi, that behavior is really strange. Just to be sure, I tried to reproduce your settings, but everything worked well:
- Plugged an AWE64
- Formatted HDD
- Installed a clean copy of FreeDOS, last version available in the official site (It sets by default BLASTER=A220 I5 D1 H5 P330)
- Installed BLOOD
- Ran Unisound (It shows the correct setting, H5, it reports BLASTER var found.)
- Ran BLOOD SETUP and set AWE for FX and music, IRQ 5, DMA1 1, DMA2 5, 16 bit mixing.
- Ran BLOOD, it works perfectly.
- Rebooted and repeated all steps with all options, everything worked at the first try.

There must be something in your setup that is different. But you did not provide any details. so please, I will say it again: (I know I insist a lot on this but it is VERY important), provide all the machine specs, all cards plugged of any type, OS version, Unisound version (should be latest 😉) if it happens in other systems with the same AWE card, a photo or exact reproduction of the entire Unisound output after running, the contents of your CONFIG.SYS and AUTOEXEC.BAT... Also show the output of "SET" before and after you do all the steps.

Hi. I dunno how but I completely missed this response.

Machine specs:
Lucky Star 5VP3
Pentium MMX 233MHz OC'd to 266
NVIDIA Quadro4 NVS 64MB (I know it's weird, I'm testing it out. The problem with the AWE64 was happening before this card).
Intel PRO/1000 GT Ethernet Adapter
Sound Blaster AWE64 CT4520
128MB SDRAM
FreeDOS 1.4

set BLASTER=A220 I5 D1 H5 P330

(FreeDOS default)

After much more testing, whether or not UNISOUND assigns H1 or H5 appears to be completely random. I'm starting to think that there might be something wrong with the card, but it is odd that BLASTER will be set to H5 and UNISOUND seems to completely ignore that and set H1 instead. I feel like it should never ever do this when the BLASTER variable is set, but I'm not that knowledgeable about any weird edge-cases like you are. Maybe there should be an argument to UNISOUND to trust the BLASTER variable no matter what.

Reply 765 of 776, by 640K!enough

User metadata
Rank Oldbie
Rank
Oldbie
megatog615 wrote on 2025-05-20, 15:37:

IGNORE ALL OF THIS. IT WAS AN ISSUE WITH MY BATCH FILE.

It's still worth mentioning, for the sake of anyone who may think that they have a similar problem in the future, that this was not at all a problem with UNISOUND. In one case, your BLASTER environment variable was present, and in the other case, it was not. Paying attention to the output of UNISOUND, you will see that it will either say that it has found a BLASTER environment variable and is retrieving the configuration, or it will say that it is loading the default configuration. If you see the loading default configuration line, it is not processing your BLASTER environment at all, and it is up to you to figure out the source of the mistake or incompatibility on your system.

Reply 766 of 776, by jakethompson1

User metadata
Rank Oldbie
Rank
Oldbie

While talking about batch files and environment variables anyway, it's worth mentioning that any environment variables you set in dosstart.bat (for Win9x "restart in MS-DOS mode," a logical place to put unisound), won't stick.

Reply 767 of 776, by vsharun

User metadata
Rank Newbie
Rank
Newbie

Is it possible to add to the Unisound functionality for broken systems, like port A79 not working (and 279 are ok)?
This is for case for LPC to ISA bridge on Asus boards where port A79 not routed to the LPC at all being swallowed/decoded somewhere earlier before LPC in serial manner, not bus.
The idea is - to bring ESS "bypass key" functionality to the Unisound.
ESS1868 manual page 10:
“Bypass Key”
If PnP is not supported by the system, It is possible to
bypass PnP by issuing a special “bypass key” to the
ES1868 to force the configuration device to be enabled at
a specific l/O address. The ES1868 must be in the “wait-
for-key” Plug and Play state. The special key is 32 bytes
long, written to the PnP address register (279h). The
bypass key must be followed immediately by two I/O writes
to the PnP address register to set the low and high bytes of
the address register of the configuration device. The
configuration device is also activated by the bypass key.

Reply 768 of 776, by JazeFox

User metadata
Rank Member
Rank
Member
vsharun wrote on 2025-06-08, 17:40:
The idea is - to bring ESS "bypass key" functionality to the Unisound. ESS1868 manual page 10: “Bypass Key” If PnP is not suppor […]
Show full quote

The idea is - to bring ESS "bypass key" functionality to the Unisound.
ESS1868 manual page 10:
“Bypass Key”
If PnP is not supported by the system, It is possible to
bypass PnP by issuing a special “bypass key” to the
ES1868 to force the configuration device to be enabled at
a specific l/O address. The ES1868 must be in the “wait-
for-key” Plug and Play state. The special key is 32 bytes
long, written to the PnP address register (279h). The
bypass key must be followed immediately by two I/O writes
to the PnP address register to set the low and high bytes of
the address register of the configuration device. The
configuration device is also activated by the bypass key.

Hi,
In fact, that (bypass key, configuration, etc..) is partially implemented in Unisound already, for the configuration/init part (not for the detection) when the alternate init option for ES1868 cards is used in command line. Control (configuration device) I/O port is used as reference for the PnP Address and Data ports remap. by default it is 0x800 (as per documentation) for ES1868 cards, but it can be changed in Unisound, setting Rxxx in BLASTER environment variable. (On ES1869 alternate init is used by default) Anyway, in those systems without access to 0xA79 port, the detection phase will not work, because it's done in standard PnP mode.
I think it can be implemented without PnP detection phase but for now I don't like to do init processes without a reliable detection of the card.
You can try with ESSCFG in a non-PnP system, it uses bypass method but I think it uses 0x800 for the control and I think it can not be changed by user parameters.

Before posting, please, read the FAQ in the first post and TXT! IT's important if you want a good support. Thanks!
Respect, and be happy! 😀

Reply 769 of 776, by vsharun

User metadata
Rank Newbie
Rank
Newbie
JazeFox wrote on 2025-06-17, 10:48:

You can try with ESSCFG in a non-PnP system, it uses bypass method but I think it uses 0x800 for the control and I think it can not be changed by user parameters.

No luck.
BTW I found no bypass key by hex searching within 1868/1869 esscfg (all four variants).

Reply 770 of 776, by bull

User metadata
Rank Newbie
Rank
Newbie

Good evening everyone, I am the owner of an Olivetti philos 48 color plus, and I can't get it to play. Many of the opinions I have heard have not been encouraging because this Olivetti needs Of its original drivers, I have tried many drivers including Windows sound system but no hardware device is detected (because they are not its drivers) ,in allegato invio delle foto della scheda madre ,se qualcuno individua il chip audio , e qualcuno sa fare un miracolo . Vi ringrazio tutti

Reply 771 of 776, by bull

User metadata
Rank Newbie
Rank
Newbie

Ecco qualche foto

Reply 772 of 776, by bull

User metadata
Rank Newbie
Rank
Newbie

Proseguo...

Reply 773 of 776, by vsharun

User metadata
Rank Newbie
Rank
Newbie
JazeFox wrote on 2025-06-17, 10:48:

In fact, that (bypass key, configuration, etc..) is partially implemented in Unisound already, for the configuration/init part (not for the detection) when the alternate init option for ES1868 cards is used in command line. Control (configuration device) I/O port is used as reference for the PnP Address and Data ports remap. by default it is 0x800 (as per documentation) for ES1868 cards, but it can be changed in Unisound, setting Rxxx in BLASTER environment variable. (On ES1869 alternate init is used by default) Anyway, in those systems without access to 0xA79 port, the detection phase will not work, because it's done in standard PnP mode.
I think it can be implemented without PnP detection phase but for now I don't like to do init processes without a reliable detection of the card.
You can try with ESSCFG in a non-PnP system, it uses bypass method but I think it uses 0x800 for the control and I think it can not be changed by user parameters.

Small update, indeed ES1869F can be initialized in such flawed system. With some AI help I have made Impulse Tracker to produce music as ES1688 device in Audiodrive mode and SB Pro DSP 3.01 are ok in games like DOOM/Duke3d.
Any chances to incorporate this "special" path to the UNISOUND ?
Re: dISAppointment - LPC to ISA adapter - ISA on modern motherboards

Reply 774 of 776, by Marco

User metadata
Rank Oldbie
Rank
Oldbie

I have also a question and hope that I did not miss anything? Can unisound initialize pas16? It’s not on the list of supported chips I know.

Thank you

1) VLSI SCAMP 311 | 386SX25@TI486SXLC2-50@63 | 16MB | CL-GD5428 | CT2830| SCC-1 | MT32 | WDC160GB/7200/8MB | Fast-SCSI AHA 1542CF + BlueSCSI v2/15k U320
2) SIS486 | 486DX/2 66(@80) | 32MB | TGUI9440 | LAPC-I

Reply 775 of 776, by Grzyb

User metadata
Rank l33t
Rank
l33t
Marco wrote on 2025-06-26, 17:32:

I have also a question and hope that I did not miss anything? Can unisound initialize pas16? It’s not on the list of supported chips I know.

Normally, PAS16 is initialized by MVSOUND.SYS, which is memory-resident.
And it seems that many programs need that driver to be resident to work in PAS16 mode - see eg. Inertia Player.

One of the goals behind UNISOUND is *not* to be memory-resident.
So it doesn't make sense to add PAS16 initialization to UNISOUND, as it couldn't fully replace MVSOUND.SYS.

Kiełbasa smakuje najlepiej, gdy przysmażysz ją laserem!

Reply 776 of 776, by Marco

User metadata
Rank Oldbie
Rank
Oldbie

Understood. Thanks a lot

1) VLSI SCAMP 311 | 386SX25@TI486SXLC2-50@63 | 16MB | CL-GD5428 | CT2830| SCC-1 | MT32 | WDC160GB/7200/8MB | Fast-SCSI AHA 1542CF + BlueSCSI v2/15k U320
2) SIS486 | 486DX/2 66(@80) | 32MB | TGUI9440 | LAPC-I