remove HTML formatting gunk from a lot of the docs

This commit is contained in:
Anthony Bentley
2009-11-06 23:01:00 -07:00
parent e1f5352ba5
commit 42007c5c92
8 changed files with 637 additions and 780 deletions

View File

@@ -1,136 +1,127 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
"http://www.w3.org/TR/html4/loose.dtd"> <html>
<HTML> <head>
<HEAD> <meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
<TITLE>xAsm</TITLE> <title>xAsm</title>
<link rel="stylesheet" type="text/css" href="./style.css"> <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> <h3>Symbols</h3>
<HR> <ul>
<CENTER> <li><a href="asm/symbols.htm">Symbols</a>
<TABLE BORDER=0 BGCOLOR="#000000" CELLPADDING=25> <li><a href="asm/export.htm">Exporting and importing symbols</a>
<TR> <li><a href="asm/purge.htm">Purging symbols</a>
<TD><FONT COLOR="#FFFFFF"><H2>xAsm Documentation</H2></FONT></TD> <li><a href="asm/presym.htm">Predeclared symbols</a>
</TR> </ul>
</TABLE>
</CENTER><HR>
<H2><CENTER>Table of Contents</CENTER></H2>
<H3>General stuff</H3> <h3>The macrolanguage</h3>
<UL> <ul>
<LI><A HREF="asm/history.htm">History</A> <li><a href="asm/print.htm">Printing out things during assembling</a>
<LI><A HREF="asm/usage.htm">Usage</A> <li><a href="asm/rept.htm">Automatically repeating blocks of code</a>
<LI><A HREF="asm/opt.htm">Changing options while assembling</A> <li><a href="asm/fail.htm">Aborting the assembly process</a>
<LI><A HREF="asm/popo.htm">The option stack</A> <li><a href="asm/include.htm">Including other sourcefiles</a>
<LI><A HREF="asm/syntax.htm">Syntax and comments</A> <li><a href="asm/if.htm">Conditional assembling</a>
<LI><A HREF="asm/section.htm">Sections</A> <li><a href="asm/expr_int.htm">Integer and Boolean expressions</a>
</UL> <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> <h3>Other ways than mnemonics to define data</h3>
<UL> <ul>
<LI><A HREF="asm/symbols.htm">Symbols</A> <li><a href="asm/db.htm">Defining constant data</a>
<LI><A HREF="asm/export.htm">Exporting and importing symbols</A> <li><a href="asm/ds.htm">Declaring variables in a BSS section</a>
<LI><A HREF="asm/purge.htm">Purging symbols</A> <li><a href="asm/incbin.htm">Including binary files</a>
<LI><A HREF="asm/presym.htm">Predeclared symbols</A> </ul>
</UL>
<H3>The macrolanguage</H3> <h3>Target specific information</h3>
<UL> <ul>
<LI><A HREF="asm/print.htm">Printing out things during assembling</A> <li><a href="asm/trg_gb.htm">The Gameboy</a>
<LI><A HREF="asm/rept.htm">Automatically repeating blocks of code</A> </ul>
<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>Other ways than mnemonics to define data</H3> <h3>Alphabetical list of the macro-language instructions and functions</h3>
<UL> <ul>
<LI><A HREF="asm/db.htm">Defining constant data</A> <li><a href="asm/presym.htm">@</a>
<LI><A HREF="asm/ds.htm">Declaring variables in a BSS section</A> <li><a href="asm/presym.htm">__DATE__</a>
<LI><A HREF="asm/incbin.htm">Including binary files</A> <li><a href="asm/presym.htm">__LINE__</a>
</UL> <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> <p>Last updated 20 July 1997 by <a href="mailto:surfsmurf@matilde.demon.co.uk">Carsten Sorensen</a></p>
<UL> </body>
<LI><A HREF="asm/trg_gb.htm">The Gameboy</A> </html>
</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:surfsmurf@matilde.demon.co.uk">Carsten Sorensen</A></P></I></FONT>
</BODY>
</HTML>

View File

@@ -1,103 +1,80 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
"http://www.w3.org/TR/html4/loose.dtd"> <html>
<HTML> <head>
<HEAD> <meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
<TITLE>RGBFix</TITLE> <title>RGBFix</title>
<link rel="stylesheet" type="text/css" href="./style.css"> <link rel="stylesheet" type="text/css" href="./style.css">
</HEAD> </head>
<body>
<BODY> <h1>RGBFix Documentation</h1>
<HR><CENTER> <h2>Table of Contents</h2>
<TABLE CELLPADDING=25 BORDER=0 BGCOLOR="#000000"> <ul>
<TR> <li><a href="#history">History</a>
<TD><FONT COLOR="#FFFFFF"><H2>RGBFix Documentation</H2></FONT></TD> <li><a href="#usage">Usage</a>
</TR> <li><a href="#options">Options</a>
</TABLE> </ul>
<HR> <h2 id="history">History</h2>
<H2>Table of Contents<BR></H2></CENTER> <table>
<UL> <caption>The history of RGBFix</caption>
<LI><A HREF="#History">History</A> <thead>
<LI><A HREF="#Usage">Usage</A> <tr>
<LI><A HREF="#Options">Options</A> <th scope="col">Version</th>
</UL> <th scope="col">Dated</th>
<BR><HR><H3 id="History">History">History</H3> <th scope="col">Release notes</th>
<TABLE BORDER=1> </tr>
<CAPTION><I>The history of RGBFix</I></CAPTION> </thead>
<TR> <tr>
<TD ALIGN="Center"><B><I>Version</I></B></TD> <td>1.0</td>
<TD ALIGN="Center"><B><I>Dated</I></B></TD> <td>1 Oct. 96</td>
<TD><B><I>Release notes</I></B></TD> <td>First release</td>
</TR> </tr>
<TR> <tr>
<TD ALIGN="Center">1.0</TD> <td>1.01</td>
<TD ALIGN="Center">1 Oct. 96</TD> <td>3 Dec. 96</td>
<TD>First release</TD> <td>-t didn't Work. Fixed.</td>
</TR> </tr>
<TR> <tr>
<TD ALIGN="Center">1.01</TD> <td>1.02</td>
<TD ALIGN="Center">3 Dec. 96</TD> <td>20 July 1997</td>
<TD>-t didn't Work. Fixed.</TD> <td>RGBFix can now also truncate the ROM-images to a valid size.</td>
</TR> </tr>
<TR> </table>
<TD ALIGN="Center">1.02</TD> <h2 id="usage">Usage</h2>
<TD ALIGN="Center">20 July 1997</TD> <pre> rgbfix [options] image[.gb]</pre>
<TD>RGBFix can now also truncate the ROM-images to a valid size.</TD> <p>Options are preceded by a dash (-) and go as follows:
</TD> <pre> t<b>name</b> : Change title field of image
</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
p : Pad image to valid size p : Pad image to valid size
v : Validate header v : Validate header
d : Debug, don't change image d : Debug, don't change image
r : Truncate image to valid size r : Truncate image to valid size
h : Short help text</PRE> 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. <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 RGBFixs
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 distribution now follows the same rules as the rest of the ASMotor package. GBFix still follows its own rules.</p>
for the sake of consistence with the other <B>ASMotor</B> tools. Being part of <B>RGBDS</B> means <B>RGBFix</B>' <h2 id="options">Options</h2>
distribution now follows the same rules as the rest of the <B>ASMotor</B> package. GBFix still follows its own rules.</FONT> <BR> <p>How to use the various options.
<BR><HR><H3 id="Options">Options</H3> <h3>Titlefield</h3>
<P>How to use the various options. <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.
<H4><BR> <pre> rgbfix -tASMOTOR foobar.gb</pre>
Titlefield</H4> <h3>Pad Image</h3>
<P>This option changes the titlefield of the image to the string you specify truncated to a maximum of 16 characters. No <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.
uppercase conversion is performed.<BR> <pre> rgbfix -p foobar.gb</pre>
<BR> <h3>Truncate Image</h3>
<PRE> rgbfix -tASMOTOR foobar.gb</PRE> <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.
<H4><BR>Pad Image</H4> <pre> rgbfix -r foobar.gb</pre>
<P>Pad the image to a valid size. 32Kb, 64Kb, 128Kb, 256Kb and 512Kb. RGBFix intelligently decides which one to use. <h3>Validate Header</h3>
The cartridge size byte in the image header is left unchanged. If you find this undesireable use the Validate Header option.<BR> <p>Examines the header for errors and validates them if any.
<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>
Areas examined: Areas examined:
<UL> <ul>
<LI>Nintendo Character Area <li>Nintendo Character Area
<LI>ROM size byte <li>ROM size byte
<LI>Cartridge type byte <li>Cartridge type byte
<LI>Checksums <li>Checksums
</UL> </ul>
<BR> <pre> rgbfix -v foobar.gb</pre>
<PRE> rgbfix -v foobar.gb</PRE> <h3>Debug</h3>
<H4><BR> <p>Pretends it performs the desired changes.
Debug</H4> <pre> rgbfix -tASMOTOR -p -v -d foobar.gb</pre>
<P>Pretends it performs the desired changes.<BR> <hr>
<BR> <p>Last updated 18 July 1997 by <a href="mailto:surfsmurf@matilde.demon.co.uk">Carsten Sorensen</a></p>
<PRE> rgbfix -tASMOTOR -p -v -d foobar.gb</PRE> </body>
<BR> </html>
<HR>
<FONT SIZE="-1"><I><P ALIGN=RIGHT>Last updated 18 July 1997 by <A HREF="mailto:surfsmurf@matilde.demon.co.uk">Carsten Sorensen</A></P></I></FONT>
</BODY>
</HTML>

View File

@@ -1,157 +1,116 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
"http://www.w3.org/TR/html4/loose.dtd"> <html>
<HTML> <head>
<HEAD> <meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
<TITLE>General Information</TITLE> <title>General Information</title>
<link rel="stylesheet" type="text/css" href="./style.css"> <link rel="stylesheet" type="text/css" href="./style.css">
</HEAD> </head>
<body>
<BODY> <h1><abbr title="Rednex Game Boy Development System">RGBDS</abbr>—ASMotor General Information</h1>
<HR><CENTER> <h2>Table of Contents</h2>
<TABLE BORDER=0 BGCOLOR="#000000" CELLPADDING=25> <ul>
<TR> <li><a href="#license">License</a>
<TD><FONT COLOR="#FFFFFF"><H2>ASMotor General Information</H2></FONT></TD> <li><a href="#Author">The Author</a>
</TR> <li><a href="#Introduction">Introduction</a>
</TABLE> <li><a href="#Installation">Installation</a>
</CENTER> <li><a href="#Documentation">The Documentation</a>
<HR> <li><a href="#History">History</a>
<H2><CENTER>Table of Contents </ul>
</CENTER></H2> <h2 id="license">License</h2>
<UL> <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.
<LI><A HREF="#BlahBlahBlah">BlahBlahBlah</A> <p>In other words this means I encourage you to…
<LI><A HREF="#Author">The Author</A> <ul>
<LI><A HREF="#Introduction">Introduction</A> <li>use it for whatever purpose even professional work without me charging you a penny
<LI><A HREF="#Installation">Installation</A> <li>copy it to another person (wholly or in part, though Im sure hed appreciate the whole package) in
<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
whatever form you find suitable 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>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 <li>contact me if you have any problems
</UL> </ul>
<P>This also means you can't... <p>This also means you cant…
<UL> <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 <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 <B>ASMotor</B> you do so at your own risk. 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 <B>ASMotor</B>. <li>expect me to be able to help you should you have a problem related or not to ASMotor.
</UL> </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> <h2 id="Author">The Author</h2>
"PMODE/W is Copyright (c) 1994-1997, Charles Scheffold and Thomas Pytel. All rights reserved."<BR> <p>Any questions? Write me!
<BR><HR><H3 id="Author">The Author</H3> <h3>Address</h3>
<P>Any questions? Write me!<BR> <p>
<BR> Carsten Sorensen<br>
Carsten Sorensen<BR> 1 Spring Court<br>
1 Spring Court<BR> Guildford<br>
Guildford<BR> Surrey GU2 6QW<br>
Surrey GU2 6QW<BR> United Kingdom<br>
United Kingdom<BR> <h3 id="Email">e-mail:</h3>
<BR> <ul>
<h4 id="Email">e-mail:</h4> <li><a href="mailto:surfsmurf@matilde.demon.co.uk">surfsmurf@matilde.demon.co.uk</a> (private)
<A HREF="mailto:surfsmurf@matilde.demon.co.uk">surfsmurf@matilde.demon.co.uk</A> (private)<BR> <li><a href="mailto:csorensen@ea.com">csorensen@ea.com</a> (work)
<A HREF="mailto:csorensen@ea.com">csorensen@ea.com</A> (work)<BR> </ul>
<BR> <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>
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>
<BR><HR><H3 id="Introduction">Introduction</H3> <table>
<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 <caption>The history of ASMotor</caption>
video-game console by Nintendo but recently it has moved towards being a target independent shell for making development of new <thead>
assemblers for different processors easier.<BR> <tr>
<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> <th>Version</th>
<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> <th>Dated</th>
<A HREF="fix.htm">RGBFix</A> is used to apply some final cosmetic details to a Gameboy ROM-image.<BR> <th>Release notes</th>
<P>This document does not try to teach you how to program in assembler, how to program a specifix processor or the Gameboy. </tr>
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. </thead>
<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. <tr>
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. <td>1.0</td>
<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 <td>03 July 1997</td>
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> <td>First release</td>
</tr>
<BR><HR><H3 id="Installation">Installation</H3> <tr>
<P>Anywhere on your HD will do. For maximum enjoyment I recommend adding the directory to your path. <td>1.01</td>
Alternatively you can run it from a floppy.<BR> <td>20 July 1997</td>
<td><p>RGBDS fixes:</p>
<BR><HR><H3 id="Documentation">The Documentation</H3> <ul>
<P>The documentation only comes in one flavour. HTML. This has several advantages for me <li>RGBFix can now also truncate the ROM-images to a valid size.
<UL> <li>RGBAsm supports the LDD and LDI syntax plus [HLD] and [HLI]. LDH is synonymous with LDIO.
<LI>It's a more "portable" format. <li>Example filenames have been changed to adhere to Jeff Frohweins proposed standard.
<LI>Not everybody has the nice fonts I used in the Word file. </ul>
<LI>Hypertext r00lz. (Typesetting for programmers ;) <p>General fixes:</p>
<LI>I can put it "as is" on <A HREF="http://www.matilde.demon.co.uk">my web page</A>. <ul>
</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.
<BR><HR><H3 id="History">History</H3> <li>RGBLink <em>didnt</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.
<TABLE BORDER=1> <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.
<CAPTION><I>The history of ASMotor</I></CAPTION> <li>A section stack has been implemented. Look up POPS and PUSHS in the
manual. Jeff Frohweins doing again.
<TR> <li>OPT command added for defining and changing some options while assembling.
<TD ALIGN="Center"><B><I>Version</I></B></TD> <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.
<TD ALIGN="Center"><I><B>Dated</B></I></TD> <li>Also, an option stack has been added. Look up POPO and PUSHO in the manual.
<TD><B><I>Release notes</I></B></TD> <li>Fixed yet another line number bug reported by Jeff Frohwein (when will this guy leave me alone? ;)
</TR> </ul>
<TR> </td>
<TD ALIGN="Center">1.0</TD> <tr>
<TD ALIGN="Center">03 July 1997</TD> <td>1.02</td>
<TD>First release</TD> <td>22 July 1997</td>
</TR> <td><p>General fixes:</p>
<TR> <ul>
<TD ALIGN="Center">1.01</TD> <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.
<TD ALIGN="Center">20 July 1997</TD> <li>The first line of an included file didnt assemble correctly.
<TD><B>RGBDS fixes:</B><BR> <li>-b option added for setting the characters used for binary constants.
RGBFix can now also truncate the ROM-images to a valid size.<BR> </ul>
RGBAsm supports the LDD and LDI syntax plus [HLD] and [HLI]. LDH is </td>
synonymous with LDIO.<BR> </tr>
Example filenames have been changed to adhere to Jeff Frohweins proposed <tr>
standard.<BR> <td>1.10</td>
<B>General fixes:</B><BR> <td>21 Sep 1997</td>
RGBLink knows about big and little endian. Plus it can do range checking <td><p>General fixes:</p>
on intermediate results in an expression. This is necessary to support <ul>
different types of CPUs.<BR> <li>The assembler would crash if you tried to use a macro symbol in an expression. (Jeff Frohwein)
RGBLink DIDN'T know about the special PC symbol "@" so if you used it <li>You couldnt use STRCMP, STRLEN and STRIN in relocatable expressions. (Harry P. Mulder)
more than once per sourcefile in an expression the linker had to <li>Relocatable symbols are no longer allowed as arguments to the DEF function.
resolve, things would go horribly wrong.<BR> <li>Finally! A librarian and smart linking has been added.
There was a bug in the macro parameter passing. Any whitespace after the <li>Bug fixed in the assembler where it would sometimes write out too many bytes for HRAM section definitions.
last parameter would be appended to the last parameter. Reported by Jeff Frohwein.<BR> <li>-z options (set fill value used for uninitialised data) added to the
A section stack has been implemented. Look up POPS and PUSHS in the assembler and linker.
manual. Jeff Frohweins doing again.<BR> <li>The assembler will now read in any type of ASCII file on any type of OS.
OPT command added for defining and changing some options while assembling.<BR> </ul>
You can now define which characters are used for the Gameboy graphics </table>
integer (`) using the commandline or the new OPT command. Cool idea by (surprise surprise) Jeff Frohwein.<BR> <p>Last updated 08 October 1997 by <a href="mailto:surfsmurf@matilde.demon.co.uk">Carsten Sorensen</a></p>
Also, an option stack has been added. Look up POPO and PUSHO in the </body>
manual.<BR> </html>
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:surfsmurf@matilde.demon.co.uk">Carsten Sorensen</A></P></I></FONT>
</BODY>
</HTML>

View File

@@ -1,34 +1,21 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
"http://www.w3.org/TR/html4/loose.dtd"> <html>
<HTML> <head>
<HEAD> <meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
<TITLE>ASMotor Documentation</TITLE> <title>RGBDS—ASMotor Documentation</title>
<link rel="stylesheet" type="text/css" href="./style.css"> <link rel="stylesheet" type="text/css" href="./style.css">
</HEAD> </head>
<body>
<BODY> <h1><abbr title="Rednex Game Boy Development System">RGBDS</abbr>—ASMotor v1.10 Documentation</h1>
<HR ALIGN="CENTER" SIZE="3"> <h2>Table of Contents</h2>
<CENTER><TABLE BORDER=0 ALIGN="MIDDLE" BGCOLOR="#000000" CELLPADDING=25> <ul>
<TR> <li><a href="geninfo.htm">ASMotor General Information</a>
<TD><FONT COLOR="#FFFFFF"><H1><CENTER>ASMotor v1.10<BR> <li><a href="asm.htm">xASM Documentation</a>
documentation<BR> <li><a href="link.htm">xLink Documentation</a>
<FONT SIZE="-1"><BR>(stay with the machine)</FONT> <li><a href="lib.htm">xLib Documentation</a>
</CENTER></H1></FONT></TD> <li><a href="fix.htm">RGBFix Documentation</a>
</TR> <li><a href="rgb0.htm">The RGB0-2 ObjectFileFormat</a>
</TABLE> </ul>
</CENTER><HR ALIGN="CENTER" SIZE="3"> <p>Last updated 21 September 1997 by <a href="mailto:surfsmurf@matilde.demon.co.uk">Carsten Sorensen</a></p>
<H2><CENTER>Table of Contents </body>
</CENTER></H2> </html>
<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:surfsmurf@matilde.demon.co.uk">Carsten Sorensen</A></P></I></FONT>
</BODY>
</HTML>

View File

@@ -1,68 +1,47 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" <!DOCTYPE HTML PUBliC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
"http://www.w3.org/TR/html4/loose.dtd"> <html>
<HTML> <head>
<HEAD> <meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
<TITLE>xLib</TITLE> <title>xLib</title>
<link rel="stylesheet" type="text/css" href="./style.css"> <link rel="stylesheet" type="text/css" href="./style.css">
</HEAD> </head>
<body>
<BODY> <h1>xLib Documentation</h1>
<HR SIZE="3"> <h2>Table of Contents</h2>
<CENTER> <ul>
<TABLE CELLPADDING=25 BORDER=0 BGCOLOR="#000000"> <li><a href="#history"> History</A>
<TR> <li><a href="#usage"> Usage</A>
<TD><FONT COLOR="#FFFFFF"><H2>xLib Documentation</H2></FONT></TD> <li><a href="#commands"> The commands</A>
</TR> </ul>
</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>
<hr> <hr>
<H3 id="History">History</H3> <h2 id="history">History</h2>
<TABLE BORDER=1> <table>
<CAPTION><I>The history of xLib</I></CAPTION> <caption>The history of xLib</caption>
<TR> <thead>
<TD ALIGN="Center"><B><I>Version</I></B></TD> <tr>
<TD ALIGN="Center"><B><I>Dated</I></B></TD> <th scope="col">Version</th>
<TD><B><I>Release notes</I></B></TD> <th scope="col">Dated</th>
</TR> <th scope="col">Release notes</th>
<TR> </tr>
<TD ALIGN="Center">1.0</TD> </thead>
<TD ALIGN="Center">21 Sep. 1997</TD> <tr>
<TD>First release</TD> <td>1.0</td>
</TR> <td>21 Sep. 1997</td>
</TABLE> <td>First release</td>
<BR> </tr>
<HR> </table>
<BR> <h2 id="usage">Usage</h2>
<H3 id="Usage">Usage</H3> <pre> xlib library command [module1 module2 ... modulen]</pre>
<PRE> xlib library command [module1 module2 ... modulen]</PRE> <h2 id="commands">The Commands</h2>
<HR> <p>The <b>command</b> specified after <b>library</b> on the <a href="#Usage">commandline</a> tells xLib what to do.
<H3 id="Commands">The Commands</H3> <p>The following commands are available:
<P>The <B>command</B> specified after <B>library</B> on the <A HREF="#Usage">commandline</A> tells xLib what to do. <ul>
<P>The following commands are available: <li>a — Adds (or replaces if already present) the modules to the library
<TABLE BORDER=1> <li>d — Deletes the modules specified from the library
<TR> <li>l — Lists the library contents
<TD>a</TD> <li>x — Extracts the modules from the library
<TD>Adds (or replaces if already present) the modules to the library</TD> </ul>
</TR> <hr>
<TR> <p>Last updated 21 September 1997 by <a href="mailto:surfsmurf@matilde.demon.co.uk">Carsten Sorensen</a></p>
<TD>d</TD> </body>
<TD>Deletes the modules specified from the library</TD> </html>
</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:surfsmurf@matilde.demon.co.uk">Carsten Sorensen</A></P></I></FONT>
</BODY>
</HTML>

View File

@@ -1,100 +1,96 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" <!DOCTYPE HTML PUBliC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
"http://www.w3.org/TR/html4/loose.dtd"> <html>
<HTML> <head>
<HEAD> <meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
<TITLE>xLink</TITLE> <title>xLink</title>
<link rel="stylesheet" type="text/css" href="./style.css"> <link rel="stylesheet" type="text/css" href="./style.css">
</HEAD> </head>
<body>
<BODY> <h1>xLink Documentation</h1>
<HR SIZE="3"> <h2>Table of Contents</h2>
<CENTER> <ul>
<TABLE CELLPADDING=25 BORDER=0 BGCOLOR="#000000"> <li><a href="#history"> History</a>
<TR> <li><a href="#usage"> Usage</a>
<TD><FONT COLOR="#FFFFFF"><H2>xLink Documentation</H2></FONT></TD> <li><a href="#linkfile"> The Linkfile</a>
</TR> <li><a href="#operationtg"> Operation for Gameboy</a>
</TABLE> <li><a href="#smallmode"> Operation for Gameboy small mode</a>
<HR><H2>Table of Contents<BR></CENTER></H2> <li><a href="#psion2"> Operation for Psion2 relocatable modules</a>
<UL> </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> <hr>
<H3 id="History">History</H3> <h2 id="history">History</h2>
<TABLE BORDER=1> <table>
<CAPTION><I>The history of xLink</I></CAPTION> <caption>The history of xLink</caption>
<TR> <thead>
<TD ALIGN="Center"><B><I>Version</I></B></TD> <tr>
<TD ALIGN="Center"><B><I>Dated</I></B></TD> <th scope="col">Version</th>
<TD><B><I>Release notes</I></B></TD> <th scope="col">Dated</th>
</TR> <th scope="col">Release notes</th>
<TR> </tr>
<TD ALIGN="Center">1.0</TD> </thead>
<TD ALIGN="Center">1 Oct. 96</TD> <tr>
<TD>First release (RGBDS)</TD> <td>1.0</td>
</TR> <td>1 Oct. 96</td>
<TR> <td>First release (RGBDS)</td>
<TD ALIGN="Center">1.01</TD> </tr>
<TD ALIGN="Center">3 Dec. 96</TD> <tr>
<TD>BANK() didn't work. Fixed.<BR> <td>1.01</td>
Sections were quite often output in the wrong order. Fixed.</TD> <td>3 Dec. 96</td>
</TR> <td>
<TR> <ul>
<TD ALIGN="Center">1.02</TD> <li>BANK() didn't work. Fixed.</li>
<TD ALIGN="Center">12 Feb. 97</TD> <li>Sections were quite often output in the wrong order. Fixed.</li>
<TD><A HREF="#Usage">-s switch and mapfile option</A> added</TD> </ul>
</TR> </tr>
<TR> <tr>
<TD ALIGN="Center">1.03</TD> <td>1.02</td>
<TD ALIGN="Center">23 Mar. 97</TD> <td>12 Feb. 97</td>
<TD><A HREF="#Usage">Mapfile</A> now shows BSS, VRAM and HRAM areas<BR> <td><a href="#usage">-s switch and mapfile option</A> added</td>
There was a bug regarding <A HREF="#Operation">fixed HOME sections.</A> <BR></TD> </tr>
</TR> <tr>
<TR> <td>1.03</td>
<TD ALIGN="Center">1.04</TD> <td>23 Mar. 97</td>
<TD ALIGN="Center">03 July 1997</TD> <td>
<TD>First ASMotor release. Supports big-endian CPUs as well. <A HREF="#Usage">Usage</A> changed to allow for different output fileformats</TD> <ul>
</TR> <li><a href="#usage">Mapfile</A> now shows BSS, VRAM and HRAM areas</li>
<TR> <li>There was a bug regarding <a href="#operation">fixed HOME sections.</a>
<TD ALIGN="Center">1.05</TD> </ul></td>
<TD ALIGN="Center">20 July 1997</TD> </tr>
<TD>We can now do range checking on intermediate results in an expression. This is necessary to support <tr>
different types of CPUs.<BR> <td>1.04</td>
RGBLink DIDN'T know about the special PC symbol "@" so if you used it <td>03 July 1997</td>
more than once per sourcefile in an expression the linker had to <td>First ASMotor release. Supports big-endian CPUs as well. <a href="#usage">Usage</a> changed to allow for different output fileformats</td>
resolve, things would go horribly wrong.<BR> </tr>
</TD> <tr>
<TR> <td>1.05</td>
<TD ALIGN="Center">1.06</TD> <td>20 July 1997</td>
<TD ALIGN="Center">21 September 1997</TD> <td>
<TD>Smart linking and library support added<BR> <ul>
Program renamed to xLink<BR> <li>We can now do range checking on intermediate results in an expression. This is necessary to support different types of CPUs.</li>
</TD> <li>RGBLink DIDNT 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>
</TABLE> </ul>
<BR> </td>
<HR> <tr>
<BR> <td>1.06</td>
<H3 id="Usage">Usage</H3> <td>21 September 1997</td>
<PRE> xlink [options] linkfile</PRE> <td><ul><li>Smart linking and library support added
<P>Options are preceded by a dash (-) and go as follows:<BR> <li>Program renamed to xLink
<BR> </ul>
<PRE> h : Short help text </td>
m<B>mapfile</B> : Write a mapfile</A> </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: t : Output target:
tg : Gameboy <A HREF="#OperationTG">ROM image</A> (default) tg : Gameboy <a href="#operationtg">ROM image</a> (default)
ts : Gameboy <A HREF="#smallmode">Small mode (32kB)</A> ROM image ts : Gameboy <a href="#smallmode">Small mode (32kB)</a> ROM image
tp : <A HREF="#psion2">Psion2</A> relocatable module 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) z<b>HX</b> : Set the byte value (hex format) used for uninitialised data (default is ? for random)
</PRE> </pre>
<HR> <h2 id="linkfile">The Linkfile</h2>
<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.
<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> <pre> # Linkfile for foobar.gb
<BR>
<PRE> # Linkfile for foobar.gb
[Objects] [Objects]
foo.obj foo.obj
@@ -104,25 +100,22 @@ resolve, things would go horribly wrong.<BR>
mylib.lib mylib.lib
[Output] [Output]
foobar.gb</PRE> foobar.gb</pre>
<P>A line starting with # is ignored.<BR> <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. <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> <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. <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.
<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.
<P>Currently the linker doesn't calculate the GB checksums. You must use <a href="fix.htm">RGBFix</a> to do this.
You must use <A HREF="fix.htm">RGBFix</A> to do this.<BR><BR>
<BR><HR><H3 id="smallmode">Operation for Gameboy small mode (-ts)</H3> <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 <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.
<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.
<P>Currently the linker doesn't calculate the GB checksums.
You must use <A HREF="fix.htm">RGBFix</A> to do this.<BR><BR>
<BR><HR><H3 id="psion2">Operation for Psion2 relocatable modules (-tp)</H3> <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.<BR> <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.
The file looks like this (all values are big endian): <p>The file looks like this (all values are big endian):
<PRE> <pre>
LONG NumberOfDataBytes LONG NumberOfDataBytes
REPT NumberOfDataBytes REPT NumberOfDataBytes
DB x DB x
@@ -131,9 +124,8 @@ LONG NumberOfPatches
REPT NumberOfPatches REPT NumberOfPatches
LONG x ; A value to add to the word at address x in the code LONG x ; A value to add to the word at address x in the code
ENDR ENDR
</PRE> </pre>
<hr>
<HR> <p>Last updated 08 October 1997 by <a href="mailto:surfsmurf@matilde.demon.co.uk">Carsten Sorensen</a></p>
<FONT SIZE="-1"><I><P ALIGN=RIGHT>Last updated 08 October 1997 by <A HREF="mailto:surfsmurf@matilde.demon.co.uk">Carsten Sorensen</A></P></I></FONT> </body>
</BODY> </html>
</HTML>

View File

@@ -1,40 +1,30 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
"http://www.w3.org/TR/html4/loose.dtd"> <html>
<HTML> <head>
<HEAD> <meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
<TITLE>RGB? Fileformat</TITLE> <title>RGB? Fileformat</title>
<link rel="stylesheet" type="text/css" href="./style.css"> <link rel="stylesheet" type="text/css" href="./style.css">
</HEAD> </head>
<body>
<BODY> <h1>The RGB ObjectFileFormats</h1>
<HR><CENTER> <h2>Table of Contents</h2>
<TABLE CELLPADDING=25 BORDER=0 BGCOLOR="#000000"> <ul>
<TR> <li><a href="#background">Background</A>
<TD><FONT COLOR="#FFFFFF"><H2>The RGB ObjectFileFormats</H2></FONT></TD> <li><a href="#filestructure">FileStructure</A>
</TR> <li><a href="#rpn">Rpn Data</A>
</TABLE> </ul>
<HR> <h2 id="background">Background</h2>
<H2>Table of Contents<BR></CENTER></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>
<UL> <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>
<LI><A HREF="#Background">Background</A> <p>The RGB2 fileformat emerged because I needed to add support for big endian CPUs.</p>
<LI><A HREF="#FileStructure">FileStructure</A> <h2 id="filestructure">FileStructure</h2>
<LI><A HREF="#RPN">Rpn Data</A> <ul>
</UL> <li><dfn>LONG</dfn> is a 32bit integer stored in littleendian format (Intel)
<BR> <li><dfn>BYTE</dfn> is an 8bit integer
<HR><H3 id="Background">Background</H3> <li><dfn>STRING</dfn> is a 0terminated string of <b>BYTE</b>
<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 </ul>
new ones. <p>Down to business...</p>
The reason for documenting it is so people can write converters between it and other formats. Perhaps even develop other compilers for it?<BR> <pre>
<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>
; There's a header... ; There's a header...
BYTE ID[4] ;"RGB0", "RGB1", "RGB2" BYTE ID[4] ;"RGB0", "RGB1", "RGB2"
@@ -43,7 +33,7 @@ Down to business...<BR>
; Now for some symbols ; 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 STRING Name ;The name of this symbol
BYTE Type ;0 = LOCAL symbol only used in this file BYTE Type ;0 = LOCAL symbol only used in this file
;1 = IMPORT this symbol from elsewhere ;1 = IMPORT this symbol from elsewhere
@@ -93,130 +83,128 @@ Down to business...<BR>
BYTE RPN[RPNSize] ;RPN definition below BYTE RPN[RPNSize] ;RPN definition below
ENDR ENDR
ENDC ENDC
ENDR</PRE> ENDR</pre>
<BR><HR><H3 id="RPN">Rpn Data</H3> <h2 id="rpn">Rpn Data</h2>
<P>Expressions in the objectfile are stored as <B>RPN</B>. This is an expression of the form "2 5 +". This will first push <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>
the value "2" to the stack. Then "5". The "+" operator pops two arguments from the stack, adds them, and then <table>
pushes the result on the stack, effectively replacing the two top arguments with their sum. In the <B>RGB</B> format <B>RPN</B> <caption>RPN Expressions</caption>
expression are stored as <B>BYTE</B>s with some bytes being special prefixes for integers and symbols.<BR> <thead>
<BR> <tr>
<TABLE BORDER=1 WIDTH="50%"> <th scope="col">Byte value</th>
<CAPTION><I>RPN Expressions</I></CAPTION> <th scope="col">Meaning</th>
<TR> </tr>
<TD ALIGN="Center"><B><I>Byte value</I></B></TD> </thead>
<TD><B><I>Meaning</I></B></TD> <tr>
</TR> <td>$00</td>
<TR> <td>+ operator</td>
<TD ALIGN="Center">$00</TD> </tr>
<TD>+ operator</TD> <tr>
</TR> <td>$01</td>
<TR> <td>- operator</td>
<TD ALIGN="Center">$01</TD> </tr>
<TD>- operator</TD> <tr>
</TR> <td>$02</td>
<TR> <td>* operator</td>
<TD ALIGN="Center">$02</TD> </tr>
<TD>* operator</TD> <tr>
</TR> <td>$03</td>
<TR> <td>/ operator</td>
<TD ALIGN="Center">$03</TD> </tr>
<TD>/ operator</TD> <tr>
</TR> <td>$04</td>
<TR> <td>% operator</td>
<TD ALIGN="Center">$04</TD> </tr>
<TD>% operator</TD> <tr>
</TR> <td>$05</td>
<TR> <td>unary -</td>
<TD ALIGN="Center">$05</TD> </tr>
<TD>unary -</TD> <tr>
</TR> <td>$06</td>
<TR> <td>| operator</td>
<TD ALIGN="Center">$06</TD> </tr>
<TD>| operator</TD> <tr>
</TR> <td>$07</td>
<TR> <td>& operator</td>
<TD ALIGN="Center">$07</TD> </tr>
<TD>& operator</TD> <tr>
</TR> <td>$08</td>
<TR> <td>^ operator</td>
<TD ALIGN="Center">$08</TD> </tr>
<TD>^ operator</TD> <tr>
</TR> <td>$09</td>
<TR> <td>unary ~</td>
<TD ALIGN="Center">$09</TD> </tr>
<TD>unary ~</TD> <tr>
</TR> <td>$0A</td>
<TR> <td>&& comparison</td>
<TD ALIGN="Center">$0A</TD> </tr>
<TD>&& comparison</TD> <tr>
</TR> <td>$0B</td>
<TR> <td>|| comparison</td>
<TD ALIGN="Center">$0B</TD> </tr>
<TD>|| comparison</TD> <tr>
</TR> <td>$0C</td>
<TR> <td>unary !</td>
<TD ALIGN="Center">$0C</TD> </tr>
<TD>unary !</TD> <tr>
</TR> <td>$0D</td>
<TR> <td>== comparison</td>
<TD ALIGN="Center">$0D</TD> </tr>
<TD>== comparison</TD> <tr>
</TR> <td>$0E</td>
<TR> <td>!= comparison</td>
<TD ALIGN="Center">$0E</TD> </tr>
<TD>!= comparison</TD> <tr>
</TR> <td>$0F</td>
<TR> <td>&gt comparison</td>
<TD ALIGN="Center">$0F</TD> </tr>
<TD>&gt comparison</TD> <tr>
</TR> <td>$10</td>
<TR> <td>&lt comparison</td>
<TD ALIGN="Center">$10</TD> </tr>
<TD>&lt comparison</TD> <tr>
</TR> <td>$11</td>
<TR> <td>&gt= comparison</td>
<TD ALIGN="Center">$11</TD> </tr>
<TD>&gt= comparison</TD> <tr>
</TR> <td>$12</td>
<TR> <td>&lt= comparison</td>
<TD ALIGN="Center">$12</TD> </tr>
<TD>&lt= comparison</TD> <tr>
</TR> <td>$13</td>
<TR> <td>&lt&lt operator</td>
<TD ALIGN="Center">$13</TD> </tr>
<TD>&lt&lt operator</TD> <tr>
</TR> <td>$14</td>
<TR> <td>&gt&gt operator</td>
<TD ALIGN="Center">$14</TD> </tr>
<TD>&gt&gt operator</TD> <tr>
</TR> <td>$15</td>
<TR> <td>BANK() function for Gameboy, a symbol ID follows</td>
<TD ALIGN="Center">$15</TD> </tr>
<TD>BANK() function for Gameboy, a symbol ID follows</TD> <tr>
</TR> <td>$16</td>
<TR> <td>HRAMCheck for Gameboy, check if value is in HRAM and logically and it with 0xFF</td>
<TD ALIGN="Center">$16</TD> </tr>
<TD>HRAMCheck for Gameboy, check if value is in HRAM and logically and it with 0xFF</TD> <tr>
</TR> <td>$17</td>
<TR> <td>ZeroPageCheck for PC-Engine, check if value is in ZP (0x2000-0x20FF) and logically and it with 0xFF</td>
<TD ALIGN="Center">$17</TD> </tr>
<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>
<TR> <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 ALIGN="Center">$18</TD> </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. </tr>
</TD> <tr>
</TR> <td>$80</td>
<TR> <td>LONG integer follows</td>
<TD ALIGN="Center">$80</TD> </tr>
<TD>LONG integer follows</TD> <tr>
</TR> <td>$81</td>
<TR> <td>Symbol ID follows</td>
<TD ALIGN="Center">$81</TD> </tr>
<TD>Symbol ID follows</TD> </table>
</TR> <hr>
</TABLE> <p>Last updated 18 July 1997 by <a href="mailto:surfsmurf@matilde.demon.co.uk">Carsten Sorensen</a></p>
<BR><HR> </body>
<FONT SIZE="-1"><I><P ALIGN=RIGHT>Last updated 18 July 1997 by <A HREF="mailto:surfsmurf@matilde.demon.co.uk">Carsten Sorensen</A></P></I></FONT> </html>
</BODY>
</HTML>

View File

@@ -1,16 +0,0 @@
html {
background: #692764;
color: #F5A0D8;
}
a:link {
color: #8AAEE6;
}
a:visited {
color: #2B9DA4;
}
a:active {
color: #95F0DA;
}