A Previously Unknown Supplier For A Classic Chip

It’s common enough for integrated circuits to be available from a range of different suppliers, either as licensed clones, or as reverse-engineered proprietary silicon. In the case of a generic circuit such as a cheap op-amp it matters little whose logo adorns the plastic, but when the part in question is an application processor it assumes much more importance. In the era of the 486 and Pentium there were a host of well-known manufacturers producing those chips, so it’s a surprise decades later to find that there was another, previously unknown. That’s just what [Doc TB] has done though, finding a 486 microprocessor from Shenzhen State Micro. That’s not a brand we ever saw in our desktop computers back in the 1990s.

Analysis of a couple of these chips, a DX33 and a DX2-66, shows them to have very similar micro-architecture but surprisingly a lower power consumption suggesting a smaller fabrication process. There’s the fascinating possibility that these might have been manufactured to serve an ongoing demand for 486 processors in some as-yet-unknown Chinese industrial application, but before any retrocomputer enthusiasts get their hopes up, the chips can’t be found anywhere from Shenzhen State Micro’s successor company. So for now they’re a fascinating oddity for CPU collectors, but who knows, perhaps more information on these unusual chips will surface.

Meanwhile we’ve looked at the 486’s legacy in detail  before, even finding there could still just be 486-compatible SoCs out there.

Kernel Hack Brings Windows XP To The 486

The venerable Intel 486 was released in 1989 as the successor to the extremely popular Intel 386. It was the minimum recommended processor for Windows 98.  (Surprisingly, the Windows 95 minimum was a 386!)  But by the time XP rolled around, you needed at least a 233 MHz Pentium to install. Or at least that was the case until recently when an extremely dedicated user on MSFN named [Dietmar] showed how he hacked the XP kernel so it could run on the classic chip!

The biggest issue preventing XP from working on earlier processors is an instruction introduced on the Pentium: CMPXCHG8B. This instruction compares two 8-byte values and takes different actions depending on an equality test. It either copies the 8 bytes to a destination address or loads it into a 64-bit register. Essentially, it does what it says on the tin: it CoMPares and eXCHanGes some values. If you want to dig into the nitty-gritty details, you can check out this info on the instruction taken from the x86 datasheet.

Without getting too technical, know that this instruction is vital for performance when working with large data structures. This is because one instruction moves 8 bytes at a time, unlike the older CMPXCHG instruction, which only moves a single byte. Essentially, [Dietmar] had to find every usage of CMPXCHG8B and replace it with an equivalent series of CMPXCHG instructions.

On a side note, the once well-known and devastating Pentium F00F bug was caused by a faulty encoding of the CMPXCHG8B instruction. This allowed any user, even unprivileged users, to completely lock up a system, requiring a full reset cycle!

So [Dietmar] was successful, and now you can run the German version of Windows XP on either a real 486 or an emulated one. The installer is available on the Internet Archive and there’s a detailed video below demonstrating installing it on the 86Box virtual machine host.

Continue reading “Kernel Hack Brings Windows XP To The 486”

OLED Display Lets Vintage PC Engage Turbo Mode In Style

Back in the 486 days, it was common to see a “Turbo” button on the front panel of many PCs, which was used to toggle between the CPU’s maximum speed and a slower clock rate that was sometimes necessary for compatibility with older software. Usually an LED would light up to show you were running at this higher speed, or if your machine was very fancy, it might even have a numerical display that would show the current CPU frequency.

[Joshua Woehlke] wanted to add a similar display to his 486, but figured that with modern technology, he could do something a bit more interesting. Especially when he realized that the spot on his case where the two-digit LED display would have originally been mounted was the perfect size to hold a common 0.96″ SSD1306 OLED. From there it was just a matter of wiring it up to an Arduino and writing some code to display different graphics depending on the computer’s current CPU speed.

Just like the frequency indicators of yore, the Arduino doesn’t actually measure the CPU’s frequency, it’s simply reading the state of the Turbo LED on the front panel. When the LED is off the Arduino shows an image of a i8088 CPU on the screen to indicate the computer is running in compatibility mode, and when the LED is on, the screen shows the Cyrix Cx486 DX2 logo. When the button hasn’t been pressed in awhile, the display defaults to a star field screensaver.

Regular readers may recall we recently covered a similar project that used an Arduino to add a little flair to an era appropriate seven-segment LED display. We’d say there’s still a good deal of romanticism about computers having a big “TURBO” button you can smash whenever you feel the need for speed.

486 Gets Animated Turbo Button Thanks To Arduino

There was a point in time, excruciatingly brief, in which desktop computers often had a large “TURBO” button on their front panel. Some even featured an LED display that would indicate the current CPU frequency, providing visual conformation that your machine had leaped to a blistering 66 MHz.

The 486 that [someyob] is restoring had the Turbo button, but sadly there was just a simple LED to show whether or not it was engaged. But there was a window in the front panel where it seemed like a numerical display was intended to go, so they decided to wire up their own CPU indicator by sensing the state of the Turbo LED with an Arduino Pro Mini.

Now to modern audiences, this might seem like cheating. After all, the Arduino isn’t actually measuring the CPU speed, nor is it directly controlling it (that’s still done by the original Turbo button wiring). But the truth is, even back in the day, the CPU frequency displays faked it — they just toggled between showing two predefined frequencies depending on the state of the button. The arrangement [someyob] has come up with does the same thing, except now there’s some extra processing power in the mix, so the display can show some slick animations as it switches between 33 and 66 Mhz.

In the GitHub repository, [someyob] has provided the Arduino source code and schematics showing how the microcontroller was shoehorned into the existing front panel wiring without compromising its functionality. There’s even a brief video below that shows the display in operation.

Like the idea but don’t have a 486 laying around? Don’t worry. We’ve seen a similar panel built for modern machines that  just doesn’t look the part, it actually manages to be functional.

Continue reading “486 Gets Animated Turbo Button Thanks To Arduino”

A miniature 486 desktop PC running Lemmings

Tiny 3D Printed Gaming PC Contains Real Retro Hardware

Emulators are easy and convenient, but for some retrocomputing enthusiasts nothing comes close to running classic software on actual era-appropriate hardware. This can become a problem, though, for those into vintage PC gaming: old PCs and their monitors are notoriously large and heavy, meaning that even a modest collection will quickly fill up a decent family home. There is a solution however, as [The Eric Experiment] demonstrates in his latest video. He designed and built a 3D-printed mini PC that runs on an actual 486 processor.

An ordinary desktop motherboard would have required a rather large case to begin with, so [Eric] started his project by buying an old industrial PC board. Such a device has the processor and all main motherboard components sitting on an ISA card, which then connects to other ISA cards through a backplane. This way, a complete system with expansion cards can be made way more compact than even the sleekest desktop PCs of the time. An SD-card-to-IDE converter makes for an extremely slim hard drive replacement, while a Gotek floppy emulator allows the system to boot as if there’s actually a floppy drive present.

A small 486 tower case being assembled
Even the side panels slide in exactly like they do on real PC cases.

All of this is pretty neat to begin with, but by far the most impressive parts of the Tiny 486 project are the enclosures that [Eric] designed for the PC and its accompanying monitor. Both were modelled off real-world examples and are accurate down to the smallest details: the tilting stand that clips onto the base of the monitor for instance, or the moving latch on the faux 5.25″ floppy drive. That latch operates a cleverly hidden door that reveals the USB connector for the floppy emulator. The compulsory seven-segment LED display on the mini tower’s front panel now finally serves a useful purpose – indicating which floppy image is currently active.

Sporting an Intel 486-DX4 100 MHz processor, 32 MB of RAM, a Tseng ET4000 video card and an ESS Audiodrive for sound, the tiny 486 can run DOS or Windows 95, although performance in the latter is a bit limited due to the lack of a local-bus video card. It’s perfectly fine for most DOS games though, and a lot more practical than a full-sized desktop PC.

There are several ways to make a tiny game PC, like using PC/104 standard boards or repurposing old network equipment. The crucial part needed to turn it into a gaming machine is a proper sound card, which you can even build from scratch if needed. Thanks for the tip, [Nathan]!

Continue reading “Tiny 3D Printed Gaming PC Contains Real Retro Hardware”

It’s A 486 Computer, On A Breadboard

Ever since the 1970s, a frequent project has been to take a microprocessor and construct a computer system on a breadboard or stripboard. Usually these machines feature a familiar 8-bit processor such as a 6502 or a Z80 because of their breadboard-friendly DIP packages, but there is surprisingly little reason why some of the more recent silicon can’t be treated in the same way. [FoxTech] is leading the way on this, by making a breadboard computer using an 80486DX.

A 1990-era 32-bit desktop CPU seems unpromising territory for this application, but its architecture is surprisingly accessible. It needs a breakout board to gain access to its various lines, but beyond that it can be interfaced to in a very similar way to those earlier chips.

So far there are two videos in the series, which we’ve placed below the break. The first one introduces the project and shows the basic set-up. A 486 running NOPs may produce a pretty light show, but as he starts to show in the second video, it’s capable of more. The eventual aim is to have a simple but fully functional breadboard computer, so he’s starting with logic to decode the 32-bit bus on the 486 into the 8-bit bus he’s going to use.

It’s fascinating to learn about how the 32-bit 486 handles its interfacing and deals with four bytes at once, and we’re very much looking forward to seeing this project play out. The 486 may be on life support here in 2023, but that doesn’t mean it can’t still receive some love.

Continue reading “It’s A 486 Computer, On A Breadboard”

A smartphone-sized PCB is in a person's hand. A large blue chip package houses a 486 and the board has a SoundBlaster card and a 40 PIN Raspberry Pi Connector along one edge for attaching a Raspberry Pi Zero.

TinyLlama Is A 486 In Your Pocket

We love retrocomputing and tiny computers here at Hackaday, so it’s always nice to see projects that combine the two. [Eivind]’s TinyLlama lets you play DOS games on a board that fits in your hand.

Using the 486 SOM from the 86Duino, the TinyLlama adds an integrated Crystal Semiconductor audio chip for AdLib and SoundBlaster support. If you populate the 40 PIN Raspberry Pi connector, you can also use a Pi Zero 2 to give the system MIDI capabilities when coupled with a GY-PCM5102 I²S DAC module.

Audio has been one of the trickier things to get running on these small 486s, so its nice to see a simple, integrated solution available. [Eivind] shows the machine running DOOM (in the video below the break) and starts up Monkey Island at the end. There is a breakout board for serial and PS/2 mouse/keyboard, but he says that USB peripherals work well if you don’t want to drag your Model M out of the closet.

Looking for more projects using the 86Duino? Checkout ISA Sound Cards on 86Duino or Using an 86Duino with a Graphics Card.

Continue reading “TinyLlama Is A 486 In Your Pocket”