VOGONS


First post, by pand

User metadata
Rank Newbie
Rank
Newbie

I have GUS PnP clone card with AMD AM78C201AKC chip. The original (red) GUSes PnP were built with AM78C201KC and I owned one of them years ago. If I remember correctly it had some compatibility issues in GF1 emulation mode, but after decades I don't remember exactly what was wrong. Nevertheless, I would like to ask somebody having GUS PnP running in MSDOS to verify one thing and post the results here. Can somebody please run the demo 'the fulcrum' (by matrix)
http://www.pouet.net/prod.php?which=313
and check if the sound plays correctly at ~3:45 and on, or gets corrupted.
Please listen to the attached mp3s. The fulcrum_gpnp_dos_issue.mp3 was recorded from msdos/gus pnp clone and shows the issue at around 3:45 where the sound becomes messed up and noisy.
For a reference the correctly sounding track (recorded from windows version of fulcrum on linux/wine and x-fi sound card) - the file fulcrum_xfi_wine_correct.mp3.
The sound plays correctly with GUS classic/max (GF1) in MSDOS. Also I tried many configurations (irq, dma, card ram configuration etc.) and the issue occurs always (with GUS PnP clone). The same issue with messed/noisy sound occurs with other MSDOS demos/intros on GUS PnP clone if they are played one by one. The first time it always plays correctly, but sometimes the following productions sound noisy. In such cases PC restart or even iwinit.exe rerun fixes the issue. At this stage I'm trying to verify if the issue is unique to my card or common to other AM78C201 based cards.

Filename
fulcrum_gpnp_dos_issue.mp3
File size
4.26 MiB
Downloads
55 downloads
File comment
fulcrum by matrix demo soundtrack recorded on msdos/guspnp clone showing the issue
File license
Fair use/fair dealing exception
Filename
fulcrum_xfi_wine_correct.mp3
File size
4.17 MiB
Downloads
49 downloads
File comment
fulcrum by matrix demo soundtrack recorded on x-fi/wine playing correctly as a reference
File license
Fair use/fair dealing exception

Reply 2 of 12, by pand

User metadata
Rank Newbie
Rank
Newbie

The card is more similar to Philips one. I flashed it with Gus PnP firmware. I tested it with 3 sets of ram in total (2 different sets of onboard ram and a simm module) thus I would say memory is ok. The RAM access time was 60ns. It had 1MB or more, depending on the config.

Reply 3 of 12, by Rawit

User metadata
Rank Oldbie
Rank
Oldbie

Slow memory can lead to noise AFAIK, but that doesn't seem to be the issue here. The TEA6330T fader on the Compaq cards caused incompatibilities for that card, but that doesn't seem to be the case either. Do games run correctly? And software like Impulse Tracker? Can you try to run ULTRINIT for GF1 cards before starting the demo and see if that fixes things?

Another source of problems seems to be the SGMI bit that has to be set when using the GF1. Not all playback routines do that and this is same bit that is used by the Interwave to determine legacy or enhanced mode. I'm not sure if that would result in the issues you are having.

Did you see this thread on Pouet? https://www.pouet.net/topic.php?which=97&page=1

"The PnP has serious issues with native GUS support: after a peak burst it will emit a noise signal until you interrupt current going through it (i.e. reset/reboot your computer)"

YouTube

Reply 4 of 12, by pand

User metadata
Rank Newbie
Rank
Newbie

I tried with ULTRINIT, but it didn't help. I also know this thread from Pouet, but as I understand it (maybe wrong) it would generate the noise until pc is restarted, which is not my case.
The Fulcrum has a config file in which these 3 options regarding the GUS can be selected:

;gus parameters
gus_iw = 1 ;0 = GUS mode, 1 = detect, 2 = extended IW mode

Regardless of which mode is chosen it plays well the first part and the second part is corrupted as in the attached mp3.
The question is:
- Is the gus pnp player routine usable in The Fulcrum? I mean, does it work at all with any other GUS PnP configuration than mine? - In other demos some players seem to work well when gus pnp i selected, but some have to be forced to legacy gus to play correctly (for example Tour/Pulse). My recall is that original GUS PnP had the same problem, but I'm not 100% sure.

I don't play games, but I tested my card in windows98 and 3dmark2000. It worked very good in this setup with official gus pnp windows drivers. Also all other demos and intros I tried work well provided the card is re-initialized (iwinit or pc restart) before the demo is started.

This SGMI bit seems to be possible culprit. The scene productions were put together on their authors PCs without excessive testing on all possible hardware configurations. GUS PnP was not so popular so I guess its player routine could have been implemented incorrectly, at least in some cases.

The feedback from other GUS PnP owners would help me. I have chosen The Fulcrum as a test because it always fails for me and it is relatively easy just to run the demo and check if the sound plays correctly.

Reply 5 of 12, by Rawit

User metadata
Rank Oldbie
Rank
Oldbie

Unfortunately I don't have a Interwave card to test. With the Fulcrum supporting the Interwave, I would suspect that the SGMI bit is being set correctly. But around 3:45 mark you posted it seems a new track is being played... So it might be the playback routine.

Edit: tested the demo on my machine with a GF1, no issues.

YouTube

Reply 6 of 12, by 640K!enough

User metadata
Rank Oldbie
Rank
Oldbie

I had a chance to do a little testing, and the demo runs well on my system. Just to be sure, I tried with both an UltraSound Plug & Play version 1.0 (78C201KC) and the rev 2 ARGUS prototype (78C201AKC); both produced clean audio, regardless of the GUS parameters in the configuration file, and whether or not the BLASTER environment variable was present (ULTRASND was required, of course).

InterWave-based cards do have some problems, but this one is new to me. I am more inclined to think it is related to your configuration or the card itself. The InterWave sometimes doesn't handle ISA bus speeds beyond 8 MHz, and may also have trouble if your ISA I/O recovery time is set too high. Check those and try again, and also try booting with almost nothing in CONFIG.SYS/AUTOEXEC.BAT but the bare essentials (PATH statements, InterWave initialisation, VESA VBE TSR, if needed; no memory managers at all).

It might also be interesting if you could post a clear picture of the card, your IW.INI, your environment variables and the output of "iwinit -v".

Reply 7 of 12, by pand

User metadata
Rank Newbie
Rank
Newbie

Thanks a lot to both of you Rawit and 640K!enough for your help. Now knowing there is something wrong with my card I can justify more time spent on troubleshooting.
My card is essentially clone of Argus. I was too late to participate in Argus project, but thanks to __shock who published the schematics I was able to lay down my own PCB and got something like this:

gus_pnp_clone.jpg
Filename
gus_pnp_clone.jpg
File size
157.21 KiB
Views
1185 views
File comment
my gus pnp clone
File license
Fair use/fair dealing exception

Today I tried to fix possible lousy joints on Interwave (resolder it) and replaced latches and 'or' gates (with not too much hope for success, but it was easy enough to do).
Nothing helped so I have two guesses for now, either my PCB design is bad (a mistake, or just crappy design with parasitic capacitance or something) or Interwave failure. The later is supported by the fact I used second hand Interwave chip. I got some of them in good price, they came on machine cut pieces of pcb obtained from old soundcards (green pcb, I guess compaq cards). I have no idea they were taken from working cards or some customer returns faulty ones. Additionally the chip could have been damaged during the cutting or during my de/re soldering. As a next step I'm going to build another board with Interwave coming from the other source. It should help me ruling out one of these hypotheses .

Reply 8 of 12, by Rawit

User metadata
Rank Oldbie
Rank
Oldbie

That's impressive! You have a TOSLINK header on your GUS clone? That is awesome!

Did you rule out the ISA timing issues like 640K!enough mentioned?

Attached you'll find the XM files used by the demo. I would try those both in Impulse Tracker with the Interwave driver and FastTracker with classic GUS support to see what it does. Seems there might be some looping going on what causes the issues.

Attachments

  • Filename
    fulcrum.zip
    File size
    1.12 MiB
    Downloads
    49 downloads
    File license
    Fair use/fair dealing exception

YouTube

Reply 9 of 12, by 640K!enough

User metadata
Rank Oldbie
Rank
Oldbie
pand wrote:

Today I tried to fix possible lousy joints on Interwave (resolder it) and replaced latches and 'or' gates (with not too much hope for success, but it was easy enough to do).

Unless there is a more significant problem with your design (or the assembly job), the latches and ROM IC have no effect on the functionality you are testing. This demo needs only the InterWave and some usable RAM. Try leaving the ROM and latches off altogether, if you build another test board (that will mean no ROM-based MIDI playback initially, until testing is complete).

Have you run the RAM test from within the Gravis SETUP.EXE? Does it pass consistently, while also detecting the right amount of RAM?

Lastly, make sure that you are not using flux that is conductive when soldering. If there is any residue left on the board following assembly, that may lead to very strange problems, as you can see if you read the account of my mini-disaster here. However, if simply running iwinit fixes your problems temporarily, that may not be related.

Reply 10 of 12, by pand

User metadata
Rank Newbie
Rank
Newbie

@Rawit
I tried it on 2 different pcs. The BX boards, compaq with very poor bios (very limited settings) and the other one wth regular Ami or Award BIOS. I played with what I could, but always the same, thus I think its not related to ISA settings.
Regardinng the toslink transmitter. I have a plan to add it thus why the board is designed with this transmitter and three 2x2 pin headers around the MX chip with needed signals. My first candidate is CS8420. This is athe S/PDIF transmitter with SRC. The maximum rate ratio for CS8420 SRC is of 1:3 (3:1) thus in theory should be capable of upsampling the lowest IW output rate of 19293Hz (above 31 channels in GUS emulation mode) to 44.1KHz output.
I haven't done much in this. For now I only set up the the virtual machine with windows 95 and compiled the iwinit.exe which will have to be modified to switch interwave into serial transmitting mode.

@640K!enough
I didn't expect latches replacement to help neither. I tested the rom and it was working correctly (the checksum of dumped rom was correct and midi files played correctly). My plan was similar to your advice, build the next board without rom and with 1mb ram only and test the basic things first. The current board is slightly dirty with the flux. This flux supposed to be non-conductive, but I'll try to give it good wash with IPA and test again. I ran the ram test every time I changed the ram configuration so it passed it for 1MB, 4MB and 16MB (simm). The ram capacity was also detected correctly each time.

Reply 11 of 12, by MJay99

User metadata
Rank Member
Rank
Member

Did you use the MS6308 or another Amp? I did get a pretty noisy and distorted sound at higher volume settings on one of the amps I tested as possible replacements.
If you're using the 6308, maybe it's worth trying a replacement?

Reply 12 of 12, by pand

User metadata
Rank Newbie
Rank
Newbie

Spending some more time on this I tested numerous theories. It came out that simm module was working correctly while problems were visible (or rather hearable) with onborad ram only. Keeping it short I found that in some case memory writes were wrong. Sometime bytes were written in the wrong address. Memory reads were always ok. I did what I could including rerouting the board few times with no success. In the end I swapped the onbord ram and rom. In such config the simm and ram are approximately equidistant from IW and the onboard ram is nearer the IW than in the original config. This fixed my problems. Today (2022.11.05) I listed one of my boards on ebay. Thanks again to all for their help in this thread.