VOGONS


Reply 20 of 34, by dukeofurl

User metadata
Rank Member
Rank
Member

I've got this option for atclk in the bios. Any idea if this might relate to isa bus speed or what I'd write in it? I have the option to change the 55h value, but I'd need to type something in manually, there's no selection of choices.

The attachment PXL_20240807_005854687_exported_99_1722992490064.jpg is no longer available
Last edited by dukeofurl on 2024-08-10, 01:57. Edited 1 time in total.

Reply 21 of 34, by dukeofurl

User metadata
Rank Member
Rank
Member

I have managed to fix this, but not in a good way!

What fixed the audio drop outs was changing a setting in my bios to run the CPU "slow" rather than "fast" (fast is the default, so this option is kinda like a turbo button I guess).

So running the CPU slow fixed the audio, but since we're talking about running a 386 in slow mode, the games that had the issues such as Jazz Jackrabbit and OMF 2097 play like molasses... This does still suggest to me that the issue is related to the ISA bus as it makes sense to me that the speed of the isa is related to the cpu speed. Just wish the bios here had independent settings for that, don't see any dip switches on the board either. Is there a TSR somewhere that could do it? Oh well, at least this provides some more clarity around things.

Last edited by dukeofurl on 2024-08-09, 17:18. Edited 1 time in total.

Reply 23 of 34, by dukeofurl

User metadata
Rank Member
Rank
Member

Hmm I don't know. I have no documentation for this board and haven't been able to find it on the retroweb. In any case, the current bios doesn't say anything about flashing or upgrading within the GUI.

Reply 24 of 34, by weedeewee

User metadata
Rank l33t
Rank
l33t

Looking for the chipset might give some clues

Looking at your first thread, and going with the 386 board there.
It seems to be an opti 82c381/2 chipset

This leads to https://theretroweb.com/chipsets/366#docs which has a pdf for download which on page 7 and beyond,
lists some register information which could correspond to the bios display photo you posted in this thread.

edit: it also seems that your 386 board is not listed on the retroweb. If you could take the board out of the case and supply the retroweb with clear photos of frond & back it would be helpful to document it further.

Right to repair is fundamental. You own it, you're allowed to fix it.
How To Ask Questions The Smart Way
Do not ask Why !
https://www.vogonswiki.com/index.php/Serial_port

Reply 25 of 34, by dukeofurl

User metadata
Rank Member
Rank
Member
weedeewee wrote on 2024-08-09, 18:47:
Looking for the chipset might give some clues […]
Show full quote

Looking for the chipset might give some clues

Looking at your first thread, and going with the 386 board there.
It seems to be an opti 82c381/2 chipset

This leads to https://theretroweb.com/chipsets/366#docs which has a pdf for download which on page 7 and beyond,
lists some register information which could correspond to the bios display photo you posted in this thread.

Why so it is, good find! I can see the Opti 82c382 chip in one of the pictures I previously took of the board. The time period and specs match too.

So I'm looking at the documentation, and it says very clearly in several places that AT bus speed can be adjusted and the multiplier can be adjusted, which sounds great... but I'm not getting a good picture of how this is done, or how it might translate into the hexadecimal input I see in the bios for ATCLK, default value of which is 55h. I plugged 54h into there earlier to see if I would get any different performance and could not tell a difference.

edit: it also seems that your 386 board is not listed on the retroweb. If you could take the board out of the case and supply the retroweb with clear photos of frond & back it would be helpful to document it further.

I'd love to. I went to do this previously but ran into some issues with removing the power supply and some of the case chassis components (I unscrewed the visible screws but for the life of me could not remove some of the chassis components that are blocking removal of the board). I'll have to revisit this in the future.

Reply 26 of 34, by weedeewee

User metadata
Rank l33t
Rank
l33t

Well if I read the pdf correctly then 55 would be clkin/2
53 would be clkin/3 and 51 would be clkin/4

Right to repair is fundamental. You own it, you're allowed to fix it.
How To Ask Questions The Smart Way
Do not ask Why !
https://www.vogonswiki.com/index.php/Serial_port

Reply 27 of 34, by dukeofurl

User metadata
Rank Member
Rank
Member
weedeewee wrote on 2024-08-09, 19:54:

Well if I read the pdf correctly then 55 would be clkin/2
53 would be clkin/3 and 51 would be clkin/4

I gave each of these a shot but there was no improvement to the audio drop out issue. Thanks though.

Reply 28 of 34, by dukeofurl

User metadata
Rank Member
Rank
Member

I added an opti pnp soundblaster card to the machine so I can at least get non-skipping music in the epic games and otherwise have an alternative to the GUS and SBOS when I want that. The good news is that I correctly set things up and things were working just how I wanted with the opti being a nice backup card when I just wanted the sound to work right... but I was doing this by setting variables realtime at the dos prompt rather than saving stuff in my autoexec, and now that its a week or so later, I'm not remembering exactly what I did... so now when I try to duplicate things, the opti will play OPL, but it is silent if I want it to play pcm such as the Jazz Jackrabbit or OMF tracker music.

I've set the GUS and Blaster variables to be at different baseports, irqs and dmas. For instance, I've tried different combinations, but currently the ultrasnd is at 220,i7, d3 and the opti is at 240, i5, d1.

I'm also using unisound to initiate the PNP card, which has worked for me fine with this card before. I don't think its an issue with games being hardcoded to look for a soundblaster at base 220, as I'm testing it with Jazz and OMF which allow for identifying base 240 or others for soundblaster in the sound setup.

I am using unisound to initiate the opti card and it displays all the correct info when initializing it. Other stuff like virtual mixer volume levels, and physical connection from the opti to the speakers is good... But I'm not getting any sound from the opti other than OPL/adlib sound.

Any thoughts what I might be overlooking?

I seem to have fixed this issue by simply switching the irqs of the cards, so the GUS is now 5 and the opti is 7 instead of vice versa.

Reply 29 of 34, by CHiLL72

User metadata
Rank Member
Rank
Member
dukeofurl wrote on 2024-08-22, 01:05:

I seem to have fixed this issue by simply switching the irqs of the cards, so the GUS is now 5 and the opti is 7 instead of vice versa.

Do you mean to say you had another soundcard with an OPTi chip in the system besides the GUS MAX? I did not see that mentioned anywhere before in your post...

Waveblaster MIDI boards: https://waveblaster.nl - online now!

Reply 30 of 34, by dukeofurl

User metadata
Rank Member
Rank
Member
CHiLL72 wrote on 2024-08-23, 13:43:
dukeofurl wrote on 2024-08-22, 01:05:

I seem to have fixed this issue by simply switching the irqs of the cards, so the GUS is now 5 and the opti is 7 instead of vice versa.

Do you mean to say you had another soundcard with an OPTi chip in the system besides the GUS MAX? I did not see that mentioned anywhere before in your post...

The opti is a new card I just added in to the system recently, it has not been in the system since the start of this thread and it is not the cause of the GUS music skipping, as that occurred before I added the opti card just very recently. Adding the opti card is just me doing a kludge so I can have an option to play the games that have skippy tracker music without the skipping.

Reply 31 of 34, by darry

User metadata
Rank l33t++
Rank
l33t++

Is there an LPT port configured to use IRQ7 ?

Maybe the GUS is more sensitive to this than the your other sound card.

Reply 32 of 34, by dukeofurl

User metadata
Rank Member
Rank
Member

I had this memory that when everything worked 30 years ago, it was actually with the gus Max v1.8 rather than the v 2.1 I was currently using. The curiosity got to me, so I splurged and bought the earlier version of the gus Max just to rule out that there might be an issue with the 2nd revision gus Max, or something the matter with the particular 2.1 card I had.

In any case, my testing has the v1.8 giving the same performance as the 2.1 (works ok for games that use the gus samples like Doom, but glitches out when playing games that load their own samples for tracker music, like Jazz jackrabbit) so there is definitely an incompatibility with my system or settings.

The attachment PXL_20250124_174922501.jpg is no longer available

Reply 33 of 34, by dukeofurl

User metadata
Rank Member
Rank
Member

Are the drivers different between the gus Max 2.1 and 1.8? I was testing out the v1.8 with the installation software I have from the v2.1, but I noticed when I tried using sbos 3.84 with the rev 1.8, my system locks up immediately after a PCM sample plays, such as opening a door or shooting a gun in Wolfenstein 3d. Whereas this does not happen with the rev 2.1. I know I have an older version of sbos somewhere... Will give that a shot.

EDIT - I fixed this issue with sbos and freezing. I don't know why but it seems (at least on my machine) that the playback and recording irqs must be different for sbos to work correctly and not freeze upon PCM sample playback when in sb emu mode. I haven't seen this identified anywhere because it doesn't seem like anyone else regularly uses sbos these days, and in fact most install guides tell you that it does not matter if the playback and recording irqs are the same, and suggest ultrasnd variables with them being the same, which seems ok for regular gus mode use.

Reply 34 of 34, by dukeofurl

User metadata
Rank Member
Rank
Member

I still haven't fixed this issue with the GUS max dropping samples when my cpu is running at full clock speed, but playing correctly when it is set to "slow" in the bios.

But I did happen upon an obscure issue with the gravis and dma controllers on certain Opti chipsets, and Gravis's official solution/program. I was optimistic that this might help me out with my opti chipset motherboard, but it didn't.

But in the interest of helping others, here's the technical bulletin and Gravis's obscure Optifix program.

TITLE: Advanced Gravis Tech Note #7 AREA: 16 BIT DMA DATE: January 20, 1993 KEY WORDS: OPTI CHIPSET 16 BIT DMA […]
Show full quote

TITLE: Advanced Gravis Tech Note #7
AREA: 16 BIT DMA
DATE: January 20, 1993
KEY WORDS: OPTI CHIPSET 16 BIT DMA CRASH

SUBJECT: Faulty DMA controllers

There is a known problem accessing 16 bit DMA channels on certain brands
of chipsets, including SOME models of OPTI.

The way to tell if you have this problem is by setting the GUS DMA channel
to one of the 16 bit DMAs, 5, 6 or 7. Try playing some digital audio
samples. You may have to run them 5-10 times to make sure there are
no problems. If you get a PARITY error set the DMA channel to an 8
bit DMA such as 1 or 3. Play some more digital audio samples. If you do
not get another parity error then you probably have a faulty DMA controller.

The are a few ways to fix this problem. First, you can replace your
motherboard. Remember a motherboard without CPU should only be a few
hundred dollars. It is the CPU that cost so much, not the motherboard.
If this is not an alternative and you can not live with an 8 bit DMA channel,
you may try running the program OPTIFIX that may be found in GUS0013.ZIP
on the Gravis BBS (604)431-5927.

What follows is a detailed description of the problem.

In the past 4 months or so, we have seen a rash of systems with 386 and 486
motherboards that crash whenever audio playback is attempted through any
audio card that uses DMA. We have traced the problem to the 82C206 chip
on the motherboard, most often (but not always) manufactured by OPTi.
This is the device that houses the interrupt and DMA controllers, the
counter/timers, and the real time clock. Note that this isn't a global
problem with these devices; there remains a larger number of systems
operating perfectly that use the 82C206. This may be related to a
particlar lot of the 82C206, but we don't have enough information to know
how widespread it may be.

Technically, the problem results from the /DMAMEMR pin of the 82C206 (pin 61,
which is active low). This pin drives the MEMORY READ line on the
motherboard during DMA transfers from memory to I/O, which is the transfer
mode used during audio playback. This pin goes to a tri-state condition
after the DMA cycle. Apparently, on systems that exhibit this problem,
the line remains at an active level too long when switching to the tri-state
condition, which can cause a memory parity error to occur.

In theory, the simplest solution to the problem is to add a resistor to the
motherboard to pull pin 61 hard to the off state (a resistor between 1K
and 2K placed from pin 61 to +5V). We have verified that this solves
the problem, but it is far from practical in most situations. This is
not a recommended and Gravis will not be responsible for any damages. Try
it at your own risk.

There is one other solution that we have found to solve the problem. We
have discovered that re-configuring the DMA controller to temporarily disable
the cascade channel during playback seems to eliminate the problem. It must
be noted that disabling cascade mode will also disable anything that uses DMA
channels 0 through 3, which will usually include the floppy drives. In
most cases, this shouldn't be a problem, since audio playback from a floppy
drive isn't practical. It would, however, be a problem if there are
background tasks that involve floppy access during playback.

In order to implement this fix, the following needs to be done:
To disable cascade mode (prior to playback), send data 0 to address D6(hex).

outportb(0xD6,0);

To re-enable cascade mode (after playback), send data C0(hex) to address
D6(hex). Using the toolkit definitions, this is:

outportb(0xD6,0xC0);

You will find a program on the Gravis BBS (604) 431-5927 called OPTIFIX
in the file GUS0013.ZIP which does do this.