VOGONS


First post, by GigAHerZ

User metadata
Rank Oldbie
Rank
Oldbie

Good day!

I've been reading this forum for few years and have accumulated few of computers for my own interest. Now it is time to register to this forum and join you guys. 😀

For the first topic i have a small problem with my 386 PC.

It's a Am386DX40 on a PC CHIPS based motherboard.
It had soldered 128KB of L2 cache. (instead of jumpers, there were also wires soldered) At the same time, it had holes and everything for another bank of cache chips and a separate write back cache chip.
Of course i desoldered the chips and soldered the sockets back instead, added the ceramic capacitors, replaced the wires with jumper pins etc.

While mostly all is good and well, there is one interesting problem. (And this problem was present before i attacked the MB with my soldering gun)
It's a bit unstable, when L2 cache is enabled. When emm386 is also loaded, there's an interesting artifact with norton commander as well: when command runs in command line, and then norton commander returns back, then 2 vertical rows of characters, that are not filled with filenames, but are empty, are left unupdated and contain the letters from the background command line printout.

I've tried numerous different tools to try to reliably diagnose the issue, but nothing seems to be picking up the failure. I've resoldered the sockets and reseated & replaced the chips maybe dozen times already but still no luck. The closest thing i've got is that maybe 1/20 times, when i run doom2 benchmark, from one point onwards, it kind of misses correct steps and starts to shoot to slightly wrong directions. But 1/20 chance to even get that result is not good enough for diagnosis tool.

So i'm coming to you. Do you know any tools to try out for testing L2 cache? Even better, if it would print out faulty addresses so i could find proper chip and traces to it on the board as well.

Many thanks already to all the community. You can't even imangine how much information i have already read from here and used for my entertainment with retro pcs. Thank you!

"640K ought to be enough for anybody." - And i intend to get every last bit out of it even after loading every damn driver!

Reply 1 of 26, by GigAHerZ

User metadata
Rank Oldbie
Rank
Oldbie

A small bump. 😀

Would love to hear about software that could detect problems in memory when you see different kind of artifacts here and there.

Quick additional glue to my problem: The famous Phil's Computer Lab dos benchmark set - the text color in the menu becomes orange. The bat file does not send orange text color command out...
So different weird things are happening... and eventually the computer will lock up.

"640K ought to be enough for anybody." - And i intend to get every last bit out of it even after loading every damn driver!

Reply 2 of 26, by fitzpatr

User metadata
Rank Member
Rank
Member

Interesting problem. Intermittent ones like this can be a pain to diagnose, as I'm sure you've experienced.

A DX-40 runs with a 40MHz bus, which could be too high for your cache/RAM. Could we please see pictures of your board, cache chips, and RAM? I agree that it sounds like a memory issue, but that it happens when cache is enabled doesn't necessarily mean that the cache is the problem. I could also see it being a problem with the chipset, or CPU.

Have you tried adjusting whatever jumper/BIOS options control Wait States?

Cachechk is a program that will conduct some tests on your cache, but if or with what granularity it will report errors.

MT-32 Old, CM-32L, CM-500, SC-55mkII, SC-88Pro, SC-D70, FB-01, MU2000EX
K6-III+/450/GA-5AX/G400 Max/Voodoo2 SLI/CT1750/MPU-401AT/Audigy 2ZS
486 Build

Reply 3 of 26, by GigAHerZ

User metadata
Rank Oldbie
Rank
Oldbie

fitzpatr, thank you for the reply.

I have played around with waitstates in bios and it has no effect. (Both for RAM and for cache) If external cache is enabled, problems are present...

When i get home, i'll produce some pictures and exact model number of the board. If i remember correctly, i'm using 15ns cache chips that should be good enough...

EDIT: Found the motherboard model already: https://stason.org/TULARC/pc/motherboards/I/I … -386-M-321.html

"640K ought to be enough for anybody." - And i intend to get every last bit out of it even after loading every damn driver!

Reply 5 of 26, by fitzpatr

User metadata
Rank Member
Rank
Member

Happy to try to help!

-15 should be good.

Did you upgrade the TAG RAM chip when you upgraded to 256k?

Did you replace all of the original cache chips when you made the modifications, or did you re-use the original chips and augment them?

MT-32 Old, CM-32L, CM-500, SC-55mkII, SC-88Pro, SC-D70, FB-01, MU2000EX
K6-III+/450/GA-5AX/G400 Max/Voodoo2 SLI/CT1750/MPU-401AT/Audigy 2ZS
486 Build

Reply 6 of 26, by GigAHerZ

User metadata
Rank Oldbie
Rank
Oldbie

I replaced all cache chips, including TAG chip.

I also have already multiple sets of those cache chips both from other computers and also i ordered some just to make sure the chips are fine.

I also have this separate write-back cache chip installed. Wheter it is installed or not, it doesn't affect the symptoms.

"640K ought to be enough for anybody." - And i intend to get every last bit out of it even after loading every damn driver!

Reply 7 of 26, by AlaricD

User metadata
Rank Oldbie
Rank
Oldbie

You say "It's a bit unstable" but only describe graphics glitches. If the computer isn't restarting/locking up, it seems more like the video card is the problem. Bad RAM or cache means stability issues for the most part, not display issues.

Reply 8 of 26, by GigAHerZ

User metadata
Rank Oldbie
Rank
Oldbie

AlaricD, it does eventually lock up randomly as well. Mostly the scenario is like this:
I'm using norton commander. Going to execute some program (let's say mTCP telnet) and everything works. Play around for let's say 30min with telnet and then i'll exit the program and i'm back in norton commander.
Now sometimes TAB does not change the focused side in the norton commander any more and whatever i do, after ~10 seconds, the whole computer locks up with beeping to every key press.

Still, maybe a graphics problem... I'll try some other graphics cards soon. (I have few laying around)

"640K ought to be enough for anybody." - And i intend to get every last bit out of it even after loading every damn driver!

Reply 9 of 26, by Moogle!

User metadata
Rank Member
Rank
Member

You don't have have the ISA bus speed set too high for the graphics card, do you?For 40Mhz, you have an 80mhz crystal. So CLK2/5 = 16mhz, clk2/6=13.33Mhz, clk2/8=10Mhz, ect. My fastest ISA graphics adapter doesn't like 16Mhz, and will give graphical errors.

Reply 10 of 26, by GigAHerZ

User metadata
Rank Oldbie
Rank
Oldbie

So, i tried to test the different things. Unfortunately doens't give much more information.

I tried 2 additional graphics cards and they behave exactly the same. (Trident 8900 and 9000)
BIOS doesn't have options to set the ISA clock speed. In terms of wait states, i have also tried max wait state settings, but the problem stays.
I have also tried multiple sets of 30pin RAMs with no success.

Anything i could do to diagnose it fruther?

"640K ought to be enough for anybody." - And i intend to get every last bit out of it even after loading every damn driver!

Reply 11 of 26, by Eep386

User metadata
Rank Member
Rank
Member

Usually faulty cache will throw up rather predictable error patterns across large expanses of RAM under Memtest86. You can tell it's 'probably' not the RAM at fault, as it's a similar error pattern across very large expanses.

Have you tried putting the original 128KB cache back in?

Life isn't long enough to re-enable every hidden option in every BIOS on every board... 🙁

Reply 12 of 26, by GigAHerZ

User metadata
Rank Oldbie
Rank
Oldbie

Eep386,

memtest86 is clean. I suspect i somehow bypasses the cache to get valid results for the ram itself, which itself is fine.

I definitely tried that a long time ago, but i didn't have proper setup and software to test the machine consistently. I'll try to take some time to retry with 128KB cache.

One additional bit of interesting symptom: With EMM386 memory manager, norton commander has this "unupdated characters" problem only, when Zeno text mode accelerator is loaded. Other problems still persist, but this particular symptom comes out when Zeno is loaded. Thankfully it gives a quick indication wheter everything is working or not - just need to boot up and load NC to understand, if i have a problem.

"640K ought to be enough for anybody." - And i intend to get every last bit out of it even after loading every damn driver!

Reply 13 of 26, by GigAHerZ

User metadata
Rank Oldbie
Rank
Oldbie

So i tried it out:
128KB cache with writeback cache (requires different cache tag chip): problem persists
128KB cache without writeback cache (different tag chip): problem persists
256KB cache without writeback cache: problem persists
256KB cache with writeback cache: problem persists

I'm currently out if ideas... Any thoughts?

"640K ought to be enough for anybody." - And i intend to get every last bit out of it even after loading every damn driver!

Reply 14 of 26, by Tiido

User metadata
Rank l33t
Rank
l33t

Could be a mechanical issue (dead via or something). I have one pentium board that is unsable when cache is enabled and on it I replaced all the chips pretty much and it still exhibits the issue while on the donor board the chips of the original board work perfectly. One day I'll make an attempt to find the discontinuity... all it takes is one signal.

T-04YBSC, a new YMF71x based sound card & Official VOGONS thread about it
Newly made 4MB 60ns 30pin SIMMs ~
mida sa loed ? nagunii aru ei saa 😜

Reply 15 of 26, by GigAHerZ

User metadata
Rank Oldbie
Rank
Oldbie

Any tools that could diagnose non-working address/data bus lines on cache? It would be super helpful, if there's a broken line...

"640K ought to be enough for anybody." - And i intend to get every last bit out of it even after loading every damn driver!

Reply 16 of 26, by Eep386

User metadata
Rank Member
Rank
Member

Well unfortunately, your best tool for testing broken vias/lines is a multimeter.
AFAIK there is no reliable way to test for bad address/data lines in post-PC/XT boards through software, as chipsets tend to interleave memory data lines for performance, so the results given would certainly be inaccurate/unreliable.

Edit: Have you tried 64K cache? Also have you tried running Memtest86 with all those combinations of cache, and seeing if it gives the same error pattern? If it gives the same pattern, then it's either a bad via/line, or (eeks!) a failed chipset/ASIC.

Life isn't long enough to re-enable every hidden option in every BIOS on every board... 🙁

Reply 17 of 26, by GigAHerZ

User metadata
Rank Oldbie
Rank
Oldbie

Eep386, haven't tried 64k, as i don't have 8Kx8 chips at hand and it can't run on 32Kx8 chips with 64K configuration. (Same story for 32K configuration)

I've tried memtest86 and it's clean. (I had let it run during the day while i was at work and it had done 2 complete passes, IIRC)

"640K ought to be enough for anybody." - And i intend to get every last bit out of it even after loading every damn driver!

Reply 18 of 26, by GigAHerZ

User metadata
Rank Oldbie
Rank
Oldbie

So, some news now. It's probably a software issue, but i'm unable to completely identify the problem.

I recently got another 386 (motherboard) with 486DLC processor. With the new computer, the symptoms are exactly same with similar config. (autoexec.bat & config.sys) I also switched the motherboard/cpu other way around and problem still persists.

By removing different drivers, i found out that a ZENO driver, that accelerates text mode in dos, caused the issue to show. (Un-updated text blocks in norton commander) Yet, i still have the random issues - some keyboard keys will get messed up (TAB doesn't switch norton commanders active side, or really switches back instantly; over time the computer hangs eventually, etc)

So, the problem exists with both EMM386 (from win98) and JEMMex. I have tried to remove all the manually included memory ranges from emm386/jemmex, but still the issue persisted.

I can't really believe 2 computers have exaclty the same problem with it. Therefore, i seek for your help. 😀 Maybe you can see a problem in my config?

My autoexec.bat and config.sys are as follows:

config.sys wrote:
[menu] MENUITEM=EMM, EMM386 (EMS) MENUITEM=JEMM, JemmEx (EMS) MENUITEM=RDOSUMB, RDOSUMB (No EMS) MENUITEM=CLEAN, Clean […]
Show full quote

[menu]
MENUITEM=EMM, EMM386 (EMS)
MENUITEM=JEMM, JemmEx (EMS)
MENUITEM=RDOSUMB, RDOSUMB (No EMS)
MENUITEM=CLEAN, Clean

[COMMON]
SWITCHES=/F
DOS=HIGH,UMB
FILES=60
BUFFERS=11,0
FCBS=1,0
STACKS=9,256
LASTDRIVE=Z
BREAK=ON
NUMLOCK=ON
COUNTRY=061,,C:\DOS\COUNTRY.SYS

SHELL=C:\DOS\DRV\4DOS\4DOS.COM C:\DOS\DRV\4DOS\ /P

[EMM]
DEVICE=C:\DOS\DRV\EMM98\himem.sys
DEVICE=C:\DOS\DRV\EMM98\emm386.exe 16384 i=b000-b7ff i=c800-f7ff frame=c800 d=256 ram notr
DEVICEHIGH=C:\DOS\DRV\DOSMAX\dosmax.exe /m1/r-/p-/u9 U02 U08 U09 U0A U0B U0C U0D U0E U70 U72 U73 U74 U76 U77

[jemm]
DEVICE=C:\DOS\DRV\JEMM\movexbda.exe
DEVICE=C:\DOS\DRV\JEMM\jemmex.exe I=b000-b7ff I=c800-f7ff FRAME=c800 MAX=16M SPLIT ALTBOOT
DEVICEHIGH=C:\DOS\DRV\DOSMAX\dosmax.exe /m1/r-/p-/u9 U02 U08 U09 U0A U0B U0C U0D U0E U70 U72 U73 U74 U76 U77

[RDOSUMB]
DEVICE=C:\DOS\DRV\RDOSUMB\rdosumb.com * #7
DEVICEHIGH=C:\DOS\DRV\EMM98\himem.sys
DEVICEHIGH=C:\DOS\DRV\DOSMAX\dosmax.exe /m1/r-/p-/u9 U02 U08 U09 U0A U0B U0C U0D U0E U70 U72 U73 U74 U76 U77

[CLEAN]

autoexec.bat wrote:
@ECHO OFF VERIFY OFF PROMPT $p$g PATH=C:\DOS;C:\APPS\Q SET TEMP=C:\TEMP SET TMP=C:\TEMP SET DRV=C:\DOS\DRV SET DL=%DRV%\DEVLOAD\ […]
Show full quote

@ECHO OFF
VERIFY OFF
PROMPT $p$g
PATH=C:\DOS;C:\APPS\Q
SET TEMP=C:\TEMP
SET TMP=C:\TEMP
SET DRV=C:\DOS\DRV
SET DL=%DRV%\DEVLOAD\devload.com /Q /H
SET DIRCMD=/o:gne

GOTO %CONFIG%
:emm
:jemm
:rdosumb
PROMPT $e[1;36m$p$g$e[0;47;0m

LH %DRV%\FIX27\FIX27.COM

REM == DISK DRIVES ==
%DL% %DRV%\XHDDXDVD\XHDD.SYS /S5 /H /P /O
%DL% %DRV%\XHDDXDVD\XDVD2.SYS /D:CD001 /H

LH %DRV%\CDROM\SHSUCDX.COM /C /D:CD001 /l:e /e /m:30

REM == Common parts ==
%DL% %DRV%\NANSI\NANSI.SYS /X
%DL% C:\DOS\DISPLAY.SYS CON=(EGA,,1)
MODE CON CODEPAGE PREPARE=((437) C:\DOS\EGA.CPI)
MODE CON CODEPAGE SELECT=437

LH KEYB SV,,C:\DOS\KEYBOARD.SYS
LH %DRV%\CTMOUSE\ctmouse.exe /r23

GOSUB :sound

GOSUB :network

GOTO :end

:clean

GOTO :end

:sound
REM == SOUND CARD ==
SET SOUND=%DRV%\SB16
SET BLASTER=A220 I7 D1 H5 P330 T6
SET MIDI=SYNTH:1 MAP:E
REM %DLH% %SOUND%\DRV\CSP.SYS /UNIT=0 /BLASTER=A:220
LH %SOUND%\DIAGNOSE /S
LH %SOUND%\MIXERSET /P /Q
RETURN

:network
REM == NETWORK ==
SET MTCPCFG=C:\APPS\MTCP\mtcp.cfg
SET TZ=Europe/Tallinn
LH %DRV%\3C509\3c509.com 0x60
RETURN

:end
alias /r %DRV%\4DOS\aliases.cfg

NB: I load most of my styff through devload, so i can load device drivers through autoexec.bat and therefore have more versatility to set stuff as i want.

"640K ought to be enough for anybody." - And i intend to get every last bit out of it even after loading every damn driver!

Reply 19 of 26, by retardware

User metadata
Rank Oldbie
Rank
Oldbie

I loved 4DOS, but it is incompatible with Windows and causes a lot of problems like that. Sadly there is no way keeping it if you want a stable system.
Text mode accelerators should be avoided as they only cause problems, not worth the faster scrolling.
I am amazed you even use DOSMAX. The qualitas and quarterdeck stuff always had issues, also not worth the hassle and frustration involved. I ditched it 1989 already after evaluating and seeing what multitude of problems it introduces.