Skip to content

Commit c0cede9

Browse files
committed
Removed more deprecated stuff from manual
1 parent 226182e commit c0cede9

File tree

2 files changed

+4
-36
lines changed

2 files changed

+4
-36
lines changed

docs/changelog/index.html

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -119,7 +119,6 @@ <h3>Deprecated features:</h3>
119119
<li>Windows-specific paths (e.g. <code>incsrc dir\file.asm</code>): Use cross-platform paths instead (<code>incsrc dir/file.asm</code>).</li>
120120
<li><code>table</code> command: Assign characters directly instead, like <code>'a' = $00</code>.</li>
121121
<li>Labels in <code>padbyte</code> or <code>fillbyte</code> commands.</li>
122-
<li><code>spc700-raw</code> architecture: Use <code>spc700</code> with <code>norom</code> instead.</li>
123122
<li><code>fastrom</code>: Has never actually worked and can be removed.</li>
124123
<li><code>header</code>: Doesn't do anything and can be removed.</li>
125124
<li>Non-UTF-8 source files: Re-save your source files as UTF-8 in a text editor of choice.</li>

docs/manual/index.html

Lines changed: 4 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -61,9 +61,7 @@ <h1>Asar</h1>
6161
<li>
6262
<a href="#compatibility">Compatibility Settings</a>
6363
<ul>
64-
<li><a href="#xkas">xkas</a></li>
6564
<li><a href="#asar">asar</a></li>
66-
<li><a href="#warn-xkas">warn xkas</a></li>
6765
<li><a href="#namespace-nested">namespace nested</a></li>
6866
</ul>
6967
</li>
@@ -1619,24 +1617,6 @@ <h4 id="pseudo-opcodes">Pseudo Opcodes</h4>
16191617
<hr />
16201618
<div id="compatibility"><h3>Compatibility Settings</h3>
16211619
Compatibility settings determine how Asar operates in certain situations. They can be changed via a number of commands.
1622-
<h4 id="xkas">xkas</h4>
1623-
The <code class="65c816_asar">xkas</code> command enables Asar's xkas compatibility mode. In this mode, Asar tries to replicate the behavior of xkas as much as possible and throws warnings whenever it detects the usage of Asar-specific features that are not compatible with xkas. This command has to be used before any other command in the same patch. The intended purpose of the xkas command is to use it in conjunction with <code class="65c816_asar">;@</code> to write patches that can be assembled with both, Asar and xkas. See section <a href="#comments">Comments</a> for details. Note that as of Asar version 1.40, xkas backwards compatibility is officially deprecated and is no longer guaranteed to work as expected. New features introduced into Asar since then might not throw warnings when attempted to use in xkas compatibility mode and old xkas patches might not assemble correctly with Asar anymore, even when xkas compatibility mode is used.
1624-
<pre><code class="65c816_asar">;@xkas
1625-
1626-
!is_asar=0
1627-
;@!is_asar=1
1628-
1629-
;@if !is_asar == 0
1630-
macro do_something()
1631-
; Do something xkas-specific here
1632-
endmacro
1633-
;@else
1634-
;@ macro do_something()
1635-
;@ ; Do something asar-specific here
1636-
;@ endmacro
1637-
;@endif
1638-
1639-
do_something()</code></pre>
16401620
<h4 id="asar">asar</h4>
16411621
<pre><code class="65c816_asar">asar {ver}</code></pre>
16421622
The <code class="65c816_asar">asar</code> command can be used to specify the minimum Asar version your patch is compatible with. The <code>ver</code> parameter specifies the minimum required Asar version. When a user tries to assemble the patch in an older version of Asar, an error will be thrown, stating that the used Asar version is too old. This should be the first command in your patch, otherwise an error will be thrown.
@@ -1648,9 +1628,6 @@ <h4 id="asar">asar</h4>
16481628
else
16491629
; Do something else
16501630
endif</code></pre>
1651-
<h4 id="warn-xkas">warn xkas</h4>
1652-
<pre><code class="65c816_asar">warn xkas {on/off}</code></pre>
1653-
The <code class="65c816_asar">warn xkas</code> command determines whether Asar should throw warnings on behavior that is known to be different between xkas and Asar. Use <code>warn xkas on</code> to enable these warnings and <code>warn xkas off</code> to disable them. It's recommended to only enable them when not using <a href="#xkas">xkas compatibility mode</a>. Note that some behavioral changes throw warnings or errors regardless of this setting.
16541631
<h4 id="namespace-nested">namespace nested</h4>
16551632
<pre><code class="65c816_asar">namespace nested {on/off}</code></pre>
16561633
The <code class="65c816_asar">namespace nested</code> command enables (<code class="65c816_asar">on</code>) or disables (<code class="65c816_asar">off</code>) nested namespaces. The default is <code class="65c816_asar">off</code>. See section <a href="#namespaces">Namespaces</a> for details.<br /><br />
@@ -1662,7 +1639,6 @@ <h4 id="encoding">Encoding</h4>
16621639
<h4 id="comments">Comments</h4>
16631640
You can use ; to add comments to your code, making it easier to read and understand for other people. Everything from the ; to the end of the line is silently ignored by Asar.
16641641
<pre><code class="65c816_asar"> lda $00 ; Asar only sees the lda $00 and ignores everything else</code></pre>
1665-
An exception from this rule are lines starting with <code class="65c816_asar">;@</code>, which are assembled normally. The purpose of this is to add code to your patch that can be used with both xkas and Asar. In xkas, lines with ;@ will simply be ignored, whereas in Asar, they will be assembled. If you don't care about backwards-compatibility, you can also just use <code class="65c816_asar">@</code>, which will make your patch only assemble with Asar and fail with xkas. Aditionally, when Asar finds any unknown command on a line starting with ;@ or @, it will only throw a warning instead of an error. This can, at least in theory, be used to include optional features from newer Asar versions and still have your patch be compatible with older Asar versions. See section <a href="#compatibility">Compatibility Settings</a> for details on xkas compatibility.
16661642
<h4 id="brackets">Brackets</h4>
16671643
Brackets, { and }, may be used to help organize your code structurally. They're treated as commands by the assembler, which means they follow the same rules as other commands, but they otherwise have no effect on code assembly and are silently ignored. Since brackets have no effect on code assembly, they don't even have to match, either. It's entirely up to the coder whether, how and in what quantity brackets are used.<br />
16681644
<pre><code class="65c816_asar"> lda $00
@@ -2812,14 +2788,7 @@ <h4 id="if-else">if/elseif/else/endif</h4>
28122788
else
28132789
error "Unsupported mode! Please choose 0, 1, 2 or 3!"
28142790
endif</code></pre>
2815-
Alternatively, if conditionals can also be constructed on a single line via the following syntax:
2816-
<pre><code class="65c816_asar">if {condition} : {codeblock}[ : codeblock...]</code></pre>
2817-
Note that no endif needs to be used here and that else or elseif are unsupported when using this syntax.
2818-
<pre><code class="65c816_asar">PressedY:
2819-
if !fireballs_enabled : %PlaySoundEffect(!fireball_sfx) : jsr ShootFireball
2820-
rtl
2821-
</code></pre>
2822-
If you plan to use labels in if commands, note that there's certain restrictions that apply. More specifically, only static labels can be used. That is, only labels whose address can't change between Asar's passes, as demonstrated by the following example:
2791+
If you plan to use labels in if conditions, note that there's certain restrictions that apply. More specifically, only static labels can be used. That is, only labels whose address can't change between Asar's passes, as demonstrated by the following example:
28232792
<pre><code class="65c816_asar">FirstLabel = $018000
28242793

28252794
freecode
@@ -3030,7 +2999,7 @@ <h4 id="incsrc">incsrc</h4>
30302999
<h4 id="includefrom">include/includefrom</h4>
30313000
<pre><code class="65c816_asar">include</code></pre>
30323001
<pre><code class="65c816_asar">includefrom {filename}</code></pre>
3033-
The include and includefrom commands specify that a file is only to be included in another file and not to be assembled directly. When a user tries to assemble a file containing include or includefrom directly, an error is thrown. The includefrom command behaves identically to the include command with the exception that it is passed the name of the file it is meant to be included from (note that Asar doesn't verify whether it's actually included from that file, it only checks whether it's included from another file at all). When making use of include or includefrom, they must be the first command within their respective file and can't be used in combination with the <a href="#asar">asar</a> or <a href="#xkas">xkas</a> command in the same file.
3002+
The include and includefrom commands specify that a file is only to be included in another file and not to be assembled directly. When a user tries to assemble a file containing include or includefrom directly, an error is thrown. The includefrom command behaves identically to the include command with the exception that it is passed the name of the file it is meant to be included from (note that Asar doesn't verify whether it's actually included from that file, it only checks whether it's included from another file at all). When making use of include or includefrom, they must be the first command within their respective file and can't be used in combination with the <a href="#asar">asar</a> command in the same file.
30343003
<pre><code class="65c816_asar">; Contents of shared.asm:
30353004
;@includefrom main.asm
30363005
;
@@ -3251,14 +3220,14 @@ <h4 id="print">print</h4>
32513220
<h4 id="warn">warn</h4>
32523221
The warn command lets you output a warning message to the user. Usage:
32533222
<pre><code class="65c816_asar">warn [text_or_function...]</code></pre>
3254-
where <code>custom_warning_text</code> can be a custom warning text and uses the same format as the <code>print</code> command. A warning does not cause compilation to fail, so it can be used to inform the user about potential dangers. Warning messages are printed to stderr by default, but are printed to stdout if the Asar executable is renamed to xkas.exe. This is intended for compatibility purposes.
3223+
where <code>custom_warning_text</code> can be a custom warning text and uses the same format as the <code>print</code> command. A warning does not cause compilation to fail, so it can be used to inform the user about potential dangers. Warning messages are printed to stderr.
32553224
<pre><code class="65c816_asar">if read1($00FFD5) == $23
32563225
warn "SA-1 compatibility of this patch is untested, use with caution!"
32573226
endif</code></pre>
32583227
<h4 id="error">error</h4>
32593228
The error command lets you output an error message to the user. Usage:
32603229
<pre><code class="65c816_asar">error [text_or_function...]</code></pre>
3261-
where <code>custom_error_text</code> can be a custom error text and uses the same format as the <code>print</code> command. An error causes compilation to fail, so it should be used to inform the user about irrecoverable error states. Error messages are printed to stderr by default, but are printed to stdout if the Asar executable is renamed to xkas.exe. This is intended for compatibility purposes.
3230+
where <code>custom_error_text</code> can be a custom error text and uses the same format as the <code>print</code> command. An error causes compilation to fail, so it should be used to inform the user about irrecoverable error states. Error messages are printed to stderr.
32623231
<pre><code class="65c816_asar">if read1($00FFD5) == $23
32633232
error "This patch is not SA-1 compatible!"
32643233
endif</code></pre>

0 commit comments

Comments
 (0)