{"id":13269,"date":"2022-09-12T14:43:10","date_gmt":"2022-09-12T14:43:10","guid":{"rendered":"https:\/\/bryceautomation.com\/?p=13269"},"modified":"2022-09-13T10:22:12","modified_gmt":"2022-09-13T10:22:12","slug":"kenbak-1-switch-number-to-binary","status":"publish","type":"post","link":"https:\/\/bryceautomation.com\/index.php\/2022\/09\/12\/kenbak-1-switch-number-to-binary\/","title":{"rendered":"Kenbak-1 Switch Number to Binary"},"content":{"rendered":"\n<h2 class=\"wp-block-heading\">Converting a Kenbak-1 Switch Number to Binary<\/h2>\n\n\n\n<p>In this section, we&#8217;ll be converting a Kenbak-1 Switch Number to Binary.  This project is a good example of the Right Shift on the Kenbak-1.  Basically, when the user presses a number, we&#8217;ll display the binary bit pattern for that switch number.  <\/p><div id=\"bryce-1298395525\" class=\"bryce-afterfirst bryce-entity-placement\"><script async src=\"\/\/pagead2.googlesyndication.com\/pagead\/js\/adsbygoogle.js?client=ca-pub-8316758073402323\" crossorigin=\"anonymous\"><\/script><ins class=\"adsbygoogle\" style=\"display:block;\" data-ad-client=\"ca-pub-8316758073402323\" \ndata-ad-slot=\"7728240895\" \ndata-ad-format=\"auto\"><\/ins>\n<script> \n(adsbygoogle = window.adsbygoogle || []).push({}); \n<\/script>\n<\/div>\n\n\n\n<p>Mr. Richardson was kind enough to show me some tricks on the <a href=\"http:\/\/www.neocomputer.org\/kenbak\/kenbak1-JS.html\">Kenbak-1 Emulator&#8217;s Memory Loader<\/a>.  This is very helpful for keeping track of your code, for making changes, and for debugging.  In this post, I&#8217;ll explain the logic step by step.  I&#8217;ll also post an octal dump if you would like to try this on a <a href=\"http:\/\/adwaterandstir.com\">hardware emulator.<\/a><\/p>\n\n\n\n<p>Keep in mind that on the Kenbak-1 Everything is in <strong>OCTAL<\/strong>.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full is-resized\"><img decoding=\"async\" data-src=\"https:\/\/bryceautomation.com\/wp-content\/uploads\/2022\/09\/image-74.png\" alt=\"\" class=\"wp-image-13274 lazyload\" width=\"323\" height=\"242\" data-srcset=\"https:\/\/bryceautomation.com\/wp-content\/uploads\/2022\/09\/image-74.png 834w, https:\/\/bryceautomation.com\/wp-content\/uploads\/2022\/09\/image-74-300x224.png 300w, https:\/\/bryceautomation.com\/wp-content\/uploads\/2022\/09\/image-74-768x575.png 768w\" data-sizes=\"(max-width: 323px) 100vw, 323px\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 323px; --smush-placeholder-aspect-ratio: 323\/242;\" \/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Initialize the Registers<\/h2>\n\n\n\n<p>Before diving into the logic, we&#8217;ll initialize our registers first.  This will make sure all of the registers are in a known state.  We&#8217;ll also initialize the program counter in memory cell 003 to start at 004.<\/p>\n\n\n\n<p>INITIALIZE:<br>000: 000 000 000 004<\/p>\n\n\n\n<p>START:<br>004: 023 000 &#8212; A = 0<br>006: 123 000 &#8212; B = 0<br>010: 223 000 &#8212; X = 0<br>012: 034 377 &#8212; UNLATCH SWITCHES<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Get the Buttons<\/h2>\n\n\n\n<p>At this point, we need to get our buttons, and we&#8217;ll load them into the A register.  If the user does not press a button, we will remain in this loop until we see some input.  Later on, we&#8217;ll jump to memory cell 044.  This will run some checks to see if the button was 0, or 7.  If the button was 0, we will turn on all lights.  If the button was 7, we will need to take special action later.  This is because of the way the right shift works.  Otherwise, bit #7 would remain &#8220;stale&#8221;, and fill all positions with the value of 1.<\/p>\n\n\n\n<p>Here, we simply load the &#8220;A&#8221; Register with the value of our buttons at register 377.  After  that, we store the value to B.  That way, we can manipulate it without destroying the original value of our buttons.<\/p>\n\n\n\n<p>GETBTN:<br>014: 024 377 &#8212; Load A with buttons<br>016: 034 001 &#8212; STA &#8211;&gt; B<br>020: 044 014 &#8212; JPD A=0 &#8211;&gt; GETBTN (loop until button pressed)<br>022: 344 044 &#8212; JPD CHECK 70<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Find the Bit Position to convert a Kenbak-1 Switch Number to Binary<\/h2>\n\n\n\n<p>First, in cell 24, I have a NOOP.  This is just to add another line if we need it later on.  After that, we start looking for the bit position.  Recall that if the user hits button 0, we handle things another way.  If the button is 1 through 6, though, we need to find out which one it is.  We start shifting the bits to the right, and  incrementing the X register each time.  <\/p>\n\n\n\n<p>When the value of B hits 0, we know that we have shifted a bit out of the B register.  Therefore, the value of X represents the switch number the user pressed.  For example:  If the user hits button #5, then after 5 shifts, that bit would be out of the B register.  At this point the  value of the B register is 0.  Therefore we can jump to a section of memory to display the X register.  This section will be at memory cell 040 (in the next heading).<\/p>\n\n\n\n<p>I&#8217;m also running a check to be sure the value of X does not exceed 7.  It shouldn&#8217;t, except under an unusual circumstance where the operator hits button 7 and another button at the same time.  If that&#8217;s the case, we&#8217;ll just restart the logic.  Later on, Memory cell 120 will handle this condition.<\/p>\n\n\n\n<p>At memory cell 036, we just continue our loop until the B register equals 0.<\/p>\n\n\n\n<p>FINDPOS:<br>024: 200 200 &#8212; NOOP<br>026: 051 200 &#8212; RTSFT B<br>030: 144 040 &#8212; JPD B=0 &#8211;&gt; FOUND<br>032: 203 001 &#8212; ADD X 1<br>034: 344 120 &#8212; JPD UNC XRUNAWAY<br>036: 344 026 &#8212; JPD UNC FINDPOS+2<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">When we find a Value for converting a Kenbak-1 Switch Number to Binary<\/h2>\n\n\n\n<p>Remember under the last heading, we jump to cell 040 if the B register was empty.  This means that we found the position of our bit.  At this point, can display this value and restart the program.<\/p>\n\n\n\n<p>FOUND:<br>040: 234 200 &#8212; STX Display<br>042: 344 004 &#8212; JPD UNC START<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Check for Buttons 0 or 7<\/h2>\n\n\n\n<p>In this case, buttons 0 and 7 are special.  We have a separate way to handle those.  The problem with displaying 0 is that no lights would be on.  The user might think the program is not working.  Instead of just leaving the lights off, we&#8217;ll turn them all on in the next section of logic at memory cell 70.<\/p>\n\n\n\n<p>Additionally, we treat switch 7 in a special way.  After we shift the bits to the right on the Kenbak-1, bit 7 remains &#8220;stale&#8221;.  In other words, if this bit was high, it would leave a trail of 1&#8217;s behind it every time we shift our bits.   We&#8217;ll jump to a special section of memory to handle bit 7 manually in memory cell 100.<\/p>\n\n\n\n<p>In Cell 062, we&#8217;ll clear the display until we figure out which bit number the user pressed.<\/p>\n\n\n\n<p>CHECK70:<br>044: 013 001 &#8212; A=A-1<br>046: 034 150 &#8212; STA 150 DEBUG<br>050: 044 070 &#8212; JPD A=0 ZERO<br>052: 013 177 &#8212; A = A &#8211; 177<br>054: 034 151 &#8212; STA 151 DEBUG<br>056: 044 100 &#8212; JPD A=0 SEVEN:<br>060: 023 000 &#8212; LDA 0<br>062: 034 200 &#8212; CLEAR DISPLAY<br>064: 134 000 &#8212; STB &gt; A (KEEP A CLEAN)<br>066: 344 024 &#8212; JPD UNC FINDPOS<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Handling Button #0 and #7<\/h2>\n\n\n\n<p>If we&#8217;ve detected that button #0 is high, then we&#8217;ll simply turn all of the  lights on.  After that, we&#8217;ll restart our logic.  Likewise, if we detect button #7, we&#8217;ll simply turn on lights 0, 1, and 2.  Then we&#8217;ll restart our logic.<\/p>\n\n\n\n<p>ZERO:<br>070: 023 377 &#8212; LDA 377 (All Lights ON)  (change 377 to 000  if you want to actually shut off all lights)<br>072: 034 200 &#8212; STA DISPLAY<br>074: 344 004 &#8212; JPD UNC START<br>076: 000 000<\/p>\n\n\n\n<p>SEVEN:<br>100: 023 007 &#8212; LDA 007<br>102: 034 200 &#8212; STA DISPLAY<br>104: 344 004 &#8212; JPD UNC START<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Handling Runway of X<\/h2>\n\n\n\n<p>As I said before, there are certain conditions that could cause X to run away, but that should only be able to happen if the user presses more than one button.  We will temporarily store X to cell 152 while we check it for an excessive value.  If X is OK, then we&#8217;ll restore X to what it was, and resume the logic.<\/p>\n\n\n\n<p>XRUNAWAY:<br>120: 234 152 &#8212; STX 152<br>122: 213 010 &#8212; SUB X 10<br>124: 244 004 &#8212; JPD X=0 004 BREAK AND RESTART<br>126: 224 152 &#8212; LDX 152 (RESTORE X)<br>130: 344 036 &#8212; JPD UNC 036 (RESUME)<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Full Code<\/h2>\n\n\n\n<p>You can paste this code into the Memory Loader of the Kenbak-1 Emulator to try it out!  Remember, just be patient after you hit a button.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>INITIALIZE:\n000: 000 000 000 004\n\nSTART:\n004: 023 000 -- A = 0\n006: 123 000 -- B = 0\n010: 223 000 -- X = 0\n012: 034 377 -- UNLATCH SWITCHES\n\n\nGETBTN:\n014: 024 377 -- Load A with buttons\n016: 034 001 -- STA --&gt; B\n020: 044 014 -- JPD A=0 --&gt; GETBTN (loop until button pressed)\n022: 344 044 -- JPD CHECK 70\n\n\nFINDPOS:\n024: 200 200 -- NOOP\n026: 051 200 -- RTSFT B\n030: 144 040 -- JPD B=0 --&gt; FOUND\n032: 203 001 -- ADD X 1\n034: 344 120 -- JPD UNC XRUNAWAY\n036: 344 026 -- JPD UNC FINDPOS+2\n\nFOUND:\n040: 234 200 -- STX Display\n042: 344 004 -- JPD UNC START:\n\nCHECK70:\n044: 013 001 -- A=A-1\n046: 034 150 -- STA 150 DEBUG\n050: 044 070 -- JPD A=0 ZERO\n052: 013 177 -- A = A - 177\n054: 034 151 -- STA 151 DEBUG\n056: 044 100 -- JPD A=0 SEVEN:\n060: 023 000 -- LDA 0\n062: 034 200 -- CLEAR DISPLAY\n064: 134 000 -- STB &gt; A (KEEP A CLEAN)\n066: 344 024 -- JPD UNC FINDPOS\n\n\nZERO:\n070: 023 377 -- LDA 377 (All Lights ON)\n072: 034 200 -- STA DISPLAY\n074: 344 004 -- JPD UNC START\n076: 000 000\n\nSEVEN:\n100: 023 007 -- LDA 007\n102: 034 200 -- STA DISPLAY\n104: 344 004 -- JPD UNC START\n\nXRUNAWAY:\n120: 234 152 -- STX 152\n122: 213 010 -- SUB X 10\n124: 244 004 -- JPD X=0 004 BREAK AND RESTART\n126: 224 152 -- LDX 152 (RESTORE X)\n130: 344 036 -- JPD UNC 036 (RESUME) <\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Kenbakuino Octal Dump<\/h2>\n\n\n\n<p>If you have a Kenbakuino, then you can use this octal dump.  For example, press STOP, then 1 and then SET at the same time for 9600 baud.  Be sure you have character and line delays set, though.  I set mine up in minicom for 10ms.  Remember to change the 377 to 000 at cell 071 if you want all the lights to actually shut off.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>000,000,000,004,023,000,123,000,223,000,034,377,024,377,034,001,044,014,344,044,200,200,051,200,144,040,203,001,344,120,344,026,234,200,344,004,013,001,034,150,044,070,013,177,034,151,044,100,023,000,034,200,134,000,344,024,023,377,034,200,344,004,000,000,023,007,034,200,344,004,000,000,000,000,000,000,000,000,000,000,234,152,213,010,244,004,224,152,344,036,s<\/code><\/pre>\n\n\n\n<p>For more information, visit the <a href=\"https:\/\/bryceautomation.com\/index.php\/category\/kenbak-1\/\">Kenbak-1 Category Page!<\/a><\/p>\n\n\n\n<p>&#8212; Ricky Bryce<\/p>\n<div id=\"bryce-3564811777\" class=\"bryce-after-content bryce-entity-placement\"><script async src=\"\/\/pagead2.googlesyndication.com\/pagead\/js\/adsbygoogle.js?client=ca-pub-8316758073402323\" crossorigin=\"anonymous\"><\/script><ins class=\"adsbygoogle\" style=\"display:block;\" data-ad-client=\"ca-pub-8316758073402323\" \ndata-ad-slot=\"4667596182\" \ndata-ad-format=\"auto\"><\/ins>\n<script> \n(adsbygoogle = window.adsbygoogle || []).push({}); \n<\/script>\n<\/div>","protected":false},"excerpt":{"rendered":"<p>Converting a Kenbak-1 Switch Number to Binary In this section, we&#8217;ll be converting a Kenbak-1 Switch Number to Binary. This project is a good example of the Right Shift on the Kenbak-1. Basically, when the user presses a number, we&#8217;ll display the binary bit pattern for that switch number. Mr. Richardson was kind enough to <a class=\"moretag btn btn-primary\" href=\"https:\/\/bryceautomation.com\/index.php\/2022\/09\/12\/kenbak-1-switch-number-to-binary\/\">Read More \u00bb<\/a><\/p>\n","protected":false},"author":1,"featured_media":13274,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[762,727],"tags":[49,798],"class_list":{"0":"post-13269","1":"post","2":"type-post","3":"status-publish","4":"format-standard","5":"has-post-thumbnail","7":"category-kenbak-1","8":"category-vintage-computers","9":"tag-binary","10":"tag-octal","11":"czr-hentry"},"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.3 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Kenbak-1 Switch Number to Binary - Bryce Automation<\/title>\n<meta name=\"description\" content=\"Howto Convert a Kenbak-1 Switch Number to Binary using the Right Shift. We&#039;ll find a bit number, and display this in Octal on the LEDs.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/bryceautomation.com\/index.php\/2022\/09\/12\/kenbak-1-switch-number-to-binary\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Kenbak-1 Switch Number to Binary - Bryce Automation\" \/>\n<meta property=\"og:description\" content=\"Howto Convert a Kenbak-1 Switch Number to Binary using the Right Shift. We&#039;ll find a bit number, and display this in Octal on the LEDs.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/bryceautomation.com\/index.php\/2022\/09\/12\/kenbak-1-switch-number-to-binary\/\" \/>\n<meta property=\"og:site_name\" content=\"Bryce Automation\" \/>\n<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/ricky.bryce.7\" \/>\n<meta property=\"article:published_time\" content=\"2022-09-12T14:43:10+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2022-09-13T10:22:12+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/bryceautomation.com\/wp-content\/uploads\/2022\/09\/image-74.png\" \/>\n\t<meta property=\"og:image:width\" content=\"834\" \/>\n\t<meta property=\"og:image:height\" content=\"624\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Ricky\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/bryceautomation.com\\\/index.php\\\/2022\\\/09\\\/12\\\/kenbak-1-switch-number-to-binary\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/bryceautomation.com\\\/index.php\\\/2022\\\/09\\\/12\\\/kenbak-1-switch-number-to-binary\\\/\"},\"author\":{\"name\":\"Ricky\",\"@id\":\"https:\\\/\\\/bryceautomation.com\\\/#\\\/schema\\\/person\\\/5d5b0f6f6ad768f1ee52968338e63af7\"},\"headline\":\"Kenbak-1 Switch Number to Binary\",\"datePublished\":\"2022-09-12T14:43:10+00:00\",\"dateModified\":\"2022-09-13T10:22:12+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/bryceautomation.com\\\/index.php\\\/2022\\\/09\\\/12\\\/kenbak-1-switch-number-to-binary\\\/\"},\"wordCount\":1109,\"commentCount\":0,\"image\":{\"@id\":\"https:\\\/\\\/bryceautomation.com\\\/index.php\\\/2022\\\/09\\\/12\\\/kenbak-1-switch-number-to-binary\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/bryceautomation.com\\\/wp-content\\\/uploads\\\/2022\\\/09\\\/image-74.png\",\"keywords\":[\"Binary\",\"Octal\"],\"articleSection\":[\"Kenbak-1\",\"Vintage Computers\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/bryceautomation.com\\\/index.php\\\/2022\\\/09\\\/12\\\/kenbak-1-switch-number-to-binary\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/bryceautomation.com\\\/index.php\\\/2022\\\/09\\\/12\\\/kenbak-1-switch-number-to-binary\\\/\",\"url\":\"https:\\\/\\\/bryceautomation.com\\\/index.php\\\/2022\\\/09\\\/12\\\/kenbak-1-switch-number-to-binary\\\/\",\"name\":\"Kenbak-1 Switch Number to Binary - Bryce Automation\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/bryceautomation.com\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/bryceautomation.com\\\/index.php\\\/2022\\\/09\\\/12\\\/kenbak-1-switch-number-to-binary\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/bryceautomation.com\\\/index.php\\\/2022\\\/09\\\/12\\\/kenbak-1-switch-number-to-binary\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/bryceautomation.com\\\/wp-content\\\/uploads\\\/2022\\\/09\\\/image-74.png\",\"datePublished\":\"2022-09-12T14:43:10+00:00\",\"dateModified\":\"2022-09-13T10:22:12+00:00\",\"author\":{\"@id\":\"https:\\\/\\\/bryceautomation.com\\\/#\\\/schema\\\/person\\\/5d5b0f6f6ad768f1ee52968338e63af7\"},\"description\":\"Howto Convert a Kenbak-1 Switch Number to Binary using the Right Shift. We'll find a bit number, and display this in Octal on the LEDs.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/bryceautomation.com\\\/index.php\\\/2022\\\/09\\\/12\\\/kenbak-1-switch-number-to-binary\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/bryceautomation.com\\\/index.php\\\/2022\\\/09\\\/12\\\/kenbak-1-switch-number-to-binary\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/bryceautomation.com\\\/index.php\\\/2022\\\/09\\\/12\\\/kenbak-1-switch-number-to-binary\\\/#primaryimage\",\"url\":\"https:\\\/\\\/bryceautomation.com\\\/wp-content\\\/uploads\\\/2022\\\/09\\\/image-74.png\",\"contentUrl\":\"https:\\\/\\\/bryceautomation.com\\\/wp-content\\\/uploads\\\/2022\\\/09\\\/image-74.png\",\"width\":834,\"height\":624,\"caption\":\"Kenbak-1 Convert Switch Number to Octal\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/bryceautomation.com\\\/index.php\\\/2022\\\/09\\\/12\\\/kenbak-1-switch-number-to-binary\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/bryceautomation.com\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Kenbak-1 Switch Number to Binary\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/bryceautomation.com\\\/#website\",\"url\":\"https:\\\/\\\/bryceautomation.com\\\/\",\"name\":\"Bryce Automation\",\"description\":\"Automating Home and Industry...\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/bryceautomation.com\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/bryceautomation.com\\\/#\\\/schema\\\/person\\\/5d5b0f6f6ad768f1ee52968338e63af7\",\"name\":\"Ricky\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/bryceautomation.com\\\/wp-content\\\/wphb-cache\\\/gravatar\\\/a8f\\\/a8fe6bf79d292b388ffee281ccb12488x96.jpg\",\"url\":\"https:\\\/\\\/bryceautomation.com\\\/wp-content\\\/wphb-cache\\\/gravatar\\\/a8f\\\/a8fe6bf79d292b388ffee281ccb12488x96.jpg\",\"contentUrl\":\"https:\\\/\\\/bryceautomation.com\\\/wp-content\\\/wphb-cache\\\/gravatar\\\/a8f\\\/a8fe6bf79d292b388ffee281ccb12488x96.jpg\",\"caption\":\"Ricky\"},\"sameAs\":[\"http:\\\/\\\/bryceautomation.com\",\"https:\\\/\\\/www.facebook.com\\\/ricky.bryce.7\",\"https:\\\/\\\/www.linkedin.com\\\/in\\\/ricky-bryce-4367a416\\\/\"],\"url\":\"https:\\\/\\\/bryceautomation.com\\\/index.php\\\/author\\\/ricky\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Kenbak-1 Switch Number to Binary - Bryce Automation","description":"Howto Convert a Kenbak-1 Switch Number to Binary using the Right Shift. We'll find a bit number, and display this in Octal on the LEDs.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/bryceautomation.com\/index.php\/2022\/09\/12\/kenbak-1-switch-number-to-binary\/","og_locale":"en_US","og_type":"article","og_title":"Kenbak-1 Switch Number to Binary - Bryce Automation","og_description":"Howto Convert a Kenbak-1 Switch Number to Binary using the Right Shift. We'll find a bit number, and display this in Octal on the LEDs.","og_url":"https:\/\/bryceautomation.com\/index.php\/2022\/09\/12\/kenbak-1-switch-number-to-binary\/","og_site_name":"Bryce Automation","article_author":"https:\/\/www.facebook.com\/ricky.bryce.7","article_published_time":"2022-09-12T14:43:10+00:00","article_modified_time":"2022-09-13T10:22:12+00:00","og_image":[{"width":834,"height":624,"url":"https:\/\/bryceautomation.com\/wp-content\/uploads\/2022\/09\/image-74.png","type":"image\/png"}],"author":"Ricky","twitter_card":"summary_large_image","schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/bryceautomation.com\/index.php\/2022\/09\/12\/kenbak-1-switch-number-to-binary\/#article","isPartOf":{"@id":"https:\/\/bryceautomation.com\/index.php\/2022\/09\/12\/kenbak-1-switch-number-to-binary\/"},"author":{"name":"Ricky","@id":"https:\/\/bryceautomation.com\/#\/schema\/person\/5d5b0f6f6ad768f1ee52968338e63af7"},"headline":"Kenbak-1 Switch Number to Binary","datePublished":"2022-09-12T14:43:10+00:00","dateModified":"2022-09-13T10:22:12+00:00","mainEntityOfPage":{"@id":"https:\/\/bryceautomation.com\/index.php\/2022\/09\/12\/kenbak-1-switch-number-to-binary\/"},"wordCount":1109,"commentCount":0,"image":{"@id":"https:\/\/bryceautomation.com\/index.php\/2022\/09\/12\/kenbak-1-switch-number-to-binary\/#primaryimage"},"thumbnailUrl":"https:\/\/bryceautomation.com\/wp-content\/uploads\/2022\/09\/image-74.png","keywords":["Binary","Octal"],"articleSection":["Kenbak-1","Vintage Computers"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/bryceautomation.com\/index.php\/2022\/09\/12\/kenbak-1-switch-number-to-binary\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/bryceautomation.com\/index.php\/2022\/09\/12\/kenbak-1-switch-number-to-binary\/","url":"https:\/\/bryceautomation.com\/index.php\/2022\/09\/12\/kenbak-1-switch-number-to-binary\/","name":"Kenbak-1 Switch Number to Binary - Bryce Automation","isPartOf":{"@id":"https:\/\/bryceautomation.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/bryceautomation.com\/index.php\/2022\/09\/12\/kenbak-1-switch-number-to-binary\/#primaryimage"},"image":{"@id":"https:\/\/bryceautomation.com\/index.php\/2022\/09\/12\/kenbak-1-switch-number-to-binary\/#primaryimage"},"thumbnailUrl":"https:\/\/bryceautomation.com\/wp-content\/uploads\/2022\/09\/image-74.png","datePublished":"2022-09-12T14:43:10+00:00","dateModified":"2022-09-13T10:22:12+00:00","author":{"@id":"https:\/\/bryceautomation.com\/#\/schema\/person\/5d5b0f6f6ad768f1ee52968338e63af7"},"description":"Howto Convert a Kenbak-1 Switch Number to Binary using the Right Shift. We'll find a bit number, and display this in Octal on the LEDs.","breadcrumb":{"@id":"https:\/\/bryceautomation.com\/index.php\/2022\/09\/12\/kenbak-1-switch-number-to-binary\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/bryceautomation.com\/index.php\/2022\/09\/12\/kenbak-1-switch-number-to-binary\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/bryceautomation.com\/index.php\/2022\/09\/12\/kenbak-1-switch-number-to-binary\/#primaryimage","url":"https:\/\/bryceautomation.com\/wp-content\/uploads\/2022\/09\/image-74.png","contentUrl":"https:\/\/bryceautomation.com\/wp-content\/uploads\/2022\/09\/image-74.png","width":834,"height":624,"caption":"Kenbak-1 Convert Switch Number to Octal"},{"@type":"BreadcrumbList","@id":"https:\/\/bryceautomation.com\/index.php\/2022\/09\/12\/kenbak-1-switch-number-to-binary\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/bryceautomation.com\/"},{"@type":"ListItem","position":2,"name":"Kenbak-1 Switch Number to Binary"}]},{"@type":"WebSite","@id":"https:\/\/bryceautomation.com\/#website","url":"https:\/\/bryceautomation.com\/","name":"Bryce Automation","description":"Automating Home and Industry...","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/bryceautomation.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/bryceautomation.com\/#\/schema\/person\/5d5b0f6f6ad768f1ee52968338e63af7","name":"Ricky","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/bryceautomation.com\/wp-content\/wphb-cache\/gravatar\/a8f\/a8fe6bf79d292b388ffee281ccb12488x96.jpg","url":"https:\/\/bryceautomation.com\/wp-content\/wphb-cache\/gravatar\/a8f\/a8fe6bf79d292b388ffee281ccb12488x96.jpg","contentUrl":"https:\/\/bryceautomation.com\/wp-content\/wphb-cache\/gravatar\/a8f\/a8fe6bf79d292b388ffee281ccb12488x96.jpg","caption":"Ricky"},"sameAs":["http:\/\/bryceautomation.com","https:\/\/www.facebook.com\/ricky.bryce.7","https:\/\/www.linkedin.com\/in\/ricky-bryce-4367a416\/"],"url":"https:\/\/bryceautomation.com\/index.php\/author\/ricky\/"}]}},"_links":{"self":[{"href":"https:\/\/bryceautomation.com\/index.php\/wp-json\/wp\/v2\/posts\/13269","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/bryceautomation.com\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/bryceautomation.com\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/bryceautomation.com\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/bryceautomation.com\/index.php\/wp-json\/wp\/v2\/comments?post=13269"}],"version-history":[{"count":0,"href":"https:\/\/bryceautomation.com\/index.php\/wp-json\/wp\/v2\/posts\/13269\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/bryceautomation.com\/index.php\/wp-json\/wp\/v2\/media\/13274"}],"wp:attachment":[{"href":"https:\/\/bryceautomation.com\/index.php\/wp-json\/wp\/v2\/media?parent=13269"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/bryceautomation.com\/index.php\/wp-json\/wp\/v2\/categories?post=13269"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/bryceautomation.com\/index.php\/wp-json\/wp\/v2\/tags?post=13269"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}