{"id":13981,"date":"2022-10-22T10:26:48","date_gmt":"2022-10-22T10:26:48","guid":{"rendered":"https:\/\/bryceautomation.com\/?p=13981"},"modified":"2022-10-22T10:26:51","modified_gmt":"2022-10-22T10:26:51","slug":"a18-assembler-for-cosmac","status":"publish","type":"post","link":"https:\/\/bryceautomation.com\/index.php\/2022\/10\/22\/a18-assembler-for-cosmac\/","title":{"rendered":"A18 Assembler for COSMAC"},"content":{"rendered":"\n<h2 class=\"wp-block-heading\">Introduction to the A18 Assembler for COSMAC<\/h2>\n\n\n\n<p>The A18 Assembler for COSMAC will convert your COSMAC assembly programs to object code.  After that, you can send the file to your processor.   I&#8217;m using Debian 11 for this example, but the A18 package also comes with a .exe file if you are stuck with Windows.  Keep in mind this is a command line tool.  There is no graphical interface.  It simply converts a text file (with .asm extension) to object code.  The flags I use in this example will give you both a LIST file (.lst), and a HEX file (.hex).  The List file is helpful for troubleshooting, while the HEX file is what you send to your COSMAC.<\/p><div id=\"bryce-4006344449\" 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>Assembly language makes programming easier, because you don&#8217;t need to remember the OPCODE for each instruction.  You enter the code in the form of mnemonics.   For example, to load the value of 70 to the D register, you just type LDI 70H instead of F8 70.  In the COSMAC, your D register is similar to the Accumulator in other processors.  For a list of instructions and OPCODES, you can check out the COSMAC 1802 <a href=\"http:\/\/bitsavers.trailing-edge.com\/components\/rca\/cosmac\/MPM-201A_User_Manual_for_the_CDP1802_COSMAC_Microprocessor_1976.pdf\">User Manual.<\/a><\/p>\n\n\n\n<p>As always, we need to be thankful for those who have worked to create and maintain this code.  Without their work, you would be entering the whole program through your keypad, and have to look up each OPCODE individually.<\/p>\n\n\n\n<p>I&#8217;m using the COSMAC CDP1802 Microprocessor kit for this example.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"285\" height=\"282\" data-src=\"https:\/\/bryceautomation.com\/wp-content\/uploads\/2022\/10\/image-13.png\" alt=\"\" class=\"wp-image-13982 lazyload\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 285px; --smush-placeholder-aspect-ratio: 285\/282;\" \/><\/figure>\n\n\n\n<p>This is William Coley&#8217;s assembler with modifications by Herb Johnson.  <a href=\"https:\/\/www.retrotechnology.com\/memship\/a18.html\">You can download the A18 Assembler from his web page.<\/a><\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Setting up the A18 Assembler for COSMAC<\/h2>\n\n\n\n<p>After you <a href=\"https:\/\/www.retrotechnology.com\/memship\/a18.html\">download<\/a>, simply extract the files.  My preference was to place the a18 folder into my home folder.  Since this is a command line too, you will want it to be in a place that&#8217;s easy to get to.<\/p>\n\n\n\n<p>For Linux, you will want to be sure to install the GCC compiler.  After that, there are a few things we need to do to get set up.   The instructions are in the file &#8220;a18_linux.txt&#8221;.  There are only a few steps.  If you are running Windows, you can skip down to the section &#8220;Compiling your Code with the A18 Assembler for COSMAC&#8221;<\/p>\n\n\n\n<p>1)  First, we&#8217;ll create a symlink.  ln -s A18.H a18.h  I got an error that the file already exists when running this command.   I believe the idea of this line is to make it available in both upper and lower case.  I simply reversed the source and destination, then ran it again to make sure you can locate the file both ways.<\/p>\n\n\n\n<p>Now, we need to compile the assembler<\/p>\n\n\n\n<p> 2)  gcc -I. -o a18 a18.c a18util.c a18eval.c<\/p>\n\n\n\n<p>3)  To check for errors:  gcc -o a18 a18.c a18eval.c a18util.c -Wall 2>wallerrors.txt<\/p>\n\n\n\n<p>4)  Finally, we&#8217;ll create a shell script.  This will be the script we use to run the compiler.  I simply typed &#8220;vi asm18&#8221;, then press &#8220;i&#8221; for insert.  You could use nano too if that is the editor you prefer.<\/p>\n\n\n\n<p>Add the following code<\/p>\n\n\n\n<p>#!\/bin\/bash<\/p>\n\n\n\n<p>.\/a18 $1.asm -l $1.lst -o $1.hex<\/p>\n\n\n\n<p>Finally, save your work.  In VI, just type &#8220;:wq&#8221;.  In nano, just CTRL-X and save.<\/p>\n\n\n\n<p>5)  Next, I made the script executable:  chmod +x asm18<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Compiling your Code with the A18 Assembler for COSMAC<\/h2>\n\n\n\n<p>At last, we are ready to compile your code.  We&#8217;ll assume you already have written your code in assenbly.  In this case, I&#8217;ve saved the file as timer2.asm (asm is lower case). <\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"778\" height=\"180\" data-src=\"https:\/\/bryceautomation.com\/wp-content\/uploads\/2022\/10\/image-14.png\" alt=\"\" class=\"wp-image-13985 lazyload\" data-srcset=\"https:\/\/bryceautomation.com\/wp-content\/uploads\/2022\/10\/image-14.png 778w, https:\/\/bryceautomation.com\/wp-content\/uploads\/2022\/10\/image-14-300x69.png 300w, https:\/\/bryceautomation.com\/wp-content\/uploads\/2022\/10\/image-14-768x178.png 768w\" data-sizes=\"(max-width: 778px) 100vw, 778px\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 778px; --smush-placeholder-aspect-ratio: 778\/180;\" \/><\/figure>\n\n\n\n<p>Keep in mind that our script will look for a file with the lower case &#8220;asm&#8221; extension.  It will automatically create the lst file, and the hex file.<\/p>\n\n\n\n<p>To assemble our code using Linux, I&#8217;ll just type: .\/asm18 timer2   To clarify:  (dot slash asm18 (space) timer2)  I&#8217;m specifying asm18 because that is the name of the script we created in the last section.<\/p>\n\n\n\n<p>If you run windows, just navigate to the a18 directory and type &#8220;a18 timer2&#8221;.<\/p>\n\n\n\n<p>As you can see, the code compiled with no errors.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"632\" height=\"186\" data-src=\"https:\/\/bryceautomation.com\/wp-content\/uploads\/2022\/10\/image-15.png\" alt=\"\" class=\"wp-image-13986 lazyload\" data-srcset=\"https:\/\/bryceautomation.com\/wp-content\/uploads\/2022\/10\/image-15.png 632w, https:\/\/bryceautomation.com\/wp-content\/uploads\/2022\/10\/image-15-300x88.png 300w\" data-sizes=\"(max-width: 632px) 100vw, 632px\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 632px; --smush-placeholder-aspect-ratio: 632\/186;\" \/><\/figure>\n\n\n\n<p>Let&#8217;s look at the directory again.  As you can see, we now have timer2.lst, and timer2.hex as well.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"770\" height=\"181\" data-src=\"https:\/\/bryceautomation.com\/wp-content\/uploads\/2022\/10\/image-16.png\" alt=\"\" class=\"wp-image-13987 lazyload\" data-srcset=\"https:\/\/bryceautomation.com\/wp-content\/uploads\/2022\/10\/image-16.png 770w, https:\/\/bryceautomation.com\/wp-content\/uploads\/2022\/10\/image-16-300x71.png 300w, https:\/\/bryceautomation.com\/wp-content\/uploads\/2022\/10\/image-16-768x181.png 768w\" data-sizes=\"(max-width: 770px) 100vw, 770px\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 770px; --smush-placeholder-aspect-ratio: 770\/181;\" \/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Send your File to the COSMAC<\/h2>\n\n\n\n<p>At this point, you are ready to send your file to the COSMAC.  If you use Linux, a good program is minicom.  For Windows, a good terminal is TeraTerm.  Just be sure to set your character and line feed delays.  10ms is usually a good delay time for each.  Be sure to connect to your COSMAC.<\/p>\n\n\n\n<p>Open your hex file with a standard text editor.  The object code is in the INTEL HEX file format.  Each line ends with a checksum.  The last line indicates the end of the file.  Set your COSMAC to receive the file, and then paste the object code into your terminal emulator.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"843\" height=\"75\" data-src=\"https:\/\/bryceautomation.com\/wp-content\/uploads\/2022\/10\/image-18.png\" alt=\"\" class=\"wp-image-13989 lazyload\" data-srcset=\"https:\/\/bryceautomation.com\/wp-content\/uploads\/2022\/10\/image-18.png 843w, https:\/\/bryceautomation.com\/wp-content\/uploads\/2022\/10\/image-18-300x27.png 300w, https:\/\/bryceautomation.com\/wp-content\/uploads\/2022\/10\/image-18-768x68.png 768w\" data-sizes=\"(max-width: 843px) 100vw, 843px\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 843px; --smush-placeholder-aspect-ratio: 843\/75;\" \/><\/figure>\n\n\n\n<p>At this point set your program counter to the start of the user program and place your processor into run mode.<\/p>\n\n\n\n<p>For more information, visit the <a href=\"https:\/\/bryceautomation.com\/index.php\/category\/vintage-computers\/\">Vintage Computer Category Page!<\/a><\/p>\n\n\n\n<p>&#8212; Ricky Bryce<\/p>\n\n\n\n<p> <\/p>\n<div id=\"bryce-4029015461\" 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 A18 Assembler for COSMAC The A18 Assembler for COSMAC will convert your COSMAC assembly programs to object code. After that, you can send the file to your processor. I&#8217;m using Debian 11 for this example, but the A18 package also comes with a .exe file if you are stuck with Windows. Keep <a class=\"moretag btn btn-primary\" href=\"https:\/\/bryceautomation.com\/index.php\/2022\/10\/22\/a18-assembler-for-cosmac\/\">Read More \u00bb<\/a><\/p>\n","protected":false},"author":1,"featured_media":13982,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[821,727],"tags":[827,828,822,830,829],"class_list":{"0":"post-13981","1":"post","2":"type-post","3":"status-publish","4":"format-standard","5":"has-post-thumbnail","7":"category-cosmac","8":"category-vintage-computers","9":"tag-a18","10":"tag-assembler","11":"tag-cosmac","12":"tag-elf","13":"tag-opcodes","14":"czr-hentry"},"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.3 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>A18 Assembler for COSMAC - Bryce Automation<\/title>\n<meta name=\"description\" content=\"Set up, and create your object code using the A18 Assembler for COSMAC. This will work in both Linux and Windows.\" \/>\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\/10\/22\/a18-assembler-for-cosmac\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"A18 Assembler for COSMAC - Bryce Automation\" \/>\n<meta property=\"og:description\" content=\"Set up, and create your object code using the A18 Assembler for COSMAC. This will work in both Linux and Windows.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/bryceautomation.com\/index.php\/2022\/10\/22\/a18-assembler-for-cosmac\/\" \/>\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-10-22T10:26:48+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2022-10-22T10:26:51+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/bryceautomation.com\/wp-content\/uploads\/2022\/10\/image-13.png\" \/>\n\t<meta property=\"og:image:width\" content=\"285\" \/>\n\t<meta property=\"og:image:height\" content=\"282\" \/>\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\\\/10\\\/22\\\/a18-assembler-for-cosmac\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/bryceautomation.com\\\/index.php\\\/2022\\\/10\\\/22\\\/a18-assembler-for-cosmac\\\/\"},\"author\":{\"name\":\"Ricky\",\"@id\":\"https:\\\/\\\/bryceautomation.com\\\/#\\\/schema\\\/person\\\/5d5b0f6f6ad768f1ee52968338e63af7\"},\"headline\":\"A18 Assembler for COSMAC\",\"datePublished\":\"2022-10-22T10:26:48+00:00\",\"dateModified\":\"2022-10-22T10:26:51+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/bryceautomation.com\\\/index.php\\\/2022\\\/10\\\/22\\\/a18-assembler-for-cosmac\\\/\"},\"wordCount\":856,\"commentCount\":0,\"image\":{\"@id\":\"https:\\\/\\\/bryceautomation.com\\\/index.php\\\/2022\\\/10\\\/22\\\/a18-assembler-for-cosmac\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/bryceautomation.com\\\/wp-content\\\/uploads\\\/2022\\\/10\\\/image-13.png\",\"keywords\":[\"A18\",\"Assembler\",\"COSMAC\",\"ELF\",\"OPCODES\"],\"articleSection\":[\"COSMAC\",\"Vintage Computers\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/bryceautomation.com\\\/index.php\\\/2022\\\/10\\\/22\\\/a18-assembler-for-cosmac\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/bryceautomation.com\\\/index.php\\\/2022\\\/10\\\/22\\\/a18-assembler-for-cosmac\\\/\",\"url\":\"https:\\\/\\\/bryceautomation.com\\\/index.php\\\/2022\\\/10\\\/22\\\/a18-assembler-for-cosmac\\\/\",\"name\":\"A18 Assembler for COSMAC - Bryce Automation\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/bryceautomation.com\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/bryceautomation.com\\\/index.php\\\/2022\\\/10\\\/22\\\/a18-assembler-for-cosmac\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/bryceautomation.com\\\/index.php\\\/2022\\\/10\\\/22\\\/a18-assembler-for-cosmac\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/bryceautomation.com\\\/wp-content\\\/uploads\\\/2022\\\/10\\\/image-13.png\",\"datePublished\":\"2022-10-22T10:26:48+00:00\",\"dateModified\":\"2022-10-22T10:26:51+00:00\",\"author\":{\"@id\":\"https:\\\/\\\/bryceautomation.com\\\/#\\\/schema\\\/person\\\/5d5b0f6f6ad768f1ee52968338e63af7\"},\"description\":\"Set up, and create your object code using the A18 Assembler for COSMAC. This will work in both Linux and Windows.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/bryceautomation.com\\\/index.php\\\/2022\\\/10\\\/22\\\/a18-assembler-for-cosmac\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/bryceautomation.com\\\/index.php\\\/2022\\\/10\\\/22\\\/a18-assembler-for-cosmac\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/bryceautomation.com\\\/index.php\\\/2022\\\/10\\\/22\\\/a18-assembler-for-cosmac\\\/#primaryimage\",\"url\":\"https:\\\/\\\/bryceautomation.com\\\/wp-content\\\/uploads\\\/2022\\\/10\\\/image-13.png\",\"contentUrl\":\"https:\\\/\\\/bryceautomation.com\\\/wp-content\\\/uploads\\\/2022\\\/10\\\/image-13.png\",\"width\":285,\"height\":282,\"caption\":\"Introduction to the A18 Assembler for COSMAC\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/bryceautomation.com\\\/index.php\\\/2022\\\/10\\\/22\\\/a18-assembler-for-cosmac\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/bryceautomation.com\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"A18 Assembler for COSMAC\"}]},{\"@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":"A18 Assembler for COSMAC - Bryce Automation","description":"Set up, and create your object code using the A18 Assembler for COSMAC. This will work in both Linux and Windows.","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\/10\/22\/a18-assembler-for-cosmac\/","og_locale":"en_US","og_type":"article","og_title":"A18 Assembler for COSMAC - Bryce Automation","og_description":"Set up, and create your object code using the A18 Assembler for COSMAC. This will work in both Linux and Windows.","og_url":"https:\/\/bryceautomation.com\/index.php\/2022\/10\/22\/a18-assembler-for-cosmac\/","og_site_name":"Bryce Automation","article_author":"https:\/\/www.facebook.com\/ricky.bryce.7","article_published_time":"2022-10-22T10:26:48+00:00","article_modified_time":"2022-10-22T10:26:51+00:00","og_image":[{"width":285,"height":282,"url":"https:\/\/bryceautomation.com\/wp-content\/uploads\/2022\/10\/image-13.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\/10\/22\/a18-assembler-for-cosmac\/#article","isPartOf":{"@id":"https:\/\/bryceautomation.com\/index.php\/2022\/10\/22\/a18-assembler-for-cosmac\/"},"author":{"name":"Ricky","@id":"https:\/\/bryceautomation.com\/#\/schema\/person\/5d5b0f6f6ad768f1ee52968338e63af7"},"headline":"A18 Assembler for COSMAC","datePublished":"2022-10-22T10:26:48+00:00","dateModified":"2022-10-22T10:26:51+00:00","mainEntityOfPage":{"@id":"https:\/\/bryceautomation.com\/index.php\/2022\/10\/22\/a18-assembler-for-cosmac\/"},"wordCount":856,"commentCount":0,"image":{"@id":"https:\/\/bryceautomation.com\/index.php\/2022\/10\/22\/a18-assembler-for-cosmac\/#primaryimage"},"thumbnailUrl":"https:\/\/bryceautomation.com\/wp-content\/uploads\/2022\/10\/image-13.png","keywords":["A18","Assembler","COSMAC","ELF","OPCODES"],"articleSection":["COSMAC","Vintage Computers"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/bryceautomation.com\/index.php\/2022\/10\/22\/a18-assembler-for-cosmac\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/bryceautomation.com\/index.php\/2022\/10\/22\/a18-assembler-for-cosmac\/","url":"https:\/\/bryceautomation.com\/index.php\/2022\/10\/22\/a18-assembler-for-cosmac\/","name":"A18 Assembler for COSMAC - Bryce Automation","isPartOf":{"@id":"https:\/\/bryceautomation.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/bryceautomation.com\/index.php\/2022\/10\/22\/a18-assembler-for-cosmac\/#primaryimage"},"image":{"@id":"https:\/\/bryceautomation.com\/index.php\/2022\/10\/22\/a18-assembler-for-cosmac\/#primaryimage"},"thumbnailUrl":"https:\/\/bryceautomation.com\/wp-content\/uploads\/2022\/10\/image-13.png","datePublished":"2022-10-22T10:26:48+00:00","dateModified":"2022-10-22T10:26:51+00:00","author":{"@id":"https:\/\/bryceautomation.com\/#\/schema\/person\/5d5b0f6f6ad768f1ee52968338e63af7"},"description":"Set up, and create your object code using the A18 Assembler for COSMAC. This will work in both Linux and Windows.","breadcrumb":{"@id":"https:\/\/bryceautomation.com\/index.php\/2022\/10\/22\/a18-assembler-for-cosmac\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/bryceautomation.com\/index.php\/2022\/10\/22\/a18-assembler-for-cosmac\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/bryceautomation.com\/index.php\/2022\/10\/22\/a18-assembler-for-cosmac\/#primaryimage","url":"https:\/\/bryceautomation.com\/wp-content\/uploads\/2022\/10\/image-13.png","contentUrl":"https:\/\/bryceautomation.com\/wp-content\/uploads\/2022\/10\/image-13.png","width":285,"height":282,"caption":"Introduction to the A18 Assembler for COSMAC"},{"@type":"BreadcrumbList","@id":"https:\/\/bryceautomation.com\/index.php\/2022\/10\/22\/a18-assembler-for-cosmac\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/bryceautomation.com\/"},{"@type":"ListItem","position":2,"name":"A18 Assembler for COSMAC"}]},{"@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\/13981","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=13981"}],"version-history":[{"count":0,"href":"https:\/\/bryceautomation.com\/index.php\/wp-json\/wp\/v2\/posts\/13981\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/bryceautomation.com\/index.php\/wp-json\/wp\/v2\/media\/13982"}],"wp:attachment":[{"href":"https:\/\/bryceautomation.com\/index.php\/wp-json\/wp\/v2\/media?parent=13981"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/bryceautomation.com\/index.php\/wp-json\/wp\/v2\/categories?post=13981"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/bryceautomation.com\/index.php\/wp-json\/wp\/v2\/tags?post=13981"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}