VOGONS


First post, by McBierle

User metadata
Rank Member
Rank
Member

Hi friends,

some time ago i changed a osci-crystal (66mhz -> 80mhz) on one of my 386 boards to get an am386DX-40 to run at its native speed. It seemed to work but no i found that himem.sys says: "himem sys has detected unreliable xms memory at address xxx".
I tried playing with some bios options but whenever himem is satisfied nssi gives me a speed of a 33mhz cpu instead of a 40mhz cpu. Anyone has an idea what i could try? Is tehre some highspeed ram that might help?

Anyways while changing through some ram modules i found that these friends give me a total of 16mb RAM 😎
How much did the coast back in time?

WP_20190306_002.jpg

Greetings!

edit: better pic

Reply 1 of 8, by Deunan

User metadata
Rank Oldbie
Rank
Oldbie

It could be some dirt in the SIMM socket or on the memory modules, brush both to make sure. There is an old version of memtest86 that works on 386 but it's pain to get it to boot if you don't have a floppy drive. So try GoldMemory: http://www.goldmemory.cz/
(If that version doesn't work use older one from here: http://www.elhvb.com/webhq/download/index.htm file is named gm442.zip)

These are 60ns chips so should work very well with 40MHz 386, perhaps even with 0 wait states setting (depends on BIOS, what some call 0WS is actually 1-2WS in reality). Back in '98 (if I read the date code correct) these would not be all that expensive but when AMD released the 40MHz Am386 it was a different story.

Reply 2 of 8, by McBierle

User metadata
Rank Member
Rank
Member

Hello again.

I used "gm" and found random errors on random memory spaces. Changed random things at random times. Turned around at random times. Drank beer at random times.
At some point i randomly had the glorious idea to deactivate the cache... no error with gm, no error via himem.
After some more random changing cache chips (total 128k), i put in 8+1 to get 64k and it works. No error with gm or himem............ BUT only with the 4Mb ram i had used at this point. 8Mb would give me errors. Next random changing at some random time... maybe... it works now and we all know, never change a random working system.

Greetings to all you random people!

edit: *dancing to random metal*

Reply 3 of 8, by Deunan

User metadata
Rank Oldbie
Rank
Oldbie

Yup, cache issues will manifest as random RAM errors, among other things. I have the same problem with an otherwise pretty nice mainboard based on OPTi 82C495SLC chipset - I'm forced to use more relaxed timings of 3-1-1-1 instead of 2-1-1-1. Just like in your case NSSI benchmark reduces my score to a DX33 even though it's a DX40.
I replaced the chips with 15ns ones but it didn't help and I don't have anything better (12ns or 10ns) to test with. I think the chipset might be at it's limits here. The RAM I have installed is 8MB of 60ns sticks and that works very well with slower cache or no cache so it's not the source of problems.

Reply 4 of 8, by alvaro84

User metadata
Rank Member
Rank
Member
McBierle wrote:

...random changing cache chips (total 128k), i put in 8+1 to get 64k and it works. No error with gm or himem............ BUT only with the 4Mb ram i had used at this point. 8Mb would give me errors.

So the board has 8+1 cache IC sockets? That's good, common wisdom says that the cache is less strained in dual bank operation than when there's only one bank (4 chips) on board - and I lately experienced the same while experimenting with various 486 boards.

I think the chipset is at its limits, and may or may not be able to stabilize with 8 RAM sticks. Have (blasphemy warning 😁) you tried 16MB in 4MB sticks? I'm bold enough to have 386 boards stuffed with 16 or even 32MB of RAM and it doesn't really hurt anything. Alternatively, 4MB is often sufficient too. 8 is a nice number, though, it has a "robustly built 386" feeling 😀

I found 495SLC (at least in the VLB 386/486 combo Expert board) quite picky when it comes to memory, a lot of modules that worked perfectly in other systems gave me heaps of errors in GM. So I encourage you to try more if you happen to have a stockpile of them. As for me, next time (I found a 495SLC board again which is yet to be tested) I'll try it with modules that could take 3-2-2-2 timings at 33MHz in my QDI OPTi895 486. We'll see.

Shame on us, doomed from the start
May God have mercy on our dirty little hearts

Reply 5 of 8, by Deunan

User metadata
Rank Oldbie
Rank
Oldbie
alvaro84 wrote:

So the board has 8+1 cache IC sockets? That's good, common wisdom says that the cache is less strained in dual bank operation than when there's only one bank (4 chips) on board - and I lately experienced the same while experimenting with various 486 boards.

Not op but my board does have 8+1 cache now, 256kB of it and all 15ns chips, but I have not seen any speedup with 386 vs 128kB. Might turn out it's not bank-interleaved cache and actually adding more chips makes the timing problem worse due to more parasitic capacitance and slower signal slew rates. Could be BIOS issue, mine is 11/11/92 and I think I have found a 08/08/93 image that's from the same model but haven't tried it yet.

The 495SLC chipset is not very good either way as it turns out. RAM read latency is just horrible, I'm barely doing 10MB/s on a 40MHz CPU. Cache read is about 23MB/s (I can do 27 but it's not stable at 2-1-1-1, same problem as op's). I have cache-less SX systems that do way better, at some 18MB/s! Curiously writes seem to be good, doing about 30MB/s. It's a good thing I got this mobo very cheap because it was damaged from the battery spill and I had to spend quite a few hours fixing it (and that's after as much time spent cleaning it). Originally I even planned just removing some parts from it but it does work now, so...

Anyway this mobo has VLB slots and works way better with 486 CPUs, mostly because you have to use 3-2-2-2 timing anyway with a 33MHz+ 486 and the internal L1 cache masks a lot of the board L2 and RAM latency. Burst reads also improve RAM latency, as well as (I think) different banking in 486 mode. In general it's a decent board for early 5V 486 processors, but medicore 386DX 40MHz one. If it was cache-less it would be a disaster in 386 mode. Another board I have, a UNICHIP 367C, does way better with 386DX and it only has 128kB of cache in 4+1 configuration and no room for more. Sadly it lacks VLB so some games (like Doom) will be tad faster on the OPTi anyway due to Cirrus Logic 5224 in VLB slot vs Trident 8900D (which is BTW a very capable ISA card).

I've run some benchmarks on several 386/486SLC/486DLC equipped mobos, I might compile it someday.

Reply 6 of 8, by McBierle

User metadata
Rank Member
Rank
Member

To finish this on my part:

Next morning i thought to try some other ram modules. But the original 8Mb suddenly worked...

For my sanity i justed cleaned everything with alkohol (internal and external 🤣 ) to get a cause.
So now i've got 64kb cache with 8Mb ram and an am386dx-40. I'm happy for now.

edit: At least it's not much more mysterious as installing windows 95

Reply 7 of 8, by McBierle

User metadata
Rank Member
Rank
Member

To un-finish my part:

Next day next unluck. Nothing worked again, not with 8mb and not with 4mb.
I changed ram modules happily around, and sometimes it worked sometimes not. No pattern at all. I even changed the cpu to a ceramic one, same randomness.

At some point i just jiggled a bit on the modules when i got the problems and taddaaaa that seems to be the problem. Maybee unclean modules and/or sockets. This board was one of my first i got when i entered the retrospace. It had some battery corrosion, ate away the keyboard traces which i bridged via cables. I think i'll give it a good cleaning of the ram sockets.

Should have thought of this problem as i had problems with the vga card. It needed a jiggle here and there to work after some time. "Cleaned" the ISA socket some days ago and no more problems of that direction.

Reply 8 of 8, by alvaro84

User metadata
Rank Member
Rank
Member
alvaro84 wrote:

next time (I found a 495SLC board again which is yet to be tested) I'll try it with modules that could take 3-2-2-2 timings at 33MHz in my QDI OPTi895 486. We'll see.

Well... I didn't have to change anything. What's more, I don't even dare to. The board just works fine with the 128kB of 20ns Winbond cache (and 15ns tag IC) and the 8x1MB RAM that consists of two different quads. Fine = seems stable at 2-1-1-1 cache and 3-2-2-2 main memory timing, with the soldered 386DX-40.

This time it seems very picky about ISA cards, though. And Acer I/O card clashes with the GUS 3.74 and my Winbond based I/O can't stand the CT2290 SB, regardless of ISA divider. The Winbond + GUS and the Acer + CT2800 (Vibra16/OPL3) is fine, though. The VGA is an Octek Ark1000 VLB. The Trident 8900D was okay too with the Winbond I/O and the GUS. *shrugs*

Shame on us, doomed from the start
May God have mercy on our dirty little hearts