z386: An Open-Source 80386 Built Around Original Microcode

(nand2mario.github.io)

89 points | by wicket 6 hours ago

5 comments

  • cbdevidal 4 hours ago
    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

    • nand2mario 3 hours ago
      Doom (DOS extender games) is an easier protected mode application as it does not use complex page tables. Linux is much more complex.
    • KellyCriterion 4 hours ago
      haha, this was my first thought when I read the headline, because this "classic test" always comes up here :-))
  • KellyCriterion 4 hours ago
    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

    • geon 2 hours ago
      I think there are industrial pcs with a 486-compatible soc.

      A ton of industrial equipment are still using win 3.1.

      • bzzzt 1 hour ago
        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.
        • st_goliath 10 minutes ago
          I wonder how many of those are actually still out there. According to Wikipedia, Intel kept making replacement parts (386 and 486) until September 2007, but personally, I have never come across one in actual use. My own career in this field began with an internship in 2008. Since 2016, my day job includes working on a PLC runtime with a code base older than myself, originally written for DOS, but every industrial PC (or other x86 based embedded device) I have ever got to play around with had at the very least a Pentium class CPU in it.

          As for the Windows 3.x based industrial equipment: Some industrial devices I have worked on in the past turned out to actually be ARM based, running Linux, but the software went a long way to convincingly fake old Windows style UI or even a DOS prompt. I was once tasked to extend a UI library to reproduce Windows 98 style color gradient window borders faithfully.

          Only once have I seen an actual embedded 486SX with my own eyes. Last year, someone dragged a weirdo Siemens telephony box to the the local Hackerspace. But obviously not in active use anymore. The box itself had a design language that screamed "Star Trek: Voyager". I found a UART, it was running "On Time RTOS-32" which, according to the German Wikipedia, was developed by a German company and discontinued in 2023. It supposedly has a Windows API compatible userspace.

    • userbinator 3 hours ago
      There's likely plenty of them still in use in industrial/embedded applications.
    • bitwize 4 hours ago
      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.

      • xp84 3 hours ago
        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.
        • zozbot234 2 hours ago
          The Amiga was not character-based, it ran an accelerated framebuffer (with support for scanning out multiple resolutions and color depths on a single screen).
          • xp84 1 hour ago
            Sorry, I was generalizing the "typical" pre-1995 system one would find in commercial installations, which in general were character-based. But I'm sure the Amiga solution would have been nice and fast too, since they were pretty powerful and programmers back then didn't feel the need to bring in PhoneGap, React, or 5,280 npm packages in order to display what amounts to a form.
      • asdefghyk 42 minutes ago
        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 ?

  • UncleOxidant 3 hours ago
    Kind of surprised this only takes 18K LUTs. That's a fairly small FPGA these days.
  • mmastrac 5 hours ago
    Did the microcode disassembly find any useful backdoors to read microcode without decapping?
    • nand2mario 5 hours ago
      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.
    • NooneAtAll3 2 hours ago
      there are several iterations of 386 and only one was disassembled

      so there's still a chance