VOGONS


First post, by scheiss_freak

User metadata
Rank Newbie
Rank
Newbie

I've been working on this for quite a while now and as I've found a lot of useful information on the forums during my research I thought it was about time to start my own thread about this build.

A hopefully more entertaining version of this writeup is available on youtube: Upgrading my Socket 7 NAS

Background
This build actually started over 15 years ago, when the Socket 7 was already an old platform, but probably not considered retro. I had this DFI K6BV3+ based system I got for free from a friend, which I used to start experimenting with Linux. I hosted dedicated game servers for private LAN parties on it and tried out other shenanigans. When the precompiled hlds linux binary dropped i586 support and the system became obsolete for its former usage I came up with a new use for it. I was pretty big into case modding back then and dreamed about building a high class casecon with a real purpose. Nice Network Attached Storage devices weren't really a thing at the time and the few available were rather expensive. So I started designing, constructing and building a slick and compact case around the Baby AT motherboard to use it as a NAS. Here are some pictures from the build process (remember, this is 2008):

The attachment P1020447.jpg is no longer available
The attachment biegung.jpg is no longer available

I actually got admitted to the German Casemod Championship 2008 (DCMM) with a half finished case (3.5" HDD lying outside) and the gamescom Casemod Masters with a pretty much finished build later that year. Although I didn't make it to the podium the case was received very well and I was really proud of it.

The attachment enas.JPG is no longer available
The attachment C12-eNAS-01.jpg is no longer available
The attachment IMG_5305.jpg is no longer available

The hardware setup hasn't changed much since then:

  • Motherboard: DFI K6BV3+/66
  • CPU: AMD K6-III+ 500 MHz
  • RAM: 256MB SDRAM
  • LCD: Sharp M078CKA-A3QKLA0057
  • NIC: 3com 3C905C-TXM
  • SATA-Controller: Dawicontrol DC-150
  • USB/1394-Controller: VIA VT6214L/VT6307 Combo
  • ATX-NT: PicoPSU 90W DC/DC
  • AC/DC-NT: Seasonic SSA-0651-1 60W 12V
  • IDE HDD: 4GB swissbit CompactFlash
  • SATA HDD:
    2008: RAID0 2.5" Western Digital Scorpio Blue 500GB
    now: RAID1 2.5" 2.0TB WD Green

I have since then used the NAS for occasional backups and to store non critical data. But especially the really not fast 100 MBit/s ethernet made it more and more a pain to use. And After the 3C905C-TXM decided to turn itself into a 10 MBit card, I thought it might be a good time to for an upgrade. Just swapping the NIC to a gigabit card isn't really an option as the case was specifically tailored to the 3Com card, so a major upgrade with changes to the case seems inevitable if I want to keep the NAS alive. I really wonder why I chose this NIC in the first place, it's not like gigabit wasn't a thing in 2008, but I was a poor student and didn't see me upgrading our home network to gigabit in the near-term back then.

As I'm still proud of the work achieved with this case I really don't want it to sit in a corner and collect dust and I saw two upgrade paths to make it a 24/7 usable NAS again. Either keep only the case and make it accommodate some modern mini- or nanoITX based system, or stay with the Socket 7 Baby AT and tune the hell out of it and see how far it can go. As with my cars, I love to keep old platforms alive and spice them up with some modern parts here and there. So avoiding any rational considerations, my choice was pretty obvious. And when I finally, realized that you can run pretty much any 64-bit PCI and even PCI-X cards in a regular 32-bit PCI slot there was no return and parts started to pile up.

Current status and plans
Among all the networking cards I acquired for testing there was one that actually had the RJ45 jack in the exact same position as the old 100 MBit/s card. So upgrading to this specific card was actually straightforward. With the 3com 3C996-T and the appropriate firmware binary installed I already got a significant performance gain. And another easy upgrade was to change the Sil3512 based Dawicontrol DC-150 SATA controller for a SiI3124 card which resulted in 28 MB/s reads and 15 MB/s writes to samba shares. The overall goal is to make this machine a usable and power efficient NAS. From former measurements I recall that the whole system wasn't using much more than 20 W idling. As for performance, I already did some bench testing and have seen over 50 MB/s sequential read over the network without much optimization. So I'd expect the final performance in that range, maybe even higher with more tuning. As I'm usually not dealing with large files, this should be enough for my application.

Reply 1 of 13, by dominusprog

User metadata
Rank Oldbie
Rank
Oldbie

Excellent woodwork 😀

Duke_2600.png
A-Trend ATC-1020 V1.1 ❇ Cyrix 6x86 150+ @ 120MHz ❇ 32MiB EDO RAM (8MiBx4) ❇ A-Trend S3 Trio64V2 2MiB
Aztech Pro16 II-3D PnP ❇ 8.4GiB Quantum Fireball ❇ Win95 OSR2 Plus!

Reply 2 of 13, by scheiss_freak

User metadata
Rank Newbie
Rank
Newbie

As even in the retro community not everyone is aware of the low power consumption of the K6-3+ here’s proof of it:
https://youtube.com/shorts/KlB7xc52GBY?si=1IwFRvj13-lPW6-K

And that’s without any effort to optimize power consumption. I already have a few ideas how to shave off some more watts.

Reply 3 of 13, by nickles rust

User metadata
Rank Newbie
Rank
Newbie

Thank you for sharing your project! Have you made any progress?

Reply 4 of 13, by nickles rust

User metadata
Rank Newbie
Rank
Newbie

I like your idea and I'm trying to put my old computer back into service following your example and other info on the forum here. I was able to upgrade the CPU to a K6-3+ which is both faster and lower power, but now I'm stuck.

Could you elaborate on the software needed or any special tricks? I've tried a couple different PCI SATA cards (including a 3124) but they don't seem to be recognized. Did you have to find drivers or load a custom BIOS maybe?

Reply 5 of 13, by nickles rust

User metadata
Rank Newbie
Rank
Newbie

I'm still stuck trying to find software for the SAS/SATA cards. I guess the trick is to first boot on the IDE port with a boot loader that can then see the RAID card?

Most of current linux versions I've tried are too bloated to run on this hardware.

Reply 6 of 13, by nickles rust

User metadata
Rank Newbie
Rank
Newbie

Along with the 450MHz K6-3+ CPU, I was able to upgrade the RAM to 512MB. This was very helpful with installing/running T2 linux because it has to compile a lot of stuff to add packages. I saw T2 linux was an option in one of the videos, so I've been trying to use that. I installed the "486" version but the K6-3+ is more like a "586" or "686"? There is an option for setting the CPU type specifically to K6-2 for building/installing packages, but when I do: "./t2 upgrade" it always fails at the same point with the machine rebooting after many hours of compiling. It may still be running out of RAM/swap?

Anyway, it still does not recognize any of the SATA/SAS/RAID cards I have tried. The best I can do so far is a PCI IDE card that should be a little better than the built in ports. Grub does not like this though, so I may need to install from scratch on a drive attached to that card...

I guess the original poster is long gone. Does anyone have advice?

Reply 7 of 13, by darry

User metadata
Rank l33t++
Rank
l33t++
nickles rust wrote on 2025-03-26, 18:59:

Along with the 450MHz K6-3+ CPU, I was able to upgrade the RAM to 512MB. This was very helpful with installing/running T2 linux because it has to compile a lot of stuff to add packages. I saw T2 linux was an option in one of the videos, so I've been trying to use that. I installed the "486" version but the K6-3+ is more like a "586" or "686"? There is an option for setting the CPU type specifically to K6-2 for building/installing packages, but when I do: "./t2 upgrade" it always fails at the same point with the machine rebooting after many hours of compiling. It may still be running out of RAM/swap?

Anyway, it still does not recognize any of the SATA/SAS/RAID cards I have tried. The best I can do so far is a PCI IDE card that should be a little better than the built in ports. Grub does not like this though, so I may need to install from scratch on a drive attached to that card...

I guess the original poster is long gone. Does anyone have advice?

Are you following this https://t2sde.org/documentation/buildintro.html ?
IMHO, it might make the most sense to cross-compile (optimized for your chosen target machine) and build an optimized ISO on a modern machine. Then, you could use that ISO to install it on the K6 machine. Cross compiling on a modern machine will be much faster and you are unlikely to run out of RAM.

Other than the SIL3124, what cards are you considering using ? Do they all have boot ROMs that seem to work (do you see a splash screen during boot) ?

You may need to explicitly enable support for the IDE/SATA/RAID chipsets/card(s) you intend to use while setting kernel compilation options (I have no idea what's enabled by default ).

Reply 8 of 13, by nickles rust

User metadata
Rank Newbie
Rank
Newbie

Thanks for the reply. I've tried a few different linux versions and T2 has the most current kernel, but none seem to detect the PCI SATA/SAS cards I've tried. None have a boot message on the POST screen, or have any BIOS options. Maybe I need to get a super socket 7 board. In the video it looks like he is booting on a CF card plugged into the IDE port on the motherboard. I'm guessing this can then load the drivers for the PCI card(s). I've tried the 3114, 3124, and a couple that use the marvel chips, both RAID and plain. These used cards are pretty inexpensive at the moment, but with no luck so far I'm reluctant to keep buying random cards to see if they work. I must be missing something and I'm not an expert in linux or the finer points of server hardware.

Reply 9 of 13, by darry

User metadata
Rank l33t++
Rank
l33t++
nickles rust wrote on 2025-03-28, 17:21:

Thanks for the reply. I've tried a few different linux versions and T2 has the most current kernel, but none seem to detect the PCI SATA/SAS cards I've tried. None have a boot message on the POST screen, or have any BIOS options. Maybe I need to get a super socket 7 board. In the video it looks like he is booting on a CF card plugged into the IDE port on the motherboard. I'm guessing this can then load the drivers for the PCI card(s). I've tried the 3114, 3124, and a couple that use the marvel chips, both RAID and plain. These used cards are pretty inexpensive at the moment, but with no luck so far I'm reluctant to keep buying random cards to see if they work. I must be missing something and I'm not an expert in linux or the finer points of server hardware.

The lspci command should at least enumerate all PCI devices, even if there is no compatible kernel module (driver) available for it.

If lspci does not list a device, either the PCI bus or a subcomponent (bridge) is not getting initialized properly OR, more likely, the card is not workable due to a hardware incompatibility (PCI version, 3.3v vs 5v voltage issue).

Of course, a card might just be defective, too.

EDIT: Maybe do a quick install of Windows XP and see if any of the cards appear in device manager.

Also what motherboard brand and model are you using and do you have any known working PCI cards of any type that you could use to test that PCI slots on the motherboard are at least basically functional (card is detected in Windows or lspci under Linux) ?

Reply 11 of 13, by darry

User metadata
Rank l33t++
Rank
l33t++
Sphere478 wrote on 2025-04-02, 15:36:

Thoughts on using a PCI killer NIC?

Gigabit Ethernet over 33MHz PCI, if it even gets close to its max bandwidth, won't leave much for disk I/O if running over on then same bus, regardless of the NIC type.

No idea as to whether a killer NIC might help or not. I was felt like those were 99% hype anyway.

Reply 12 of 13, by Sphere478

User metadata
Rank l33t++
Rank
l33t++

I have one, and a intel g1000? Forget the model, anyway, did some testing. And got similar results, It seems like there is potential to get more from the killer NIC though with specific tasks and settings. Other cards I tried were lower performance than these two from my recall. So these two were the best I found.

Testing done under xp or 2k if I recall. On a dual pentium 233

Thru put seemed to be mainly a processor limitation not a bus limitation

Sphere's PCB projects.
-
Sphere’s socket 5/7 cpu collection.
-
SUCCESSFUL K6-2+ to K6-3+ Full Cache Enable Mod
-
Tyan S1564S to S1564D single to dual processor conversion (also s1563 and s1562)

Reply 13 of 13, by Sudos

User metadata
Rank Newbie
Rank
Newbie
Sphere478 wrote on 2025-04-03, 01:25:

I have one, and a intel g1000? Forget the model, anyway, did some testing. And got similar results, It seems like there is potential to get more from the killer NIC though with specific tasks and settings. Other cards I tried were lower performance than these two from my recall. So these two were the best I found.

Testing done under xp or 2k if I recall. On a dual pentium 233

Thru put seemed to be mainly a processor limitation not a bus limitation

The killer card just hijacks the stuff going to the windows network stack and sends it through its own thing. Works great for actual CPU offloading, sure, but it's still a very messy solution, and if you have a program that talks to the stack directly, it will fail to connect and lock up. Not to say they're overly useless, but the chance of incompatibility is so high that I recommend against their use for windows fodder and instead recommend they go straight on the 4-letter auction site for an Amiga user to buy for their PCI endowed machine as a CPU accelerator card instead, which makes much better use of the hardware on the card for a different purpose.

If memory serves they're also a pain to set up usage in Linux as well, given they run Linux onboard already, and honestly the suffering is so great I once again recommend doing the aforementioned or just keeping it on a shelf as a conversation piece.

I can recall using a Pro/1000 card of some description in a PCI slot on a Socket 7 board many years ago under 2000 and getting respectable speeds for the hardware inside it. I think I had a K6-2/500afx loaded into that thing overclocked to 550, but it was also a very late baby AT ss7 board. The big thing to watch out for is shared IRQs above everything else. Unless the board has the necessary support for over 15 IRQs and proper bus mastering on that end, you will have a bad time no matter if the hardware is a Pentium MMX or a Pentium III, or some athlon job. Combo cards will use more than one IRQ, and unless steps are taken to minimize conflicts, they can either work just fine or do rather screwy things.

I have an OptiPlex GX400 early socket 423 P4 box and while it has IOAPIC support and all that fun stuff necessary for upper IRQs, it only assigns certain devices up there and doesn't push anything from the PCI slots into that range by default and manually putting them on the steering IRQ for all that ends up for naught as windows XP actively swaps it all back. I had to draw up a diagram for myself to remember which slots share stuff with onboard devices and other slots just to get around incompatibilities with hardware or drivers not playing nice. Some cards and their drivers are coded and designed with certain hardware assumptions in mind either as a lazy hack or PCI spec misunderstanding which can cause some pretty wacky results...

8ips6a-2.png
qxkaxq-2.png