{"id":181741,"date":"2026-05-26T02:49:06","date_gmt":"2026-05-26T00:49:06","guid":{"rendered":"https:\/\/prohoster.info\/blog\/novosti-interneta\/entuziasty-dizassemblirovali-mikrokod-i386-i-sozdali-otkrytyj-cpu-z386"},"modified":"2026-05-26T02:49:06","modified_gmt":"2026-05-26T00:49:06","slug":"entuziasty-dizassemblirovali-mikrokod-i386-i-sozdali-otkrytyj-cpu-z386","status":"publish","type":"post","link":"https:\/\/prohoster.info\/en\/blog\/news\/entuziasty-dizassemblirovali-mikrokod-i386-i-sozdali-otkrytyj-cpu-z386","title":{"rendered":"Enthusiasts disassembled the i386 microcode and created an open CPU z386","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><img decoding=\"async\" src=\"\/wp-content\/uploads\/2026\/05\/495040ba8dffef375f674e59965a66da.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><noindex>      <noindex><\/p>\n<p>Enthusiasts <a rel=\"nofollow\" href=\"https:\/\/www.reenigne.org\/blog\/80386-microcode-disassembled\">managed to<\/a> successfully extracted and disassembled the microcode of the Intel 80386 processor, which was considered a 'black box' due to the lack of documentation. The binary image of the microcode was recreated with the help of AI based on high-resolution photos of the chip, and the operational logic was analyzed through tracing the connections on the chip. Gradually, the structure of the micro-operations (\u03bc-ops), fields, order of execution, and instruction end markers were determined. Project developments <a rel=\"nofollow\" href=\"https:\/\/github.com\/reenigne\/x86_microcode\/tree\/main\/80386\">has been published<\/a> are available on GitHub as public domain.<\/p>\n<p><\/noindex><\/noindex><br \/>\n<noindex><\/p>\n<p>It was found that in the 80386 CPU, each instruction is fully executed through microcode, while in the 8086 and modern processors, some instructions are processed directly. Furthermore, unlike the 8086 processors, in the 80386, the microcode does not implement algorithms directly, but mainly configures hardware accelerators (multiplier, divider, <a rel=\"nofollow\" href=\"https:\/\/ru.wikipedia.org\/wiki\/Barrel_shifter\">fast shift<\/a>, PTU (Protection Test Unit)).<\/p>\n<p><\/noindex><\/p>\n<p>During the research, a possible security issue was also discovered related to the processing of the IO permission bitmap: when performing a 4-byte access to ports, access rights were only checked for the first 3 bytes, and access to the 4th byte was not checked, which theoretically allowed access to hardware registers that should have been prohibited.<\/p>\n<p><noindex><\/p>\n<p>Based on the published microcode <a rel=\"nofollow\" href=\"https:\/\/nand2mario.github.io\/posts\/2026\/z386\">an open<\/a> CPU <a rel=\"nofollow\" href=\"https:\/\/github.com\/nand2mario\/z386\">z386<\/a>, implemented in SystemVerilog and running on FPGA. Instead of implementing each instruction as a separate <a rel=\"nofollow\" href=\"https:\/\/ru.wikipedia.org\/wiki\/%D0%A3%D1%80%D0%BE%D0%B2%D0%B5%D0%BD%D1%8C_%D1%80%D0%B5%D0%B3%D0%B8%D1%81%D1%82%D1%80%D0%BE%D0%B2%D1%8B%D1%85_%D0%BF%D0%B5%D1%80%D0%B5%D0%B4%D0%B0%D1%87\">RTL (wikipedia.org)<\/a> (Register-transfer level), z386 implements hardware structures controlled by the original microcode. The performance of the developed implementation is comparable to a fast 386 PC (~70MHz). With z386, it was possible to successfully run DOS 6\/7, DOS\/4GW, DOS\/32A, and games such as Doom and Cannon Fodder.<\/p>\n<p><\/noindex><\/p>\n<p>Source: <a \ncontent=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.linux.org.ru\/news\/hardware\/18300992\">linux.org.ru<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u042d\u043d\u0442\u0443\u0437\u0438\u0430\u0441\u0442\u044b \u0441\u043c\u043e\u0433\u043b\u0438 \u0443\u0441\u043f\u0435\u0448\u043d\u043e \u0438\u0437\u0432\u043b\u0435\u0447\u044c \u0438 \u0434\u0438\u0437\u0430\u0441\u0441\u0435\u043c\u0431\u043b\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043c\u0438\u043a\u0440\u043e\u043a\u043e\u0434 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440\u0430 Intel 80386, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0438\u0437-\u0437\u0430 \u043e\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0438\u044f \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u0438 \u0441\u0447\u0438\u0442\u0430\u043b\u0441\u044f &laquo;\u0447\u0451\u0440\u043d\u044b\u043c \u044f\u0449\u0438\u043a\u043e\u043c&raquo;. \u0411\u0438\u043d\u0430\u0440\u043d\u044b\u0439 \u043e\u0431\u0440\u0430\u0437 \u043c\u0438\u043a\u0440\u043e\u043a\u043e\u0434\u0430 \u0431\u044b\u043b \u0432\u043e\u0441\u0441\u043e\u0437\u0434\u0430\u043d \u0441 \u043f\u0440\u0438\u0432\u043b\u0435\u0447\u0435\u043d\u0438\u0435\u043c AI \u043f\u043e \u0444\u043e\u0442\u043e\u0433\u0440\u0430\u0444\u0438\u044f\u043c \u043a\u0440\u0438\u0441\u0442\u0430\u043b\u043b\u0430 \u0432 \u0432\u044b\u0441\u043e\u043a\u043e\u043c \u0440\u0430\u0437\u0440\u0435\u0448\u0435\u043d\u0438\u0438, \u0430 \u043b\u043e\u0433\u0438\u043a\u0430 \u0440\u0430\u0431\u043e\u0442\u044b \u0440\u0430\u0437\u043e\u0431\u0440\u0430\u043d\u0430 \u0447\u0435\u0440\u0435\u0437 \u0442\u0440\u0430\u0441\u0441\u0438\u0440\u043e\u0432\u043a\u0443 \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0439 \u043d\u0430 \u043a\u0440\u0438\u0441\u0442\u0430\u043b\u043b\u0435. \u041f\u043e\u0441\u0442\u0435\u043f\u0435\u043d\u043d\u043e \u0431\u044b\u043b\u0438 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u044b \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0430 \u043c\u0438\u043a\u0440\u043e\u043a\u043e\u043c\u0430\u043d\u0434 (\u03bc-ops), \u043f\u043e\u043b\u044f, \u043f\u043e\u0440\u044f\u0434\u043e\u043a \u0438\u0441\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u0438 \u043c\u0430\u0440\u043a\u0435\u0440\u044b \u043a\u043e\u043d\u0446\u0430 \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0439. \u041d\u0430\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u043f\u0440\u043e\u0435\u043a\u0442\u0430 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":8,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[702],"tags":[],"class_list":["post-181741","post","type-post","status-publish","format-standard","hentry","category-news"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.1.1 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u042d\u043d\u0442\u0443\u0437\u0438\u0430\u0441\u0442\u044b\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Erik Peterson\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/en\/blog\/news\/entuziasty-dizassemblirovali-mikrokod-i386-i-sozdali-otkrytyj-cpu-z386\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.1.1\" \/>\n\t\t<meta property=\"og:locale\" content=\"en_US\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u042d\u043d\u0442\u0443\u0437\u0438\u0430\u0441\u0442\u044b \u0434\u0438\u0437\u0430\u0441\u0441\u0435\u043c\u0431\u043b\u0438\u0440\u043e\u0432\u0430\u043b\u0438 \u043c\u0438\u043a\u0440\u043e\u043a\u043e\u0434 i386 \u0438 \u0441\u043e\u0437\u0434\u0430\u043b\u0438 \u043e\u0442\u043a\u0440\u044b\u0442\u044b\u0439 CPU z386 | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u042d\u043d\u0442\u0443\u0437\u0438\u0430\u0441\u0442\u044b\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/en\/blog\/news\/entuziasty-dizassemblirovali-mikrokod-i386-i-sozdali-otkrytyj-cpu-z386\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2026-05-26T00:49:06+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2026-05-26T00:49:06+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Enthusiasts disassembled the i386 microcode and created the open CPU z386 | ProHoster","description":"Enthusiasts","canonical_url":"https:\/\/prohoster.info\/en\/blog\/news\/entuziasty-dizassemblirovali-mikrokod-i386-i-sozdali-otkrytyj-cpu-z386","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"en_US","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u042d\u043d\u0442\u0443\u0437\u0438\u0430\u0441\u0442\u044b \u0434\u0438\u0437\u0430\u0441\u0441\u0435\u043c\u0431\u043b\u0438\u0440\u043e\u0432\u0430\u043b\u0438 \u043c\u0438\u043a\u0440\u043e\u043a\u043e\u0434 i386 \u0438 \u0441\u043e\u0437\u0434\u0430\u043b\u0438 \u043e\u0442\u043a\u0440\u044b\u0442\u044b\u0439 CPU z386 | ProHoster","og:description":"\u042d\u043d\u0442\u0443\u0437\u0438\u0430\u0441\u0442\u044b","og:url":"https:\/\/prohoster.info\/en\/blog\/news\/entuziasty-dizassemblirovali-mikrokod-i386-i-sozdali-otkrytyj-cpu-z386","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2026-05-26T00:49:06+00:00","article:modified_time":"2026-05-26T00:49:06+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":[],"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/posts\/181741","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/users\/8"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/comments?post=181741"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/posts\/181741\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/media?parent=181741"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/categories?post=181741"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/tags?post=181741"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}