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.
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 :-)
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)
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.
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...).
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...
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.
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 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?
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.
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
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.
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.
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.
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.
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?
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.
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.
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!
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.
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
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.