{"id":3239,"date":"2025-04-17T10:28:34","date_gmt":"2025-04-17T10:28:34","guid":{"rendered":"https:\/\/webprojects.cloud\/wordpress\/splatco\/?post_type=spl_knowledgebase&#038;p=3239"},"modified":"2025-06-10T07:42:50","modified_gmt":"2025-06-10T07:42:50","slug":"builder-how-you-control-the-result-in-brief","status":"publish","type":"spl_knowledgebase","link":"https:\/\/webprojects.cloud\/wordpress\/splatco\/knowledgebase\/splat-pc-programming-software\/splat-pc-builder\/builder-how-you-control-the-result-in-brief\/","title":{"rendered":"Builder: How you control the result, in brief"},"content":{"rendered":"\n<p>Builder gives you quite fine control over the way in which your final combined (or merged) file is constituted. There is some extra work involved, but for the larger projects the extra work is relatively minor and the benefits are considerable.<\/p>\n\n\n\n<p>Builder requires some extra stuff inside each *.SPT source file, plus one *.b1d &#8220;build file&#8221;. (that&#8217;s a numeral one between the b and the d, to avoid conflicts with any file extension used by others).<\/p>\n\n\n\n<p>Within the *.SPT source files you &#8220;tag&#8221; sections of code as belonging to named segments. When Builder encounters a segment tag it will direct everything below that to the named segment, until it encounters another tag. Simple tags (there are couple of slightly more complicated ones) are of the form:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">;&lt;SEGMENTNAME&gt;\t;Anything after the &gt; will be directed to the output segment named.<\/pre>\n\n\n\n<p>The first semicolon makes this a comment line as far as the SPLat\/PC simulator or translator are concerned. The word appearing between &lt; and &gt; is used by Builder. The &lt; and &gt; themselves delineate the segment name.<\/p>\n\n\n\n<p>The leading semicolon is part of the tag. You must have&nbsp;<code>;&lt;<\/code>&nbsp;. A&nbsp;<code>&lt;<\/code>&nbsp;on its own will not work.<\/p>\n\n\n\n<p>Here is a very brief example of a source file containing 3 simple segments:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">;&lt;MEQUSEG>;Any <a href=\"https:\/\/webprojects.cloud\/wordpress\/splatco\/knowledgebase\/programming-reference\/directives\/mequ-directive\/\">mEQU<\/a> statements go here<br>Counter\tmEQU\t12\t;A counter in <a href=\"https:\/\/webprojects.cloud\/wordpress\/splatco\/knowledgebase\/programming-reference\/instructions-arranged-by-function\/memory-instructions\/permstore-d2\/\">permanent memory<\/a><br>;&lt;CODESEG>;The actual program code goes here<br>Count:\tPermRecall<br>\t\tIncM\t\tCounter<br>\t\tPermStore<br>\t\tReturn<br>;&lt;NV0SEG>;------ NVEM0 tables --------<br>SineTable:\tNV0fNUM\t1.0<br>\t\t\tNV0fNUM\t1.02<br>... etc ..<\/pre>\n\n\n\n<p>The above program contains 3 segments,&nbsp;<code>MEQUSEG<\/code>,&nbsp;<code>CODESEG<\/code>&nbsp;and&nbsp;<code>NV0SEG<\/code>. The names must consist of letters and\/or numerals. There is no significance to them all ending in &#8216;SEG&#8217;. Builder does not care about upper\/lower case. The names must be a single word.<\/p>\n\n\n\n<p>The matching build file will contain 3 things:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>A list of the allowed segment names (you can define your own)<\/li>\n\n\n\n<li>A separator, which is&nbsp;<code>#---<\/code>. This just tells Builder it has come to the end of the segment names<\/li>\n\n\n\n<li>A list of the *.SPT files that are to be merged.<\/li>\n<\/ol>\n\n\n\n<p>The build file is what controls the order in which files are read and the order in which segments are emitted. A build file for our current simple example might look like this:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">MEQUSEG\nCODESEG\nNV0SEG\n#---\t;Separator\nSource1.SPT\nSource2.SPT\nSource3.SPT<\/pre>\n\n\n\n<p>The build file may contain comments using normal SPLat conventions.<\/p>\n\n\n\n<p>In the next few screens we will present a few additional capabilities of Builder.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Builder gives you quite fine control over the way in which your final combined (or merged) file is constituted. There is some extra work involved,&#8230;<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":3236,"menu_order":1,"template":"","class_list":["post-3239","spl_knowledgebase","type-spl_knowledgebase","status-publish","hentry"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v25.6 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Builder: How you control the result, in brief - SPLat Controls<\/title>\n<meta name=\"robots\" content=\"noindex, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Builder: How you control the result, in brief - SPLat Controls\" \/>\n<meta property=\"og:description\" content=\"Builder gives you quite fine control over the way in which your final combined (or merged) file is constituted. There is some extra work involved,...\" \/>\n<meta property=\"og:url\" content=\"https:\/\/webprojects.cloud\/wordpress\/splatco\/knowledgebase\/splat-pc-programming-software\/splat-pc-builder\/builder-how-you-control-the-result-in-brief\/\" \/>\n<meta property=\"og:site_name\" content=\"SPLat Controls\" \/>\n<meta property=\"article:modified_time\" content=\"2025-06-10T07:42:50+00:00\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"2 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/webprojects.cloud\/wordpress\/splatco\/knowledgebase\/splat-pc-programming-software\/splat-pc-builder\/builder-how-you-control-the-result-in-brief\/\",\"url\":\"https:\/\/webprojects.cloud\/wordpress\/splatco\/knowledgebase\/splat-pc-programming-software\/splat-pc-builder\/builder-how-you-control-the-result-in-brief\/\",\"name\":\"Builder: How you control the result, in brief - SPLat Controls\",\"isPartOf\":{\"@id\":\"https:\/\/webprojects.cloud\/wordpress\/splatco\/#website\"},\"datePublished\":\"2025-04-17T10:28:34+00:00\",\"dateModified\":\"2025-06-10T07:42:50+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/webprojects.cloud\/wordpress\/splatco\/knowledgebase\/splat-pc-programming-software\/splat-pc-builder\/builder-how-you-control-the-result-in-brief\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/webprojects.cloud\/wordpress\/splatco\/knowledgebase\/splat-pc-programming-software\/splat-pc-builder\/builder-how-you-control-the-result-in-brief\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/webprojects.cloud\/wordpress\/splatco\/knowledgebase\/splat-pc-programming-software\/splat-pc-builder\/builder-how-you-control-the-result-in-brief\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/webprojects.cloud\/wordpress\/splatco\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"SPLat\/PC programming software\",\"item\":\"https:\/\/webprojects.cloud\/wordpress\/splatco\/knowledgebase\/splat-pc-programming-software\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"SPLat\/PC: Builder\",\"item\":\"https:\/\/webprojects.cloud\/wordpress\/splatco\/knowledgebase\/splat-pc-programming-software\/splat-pc-builder\/\"},{\"@type\":\"ListItem\",\"position\":4,\"name\":\"Builder: How you control the result, in brief\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/webprojects.cloud\/wordpress\/splatco\/#website\",\"url\":\"https:\/\/webprojects.cloud\/wordpress\/splatco\/\",\"name\":\"SPLat Controls\",\"description\":\"OEM Embedded Machine Controllers\",\"publisher\":{\"@id\":\"https:\/\/webprojects.cloud\/wordpress\/splatco\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/webprojects.cloud\/wordpress\/splatco\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/webprojects.cloud\/wordpress\/splatco\/#organization\",\"name\":\"SPLat Controls\",\"url\":\"https:\/\/webprojects.cloud\/wordpress\/splatco\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/webprojects.cloud\/wordpress\/splatco\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/webprojects.cloud\/wordpress\/splatco\/wp-content\/uploads\/2024\/10\/logo.svg\",\"contentUrl\":\"https:\/\/webprojects.cloud\/wordpress\/splatco\/wp-content\/uploads\/2024\/10\/logo.svg\",\"caption\":\"SPLat Controls\"},\"image\":{\"@id\":\"https:\/\/webprojects.cloud\/wordpress\/splatco\/#\/schema\/logo\/image\/\"}}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Builder: How you control the result, in brief - SPLat Controls","robots":{"index":"noindex","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"og_locale":"en_US","og_type":"article","og_title":"Builder: How you control the result, in brief - SPLat Controls","og_description":"Builder gives you quite fine control over the way in which your final combined (or merged) file is constituted. There is some extra work involved,...","og_url":"https:\/\/webprojects.cloud\/wordpress\/splatco\/knowledgebase\/splat-pc-programming-software\/splat-pc-builder\/builder-how-you-control-the-result-in-brief\/","og_site_name":"SPLat Controls","article_modified_time":"2025-06-10T07:42:50+00:00","twitter_card":"summary_large_image","twitter_misc":{"Est. reading time":"2 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/webprojects.cloud\/wordpress\/splatco\/knowledgebase\/splat-pc-programming-software\/splat-pc-builder\/builder-how-you-control-the-result-in-brief\/","url":"https:\/\/webprojects.cloud\/wordpress\/splatco\/knowledgebase\/splat-pc-programming-software\/splat-pc-builder\/builder-how-you-control-the-result-in-brief\/","name":"Builder: How you control the result, in brief - SPLat Controls","isPartOf":{"@id":"https:\/\/webprojects.cloud\/wordpress\/splatco\/#website"},"datePublished":"2025-04-17T10:28:34+00:00","dateModified":"2025-06-10T07:42:50+00:00","breadcrumb":{"@id":"https:\/\/webprojects.cloud\/wordpress\/splatco\/knowledgebase\/splat-pc-programming-software\/splat-pc-builder\/builder-how-you-control-the-result-in-brief\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/webprojects.cloud\/wordpress\/splatco\/knowledgebase\/splat-pc-programming-software\/splat-pc-builder\/builder-how-you-control-the-result-in-brief\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/webprojects.cloud\/wordpress\/splatco\/knowledgebase\/splat-pc-programming-software\/splat-pc-builder\/builder-how-you-control-the-result-in-brief\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/webprojects.cloud\/wordpress\/splatco\/"},{"@type":"ListItem","position":2,"name":"SPLat\/PC programming software","item":"https:\/\/webprojects.cloud\/wordpress\/splatco\/knowledgebase\/splat-pc-programming-software\/"},{"@type":"ListItem","position":3,"name":"SPLat\/PC: Builder","item":"https:\/\/webprojects.cloud\/wordpress\/splatco\/knowledgebase\/splat-pc-programming-software\/splat-pc-builder\/"},{"@type":"ListItem","position":4,"name":"Builder: How you control the result, in brief"}]},{"@type":"WebSite","@id":"https:\/\/webprojects.cloud\/wordpress\/splatco\/#website","url":"https:\/\/webprojects.cloud\/wordpress\/splatco\/","name":"SPLat Controls","description":"OEM Embedded Machine Controllers","publisher":{"@id":"https:\/\/webprojects.cloud\/wordpress\/splatco\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/webprojects.cloud\/wordpress\/splatco\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/webprojects.cloud\/wordpress\/splatco\/#organization","name":"SPLat Controls","url":"https:\/\/webprojects.cloud\/wordpress\/splatco\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/webprojects.cloud\/wordpress\/splatco\/#\/schema\/logo\/image\/","url":"https:\/\/webprojects.cloud\/wordpress\/splatco\/wp-content\/uploads\/2024\/10\/logo.svg","contentUrl":"https:\/\/webprojects.cloud\/wordpress\/splatco\/wp-content\/uploads\/2024\/10\/logo.svg","caption":"SPLat Controls"},"image":{"@id":"https:\/\/webprojects.cloud\/wordpress\/splatco\/#\/schema\/logo\/image\/"}}]}},"_links":{"self":[{"href":"https:\/\/webprojects.cloud\/wordpress\/splatco\/wp-json\/wp\/v2\/spl_knowledgebase\/3239","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/webprojects.cloud\/wordpress\/splatco\/wp-json\/wp\/v2\/spl_knowledgebase"}],"about":[{"href":"https:\/\/webprojects.cloud\/wordpress\/splatco\/wp-json\/wp\/v2\/types\/spl_knowledgebase"}],"author":[{"embeddable":true,"href":"https:\/\/webprojects.cloud\/wordpress\/splatco\/wp-json\/wp\/v2\/users\/1"}],"up":[{"embeddable":true,"href":"https:\/\/webprojects.cloud\/wordpress\/splatco\/wp-json\/wp\/v2\/spl_knowledgebase\/3236"}],"wp:attachment":[{"href":"https:\/\/webprojects.cloud\/wordpress\/splatco\/wp-json\/wp\/v2\/media?parent=3239"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}