VOGONS

Common searches


First post, by Kahenraz

User metadata
Rank l33t
Rank
l33t

I tested my Silicon Image SiI3112 and SiI3114I PCI-to-SATA controllers this week on the Intel 440BX chipset to see what compatibility was like. Some preliminary research suggests serious problems with the SiI3112 but maybe a BIOS update had resolved them. And a lot of other information was incomplete or anecdotal.

IMG_20210928_195242_resize_38.jpg
Filename
IMG_20210928_195242_resize_38.jpg
File size
670 KiB
Views
1045 views
File license
Public domain

My initial problem with my SiI3112 was that it wouldn't detect at all. This was due to aging capacitors. Could the instability others were experiencing be due to this and not a fault of the controller itself?

IMG_20210927_020845_resize_43.jpg
Filename
IMG_20210927_020845_resize_43.jpg
File size
289.58 KiB
Views
1045 views
File license
Public domain

A short recap later and the card was now recognized by the system. I was able to boot into DOS and install Windows ME without any trouble. I did not perform any tests or install any drivers; I only booted to the desktop.

I then tried the SiI3114 which was not recognized by the system at all just like the SiI3112. I recapped this board as well but it remained undetected. After some troubleshooting I found that it would work fine in a newer Socket 775 system without issue. I tested this card some two different 440BX motherboards and can confirm that the SiI3114 does not work and the option ROM never loads.

Since I had both of these cards working consistently, I loaded the latest BIOS on both of them. I chose the non-RAID BIOS because I'm not using any RAID features.

I then swapped back to a 440BX and tried installing Windows XP. This required protected-mode F6 drivers to load. On the 440BX setup took hours to proceed, much longer than it should for the hardware. Eventually the system blue screened with an issue related to ntfs.sys. Multiple attempts to restart the setup process always resulted in this BSOD and setup could proceed no further.

IMG_20210928_012230_resize_79.jpg
Filename
IMG_20210928_012230_resize_79.jpg
File size
278.7 KiB
Views
1045 views
File license
Public domain

I wasn't sure if this problem was limited just to the setup process so I swapped again to the Socket 775 board to install Windows XP after a fresh format. It's at this point that I discovered that the slow installation I had experienced previously was due in part to the SiI3112 controller. The system I was installing to had a Pentium D 3.4Ghz Pentium and 1GB of memory. I installed Windows XP to another SSD on this system previously with the onboard SATA controller and the process was very fast.

Setup completed after a few hours (this is very atypical) and I was sure that a disk benchmark would reveal a bottleneck. But surprisingly it did not. SATA disk speeds were optimal for this SSD and the system appeared to be stable. I swapped to the SiI3114 where performance was about the same but with a slightly slower write speed. I didn't need to perform any other tests and I don't know why setup ran so slowly.

23-June-2008_08-58.png
Filename
23-June-2008_08-58.png
File size
21.99 KiB
Views
1045 views
File license
Public domain

With a working installation of Windows XP I swapped again back to the 440BX and tried to boot from the disk. But while Windows would attempt to boot it would hang whole trying to load the device driver for Mup.sys. I don't know why this was a problem but my efforts trying to get XP booting on this chipset with the SiI3112 controller ended here.

IMG_20210928_210902.jpg
Filename
IMG_20210928_210902.jpg
File size
60.39 KiB
Views
1045 views
File license
Public domain
Last edited by Kahenraz on 2021-09-30, 11:22. Edited 10 times in total.

Reply 1 of 43, by Kahenraz

User metadata
Rank l33t
Rank
l33t

My original goal was to run Windows XP from a SATA SSD on my 440BX for testing hardware and drivers but this had failed. Although I still wasn't finished testing the SiI3112. I was previously able to install and boot into DOS and Windows ME but hadn't done any other testing.

I needed files for these tests so I booted into Windows ME and tried copying some over from another disk. This is where things stated to get unstable.

Copying files and running programs triggered all kinds of problems. The system would completely lock up while copying files or running programs which caused a lot of disk access such as running an installer. I believe that while some data was actually being corrupted as it was written, some programs which had broken such as mspaint functioned normally later, suggesting corruption to be occurring while reading from disk as well.

To test whether this issue was limited to just the SiI3112 or an incompatibility with the 440BX chipset I moved one last time back to the Socket 775 system where XP had appeared to install and run stable. Windows ME on the SiI3112 was immediately unstable at boot and could not be coaxed into working at all. I tried using the Si3114 instead which allowed the system to boot but yielded an unending amount of program crashes and corruption. It's possible to argue that these issues were caused by the SiI3112 and not the Si3114 but more tested would be needed to prove this and I've already moved beyond what I would ever use it for in use or testing.

The Socket 775 board I was using already has SATA onboard so I don't need either of these controller cards. Even if the SiI3114 is stable (which I don't think it is) it doesn't work with vintage chipsets like the 440BX where a SATA controller would be useful.

To summarize, I believe that the SiI3112 and Si3114 may be viable PCI-to-SATA controllers given the right set of circumstances. This would be for someone who wants to use a SATA drive on a system with only IDE and intents to use an NT operating system Windows 2000 or higher. I did not have any problems with stability with the protected mode drivers for XP so I can only confirm data corruption issues when using this controller with real mode access in Windows ME but I expect these problems to exist in 98 and DOS given the right situation.

IMG_20210928_200014.jpg
Filename
IMG_20210928_200014.jpg
File size
798.22 KiB
Views
1029 views
File license
Public domain
IMG_20210928_200042.jpg
Filename
IMG_20210928_200042.jpg
File size
876.78 KiB
Views
1029 views
File license
Public domain
IMG_20210928_200105.jpg
Filename
IMG_20210928_200105.jpg
File size
554.64 KiB
Views
1029 views
File license
Public domain

Reply 2 of 43, by Kahenraz

User metadata
Rank l33t
Rank
l33t

I don't know which exact combination of factors caused this but it would have been on one of my 440BX boards with a SiI3112.

When the system tried to boot it hung and some of the text mode characters were garbled at the top of the screen. I wonder if this is the SATA controller writing garbage into memory it's not supposed to.

Ignore the messed up CPU Clock. This is due to the BIOS being unable to recognize CPU speeds above 999Mhz and a 1.4Ghz Pentium 3 is installed.

2021-09-28 215313_resize_13.jpg
Filename
2021-09-28 215313_resize_13.jpg
File size
32.48 KiB
Views
1011 views
File license
Public domain

You can see a video of it here:

https://youtu.be/87yCJ9-JXiE

Reply 3 of 43, by Rawit

User metadata
Rank Oldbie
Rank
Oldbie

I've tried to use a SIL3114 controller but it gave me nothing but trouble. Tried the two latest non-RAID firmwares in combination with a 440EX board just running DOS but it corrupted every disk attached to it, even destroying some industrial CF cards. Also if there is no floppy drive attached or some application tries to search for it or drive B: the system would hang completely. If you search for SIL3114 you will find more stories of people not getting it to work with hardware from this era.

I didn't get these problems with the Promise card I have/

YouTube

Reply 4 of 43, by Kahenraz

User metadata
Rank l33t
Rank
l33t

I was using the 5.4.0.3 non-RAID BIOS for my SiI3114 during testing because the BIOS from ASSP Software Archive only provided the RAID BIOS for the latest version 5.5.0.0. I managed to find the non-RAID BIOS for this version on archive.org today.

There is a lot of missing content not provided by ASSP such as manuals and utility software which may be obtainable from archived pages on the Wayback Machine.

https://web.archive.org/web/*/http://www.sili … chresults.aspx*

For reference:

ASSP Software Archive

Attachments

  • Filename
    SiI3114_5500.zip
    File size
    29.29 KiB
    Downloads
    36 downloads
    File license
    Public domain

Reply 7 of 43, by canthearu

User metadata
Rank Oldbie
Rank
Oldbie
Kahenraz wrote on 2021-09-29, 01:11:

My original goal was to run Windows XP from a SATA SSD on my 440BX for testing hardware and drivers but this had failed. Although I still wasn't finished testing the SiI3112. I was previously able to install and boot into DOS and Windows ME but hadn't done any other testing.

I'll give this a go using a new adaptor I picked up from rs components. A Startech SATA to IDE converter.

I'll use the motherboard IDE and this little converter board with an SSD and see how it goes. I suspect it would go just perfectly.

Edit: I also have a SATA PCI card kicking around in storage, I'll grab that and try it too!

Reply 9 of 43, by Kahenraz

User metadata
Rank l33t
Rank
l33t

The latest RAID and non-RAID BIOS for SII3112 version is 4.4.02 *not* version 4.2.83 which I had been using during testing. This is the very last BIOS to be released by Silicon Image for this chip.

I sourced all my BIOS and drivers from the ASSP Software Archive which I thought had the most recent versions but it is incomplete. All of the links I have shared here are the final BIOS versions.

There are two additional BIOS versions 5.0.27 and 5.0.31 which I found elsewhere but these are for integration into motherboard BIOSes and can't be used with a PCI card. I'm attaching them here as well in case anyone here can make use of them.

Attachments

  • Filename
    SiI3112_4402.zip
    File size
    69.5 KiB
    Downloads
    33 downloads
    File license
    Public domain
Last edited by Kahenraz on 2021-09-30, 12:21. Edited 1 time in total.

Reply 10 of 43, by weedeewee

User metadata
Rank l33t
Rank
l33t

there's three files in the 4402 zip.
Any insights into what's what ?

4402.bin
b4402.bin
r4402.bin

edit: oh, and from looking at the files. the 5031 has a date of 12-09-2003 in it, while the 4402 has 10-30-2008.
edit2: b & r file differ by 6 bytes, all in the last 32 bytes of the file. 4402 file is completly identically present in both b & r files.

Right to repair is fundamental. You own it, you're allowed to fix it.
How To Ask Questions The Smart Way
Do not ask Why !
https://www.vogonswiki.com/index.php/Serial_port

Reply 11 of 43, by Kahenraz

User metadata
Rank l33t
Rank
l33t

The non-b/non-r .bin is for motherboard OEMs to add to their motherboard BIOSes. The b file is for non-RAID and the r file is for RAID.

I removed the other two files because I can't confirm that they are for this device and, as you described, they have in fact be older.

I've been testing the SiI3112 on my 440BX with a 120GB SSD with a bootable installation of Windows ME on it. The install was not a great experience with setup locking up at various points but several forced reboots allowed me to get to the desktop.

I wasn't able to benchmark the disk in this state because PCMark2002 couldn't see it for some reason. I didn't realize before that there are Windows 98/ME drivers for the SiI3112 and SiI3114. I was able to install them for the controller and the disk is now recognized by PCMark2002 and can be benchmarked.

drivers.png
Filename
drivers.png
File size
1.48 KiB
Views
860 views
File license
Public domain

The speed is good and subjectively it is better. With DOS booted real-mode read and write was about 25MB/s. I don't know how well this translates into Windows ME before the controller drivers were installed but this is something you would want to always do anyways.

The data corruption I was experiencing previously may have been due to my reflashing the BIOS several times during testing. I also swapped the disk between the SiI3112 and SiI3114 (which was also flashed a few times) as well as moving the controllers between machines during testing. Sprinkle in a lot of hard resets due to lockups and it's hard to say for certain what initiated the corruption from my initial testing.

I have so far been unable to replicate any corruption with the SiI3112 on my 440BX and it benchmarks very fast with the controller drivers installed on Windows ME. There may still be issues if this controller is used in real-mode so more testing is required but it's not terribly slow even without any drivers or caching in DOS and is much faster than IDE without UDMA in DOS.

However, there are other issues. One of them has to do with booting to a floppy or CD. With the SiI3112 on my 440BX, the system will skip booting from the floppy unless there is some other disk present on one of the onboard IDE channels.

Another issue is that CD-ROM booting that uses floppy emulation is also broken for the same reason as the floppy. The system will try to boot but the system locks up after mounting the image. I tested this with bootable discs for Windows ME and Partition Magic 8. The Windows XP installation disc which does not use floppy emulation booted fine. Connecting a disk to the onboard IDE controller allows the system to boot from floppies and CDs as expected.

The boot issue is annoying and makes this controller undesirable if you plan to use it as a replacement for the onboard IDE controller but this can be worked around by leaving an unformatted disk or flash card connected to it. If you want to use it instead as an easy way to connect a large capacity SATA drive to move games or other files then it may work fine. On 98 and ME there are drivers available so take full advantage of SATA speeds and even in DOS it's alright.

That's all the testing I've done for now. I'd like some more data on this if anyone else can test and share. Be sure to use the latest BIOS and matching drivers so that we can all be on the same page.

Reply 12 of 43, by Kahenraz

User metadata
Rank l33t
Rank
l33t

Further testing on another 440BX motherboard suggests the floppy and CD boot issue is specific to the SiI3112 and my ASUS P2B motherboard. I don't have this issue at all on this other board.

So depending on whether you have this bug, then this card may work as a complete replacement for your IDE disks even on an older chipset.

I'm testing Windows XP again to see how well it works with this new BIOS. I'm also using a Pentium 3 at 1.4Ghz instead of the Celeron 533Mhz I was using before.

Reply 13 of 43, by Repo Man11

User metadata
Rank Oldbie
Rank
Oldbie

I have a 3114 that I use with my Asus TXP4. It works fine with that motherboard, but I haven't had any success using it on any of the others I've tried. Re: SIL3114 sata card, need ide firmware.

"I'd rather be rich than stupid" - Jack Handey

Reply 15 of 43, by mockingbird

User metadata
Rank Oldbie
Rank
Oldbie

I could not get my SSD to format properly with the Startech (Marvell) sata converter on my BX board with my SSD...

What did work was partitioning it on a Windows 7 computer using AOMEI, and in the alignment configuration set it to disabled. Leave some of the drive unpartitioned for overprovisioning (at least I think that's how it works... I've read somewhere that you're supposed to *reduce* the size of the drive by editing the HPA -- maybe someone here can comfirm if this is true or not).

Next, connect the drive with the converter to the BX machine with a Promise Ultra TX2 (or perhaps the SATA150 -- I don't remember) and run Rob Loew's RFORMAT, I'm pretty sure it takes care of the alignment fro you. Alignment is configured when FORMATTING a FAT32 partition, and not when partitioning, because FAT32 partitions allow for offsets. So all you need to do is define the offset within the partition when doing the format (again, I think RFORMAT does this automatically - don't wuote me on that).

Don't do the format with the converter connected straight to the BX chipset because there is some sort of device protection with that configuration which messes with things. Also, don't use the TX2 controller after thr format because you will get data corruption with it installed in a BX board.

Loew released RPART and RFORMAT, both incredibly sophisticated little programs... Maybe someone can figure out the syntax for them someday for this sort of thing.

mslrlv.png
(Decommissioned:)
7ivtic.png

Reply 16 of 43, by Kahenraz

User metadata
Rank l33t
Rank
l33t

As I mentioned previously, Windows ME works on a bootable SATA disk connected to the SiI3112. But the NT drivers as tested with Windows XP on a 440BX seems impossible. I tried several times with a few different BIOSes and couldn't make it work.

When installing XP I could get setup to copy files but on the first reboot the system will always blue screen. If I installed XP on the SiI3112 on a other system where it works fine such as my Socket 775 and then try booting on the 440BX with the SiI3112, the system will hang.

I wonder if this is related to alignment as mockingbird suggests but I don't know how to set this up correctly for testing.

Reply 17 of 43, by Kahenraz

User metadata
Rank l33t
Rank
l33t
mockingbird wrote on 2021-09-30, 15:23:

Also, don't use the TX2 controller after thr format because you will get data corruption with it installed in a BX board.

What's this about corruption with the TX2 on a 440BX?

Reply 18 of 43, by Repo Man11

User metadata
Rank Oldbie
Rank
Oldbie
Kahenraz wrote on 2021-09-30, 14:13:

Can you boot with that card and confirm what BIOS version you're using with it?

It works fine in this motherboard, but I've tried it on two different motherboards with Via chipsets, and it has always had some sort of error with them. Attach the SSD, format with Super FDISK, then copy the Win98 CD to the drive and it's done.

Attachments

"I'd rather be rich than stupid" - Jack Handey

Reply 19 of 43, by mockingbird

User metadata
Rank Oldbie
Rank
Oldbie
mockingbird wrote on 2021-09-30, 15:23:

What's this about corruption with the TX2 on a 440BX?

Withy my mechanical HDD yes.... Attached it to a TX2 on my P2B-S, and Scandisk kept running every boot... Took it to a different computer, ran chkdsk to sort everything out, checked out fine, hooked it back up to the TX2 and it got corrupted straight away...

I'm not completely clear on partitioning, formatting, and aligning SSDs on these older systems... All I know is that RPART and RFORMAT are very capable DOS applications, if someone could figure them out.

mslrlv.png
(Decommissioned:)
7ivtic.png