Hacker News new | past | comments | ask | show | jobs | submit login
An S-100 80486 CPU Board (s100computers.com)
102 points by userbinator on March 10, 2021 | hide | past | favorite | 68 comments



A generation back when I did my engineering here in India. For electronics and electrical branches. 8085 microprocessor was a subject you studied in 5th Semester. There are both theory and practical exams.

The journey from learning how a transistor works, then simple gates, then adders, flip-flops and eventually registers followed by a 8-bit microprocessor is a mind blowing journey. It's the civil engineering equivalent of going from bricks to pyramids.

You learned so much from those classes. There were no instructions apart from ADD. And you can create subtract(addition with 2's compliment), multiply(repeated addition) and divide(repeated subtraction) from just ADD. Things get really interesting when you learn to use register pairs for 16 bit operations. Once done you move to things like making a real time clock(using a 4 digit, 8 segment led display) or doing something useful with a stepper motor. I learned pointers by learning how the 'Program counter' works. Even to date I understand the loop/recur in Clojure well because of working JMP so often in those days.

In the practical sessions you didn't use a simulator, and had to look up opcode from a sheet. That is your first wrote the program, then looked up opcode and entered them by hand. Mind blowing experience. It almost felt like creating a life form.

The experience completes when you optimize for opcode fetches and memory r/w your program did. And learn to handle interrupts.

In the next semester you did 8086. Here you had to forget what you did in 8085 and reprogram your brain for a new model. The practical exams were on simulators though.


What university was this? I've heard IITs are pretty good.


Pretty much any major university had this in their curriculum. Really enjoyed programming the 8085 boards (kits) using a keypad and LED segmented display. The boards used to lose power suddenly during practical exams after punching dozens of instructions. At which point, one is expected to not panic and perform CPR on the board by pressing hard on the chips with your palms till the display comes back online :-)


Isn't the 486 ISA (and whole surrounding architecture really) royalty free by now? I wish we'd get cheap chinese 486 clones like the knock-off Arduinos.

Imagine paying < $10 for a 486-compatible SBC for all your retro nerd needs. Yes, I know you can emulate it on a $25 Raspberry Pi, but it's not the same.


Interesting aside - the Intel Quark line was seemingly based on the 486[1], albeit with a substantial process change (600 nm to 90 nm) and some modifications to support the Pentium ISA. So the 486 didn't just live on to be sold to industrial users as-is, it evolved and reappeared in some embedded systems running at a not too shabby 400MHz (originally the 486 ran at 25-100MHz). On a similar note, I think earlier Atom chips were largely based on the original Pentium (not Pro, not II or III) but maybe take that with a pinch of salt as I don't 100% remember where I read it :-)

[1] - https://semiaccurate.com/2013/10/28/intel-talks-little-quark


If I remember correctly, there is now a Quark part of Intel chipsets to run the ME code.


Ha, so at the heart of many of our PCs is a 486 running Minix. Retrocomputing is bigger than I thought :-)


The currently existing 486+ SBCs all list for approximately 200 GBP on eBay, unless you are lucky enough to grab one that's under valued (which I did a while back!).

The downside of these, are that they are designed to be used inside industrial equipment, typically have an ISA edge connecter, and are missing all the ribbon cables to connect them the peripherals (and power cables). So they become a DIY project, which is fun for some people, but not good for those who don't like building hardware. Additionally almost all industrial SBCs have no sound hardware on board (fixable by using an ISA backplane and another card, or via a PC/104 adapter).

The alternative is the old VIA Eden mini-ITX boards (mentioned elsewhere in this thread), if you get the right one, they are faster than a 486 but not TOO fast, AND come with SoundBlaster/Ad-Lib emulation on-board. I've got one as tiny DOS gaming PC and it works VERY well.


The support chipset required is quite extensive. There is a market for them, but in the "industrial PC" form factor and not cheap because the quantity is so small.

(If you want to boot DOS then in addition to the cpu and DRAM you need a whole BIOS and emulated keyboard, interrupt controller, disc controller, and VGA controller)


Intel attempted a GPU that was effectively a cluster of x86 cores with a massive process shrink.

https://en.wikipedia.org/wiki/Larrabee_(microarchitecture)#D...

Not quite as old as 486s, but damn close: The cores were all based on the P54C Pentium, in order execution only type processing cores.

I remember hearing about an Intel Dedicated GPU that was supposed to be all 486 cores, but my ability to Google it seems to be failing me so I suspect it was probably my conflating an IOE type cluster of cores of the Larrabee with the 486.

It appears that the Larrabee came in variants of 10 (at 65nm) 40 (at 45nm), 48 (at 32nm) cores on the dGPU.

https://www.anandtech.com/show/2580/6

In the end, Intel expected people to be able to run x86 code on these dGPUs...


It even kind of shipped in the form of Xeon Phi, without graphics though, including in the first version a precursor of AVX-512 (and in next versions subsets of AVX-512 that are not exactly the same as the ones most in use today... it's a mess...)


The chip was not really like a cluster, the memory semantics were fully coherent SSI like we're used to on x86 multicore systems.

(Possibly you meant cluster in a chip design sense, not in the distributed computing sense? In Larrabee/KNL context, clusters usualy meant racks of machines HPC style...).


Linus (Tech Tips) got his hands on a prototype Larrabee card, but wasn't able to get it running.

https://www.youtube.com/watch?v=um-1fAVU1OQ


There's a 486 open core under a BSD-ish license: https://github.com/alfikpl/ao486 I have this on an FPGA and it can run DOOM albeit a bit slowly.


tiny things with weak intel atom CPUs (same as you'd find in a cheap 7 inch tablet from 3 years ago) capable of the full i686 instruction set are not much more than $25...


Linky? I have a use case but only found much pricier units.


oddly it now seems to be out of stock, but the price is similar to an equal spec raspberry pi 4

https://www.seeedstudio.com/Rock-Pi-X-Model-B-4GB-p-4277.htm...




If I was going to play about on an architecture of my choice, I wouldn't choose the 486, I'd go for something more exotic. Perhaps this SPARC-powered kit: https://navspark.mybigcommerce.com/

A quick google indicates there are a small number of MIPS-powered Arduino-like kits out there. Looks like there's no equivalent for the SuperH, sadly.


While I know a lot of these projects try to use period components, it'd be neat to see one of the later 486's used since they're 3.3V. It would allow you to use a modern FPGA for all the glue logic without bus voltage conversion.


The S-100 bus only outputs +8V, -18V and +18V. The idea is that the board itself will convert this voltage to what the components on the board needs to operate. The newly designed board have a newer voltage regulator that outputs 5V and the optional 3.3V from the higher voltage provided by the S-100 bus. You always need to do a voltage conversion on a S-100 card.


Oh, S-100 signal voltages are at 8V, and +/- 18V?


I've been working on something like that (actually with a Pentium), but the biggest problem is finding an FPGA with enough pins to connect to the CPU, RAM, peripherals, etc. Maybe I need to use a cheaper FPGA to mux down the 64-bit-wide data bus (which this one seems to do with a CPLD). No matter how you cut it, it quickly becomes a pretty hairy design.


Oh nice. It would be really awesome to see a homebrew socket-7 or super socket-7 system. The only thing that comes to mind that's not stupid expensive would be getting a PCB manufacturer to solder a 500 or 700 pin Lattice ECP5(-5G) FPGA to a board for you (the FPGA in single units is like $60). You can use the trellis/nextpnr open source toolchain with those. You'd probably need a 6 or more layer board, which isn't the cheapest thing...

I'd been doing a M68K board with an ice40. I got some 68010's with the intention of implementing an MMU for funzies. Maybe try to boot Linux (sloooowly) on it. Got side tracked with a different project I thought would be more useful for people :)


I thought the Pentium was the start of not (publicly) documenting CPUs enough that anyone could build a computer around one?


since I can't edit the comment anymore by "bus voltage conversion" I meant signal level conversion.


I see various hobbyist cards like this one for the S100 bus, even today, I presume because the S100 bus is is not covered by any current patents, and is electrically simple and easy to build. But AFAIU, one of the downsides of its simple passive electrical nature is you will very quickly run into clock speed issues using chips from the late-80s onward to their full potential.

There were other buses available, e.g. the VME/VersaBus designed by Motorola originally for their 68K line of CPUs and later standardized. I can't help but wonder, have any other bus designs from the late 70s or 80s been revived for hobbyist purposes, or perhaps a whole new bus designed to overcome the limitations of the S-100 or similar designs?


The memories....

I started learning C on my second PC, a 486SX, then later swapped its CPU to a 486DX2 which continued to run until early 2001, serving a website and a MUD from a desk at a local ISP until its final demise.


A 486DX-50 was my high school graduation present, first non-68k non-6502 machine, my intro to the Intel world, and my first Linux machine (pre 1.0, even). I used it from 1991 to late 1997, and it was the machine that I did my first web development on, learned Python and C on, wrote my papers for my philosophy BA, wrote bad poetry on, and so on and so on.

I have never had a love for the Intel architecture but I have to admit that machine was amazing.


That computer in 1991 must have cost a fortune...Maybe $5000 with a monitor?


Nah, I believe about $2500 or $3000 CAD. 8MB RAM and 200MB hard drive.

Pretty sure it was fall 1991, there's a chance it was spring 1992? Not sure


From looking in magazines of the time I seems you got a hell of a deal, as it would have otherwise been around $6000 US:

https://books.google.com/books?id=FeIuiOQN-nEC&pg=PT125&sa=X...

https://imgur.com/a/igN4CSY

Also scroll down that page to see some of these configurations at a cost as much as $19k!


Then it must have been late 1992 when I got it, not 91 :-)


S100 bought a lot of memories of byte. It was the one used by Jerry in his chaos manor and I loved to have one at that time. Off topic I guess hence I submit another just in case others know more this use at that time than this kid then. https://news.ycombinator.com/item?id=26409803


Is there an ELI5 explanation for what is being shown here? It seems pretty fascinating even if I don’t quite understand it.


The S100 bus was the first standard microcomputer bus[1]. It was based off of a passive mainboard system, so the CPU was just another card that plugged into it. The overwhelming majority of microcomputers that shipped with CP/M (as well as many that shipped with other operating systems) were based off of the S100 bus.

While there was never a commercial S100 board with a 486 on it, this article shows how it is fairly easy to design and build one.

S100 predates the PC bus, which largely replaced it. The AT (a.k.a ISA bus) was a 16-bit version of the 8-bit PC bus. IBM tried to get everyone to switch to the MCA bus, but the high royalties they charged meant that pretty much everone stuck with the AT bus until PCI came out. In its server form of PCI-X, PCI maxed out at 64-bits and 133MHz (though 32-bits and 66MHz was what you would see in a PC), and was replaced by PCIe, which is still used today.

Graphics cards were treated specially at several points along the way, with the VL-bus, and AGP basically being ISA and PCI respectively with dedicated higher-throughput buses to avoid having to use the more expensive MCA and PCI-X when the graphics card was the sole device in the system that needed higher bandwidth.


For VL-bus many systems included 2 slots. One for a graphics card and the other for a storage controller. The VL-bus was basically a direct attachment to the 486 memory bus.

Also there was Extended ISA (EISA) which was a standard promoted by PC compatible manufacturers to compete with MCA. It added 32 bit support and bus mastering to the ISA bus. I and 16 bit ISA cards would still work in an EISA slot. It never really caught on for desktops but briefly had wide support in servers.


> pretty much everone stuck with the AT bus until PCI came out

There was also EISA which was quite popular as an alternative to MCA until PCI bedded itself in.

https://en.wikipedia.org/wiki/Extended_Industry_Standard_Arc...

I particularly enjoyed this (possibly apocryphal bit):

"when it became clear to IBM that Micro Channel was dying, IBM licensed EISA for use in a few server systems."


I own an inoperable relic which has an EISA bus, SCSI card, advanced VGA card, Colorado tape drive, Zip Drive, and a fair amount of RAM to support a 486DX-50. I ran DOS, Windows 3.11, and OS/2 2.0 on it at various times. I may have tried out Windows NT 3.something too. These components and the EISA bus itself were standard enough to be supported by that range of OS's.


That's funny - I am sure I had an issue of Computer Shopper that had all of those items circled in felt pen ...


I forgot about that. Interesting how 2 generations in a row basically followed the same pattern of commodity, server, high-speed commodity:

ISA, EISA, VLB PCI, PCI-X, AGP


Crikey, I'd forgotten about AGP, though that was specifically for graphics cards (as was VLB) rather than being general purpose.


I remember having both AGP and VLB graphics cards at one time or another. Definitely got the short end of that stick when PCI came along and became the de facto standard.

I do seem to recall for a short period of time there were some motherboards with both PCI and AGP slots for those who really needed that level of interoperability.


AGP superceded PCI for graphics. It was based on PCI and was a dedicated link that received multiple increases in speed over its lifetime. AGP, 2x, 4x, 8x. Etc. Boards with PCI and AGP were very common. You could even find ones with ISA, PCI, and AGP.


Thanks! I’m very familiar with PCish buses going back to the AT bus days, but I had never heard of the S100 bus before. I’m pretty amazed at just how versatile it is.


Appears the 80486 can be connected to the S100 bus directly given ability to read from adjustable size databus.

This means effectively an x86 style cpu can be part of a simple computer design


It's the website for the s-100 bus that the processors it talks about works with,(i.e, 80486 intel processors). It's a lot of nostalgic 1989 bus verbiage for uber geeks and engineers who make that stuff.


It's kinda amazing how many processors have been put on the bus. The guy who runs the site has built[1] a huge number of both CPU and peripheral boards. The S100 bus sure has an outsized shadow.

[1]http://www.s100computers.com/My%20System%20Index%20Page.htm


I occasionally wonder if a limited 386/486 architecture would get an advantage over current mini Atom x86 boards (e.g. Latte Panda). Would it have a smaller foot print and power requirement? Or is the economics just making it not worth it?


Intel tried this with the Quark core, which was discontinued in 2019:

Compare the Quark Core Block Diagram: https://www.intel.com/content/dam/support/us/en/documents/pr...

with that of the 486 (Figure 3-2): http://datasheets.chipdb.org/Intel/x86/486/manuals/27302101....


A lot of the Quark documentation was basically copied-pasted from the 486 one, and 486 replaced with Quark. There was some rather unusual phrasing and anachronisms as a result.


The 386 was a 1000-1500 nano meter process, and even at that scale took 1/6th of the die space used by an RTX3090 today on 8nm process.


A 386 draws almost no power, much less than an Atom. At the end of the 386's market life, which I should point out ran for 22 years, it was being used in handheld devices that ran off 1 alkaline battery for months at a time, and those had radios in them.

Obviously you get more bang from something like an Atom but I don't think the 386 had any power saving tricks to learn from it.


Maybe this is related but by the end of its "computer life" Fujitsu was paying cash for any 386 you could get them (even used) because it was part of some network card they sold.


That's wild. I assume they wanted socketed models, not the embedded QFP-100 package that they'd have to desolder?


Correct.


Hah. That was my first pc, an IBM 80486. Had a whopping 20meg hard drive, floppy, DOS and then Windows 3. WordPerfect, Foxpro, Lotus123. Was a powerhouse!


20MB is microscopic for a 486! I had an 8088 with a 10MB drive and a 386SX laptop with a 120MB 2.5" drive, and neither was particularly special!


I'd wager he meant 200MB, particularly given the software listed, my Windows folder on my Dosbox install of WFW 3.11 on its own clocks in at about 26MB (though admittedly Windows 3.0 was probably half that size)

I recall my IBM PS/1 at the time had maybe a 340MB hard drive which I quickly filled with games :)


You guys are correct. I actually meant it was an 8086 processor; before 486, right? It was a 20 meg HD and 64b ram. Was kind of a smallish case and motherboard. Maybe a micro atx I'm guessing.


8086 was 10 years before the 486.


64 bits ram? That's tiny ;)


I've got a 486 chip if anyone is looking for one :).


Now do a Z80 on Micro Channel architecture.


Let's dig up those Token Ring cards!


The website portrays those processors as historical artifacts, but joke's on it, I know of space instruments containing AMD 5X86 implementations that are being launched into space right now


Why would you write this? He's building and testing boards with those processors today.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: