| |
| 
The 686b bugfix
Introduction
One of the most stubborn problems that may be encountered during the use of MadTracker 2
is the so-called 686b bug, which causes the system to hang. This bugfix will superficially
explain the causes of and solution to this problem, but keep in mind that every system is
unique, which makes it impossible to provide the user with a standard procedure which is
always valid. Though the information provided here can be used as a guideline, it must not
be seen as a step-by-step foolproof manual.
Description of the problem
Currently all that can be derived from the information provided by users is that the 686b
bug combined with MadTracker causes the system to hang after a certain amount of time. Due
to a widely ranging set of different circumstances these lock-ups can occur either in less
than a minute or completely at random, but sometimes the cause of this behaviour will be
the aforementioned 686b bug. Since these symptoms are caused by a hardware malfunction, at
this point a reboot will be necessary to get the system back on its feet.
Remarkably, MadTracker is one of only a few applications which respond to the 686b bug in
this manner. According to it’s author, Yannick Delwiche, the reason for this is "due to
the fact that MadTracker uses a wide range of optimizations. Some techniques like
self-modifiable code is not commonly used; and that's perhaps the trigger of the freeze".
Up till now this bug does not appear to be OS-related; all Windows releases (95, 98, 98SE,
ME, NT, 2K and XP) are known to have this problem.
Description of the 686b bug
Generally the 686b bug occurs on systems containing motherboards with a VIA chipset. As VIA
states below, the problem is the result of incorrect management of the chips that control the
data-transportation to and from the pci-slots. Especially when combined with an AMD processor
this bug can cause different symptoms, varying from slow harddisk speeds to freezing systems.
Official statement by VIA:
The data corruption error, which some web sites and people have reported with the 686b
Southbridge, is caused by incorrect bios registry setting to the Northbridge. These bios
settings were made by motherboard manufacturers, in an attempt to fix a conflict with the
Sound Blaster Live Value cards. Information has been provided to all motherboard
manufacturers on how to correctly resolve both the data corruption error and the
Sound Blaster Live conflict. The patch released by VIA in the 4in1 4.31 drivers
replicates the correct bios settings. We provided this patch to make sure as many people got
a fix to their Sound Blaster Live problems as soon as possible. Most motherboard manufacturers
have now corrected their bios and the patch is not necessarily needed although it will not harm
any VIA based system if installed.
Solution
Disclaimer:
Misuse or inexpert use of the information provided in this text might damage your system.
If you suspect you might be incapable of performing the actions described below by yourself,
please let someone else perform then for you (such as for instance your vendor). Neither VIA,
VIA hardware, nor any of the people who created this bugfix can be held responsible for possible
damage to your computer caused by the procedures described below.
Firstly, find out exactly what your computer is using, both in hard- and software. There are tools
for such overviews, the simplest of which is Sandra by Sisoftware. Sandra is an information and
diagnostics utility for Windows, which provides you with a complete overview of your computer.
Absolutely essential information:
- Motherboard model number
This tells you which motherboard you have and which BIOS version it is running
- System chipset model number
This tells you what who the manufacturer of your BIOS is
- LPC/ISA Bus model number
This tells you whether or not the 686b chipset is present on your motherboard
- Version number of your motherboard drivers
Motherboards with the 686b chipset use VIA 4in1 drivers; for information regarding
the version of those on your system, check the software section of your OS
A free version of Sandra can be found at www.sisoftware.co.uk.
Once you have acquired this information you can start on the bugfixes provided
below. Though they are presented in the most common order of use, this is by
no means the only right order. If your knowledge of computers is limited at
best, you might want to follow these instructions step by step, but as the individual
solutions might also solve the problem in and of themselves, check to see if
the problem is still present after every step. If you neglect to do this, the
next step might cause the problem to reappear.
The first four steps are the official ones, as provided by manufacturers:
- Download and install the latest drivers for your motherboard. In most cases
this will mean you need to download and install the latest Hyperion VIA 4in1
drivers, which can be found at http://www.viaarena.com/?PageID=300.
According to an official statement by VIA, this fix ought to solve the problem,
though in a number of cases this has proven to be untrue. Hyperion VIA 4in1
drivers are being updated continuously, though version 4.43 is said to be
the best for Win2k and XP, and version 4.32 for 95, 98, 98SE and ME.
- Download and install the latest official release of your BIOS. Most motherboard
manufacturers have such a BIOS download section on their sites, including
detailed instructions for flashing your BIOS. Keep in mind that a BIOS
flash can generate irreversible damage if performed incorrectly. Read the
instructions very carefully and follow them to the letter.
- Download and install the latest drivers for ALL of your hardware. Old drivers
may interfere with the performance of your system, so make sure you have the
latest official drivers for every component. Where possible use Microsoft
certified drivers; several of the lesser-known manufacturers could have drivers
which conflict with the overall system, but more on this later.
- Perform a Windows Update through the Internet Explorer. The Microsoft site
will perform a test to see if there are any parts of your Windows version
that can be updated in order to increase the stability, performance and functionality
of your system. Honestly.
Though the following step is by no means official, it has proven to be rather
functional. Besides possibly solving the 686b-bug, it can also be helpful in
other issues, such as those relating to disk speed.
- Download the latest version of the Latency Patch by George Breeze at www.georgebreese.com.
This patch contains drivers that can be incorporated into your version of
Windows. They work similarly to the official VIA fix, but they also change
other BIOS registers in an attempt to fix the data-transport issues. Besides
this, it also fixes other issues such as failing USB ports, and static on
sound cards. Though these issues are not symptoms of the 686b bug, they are
present in many systems.
If the first four steps haven’t solved the problem and you decide to install
this patch, keep in mind that it should be used with caution. Although a tremendous
amount of time has been put into writing it, there is no guarantee that this
patch will not cause damage to your system. Once again we suggest you read all
of the readme files with extreme care before installing.
The next solution deals with IRQ assignment and is meant for users of Win95,
98, 98SE or ME. For other Windows releases, this isn’t really helpful.
- The best configuration is one where a minimal amount of IRQ’s are shared.
For ISA cards, the IRQ can be manually changed in the device manager, but
they are automatically assigned to PCI cards due to their being Plug and Play
devices. They simplest way to change the IRQ for a PCI card is to deinstall
the card’s drivers, remove the card physically from your system, reboot, shut
down, plug the card back into another PCI slot and reinstall the driver. There
are several theories about which PCI slot is the most suitable, but generally
it can be stated that most of the time it’s not a good idea to plug the soundcard
into the slot directly below your AGP slot, since PCI 1 and AGP quite often
share an IRQ. Similarly, the last PCI slot is said to be assigned to IRQ 5
or 7.
The manual of your motherboard usually states wich PCI-slots, through hardware,
share an IRQ with other hardware. Try to avoid placing the soundcard in one
of the slots that share IRQ through hardware. An example of this is the manual
of the ABIT k7ta-raid, which states: "PCI slot 5 shares IRQ signals with the
HPT370 RAID controller". This means that you should avoid placing the soundcard
in PCI-slot 5.
The following is not exactly a complete solution but can be performed if all
of the above has failed to yield the desired result. As noted above, Microsoft
certified drivers seem to perform best when it comes to system stability, and
the hardware section in your control panel can inform you whether a driver is
certified or not. Several cases of the MadTracker freezing problem were solved
for a major part by acquiring said certified drivers. A good way to install
these is uninstalling the piece of hardware, rebooting, and cancelling all installation
attempts made by Windows. If you then run a Windows Update for your OS the hardware
will automatically be installed with the certified drivers, provided they are
available.
The last solution is also the most radical one, as it involves a full reinstall
of your OS, and should be attempted only if the aforementioned solutions proved
to be unsuccessful. Especially in the cases of Win95, Win98, and Win98SE and
WinME, the problem may be caused by bad registers, half-functional software
and conflicting DLL’s of badly deinstalled applications, and in those cases
a reinstall will prove to be very functional indeed.
- Needless to say, you must backup all files that you don’t want to lose before
formatting the harddisk. The best choice would be to install Windows after
the format with only your videocard plugged in. After Windows setup, first
install the right VIA4-1 drivers, then the latest (certified) drivers for
your soundcard and then MadTracker.
Verify if the problem is solved in this configuration. If not, proceed to
install the aforementioned Latency Patch and all of the others steps described
above. Although these steps might not have worked before the possibility exists
that they do solve the problem in your new configuration. If it is solved,
you can continue installing the rest of your hardware one by one. After each
installation, check MadTracker to check if the problem has resurfaced.
Additional Help
The first place to go when uncertain about anything mentioned (or left out)
here would be the MadTracker forum. Feel free to post your
question(s) there, as numerous people will be willing to do the best they can
to help you.
At www.viaarena.com more
specifically technical information can be found, such as new information about
the VIA4-1 drivers or the latency patch. The site also hosts a forum where you
could post in case of technical difficulties with for example IRQ assignment,
the latency patch or VIA4-1 drivers.
A complete description of the 686b-bug including several solutions not mentioned
here can be found at Sudhian.com.
If all else fails, you could of course mail me at inge@madtracker.org.
Though I can’t guarantee I’ll solve all of your problems, at least I’m willing
to take a look...
You can also mail me if you have any comments or questions about this text.
2002-12-15, with great help from Yannick, Sunbuster and Sabine.
Inge
Copyright © 1998-2005 Yannick Delwiche All rights reserved | |
|  | |