Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (Cyborg)
  • No Skin
Collapse
Brand Logo

CIRCLE WITH A DOT

  1. Home
  2. Uncategorized
  3. I'm incredibly pleased to announce that the microcode for the Intel 80386 has been decoded.

I'm incredibly pleased to announce that the microcode for the Intel 80386 has been decoded.

Scheduled Pinned Locked Moved Uncategorized
retrocomputingvintagecomputinmicrocodereverseengineer
82 Posts 22 Posters 0 Views
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • gloriouscow@oldbytes.spaceG gloriouscow@oldbytes.space

    You can find all the files, notes, decoded PLAs and such here. Everything is released to the public in the name of increasing our knowledge, improving emulation, and preserving our collective computing past.

    Link Preview Image
    x86_microcode/80386 at main · dbalsom/x86_microcode

    Microcode resources for various x86 CPUs. Contribute to dbalsom/x86_microcode development by creating an account on GitHub.

    favicon

    GitHub (github.com)

    gloriouscow@oldbytes.spaceG This user is from outside of this forum
    gloriouscow@oldbytes.spaceG This user is from outside of this forum
    gloriouscow@oldbytes.space
    wrote last edited by
    #5

    This was only possible in the first place thanks to excellent die photography by @kenshirriff

    Here's a corner of the 80386 microcode as seen under the microscope.

    Link Preview Image
    gloriouscow@oldbytes.spaceG 1 Reply Last reply
    0
    • gloriouscow@oldbytes.spaceG gloriouscow@oldbytes.space

      This was only possible in the first place thanks to excellent die photography by @kenshirriff

      Here's a corner of the 80386 microcode as seen under the microscope.

      Link Preview Image
      gloriouscow@oldbytes.spaceG This user is from outside of this forum
      gloriouscow@oldbytes.spaceG This user is from outside of this forum
      gloriouscow@oldbytes.space
      wrote last edited by
      #6

      Bits are encoded by the presence of these gates.

      Link Preview Image
      gloriouscow@oldbytes.spaceG 1 Reply Last reply
      0
      • gloriouscow@oldbytes.spaceG gloriouscow@oldbytes.space

        I'm incredibly pleased to announce that the microcode for the Intel 80386 has been decoded.

        It was an group effort by a bunch of talented people to extract and correct the physical bits, but the major work of decoding them was done by reenigne - you may know him from such incredible PC demos as 8088 MPH and Area 5150, as well as being the person who decoded the 8088 microcode previously.

        Please, check out his writeup.

        Link Preview Image
        80386 microcode disassembled « Reenigne blog

        favicon

        (www.reenigne.org)

        #retrocomputing #vintagecomputing #microcode #reverseengineering

        occult@vox.ominous.netO This user is from outside of this forum
        occult@vox.ominous.netO This user is from outside of this forum
        occult@vox.ominous.net
        wrote last edited by
        #7

        @gloriouscow Fantastic work!

        1 Reply Last reply
        0
        • gloriouscow@oldbytes.spaceG gloriouscow@oldbytes.space

          Bits are encoded by the presence of these gates.

          Link Preview Image
          gloriouscow@oldbytes.spaceG This user is from outside of this forum
          gloriouscow@oldbytes.spaceG This user is from outside of this forum
          gloriouscow@oldbytes.space
          wrote last edited by
          #8

          It's fairly easy to visually decode them. But now just do that 94,000 times.

          gloriouscow@oldbytes.spaceG colinstu@birdbutt.comC 2 Replies Last reply
          0
          • gloriouscow@oldbytes.spaceG gloriouscow@oldbytes.space

            It's fairly easy to visually decode them. But now just do that 94,000 times.

            gloriouscow@oldbytes.spaceG This user is from outside of this forum
            gloriouscow@oldbytes.spaceG This user is from outside of this forum
            gloriouscow@oldbytes.space
            wrote last edited by
            #9

            Complicating matters was that some of the areas of the photo-mosaic were out of focus.

            This made automated extraction tools fail miserably.

            Link Preview Image
            gloriouscow@oldbytes.spaceG 1 Reply Last reply
            0
            • gloriouscow@oldbytes.spaceG gloriouscow@oldbytes.space

              Complicating matters was that some of the areas of the photo-mosaic were out of focus.

              This made automated extraction tools fail miserably.

              Link Preview Image
              gloriouscow@oldbytes.spaceG This user is from outside of this forum
              gloriouscow@oldbytes.spaceG This user is from outside of this forum
              gloriouscow@oldbytes.space
              wrote last edited by
              #10

              There was previously a reference to AI, but don't panic. No rainforests were burned down. What we used were old-fashioned, brainless convolutional neural networks trained on consumer video cards - an idea Smartest Blob came up with and that I re-used for my extraction of the NEC V20 microcode.

              gloriouscow@oldbytes.spaceG wcbdata@vis.socialW thomasfuchs@hachyderm.ioT 3 Replies Last reply
              0
              • gloriouscow@oldbytes.spaceG gloriouscow@oldbytes.space

                There was previously a reference to AI, but don't panic. No rainforests were burned down. What we used were old-fashioned, brainless convolutional neural networks trained on consumer video cards - an idea Smartest Blob came up with and that I re-used for my extraction of the NEC V20 microcode.

                gloriouscow@oldbytes.spaceG This user is from outside of this forum
                gloriouscow@oldbytes.spaceG This user is from outside of this forum
                gloriouscow@oldbytes.space
                wrote last edited by
                #11

                The results were then just laboriously hand-checked by eye over weeks.

                electroly, specifically - thank you for your help.

                gloriouscow@oldbytes.spaceG 1 Reply Last reply
                0
                • gloriouscow@oldbytes.spaceG gloriouscow@oldbytes.space

                  The results were then just laboriously hand-checked by eye over weeks.

                  electroly, specifically - thank you for your help.

                  gloriouscow@oldbytes.spaceG This user is from outside of this forum
                  gloriouscow@oldbytes.spaceG This user is from outside of this forum
                  gloriouscow@oldbytes.space
                  wrote last edited by
                  #12

                  One of my early experiments in OpenCV produced an unintentional piece of Microcode Art I'm still fond of.

                  This was a result of attempting auto-segmentation using incrementing hue on the various segments. Needless to say, a lovely disaster.

                  gloriouscow@oldbytes.spaceG bitcrush_io@oldbytes.spaceB ireneista@adhd.irenes.spaceI 3 Replies Last reply
                  0
                  • gloriouscow@oldbytes.spaceG gloriouscow@oldbytes.space

                    There was previously a reference to AI, but don't panic. No rainforests were burned down. What we used were old-fashioned, brainless convolutional neural networks trained on consumer video cards - an idea Smartest Blob came up with and that I re-used for my extraction of the NEC V20 microcode.

                    wcbdata@vis.socialW This user is from outside of this forum
                    wcbdata@vis.socialW This user is from outside of this forum
                    wcbdata@vis.social
                    wrote last edited by
                    #13

                    @gloriouscow I really wish we could get folks using terms like neutral net and regression analysis again to contrast against generative/LLM offal. There are legitimate and powerful tools in this field, but they've been pumped in together with asbestos...

                    gloriouscow@oldbytes.spaceG 1 Reply Last reply
                    0
                    • wcbdata@vis.socialW wcbdata@vis.social

                      @gloriouscow I really wish we could get folks using terms like neutral net and regression analysis again to contrast against generative/LLM offal. There are legitimate and powerful tools in this field, but they've been pumped in together with asbestos...

                      gloriouscow@oldbytes.spaceG This user is from outside of this forum
                      gloriouscow@oldbytes.spaceG This user is from outside of this forum
                      gloriouscow@oldbytes.space
                      wrote last edited by
                      #14

                      @wcbdata i've already suggested he swap out 'AI' for 'neural networks', should see that change here in a bit.

                      wcbdata@vis.socialW 1 Reply Last reply
                      0
                      • gloriouscow@oldbytes.spaceG gloriouscow@oldbytes.space

                        There was previously a reference to AI, but don't panic. No rainforests were burned down. What we used were old-fashioned, brainless convolutional neural networks trained on consumer video cards - an idea Smartest Blob came up with and that I re-used for my extraction of the NEC V20 microcode.

                        thomasfuchs@hachyderm.ioT This user is from outside of this forum
                        thomasfuchs@hachyderm.ioT This user is from outside of this forum
                        thomasfuchs@hachyderm.io
                        wrote last edited by
                        #15

                        @gloriouscow oh is microcode self-similar enough and also abundant enough to be useful for this? (Or is like one guy writing all the microcode for everything?) fascinating

                        gloriouscow@oldbytes.spaceG 1 Reply Last reply
                        0
                        • gloriouscow@oldbytes.spaceG gloriouscow@oldbytes.space

                          @wcbdata i've already suggested he swap out 'AI' for 'neural networks', should see that change here in a bit.

                          wcbdata@vis.socialW This user is from outside of this forum
                          wcbdata@vis.socialW This user is from outside of this forum
                          wcbdata@vis.social
                          wrote last edited by
                          #16

                          @gloriouscow Love it! I miss that stuff - I worked with some brilliant statisticians and mathematicians back in the day...

                          1 Reply Last reply
                          0
                          • thomasfuchs@hachyderm.ioT thomasfuchs@hachyderm.io

                            @gloriouscow oh is microcode self-similar enough and also abundant enough to be useful for this? (Or is like one guy writing all the microcode for everything?) fascinating

                            gloriouscow@oldbytes.spaceG This user is from outside of this forum
                            gloriouscow@oldbytes.spaceG This user is from outside of this forum
                            gloriouscow@oldbytes.space
                            wrote last edited by
                            #17

                            @thomasfuchs The technique for extracting bits (is this a bit or not a bit) is the same, and the same technique of training a CNN to classify "bit" or "not bit" is essentially Hot Dog / Not Hot Dog, something CNNs are very good at, even when things are blurry (in fact, intentionally blurring your training data makes the CNN better)

                            Link Preview Image
                            Silicon Valley: Not Hotdog (Season 4 Episode 4 Clip) | HBO

                            Just demo it. New episodes of Silicon Valley premiere Sunday nights at 10PM. #HBO #SiliconValleyHBOSubscribe to HBO on YouTube: https://goo.gl/wtFYd7From Mi...

                            favicon

                            YouTube (www.youtube.com)

                            gloriouscow@oldbytes.spaceG 1 Reply Last reply
                            0
                            • gloriouscow@oldbytes.spaceG gloriouscow@oldbytes.space

                              @thomasfuchs The technique for extracting bits (is this a bit or not a bit) is the same, and the same technique of training a CNN to classify "bit" or "not bit" is essentially Hot Dog / Not Hot Dog, something CNNs are very good at, even when things are blurry (in fact, intentionally blurring your training data makes the CNN better)

                              Link Preview Image
                              Silicon Valley: Not Hotdog (Season 4 Episode 4 Clip) | HBO

                              Just demo it. New episodes of Silicon Valley premiere Sunday nights at 10PM. #HBO #SiliconValleyHBOSubscribe to HBO on YouTube: https://goo.gl/wtFYd7From Mi...

                              favicon

                              YouTube (www.youtube.com)

                              gloriouscow@oldbytes.spaceG This user is from outside of this forum
                              gloriouscow@oldbytes.spaceG This user is from outside of this forum
                              gloriouscow@oldbytes.space
                              wrote last edited by
                              #18

                              @thomasfuchs Once you have the bits in a two-dimensional bitmap, you have to extract them into words, figure out the fields within each word, a process that on the 80386 was probably actually harder than getting the bits out in the first place.

                              We used a lot of Python scripts to permute the bits in different ways and see if various patterns emerged that would delineate field lines.

                              For the 8088 and V20 we were very fortunate as the lawsuits between intel and NEC ended up with the publication in the public record of the microcode word layout for both chips. No such luck with the 386!

                              gloriouscow@oldbytes.spaceG 1 Reply Last reply
                              0
                              • gloriouscow@oldbytes.spaceG gloriouscow@oldbytes.space

                                @thomasfuchs Once you have the bits in a two-dimensional bitmap, you have to extract them into words, figure out the fields within each word, a process that on the 80386 was probably actually harder than getting the bits out in the first place.

                                We used a lot of Python scripts to permute the bits in different ways and see if various patterns emerged that would delineate field lines.

                                For the 8088 and V20 we were very fortunate as the lawsuits between intel and NEC ended up with the publication in the public record of the microcode word layout for both chips. No such luck with the 386!

                                gloriouscow@oldbytes.spaceG This user is from outside of this forum
                                gloriouscow@oldbytes.spaceG This user is from outside of this forum
                                gloriouscow@oldbytes.space
                                wrote last edited by
                                #19

                                @thomasfuchs The same CNN process was used to extract the multi-level microcode for the 8087 - the process of decoding that is still on-going.

                                That chip is insane and @kenshirriff is about our only hope for ever decoding how it works. It has microcode, but there is far less separation between discrete logic and the microcode engine than on conventional CPUs. It's like the roots have grown into all the plumbing, and requites laborious circuit-tracing to understand what the much of the microcode even does.

                                You can see the extracted 8087 microcode here. No mistakes were ever found or reported:

                                oh, i actually see someone's opened two issues. i must have missed the email lol

                                Microcode Deep-Zoom Viewer

                                favicon

                                (8087.martypc.net)

                                bitcrush_io@oldbytes.spaceB 1 Reply Last reply
                                0
                                • stefano@mastodon.bsd.cafeS stefano@mastodon.bsd.cafe shared this topic
                                • gloriouscow@oldbytes.spaceG gloriouscow@oldbytes.space

                                  One of my early experiments in OpenCV produced an unintentional piece of Microcode Art I'm still fond of.

                                  This was a result of attempting auto-segmentation using incrementing hue on the various segments. Needless to say, a lovely disaster.

                                  gloriouscow@oldbytes.spaceG This user is from outside of this forum
                                  gloriouscow@oldbytes.spaceG This user is from outside of this forum
                                  gloriouscow@oldbytes.space
                                  wrote last edited by
                                  #20

                                  Just an addendum - we'd love to do the same for the 80286, to complete the early Intel trifecta.

                                  The main reason that the 386 was done first is that Intel used an implant ROM on the 286 for some reason we can't fathom.

                                  An implant ROM uses invisible doping to create the microcode bit gates. You can take pictures of it under a microscope all you want, you can't read shit.

                                  gloriouscow@oldbytes.spaceG 1 Reply Last reply
                                  0
                                  • gloriouscow@oldbytes.spaceG gloriouscow@oldbytes.space

                                    Just an addendum - we'd love to do the same for the 80286, to complete the early Intel trifecta.

                                    The main reason that the 386 was done first is that Intel used an implant ROM on the 286 for some reason we can't fathom.

                                    An implant ROM uses invisible doping to create the microcode bit gates. You can take pictures of it under a microscope all you want, you can't read shit.

                                    gloriouscow@oldbytes.spaceG This user is from outside of this forum
                                    gloriouscow@oldbytes.spaceG This user is from outside of this forum
                                    gloriouscow@oldbytes.space
                                    wrote last edited by
                                    #21

                                    Here's a high-magnification view of the 286 microcode implant ROM done by the talented @infosecdj , whom you should follow if you love sexy silicon photographs.

                                    He laboriously removed the metal layer above this to hopefully reveal the bits below.

                                    Can you see 0's and 1's here? I can't. I can't even train a neural network because you have to feed it some pre-classified bits and I can't classify anything here.

                                    gloriouscow@oldbytes.spaceG 1 Reply Last reply
                                    0
                                    • gloriouscow@oldbytes.spaceG gloriouscow@oldbytes.space

                                      Here's a high-magnification view of the 286 microcode implant ROM done by the talented @infosecdj , whom you should follow if you love sexy silicon photographs.

                                      He laboriously removed the metal layer above this to hopefully reveal the bits below.

                                      Can you see 0's and 1's here? I can't. I can't even train a neural network because you have to feed it some pre-classified bits and I can't classify anything here.

                                      gloriouscow@oldbytes.spaceG This user is from outside of this forum
                                      gloriouscow@oldbytes.spaceG This user is from outside of this forum
                                      gloriouscow@oldbytes.space
                                      wrote last edited by
                                      #22

                                      There is a way to extract the contents of an implant ROM. The doping that creates the gates means that you can etch the silicon in a way that the doped areas will stand out.

                                      The acids involved in this process are some of the nastiest chemicals on the planet. Stuff like hydrofluoric acid.

                                      Link Preview Image
                                      Hydrofluoric acid - Wikipedia

                                      favicon

                                      (en.wikipedia.org)

                                      Oh, you spilled it on yourself? no big deal. It's just going to dissolve your bones.

                                      gloriouscow@oldbytes.spaceG dtl@8bitorbust.infoD infosecdj@infosec.exchangeI azonenberg@ioc.exchangeA ldcd@social.treehouse.systemsL 5 Replies Last reply
                                      0
                                      • gloriouscow@oldbytes.spaceG gloriouscow@oldbytes.space

                                        There is a way to extract the contents of an implant ROM. The doping that creates the gates means that you can etch the silicon in a way that the doped areas will stand out.

                                        The acids involved in this process are some of the nastiest chemicals on the planet. Stuff like hydrofluoric acid.

                                        Link Preview Image
                                        Hydrofluoric acid - Wikipedia

                                        favicon

                                        (en.wikipedia.org)

                                        Oh, you spilled it on yourself? no big deal. It's just going to dissolve your bones.

                                        gloriouscow@oldbytes.spaceG This user is from outside of this forum
                                        gloriouscow@oldbytes.spaceG This user is from outside of this forum
                                        gloriouscow@oldbytes.space
                                        wrote last edited by
                                        #23

                                        There are companies that would do this for us. They would also charge us six figures to do so. We're just hobbyists. We ain't got that sort of money. Nobody's gonna drop that kind of cash just so that future generations can run Commander Keen slightly more accurately.

                                        There are only a handful of people on the planet that are set up to do this as a hobby, and unfortunately most of them are retired from the art.

                                        If you know anyone who can do implant ROM staining and is willing to be compensated for their time, effort, and materials, please get in touch. We have hundreds of 286's (seriously). We are willing to send them anywhere on the globe.

                                        datenwolf@chaos.socialD gloriouscow@oldbytes.spaceG 2 Replies Last reply
                                        0
                                        • gloriouscow@oldbytes.spaceG gloriouscow@oldbytes.space

                                          There is a way to extract the contents of an implant ROM. The doping that creates the gates means that you can etch the silicon in a way that the doped areas will stand out.

                                          The acids involved in this process are some of the nastiest chemicals on the planet. Stuff like hydrofluoric acid.

                                          Link Preview Image
                                          Hydrofluoric acid - Wikipedia

                                          favicon

                                          (en.wikipedia.org)

                                          Oh, you spilled it on yourself? no big deal. It's just going to dissolve your bones.

                                          dtl@8bitorbust.infoD This user is from outside of this forum
                                          dtl@8bitorbust.infoD This user is from outside of this forum
                                          dtl@8bitorbust.info
                                          wrote last edited by
                                          #24

                                          @gloriouscow it'll turn any calcium in your cells to calcium fluoride which is insoluble, so all your cells stop working long before your bones start fizzing.

                                          I've worked with it, had a solution of it, nitric and solvent blow up on the other side of a fume hood sash, and now swear off it entirely.

                                          Give me nice safe Hg instead. That I can work with.

                                          1 Reply Last reply
                                          0
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          • Login

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Categories
                                          • Recent
                                          • Tags
                                          • Popular
                                          • World
                                          • Users
                                          • Groups