{"id":16200,"date":"2023-05-16T01:09:00","date_gmt":"2023-05-16T01:09:00","guid":{"rendered":"https:\/\/bryceautomation.com\/?p=16200"},"modified":"2023-05-16T04:57:52","modified_gmt":"2023-05-16T04:57:52","slug":"z80asm-on-imsai-8080","status":"publish","type":"post","link":"https:\/\/bryceautomation.com\/index.php\/2023\/05\/16\/z80asm-on-imsai-8080\/","title":{"rendered":"Z80ASM on IMSAI 8080"},"content":{"rendered":"\n<h2 class=\"wp-block-heading\">Introduction to the Z80ASM on IMSAI 8080 (Assembly Language)<\/h2>\n\n\n\n<p>Running Z80ASM on the IMSAI 8080 allows you to assemble a program right on your IMSAI.  In other words, you don&#8217;t need to rely on another computer to assemble your program.  You can create a text file containing your program.  After that, you can use the assembler to generate a .COM file.  Finally, you can run this .COM file on your IMSAI under CPM.  <\/p><div id=\"bryce-4117534837\" 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>Obviously, you have a choice of editors that  you can use to build your program.  In this case, I&#8217;m just going to use WordStar 4.0.  To ensure there is no WordStar formatting, we want to create a &#8220;Non-Document&#8221; file.<\/p>\n\n\n\n<p>There are different assemblers called Z80ASM.  However, I&#8217;m going to use the 1983 version by SLR Systems.  Currently, you can obtain a copy of this assembler on the <a href=\"http:\/\/www.retroarchive.org\/cpm\/lang\/lang.htm\">retroarchive<\/a> website.  Additionally, you can download a manual for the Z80ASM from the <a href=\"http:\/\/www.s100computers.com\/My%20System%20Pages\/IBM%20Keyboard\/z80asm%20(SLR%20Systems).pdf\">S100Computers<\/a> website.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"801\" height=\"326\" data-src=\"https:\/\/bryceautomation.com\/wp-content\/uploads\/2023\/05\/imsaifull-1.png\" alt=\"Z80ASM on IMSAI 8080\" class=\"wp-image-16254 lazyload\" data-srcset=\"https:\/\/bryceautomation.com\/wp-content\/uploads\/2023\/05\/imsaifull-1.png 801w, https:\/\/bryceautomation.com\/wp-content\/uploads\/2023\/05\/imsaifull-1-300x122.png 300w, https:\/\/bryceautomation.com\/wp-content\/uploads\/2023\/05\/imsaifull-1-768x313.png 768w\" data-sizes=\"(max-width: 801px) 100vw, 801px\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 801px; --smush-placeholder-aspect-ratio: 801\/326;\" \/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Create Your Program<\/h2>\n\n\n\n<p>In this case, we&#8217;ll create a program that simply reads your sensor switches (Address switches 8-15).  Next, it will write the inverted value of your switches to your programmed output.  These are the LED&#8217;s at the top left of your IMSAI.<\/p>\n\n\n\n<p>I&#8217;m using WordStar 4 for this, but you can use most any standard text editor.  You can download WordStar 4.0 from the <a href=\"https:\/\/winworldpc.com\/product\/wordstar\/40\">WinWorld<\/a> website.<\/p>\n\n\n\n<p>Currently, I have WordStar on my hard drive, which is drive I.  I will be storing the program on a blank floppy disk in drive B.<\/p>\n\n\n\n<p>We&#8217;ll run WordStar, and create the program as follows:<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"696\" height=\"288\" data-src=\"https:\/\/bryceautomation.com\/wp-content\/uploads\/2023\/05\/image-17.png\" alt=\"\" class=\"wp-image-16204 lazyload\" data-srcset=\"https:\/\/bryceautomation.com\/wp-content\/uploads\/2023\/05\/image-17.png 696w, https:\/\/bryceautomation.com\/wp-content\/uploads\/2023\/05\/image-17-300x124.png 300w\" data-sizes=\"(max-width: 696px) 100vw, 696px\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 696px; --smush-placeholder-aspect-ratio: 696\/288;\" \/><\/figure>\n\n\n\n<p>Be sure to place a tab, or a couple spaces before each command.  Otherwise, the assembler will think your text is a label instead of a command.<\/p>\n\n\n\n<p>At last, we&#8217;ll save this file to &#8220;TEST.Z80&#8221; on the B: drive.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Assemble Your Program<\/h2>\n\n\n\n<p>At this point, we are ready to run TEST.Z80 through the assembler.  The assembler already anticipates that our extension will be &#8220;.Z80&#8221;.  We do not need to add this.  However, when we run the assembler, we do need to specify the source drive, destination drive, and which drive we want our program listing on.  In this case, they will all be drive B.  We&#8217;ll also use the &#8220;\/F&#8221; flag for a full listing.  Use the <a href=\"http:\/\/www.s100computers.com\/My%20System%20Pages\/IBM%20Keyboard\/z80asm%20(SLR%20Systems).pdf\">manual<\/a> to get a better idea of every command, and the other options available.<\/p>\n\n\n\n<p>I&#8217;m on the B: Drive now.  Keep in mind that my assembler is on drive I, and TEST.Z80 is on drive B.   Therefore our command will be:<\/p>\n\n\n\n<p>I:Z80ASM TEST.BBB\/F<\/p>\n\n\n\n<p>After you press ENTER, you should have no errors.<\/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\/2023\/05\/image-18.png\" alt=\"Z80ASM on IMSAI 8080\" class=\"wp-image-16205 lazyload\" width=\"571\" height=\"230\" data-srcset=\"https:\/\/bryceautomation.com\/wp-content\/uploads\/2023\/05\/image-18.png 571w, https:\/\/bryceautomation.com\/wp-content\/uploads\/2023\/05\/image-18-300x121.png 300w\" data-sizes=\"(max-width: 571px) 100vw, 571px\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 571px; --smush-placeholder-aspect-ratio: 571\/230;\" \/><\/figure>\n\n\n\n<p>At this point, you can perform a directory listing to see if the assembler is generating the files we wanted.<\/p>\n\n\n\n<p>As you can see, we have the original TEST.Z80 File.  Also, we have the executable, which is TEST.COM, and the listing file which is TEST.LST.<\/p>\n\n\n\n<p>Let&#8217;s take a look at the listing file.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"427\" height=\"259\" data-src=\"https:\/\/bryceautomation.com\/wp-content\/uploads\/2023\/05\/image-19.png\" alt=\"Z80ASM on IMSAI 8080\" class=\"wp-image-16206 lazyload\" data-srcset=\"https:\/\/bryceautomation.com\/wp-content\/uploads\/2023\/05\/image-19.png 427w, https:\/\/bryceautomation.com\/wp-content\/uploads\/2023\/05\/image-19-300x182.png 300w\" data-sizes=\"(max-width: 427px) 100vw, 427px\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 427px; --smush-placeholder-aspect-ratio: 427\/259;\" \/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Run Your Program<\/h2>\n\n\n\n<p>Keep in mind that we do not have a way to exit back to CP\/M.  The purpose of this section is to simply demonstrate the assembler.   Once we run and test the program, you will need to hit the EXT.CLR button to return back to CP\/M.<\/p>\n\n\n\n<p>To run the program, simply type &#8220;TEST&#8221; at the B prompt. <\/p>\n\n\n\n<p>At last, you are ready to check your switches and lights.  Remember, the value of the LED&#8217;s will be inverted.<\/p>\n\n\n\n<p>As you can see, our program is running.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"762\" height=\"326\" data-src=\"https:\/\/bryceautomation.com\/wp-content\/uploads\/2023\/05\/imsai.png\" alt=\"Z80ASM on IMSAI 8080\" class=\"wp-image-16207 lazyload\" data-srcset=\"https:\/\/bryceautomation.com\/wp-content\/uploads\/2023\/05\/imsai.png 762w, https:\/\/bryceautomation.com\/wp-content\/uploads\/2023\/05\/imsai-300x128.png 300w\" data-sizes=\"(max-width: 762px) 100vw, 762px\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 762px; --smush-placeholder-aspect-ratio: 762\/326;\" \/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Summary of Z80ASM on IMSAI 8080<\/h2>\n\n\n\n<p>In short, you just need a text editor and the Z80ASM assembler for this to work.  Write your program in the text editor, then save your work with a .Z80 Extension.  Run the assembler with your program&#8217;s file name in the command line.  Be sure to include the source and destination disks&#8230; (ie: I:Z80ASM TEST.BBB\/F).  Use the \/F to flag a full file listing.  This file listing is useful for troubleshooting your code.<\/p>\n\n\n\n<p>For a full instruction set, read the <a href=\"https:\/\/www.zilog.com\/docs\/z80\/um0080.pdf\">Z80CPU Manual.<\/a><\/p>\n\n\n\n<p>For more information, visit the <a href=\"https:\/\/bryceautomation.com\/index.php\/category\/vintage-computers\/\">Vintage Computers Category Page!<\/a><\/p>\n\n\n\n<p>&#8212; Ricky Bryce<\/p>\n<div id=\"bryce-3060860117\" 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>Introduction to the Z80ASM on IMSAI 8080 (Assembly Language) Running Z80ASM on the IMSAI 8080 allows you to assemble a program right on your IMSAI. In other words, you don&#8217;t need to rely on another computer to assemble your program. You can create a text file containing your program. After that, you can use the <a class=\"moretag btn btn-primary\" href=\"https:\/\/bryceautomation.com\/index.php\/2023\/05\/16\/z80asm-on-imsai-8080\/\">Read More \u00bb<\/a><\/p>\n","protected":false},"author":1,"featured_media":16254,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[809,727],"tags":[933,871],"class_list":{"0":"post-16200","1":"post","2":"type-post","3":"status-publish","4":"format-standard","5":"has-post-thumbnail","7":"category-imsai-8080","8":"category-vintage-computers","9":"tag-imsai-8080","10":"tag-z80asm","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>Z80ASM on IMSAI 8080 - Bryce Automation<\/title>\n<meta name=\"description\" content=\"How to write and assemble a program using the Z80ASM on an IMSAI 8080. We&#039;ll just write a simple program for switches to energize lights.\" \/>\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\/2023\/05\/16\/z80asm-on-imsai-8080\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Z80ASM on IMSAI 8080 - Bryce Automation\" \/>\n<meta property=\"og:description\" content=\"How to write and assemble a program using the Z80ASM on an IMSAI 8080. We&#039;ll just write a simple program for switches to energize lights.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/bryceautomation.com\/index.php\/2023\/05\/16\/z80asm-on-imsai-8080\/\" \/>\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=\"2023-05-16T01:09:00+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2023-05-16T04:57:52+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/bryceautomation.com\/wp-content\/uploads\/2023\/05\/imsaifull-1.png\" \/>\n\t<meta property=\"og:image:width\" content=\"801\" \/>\n\t<meta property=\"og:image:height\" content=\"326\" \/>\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\\\/2023\\\/05\\\/16\\\/z80asm-on-imsai-8080\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/bryceautomation.com\\\/index.php\\\/2023\\\/05\\\/16\\\/z80asm-on-imsai-8080\\\/\"},\"author\":{\"name\":\"Ricky\",\"@id\":\"https:\\\/\\\/bryceautomation.com\\\/#\\\/schema\\\/person\\\/5d5b0f6f6ad768f1ee52968338e63af7\"},\"headline\":\"Z80ASM on IMSAI 8080\",\"datePublished\":\"2023-05-16T01:09:00+00:00\",\"dateModified\":\"2023-05-16T04:57:52+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/bryceautomation.com\\\/index.php\\\/2023\\\/05\\\/16\\\/z80asm-on-imsai-8080\\\/\"},\"wordCount\":703,\"commentCount\":0,\"image\":{\"@id\":\"https:\\\/\\\/bryceautomation.com\\\/index.php\\\/2023\\\/05\\\/16\\\/z80asm-on-imsai-8080\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/bryceautomation.com\\\/wp-content\\\/uploads\\\/2023\\\/05\\\/imsaifull-1.png\",\"keywords\":[\"IMSAI 8080\",\"z80asm\"],\"articleSection\":[\"Imsai 8080\",\"Vintage Computers\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/bryceautomation.com\\\/index.php\\\/2023\\\/05\\\/16\\\/z80asm-on-imsai-8080\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/bryceautomation.com\\\/index.php\\\/2023\\\/05\\\/16\\\/z80asm-on-imsai-8080\\\/\",\"url\":\"https:\\\/\\\/bryceautomation.com\\\/index.php\\\/2023\\\/05\\\/16\\\/z80asm-on-imsai-8080\\\/\",\"name\":\"Z80ASM on IMSAI 8080 - Bryce Automation\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/bryceautomation.com\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/bryceautomation.com\\\/index.php\\\/2023\\\/05\\\/16\\\/z80asm-on-imsai-8080\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/bryceautomation.com\\\/index.php\\\/2023\\\/05\\\/16\\\/z80asm-on-imsai-8080\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/bryceautomation.com\\\/wp-content\\\/uploads\\\/2023\\\/05\\\/imsaifull-1.png\",\"datePublished\":\"2023-05-16T01:09:00+00:00\",\"dateModified\":\"2023-05-16T04:57:52+00:00\",\"author\":{\"@id\":\"https:\\\/\\\/bryceautomation.com\\\/#\\\/schema\\\/person\\\/5d5b0f6f6ad768f1ee52968338e63af7\"},\"description\":\"How to write and assemble a program using the Z80ASM on an IMSAI 8080. We'll just write a simple program for switches to energize lights.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/bryceautomation.com\\\/index.php\\\/2023\\\/05\\\/16\\\/z80asm-on-imsai-8080\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/bryceautomation.com\\\/index.php\\\/2023\\\/05\\\/16\\\/z80asm-on-imsai-8080\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/bryceautomation.com\\\/index.php\\\/2023\\\/05\\\/16\\\/z80asm-on-imsai-8080\\\/#primaryimage\",\"url\":\"https:\\\/\\\/bryceautomation.com\\\/wp-content\\\/uploads\\\/2023\\\/05\\\/imsaifull-1.png\",\"contentUrl\":\"https:\\\/\\\/bryceautomation.com\\\/wp-content\\\/uploads\\\/2023\\\/05\\\/imsaifull-1.png\",\"width\":801,\"height\":326,\"caption\":\"Z80ASM on IMSAI 8080\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/bryceautomation.com\\\/index.php\\\/2023\\\/05\\\/16\\\/z80asm-on-imsai-8080\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/bryceautomation.com\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Z80ASM on IMSAI 8080\"}]},{\"@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":"Z80ASM on IMSAI 8080 - Bryce Automation","description":"How to write and assemble a program using the Z80ASM on an IMSAI 8080. We'll just write a simple program for switches to energize lights.","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\/2023\/05\/16\/z80asm-on-imsai-8080\/","og_locale":"en_US","og_type":"article","og_title":"Z80ASM on IMSAI 8080 - Bryce Automation","og_description":"How to write and assemble a program using the Z80ASM on an IMSAI 8080. We'll just write a simple program for switches to energize lights.","og_url":"https:\/\/bryceautomation.com\/index.php\/2023\/05\/16\/z80asm-on-imsai-8080\/","og_site_name":"Bryce Automation","article_author":"https:\/\/www.facebook.com\/ricky.bryce.7","article_published_time":"2023-05-16T01:09:00+00:00","article_modified_time":"2023-05-16T04:57:52+00:00","og_image":[{"width":801,"height":326,"url":"https:\/\/bryceautomation.com\/wp-content\/uploads\/2023\/05\/imsaifull-1.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\/2023\/05\/16\/z80asm-on-imsai-8080\/#article","isPartOf":{"@id":"https:\/\/bryceautomation.com\/index.php\/2023\/05\/16\/z80asm-on-imsai-8080\/"},"author":{"name":"Ricky","@id":"https:\/\/bryceautomation.com\/#\/schema\/person\/5d5b0f6f6ad768f1ee52968338e63af7"},"headline":"Z80ASM on IMSAI 8080","datePublished":"2023-05-16T01:09:00+00:00","dateModified":"2023-05-16T04:57:52+00:00","mainEntityOfPage":{"@id":"https:\/\/bryceautomation.com\/index.php\/2023\/05\/16\/z80asm-on-imsai-8080\/"},"wordCount":703,"commentCount":0,"image":{"@id":"https:\/\/bryceautomation.com\/index.php\/2023\/05\/16\/z80asm-on-imsai-8080\/#primaryimage"},"thumbnailUrl":"https:\/\/bryceautomation.com\/wp-content\/uploads\/2023\/05\/imsaifull-1.png","keywords":["IMSAI 8080","z80asm"],"articleSection":["Imsai 8080","Vintage Computers"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/bryceautomation.com\/index.php\/2023\/05\/16\/z80asm-on-imsai-8080\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/bryceautomation.com\/index.php\/2023\/05\/16\/z80asm-on-imsai-8080\/","url":"https:\/\/bryceautomation.com\/index.php\/2023\/05\/16\/z80asm-on-imsai-8080\/","name":"Z80ASM on IMSAI 8080 - Bryce Automation","isPartOf":{"@id":"https:\/\/bryceautomation.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/bryceautomation.com\/index.php\/2023\/05\/16\/z80asm-on-imsai-8080\/#primaryimage"},"image":{"@id":"https:\/\/bryceautomation.com\/index.php\/2023\/05\/16\/z80asm-on-imsai-8080\/#primaryimage"},"thumbnailUrl":"https:\/\/bryceautomation.com\/wp-content\/uploads\/2023\/05\/imsaifull-1.png","datePublished":"2023-05-16T01:09:00+00:00","dateModified":"2023-05-16T04:57:52+00:00","author":{"@id":"https:\/\/bryceautomation.com\/#\/schema\/person\/5d5b0f6f6ad768f1ee52968338e63af7"},"description":"How to write and assemble a program using the Z80ASM on an IMSAI 8080. We'll just write a simple program for switches to energize lights.","breadcrumb":{"@id":"https:\/\/bryceautomation.com\/index.php\/2023\/05\/16\/z80asm-on-imsai-8080\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/bryceautomation.com\/index.php\/2023\/05\/16\/z80asm-on-imsai-8080\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/bryceautomation.com\/index.php\/2023\/05\/16\/z80asm-on-imsai-8080\/#primaryimage","url":"https:\/\/bryceautomation.com\/wp-content\/uploads\/2023\/05\/imsaifull-1.png","contentUrl":"https:\/\/bryceautomation.com\/wp-content\/uploads\/2023\/05\/imsaifull-1.png","width":801,"height":326,"caption":"Z80ASM on IMSAI 8080"},{"@type":"BreadcrumbList","@id":"https:\/\/bryceautomation.com\/index.php\/2023\/05\/16\/z80asm-on-imsai-8080\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/bryceautomation.com\/"},{"@type":"ListItem","position":2,"name":"Z80ASM on IMSAI 8080"}]},{"@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\/16200","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=16200"}],"version-history":[{"count":0,"href":"https:\/\/bryceautomation.com\/index.php\/wp-json\/wp\/v2\/posts\/16200\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/bryceautomation.com\/index.php\/wp-json\/wp\/v2\/media\/16254"}],"wp:attachment":[{"href":"https:\/\/bryceautomation.com\/index.php\/wp-json\/wp\/v2\/media?parent=16200"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/bryceautomation.com\/index.php\/wp-json\/wp\/v2\/categories?post=16200"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/bryceautomation.com\/index.php\/wp-json\/wp\/v2\/tags?post=16200"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}