Dell PowerEdge 2400

System Requirements:

  • Dell PowerEdge 2400

The Problem:

Dell PowerEdge 2400 with 2 Gigabytes of main RAM (4x512MB PC133 ECC, Registered) blue screens out sporadically with the following kernel error:

*** Hardware Malfunction ***
Call your hardware vendor for support
*** The system has halted ***NMI: Parity Check / Memory Parity Error

More Information:

The PowerEdge 2400 is functionally quite a nice little server assembly, it was the last of the PIII Slot 1 generation systems released by Dell in a tower chassis form factor.

When I originally got my hands on the system, it was billed as being non-functional, was equipped with the following specification:

  • 1x PIII 600EB
  • 2GB Registered ECC PC133 (4x512MB) DIMM
  • 3x8GB SCSI 160 Hard Drives
  • 3Com high capacity server 10/100 NIC

The original stated issue with the server was a propensity towards unreliability and interrupt BSOD’s so had been written off by an IT service company also involved with this particular client that was more interested in tendering a new (and unnecessary) £24,000 hardware requisition than trying to fix the problem.

The source of their problem was so spectacularly simple that I had solved it in less than 20 minutes after dusting it down. In attempting to be clever, they had installed the reference drivers for the integrated Intel motherboard NIC released by the Intel Corporation. The higher driver resource files had got stuck on the system and couldn’t be removed, preventing driver regression. Anyone who has ever had any experience with integrated NIC’s on Dell motherboard will know instantly not to use reference drivers on Dell modified hardware. Clearly someone here didn’t.

 

NMI Memory Parity Error

This is the point at which the NMI parity errors started showing through on the system. Initially they would only crop up during low load periods, approximately every 3 days. If the system was being kept busy it never seemed to crop up.
The problem was that the more I cleaned up the messy Windows 2000 install, the more frequent the problems started to become, until I got around to updating all of the systems primary firmware.

  • BIOS A09
  • ESM / Backplane A51
  • Raid Controllers 2.8.1.6098

Interestingly this “strongly recommended” set of updates brought the frequency of the NMI Parity errors to a head, with them now occurring approximately 20-30 second after the boot splash screen has finished animating.

Let us stop here and have a quick look at what a NMI error is.
Put as simply as possible: NMI, or Non-Maskable Interrupt is an Interrupt (commonly referred to as IRQ’s, best described as an ‘attention signal’) which can be generated by the lower level hardware devices in a system. Standard Interrupt ‘signals’ are used in a computer system to to request that the processor pay attention to the initiating device as a priority operation over general data processing tasks. What distinguishes an NMI event is that generally speaking, when a NMI is triggered by a hardware device, the processor (and fundamentally the operating system kernel) is not at liberty to ignore it.

It is because the Windows Kernel has been coded to comply with the inability to ignore the NMI that the Parity error on the PowerEdge doesn’t behave like your average BSOD – there is no memory dump, no automatic reboot, no ACAPI responsiveness. It is the hardware demanding that Windows terminate, rather than Windows deciding that it needs to stop; hence the synonymous NT BSOD or ***** STOP ***** error.

 

The Generic, catch all approach to fixing NMI Memory Parity errors

I’ve o doubt that if you’re suffering from this problem, and have got here through some sort of search engine you’ve waded through numerous posts telling you exactly the same thing already. So without wanting to spend too much time on the generic’s here’s a quick recap.

  1. “It’s a Memory Parity Error, Stupid” – I’ve not seen a T-Shirt with that on yet, but I suspect I will someday. The blatantly obvious cause of the error is that you have actually experienced a Memory Parity Error. Hard to believe I know!In the server system, you are using Registered main RAM (also known as buffered memory). This is a little sub-process performed on the clock which checks to see if there are any parity (mathematically formulated true/false checks on data) errors in the data being fed into RAM. The parity check is designed to prevent errors being passed back into the processor and wasting additional processor cycles or worse causing the system to crash – they should get caught directly in RAM and be fixed through processes present at the hardware level. If you get the NMI Parity Error because you have had a genuine failure in RAM, the system bottles out because it can’t work out how to fix it, so instead of sending gibberish back to the system registers, it panics and suspends processing.
    What causes it, simple, bad RAM. This can be the result of a manufacturing error, badly inserted DIMMs, sub-standard contact between the DIMM pins and the DIMM slot connectors (due to bent pins, damaged motherboard slots, grit, grime and dust), using DIMMs of different quality standards together (always try and match DIMMs to the same manufacturer, model and batch) or it is even possible that you have the DIMMs inserted in the wrong order – always place the largest DIMM’s towards the processor source/sink and the smallest at the end of the array – on the 2400, this is DIMM bank A (farthest from the CPU) followed by B, C and finally D.

    Memory Test the DIMM’s using as many testing metrics as you can find, both environmentally (outside of the operating system and natively (inside the operating system). Enable the full RAM test (POST) in the BIOS if you have this option available to you. Microsoft also have some free tools that you can obtain from Microsoft OCA to do this, and there are plenty of others – including the Win32 and bootable Dell Diagnostics & F10 management partitions on Dell configured disks. Whatever you do, don’t think that you can run one iteration and “it means its OK”. Be prepared to walk away for a day or two and come back to a green panel and THEN move onto the next test.

  2. Start pulling out your DIMMs and sequence test them, see if the crashing only happens with a certain combination, or in a certain slot. If it does, you can bet with a fair level of certainty that you have a real Parity error from either a bad DIMM or a bad DIMM slot.
  3. Update the system. I spend a lot of time reminding people of this. If you don’t have the latest Kernel enhancements provided through Service Packs and patches, how can you expect driver/firmware written after their release to be fully interoperable with the older systems.
    If you update your firmware, then update the drivers to match the firmware revision.
    If at this point you are attempting to run NT 3.51 or NT 4.0 with 2GB of RAM in a modern hardware environment – go get a nice shiny, shrink wrapped version of 2003 Server. OK, so I threw that one in for no particular reason… someone has to keep Mr. Gates in the manner he’s accustom to! Don’t they?
  4. Check that you aren’t overloading your PSU (power supply). If you have a poor flow down your power rails you can upset the components inside a computer.
  5. Update stroppy, meddling kernel-mode system drivers to the latest versions that you can find. I’m going to include Anti-virus applications in this as well, I have heard of people experiencing NMI issue when using Symantec anti virus server products (why? I have to ask) – update the fundamentals or try and test the system with the latest version of the product if you aren’t already rolled out, not forgetting to strip out its lower level driver routines!
  6. Yank the RAID array, throw in a blank disk and reinstall Windows. I know it’s a rather unruly suggestion, however you’ve already spent 72 hours performing constant RAM diagnostics, the idea of spending 39 minutes reinstalling Windows 2003 in a non-destructive manner isn’t that big a deal in the greater scheme of things.
    What is this designed to tell you? If the system still dies under this test with a clean install of Windows, then you are likely looking at a hardware problem rather than a genuine Windows malconfiguration. If it works, try installing your base application rollout, drivers and so on and continuity test the system.
  7. Do NOT in-place upgrade/repair the operating system. It is utterly pointless. If it is a Windows error bite the bullet and spend the time performing a clean install. As you’ll see below, upgrading the in place operating system does no good what so ever.

 

The experiment(s)

Clearly all of the above have been performed on my victim… er test subject and the PowerEdge, running Windows 2000 Server is still experiencing the problems. So how to fix it? I have outlined all the additional steps that I took, and outlined briefly the outcome of each. I’ve listed them primarily to give you some ideas over what you can do if you are experiencing the same problem. Do remember that just because something impacted or didn’t impact my predicament, doesn’t for a moment mean the same will be true for you.

The first and most immediate solution became apparent quite quickly in the generic testing.

  1. Don’t run it with 2GB RAM. My system has 4x512MB ECC DIMMs in it. This fills all four banks and maxes out the RAM capacity of the system. If I take out ANY of the four DIMMs from ANY of the slots, the problem vanishes. Completely. All the RAM passed all the testing I threw at it, but for some reason it seems that the system just didn’t want to address and remain stable with 2048MB in it. At least the system could be quickly made production worth. However… I don’t like leaving things unfinished. It’s not a very professional way to approach the trials that life throws at us.
  2. Put 4x128MB ECC PC133 DIMMs in the system. This was one of the last tests I did, and the system seemed to operate flawlessly with 512MB in it. Proving that the issue is not a bus related one.
  3. Try an non-Microsoft operating system. I have to confess that at this point I was plum out of SCSI drives to use, so I elected to perform testing with Live CD’s instead – it’s not perfect – but several renditions of Linux showed no observable problems, and perhaps more interestingly, no Live CD versions of Windows did either.
    I tested using Windows PE for 2003 Server and Bart PE, and although both use the core of Windows XP, they exhibited no obvious problems and certainly no NMI BSOD’s even with most of the system drivers loaded. Except the PERC 2/Si controller.
  4. Dump the RAID configuration and start from Scratch. Nothing happened except having to pull one of the 512’s out to get it to go through setup without BSOD stalling.
  5. Tape restore the system and in-place upgrade from Windows 2000 Server to Windows 2003 Standard Server. New Kernel, more robust operating system you think? Alas no. At this point 2003 Server became the test operating system.
  6. Replace the PIII 600EB processor with a PIII 733EB processor. I got a nice speed boost, but, alas, not fix to the problem.
  7. Replace the uni-processor PIII 733EB with two PIII 1000 (1GHz) SL4BS’s (making the system dual-processor). I was quite hopeful on this one, but sadly no. Best £19 I ever spent though!
  8. Pull everything from the PCI bus, disable all the integrated BIOS hardware (NIC, USB etc). No change.
  9. Reset the EEPROM (Pull the BIOS battery) – no change
  10. Alternate and re-sequence the use of the RAID controller positions on the backplane – no change.
  11. Replace the RAID controller DIMM – no change

 

Ah!

All seems rather hopeless doesn’t it?

I pulled the server from the farm (again) and brought it somewhere a little more comfortable to work with (again). Cleaned the DIMM slots, cleaned the pins on the DIMMs (again). I have always felt that the NMI error in this case has been something of a misnomer.

I have been gravitating towards the backplane/RAID controller for some time in my other experiments, so primarily out of having no better ideas, I decided to completely disconnect the backplane assembly. I unlinked the ribbon cables and cleaned them, removed all the PCB’s, straightened out the wiring, cleaned off the heavily dust laden drive connectors and cleaned the connector pins on both the daughter board and the motherboard. I then fully cleaned out the inside of the case around the drive bays, reseated the backplane and put the cabling back.

I fired the 2400 up and was immediately presented with a POST warning stating a warning that the ESM firmware revision was out of date.

!!!!****Warning: Firmware is out of date, please update****!!!!

Particularly strange considering everything was long since flashed to the latest version before the system was last powered out. I can only surmise that the process is non-volatile and with the disconnection of the battery sources, the firmware reverted to its original settings.

To my surprise, the system booted straight into Windows 2003 Server and hasn’t NMI’d out since!
Deciding to tempt fate, I downloaded and re-flashed the ESM controller to the latest version, and I am please to report that even with the re-flash it hasn’t (yet) fallen over.

I have made no driver changes to the installation, everything is running on Windows 2003 default drivers with the exception of the Tape stream driver from Windows update. I have installed the McAfee Enterprise 8.0i (Patch 14, latest DAT’s/Engine) on the system and setup IIS in its production configuration. The PowerEdge has mainly been idling since the reinstall (and it’s been lying on its side, as well as counting the system idle process!), but don’t worry. If this holds out for a little longer, I will put those two new SL4BS’s to good use.

All being well, you’re receiving this website from it

 

Update 15th April 2007: Well, all has been well and you are seeing this website from the PowerEdge 2400. The server has offered impeccable performance since I wrote this article (shame I can’t say the same for Microsoft’s patching downtime requirements so that I could prove the uptime). The server also survived the cold winter without incident, unlike its 2600 counterpart which fell over numerous times. PowerEdge 2400, a workhorse and a graceful lady. Good job Dell.

 

Update 17th June 2007: All still seems to be good. I updated to McAfee 8.0.0i Patch 15, and a couple of days later had a complete system drop out (one of those black screen, no response to anything, just spinning the electricity meter moments). It wasn’t NMI related though, I suspect a PSU fluke in this case. Aside from this, the system continues to run flawlessly.

 

Update 31st December 2007: Everything seems to be running just fine with the server although I have concluded that it doesn’t want to run with 2.0 GB RAM in it as it seems to force the System Management Controller to reboot it around every 2 months. I have reduced it to 1.5 GB where it runs comfortably without any unexpected reboots by the SMC. I have also updated the tape firmware to A18.

Mesh 2200T (Clevo 2200T) only operates in PIO4 disk access mode

System Requirements:

  • Windows 2000
  • Windows XP
  • SIS 630 / 720 Chipset

The Problem:

Yep, it is another ones of those Clevo / Kapok issues! This one was a client’s problem from September 2004 that they were rather desperate to have resolved, and yet no one could come up with an answer.

Essentially the problem boils down to sub-standard performance from the system, which is painfully noticeable at boot time when the system has a lot of disk activity. The reason why this happens is because Windows gets confused with the BIOS/Chipset firmware disk access mode instructions, cannot safely assume it can use Direct Memory Access for data transfer and so gets locked into the processor intensive PIO (mode 4) to do anything.

As usual, this is the result of a badly written set of BIOS firmware.

The Fix:

The 2200T uses an anarchic Phoenix core (1.00.03 10/22/97) with the usual set of extensions to make the modern hardware interconnects work correctly. Before continuing you need to ensure that the Firmware build for the BIOS (this isn’t the core 1997 date) is at the highest possible level; this I believe to be 1.17 built on 28/10/2002.

I am also aware that there is a 1.00.04 core version available in some quarters. I am not able to state the impact of any of these changes on this core. I provide no support or warranty for using the BIOS files below. User them at Your Own Risk.

Version Date Changelog

07/09/2001

27/09/2001

20/11/2001

1. Recognize PIII 1.13GHz CPU (Tualatin core).
2. Support system memory up to 1GB.

30/01/2002

21/03/2002

1. Solve the error message under Windows XP event viewer.

17/05/2002

1. Support “Fn+F6” function key for some NON DDC external display device.

28/10/2002

1. Fix the CD-ROM boot failed sometimes problem for TEAC DW-28E and Samsung SN-608.

Windows Registry Fix:

If you reinstall your system at this point, you may have an XP compatible BIOS, however it will still come up in PIO mode 4. It is SIS who actually came up with a solution for this problem, which is known under Windows 2000 on the iS530/620/630/540 chipset’s.

The fix dupes Windows 2000/XP into using UDMA on the hard disk channels. It isn’t what I would call an ideal solution, however it does at least get the computer moving again.

You can download the SIS DMA fix here: dmapatch.zip (67KB)
All the program is doing is making registry changes on the system. Once you have run the .exe you need to restart the computer before it will come up using DMA.

 

Flash Utility OEM String Syntax:

The information below has been placed here for reference purposes and is not directly related to the Fix.

FP /N=OEMName[,HotlineNo] BIOSFileName
or
FP /O=OEMName[,HotlineNo] BIOSFileName

Note :

  1. The maximum length of OEMName is 16.
  2. The OEMName is case sensitive.
  3. The system manufacturer name read from DMI BIOS interface is OEMName padded with blanks(ASCII 20h) and the length of OEMName+blanks is 16.
  4. If you need space character for OEMName and HotlineNo, Replace it with a special character “^”.
  5. After flash the BIOS, turn power off and turn it on, then you can see the OEMName by using the DEBUG command as following :
    DEBUG
    -D F000:1C00
  6. Some valid examples:
    a.The hotline number for “Test Computer” company is
    123 4567 890. Then the usage for FP is as following:FP /N=Test^Computer,123^4567^890 BIOS.BIN

    b.The hotline number for “MyComputer” company is
    123-4567-890. Then the usage for FP is as following :

    FP /N=MyComputer,123-4567-890 BIOS.BIN

    c.To disable OEMName and HotlineNo : (FP v1.41 or later)

    FP /N=KAPOK,KAPOK BIOS.BIN

  7. /O option will disable the OEMName string display during BIOS POST.

Using the NetGear PS101 Mini Print Server without using NetGear Software utilities

System Requirements:

  • NetGear PS101
  • Windows 2000, XP, 2003

The Problem:

NetGear’s hardware can be small and functional, however as with (in my experience) most hardware companies, they cannot write software to save their life – and in a lot of cases when the OS has the capabilities built in, why on earth do these companies feel the need to duplicate functionality, making their hardware difficult to port up to the next version of Windows, once their application ceases working? Let us face it, it just extends their support burden and forces consumers to upgrade to a new product… oh…

The Fix:

When all is said and done, irrespective of what NetGear say, there are Print server standards, and going off to write your own protocol would just be silly. All their PS101 interface application does is provide an incredibly un intuitive, rather messy system to install printer drivers against the Print Server.

You can configure the device just as easily in a manual mode, and chances are you’ll be able to follow this principles of this guide under Linux, Unix, Windows Vista, Windows NT 7, NT 8, NT 9… well, you get the idea.

What you need to know:

Unlike the NetGear application, Windows wont go and probe your network for the PS101, you have to get hold of it yourself and configure it yourself. To do that you need a couple of pieces of information.

  • The IP address of your PS101 – Ask your router, network admin etc)
  • The Device Name of your PS101 – This is on a sticker on the base plate of the PS101, beneath the Serial Number and above the MAC address, or,once you know the IP address by accessing the web configuration in your web browser http://ip.add.re.ss/.
    Note: If you have manually changed the device name, you will NEED to get it from the web configuration program

Before you head off to begin installing your Print Server, I recommend that you ensure your device is running the latest firmware version, these can be obtained from the NetGear support site.

Once you have those two pieces of information and the correct firmware, you are ready to install the PS101. The following steps are written around Windows XP, the process and procedures are similar, if not the same under Windows 2000 and 2003. Other OS’s and Windows versions may vary. Please be aware that you cannot do this under Windows 9x without third party utilities.

  1. Open Printers and Faxes
  2. Double click Add Printer
  3. Select Local Printer and deselect the Automatically detect and install my Plug and Play printer. Click Next
  4. Highlight Create new Port and from the drop box select Standard TCP/IP Port
  5. Click Next to begin the Port wizard
  6. In the Printer Name or IP Address field type the full IP address of your Printer
    e.g. 192.168.0.200
  7. In the Port Name box type the device name of your PS101 suffixed by _P1
    For example, if your device name is PS380460, your Port Name would be PS380460_P1
  8. Click Next, highlight the Custom radio button and click Settings…
  9. The protocol should be set to RAW and the port to 9100. SNMP should remain disabled. Click OK and finish the wizard
  10. After a slight processing pause, Windows will display the Printer driver selection screen. From this point on, simply install your printer as normal.

Kapok 6200 A (ACi Emerald)

So, what happened…
Another joyous day, it was one of the ones where everything went wrong. I was using my trusty Digital HiNote Ultra CT450 (486 DX2, Windows 95) to take notes. I was clearing up, turned away for a second and crash. The open case fell on the floor and its contents including the notebook spilled out on the floor. Making the plastic casing around the impact zone look like crystal. Unfortunately the impact zone was the the compartment where the brand new 1 GB hard drive lay, only a matter of weeks old.

On closer inspection, it seemed that the impact also discharged the main cells into the system board, frying the circuitry, ram, you name it. Unfortunately this was (*just*) after Digital was absorbed by Compaq, so despite having a 5 year all paid up warranty, Compaq weren’t interested. My insurance company however were more than happy to oblige me, and late in 1997 a nice shiny cheque arrived.

My problem was that I needed a notebook, that I considered usable, with upgrade potential and that had good reviews. The ACi Emerald (Technically known as the Kapok 6200A), after a extensive search arrived at the top of the list. The sales man was more that able to flaunt to me leaflets of all the awards that it had got, from PC Magazines that I knew of and read. At the time I couldn’t go back for Digital HiNote 2000, because of their Compaq predicament, plus the reviews weren’t hot. I loathe compaq, and hp notebooks / desktops religiously and there was nothing else that inspired me.

The Emerald offered me a feature over the majority of systems that I had seen. That it used standard chips, rather than special notebook ones (RAM + Processor). These being the early days of the Intel Pentium MMX chips, and special notebook variants were becoming common place, the option of having the ability to use standard chips in the system was ideal as it meant that the processor could be upgraded to whatever would fit in the motherboard slot, rather than what the manufacturer said I could. The sales man assured me hardware and software upgrade potential for the foreseeable future.

So that was it. I opted for the 166 mHz option with 32 MB of RAM (it seemed a lot… but in NT 4 hindsight) and Lithium Ion cells. That was that… supposedly.

I insisted to them that they not provide any software with it other than the drivers CD. I wasn’t, and still aren’t very happy with OEM operating system installs. So I installed Windows 95 myself, without a glitch and plodded away happily for about 6 months…

June 1998 – Windows 98 Memphis

Q. What makes a Notebook a Notebook?
A. The ability to use it snugly on a battery

Oh Dear… Where have all the Power Management features gone…

Windows 98 FE Power Management (Or Lack of it)

The upgrade to Windows 98 First Edition wasn’t especially smooth. The install was plagued with errors but I eventually arrived in Windows 98, without the ability to tell if I was on mains, charging or on battery. The meter simply sat on the Mains Icon irrespective of the physical state.

Mains Power

Mains icon

Charging

Charging icon

Battery Power

Battery icon

Options were missing from the ‘Power Options’ applet in the Windows Control Panel. The system wouldn’t and couldn’t successfully suspend and resume either using the S2D/S4 or S2R/S3 suspend.

The most annoying this to me was that this brand new up-to-date system was being out shone in the Power Management side by a P75 Dell Latitude designed for Windows 3.11 WFW and a Texas Instruments 486 DX 100 that was designed for Windows 95. I even have a Dell Latitude 486 SX which operated power management successfully.

The temporary work around:

The problem here is that Windows 98 does not detect 2 critical hardware elements and 1 resultant system service that are needed to enable Advanced Power Management (APM) support. The hardware & software components are:

  • Composite Power Source
  • APM Battery Slot
  • Advanced Power Management support

Force Windows to recognise the APM Slot and the Composite Power Source, the APM support will follow.

To do this you will need to load the system up on mains. insert the battery and remove and re-insert the mains jack. Eject and re-insert the battery and then run the Add New Hardware detection Wizard. In the found Plug & Play devices list the Composite Power Source and AP< Battery Slot will be listed.
Now if you enter the Power Options applet in Control Panel, you will see that all the standard Laptop Computer options have been made available.

Once you re-boot the computer you loose the options and the system goes back to thinking that it’s a Desktop PC.

A valiant effort…

The obvious question was around the BIOS not being coded to conform fully to the APM 1.2 specification (6200A is chipped to the 1.2 specification). I believed this to be a simple oversight on the part of the manufacturer and happily informed them of the problem. Eventually an update did appear, which added a Windows 98 compatibility option to a BIOS sub menu. This made absolutely no difference.
ACi’s policy now was to keep me fobbed off until my 1 year warranty ran out, and I have to give them credit for being good at that!.
My Lithium Ion battery, verily be thy nature under such circumstances died as I was never sure what the levels were and kept it on the mains through fear of it just running out of steam with no warning (which it often did).

When the CD-ROM went I took it to Kapok UK, the offices of the Taiwanese company (now part of Clevo Int.) who originally made the 6200A. They hadn’t seen the problem before and couldn’t explain it. They did give me a new NiCad battery though, which although not chipped like the dead Lithium cell, at least gives me UPS in a power failure. The down side to this is that now Windows 95’s Power Management won’t work either!

Unfortunately despite many hours of frustrated fiddling, I never discovered anything more than a temporary work around for the problem. Windows 2000, 98 SE and Windows Millennium failed to improve on the situation. My 6200A sat on the front of my network acting as a firewall for 9 months and was subsequently retired to being a sync client as a Windows CE sync platform before I migrated to MS Outllook on my primary system. Naturally I migrated it to the power house that is Windows NT 4.0 – a platform where Power Management is not a feature.
The new NiCad lasted 6 months before it keeled over.

Having moved to hardware firewalls and Cat5e network infrastructure the PC was retired until I thought of using it as a linux test bed in early 2004. Having powered it up to wipe the disk off, the TFT promptly died when the backlight controler blew. Although there is a still a picture on the screen, you can only see it using a torch as a front light. In the absence of any free screens, and an abundance of faster desktop systems loitering around the house, the Emerald glistens no more and sits on a shelf collecting dust. A sad end to a sad story.

Windows NT 4.0 – Trouble at the top

Windows NT, the answer to everyone’s computing dreams… When it works.

I have to admit that when it comes to computers I don’t openly follow the “If it aint broke don’t fix it” maxim. I’m more of a “Oh My God a new patch.. gimme, gimme, gimme” sort of person. Microsoft write these things for a reason, it’s not just to keep members of the NT team employed. If users actually installed the patches and were better informed about them then some of the recent spates of trojan, virus and DDOS attacks that have plagued the Internet in recent times would have been avoided.

Display Problem – IO Conflict with the HAL

My problem actually falls with a constituent of the Windows NT 4.0 Post SP6a SRP (Security Roll up Package).
I haven’t discovered which componant causes the problem, however the patch installs a modification that shifts the IO and IRQ assignments around for some of the core system hardware.

The change to the normal IO addressing that this patch brings about is in direct conflict with that of the Trident XXXX PCI video adapter and ISA controller resources. The result in this battle of hardware is that the ISA controller wins over the display controller… you can wave good-bye to those fancy True Colour Icons (At least NT preserves ones 800 x 600 dignity).

Without going into too much more detail, I have managed to sort out a fix for this little problem, as well as providing a far better display driver for Windows NT 4.0 that is similar in functionality to the Windows 95 one.

Trident NT 4.0 Safe Display Driver – trident-fix.zip (186 KB)

Windows NT 4.0 Trouble Free Installation Guide

I have also prepared an installation list, in order so that you can properly get the driver installed and are fully protected by both SP6a and the SRP.
Please be aware that as of the time of this document amendment this patch list is out of date, updated versions of all my patching lists have been migrated over to HPC:Factor’s support section; here.

  1. Install Windows NT 4.0 Build 1381
  2. Set the Event Log to ‘over write errors as needed’ in all three primary log modes
  3. Set-up & install your local Networking hardware and settings, Install RAS (Do not install PC Card Modems here)
  4. Set-up your Page File and Environment Variables
  5. Do a file clear out, get rid of stray files and set-up the Administrator account settings to your liking
  6. Perform all of the Euro updates
  7. Install the Paint Update. If you are using NTFS you will need the In use Utility to do this
  8. Install the Joystick port. The driver is in the \DRVLIB\MULTIMED\JOYSTICK\X86 of the NT 4 CD
  9. Install SP6a and the Library update
  10. Install your PC Card Modems and configure RAS using the Right hand PCMCIA slots ONLY*
  11. Install Internet Explorer and get the Active Desktop update, you want to end up with IE 6.0 SP1 at the end of this stage
  12. On with Tweak UI, and set that up to your liking
  13. Update the Windows Installer to version 2.0
  14. If you wish to install IIS, install the Option Pack now
  15. If you wish to use a non Microsoft Web Browser install it now
  16. If you are planning to use IIS, a Defrag app or a program using an MMC snap-in, install MMC 1.2 now
  17. Install the bulk of your software, Office app’s, Virus Scanner, utilities etc
  18. The ESS Audio sound driver – 62AAudioNT4.zip (410 KB)
  19. Install the UDF driver, to upgrade the CD-ROM drive’s functionality- udfread_v501-191_inst.exe (425 KB)
  20. Install any other hardware & drivers you need, printers etc
  21. Re-Install SP6a
  22. Install the patched Trident Display driver
  23. Install the MDAC 2.8 SP1 Update
  24. Set your resolution, colour depth and display settings
  25. Run Windows Update / Office Update and download everything you need (All critical updates bar the SRP)**
  26. Update the functionality of Windows Media Player 6.4 by updating to the Windows Media 8 Codec base
  27. Install the Post SP6a SRP**
  28. Re-run Windows Update
  29. Clean out your log files, empty all the temp files and make everything neat and tidy
  30. If your happy with IE, via Add / Remove Programs, delete the uninstall information and delete the ‘Windows Update Set-up Files’ directory from the WINNT directory (if it exists)
  31. Set-up the systems user accounts (if any)
  32. Update your ERD (Emergency Recovery Disk)

* Unfortunately you can not use the left hand PCMCIA slot with a RAS device under Windows NT 4.0
** Install using the -n option to preserve disk space and to keep the Windows directory and Add / Remove Programs list free. You will loose the ability to uninstall the SRP or Hot Fix. All Hot Fixes can use the -n option and are usually derived from their Q article number