If modern x86 microcode ever gets sufficiently understood and reverse engineered I bet someone gets a PLAYDOOM instruction working. (I know it's been at least partially implemented on FPGAs)
No contest really: RISCV is a much better ISA, VexRISC is a hyper-optimised implementation of it (for FPGAs), and it's not hindered by trying to be microcode compatible.
The roughly equivalent VexRISC configuration (full with MMU) is only 2736 LUTs, running at 124 Mhz (on Cyclone V, which I'm pretty sure is the same arch)
Sadly, without an accompanying FPGA-implementation of an FPU it's much less useful for productivity work/research, i.e. outside of 08/15 gaming and application fare. Same with Ao486, which only implements a 486SX.
I think there are two reasons we haven’t seen an FPGA FPU yet, especially for MiSTer.
First, FPUs are complex and FPGA support for floating point is limited. There's DSP blocks for integer additions and multiplications. But very little FP support.
Second, the CPU itself may not be fast enough for an FPU to matter much. Quake wants at least a 75 MHz Pentium, while ao486-MiSTer is closer to a 486-66. So we probably need both a faster CPU design and a faster FPGA. Maybe Altera's new Agilex 5 will be useful here.
Not really. The 386 does not have an interface to read the ROM direclty. Instead, it uses the Built-In Self-Test (BIST) to verify the ROM's contents. It's basically a checksum-like mechanism that verify the integrity of the CROM.
Question:
Are there today any 386 instances running somewhere in the basement to do some productive stuff, maybe processing only some controller data once a day?
I remember the link some month ago where that one small shop ran completely on an old Amiga (?IIRC, not sure, was linked here)
Around 98/99 I was involved in a small IT-management company serving SME around the region, we had a client producing distinct metal objects with a big press; this got feeded once a day with a 5.25 floppy from another machine with production data - and it was still in use while we had already ethernet/USB/3.5 floppies etc. :-D
A few years ago there was a story where the single Amiga that ran an entire US school district's HVAC was replaced with a system costing like 1.5 million dollars, after 30 years of dutiful service.
I can't think of examples offhand but you bet your ass there are donut shops and auto body repair services running 386s to do POS, inventory, and the like. Some of them may be driving terminals off Xenix.
Funny thing about this is that the character-based systems of that era, whether PC-type or host+terminal type, were most of the time so much faster and more responsive than the laggy, over-animated, touchscreen trash they always replace them with in order to get big screens and prettier graphics.
You missed a fun part of that story! The person who programmed it was a kid in the district at the time. They continued to hire him to come back and maintain it any time they had issues, which apparently was fairly rare.
Of course they tested Doom :-D
They might also run Linux kernel 3.7, that supported i386. Gray386linux is still maintained, and runs a patched 3.7 kernel.
https://github.com/marmolak/gray386linux
Doom (DOS extender games) is an easier protected mode application as it does not use complex page tables. Linux is much more complex.
I have faith in you!!
If modern x86 microcode ever gets sufficiently understood and reverse engineered I bet someone gets a PLAYDOOM instruction working. (I know it's been at least partially implemented on FPGAs)
haha, this was my first thought when I read the headline, because this "classic test" always comes up here :-))
Kind of surprised this only takes 18K LUTs. That's a fairly small FPGA these days.
How does it compare to something like VexRisc [0] with respect to its capabilities? I know having x86 support is a metric all by itself.
[0] https://github.com/spinalhdl/vexriscv
No contest really: RISCV is a much better ISA, VexRISC is a hyper-optimised implementation of it (for FPGAs), and it's not hindered by trying to be microcode compatible.
The roughly equivalent VexRISC configuration (full with MMU) is only 2736 LUTs, running at 124 Mhz (on Cyclone V, which I'm pretty sure is the same arch)
Sadly, without an accompanying FPGA-implementation of an FPU it's much less useful for productivity work/research, i.e. outside of 08/15 gaming and application fare. Same with Ao486, which only implements a 486SX.
I think there are two reasons we haven’t seen an FPGA FPU yet, especially for MiSTer.
First, FPUs are complex and FPGA support for floating point is limited. There's DSP blocks for integer additions and multiplications. But very little FP support.
Second, the CPU itself may not be fast enough for an FPU to matter much. Quake wants at least a 75 MHz Pentium, while ao486-MiSTer is closer to a 486-66. So we probably need both a faster CPU design and a faster FPGA. Maybe Altera's new Agilex 5 will be useful here.
Did the microcode disassembly find any useful backdoors to read microcode without decapping?
Not really. The 386 does not have an interface to read the ROM direclty. Instead, it uses the Built-In Self-Test (BIST) to verify the ROM's contents. It's basically a checksum-like mechanism that verify the integrity of the CROM.
there are several iterations of 386 and only one was disassembled
so there's still a chance
Question: Are there today any 386 instances running somewhere in the basement to do some productive stuff, maybe processing only some controller data once a day?
I remember the link some month ago where that one small shop ran completely on an old Amiga (?IIRC, not sure, was linked here)
Around 98/99 I was involved in a small IT-management company serving SME around the region, we had a client producing distinct metal objects with a big press; this got feeded once a day with a 5.25 floppy from another machine with production data - and it was still in use while we had already ethernet/USB/3.5 floppies etc. :-D
I think there are industrial pcs with a 486-compatible soc.
A ton of industrial equipment are still using win 3.1.
Consequence of the 'if it works, why mess with it?' mindset. It will become a problem when those boards give out and spares are gone.
2 replies →
No. That’s why companies like Vortex are still in business. There’s even a company producing new Win98 machines for this reason.
There's likely plenty of them still in use in industrial/embedded applications.
A few years ago there was a story where the single Amiga that ran an entire US school district's HVAC was replaced with a system costing like 1.5 million dollars, after 30 years of dutiful service.
I can't think of examples offhand but you bet your ass there are donut shops and auto body repair services running 386s to do POS, inventory, and the like. Some of them may be driving terminals off Xenix.
Funny thing about this is that the character-based systems of that era, whether PC-type or host+terminal type, were most of the time so much faster and more responsive than the laggy, over-animated, touchscreen trash they always replace them with in order to get big screens and prettier graphics.
2 replies →
RE "....a system costing like 1.5 million dollars, after 30 years of dutiful service....."
I immediately wondered ... how long the new system would last or be used .... and how long it would be problem free ?
1 reply →
You missed a fun part of that story! The person who programmed it was a kid in the district at the time. They continued to hire him to come back and maintain it any time they had issues, which apparently was fairly rare.
1 reply →
Related ongoing thread:
80386 Microcode Disassembled - https://news.ycombinator.com/item?id=48247004 - May 2026 (42 comments)
Related:
80386 Microcode Disassembled
https://news.ycombinator.com/item?id=48247004