PDA

View Full Version : EMM386 Slowdown with K5



High_Treason
July 27th, 2013, 05:05 AM
This one has got me beat (and I'd be willing to bet I have forgotten something stupid), I have a K5-based system which ran fine aside from a dodgy hard drive (which has been dodgy for almost a decade) - needless to say I got tired of read/write errors and replaced it with another drive which has hardly been used.

I installed Windows 95, the same version it was running before (from the same CD even, 4.00.950) but there is a small problem. I can run Windows fine, provided I don't load EMM386, unfortunately I need that in DOS sometimes. I attempted to replace it with JEMM386 but it still runs slow.

I used step-by-stem confirmation to chech it out, basically it gets to loading EMM386 (or equivalent) and just sits there for a few minutes, the CPU and COAST get very hot once EMM386 is loaded (and I'm using a Socket 370 Celeron heatsink, this is a K5-PR100ABQ, gray) and attempting to load any program after this (even EDIT) results in further waiting times. Windows will usually boot slowly and things speed up once in the OS although it did give me an error message once, unfortunately I was watching something whilst this happened and I caught it just as the "It is now safe to turn off your computer" message appeared.

Any ideas? I can post the contents of the CONFIG.SYS / AUTOEXEC.BAT etc if you wish as they are heavily modified (based on a template I wrote for convenience sake) although I don't think the loading order is wrong. I had 48MB of RAM installed, but the readout on MEM was weird, so I have reduced it to 32M as there seemed to be trouble working with RAM above this, although tests with 16MB yielded no improvement (if anything it was slower).

Agent Orange
July 27th, 2013, 07:13 AM
Several questions: What DOS programs are you running that require EMM386? Are you shelling out to WIN95 after DOS boots, or is your box setup to dual boot. Reason I ask about that is that WIN95 does not need EMM386. Also, is HIMEM.SYS loading properly.

DEVICE=C:\Your dir\HIMEM.SYS
DEVICE=C:\YOUR DIR\EMM386.EXE X=A000-FEFF

List your DOS CONFIG so we can have a look at ir.

High_Treason
July 27th, 2013, 08:16 AM
What happen is I have a menu, in MSDOS.SYS I have "BootGUI=0" so that menu in the config sys triggers wether Autoexec skips to the end (resulting in a command line) or starts WIN. Believe it or not there are a few tech demos and games requiring EMM386, my animation software likes to have it loaded too. Himem seems to be loading, at least, testmem:on will spit out the "Testing extended memory... Done." message, diagnostic software also indicates it is loaded. I did try HIMEMX.SYS as well and it makes no difference.

Right, prepare yourself for a wall of text, the config.sys;

[MENU]
MENUCOLOR=6,0
SUBMENU=DOS,Start DOS.
SUBMENU=WIN,Start Windows.

[DOS]
MENUITEM=D0,DOS Only.
MENUITEM=D1,DOS and HIMEM.
MENUITEM=D2,DOS, HIMEM and EMM386
MENUITEM=D3,DOS, HIMEM, EMM386 and MOUSE.
SUBMENU=WIN,Load Windows instead.
MENUCOLOR=10,0

[WIN]
MENUITEM=W0,With nothing loaded.
MENUITEM=W1,With all DOS Drivers.
SUBMENU=DOS,Start DOS instead.
MENUCOLOR=11,0

[D0]
;JUST LOAD DOS

[D1]
DEVICE=C:\WINDOWS\HIMEM.SYS

[D2]
DEVICE=C:\WINDOWS\HIMEM.SYS
DEVICE=C:\WINDOWS\COMMAND\JEMM386.EXE

[D3]
DEVICE=C:\WINDOWS\HIMEM.SYS
DEVICE=C:\WINDOWS\COMMAND\JEMM386.EXE
;LOAD A MOUSE IN AUTOEXEC!
;MAY AS WELL ADD CDROM.SYS HERE LATER...

[W0]
;JUST LOAD WINDOWS

[W1]
DEVICE=C:\WINDOWS\HIMEM.SYS
DEVICE=C:\WINDOWS\COMMAND\JEMM386.EXE

[COMMON]
DOS=HIGH
DOS=UMB
; DEVICE=C:\WINDOWS\setver.exe
DEVICEHIGH=C:\WINDOWS\COMMAND\ANSI.SYS
; device=C:\WINDOWS\COMMAND\display.sys con=(ega,,1)
; Country=044,850,C:\WINDOWS\COMMAND\country.sys


I know about the commented out lines, that was deliberate as they serve no real purpose for me. Oh, and before anybody rags the color scheme, this is because if I am viewing via a capture card I can't always read the text, instead I rely on the colors on the screen, there are other color changes in autoexec for the same reason. Worst case scenario, I can live without EMM386 as I have other machines that work fine with it, the downside there would be transplanting some of the hardware (like the SCC-1).

njroadfan
July 27th, 2013, 08:44 AM
The only thing that might require EMM386 is older DOS programs that use Expanded Memory. Otherwise on modern PCs its commonly used to create Upper Memory Blocks (to load drivers and TSRs high) from Extended Memory using 386 Protected Mode and the CPU's memory manager. DOS than runs in V86 mode with some slowdown, but nothing at the level you are describing. If you want UMBs without throwing the machine into protected mode, check out UMBPCI: http://www.uwe-sieber.de/umbpci_e.html

Just don't load Smartdrv high if your chipset is listed as "No ISA-DMA". Otherwise you lose access to the floppy drive until you disable its caching with the "A-" switch.

Stone
July 27th, 2013, 09:01 AM
Have you tried running 'EMM386.EXE NOEMS'?

High_Treason
July 27th, 2013, 11:47 PM
The only thing that might require EMM386 is older DOS programs that use Expanded Memory. Otherwise on modern PCs its commonly used to create Upper Memory Blocks (to load drivers and TSRs high) from Extended Memory using 386 Protected Mode and the CPU's memory manager. DOS than runs in V86 mode with some slowdown, but nothing at the level you are describing. If you want UMBs without throwing the machine into protected mode, check out UMBPCI: http://www.uwe-sieber.de/umbpci_e.html

Just don't load Smartdrv high if your chipset is listed as "No ISA-DMA". Otherwise you lose access to the floppy drive until you disable its caching with the "A-" switch.
This is another use for it, helps to prevent some drivers hogging conventional memory. I've looked at this UMBPCI and it's not compatible, but I'll bookmark it as there is a K7 rig under the desk that it may be useful for later.


Have you tried running 'EMM386.EXE NOEMS'?
I've been playing with the command line parameters and none seem to help, that one included. No improvement.



As it happens, I was starting to wonder wether it might actually be an electrical or logic problem that has developed. The PSU tested out fine (and I did test it under load on another board) as the motherboard has exhibited some strange behaviours regarding CD-ROM drives and Hard Drives in the past (i.e; they don't seem to last long in here) and due to the heat it was throwing out (stupid amounts for what is in there) - I tried the NOEMS command line again and hit reset due to the delay which resulted in the PSU cutting power to the machine. As it stands now it looks as if I will have to take the board out and try to find out what's going on in there, hopefully I don't have to scrap it as it's a pretty unique board (out of what I own, has white ISA slots too) and the deturbo works which is very useful. I shall post back here if I require further assistance but I have a bad feeling that I'm going to have to replace it with the PCChips board (eww!) I have as it's the only other K5 compatible one I own. And my Dark Forces LP is about to go out of the window :( - having gotten power back, I now have a crash on the command line without loading EMM386. Yeah, this thing has always been a problem child, think I'll retire it (to a box, I never throw things out if there's a chance they can be fixed) and replace the board, maybe get a faster CPU too, it's had a good run.

Damn, thanks for the help though guys.

High_Treason
July 28th, 2013, 07:01 AM
Figured I'd drop in with an update for anyone that cared, I replaced the motherboard (TR5510 AIO) with another one (PT 7502) and everything works fine now. Nothing appears to be wrong with the old one, but the old Windows installation was done when a Pentium 120 was in the board, possibly this altered something somehow as the motherboard didn't really support the K5 officially. The only thing remaining now is to make the S3 Virge work, but I should be OK on my own with that.