VOGONS


First post, by cde

User metadata
Rank Member
Rank
Member

Previously I had made an overkill XP build: Gigabyte GA-Z77M-D3H 1.1, Intel Core i7 3770K, MSI GeForce 960 as well as a "jack of all trades" Athlon XP build: Abit KT7A (KT133A/VIA686B), Athlon XP Mobile 2500+

After reading PCI sound cards and Chipsets from various manufacturers... I thought I'd try and make a build that would retain good compatibility with DOS sound while still offering over the top Windows 98 performance, and so chose the K8T890/K8M890. I paired it with a 2.6 GHz Athlon 64 X2 5050e (ADH5050IAA5DO) which is very low power (45W TDP); it is one of the latest K8 that were produced (65 nm, G2 stepping). A good alternative is the energy-efficient ADO5200IAA6CZ which has the F3 stepping. F3 has lower memory latency and a maximum of 2 x 1024 KB L2 cache; this particular CPU is up to 10% faster than then 5050e, but it has a slightly higher 65 W TDP.
https://en.wikipedia.org/wiki/List_of_AMD_Ath … microprocessors
https://en.wikipedia.org/wiki/List_of_AMD_Ath … microprocessors

The K8M890-based MSI MS-7253 (K9VGM-V, micro ATX version) has a VT8237A southbridge. I added an ES1938 card (Terratec ESS Solo-1) plus a Lite-On IDE DVD; all work extremely well in DOS with full sound support (CD audio, FM, SFX, and SC-55-like music with the Dreamblaster X2GS) . I just had a small issue with the ES1938 driver posted on Phil's computer lab website, and provided a fix attached to this post: Re: ESS 1938 under DOS

(The equivalent 775 board is the MSI MS-7293, with a VIA PT890 + VT8237A southbridge. It can handle 1066 MT/s Core 2 at best).

Note that the K8T890/K8M890 chipsets are limited to 2 GB of memory, which is already more than enough - I tried 4 GB but this caused DMA errors and video corruption, probably due to address space overlap.

It is worth nothing that the CPU speed can be lowered in a very fine-grained fashion using CpuSpd - A Hardware Based CPU Speed Control Utility for DOS/Win9X Retro Gaming : there are 16 ACPI performance levels, the CPU multiplier can be scaled down from 2600 to 500 MHz in 100 MHz steps and L1 cache can be deactivated. With all three slowdowns enabled, performance can be lowered down to 386 SX levels.

The integrated network adapter has NDIS and packet drivers for DOS/Win9x and is natively supported under XP/Linux. An alternative is the RTL8111C/RTL8111D gigabit ethernet PCIe card, the last one with official Windows 98 drivers (but no DOS drivers afaik). The RTL8111 requires the /M option of PATCHMEM.

If the ESSOLO.SYS driver hangs after displaying "SOLO" on a single line, it means it couldn't grab a low IRQ. A workaround is to disable LPT1 in the BIOS, so that it can grab IRQ 7, or to disable COM2 and force "PCI Slot 2 IRQ" to 3, allowing the ES1938 to use IRQ 5.

Installation of Windows 98 however is a bit more difficult, so here are a few tricks that were useful to me:

ES1938 sound card driver

The driver provided on Phil's site (solo1_drv_w9x_4.12.01.1165.zip) did not work at all for me regardless of any IRQ setting. The "ESS SOLO-1 PCI AudioDrive" driver showed a yellow exclamation mark with the error message "This device is either not present, not working properly, or does not have all the drivers installed. (Code 10.)". Instead I found driver 5.12.01.3047 which worked fine, also provided as an attachment to Re: ESS 1938 under DOS

Radeon X800 XL PCIe graphics card

The X800 XL is one of the most powerful of this generation, and this particular chip (ATi R430, Thor) was released later on the 110nm node and does not require external power; I measured the whole power consumption of this card as 50W. All pixel and vertex shared are unlocked (16/6), be aware that many other X800 models have a reduced number of pixel and vertex shaders. The default cooling solution was replaced with the Zalman ZF700-CU. (I had to solder a fan header onto the motherboard, as the footprint was not populated.)

After installing 98, there are three graphics cards listed instead of two: 1. "Standard Display Adapter (VGA)", 2. "Standard PCI Graphics Adapter" and 3. "Standard PCI Graphics Adapter (VGA)" with a yellow exclamation mark. The first one is erroneous and was created by mistake by Windows 98 SE setup. The fix is easy and consists of removing 1. "Standard Display Adapter (VGA)" and rebooting. Then the yellow exclamation mark is gone and installation of the 6.2 catalyst driver succeeds.

SATA SSD drive

Like the VT82C686B, the VIA8237A doesn't like SATA to IDE converters connected to a SATA SSD: both the Marvell 88SA8052 and JMicron JM20330 adapters caused DMA errors. However (again like the VT82C686B), an mSATA to IDE 88SA8052-based adapter worked fine in DMA mode. This adapter can usually be found under the brands Delock/Ableconn/Renkforce and has a red PCB with metal railings on the side, but it has become expensive and difficult to find. It looks like: https://m.media-amazon.com/images/I/812r43k8o … _AC_SL1500_.jpg

So a better solution would be to use a SATA SSD using one of the two SATA ports on the motherboard in IDE mode. What I found out after much experimentation is that Windows 98 SE doesn't like having more than two IDE bus masters (by default, this MB has four: two classic IDE ports and two SATA ports). Furthermore, it is necessary to apply R. Loew's PTCHSATA, and finally DMA must be activated manually for both HDD and DVD drives. Here's a short guide for using a SATA SSD with this motherboard:

- After the first reboot, the message "Insufficient memory to initialize Windows. Quit one or more memory resident programs..." is shown. (here I'm using 2 GB of memory). Reboot and instead of safe mode select command prompt. Install PATCHMEM and PTCHSATA (it is not necessary to copy SATA.INF).

- After rebooting, installation will freeze one or two times at the "Windows 98 is now setting up your hardware and any Plug and Play devices you may have...". The mouse might still move but the magnifying glass stops moving, so reboot the PC and setup will continue and eventually succeed.

- In the device manager, there is now under Hard disk controllers "Standard Dual PCI IDE Controller" (with a yellow exclamation mark) and "VIA Bus Master PCI IDE Controller" (working). Under the properties of each controller go to Settings and change the Dual IDE Channel Settings so that there is only one IDE Channel enabled for each (for example Primary if IDE0 or SATA2 is used, Secondary for IDE1 or SATA3), then reboot.

- Again in the device manager, update the drivers for "Standard Dual PCI IDE Controller" by choosing "VIA Bus Master PCI IDE Controller" (with Show all hardware), then reboot.

- Now there are two "VIA Bus Master PCI IDE Controller" devices in Device Manager with no yellow exclamation mark. In the properties of the optical drive and "GENERIC IDE DISK TYPE00", tick the DMA checkbox - otherwise performance of the HDD/ODD will be limited to around 3 MB/s. With DMA, performance is up to around 130 MB/s.

untitled.png
Filename
untitled.png
File size
5.04 KiB
Views
678 views
File license
CC-BY-4.0

The BIOS also provides a RAID option for the SATA port. The VIA RAID drivers work fine in Win98, unfortunately the BIOS code reserves 12 KB of conventional memory for its buffers, so I wouldn't recommend going that route.

It is best to set the optical drive as the IDE master, if set to slave Windows XP takes a lot longer to boot (presumably because it timeouts waiting for the master's response). Make sure to use a recent IDE CD/DVD drive (like the Lite-on LH-20A1H or Nec ND-4570A / ND-4571A, all three are CDBQ compatible); when using an older ~2002 Sony CD-R/RW drive (CRX175A1) I would get DMA errors and disk corruption (when used as a slave device).

A note about the VIA Hyperion drivers: the last version with Win9x IDE drivers is 5.21a. However I've tested these drivers and performance is actually slightly worse than the default Windows 98 SE IDE driver. The Hyperion package also contains the AGP driver, but again after installing it I got the same 3DMark2001 scores. So I believe this driver package is completely unneeded.

Also when using a USB mouse, movement of the mouse is very jerky, as if it was sampled at 2 fps. Installing the VIA USB 2.0 driver did not fix it. However installing nusb36.exe fixes the problem completely, so I recommend it if you need USB devices (an alternative would be U98SeUSB.exe, see Re: Windows 98SE - USB mouse extremely slow, am I missing something obvious?). By the way, real-mode support for USB keyboards/mice/storage can be disabled in the BIOS, freeing 64 KB of UMB. The BIOS PS/2 emulation is actually decent and would be useful eg. if the PS/2 port was defective.

Finally, some pictures: the cooler is a be quiet! Pure Rock Slim which has AM2 compatibility (dropped in version 2 of this cooler) - PWM support must be enabled in the BIOS, and the case the Advance 6016CR Little Box (with the USB card reader replaced by a Gotek):

Attachments

Last edited by cde on 2022-01-16, 10:30. Edited 11 times in total.

Reply 2 of 5, by BitWrangler

User metadata
Rank l33t
Rank
l33t

Cool, I rocked the fiddy-fiddy for a few years. I never got any more out of it than stock speeds, but I blame a crappy ECS board and Kingston screwing me on RAM for that, they had a very sneaky retail package that said DDR-2-800 "compatible" but it wasn't actually DDR-2-800 it was 533. So it only just did 800 by the skin of it's teeth. That's one of those weird things that always dead-ends on me, trying to get decent speed DDR2, the other thing is K6-3s and or pluses. No end of bad luck with both.

Unicorn herding operations are proceeding, but all the totes of hens teeth and barrels of rocking horse poop give them plenty of hiding spots.

Reply 3 of 5, by Joseph_Joestar

User metadata
Rank l33t
Rank
l33t
cde wrote on 2021-08-21, 17:05:

Like the VT82C686B, the VIA8237A doesn't like SATA to IDE converters connected to a SATA SSD: both the Marvell 88SA8052 and JMicron JM20330 adapters caused DMA errors. However (again like the VT82C686B), an mSATA to IDE 88SA8052-based adapter worked fine in DMA mode.

This is very interesting, thanks for pointing out the mSATA to IDE solution. I had the same experience with JMicron adapters on my KT7A, so I gave up on using an SSD with that build. Might give it another shot if I come across one of those 88SA8052-based adapters.

Great build BTW. Very power efficient and quite versatile, with a lot of slowdown range. If prices weren't so insane right now, I'd suggest adding a Voodoo2 for games that need palleted textures, table fog or just plain Glide support. But then again, a system this powerful can probably handle Glide emulation without any issues.

PC#1: Pentium MMX 166 / Soyo SY-5BT / S3 Trio64V+ / Voodoo1 / OPTi 82C930 / AWE64 Gold / SC-155
PC#2: AthlonXP 1700+ / Abit KT7A / Voodoo3 / SBLive / Vortex2
PC#3: Athlon64 3000+ / Asus K8V-MX / GeForce4 / Audigy1
PC#4: i5-3550P / MSI Z77A-G43 / GTX 650Ti / X-Fi

Reply 4 of 5, by cde

User metadata
Rank Member
Rank
Member
Joseph_Joestar wrote on 2021-08-23, 04:01:

This is very interesting, thanks for pointing out the mSATA to IDE solution. I had the same experience with JMicron adapters on my KT7A, so I gave up on using an SSD with that build. Might give it another shot if I come across one of those 88SA8052-based adapters.

Great build BTW. Very power efficient and quite versatile, with a lot of slowdown range. If prices weren't so insane right now, I'd suggest adding a Voodoo2 for games that need palleted textures, table fog or just plain Glide support. But then again, a system this powerful can probably handle Glide emulation without any issues.

Thanks Joseph. In addition to the Delock/Renkforce/Ableconn 88SA8052-based adapter, there are two solutions that could work for you:

- SI3114 with 5.5.00 BIOS + regular SSD. Main drawbacks are the 10 KB of conventional memory it requires, lack of TRIM, and being limited by the PCI bandwidth.
- JM20330-based mSATA adapter with PIO mode 4 forced in the BIOS. Despite using PIO, performance on the KT7A is acceptable for DOS / Win98 and CPU usage remains low.

Reply 5 of 5, by cde

User metadata
Rank Member
Rank
Member
cde wrote on 2021-08-21, 17:05:

The integrated network adapter has NDIS and packet drivers for DOS/Win9x and is natively supported under XP/Linux. An alternative is the RTL8111C gigabit ethernet PCIe card, the last one with official Windows 98 drivers (but no DOS drivers afaik).

I couldn't find the RTL8111C online - one listing that claimed to be a RTL8111C was in fact a RTL8111E. A second listing under the spanish brand "donkey PC" was a RTL8111D which is fortunately supported by the last Windows 98 SE Realtek driver. It was necessary to reinstall PATCHMEM with the /M option, to avoid the error "VFAT Device initialization Failed". Transfer speeds are only 34 MB/s under 98 (and almost 100 MB/s under Linux), still an improvement over the integrated NIC.