upvote
You may not have ever had to deal with SCSI termination errors before. Earlier system had to have the device numbers manually assigned, if they were wrong, all sorts of weird things could happen (of just nothing would work)

I'm a SCSI fan, but it took a few revs to get it righted.

reply
SCSI was so much less tedious than dealing with IRQ / DMA / address hell on ISA cards, though. Once you understood it you could apply that knowledge across lots of platforms and devices. SCSI was much less arbitrary than dealing with random devices from manufacturers who each thought up their own way of setting configurable parameters (jumpers and DIP switches, option ROMs, tool you boot in DOS to frobnicate settings in an NVRAM, etc).
reply
There is some truth in that. Like I said, I'm a fan, but I also remember some painful times where we were missing a physical terminator and at least twice adding a new device and had to check the jumpers on everything and someone one of the jumper blocks were upside down or maybe we couldn't tell which pin was 1 or something such that the devices were numbered wrong. We got it fixed and working every time though.

Aside from the time we lost a terminator for a few days, I never once felt like the scsi system couldn't work, it was just a matter of a really young me and my dad getting it sorted out. IRQ/DMA/ISA fuckery? There were multiple times I can remember getting a shiny new piece of hardware, that took months of begging my parents, and after getting things assembled thinking that "this configuration of devices" might not be possible to make work together.

reply
Because the peecee was cobbled-together cheap crap, that's why.
reply
SCSI cost too much for the extremely cost-conscious PC market of the early 90s. They'd already consolidated down all the IBM PC legacy buses (e.g. parallel, serial, AT keyboard interface etc) into a single chip that cost peanuts.

USB started off as a way to replace the legacy buses with something even cheaper, so naturally the PC industry bit. It wasn't really even supposed to do SCSI things; that was Firewire's job. We didn't get equivalent performance out of USB up until version 3.0 which isn't even the same bus as USB 2.0.

The underlying tension is that there are two different kinds of computers that want to do different things with their I/O:

1. The "SCSI philosophy" is to make peripherals that feel like extensions of the high-end computer you just bought.

2. The "USB philosophy" is to give you the cheapest connection you can get to a thing that works.

A good example of this philosophical divide is daisy-chaining. SCSI, Firewire, and Thunderbolt all supported it because it's the premium way of doing things. USB makes you buy a hub separately if you want more connectivity. Or, alternatively, you can look at this as SCSI and it's successors forcing you to buy a hub with every device you plug into them.

You might think that USB won out, but really, this debate still rages on, because Thunderbolt wound up being rolled up into USB-C and USB4. So now USB has to be both a cheap and premium bus - hell, Thunderbolt even used daisy-chaining instead of hubs on USB! This is why USB-C cables and devices are a mess; they designed USB-C specifically so you could flood the market with cheap 2.0-only cables that are only ever going to be used for power; and super-premium USB4/DP cables for plugging your laptop into a $200 laptop dock just to get back the ports you should have had anyway.

And, I must stress this enough, most of those fancy USB-C altmodes never made it to desktop anyway. I think you can buy Thunderbolt cards that will mux DisplayPort but you have to use a wrap-around cable to go from your GPU to your TB card like we're back in the 3dfx Voodoo2 era or something. Most of USB-C's single cable functionality is super-premium stuff that required a level of internal integration that desktop never committed to. Which is, again, very SCSI-brained, except now the cheap consumer stuff has it and the expensive modular desktops don't.

reply