ref: 42007c5c92530338c8319f5b572db286396f5cc5
parent: e1f5352ba57c15c8bc951edd1141e38158954d75
author: Anthony Bentley <[email protected]>
date: Fri Nov 6 18:01:00 EST 2009
remove HTML formatting gunk from a lot of the docs
--- a/doc/asm.htm
+++ b/doc/asm.htm
@@ -1,136 +1,127 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
-"http://www.w3.org/TR/html4/loose.dtd">
-<HTML>
-<HEAD>
- <TITLE>xAsm</TITLE>
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
+ <title>xAsm</title>
<link rel="stylesheet" type="text/css" href="./style.css">
-</HEAD>
+</head>
+<body>
+<h1>xAsm Documentation</h1>
+<h2>Table of Contents</h2>
+<h3>General stuff</h3>
+<ul>
+ <li><a href="asm/history.htm">History</a>
+ <li><a href="asm/usage.htm">Usage</a>
+ <li><a href="asm/opt.htm">Changing options while assembling</a>
+ <li><a href="asm/popo.htm">The option stack</a>
+ <li><a href="asm/syntax.htm">Syntax and comments</a>
+ <li><a href="asm/section.htm">Sections</a>
+</ul>
-<BODY>
-<HR>
-<CENTER>
-<TABLE BORDER=0 BGCOLOR="#000000" CELLPADDING=25>
-<TR>
- <TD><FONT COLOR="#FFFFFF"><H2>xAsm Documentation</H2></FONT></TD>
-</TR>
-</TABLE>
-</CENTER><HR>
-<H2><CENTER>Table of Contents</CENTER></H2>
+<h3>Symbols</h3>
+<ul>
+ <li><a href="asm/symbols.htm">Symbols</a>
+ <li><a href="asm/export.htm">Exporting and importing symbols</a>
+ <li><a href="asm/purge.htm">Purging symbols</a>
+ <li><a href="asm/presym.htm">Predeclared symbols</a>
+</ul>
-<H3>General stuff</H3>
-<UL>
- <LI><A HREF="asm/history.htm">History</A>
- <LI><A HREF="asm/usage.htm">Usage</A>
- <LI><A HREF="asm/opt.htm">Changing options while assembling</A>
- <LI><A HREF="asm/popo.htm">The option stack</A>
- <LI><A HREF="asm/syntax.htm">Syntax and comments</A>
- <LI><A HREF="asm/section.htm">Sections</A>
-</UL>
+<h3>The macrolanguage</h3>
+<ul>
+ <li><a href="asm/print.htm">Printing out things during assembling</a>
+ <li><a href="asm/rept.htm">Automatically repeating blocks of code</a>
+ <li><a href="asm/fail.htm">Aborting the assembly process</a>
+ <li><a href="asm/include.htm">Including other sourcefiles</a>
+ <li><a href="asm/if.htm">Conditional assembling</a>
+ <li><a href="asm/expr_int.htm">Integer and Boolean expressions</a>
+ <li><a href="asm/expr_fix.htm">Fixed-point expressions and functions</a>
+ <li><a href="asm/expr_str.htm">String expressions, functions and formatting</a>
+ <li><a href="asm/miscfunc.htm">Other functions</a>
+</ul>
-<H3>Symbols</H3>
-<UL>
- <LI><A HREF="asm/symbols.htm">Symbols</A>
- <LI><A HREF="asm/export.htm">Exporting and importing symbols</A>
- <LI><A HREF="asm/purge.htm">Purging symbols</A>
- <LI><A HREF="asm/presym.htm">Predeclared symbols</A>
-</UL>
+<h3>Other ways than mnemonics to define data</h3>
+<ul>
+ <li><a href="asm/db.htm">Defining constant data</a>
+ <li><a href="asm/ds.htm">Declaring variables in a BSS section</a>
+ <li><a href="asm/incbin.htm">Including binary files</a>
+</ul>
-<H3>The macrolanguage</H3>
-<UL>
- <LI><A HREF="asm/print.htm">Printing out things during assembling</A>
- <LI><A HREF="asm/rept.htm">Automatically repeating blocks of code</A>
- <LI><A HREF="asm/fail.htm">Aborting the assembly process</A>
- <LI><A HREF="asm/include.htm">Including other sourcefiles</A>
- <LI><A HREF="asm/if.htm">Conditional assembling</A>
- <LI><A HREF="asm/expr_int.htm">Integer and Boolean expressions</A>
- <LI><A HREF="asm/expr_fix.htm">Fixed-point expressions and functions</A>
- <LI><A HREF="asm/expr_str.htm">String expressions, functions and formatting</A>
- <LI><A HREF="asm/miscfunc.htm">Other functions</A>
-</UL>
+<h3>Target specific information</h3>
+<ul>
+ <li><a href="asm/trg_gb.htm">The Gameboy</a>
+</ul>
-<H3>Other ways than mnemonics to define data</H3>
-<UL>
- <LI><A HREF="asm/db.htm">Defining constant data</A>
- <LI><A HREF="asm/ds.htm">Declaring variables in a BSS section</A>
- <LI><A HREF="asm/incbin.htm">Including binary files</A>
-</UL>
+<h3>Alphabetical list of the macro-language instructions and functions</h3>
+<ul>
+ <li><a href="asm/presym.htm">@</a>
+ <li><a href="asm/presym.htm">__DATE__</a>
+ <li><a href="asm/presym.htm">__LINE__</a>
+ <li><a href="asm/presym.htm">__TIME__</a>
+ <li><a href="asm/presym.htm">_NARG</a>
+ <li><a href="asm/presym.htm">_PI</a>
+ <li><a href="asm/presym.htm">_RS</a>
+ <li><a href="asm/expr_fix.htm">ACOS</a>
+ <li><a href="asm/expr_fix.htm">ASIN</a>
+ <li><a href="asm/expr_fix.htm">ATAN</a>
+ <li><a href="asm/expr_fix.htm">ATAN2</a>
+ <li><a href="asm/miscfunc.htm">BANK</a>
+ <li><a href="asm/section.htm">BSS</a>
+ <li><a href="asm/section.htm">CODE</a>
+ <li><a href="asm/expr_fix.htm">COS</a>
+ <li><a href="asm/section.htm">DATA</a>
+ <li><a href="asm/db.htm">DB</a>
+ <li><a href="asm/miscfunc.htm">DEF</a>
+ <li><a href="asm/expr_fix.htm">DIV</a>
+ <li><a href="asm/ds.htm">DS</a>
+ <li><a href="asm/db.htm">DW</a>
+ <li><a href="asm/if.htm">ELSE</a>
+ <li><a href="asm/if.htm">ENDC</a>
+ <li><a href="asm/macro.htm">ENDM</a>
+ <li><a href="asm/rept.htm">ENDR</a>
+ <li><a href="asm/equ.htm">EQU</a>
+ <li><a href="asm/equs.htm">EQUS</a>
+ <li><a href="asm/export.htm">EXPORT</a>
+ <li><a href="asm/fail.htm">FAIL</a>
+ <li><a href="asm/export.htm">GLOBAL</a>
+ <li><a href="asm/section.htm">HRAM</a>
+ <li><a href="asm/if.htm">IF</a>
+ <li><a href="asm/export.htm">IMPORT</a>
+ <li><a href="asm/incbin.htm">INCBIN</a>
+ <li><a href="asm/include.htm">INCLUDE</a>
+ <li><a href="asm/macro.htm">MACRO</a>
+ <li><a href="asm/expr_fix.htm">MUL</a>
+ <li><a href="asm/opt.htm">OPT</a>
+ <li><a href="asm/popo.htm">POPO</a>
+ <li><a href="asm/pops.htm">POPS</a>
+ <li><a href="asm/print.htm">PRINTF</a>
+ <li><a href="asm/print.htm">PRINTT</a>
+ <li><a href="asm/print.htm">PRINTV</a>
+ <li><a href="asm/purge.htm">PURGE</a>
+ <li><a href="asm/popo.htm">PUSHO</a>
+ <li><a href="asm/pops.htm">PUSHS</a>
+ <li><a href="asm/rept.htm">REPT</a>
+ <li><a href="asm/rs.htm">RB</a>
+ <li><a href="asm/rs.htm">RSRESET</a>
+ <li><a href="asm/rs.htm">RSSET</a>
+ <li><a href="asm/rs.htm">RW</a>
+ <li><a href="asm/section.htm">SECTION</a>
+ <li><a href="asm/set.htm">SET</a>
+ <li><a href="asm/shift.htm">SHIFT</a>
+ <li><a href="asm/expr_fix.htm">SIN</a>
+ <li><a href="asm/expr_str.htm">STRCAT</a>
+ <li><a href="asm/expr_str.htm">STRCMP</a>
+ <li><a href="asm/expr_str.htm">STRIN</a>
+ <li><a href="asm/expr_str.htm">STRLEN</a>
+ <li><a href="asm/expr_str.htm">STRLWR</a>
+ <li><a href="asm/expr_str.htm">STRSUB</a>
+ <li><a href="asm/expr_str.htm">STRUPR</a>
+ <li><a href="asm/expr_fix.htm">TAN</a>
+ <li><a href="asm/section.htm">VRAM</a>
+ <li><a href="asm/fail.htm">WARN</a>
+ <li><a href="asm/export.htm">XDEF</a>
+ <li><a href="asm/export.htm">XREF</a>
+</ul>
-<H3>Target specific information</H3>
-<UL>
- <LI><A HREF="asm/trg_gb.htm">The Gameboy</A>
-</UL>
-
-<H3>Alphabetical list of the macro-language instructions and functions</H3>
-<UL>
- <LI><A HREF="asm/presym.htm">@</A>
- <LI><A HREF="asm/presym.htm">__DATE__</A>
- <LI><A HREF="asm/presym.htm">__LINE__</A>
- <LI><A HREF="asm/presym.htm">__TIME__</A>
- <LI><A HREF="asm/presym.htm">_NARG</A>
- <LI><A HREF="asm/presym.htm">_PI</A>
- <LI><A HREF="asm/presym.htm">_RS</A>
- <LI><A HREF="asm/expr_fix.htm">ACOS</A>
- <LI><A HREF="asm/expr_fix.htm">ASIN</A>
- <LI><A HREF="asm/expr_fix.htm">ATAN</A>
- <LI><A HREF="asm/expr_fix.htm">ATAN2</A>
- <LI><A HREF="asm/miscfunc.htm">BANK</A>
- <LI><A HREF="asm/section.htm">BSS</A>
- <LI><A HREF="asm/section.htm">CODE</A>
- <LI><A HREF="asm/expr_fix.htm">COS</A>
- <LI><A HREF="asm/section.htm">DATA</A>
- <LI><A HREF="asm/db.htm">DB</A>
- <LI><A HREF="asm/miscfunc.htm">DEF</A>
- <LI><A HREF="asm/expr_fix.htm">DIV</A>
- <LI><A HREF="asm/ds.htm">DS</A>
- <LI><A HREF="asm/db.htm">DW</A>
- <LI><A HREF="asm/if.htm">ELSE</A>
- <LI><A HREF="asm/if.htm">ENDC</A>
- <LI><A HREF="asm/macro.htm">ENDM</A>
- <LI><A HREF="asm/rept.htm">ENDR</A>
- <LI><A HREF="asm/equ.htm">EQU</A>
- <LI><A HREF="asm/equs.htm">EQUS</A>
- <LI><A HREF="asm/export.htm">EXPORT</A>
- <LI><A HREF="asm/fail.htm">FAIL</A>
- <LI><A HREF="asm/export.htm">GLOBAL</A>
- <LI><A HREF="asm/section.htm">HRAM</A>
- <LI><A HREF="asm/if.htm">IF</A>
- <LI><A HREF="asm/export.htm">IMPORT</A>
- <LI><A HREF="asm/incbin.htm">INCBIN</A>
- <LI><A HREF="asm/include.htm">INCLUDE</A>
- <LI><A HREF="asm/macro.htm">MACRO</A>
- <LI><A HREF="asm/expr_fix.htm">MUL</A>
- <LI><A HREF="asm/opt.htm">OPT</A>
- <LI><A HREF="asm/popo.htm">POPO</A>
- <LI><A HREF="asm/pops.htm">POPS</A>
- <LI><A HREF="asm/print.htm">PRINTF</A>
- <LI><A HREF="asm/print.htm">PRINTT</A>
- <LI><A HREF="asm/print.htm">PRINTV</A>
- <LI><A HREF="asm/purge.htm">PURGE</A>
- <LI><A HREF="asm/popo.htm">PUSHO</A>
- <LI><A HREF="asm/pops.htm">PUSHS</A>
- <LI><A HREF="asm/rept.htm">REPT</A>
- <LI><A HREF="asm/rs.htm">RB</A>
- <LI><A HREF="asm/rs.htm">RSRESET</A>
- <LI><A HREF="asm/rs.htm">RSSET</A>
- <LI><A HREF="asm/rs.htm">RW</A>
- <LI><A HREF="asm/section.htm">SECTION</A>
- <LI><A HREF="asm/set.htm">SET</A>
- <LI><A HREF="asm/shift.htm">SHIFT</A>
- <LI><A HREF="asm/expr_fix.htm">SIN</A>
- <LI><A HREF="asm/expr_str.htm">STRCAT</A>
- <LI><A HREF="asm/expr_str.htm">STRCMP</A>
- <LI><A HREF="asm/expr_str.htm">STRIN</A>
- <LI><A HREF="asm/expr_str.htm">STRLEN</A>
- <LI><A HREF="asm/expr_str.htm">STRLWR</A>
- <LI><A HREF="asm/expr_str.htm">STRSUB</A>
- <LI><A HREF="asm/expr_str.htm">STRUPR</A>
- <LI><A HREF="asm/expr_fix.htm">TAN</A>
- <LI><A HREF="asm/section.htm">VRAM</A>
- <LI><A HREF="asm/fail.htm">WARN</A>
- <LI><A HREF="asm/export.htm">XDEF</A>
- <LI><A HREF="asm/export.htm">XREF</A>
-</UL>
-
-<BR><HR><FONT SIZE="-1"><I><P ALIGN=RIGHT>Last updated 20 July 1997 by <A HREF="mailto:[email protected]">Carsten Sorensen</A></P></I></FONT>
-</BODY>
-</HTML>
+<p>Last updated 20 July 1997 by <a href="mailto:[email protected]">Carsten Sorensen</a></p>
+</body>
+</html>
--- a/doc/fix.htm
+++ b/doc/fix.htm
@@ -1,103 +1,80 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
-"http://www.w3.org/TR/html4/loose.dtd">
-<HTML>
-<HEAD>
- <TITLE>RGBFix</TITLE>
- <link rel="stylesheet" type="text/css" href="./style.css">
-</HEAD>
-
-<BODY>
-<HR><CENTER>
-<TABLE CELLPADDING=25 BORDER=0 BGCOLOR="#000000">
-<TR>
- <TD><FONT COLOR="#FFFFFF"><H2>RGBFix Documentation</H2></FONT></TD>
-</TR>
-</TABLE>
-<HR>
-<H2>Table of Contents<BR></H2></CENTER>
-<UL>
-<LI><A HREF="#History">History</A>
-<LI><A HREF="#Usage">Usage</A>
-<LI><A HREF="#Options">Options</A>
-</UL>
-<BR><HR><H3 id="History">History">History</H3>
-<TABLE BORDER=1>
- <CAPTION><I>The history of RGBFix</I></CAPTION>
-<TR>
- <TD ALIGN="Center"><B><I>Version</I></B></TD>
- <TD ALIGN="Center"><B><I>Dated</I></B></TD>
- <TD><B><I>Release notes</I></B></TD>
-</TR>
-<TR>
- <TD ALIGN="Center">1.0</TD>
- <TD ALIGN="Center">1 Oct. 96</TD>
- <TD>First release</TD>
-</TR>
-<TR>
- <TD ALIGN="Center">1.01</TD>
- <TD ALIGN="Center">3 Dec. 96</TD>
- <TD>-t didn't Work. Fixed.</TD>
-</TR>
-<TR>
- <TD ALIGN="Center">1.02</TD>
- <TD ALIGN="Center">20 July 1997</TD>
- <TD>RGBFix can now also truncate the ROM-images to a valid size.</TD>
-</TD>
-</TABLE>
-<BR>
-<HR><H3 id="Usage">Usage</H3><BR>
-<PRE> rgbfix [options] image[.gb]</PRE>
-<BR>
-Options are preceded by a dash (-) and go as follows:<BR>
-<BR>
-<PRE> t<B>name</B> : Change title field of image
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
+ <title>RGBFix</title>
+ <link rel="stylesheet" type="text/css" href="./style.css">
+</head>
+<body>
+<h1>RGBFix Documentation</h1>
+<h2>Table of Contents</h2>
+<ul>
+<li><a href="#history">History</a>
+<li><a href="#usage">Usage</a>
+<li><a href="#options">Options</a>
+</ul>
+<h2 id="history">History</h2>
+<table>
+ <caption>The history of RGBFix</caption>
+<thead>
+<tr>
+ <th scope="col">Version</th>
+ <th scope="col">Dated</th>
+ <th scope="col">Release notes</th>
+</tr>
+</thead>
+<tr>
+ <td>1.0</td>
+ <td>1 Oct. 96</td>
+ <td>First release</td>
+</tr>
+<tr>
+ <td>1.01</td>
+ <td>3 Dec. 96</td>
+ <td>-t didn't Work. Fixed.</td>
+</tr>
+<tr>
+ <td>1.02</td>
+ <td>20 July 1997</td>
+ <td>RGBFix can now also truncate the ROM-images to a valid size.</td>
+</tr>
+</table>
+<h2 id="usage">Usage</h2>
+<pre> rgbfix [options] image[.gb]</pre>
+<p>Options are preceded by a dash (-) and go as follows:
+<pre> t<b>name</b> : Change title field of image
p : Pad image to valid size
v : Validate header
d : Debug, don't change image
r : Truncate image to valid size
- h : Short help text</PRE>
-<P><FONT SIZE="-1"><B>Note:</B> <B>RGBFix</B> was previously released by me as a standalone program known as GBFix.
-I have chosen to release it in the <B>ASMotor</B> package instead from now on. Its usage has changed a bit from that of GBFix
-for the sake of consistence with the other <B>ASMotor</B> tools. Being part of <B>RGBDS</B> means <B>RGBFix</B>'
-distribution now follows the same rules as the rest of the <B>ASMotor</B> package. GBFix still follows its own rules.</FONT> <BR>
-<BR><HR><H3 id="Options">Options</H3>
-<P>How to use the various options.
-<H4><BR>
-Titlefield</H4>
-<P>This option changes the titlefield of the image to the string you specify truncated to a maximum of 16 characters. No
-uppercase conversion is performed.<BR>
-<BR>
-<PRE> rgbfix -tASMOTOR foobar.gb</PRE>
-<H4><BR>Pad Image</H4>
-<P>Pad the image to a valid size. 32Kb, 64Kb, 128Kb, 256Kb and 512Kb. RGBFix intelligently decides which one to use.
-The cartridge size byte in the image header is left unchanged. If you find this undesireable use the Validate Header option.<BR>
-<BR>
-<PRE> rgbfix -p foobar.gb</PRE>
-<H4><BR>Truncate Image</H4>
-<P>Truncates the image to a valid size. 32Kb, 64Kb, 128Kb, 256Kb and 512Kb. RGBFix intelligently decides which one to use.
-The cartridge size byte in the image header is left unchanged. If you find this undesireable use the Validate Header option.<BR>
-<BR>
-<PRE> rgbfix -r foobar.gb</PRE>
-<H4><BR>
-Validate Header</H4>
-<P>Examines the header for errors and validates them if any.<BR>
-<BR>
+ h : Short help text</pre>
+<p><strong>Note:</strong> RGBFix was previously released by me as a standalone program known as GBFix. I have chosen to release it in the ASMotor package instead from now on. Its usage has changed a bit from that of GBFix for the sake of consistence with the other ASMotor tools. Being part of RGBDS means RGBFix’s
+distribution now follows the same rules as the rest of the ASMotor package. GBFix still follows its own rules.</p>
+<h2 id="options">Options</h2>
+<p>How to use the various options.
+<h3>Titlefield</h3>
+<p>This option changes the titlefield of the image to the string you specify truncated to a maximum of 16 characters. No uppercase conversion is performed.
+<pre> rgbfix -tASMOTOR foobar.gb</pre>
+<h3>Pad Image</h3>
+<p>Pad the image to a valid size. 32Kb, 64Kb, 128Kb, 256Kb and 512Kb. RGBFix intelligently decides which one to use. The cartridge size byte in the image header is left unchanged. If you find this undesireable use the Validate Header option.
+<pre> rgbfix -p foobar.gb</pre>
+<h3>Truncate Image</h3>
+<p>Truncates the image to a valid size. 32Kb, 64Kb, 128Kb, 256Kb and 512Kb. RGBFix intelligently decides which one to use. The cartridge size byte in the image header is left unchanged. If you find this undesireable use the Validate Header option.
+<pre> rgbfix -r foobar.gb</pre>
+<h3>Validate Header</h3>
+<p>Examines the header for errors and validates them if any.
Areas examined:
-<UL>
- <LI>Nintendo Character Area
- <LI>ROM size byte
- <LI>Cartridge type byte
- <LI>Checksums
-</UL>
-<BR>
-<PRE> rgbfix -v foobar.gb</PRE>
-<H4><BR>
-Debug</H4>
-<P>Pretends it performs the desired changes.<BR>
-<BR>
-<PRE> rgbfix -tASMOTOR -p -v -d foobar.gb</PRE>
-<BR>
-<HR>
-<FONT SIZE="-1"><I><P ALIGN=RIGHT>Last updated 18 July 1997 by <A HREF="mailto:[email protected]">Carsten Sorensen</A></P></I></FONT>
-</BODY>
-</HTML>
+<ul>
+ <li>Nintendo Character Area
+ <li>ROM size byte
+ <li>Cartridge type byte
+ <li>Checksums
+</ul>
+<pre> rgbfix -v foobar.gb</pre>
+<h3>Debug</h3>
+<p>Pretends it performs the desired changes.
+<pre> rgbfix -tASMOTOR -p -v -d foobar.gb</pre>
+<hr>
+<p>Last updated 18 July 1997 by <a href="mailto:[email protected]">Carsten Sorensen</a></p>
+</body>
+</html>
--- a/doc/geninfo.htm
+++ b/doc/geninfo.htm
@@ -1,157 +1,116 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
-"http://www.w3.org/TR/html4/loose.dtd">
-<HTML>
-<HEAD>
- <TITLE>General Information</TITLE>
- <link rel="stylesheet" type="text/css" href="./style.css">
-</HEAD>
-
-<BODY>
-<HR><CENTER>
-<TABLE BORDER=0 BGCOLOR="#000000" CELLPADDING=25>
-<TR>
- <TD><FONT COLOR="#FFFFFF"><H2>ASMotor General Information</H2></FONT></TD>
-</TR>
-</TABLE>
-</CENTER>
-<HR>
-<H2><CENTER>Table of Contents
-</CENTER></H2>
-<UL>
- <LI><A HREF="#BlahBlahBlah">BlahBlahBlah</A>
- <LI><A HREF="#Author">The Author</A>
- <LI><A HREF="#Introduction">Introduction</A>
- <LI><A HREF="#Installation">Installation</A>
- <LI><A HREF="#Documentation">The Documentation</A>
- <LI><A HREF="#History">History</A>
-</UL>
-<BR><HR><H3 id="BlahBlahBlah">BlahBlahBlah</H3>
-<P>The <B>ASMotor</B> package (<A HREF="asm.htm">xAsm</A>, <A HREF="link.htm">xLink</A>, <A HREF="fix.htm">RGBFix</A>, examples and <A HREF="#Documentation">documentation</A>) is freeware and distributed as is. The
-author retains his copyright and right to modify the specifications and operation of the software without notice.
-<P>In other words this means I encourage you to...
-<UL>
- <LI>use it for whatever purpose even professional work without me charging you a penny
- <LI>copy it to another person (wholly or in part, though I'm sure he'd appreciate the whole package) in
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
+ <title>General Information</title>
+ <link rel="stylesheet" type="text/css" href="./style.css">
+</head>
+<body>
+<h1><abbr title="Rednex Game Boy Development System">RGBDS</abbr>—ASMotor General Information</h1>
+<h2>Table of Contents</h2>
+<ul>
+ <li><a href="#license">License</a>
+ <li><a href="#Author">The Author</a>
+ <li><a href="#Introduction">Introduction</a>
+ <li><a href="#Installation">Installation</a>
+ <li><a href="#Documentation">The Documentation</a>
+ <li><a href="#History">History</a>
+</ul>
+<h2 id="license">License</h2>
+<p>The <dfn>ASMotor</dfn> package (<a href="asm.htm">xAsm</a>, <a href="link.htm">xLink</a>, <a href="fix.htm">RGBFix</a>, examples and <a href="#Documentation">documentation</a>) is freeware and distributed as is. The author retains his copyright and right to modify the specifications and operation of the software without notice.
+<p>In other words this means I encourage you to…
+<ul>
+ <li>use it for whatever purpose even professional work without me charging you a penny
+ <li>copy it to another person (wholly or in part, though I’m sure he’d appreciate the whole package) in
whatever form you find suitable
- <LI>mass-distribute the <B>ASMotor</B> package if it is complete (<A HREF="asm.htm">xAsm</A>, <A HREF="link.htm">xLink</A>, <A HREF="fix.htm">RGBFix</A> and documentation).
- <LI>contact me if you have any problems
-</UL>
-<P>This also means you can't...
-<UL>
- <LI>blame me for loss of profit, data, sleep, food or other nasty things through the use or distribution of <B>ASMotor</B>. If
-you choose to use <B>ASMotor</B> you do so at your own risk.
- <LI>expect me to be able to help you should you have a problem related or not to <B>ASMotor</B>.
-</UL>
-<P>I am happy to say that xAsm and xLink use PMODE/W as DOS-extender for the MS-DOS port! This means fast assembling of your sourcecodes. A lot faster. PMODE/W is a drop-in replacement for the bulky DOS4GW. If you are a programmer you should check out <A HREF="http://www.di.net/pmw">http://www.di.net/pmw</A><BR>
-"PMODE/W is Copyright (c) 1994-1997, Charles Scheffold and Thomas Pytel. All rights reserved."<BR>
-<BR><HR><H3 id="Author">The Author</H3>
-<P>Any questions? Write me!<BR>
-<BR>
-Carsten Sorensen<BR>
-1 Spring Court<BR>
-Guildford<BR>
-Surrey GU2 6QW<BR>
-United Kingdom<BR>
-<BR>
-<h4 id="Email">e-mail:</h4>
-<A HREF="mailto:[email protected]">[email protected]</A> (private)<BR>
-<A HREF="mailto:[email protected]">[email protected]</A> (work)<BR>
-<BR>
-Get the latest version from my web page at <A HREF="http://www.matilde.demon.co.uk">http://www.matilde.demon.co.uk</A>
-<BR><HR><H3 id="Introduction">Introduction</H3>
-<P><B>ASMotor</B> is a package currently consisting of three programs (<A HREF="asm.htm">xAsm</A>, <A HREF="link.htm">xLink</A> and <A HREF="fix.htm">RGBFix</A>) originally designed for development on the Gameboy hand-held
-video-game console by Nintendo but recently it has moved towards being a target independent shell for making development of new
-assemblers for different processors easier.<BR>
-<A HREF="asm.htm">xAsm</A> is a decently fast assembler (up to <I>800000 lines/minute</I> (hrm well actually that's for 16384 lines of NOP's ;) on a P-120). It converts an assembler source into the <A HREF="rgb0.htm">RGB object-fileformat</A>.<BR>
-<A HREF="link.htm">xLink</A> is used to link multiple (one or more) object files together into one target file eg. a Gameboy ROM or Psion2 relocatable module.<BR>
-<A HREF="fix.htm">RGBFix</A> is used to apply some final cosmetic details to a Gameboy ROM-image.<BR>
-<P>This document does not try to teach you how to program in assembler, how to program a specifix processor or the Gameboy.
-It does just briefly explain the features of <A HREF="asm.htm">xAsm</A> and <A HREF="link.htm">xLink</A>. Sometimes I will assume that you have actually worked with assemblers before and that you are familiar with the target processor.
-<P>Why another assembler? There seems to be millions out there! This project started out as a Gameboy assembler because none of the available assemblers had the features I wanted. Now the reason is I want to make the most powerful assembler. Ever ;) And I want to be able to re-use it easily whenever I encounter a new system with another processor.
-Don't like it? Something you'd like to see added? <A HREF="#Email">Mail me</A> and I'll see what I can do.
-<P>The <A HREF="asm.htm">assembler</A> and <A HREF="link.htm">linker</A> are written entirely in ANSI C using Bison for the parser. I try to maintain two pre-compiled ports of <B>ASMotor</B>, one for the MS-DOS environment and one for Linux. Bison
- is a GNU tool (compiler-compiler) tailored to aid in the development of compilers which you will need if you want to compile it afresh.<BR>
-
-<BR><HR><H3 id="Installation">Installation</H3>
-<P>Anywhere on your HD will do. For maximum enjoyment I recommend adding the directory to your path.
-Alternatively you can run it from a floppy.<BR>
-
-<BR><HR><H3 id="Documentation">The Documentation</H3>
-<P>The documentation only comes in one flavour. HTML. This has several advantages for me
-<UL>
-<LI>It's a more "portable" format.
-<LI>Not everybody has the nice fonts I used in the Word file.
-<LI>Hypertext r00lz. (Typesetting for programmers ;)
-<LI>I can put it "as is" on <A HREF="http://www.matilde.demon.co.uk">my web page</A>.
-</UL>
-
-<BR><HR><H3 id="History">History</H3>
-<TABLE BORDER=1>
- <CAPTION><I>The history of ASMotor</I></CAPTION>
-
-<TR>
- <TD ALIGN="Center"><B><I>Version</I></B></TD>
- <TD ALIGN="Center"><I><B>Dated</B></I></TD>
- <TD><B><I>Release notes</I></B></TD>
-</TR>
-<TR>
- <TD ALIGN="Center">1.0</TD>
- <TD ALIGN="Center">03 July 1997</TD>
- <TD>First release</TD>
-</TR>
-<TR>
- <TD ALIGN="Center">1.01</TD>
- <TD ALIGN="Center">20 July 1997</TD>
- <TD><B>RGBDS fixes:</B><BR>
- RGBFix can now also truncate the ROM-images to a valid size.<BR>
- RGBAsm supports the LDD and LDI syntax plus [HLD] and [HLI]. LDH is
- synonymous with LDIO.<BR>
- Example filenames have been changed to adhere to Jeff Frohweins proposed
- standard.<BR>
- <B>General fixes:</B><BR>
-RGBLink knows about big and little endian. Plus it can do range checking
-on intermediate results in an expression. This is necessary to support
-different types of CPUs.<BR>
-RGBLink DIDN'T know about the special PC symbol "@" so if you used it
-more than once per sourcefile in an expression the linker had to
-resolve, things would go horribly wrong.<BR>
-There was a bug in the macro parameter passing. Any whitespace after the
-last parameter would be appended to the last parameter. Reported by Jeff Frohwein.<BR>
-A section stack has been implemented. Look up POPS and PUSHS in the
-manual. Jeff Frohweins doing again.<BR>
-OPT command added for defining and changing some options while assembling.<BR>
-You can now define which characters are used for the Gameboy graphics
-integer (`) using the commandline or the new OPT command. Cool idea by (surprise surprise) Jeff Frohwein.<BR>
-Also, an option stack has been added. Look up POPO and PUSHO in the
-manual.<BR>
-Fixed yet another line number bug reported by Jeff Frohwein (when will this guy leave me alone? ;)<BR>
-</TD>
-<TR>
- <TD ALIGN="Center">1.02</TD>
- <TD ALIGN="Center">22 July 1997</TD>
- <TD><B>General fixes:</B><BR>
-The lamest typo bug of all time has been fixed. RGBAsm would output a word defined with DW as 4 bytes instead of 2. Jeff Frohwein reported this.<BR>
-The first line of an included file didn't assemble correctly.<BR>
--b option added for setting the characters used for binary constants.<BR>
-</TD>
-</TR>
-<TR>
- <TD ALIGN="Center">1.10</TD>
- <TD ALIGN="Center">21 Sep 1997</TD>
- <TD><B>General fixes:</B><BR>
-The assembler would crash if you tried to use a macro symbol in an expression.
-(Jeff Frohwein)<BR>
-You couldn't use STRCMP, STRLEN and STRIN in relocatable expressions. (Harry
-P. Mulder)<BR>
-Relocatable symbols are no longer allowed as arguments to the DEF function.<BR>
-Finally! A librarian and smart linking has been added.<BR>
-Bug fixed in the assembler where it would sometimes write out too many bytes
-for HRAM section definitions.<BR>
--z options (set fill value used for uninitialised data) added to the
-assembler and linker.<BR>
-The assembler will now read in any type of ASCII file on any type of OS.
-</TABLE>
-<BR><HR>
-<FONT SIZE="-1"><I><P ALIGN=RIGHT>Last updated 08 October 1997 by <A HREF="mailto:[email protected]">Carsten Sorensen</A></P></I></FONT>
-</BODY>
-</HTML>
+ <li>mass-distribute the ASMotor package if it is complete (<a href="asm.htm">xAsm</a>, <a href="link.htm">xLink</a>, <a href="fix.htm">RGBFix</a> and documentation).
+ <li>contact me if you have any problems
+</ul>
+<p>This also means you can’t…
+<ul>
+ <li>blame me for loss of profit, data, sleep, food or other nasty things through the use or distribution of ASMotor. If
+you choose to use ASMotor you do so at your own risk.
+ <li>expect me to be able to help you should you have a problem related or not to ASMotor.
+</ul>
+<h2 id="Author">The Author</h2>
+<p>Any questions? Write me!
+<h3>Address</h3>
+<p>
+Carsten Sorensen<br>
+1 Spring Court<br>
+Guildford<br>
+Surrey GU2 6QW<br>
+United Kingdom<br>
+<h3 id="Email">e-mail:</h3>
+<ul>
+ <li><a href="mailto:[email protected]">[email protected]</a> (private)
+ <li><a href="mailto:[email protected]">[email protected]</a> (work)
+</ul>
+<p>Get the latest version from my web page at <a href="http://www.matilde.demon.co.uk">http://www.matilde.demon.co.uk</a>
+<h2 id="History">History</h2>
+<table>
+ <caption>The history of ASMotor</caption>
+<thead>
+<tr>
+ <th>Version</th>
+ <th>Dated</th>
+ <th>Release notes</th>
+</tr>
+</thead>
+<tr>
+ <td>1.0</td>
+ <td>03 July 1997</td>
+ <td>First release</td>
+</tr>
+<tr>
+ <td>1.01</td>
+ <td>20 July 1997</td>
+ <td><p>RGBDS fixes:</p>
+<ul>
+ <li>RGBFix can now also truncate the ROM-images to a valid size.
+ <li>RGBAsm supports the LDD and LDI syntax plus [HLD] and [HLI]. LDH is synonymous with LDIO.
+ <li>Example filenames have been changed to adhere to Jeff Frohweins proposed standard.
+</ul>
+ <p>General fixes:</p>
+<ul>
+ <li>RGBLink knows about big and little endian. Plus it can do range checking on intermediate results in an expression. This is necessary to support
+different types of CPUs.
+ <li>RGBLink <em>didn’t</em> know about the special PC symbol “@” so if you used it more than once per sourcefile in an expression the linker had to resolve, things would go horribly wrong.
+ <li>There was a bug in the macro parameter passing. Any whitespace after the last parameter would be appended to the last parameter. Reported by Jeff Frohwein.
+ <li>A section stack has been implemented. Look up POPS and PUSHS in the
+manual. Jeff Frohwein’s doing again.
+ <li>OPT command added for defining and changing some options while assembling.
+ <li>You can now define which characters are used for the Gameboy graphics integer (`) using the commandline or the new OPT command. Cool idea by (surprise surprise) Jeff Frohwein.
+ <li>Also, an option stack has been added. Look up POPO and PUSHO in the manual.
+ <li>Fixed yet another line number bug reported by Jeff Frohwein (when will this guy leave me alone? ;)
+</ul>
+</td>
+<tr>
+ <td>1.02</td>
+ <td>22 July 1997</td>
+ <td><p>General fixes:</p>
+<ul>
+ <li>The lamest typo bug of all time has been fixed. RGBAsm would output a word defined with DW as 4 bytes instead of 2. Jeff Frohwein reported this.
+ <li>The first line of an included file didn’t assemble correctly.
+ <li>-b option added for setting the characters used for binary constants.
+</ul>
+</td>
+</tr>
+<tr>
+ <td>1.10</td>
+ <td>21 Sep 1997</td>
+ <td><p>General fixes:</p>
+<ul>
+ <li>The assembler would crash if you tried to use a macro symbol in an expression. (Jeff Frohwein)
+ <li>You couldn’t use STRCMP, STRLEN and STRIN in relocatable expressions. (Harry P. Mulder)
+ <li>Relocatable symbols are no longer allowed as arguments to the DEF function.
+ <li>Finally! A librarian and smart linking has been added.
+ <li>Bug fixed in the assembler where it would sometimes write out too many bytes for HRAM section definitions.
+ <li>-z options (set fill value used for uninitialised data) added to the
+assembler and linker.
+ <li>The assembler will now read in any type of ASCII file on any type of OS.
+</ul>
+</table>
+<p>Last updated 08 October 1997 by <a href="mailto:[email protected]">Carsten Sorensen</a></p>
+</body>
+</html>
--- a/doc/index.htm
+++ b/doc/index.htm
@@ -1,34 +1,21 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
-"http://www.w3.org/TR/html4/loose.dtd">
-<HTML>
-<HEAD>
- <TITLE>ASMotor Documentation</TITLE>
- <link rel="stylesheet" type="text/css" href="./style.css">
-</HEAD>
-
-<BODY>
-<HR ALIGN="CENTER" SIZE="3">
-<CENTER><TABLE BORDER=0 ALIGN="MIDDLE" BGCOLOR="#000000" CELLPADDING=25>
-<TR>
- <TD><FONT COLOR="#FFFFFF"><H1><CENTER>ASMotor v1.10<BR>
-documentation<BR>
-<FONT SIZE="-1"><BR>(stay with the machine)</FONT>
-</CENTER></H1></FONT></TD>
-</TR>
-</TABLE>
-</CENTER><HR ALIGN="CENTER" SIZE="3">
-<H2><CENTER>Table of Contents
-</CENTER></H2>
-<UL>
- <LI><A HREF="geninfo.htm">ASMotor General Information</A>
- <LI><A HREF="asm.htm">xASM Documentation</A>
- <LI><A HREF="link.htm">xLink Documentation</A>
- <LI><A HREF="lib.htm">xLib Documentation</A>
- <LI><A HREF="fix.htm">RGBFix Documentation</A>
- <LI><A HREF="rgb0.htm">The RGB0-2 ObjectFileFormat</A>
-</UL>
-<BR>
-<HR ALIGN="CENTER" SIZE="3">
-<FONT SIZE="-1"><I><P ALIGN=RIGHT>Last updated 21 September 1997 by <A HREF="mailto:[email protected]">Carsten Sorensen</A></P></I></FONT>
-</BODY>
-</HTML>
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
+ <title>RGBDS—ASMotor Documentation</title>
+ <link rel="stylesheet" type="text/css" href="./style.css">
+</head>
+<body>
+<h1><abbr title="Rednex Game Boy Development System">RGBDS</abbr>—ASMotor v1.10 Documentation</h1>
+<h2>Table of Contents</h2>
+<ul>
+ <li><a href="geninfo.htm">ASMotor General Information</a>
+ <li><a href="asm.htm">xASM Documentation</a>
+ <li><a href="link.htm">xLink Documentation</a>
+ <li><a href="lib.htm">xLib Documentation</a>
+ <li><a href="fix.htm">RGBFix Documentation</a>
+ <li><a href="rgb0.htm">The RGB0-2 ObjectFileFormat</a>
+</ul>
+<p>Last updated 21 September 1997 by <a href="mailto:[email protected]">Carsten Sorensen</a></p>
+</body>
+</html>
--- a/doc/lib.htm
+++ b/doc/lib.htm
@@ -1,68 +1,47 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
-"http://www.w3.org/TR/html4/loose.dtd">
-<HTML>
-<HEAD>
- <TITLE>xLib</TITLE>
+<!DOCTYPE HTML PUBliC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
+ <title>xLib</title>
<link rel="stylesheet" type="text/css" href="./style.css">
-</HEAD>
-
-<BODY>
-<HR SIZE="3">
-<CENTER>
-<TABLE CELLPADDING=25 BORDER=0 BGCOLOR="#000000">
-<TR>
- <TD><FONT COLOR="#FFFFFF"><H2>xLib Documentation</H2></FONT></TD>
-</TR>
-</TABLE>
-<HR><H2>Table of Contents<BR></CENTER></H2>
-<UL>
-<LI><A HREF="#History"> History</A>
-<LI><A HREF="#Usage"> Usage</A>
-<LI><A HREF="#Commands"> The commands</A>
-</UL>
+</head>
+<body>
+<h1>xLib Documentation</h1>
+<h2>Table of Contents</h2>
+<ul>
+<li><a href="#history"> History</A>
+<li><a href="#usage"> Usage</A>
+<li><a href="#commands"> The commands</A>
+</ul>
<hr>
-<H3 id="History">History</H3>
-<TABLE BORDER=1>
- <CAPTION><I>The history of xLib</I></CAPTION>
-<TR>
- <TD ALIGN="Center"><B><I>Version</I></B></TD>
- <TD ALIGN="Center"><B><I>Dated</I></B></TD>
- <TD><B><I>Release notes</I></B></TD>
-</TR>
-<TR>
- <TD ALIGN="Center">1.0</TD>
- <TD ALIGN="Center">21 Sep. 1997</TD>
- <TD>First release</TD>
-</TR>
-</TABLE>
-<BR>
-<HR>
-<BR>
-<H3 id="Usage">Usage</H3>
-<PRE> xlib library command [module1 module2 ... modulen]</PRE>
-<HR>
-<H3 id="Commands">The Commands</H3>
-<P>The <B>command</B> specified after <B>library</B> on the <A HREF="#Usage">commandline</A> tells xLib what to do.
-<P>The following commands are available:
-<TABLE BORDER=1>
-<TR>
- <TD>a</TD>
- <TD>Adds (or replaces if already present) the modules to the library</TD>
-</TR>
-<TR>
- <TD>d</TD>
- <TD>Deletes the modules specified from the library</TD>
-</TR>
-<TR>
- <TD>l</TD>
- <TD>Lists the library contents</TD>
-</TR>
-<TR>
- <TD>x</TD>
- <TD>Extracts the modules from the library</TD>
-</TR>
-</TABLE>
-<HR>
-<FONT SIZE="-1"><I><P ALIGN=RIGHT>Last updated 21 September 1997 by <A HREF="mailto:[email protected]">Carsten Sorensen</A></P></I></FONT>
-</BODY>
-</HTML>
+<h2 id="history">History</h2>
+<table>
+ <caption>The history of xLib</caption>
+<thead>
+<tr>
+ <th scope="col">Version</th>
+ <th scope="col">Dated</th>
+ <th scope="col">Release notes</th>
+</tr>
+</thead>
+<tr>
+ <td>1.0</td>
+ <td>21 Sep. 1997</td>
+ <td>First release</td>
+</tr>
+</table>
+<h2 id="usage">Usage</h2>
+<pre> xlib library command [module1 module2 ... modulen]</pre>
+<h2 id="commands">The Commands</h2>
+<p>The <b>command</b> specified after <b>library</b> on the <a href="#Usage">commandline</a> tells xLib what to do.
+<p>The following commands are available:
+<ul>
+ <li>a — Adds (or replaces if already present) the modules to the library
+ <li>d — Deletes the modules specified from the library
+ <li>l — Lists the library contents
+ <li>x — Extracts the modules from the library
+</ul>
+<hr>
+<p>Last updated 21 September 1997 by <a href="mailto:[email protected]">Carsten Sorensen</a></p>
+</body>
+</html>
--- a/doc/link.htm
+++ b/doc/link.htm
@@ -1,100 +1,96 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
-"http://www.w3.org/TR/html4/loose.dtd">
-<HTML>
-<HEAD>
- <TITLE>xLink</TITLE>
+<!DOCTYPE HTML PUBliC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
+ <title>xLink</title>
<link rel="stylesheet" type="text/css" href="./style.css">
-</HEAD>
-
-<BODY>
-<HR SIZE="3">
-<CENTER>
-<TABLE CELLPADDING=25 BORDER=0 BGCOLOR="#000000">
-<TR>
- <TD><FONT COLOR="#FFFFFF"><H2>xLink Documentation</H2></FONT></TD>
-</TR>
-</TABLE>
-<HR><H2>Table of Contents<BR></CENTER></H2>
-<UL>
-<LI><A HREF="#History"> History</A>
-<LI><A HREF="#Usage"> Usage</A>
-<LI><A HREF="#Linkfile"> The Linkfile</A>
-<LI><A HREF="#OperationTG"> Operation for Gameboy</A>
-<LI><A HREF="#smallmode"> Operation for Gameboy small mode</A>
-<LI><A HREF="#psion2"> Operation for Psion2 relocatable modules</A>
-</UL>
+</head>
+<body>
+<h1>xLink Documentation</h1>
+<h2>Table of Contents</h2>
+<ul>
+<li><a href="#history"> History</a>
+<li><a href="#usage"> Usage</a>
+<li><a href="#linkfile"> The Linkfile</a>
+<li><a href="#operationtg"> Operation for Gameboy</a>
+<li><a href="#smallmode"> Operation for Gameboy small mode</a>
+<li><a href="#psion2"> Operation for Psion2 relocatable modules</a>
+</ul>
<hr>
-<H3 id="History">History</H3>
-<TABLE BORDER=1>
- <CAPTION><I>The history of xLink</I></CAPTION>
-<TR>
- <TD ALIGN="Center"><B><I>Version</I></B></TD>
- <TD ALIGN="Center"><B><I>Dated</I></B></TD>
- <TD><B><I>Release notes</I></B></TD>
-</TR>
-<TR>
- <TD ALIGN="Center">1.0</TD>
- <TD ALIGN="Center">1 Oct. 96</TD>
- <TD>First release (RGBDS)</TD>
-</TR>
-<TR>
- <TD ALIGN="Center">1.01</TD>
- <TD ALIGN="Center">3 Dec. 96</TD>
- <TD>BANK() didn't work. Fixed.<BR>
- Sections were quite often output in the wrong order. Fixed.</TD>
-</TR>
-<TR>
- <TD ALIGN="Center">1.02</TD>
- <TD ALIGN="Center">12 Feb. 97</TD>
- <TD><A HREF="#Usage">-s switch and mapfile option</A> added</TD>
-</TR>
-<TR>
- <TD ALIGN="Center">1.03</TD>
- <TD ALIGN="Center">23 Mar. 97</TD>
- <TD><A HREF="#Usage">Mapfile</A> now shows BSS, VRAM and HRAM areas<BR>
- There was a bug regarding <A HREF="#Operation">fixed HOME sections.</A> <BR></TD>
-</TR>
-<TR>
- <TD ALIGN="Center">1.04</TD>
- <TD ALIGN="Center">03 July 1997</TD>
- <TD>First ASMotor release. Supports big-endian CPUs as well. <A HREF="#Usage">Usage</A> changed to allow for different output fileformats</TD>
-</TR>
-<TR>
- <TD ALIGN="Center">1.05</TD>
- <TD ALIGN="Center">20 July 1997</TD>
- <TD>We can now do range checking on intermediate results in an expression. This is necessary to support
-different types of CPUs.<BR>
-RGBLink DIDN'T know about the special PC symbol "@" so if you used it
-more than once per sourcefile in an expression the linker had to
-resolve, things would go horribly wrong.<BR>
-</TD>
-<TR>
- <TD ALIGN="Center">1.06</TD>
- <TD ALIGN="Center">21 September 1997</TD>
- <TD>Smart linking and library support added<BR>
- Program renamed to xLink<BR>
-</TD>
-</TABLE>
-<BR>
-<HR>
-<BR>
-<H3 id="Usage">Usage</H3>
-<PRE> xlink [options] linkfile</PRE>
-<P>Options are preceded by a dash (-) and go as follows:<BR>
-<BR>
-<PRE> h : Short help text
- m<B>mapfile</B> : Write a mapfile</A>
+<h2 id="history">History</h2>
+<table>
+ <caption>The history of xLink</caption>
+<thead>
+<tr>
+ <th scope="col">Version</th>
+ <th scope="col">Dated</th>
+ <th scope="col">Release notes</th>
+</tr>
+</thead>
+<tr>
+ <td>1.0</td>
+ <td>1 Oct. 96</td>
+ <td>First release (RGBDS)</td>
+</tr>
+<tr>
+ <td>1.01</td>
+ <td>3 Dec. 96</td>
+ <td>
+<ul>
+ <li>BANK() didn't work. Fixed.</li>
+ <li>Sections were quite often output in the wrong order. Fixed.</li>
+</ul>
+</tr>
+<tr>
+ <td>1.02</td>
+ <td>12 Feb. 97</td>
+ <td><a href="#usage">-s switch and mapfile option</A> added</td>
+</tr>
+<tr>
+ <td>1.03</td>
+ <td>23 Mar. 97</td>
+ <td>
+<ul>
+ <li><a href="#usage">Mapfile</A> now shows BSS, VRAM and HRAM areas</li>
+ <li>There was a bug regarding <a href="#operation">fixed HOME sections.</a>
+</ul></td>
+</tr>
+<tr>
+ <td>1.04</td>
+ <td>03 July 1997</td>
+ <td>First ASMotor release. Supports big-endian CPUs as well. <a href="#usage">Usage</a> changed to allow for different output fileformats</td>
+</tr>
+<tr>
+ <td>1.05</td>
+ <td>20 July 1997</td>
+ <td>
+<ul>
+ <li>We can now do range checking on intermediate results in an expression. This is necessary to support different types of CPUs.</li>
+ <li>RGBLink DIDN’T know about the special PC symbol "@" so if you used it more than once per sourcefile in an expression the linker had to resolve, things would go horribly wrong.</li>
+</ul>
+</td>
+<tr>
+ <td>1.06</td>
+ <td>21 September 1997</td>
+ <td><ul><li>Smart linking and library support added
+ <li>Program renamed to xLink
+</ul>
+</td>
+</table>
+<h2 id="usage">Usage</h2>
+<pre> xlink [options] linkfile</pre>
+<p>Options are preceded by a hyphen (-) and go as follows:
+<pre> h : Short help text
+ m<b>mapfile</b> : Write a mapfile
t : Output target:
- tg : Gameboy <A HREF="#OperationTG">ROM image</A> (default)
- ts : Gameboy <A HREF="#smallmode">Small mode (32kB)</A> ROM image
- tp : <A HREF="#psion2">Psion2</A> relocatable module
- z<B>HX</B> : Set the byte value (hex format) used for uninitialised data (default is ? for random)
-</PRE>
-<HR>
-<H3 id="Linkfile">The Linkfile</H3>
-<P>A linkfile is used to tell <B>xLink</B> which objects to include and what the outputname should be. It is in plain ASCII-format.<BR>
-<BR>
-<PRE> # Linkfile for foobar.gb
+ tg : Gameboy <a href="#operationtg">ROM image</a> (default)
+ ts : Gameboy <a href="#smallmode">Small mode (32kB)</a> ROM image
+ tp : <a href="#psion2">Psion2</a> relocatable module
+ z<b>HX</b> : Set the byte value (hex format) used for uninitialised data (default is ? for random)
+</pre>
+<h2 id="linkfile">The Linkfile</h2>
+<p>A linkfile is used to tell <B>xLink</B> which objects to include and what the outputname should be. It is in plain ASCII-format.
+<pre> # Linkfile for foobar.gb
[Objects]
foo.obj
@@ -104,25 +100,22 @@
mylib.lib
[Output]
- foobar.gb</PRE>
-<P>A line starting with # is ignored.<BR>
-<P>If you use libraries they will only be included if one of the objects actually reference them. This works on a SECTION level and not on a module level. This means that when you write libraries you can put each subroutine in its own SECTION so only the relevant bits are included.
-<BR><HR><H3 id="OperationTG">Operation for Gameboy (-tg)</H3>
-<P><A HREF="asm.htm#sections">Sections</A> created with <B>HOME</B> in the assembler are placed in the GB bank #0 (the fixed bank $0000-$3FFF) in the order they are loaded from the objectfiles specified in the linkfile. So you want the first file in the linkfile to contain your header.
-<B>CODE/DATA</B> sections are placed in <I>any bank other than #0</I>. This means you have absolutely <U>no</U> control over which sections goes where. This insures minimal slack (unused bytes) at the end of each bank in the image.
-<P>Currently the linker doesn't calculate the GB checksums.
-You must use <A HREF="fix.htm">RGBFix</A> to do this.<BR><BR>
+ foobar.gb</pre>
+<p>A line starting with # is ignored.
+<p>If you use libraries they will only be included if one of the objects actually reference them. This works on a SECTION level and not on a module level. This means that when you write libraries you can put each subroutine in its own SECTION so only the relevant bits are included.
+<h2 id="operationtg">Operation for Gameboy (-tg)</h2>
+<p><a href="asm.htm#sections">Sections</a> created with <b>HOME</b> in the assembler are placed in the GB bank #0 (the fixed bank $0000-$3FFF) in the order they are loaded from the objectfiles specified in the linkfile. So you want the first file in the linkfile to contain your header. <b>CODE/DATA</b> sections are placed in <em>any bank other than #0</em>. This means you have absolutely <em>no</em> control over which sections goes where. This insures minimal slack (unused bytes) at the end of each bank in the image.
+<p>Currently the linker doesn't calculate the GB checksums.
+You must use <a href="fix.htm">RGBFix</a> to do this.
-<BR><HR><H3 id="smallmode">Operation for Gameboy small mode (-ts)</H3>
-<P>Small mode forces all <B>DATA/CODE</B> sections to be of type <B>HOME</B> and increases the
-<B>HOME</B> section size from 16kB to 32kB. This also means that <B>CODE/DATA/HOME</B> sections are written to the final image in the order you have specified in the linkfile.
-<P>Currently the linker doesn't calculate the GB checksums.
-You must use <A HREF="fix.htm">RGBFix</A> to do this.<BR><BR>
+<h3 id="smallmode">Operation for Gameboy small mode (-ts)</h3>
+<p>Small mode forces all <b>DATA/CODE</b> sections to be of type <b>HOME</b> and increases the <b>HOME</b> section size from 16kB to 32kB. This also means that <b>CODE/DATA/HOME</b> sections are written to the final image in the order you have specified in the linkfile.
+<p>Currently the linker doesn't calculate the GB checksums. You must use <a href="fix.htm">RGBFix</a> to do this.
-<BR><HR><H3 id="psion2">Operation for Psion2 relocatable modules (-tp)</H3>
-<P>This is a fileformat for the Psion2 that allows you to load your code into where ever there's any free space. The only sections types allowed are <B>HOME, DATA and BSS</B>. All CODE and DATA sections are written to the output file in the order specified in the linkfile. The BSS are actually then expanded to DATA sections filled with zeroes and appended. This might change later.<BR>
-The file looks like this (all values are big endian):
-<PRE>
+<h2 id="psion2">Operation for Psion2 relocatable modules (-tp)</h2>
+<p>This is a fileformat for the Psion2 that allows you to load your code into where ever there's any free space. The only sections types allowed are <b>HOME, DATA and BSS</b>. All CODE and DATA sections are written to the output file in the order specified in the linkfile. The BSS are actually then expanded to DATA sections filled with zeroes and appended. This might change later.
+<p>The file looks like this (all values are big endian):
+<pre>
LONG NumberOfDataBytes
REPT NumberOfDataBytes
DB x
@@ -131,9 +124,8 @@
REPT NumberOfPatches
LONG x ; A value to add to the word at address x in the code
ENDR
-</PRE>
-
-<HR>
-<FONT SIZE="-1"><I><P ALIGN=RIGHT>Last updated 08 October 1997 by <A HREF="mailto:[email protected]">Carsten Sorensen</A></P></I></FONT>
-</BODY>
-</HTML>
+</pre>
+<hr>
+<p>Last updated 08 October 1997 by <a href="mailto:[email protected]">Carsten Sorensen</a></p>
+</body>
+</html>
--- a/doc/rgb0.htm
+++ b/doc/rgb0.htm
@@ -1,40 +1,30 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
-"http://www.w3.org/TR/html4/loose.dtd">
-<HTML>
-<HEAD>
- <TITLE>RGB? Fileformat</TITLE>
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
+ <title>RGB? Fileformat</title>
<link rel="stylesheet" type="text/css" href="./style.css">
-</HEAD>
-
-<BODY>
-<HR><CENTER>
-<TABLE CELLPADDING=25 BORDER=0 BGCOLOR="#000000">
-<TR>
- <TD><FONT COLOR="#FFFFFF"><H2>The RGB ObjectFileFormats</H2></FONT></TD>
-</TR>
-</TABLE>
-<HR>
-<H2>Table of Contents<BR></CENTER></H2>
-<UL>
- <LI><A HREF="#Background">Background</A>
- <LI><A HREF="#FileStructure">FileStructure</A>
- <LI><A HREF="#RPN">Rpn Data</A>
-</UL>
-<BR>
-<HR><H3 id="Background">Background</H3>
-<P>I developed the RGB0 fileformat mainly because I needed a suitable dataformat to hold the output from <A HREF="asm.htm">xAsm</A> that was powerful to accomodate all the features I needed and also would make it easy for me to add
-new ones.
-The reason for documenting it is so people can write converters between it and other formats. Perhaps even develop other compilers for it?<BR>
-<BR>
-The RGB1 fileformat saw the light of day with the V1.02 of the old RGBDS release because of the addition of fixed sections.<BR>
-The RGB2 fileformat emerged because I needed to add support for big endian CPUs.
-<BR><HR><H3 id="FileStructure">FileStructure</H3>
-<B>LONG</B> is a 32-bit integer stored in little-endian format (Intel)<BR>
-<B>BYTE</B> is an 8-bit integer<BR>
-<B>STRING</B> is a 0 terminated string of <B>BYTE</B><BR>
-<BR>
-Down to business...<BR>
-<PRE>
+</head>
+<body>
+<h1>The RGB ObjectFileFormats</h1>
+<h2>Table of Contents</h2>
+<ul>
+ <li><a href="#background">Background</A>
+ <li><a href="#filestructure">FileStructure</A>
+ <li><a href="#rpn">Rpn Data</A>
+</ul>
+<h2 id="background">Background</h2>
+<p>I developed the RGB0 fileformat mainly because I needed a suitable dataformat to hold the output from <a href="asm.htm">xAsm</a> that was powerful to accomodate all the features I needed and also would make it easy for me to add new ones. The reason for documenting it is so people can write converters between it and other formats. Perhaps even develop other compilers for it?</p>
+<p>The RGB1 fileformat saw the light of day with the V1.02 of the old RGBDS release because of the addition of fixed sections.</p>
+<p>The RGB2 fileformat emerged because I needed to add support for big endian CPUs.</p>
+<h2 id="filestructure">FileStructure</h2>
+<ul>
+ <li><dfn>LONG</dfn> is a 32‐bit integer stored in little‐endian format (Intel)
+ <li><dfn>BYTE</dfn> is an 8‐bit integer
+ <li><dfn>STRING</dfn> is a 0‐terminated string of <b>BYTE</b>
+</ul>
+<p>Down to business...</p>
+<pre>
; There's a header...
BYTE ID[4] ;"RGB0", "RGB1", "RGB2"
@@ -43,7 +33,7 @@
; Now for some symbols
- REPT NumberOfSymbols ;<B>NumberOfSymbols</B> symboldefs follow
+ REPT NumberOfSymbols ;<b>NumberOfSymbols</b> symboldefs follow
STRING Name ;The name of this symbol
BYTE Type ;0 = LOCAL symbol only used in this file
;1 = IMPORT this symbol from elsewhere
@@ -93,130 +83,128 @@
BYTE RPN[RPNSize] ;RPN definition below
ENDR
ENDC
- ENDR</PRE>
-<BR><HR><H3 id="RPN">Rpn Data</H3>
-<P>Expressions in the objectfile are stored as <B>RPN</B>. This is an expression of the form "2 5 +". This will first push
-the value "2" to the stack. Then "5". The "+" operator pops two arguments from the stack, adds them, and then
-pushes the result on the stack, effectively replacing the two top arguments with their sum. In the <B>RGB</B> format <B>RPN</B>
-expression are stored as <B>BYTE</B>s with some bytes being special prefixes for integers and symbols.<BR>
-<BR>
-<TABLE BORDER=1 WIDTH="50%">
- <CAPTION><I>RPN Expressions</I></CAPTION>
-<TR>
- <TD ALIGN="Center"><B><I>Byte value</I></B></TD>
- <TD><B><I>Meaning</I></B></TD>
-</TR>
-<TR>
- <TD ALIGN="Center">$00</TD>
- <TD>+ operator</TD>
-</TR>
-<TR>
- <TD ALIGN="Center">$01</TD>
- <TD>- operator</TD>
-</TR>
-<TR>
- <TD ALIGN="Center">$02</TD>
- <TD>* operator</TD>
-</TR>
-<TR>
- <TD ALIGN="Center">$03</TD>
- <TD>/ operator</TD>
-</TR>
-<TR>
- <TD ALIGN="Center">$04</TD>
- <TD>% operator</TD>
-</TR>
-<TR>
- <TD ALIGN="Center">$05</TD>
- <TD>unary -</TD>
-</TR>
-<TR>
- <TD ALIGN="Center">$06</TD>
- <TD>| operator</TD>
-</TR>
-<TR>
- <TD ALIGN="Center">$07</TD>
- <TD>& operator</TD>
-</TR>
-<TR>
- <TD ALIGN="Center">$08</TD>
- <TD>^ operator</TD>
-</TR>
-<TR>
- <TD ALIGN="Center">$09</TD>
- <TD>unary ~</TD>
-</TR>
-<TR>
- <TD ALIGN="Center">$0A</TD>
- <TD>&& comparison</TD>
-</TR>
-<TR>
- <TD ALIGN="Center">$0B</TD>
- <TD>|| comparison</TD>
-</TR>
-<TR>
- <TD ALIGN="Center">$0C</TD>
- <TD>unary !</TD>
-</TR>
-<TR>
- <TD ALIGN="Center">$0D</TD>
- <TD>== comparison</TD>
-</TR>
-<TR>
- <TD ALIGN="Center">$0E</TD>
- <TD>!= comparison</TD>
-</TR>
-<TR>
- <TD ALIGN="Center">$0F</TD>
- <TD>> comparison</TD>
-</TR>
-<TR>
- <TD ALIGN="Center">$10</TD>
- <TD>< comparison</TD>
-</TR>
-<TR>
- <TD ALIGN="Center">$11</TD>
- <TD>>= comparison</TD>
-</TR>
-<TR>
- <TD ALIGN="Center">$12</TD>
- <TD><= comparison</TD>
-</TR>
-<TR>
- <TD ALIGN="Center">$13</TD>
- <TD><< operator</TD>
-</TR>
-<TR>
- <TD ALIGN="Center">$14</TD>
- <TD>>> operator</TD>
-</TR>
-<TR>
- <TD ALIGN="Center">$15</TD>
- <TD>BANK() function for Gameboy, a symbol ID follows</TD>
-</TR>
-<TR>
- <TD ALIGN="Center">$16</TD>
- <TD>HRAMCheck for Gameboy, check if value is in HRAM and logically and it with 0xFF</TD>
-</TR>
-<TR>
- <TD ALIGN="Center">$17</TD>
- <TD>ZeroPageCheck for PC-Engine, check if value is in ZP (0x2000-0x20FF) and logically and it with 0xFF</TD>
-</TR>
-<TR>
- <TD ALIGN="Center">$18</TD>
- <TD>RangeCheck. LOW and HIGH signed LONGs follow. Checks a value to see if within the range [LOW;HIGH]. If not, generate an error.
-</TD>
-</TR>
-<TR>
- <TD ALIGN="Center">$80</TD>
- <TD>LONG integer follows</TD>
-</TR>
-<TR>
- <TD ALIGN="Center">$81</TD>
- <TD>Symbol ID follows</TD>
-</TR>
-</TABLE>
-<BR><HR>
-<FONT SIZE="-1"><I><P ALIGN=RIGHT>Last updated 18 July 1997 by <A HREF="mailto:[email protected]">Carsten Sorensen</A></P></I></FONT>
-</BODY>
-</HTML>
+ ENDR</pre>
+<h2 id="rpn">Rpn Data</h2>
+<p>Expressions in the objectfile are stored as <abbr title="Reverse Polish Notation">RPN</abbr>. This is an expression of the form “2 5 +”. This will first push the value “2” to the stack. Then “5”. The “+” operator pops two arguments from the stack, adds them, and then pushes the result on the stack, effectively replacing the two top arguments with their sum. In the RGB format RPN expressions are stored as <b>BYTE</b>s with some bytes being special prefixes for integers and symbols.</p>
+<table>
+ <caption>RPN Expressions</caption>
+<thead>
+<tr>
+ <th scope="col">Byte value</th>
+ <th scope="col">Meaning</th>
+</tr>
+</thead>
+<tr>
+ <td>$00</td>
+ <td>+ operator</td>
+</tr>
+<tr>
+ <td>$01</td>
+ <td>- operator</td>
+</tr>
+<tr>
+ <td>$02</td>
+ <td>* operator</td>
+</tr>
+<tr>
+ <td>$03</td>
+ <td>/ operator</td>
+</tr>
+<tr>
+ <td>$04</td>
+ <td>% operator</td>
+</tr>
+<tr>
+ <td>$05</td>
+ <td>unary -</td>
+</tr>
+<tr>
+ <td>$06</td>
+ <td>| operator</td>
+</tr>
+<tr>
+ <td>$07</td>
+ <td>& operator</td>
+</tr>
+<tr>
+ <td>$08</td>
+ <td>^ operator</td>
+</tr>
+<tr>
+ <td>$09</td>
+ <td>unary ~</td>
+</tr>
+<tr>
+ <td>$0A</td>
+ <td>&& comparison</td>
+</tr>
+<tr>
+ <td>$0B</td>
+ <td>|| comparison</td>
+</tr>
+<tr>
+ <td>$0C</td>
+ <td>unary !</td>
+</tr>
+<tr>
+ <td>$0D</td>
+ <td>== comparison</td>
+</tr>
+<tr>
+ <td>$0E</td>
+ <td>!= comparison</td>
+</tr>
+<tr>
+ <td>$0F</td>
+ <td>> comparison</td>
+</tr>
+<tr>
+ <td>$10</td>
+ <td>< comparison</td>
+</tr>
+<tr>
+ <td>$11</td>
+ <td>>= comparison</td>
+</tr>
+<tr>
+ <td>$12</td>
+ <td><= comparison</td>
+</tr>
+<tr>
+ <td>$13</td>
+ <td><< operator</td>
+</tr>
+<tr>
+ <td>$14</td>
+ <td>>> operator</td>
+</tr>
+<tr>
+ <td>$15</td>
+ <td>BANK() function for Gameboy, a symbol ID follows</td>
+</tr>
+<tr>
+ <td>$16</td>
+ <td>HRAMCheck for Gameboy, check if value is in HRAM and logically and it with 0xFF</td>
+</tr>
+<tr>
+ <td>$17</td>
+ <td>ZeroPageCheck for PC-Engine, check if value is in ZP (0x2000-0x20FF) and logically and it with 0xFF</td>
+</tr>
+<tr>
+ <td>$18</td>
+ <td>RangeCheck. LOW and HIGH signed LONGs follow. Checks a value to see if within the range [LOW;HIGH]. If not, generate an error.
+</td>
+</tr>
+<tr>
+ <td>$80</td>
+ <td>LONG integer follows</td>
+</tr>
+<tr>
+ <td>$81</td>
+ <td>Symbol ID follows</td>
+</tr>
+</table>
+<hr>
+<p>Last updated 18 July 1997 by <a href="mailto:[email protected]">Carsten Sorensen</a></p>
+</body>
+</html>
--- a/doc/style.css
+++ b/doc/style.css
@@ -1,16 +1,0 @@
-html {
- background: #692764;
- color: #F5A0D8;
-}
-
-a:link {
- color: #8AAEE6;
-}
-
-a:visited {
- color: #2B9DA4;
-}
-
-a:active {
- color: #95F0DA;
-}