{"id":3495,"date":"2018-11-16T15:12:11","date_gmt":"2018-11-16T15:12:11","guid":{"rendered":"https:\/\/www.appservgrid.com\/paw92\/?p=3495"},"modified":"2018-11-17T15:33:25","modified_gmt":"2018-11-17T15:33:25","slug":"adding-linux-to-a-pdp-11","status":"publish","type":"post","link":"https:\/\/www.appservgrid.com\/paw92\/index.php\/2018\/11\/16\/adding-linux-to-a-pdp-11\/","title":{"rendered":"Adding Linux To A PDP-11"},"content":{"rendered":"<p>The UNIBUS architecture for DEC\u2019s PDPs and Vaxxen was a stroke of genius. If you wanted more memory in your minicomputer, just add another card. Need a drive? Plug it into the backplane. Of course, with all those weird cards, these old UNIBUS PDPs are hard to keep running. The UniBone is the solution to this problem. <a href=\"http:\/\/retrocmp.com\/projects\/unibone\" target=\"_blank\" rel=\"noopener\">It puts Linux on a UNIBUS bridge<\/a>, allowing this card to serve as a memory emulator, a test console, a disk emulator, or any other hardware you can think of.<\/p>\n<p>The key to this build is the BeagleBone, everyone\u2019s second-favorite single board computer that has one feature the other one doesn\u2019t: PRUs, or a programmable real-time unit, that allows you to blink a lot of pins very, very fast. We\u2019ve seen the BeagleBone be used as <a href=\"https:\/\/hackaday.com\/2012\/03\/07\/vintage-vt100-terminal-computing-with-a-beaglebone\/\">Linux in a terminal<\/a>, as the rest of the computer for an <a href=\"https:\/\/hackaday.com\/2014\/10\/28\/restoring-a-pdp-10-console-panel\/\">old PDP-10 front panel<\/a> and <a href=\"https:\/\/hackaday.com\/2017\/04\/26\/a-modern-day-pdp-11-front-end\/\">as the front end for a PDP-11\/03<\/a>.<\/p>\n<p><a href=\"https:\/\/hackadaycom.files.wordpress.com\/2018\/11\/rl02-panel-tilted.jpg\" target=\"_blank\" rel=\"noopener\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/hackadaycom.files.wordpress.com\/2018\/11\/rl02-panel-tilted.jpg?w=250&amp;h=193\" alt=\"\" width=\"250\" height=\"193\" \/><\/a>In this build, the Beaglebone\u2019s PRU takes care of interfacing to the UNIBUS backplane, sending everything to a device emulator running as an application. The UniBone can be configured as memory or something <em>boring<\/em>, but one of these can <a href=\"http:\/\/retrocmp.com\/projects\/unibone\/275-unibone-as-disk-emulator\" target=\"_blank\" rel=\"noopener\">emulate four RL02 drives<\/a>, giving a PDP-11 an amazing forty megabytes of storage. The real killer app of this implementation is giving these emulated drives a full complement of glowing buttons for load, ready, fault, and write protect, just like the front of a real RL02 drive. This panel is controlled over the I2C bus on the Beaglebone, and it\u2019s a work of art. Of course, emulating the drive means you can\u2019t use it <a href=\"https:\/\/hackaday.com\/2015\/04\/20\/vcf-east-x-the-worlds-largest-usb-thumb-drive\/\">as the world\u2019s largest thumb drive<\/a>, but that\u2019s a small price to pay for saving these old computers.<\/p>\n<p><a href=\"https:\/\/hackaday.com\/2018\/11\/15\/adding-linux-to-a-pdp-11\/\" target=\"_blank\" rel=\"noopener\">Source<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>The UNIBUS architecture for DEC\u2019s PDPs and Vaxxen was a stroke of genius. If you wanted more memory in your minicomputer, just add another card. Need a drive? Plug it into the backplane. Of course, with all those weird cards, these old UNIBUS PDPs are hard to keep running. The UniBone is the solution to &hellip; <\/p>\n<p class=\"link-more\"><a href=\"https:\/\/www.appservgrid.com\/paw92\/index.php\/2018\/11\/16\/adding-linux-to-a-pdp-11\/\" class=\"more-link\">Continue reading<span class=\"screen-reader-text\"> &#8220;Adding Linux To A PDP-11&#8221;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-3495","post","type-post","status-publish","format-standard","hentry","category-linux"],"_links":{"self":[{"href":"https:\/\/www.appservgrid.com\/paw92\/index.php\/wp-json\/wp\/v2\/posts\/3495","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.appservgrid.com\/paw92\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.appservgrid.com\/paw92\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.appservgrid.com\/paw92\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.appservgrid.com\/paw92\/index.php\/wp-json\/wp\/v2\/comments?post=3495"}],"version-history":[{"count":1,"href":"https:\/\/www.appservgrid.com\/paw92\/index.php\/wp-json\/wp\/v2\/posts\/3495\/revisions"}],"predecessor-version":[{"id":3754,"href":"https:\/\/www.appservgrid.com\/paw92\/index.php\/wp-json\/wp\/v2\/posts\/3495\/revisions\/3754"}],"wp:attachment":[{"href":"https:\/\/www.appservgrid.com\/paw92\/index.php\/wp-json\/wp\/v2\/media?parent=3495"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.appservgrid.com\/paw92\/index.php\/wp-json\/wp\/v2\/categories?post=3495"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.appservgrid.com\/paw92\/index.php\/wp-json\/wp\/v2\/tags?post=3495"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}