80386DX ISA single board microcomputer
alexandrugroza.ro
alexandrugroza.ro
Congrats to Alexandru for hitting this out of the park.
Today, a Pi0W could emulate anything up to a low end 486, Pi0-2W/CM3 could do about 486DX-100/low end Pentium.
https://en.m.wikipedia.org/wiki/List_of_former_IA-32_compati...
Not sure if the AMD Geode GX/LX series[2] counts, since they IIRC have an external support chip. Some years back I used to work with router boards and industrial PCs that used them. I still have an industrial PC sitting on a shelf with an Eurocard[3] sized SBC and the ISA bus connected to a DIN41612[4] back plane.
The Geode implement a large subset of the i586 ISA tough (the LX also have an AES extension), but some other instructions are missing. I'm also not sure if they still make them any more, but given how many industrial products they're in, I'd bet there are warehouses full of them somewhere, until the last support contract expires.
[1] https://en.wikipedia.org/wiki/Vortex86
[2] https://en.wikipedia.org/wiki/AMD_Geode#Geode_LX
[3] https://en.wikipedia.org/wiki/Eurocard_(printed_circuit_boar...
[4] https://de.wikipedia.org/wiki/Datei:DIN41612-c-federleiste-c...
(aside, the manager / senior engineer there was quite forward thinking; the whole stack was Python before it was cool, and there was a proto-AJAX front end that only worked in IE because the other browsers didn't support it yet... dashboard that was super nice. Met some really smart people there).
In my teenage years the PCs my brothers and I had access to were two 386DX40s each with 8MB of RAM and several hundred MBs of hard disk space (can't remember exactly, but pretty sure less than a GB).
We really loved Blizzard's Warcraft II, which despite having a minimum requirement of 486 CPU, was able to run on the 386DX40s, albeit a bit slower than intended.
Since we had two PCs we wanted to play together, but only had a parallel cable. I don't know why it was so hard for us to get hold of a serial cable, but the point is we only had the parallel one and Warcraft II would only be able to run over serial cables, not parallel ones.
I eventually worked out a way though. The 386DX40s were actually also capable of running Windows 95 which had a feature where you could "network" two PCs over a parallel cable. I then ran IPX/SPX over that network which allowed us to play Warcraft II over it.
The gameplay was pretty slow, but as I recall it was very reliable and we played quite a bit on this setup. Eventually we got a couple of BNC network cards and cables for a much more conventional setup.
It does make me think though about how I might have discovered such a thing at that point in time.
I don't think I even had internet at home then, I never used things like a BBS and later I was never big into forums either. So the only way I really learnt things was either through fiddling (which is how I found out about the parallel cable networking) or through word of mouth.
It also might not have occurred to me yet how to find answers on the internet and besides, there was no Google back then.
There also wasn't any local community I was aware of that was into these kinds of things. So I only learnt very limited amounts.
I guess I could have tried computing magazines which may also have helped, but I didn't have any real money then, and it's also possible that the options were very slim in South Africa anyhow.
I vividly remember loving a song that was playing on a store’s radio and then standing there for half an hour until the spokesman eventually listed all songs he had played. I did my best to identify and memorize the author, so I could later look them up on a music store.
Here are some offline methods other people used to get such information:
1. magazines and "zines"
2. books
3. word-of-mouth (as you said)
4. clubs or meet-ups
Online methods that pre-date google:
1. newsgroups (usenet)
2. yahoo groups
3. bbses
4. forums
5. msdn
6. other search engines, even ones that used categories like yahoo were sometimes effective. It just took longer to search to find exactly what you wanted
7. manufacturer websites. for example if you need the pin settings for a WD MFM or RLL disk drive, go to the WD website and look it up.
---
It wasn't as bad as people think. It just took a long more time to find.
Even today, it's probably easier to find detailed, accurate technical documentation for OpenVMS and z/OS — where developers can't just be expected to "Google it" — than it is for Windows, Linux, or Apple OSes.
Moreover, pre-Internet, I never encountered a scenario where important documentation was only available in video form. At worst, you'd very rarely see consumer products bundled with a videocassette for users who couldn't be bothered to RTFM.
Sharing information is certainly easier today, as magazines, user group memberships, long-distance BBS calls, and in-person conferences present a far more significant barrier to entry than the Web.
The trend seems to be reversing, however, as more and more information once available over the Web now seems to be siloed in systems like Facebook and Discord that are neither searchable via Google nor regularly archived by the Internet Archive.
What I wouldn't give for a "Usenet 2.0", i.e., a widely-used, persistent, open, distributed discussion system to reverse this trend.
WC2 is still my favorite of the bunch and it's joy to have a game with old friends from time to time. I also play WC1 in dosbox from time to time.
I still have many fond memories of playing WC2 with friends across town via modem to modem. We were lucky that our dads were gaming friends that often played WC2 together over modem so we quickly fell into the same habits.
But after having played SC2, I found that I don't really have the patience any more for the the primitive control options of Warcraft II.
Command & Conquer 3 had spoiled me with its intricately refined control scheme.
In terms of ratio of price/performance in the budget category, it would probably be analogous to a zen3 based $175 ryzen today installed on a $150 motherboard.
https://dependency-injection.com/the-slowest-486-vs-fastest-...
I have old 1994 catalogs listing AMD 386DX40 + motherboard (128KB cache) combo at a price point of three 1MB simm sticks, or one Intel 486DX25 processor, or one VLB graphic card, or one 14" VGA mono monitor :) 386SX with motherboard was 2/3 of that. I build whole 386 computer at the time spending pizza money on it (386DX40 + bunch of older used components).
If you really wanted to compare it to today it would be more of a $40 board + $50 CPU situation while everyone buys $150 boards for their $200 CPUs.
The first being that at the time, if one carefully selected the motherboard it was possible to overclock the 486SX-20's to 40Mhz and have a rock solid system. The second was the VLB was starting to be a thing. A 486 with a VLB graphics card was considerably faster than anything I would have been getting on the 386. And of course it was pretty clear that faster 486's could be plugged in, rather than requiring a motherboard upgrade. So IIRC, it was like an extra 15% difference in price to get a machine that was well over 2x faster.
So, I saved my pennies and borrowed some from my parents and got the 486SX. It was rock solid for the next couple years until I managed to get my hands on a DX2. That was also my first overclocking experience and by far the largest increase I've ever managed. That machine is also probably the fastest booting x86, I've ever owned because it was running MRBIOS. The boot time to DOS was entirely limited by the HD spin-up time, and with a much later DX4-100 upgrade was one of my longest running linux firewall/network servers i've ever used until it died in the mid 2000's in a heat event.
(well maybe the abit bp6 counts...)
Start of 1994 oem component prices:
386SX40, 0 cache motherboard ~$70 (mainly due to super cheap mobo)
386DX40, 128Kb cache motherboard ~$140
1MB 30pin simm ~$40
512KB SVGA ~$35
486SX20 CPU ~$150
486 VLB motherboard ~$150
486DX33, VLB motherboard ~$450
486DX2/66, VLB motherboard ~$650
486DX2/66, PCI motherboard ~$850
4MB 72pin simm ~$170
1MB ET4000/S3C805/CL5428 VLB card ~$150
2MV VLB card with 2D windows acceleration ~$300
Jump from 386 to the cheapest 486 was x2 the cost of main components, ~$200-300.the vast majority of problems back then was the power supply and the vast majority of the issues with power supplies was burned out capacitors - easily fixable.
for some bizaar reason one memory that also sticks out was the painful compatibility issues of putting seagate hard disks together with conner hard disks (IDE cables) also SCSI was a pita with terminators not working (resistors at the end of the scsi cable).
I built my first PC 386SX (I think it was only a 33MHz - complete with a TURBO button!! :o) ) with bits that other engineers had thrown away - literally, outside they had a skip(dumpster) with 386 motherboards and other stuff they deemed unfixable that I had to keep going through.
everyone was scared of opening monitors - using long screw drivers to ground the tube made them (mostly) safe. I also had to fix a b/w (or technically black/ orange) CGA monitor to go with it. i still managed to get windows running on it.
Everyone were correct about being afraid of opening CRT monitors. Repairing them is a whole other domain than PC electronics. A CRT ZAP from the cathode ray components can kill. That is not a place one should poke around trying to find solutions.
That machine eventually lived and functioned perfectly for quite a few more years (ended up just needing a new HDD) until finally dying.
Off-line SMPS are far more dangerous because their main caps actually contain 100-1000x more energy than a charged CRT tube. And unlike the aquadag on a tube these are very low impedance as well.
Was that why older/cheaper CRTs just turned off, but the more expensive and newer ones made kind of a "thunk" noise after the screen turned off?
Joe looking up from the schematic: "John, where is the high voltage?"
John knows. Points his finger at the set ... and touch! I heard the zap and saw John and his stool tilt backwards. Flat on the floor.
He was somewhat pale but otherwise ok.
Two times every day I duck under an electric gate that's fed by a 10kV (might be higher) low-impedance charger. Been doing it this way for years.
Then a few days ago, ducking under it as usual, I happened to be on a slightly higher part of the ground and my back touched it as I was wearing wet, muddy boots. And I was instantly reminded why the horses have learned to not get too close to the fence :-)
Maybe I'm lucky that I didn't grow up in a rural area :-)
Managed to get one boy out the house without him doing it (that I know of!). Hope the younger one is at least as smart!
Lol. I repaired them while running/being on and made them shine again!
Without having a real clue, just looking into them, and turning things with improvised tools this way and that way, until it worked.
Thereby getting some clue about how they worked, and were fixable :-)
Understatement.
Props on going for a full 32MB of RAM. No 16650 UART though? I'd add that.
Overall, congratulations!
He did do his own 4MB SIMMs, so...
https://alexandrugroza.ro/microelectronics/system-design/4mx...
Impossibly hard, though clearly not for everyone. What an incredible effort.
I wonder, did he design the ISA bus by himself or did he use an existing one?
His own [1]. Many more projects by him [2]. Truly amazing.
[1] https://alexandrugroza.ro/microelectronics/system-design/isa...
The idea of being able to hand-assemble a 386DX SBC, ISA backplane and Alexandru's other ISA cards is incredibly attractive to me - I find hand soldering to be entrancing in the same way some describe knitting.
https://alexandrugroza.ro/microelectronics/system-design/4mx...
Is there a good reason that most XT/AT era computers had no volume control for their PC speaker? I always wondered. My dad's XT had an incredibly loud speaker, I always felt bad playing Accolades Test Drive on it. When I finally bought my own XT I was very happy with the fact the speaker was a little less loud
It does not even have the ability to modulate its amplitude, i.e. its voltage level is either "full on" or "full off" and tones are usually played by doing that, for example, 2000 times a second to get a 2kHz square wave tone. There seem to be some (likely rather PC model specific) tricks to toggle it quickly enough to get some in-between waveforms[1], but overall there are no "volume" levels.
While it's likely not very hard to have a circuit to manually reduce the overall amplitude[2], by the time this really became commonly desirable enough we probably all had sound cards anyway, if we wanted to play anything more prolonged than the system beep on it.
[1] By means of inertia, the mechanical kind or the electromagnetic kind.
[2] Or even in software, but nothing would support that.
You'll see a shift to Adlib/SB audio start around 1987-1988, and by 1991 they were no longer niche. PC speaker support started to wane, but didn't entirely go away until Windows 95.
How do I remember this? I ran a BBS in the 90s, and my family was one of the early adopters of sound cards back in 1987 (Creative Music System, later rebranded to Game Blaster before Creative Labs came out with the Adlib-compatible Sound Blaster) and we ended up going through a few of the different cards over the years across multiple PCs.
This is not the exact model, but you can see the volume control here:
That brings a huge grin to my face. I had one of those, precisely of that vintage, which was my first VGA monitor of any type. The only thing different would be that it was 120V/60 Hz.
It lingered on as a console monitor for many years, and still worked when I finally took it to the recycler a few years ago. In its final years, it didn't get along with some graphics cards or BIOSes since it was purely 640x480 VGA and nothing else, and DDC didn't exist when it was built.
The Pentium was when Intel started to get too secretive, I think; there's relatively little of the low-level information that's needed to create hardware like this compared to previous CPUs. I believe modern PC designs are all entirely based on a reference design from Intel so if you could get access to one, it would be possible to make your own motherboard, but signal integrity and such are going to make the PCB layout much more difficult. That said, there are plenty of laptop schematics out there... and (although a group effort) some Chinese managed to make a custom motherboard replacement for a Thinkpad: https://news.ycombinator.com/item?id=15274644
I suspect different people live in different periods. I’ve known people who always dwell on the past, those who are preoccupied with the future and those who are in the present and not overthink too much in either direction.
I dislike the premise of your question though. There's no reason it need to be economically useful. People can just do things thy love and enjoy.
On top of that, this question is like asking why learn finite automata, why not just jump straight to Turing machines and trying to solve P=?NP. No, that's nonsense obviously and you gotta walk before you can run.
Yes I completely agree that people should do what they enjoy - it’s just that every now and then I see this completely amazing undertaking with absolutely no extrinsic value and I wonder. It’s all a very personal vantage point of course.
I know, I've looked into doing it and this is mind-blowing but they're relative terms and it depends on what you compare it to. This is "walking" compared to bringing up a Ryzen machine.
> with absolutely no extrinsic value
Why should it? And how do you know it doesn't and they just haven't documented that?
https://en.wikipedia.org/wiki/Weitek
and
[1] https://old.hotchips.org/wp-content/uploads/hc_archives/hc02...
The i486+i860 combo I played with ended up being not particularly interesting. By the time it showed up, Pentium was eminent so the i486 was old news and the i860 was a huge pain in the ass to get anything like promised performance out of.
Are there any Transputer based systems still in use?
Like I said, ST Micro picked up the Transputer line via acquisition. They morphed it into more of an embedded product, and targeted things like set-top boxed. Pretty sure it was the ST20 line. Unfortunately, a very quick look at the web site makes it look like ST did what everyone else in the embedded world seems to be devolving to: everything is an ARM. So...there are probably descendants of Transputer still chugging along out there, but doesn't look like it has a future.
I'm not getting into the whole controversial deal with whether the 486SX actually just had the FPU disabled, and what the 487 actually was, because there seems to be a lot of misconception around that that I don't want to inadvertently repeat: http://www.os2museum.com/wp/lies-damn-lies-and-wikipedia/
Then in the 486, the bus was always 32-bit (at least from Intel. I have a faint memory of Cyrix 486SLCs with a 16bit bus), and now the SX-DX indicated the presence of an integrated FPU instead.
Bonus: the 80487 was not just an FPU. It was a full 486DX which just disabled the main CPU and did all the work, and of course had an FPU.
Thank you! I knew all the difference (the same as 8088 vs. 8086) but never knew why those names were used. I love these tidbits of history.
As a 486DX owner (IBM PC compatible AST Advantage), I was aware of the lower price point 486SX chip, and the difference was that the latter did not have hardware support for floating point calculations. In marketing jargon, the 486DX had an "integrated math co-processor."
I was also aware of the previous generation also using DX/SX designations, and until recently, assumed that the SX designation also meant a lack of a math co-processor, when instead, it simply meant a 16-bit data bus, compared to the 32bit data bus of the DX chip, and that neither DX or SX variant of the 386 had dedicated hardware for floating point calculations.
No one is good at naming things in our industry.
BTW can someone clarify what's the benefits of building the computer as an ISA board?
Awesome project, but a little too expensive for me sadly :(
I vividly remember thinking how freaky it must be to have a PC that tests 32MB at boot (and how long it must take), and I think that was even during Pentium times already, not sure... my 486 had 8MB while many still had 4MB.
The segments were 64K, but the base address of each individual segment was defined in a descriptor table and could point to anywhere within 24-bit addressable memory space on the 286 and 32-bit on the 386.
So the 286 was limited to 16 MB of ram in 16-bit protected mode. The 386 not so.
Incidentally, I had a 286 that was happy to use all the 4 MB of memory it had when running under Windows 3.1.
I remember using Turbo Pascal for Windows, and being amazed that I could allocate more than 640KB — albeit in 64K segments.
Is there any Win 3.1 app which can use so much RAM ?
Maybe someone will start a new software project targeting the platform. That would be the second most interesting project.With 4 MiB I was able to try X11, but not use it in practice. 32 MiB would have been incredible.