<br />
<b>Notice</b>:  Trying to access array offset on value of type bool in <b>/mnt/cpcwiki-httpdocs/includes/libs/IPSet.php</b> on line <b>243</b><br />
<br />
<b>Notice</b>:  Trying to access array offset on value of type bool in <b>/mnt/cpcwiki-httpdocs/includes/libs/IPSet.php</b> on line <b>246</b><br />
<br />
<b>Notice</b>:  Trying to access array offset on value of type bool in <b>/mnt/cpcwiki-httpdocs/includes/libs/IPSet.php</b> on line <b>243</b><br />
<br />
<b>Notice</b>:  Trying to access array offset on value of type bool in <b>/mnt/cpcwiki-httpdocs/includes/libs/IPSet.php</b> on line <b>246</b><br />
<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
		<id>https://oldwiki.cpcwiki.eu/index.php?action=history&amp;feed=atom&amp;title=Basm</id>
		<title>Basm - Revision history</title>
		<link rel="self" type="application/atom+xml" href="https://oldwiki.cpcwiki.eu/index.php?action=history&amp;feed=atom&amp;title=Basm"/>
		<link rel="alternate" type="text/html" href="https://oldwiki.cpcwiki.eu/index.php?title=Basm&amp;action=history"/>
		<updated>2026-08-29T15:18:27Z</updated>
		<subtitle>Revision history for this page on the wiki</subtitle>
		<generator>MediaWiki 1.25.1</generator>

	<entry>
		<id>https://oldwiki.cpcwiki.eu/index.php?title=Basm&amp;diff=112749&amp;oldid=prev</id>
		<title>Krusty: Add link on benediction</title>
		<link rel="alternate" type="text/html" href="https://oldwiki.cpcwiki.eu/index.php?title=Basm&amp;diff=112749&amp;oldid=prev"/>
				<updated>2023-09-28T12:29:53Z</updated>
		
		<summary type="html">&lt;p&gt;Add link on benediction&lt;/p&gt;
&lt;table class='diff diff-contentalign-left'&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
				&lt;tr style='vertical-align: top;'&gt;
				&lt;td colspan='2' style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan='2' style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;Revision as of 12:29, 28 September 2023&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;L1&quot; &gt;Line 1:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 1:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== About ==&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== About ==&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Benediction ASsembler (BASM in short) is a modern Z80 assembler. He has taken its inspiration from various Z80 assembler (Maxam/Winape, sjasmplus, rasm, vasm, BRASS, glass, zasm) as well as assemblers from other platforms (asm11, sarcasm). It is tailored for Amstrad CPC demomaking and has been successfully used to develop the Amstrad CPC demo [[Can Robots Take Control?]][https://www.pouet.net/prod.php?which=88554]. It has been still improved since and will serve for futur productions too.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;[[&lt;/ins&gt;Benediction&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;]] &lt;/ins&gt;ASsembler (BASM in short) is a modern Z80 assembler. He has taken its inspiration from various Z80 assembler (Maxam/Winape, sjasmplus, rasm, vasm, BRASS, glass, zasm) as well as assemblers from other platforms (asm11, sarcasm). It is tailored for Amstrad CPC demomaking and has been successfully used to develop the Amstrad CPC demo [[Can Robots Take Control?]][https://www.pouet.net/prod.php?which=88554]. It has been still improved since and will serve for futur productions too.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;The documentation [https://cpcsdk.github.io/rust.cpclib/basm/] is quite minimal at the moment, but included example code should be still valid and assembled properly. The user base being quite small, lots of bugs can remain. Do note hesitate to fill issues https://github.com/cpcsdk/rust.cpclib/issues or propose fixes.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;The documentation [https://cpcsdk.github.io/rust.cpclib/basm/] is quite minimal at the moment, but included example code should be still valid and assembled properly. The user base being quite small, lots of bugs can remain. Do note hesitate to fill issues https://github.com/cpcsdk/rust.cpclib/issues or propose fixes.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;

&lt;!-- diff cache key wikidb:diff:version:1.11a:oldid:112748:newid:112749 --&gt;
&lt;/table&gt;</summary>
		<author><name>Krusty</name></author>	</entry>

	<entry>
		<id>https://oldwiki.cpcwiki.eu/index.php?title=Basm&amp;diff=112748&amp;oldid=prev</id>
		<title>Krusty: Created page with &quot;== About ==  Benediction ASsembler (BASM in short) is a modern Z80 assembler. He has taken its inspiration from various Z80 assembler (Maxam/Winape, sjasmplus, rasm, vasm, BRA...&quot;</title>
		<link rel="alternate" type="text/html" href="https://oldwiki.cpcwiki.eu/index.php?title=Basm&amp;diff=112748&amp;oldid=prev"/>
				<updated>2023-09-28T12:28:04Z</updated>
		
		<summary type="html">&lt;p&gt;Created page with &amp;quot;== About ==  Benediction ASsembler (BASM in short) is a modern Z80 assembler. He has taken its inspiration from various Z80 assembler (Maxam/Winape, sjasmplus, rasm, vasm, BRA...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;== About ==&lt;br /&gt;
&lt;br /&gt;
Benediction ASsembler (BASM in short) is a modern Z80 assembler. He has taken its inspiration from various Z80 assembler (Maxam/Winape, sjasmplus, rasm, vasm, BRASS, glass, zasm) as well as assemblers from other platforms (asm11, sarcasm). It is tailored for Amstrad CPC demomaking and has been successfully used to develop the Amstrad CPC demo [[Can Robots Take Control?]][https://www.pouet.net/prod.php?which=88554]. It has been still improved since and will serve for futur productions too.&lt;br /&gt;
&lt;br /&gt;
The documentation [https://cpcsdk.github.io/rust.cpclib/basm/] is quite minimal at the moment, but included example code should be still valid and assembled properly. The user base being quite small, lots of bugs can remain. Do note hesitate to fill issues https://github.com/cpcsdk/rust.cpclib/issues or propose fixes.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Features of Interest ==&lt;br /&gt;
&lt;br /&gt;
*    Possibility to assemble fake instructions (e.g. ld hl, de).&lt;br /&gt;
*    Possibility to use standard directives (e.g. incbin 'file.asm).&lt;br /&gt;
*    Rare directives and functions (e.g. ld a, opcode(xor a)).&lt;br /&gt;
*    Macros definition and usage (e.g. MY_MACRO_WITH_TWO_ARGS 1, &amp;quot;string&amp;quot;).&lt;br /&gt;
*    Function definition and usage (e.g. db 5, my_function(3)).&lt;br /&gt;
*    Expressions able to handle numbers, strings, lists, matrices.&lt;br /&gt;
*    Handling of Amstrad CPC snapshots.&lt;br /&gt;
*    Possibility to execute directly the assembled project in the Amstrad CPC thanks to the M4/CPC WIFI card.&lt;br /&gt;
*    Multi-pass (in fact, BASM uses as many passes as needed).&lt;br /&gt;
*    Multiplatform (mainly tested on Linux and Windows).&lt;br /&gt;
*    Embedding of various ASM source files inside BASM that can be used by the users.&lt;br /&gt;
*    Possibility to write LOCOMOTIVE BASIC for easily writing Amstrad CPC bootstrap loaders.&lt;br /&gt;
&lt;br /&gt;
== Hello World ==&lt;br /&gt;
&lt;br /&gt;
An hello world representative of the functionalities of BASM would be:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
    snainit &amp;quot;../cpclib-sna/src/cpc6128.sna&amp;quot; ; should be uneeded by properly specifying sna properties&lt;br /&gt;
    org 0x4000&lt;br /&gt;
    run $&lt;br /&gt;
    ld hl, text_content&lt;br /&gt;
loop&lt;br /&gt;
        ld a, (hl)&lt;br /&gt;
        or a&lt;br /&gt;
        jp z, finished&lt;br /&gt;
        call TXT_OUTPUT&lt;br /&gt;
        inc hl&lt;br /&gt;
        jp loop&lt;br /&gt;
finished&lt;br /&gt;
    jp $&lt;br /&gt;
text_content&lt;br /&gt;
    db &amp;quot;Hello, world!&amp;quot;, 0&lt;br /&gt;
    include &amp;quot;inner://firmware/txtvdu.asm&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Links ==&lt;br /&gt;
&lt;br /&gt;
* Sources&amp;amp;nbsp: https://github.com/cpcsdk/rust.cpclib&lt;br /&gt;
* Documentation http://z00m128.github.io/sjasmplus/documentation.html&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:CrossDev]] [[Category:Programming software]] [[Category:Assembler]]&lt;/div&gt;</summary>
		<author><name>Krusty</name></author>	</entry>

	</feed>