shithub: rgbds

Download patch

ref: 292302c6d127f9aa6e8e443b4d41077d9ce00063
parent: b55fead749337c95e2184348cf1f35fa52c2d2ef
author: Antonio Niño Díaz <[email protected]>
date: Tue Jan 23 16:28:10 EST 2018

Move documentation to this repository

Modified Makefile wwwman target to output files inside docs/.

Modified .gitignore to allow *.html files.

Update README.

Signed-off-by: Antonio Niño Díaz <[email protected]>

--- a/.gitignore
+++ b/.gitignore
@@ -4,5 +4,4 @@
 rgbgfx
 *.o
 *.exe
-*.html
 .checkpatch-camelcase.*
--- a/Makefile
+++ b/Makefile
@@ -169,15 +169,15 @@
 MANDOC	:= -Thtml -Ios=General -Oman=%N.%S.html -Ostyle=manual.css
 
 wwwman:
-	$Qmandoc ${MANDOC} src/rgbds.7 > rgbds.7.html
-	$Qmandoc ${MANDOC} src/gbz80.7 > gbz80.7.html
-	$Qmandoc ${MANDOC} src/rgbds.5 > rgbds.5.html
-	$Qmandoc ${MANDOC} src/asm/rgbasm.1 > rgbasm.1.html
-	$Qmandoc ${MANDOC} src/asm/rgbasm.5 > rgbasm.5.html
-	$Qmandoc ${MANDOC} src/fix/rgbfix.1 > rgbfix.1.html
-	$Qmandoc ${MANDOC} src/link/rgblink.1 > rgblink.1.html
-	$Qmandoc ${MANDOC} src/link/rgblink.5 > rgblink.5.html
-	$Qmandoc ${MANDOC} src/gfx/rgbgfx.1 > rgbgfx.1.html
+	$Qmandoc ${MANDOC} src/rgbds.7 > docs/gbds.7.html
+	$Qmandoc ${MANDOC} src/gbz80.7 > docs/gbz80.7.html
+	$Qmandoc ${MANDOC} src/rgbds.5 > docs/rgbds.5.html
+	$Qmandoc ${MANDOC} src/asm/rgbasm.1 > docs/rgbasm.1.html
+	$Qmandoc ${MANDOC} src/asm/rgbasm.5 > docs/rgbasm.5.html
+	$Qmandoc ${MANDOC} src/fix/rgbfix.1 > docs/rgbfix.1.html
+	$Qmandoc ${MANDOC} src/link/rgblink.1 > docs/rgblink.1.html
+	$Qmandoc ${MANDOC} src/link/rgblink.5 > docs/rgblink.5.html
+	$Qmandoc ${MANDOC} src/gfx/rgbgfx.1 > docs/rgbgfx.1.html
 
 # Targets for the project maintainer to easily create Windows exes.
 # This is not for Windows users!
--- a/README.rst
+++ b/README.rst
@@ -12,12 +12,11 @@
 This is a fork of the original RGBDS which aims to make the programs more like
 other UNIX tools.
 
-This toolchain is maintained on `GitHub <https://github.com/rednex/rgbds>`__, as
-well as its `documentation <https://github.com/rednex/rednex.github.io>`__.
+This toolchain is maintained on `GitHub <https://github.com/rednex/rgbds>`__.
 
 The documentation of this toolchain can be viewed online
-`here <https://rednex.github.io/>`__, it is generated from the man pages found
-in this repository.
+`here <https://rednex.github.io/rgbds/>`__, it is generated from the man pages
+found in this repository.
 
 1. Installing RGBDS
 -------------------
--- /dev/null
+++ b/docs/gbds.7.html
@@ -1,0 +1,65 @@
+<!DOCTYPE html>
+<html>
+<head>
+  <meta charset="utf-8"/>
+  <style>
+    table.head, table.foot { width: 100%; }
+    td.head-rtitle, td.foot-os { text-align: right; }
+    td.head-vol { text-align: center; }
+    div.Pp { margin: 1ex 0ex; }
+  </style>
+  <link rel="stylesheet" href="manual.css" type="text/css" media="all"/>
+  <title>RGBDS(7)</title>
+</head>
+<body>
+<table class="head">
+  <tr>
+    <td class="head-ltitle">RGBDS(7)</td>
+    <td class="head-vol">Miscellaneous Information Manual</td>
+    <td class="head-rtitle">RGBDS(7)</td>
+  </tr>
+</table>
+<div class="manual-text">
+<h1 class="Sh" title="Sh" id="NAME"><a class="selflink" href="#NAME">NAME</a></h1>
+<b class="Nm" title="Nm">rgbds</b> &#x2014; <span class="Nd" title="Nd">Rednex
+  Game Boy Development System</span>
+<h1 class="Sh" title="Sh" id="EXAMPLES"><a class="selflink" href="#EXAMPLES">EXAMPLES</a></h1>
+To get a working ROM image from a single assembly source file:
+<div class="Pp"></div>
+<div class="D1">$ rgbasm -o bar.o foo.asm</div>
+<div class="D1">$ rgblink -o baz.gb bar.o</div>
+<div class="D1">$ rgbfix -v -p 0 baz.gb</div>
+<h1 class="Sh" title="Sh" id="SEE_ALSO"><a class="selflink" href="#SEE_ALSO">SEE
+  ALSO</a></h1>
+<a class="Xr" title="Xr">rgbasm(1)</a>, <a class="Xr" title="Xr">rgbfix(1)</a>,
+  <a class="Xr" title="Xr">rgblink(1)</a>,
+  <a class="Xr" title="Xr">rgbds(5)</a>, <a class="Xr" title="Xr">gbz80(7)</a>
+<h1 class="Sh" title="Sh" id="HISTORY"><a class="selflink" href="#HISTORY">HISTORY</a></h1>
+<dl class="Bl-ohang">
+  <dt class="It-ohang"></dt>
+  <dd class="It-ohang">1997, Carsten S&#x00F8;rensen (AKA SurfSmurf) writes
+      ASMotor as a general-purpose assembler/linker system for DOS/Win32.</dd>
+  <dt class="It-ohang"></dt>
+  <dd class="It-ohang">1999, Justin Lloyd (AKA Otaku no Zoku) adapts ASMotor to
+      read and produce GBZ80 assembly/machine code, and releases this version as
+      RGBDS.</dd>
+  <dt class="It-ohang"></dt>
+  <dd class="It-ohang">2009, Vegard Nossum adapts the code to be more UNIX-like
+      and releases this version as rgbds-linux on GitHub.</dd>
+  <dt class="It-ohang"></dt>
+  <dd class="It-ohang">2010, Anthony J. Bentley forks that repository. The fork
+      becomes the reference implementation of rgbds.</dd>
+  <dt class="It-ohang"></dt>
+  <dd class="It-ohang">2017, Bentley's repository is moved to a neutral name. It
+      is now maintained by a number of contributors at
+      <a class="Lk" title="Lk" href="https://github.com/rednex/rgbds">https://github.com/rednex/rgbds</a>.</dd>
+</dl>
+</div>
+<table class="foot">
+  <tr>
+    <td class="foot-date">April 17, 2017</td>
+    <td class="foot-os">RGBDS Manual</td>
+  </tr>
+</table>
+</body>
+</html>
--- /dev/null
+++ b/docs/gbz80.7.html
@@ -1,0 +1,1697 @@
+<!DOCTYPE html>
+<html>
+<head>
+  <meta charset="utf-8"/>
+  <style>
+    table.head, table.foot { width: 100%; }
+    td.head-rtitle, td.foot-os { text-align: right; }
+    td.head-vol { text-align: center; }
+    div.Pp { margin: 1ex 0ex; }
+  </style>
+  <link rel="stylesheet" href="manual.css" type="text/css" media="all"/>
+  <title>GBZ80(7)</title>
+</head>
+<body>
+<table class="head">
+  <tr>
+    <td class="head-ltitle">GBZ80(7)</td>
+    <td class="head-vol">Miscellaneous Information Manual</td>
+    <td class="head-rtitle">GBZ80(7)</td>
+  </tr>
+</table>
+<div class="manual-text">
+<h1 class="Sh" title="Sh" id="NAME"><a class="selflink" href="#NAME">NAME</a></h1>
+<b class="Nm" title="Nm">gbz80</b> &#x2014; <span class="Nd" title="Nd">CPU
+  opcode reference</span>
+<h1 class="Sh" title="Sh" id="DESCRIPTION"><a class="selflink" href="#DESCRIPTION">DESCRIPTION</a></h1>
+This is the list of opcodes supported by <a class="Xr" title="Xr">rgbasm(1)</a>,
+  including a short description, the number of bytes needed to encode them and
+  the number of CPU cycles at 1MHz (or 2MHz in GBC dual speed mode) needed to
+  complete them.
+<div class="Pp"></div>
+Note: All arithmetic/logic operations that use register
+  <b class="Sy" title="Sy">A</b> as destination can omit the destination as it
+  is assumed it's register <b class="Sy" title="Sy">A</b>. The following two
+  lines have the same effect:
+<div class="Pp"></div>
+<div class="D1"><code class="Li">OR A,B</code></div>
+<div class="D1"><code class="Li">OR B</code></div>
+<h1 class="Sh" title="Sh" id="LEGEND"><a class="selflink" href="#LEGEND">LEGEND</a></h1>
+List of abbreviations used in this document.
+<dl class="Bl-tag">
+  <dt class="It-tag">&#x00A0;</dt>
+  <dd class="It-tag">&#x00A0;</dd>
+  <dt class="It-tag"><var class="Ar" title="Ar">r8</var></dt>
+  <dd class="It-tag">Any of the 8-bit registers (<b class="Sy" title="Sy">A</b>,
+      <b class="Sy" title="Sy">B</b>, <b class="Sy" title="Sy">C</b>,
+      <b class="Sy" title="Sy">D</b>, <b class="Sy" title="Sy">E</b>,
+      <b class="Sy" title="Sy">H</b>, <b class="Sy" title="Sy">L</b>).</dd>
+  <dt class="It-tag">&#x00A0;</dt>
+  <dd class="It-tag">&#x00A0;</dd>
+  <dt class="It-tag"><var class="Ar" title="Ar">r16</var></dt>
+  <dd class="It-tag">Any of the general-purpose 16-bit registers
+      (<b class="Sy" title="Sy">BC</b>, <b class="Sy" title="Sy">DE</b>,
+      <b class="Sy" title="Sy">HL</b>).</dd>
+  <dt class="It-tag">&#x00A0;</dt>
+  <dd class="It-tag">&#x00A0;</dd>
+  <dt class="It-tag"><var class="Ar" title="Ar">n8</var></dt>
+  <dd class="It-tag">8-bit integer constant.</dd>
+  <dt class="It-tag">&#x00A0;</dt>
+  <dd class="It-tag">&#x00A0;</dd>
+  <dt class="It-tag"><var class="Ar" title="Ar">n16</var></dt>
+  <dd class="It-tag">16-bit integer constant.</dd>
+  <dt class="It-tag">&#x00A0;</dt>
+  <dd class="It-tag">&#x00A0;</dd>
+  <dt class="It-tag"><var class="Ar" title="Ar">e8</var></dt>
+  <dd class="It-tag">8-bit offset
+      (<b class="Fl" title="Fl">-</b><b class="Sy" title="Sy">128</b> to
+      <b class="Sy" title="Sy">127</b>).</dd>
+  <dt class="It-tag">&#x00A0;</dt>
+  <dd class="It-tag">&#x00A0;</dd>
+  <dt class="It-tag"><var class="Ar" title="Ar">u3</var></dt>
+  <dd class="It-tag">3-bit unsigned integer constant
+      (<b class="Sy" title="Sy">0</b> to <b class="Sy" title="Sy">7</b>).</dd>
+  <dt class="It-tag">&#x00A0;</dt>
+  <dd class="It-tag">&#x00A0;</dd>
+  <dt class="It-tag"><var class="Ar" title="Ar">cc</var></dt>
+  <dd class="It-tag">Condition codes:
+    <dl class="Bl-tag Bl-compact">
+      <dt class="It-tag"><b class="Sy" title="Sy">Z</b>:</dt>
+      <dd class="It-tag">Execute if Z is set.</dd>
+      <dt class="It-tag"><b class="Sy" title="Sy">NZ</b>:</dt>
+      <dd class="It-tag">Execute if Z is not set.</dd>
+      <dt class="It-tag"><b class="Sy" title="Sy">C</b>:</dt>
+      <dd class="It-tag">Execute if C is set.</dd>
+      <dt class="It-tag"><b class="Sy" title="Sy">NC</b>:</dt>
+      <dd class="It-tag">Execute if C is not set.</dd>
+    </dl>
+  </dd>
+  <dt class="It-tag">&#x00A0;</dt>
+  <dd class="It-tag">&#x00A0;</dd>
+  <dt class="It-tag"><var class="Ar" title="Ar">vec</var></dt>
+  <dd class="It-tag">One of the <var class="Ar" title="Ar">RST</var> vectors
+      (<b class="Sy" title="Sy">0x00</b>, <b class="Sy" title="Sy">0x08</b>,
+      <b class="Sy" title="Sy">0x10</b>, <b class="Sy" title="Sy">0x18</b>,
+      <b class="Sy" title="Sy">0x20</b>, <b class="Sy" title="Sy">0x28</b>,
+      <b class="Sy" title="Sy">0x30</b> and
+    <b class="Sy" title="Sy">0x38</b>).</dd>
+</dl>
+<h1 class="Sh" title="Sh" id="INSTRUCTION_OVERVIEW"><a class="selflink" href="#INSTRUCTION_OVERVIEW">INSTRUCTION
+  OVERVIEW</a></h1>
+<h2 class="Ss" title="Ss" id="8-bit_Arithmetic_and_Logic_Instructions"><a class="selflink" href="#8-bit_Arithmetic_and_Logic_Instructions">8-bit
+  Arithmetic and Logic Instructions</a></h2>
+<dl class="Bl-inset Bl-compact">
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#ADC_A,r8">ADC
+    A,r8</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#ADC_A,[HL]">ADC
+    A,[HL]</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#ADC_A,n8">ADC
+    A,n8</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#ADD_A,r8">ADD
+    A,r8</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#ADD_A,[HL]">ADD
+    A,[HL]</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#ADD_A,n8">ADD
+    A,n8</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#AND_A,r8">AND
+    A,r8</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#AND_A,[HL]">AND
+    A,[HL]</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#AND_A,n8">AND
+    A,n8</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#CP_A,r8">CP A,r8</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#CP_A,[HL]">CP
+    A,[HL]</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#CP_A,n8">CP A,n8</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#DEC_r8">DEC r8</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#DEC_[HL]">DEC
+    [HL]</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#INC_r8">INC r8</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#INC_[HL]">INC
+    [HL]</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#OR_A,r8">OR A,r8</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#OR_A,[HL]">OR
+    A,[HL]</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#OR_A,n8">OR A,n8</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#SBC_A,r8">SBC
+    A,r8</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#SBC_A,[HL]">SBC
+    A,[HL]</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#SBC_A,n8">SBC
+    A,n8</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#SUB_A,r8">SUB
+    A,r8</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#SUB_A,[HL]">SUB
+    A,[HL]</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#SUB_A,n8">SUB
+    A,n8</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#XOR_A,r8">XOR
+    A,r8</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#XOR_A,[HL]">XOR
+    A,[HL]</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#XOR_A,n8">XOR
+    A,n8</a></dt>
+  <dd class="It-inset"></dd>
+</dl>
+<h2 class="Ss" title="Ss" id="16-bit_Arithmetic_Instructions"><a class="selflink" href="#16-bit_Arithmetic_Instructions">16-bit
+  Arithmetic Instructions</a></h2>
+<dl class="Bl-inset Bl-compact">
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#ADD_HL,r16">ADD
+    HL,r16</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#DEC_r16">DEC r16</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#INC_r16">INC r16</a></dt>
+  <dd class="It-inset"></dd>
+</dl>
+<h2 class="Ss" title="Ss" id="Bit_Operations_Instructions"><a class="selflink" href="#Bit_Operations_Instructions">Bit
+  Operations Instructions</a></h2>
+<dl class="Bl-inset Bl-compact">
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#BIT_u3,r8">BIT
+    u3,r8</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#BIT_u3,[HL]">BIT
+    u3,[HL]</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#RES_u3,r8">RES
+    u3,r8</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#RES_u3,[HL]">RES
+    u3,[HL]</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#SET_u3,r8">SET
+    u3,r8</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#SET_u3,[HL]">SET
+    u3,[HL]</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#SWAP_r8">SWAP r8</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#SWAP_[HL]">SWAP
+    [HL]</a></dt>
+  <dd class="It-inset"></dd>
+</dl>
+<h2 class="Ss" title="Ss" id="Bit_Shift_Instructions"><a class="selflink" href="#Bit_Shift_Instructions">Bit
+  Shift Instructions</a></h2>
+<dl class="Bl-inset Bl-compact">
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#RL_r8">RL r8</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#RL_[HL]">RL [HL]</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#RLA">RLA</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#RLC_r8">RLC r8</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#RLC_[HL]">RLC
+    [HL]</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#RLCA">RLCA</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#RR_r8">RR r8</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#RR_[HL]">RR [HL]</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#RRA">RRA</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#RRC_r8">RRC r8</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#RRC_[HL]">RRC
+    [HL]</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#RRCA">RRCA</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#SLA_r8">SLA r8</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#SLA_[HL]">SLA
+    [HL]</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#SRA_r8">SRA r8</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#SRA_[HL]">SRA
+    [HL]</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#SRL_r8">SRL r8</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#SRL_[HL]">SRL
+    [HL]</a></dt>
+  <dd class="It-inset"></dd>
+</dl>
+<h2 class="Ss" title="Ss" id="Load_Instructions"><a class="selflink" href="#Load_Instructions">Load
+  Instructions</a></h2>
+<dl class="Bl-inset Bl-compact">
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#LD_r8,r8">LD
+    r8,r8</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#LD_r8,n8">LD
+    r8,n8</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#LD_r16,n16">LD
+    r16,n16</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#LD_[HL],r8">LD
+    [HL],r8</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#LD_[HL],n8">LD
+    [HL],n8</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#LD_r8,[HL]">LD
+    r8,[HL]</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#LD_[r16],A">LD
+    [r16],A</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#LD_[n16],A">LD
+    [n16],A</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#LD_[$FF00+n8],A">LD
+    [$FF00+n8],A</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#LD_[$FF00+C],A">LD
+    [$FF00+C],A</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#LD_A,[r16]">LD
+    A,[r16]</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#LD_A,[n16]">LD
+    A,[n16]</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#LD_A,[$FF00+n8]">LD
+    A,[$FF00+n8]</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#LD_A,[$FF00+C]">LD
+    A,[$FF00+C]</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#LD_[HL+],A">LD
+    [HL+],A</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#LD_[HL-],A">LD
+    [HL-],A</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#LD_A,[HL+]">LD
+    A,[HL+]</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#LD_A,[HL-]">LD
+    A,[HL-]</a></dt>
+  <dd class="It-inset"></dd>
+</dl>
+<h2 class="Ss" title="Ss" id="Jumps_and_Subroutines"><a class="selflink" href="#Jumps_and_Subroutines">Jumps
+  and Subroutines</a></h2>
+<dl class="Bl-inset Bl-compact">
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#CALL_n16">CALL
+    n16</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#CALL_cc,n16">CALL
+    cc,n16</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#JP_HL">JP HL</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#JP_n16">JP n16</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#JP_cc,n16">JP
+    cc,n16</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#JR_e8">JR e8</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#JR_cc,e8">JR
+    cc,e8</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#RET_cc">RET cc</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#RET">RET</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#RETI">RETI</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#RST_vec">RST vec</a></dt>
+  <dd class="It-inset"></dd>
+</dl>
+<h2 class="Ss" title="Ss" id="Stack_Operations_Instructions"><a class="selflink" href="#Stack_Operations_Instructions">Stack
+  Operations Instructions</a></h2>
+<dl class="Bl-inset Bl-compact">
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#ADD_HL,SP">ADD
+    HL,SP</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#ADD_SP,e8">ADD
+    SP,e8</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#DEC_SP">DEC SP</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#INC_SP">INC SP</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#LD_SP,n16">LD
+    SP,n16</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#LD_[n16],SP">LD
+    [n16],SP</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#LD_HL,SP+e8">LD
+    HL,SP+e8</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#LD_SP,HL">LD
+    SP,HL</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#POP_AF">POP AF</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#POP_r16">POP r16</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#PUSH_AF">PUSH AF</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#PUSH_r16">PUSH
+    r16</a></dt>
+  <dd class="It-inset"></dd>
+</dl>
+<h2 class="Ss" title="Ss" id="Miscellaneous_Instructions"><a class="selflink" href="#Miscellaneous_Instructions">Miscellaneous
+  Instructions</a></h2>
+<dl class="Bl-inset Bl-compact">
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#CCF">CCF</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#CPL">CPL</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#DAA">DAA</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#DI">DI</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#EI">EI</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#HALT">HALT</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#NOP">NOP</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#SCF">SCF</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#STOP">STOP</a></dt>
+  <dd class="It-inset"></dd>
+</dl>
+<h1 class="Sh" title="Sh" id="INSTRUCTION_REFERENCE"><a class="selflink" href="#INSTRUCTION_REFERENCE">INSTRUCTION
+  REFERENCE</a></h1>
+<h2 class="Ss" title="Ss" id="ADC_A,r8"><a class="selflink" href="#ADC_A,r8">ADC
+  A,r8</a></h2>
+Add the value in <var class="Ar" title="Ar">r8</var> plus the carry flag to
+  <b class="Sy" title="Sy">A</b>.
+<div class="Pp"></div>
+Cycles: 1
+<div class="Pp"></div>
+Bytes: 1
+<div class="Pp"></div>
+Flags:
+<ul class="Bl-bullet Bl-compact">
+  <li class="It-bullet"><b class="Sy" title="Sy">Z</b>: Set if result is 0.</li>
+  <li class="It-bullet"><b class="Sy" title="Sy">N</b>: 0</li>
+  <li class="It-bullet"><b class="Sy" title="Sy">H</b>: Set if overflow from bit
+      3.</li>
+  <li class="It-bullet"><b class="Sy" title="Sy">C</b>: Set if overflow from bit
+      7.</li>
+</ul>
+<h2 class="Ss" title="Ss" id="ADC_A,[HL]"><a class="selflink" href="#ADC_A,[HL]">ADC
+  A,[HL]</a></h2>
+Add the value pointed by <b class="Sy" title="Sy">HL</b> plus the carry flag to
+  <b class="Sy" title="Sy">A</b>.
+<div class="Pp"></div>
+Cycles: 2
+<div class="Pp"></div>
+Bytes: 1
+<div class="Pp"></div>
+Flags: See <a class="Sx" title="Sx" href="#ADC_A,r8">ADC A,r8</a>
+<h2 class="Ss" title="Ss" id="ADC_A,n8"><a class="selflink" href="#ADC_A,n8">ADC
+  A,n8</a></h2>
+Add the value <var class="Ar" title="Ar">n8</var> plus the carry flag to
+  <b class="Sy" title="Sy">A</b>.
+<div class="Pp"></div>
+Cycles: 2
+<div class="Pp"></div>
+Bytes: 2
+<div class="Pp"></div>
+Flags: See <a class="Sx" title="Sx" href="#ADC_A,r8">ADC A,r8</a>
+<h2 class="Ss" title="Ss" id="ADD_A,r8"><a class="selflink" href="#ADD_A,r8">ADD
+  A,r8</a></h2>
+Add the value in <var class="Ar" title="Ar">r8</var> to
+  <b class="Sy" title="Sy">A</b>.
+<div class="Pp"></div>
+Cycles: 1
+<div class="Pp"></div>
+Bytes: 1
+<div class="Pp"></div>
+Flags:
+<ul class="Bl-bullet Bl-compact">
+  <li class="It-bullet"><b class="Sy" title="Sy">Z</b>: Set if result is 0.</li>
+  <li class="It-bullet"><b class="Sy" title="Sy">N</b>: 0</li>
+  <li class="It-bullet"><b class="Sy" title="Sy">H</b>: Set if overflow from bit
+      3.</li>
+  <li class="It-bullet"><b class="Sy" title="Sy">C</b>: Set if overflow from bit
+      7.</li>
+</ul>
+<h2 class="Ss" title="Ss" id="ADD_A,[HL]"><a class="selflink" href="#ADD_A,[HL]">ADD
+  A,[HL]</a></h2>
+Add the value pointed by <b class="Sy" title="Sy">HL</b> to
+  <b class="Sy" title="Sy">A</b>.
+<div class="Pp"></div>
+Cycles: 2
+<div class="Pp"></div>
+Bytes: 1
+<div class="Pp"></div>
+Flags: See <a class="Sx" title="Sx" href="#ADD_A,r8">ADD A,r8</a>
+<h2 class="Ss" title="Ss" id="ADD_A,n8"><a class="selflink" href="#ADD_A,n8">ADD
+  A,n8</a></h2>
+Add the value <var class="Ar" title="Ar">n8</var> to
+  <b class="Sy" title="Sy">A</b>.
+<div class="Pp"></div>
+Cycles: 2
+<div class="Pp"></div>
+Bytes: 2
+<div class="Pp"></div>
+Flags: See <a class="Sx" title="Sx" href="#ADD_A,r8">ADD A,r8</a>
+<h2 class="Ss" title="Ss" id="ADD_HL,r16"><a class="selflink" href="#ADD_HL,r16">ADD
+  HL,r16</a></h2>
+Add the value in <var class="Ar" title="Ar">r16</var> to
+  <b class="Sy" title="Sy">HL</b>.
+<div class="Pp"></div>
+Cycles: 2
+<div class="Pp"></div>
+Bytes: 1
+<div class="Pp"></div>
+Flags:
+<ul class="Bl-bullet Bl-compact">
+  <li class="It-bullet"><b class="Sy" title="Sy">N</b>: 0</li>
+  <li class="It-bullet"><b class="Sy" title="Sy">H</b>: Set if overflow from bit
+      11.</li>
+  <li class="It-bullet"><b class="Sy" title="Sy">C</b>: Set if overflow from bit
+      15.</li>
+</ul>
+<h2 class="Ss" title="Ss" id="ADD_HL,SP"><a class="selflink" href="#ADD_HL,SP">ADD
+  HL,SP</a></h2>
+Add the value in <b class="Sy" title="Sy">SP</b> to
+  <b class="Sy" title="Sy">HL</b>.
+<div class="Pp"></div>
+Cycles: 2
+<div class="Pp"></div>
+Bytes: 1
+<div class="Pp"></div>
+Flags: See <a class="Sx" title="Sx" href="#ADD_HL,r16">ADD HL,r16</a>
+<h2 class="Ss" title="Ss" id="ADD_SP,e8"><a class="selflink" href="#ADD_SP,e8">ADD
+  SP,e8</a></h2>
+Add the signed value <var class="Ar" title="Ar">e8</var> to
+  <b class="Sy" title="Sy">SP</b>.
+<div class="Pp"></div>
+Cycles: 4
+<div class="Pp"></div>
+Bytes: 2
+<div class="Pp"></div>
+Flags:
+<ul class="Bl-bullet Bl-compact">
+  <li class="It-bullet"><b class="Sy" title="Sy">Z</b>: 0</li>
+  <li class="It-bullet"><b class="Sy" title="Sy">N</b>: 0</li>
+  <li class="It-bullet"><b class="Sy" title="Sy">H</b>: Set if overflow from bit
+      3.</li>
+  <li class="It-bullet"><b class="Sy" title="Sy">C</b>: Set if overflow from bit
+      7.</li>
+</ul>
+<h2 class="Ss" title="Ss" id="AND_A,r8"><a class="selflink" href="#AND_A,r8">AND
+  A,r8</a></h2>
+Bitwise AND between the value in <var class="Ar" title="Ar">r8</var> and
+  <b class="Sy" title="Sy">A</b>.
+<div class="Pp"></div>
+Cycles: 1
+<div class="Pp"></div>
+Bytes: 1
+<div class="Pp"></div>
+Flags:
+<ul class="Bl-bullet Bl-compact">
+  <li class="It-bullet"><b class="Sy" title="Sy">Z</b>: Set if result is 0.</li>
+  <li class="It-bullet"><b class="Sy" title="Sy">N</b>: 0</li>
+  <li class="It-bullet"><b class="Sy" title="Sy">H</b>: 1</li>
+  <li class="It-bullet"><b class="Sy" title="Sy">C</b>: 0</li>
+</ul>
+<h2 class="Ss" title="Ss" id="AND_A,[HL]"><a class="selflink" href="#AND_A,[HL]">AND
+  A,[HL]</a></h2>
+Bitwise AND between the value pointed by <b class="Sy" title="Sy">HL</b> and
+  <b class="Sy" title="Sy">A</b>.
+<div class="Pp"></div>
+Cycles: 2
+<div class="Pp"></div>
+Bytes: 1
+<div class="Pp"></div>
+Flags: See <a class="Sx" title="Sx" href="#AND_A,r8">AND A,r8</a>
+<h2 class="Ss" title="Ss" id="AND_A,n8"><a class="selflink" href="#AND_A,n8">AND
+  A,n8</a></h2>
+Bitwise AND between the value in <var class="Ar" title="Ar">n8</var> and
+  <b class="Sy" title="Sy">A</b>.
+<div class="Pp"></div>
+Cycles: 2
+<div class="Pp"></div>
+Bytes: 2
+<div class="Pp"></div>
+Flags: See <a class="Sx" title="Sx" href="#AND_A,r8">AND A,r8</a>
+<h2 class="Ss" title="Ss" id="BIT_u3,r8"><a class="selflink" href="#BIT_u3,r8">BIT
+  u3,r8</a></h2>
+Test bit <var class="Ar" title="Ar">u3</var> in register
+  <var class="Ar" title="Ar">r8</var>, set the zero flag if bit not set.
+<div class="Pp"></div>
+Cycles: 2
+<div class="Pp"></div>
+Bytes: 2
+<div class="Pp"></div>
+Flags:
+<ul class="Bl-bullet Bl-compact">
+  <li class="It-bullet"><b class="Sy" title="Sy">Z</b>: Set if the selected bit
+      is 0.</li>
+  <li class="It-bullet"><b class="Sy" title="Sy">N</b>: 0</li>
+  <li class="It-bullet"><b class="Sy" title="Sy">H</b>: 1</li>
+</ul>
+<h2 class="Ss" title="Ss" id="BIT_u3,[HL]"><a class="selflink" href="#BIT_u3,[HL]">BIT
+  u3,[HL]</a></h2>
+Test bit <var class="Ar" title="Ar">u3</var> in the byte pointed by
+  <b class="Sy" title="Sy">HL</b>, set the zero flag if bit not set.
+<div class="Pp"></div>
+Cycles: 3
+<div class="Pp"></div>
+Bytes: 2
+<div class="Pp"></div>
+Flags: See <a class="Sx" title="Sx" href="#BIT_u3,r8">BIT u3,r8</a>
+<h2 class="Ss" title="Ss" id="CALL_n16"><a class="selflink" href="#CALL_n16">CALL
+  n16</a></h2>
+Call address <var class="Ar" title="Ar">n16</var>.
+<div class="Pp"></div>
+Cycles: 6
+<div class="Pp"></div>
+Bytes: 3
+<div class="Pp"></div>
+Flags: None affected.
+<h2 class="Ss" title="Ss" id="CALL_cc,n16"><a class="selflink" href="#CALL_cc,n16">CALL
+  cc,n16</a></h2>
+Call address <var class="Ar" title="Ar">n16</var> if condition
+  <var class="Ar" title="Ar">cc</var> is met.
+<div class="Pp"></div>
+Cycles: 6/3
+<div class="Pp"></div>
+Bytes: 3
+<div class="Pp"></div>
+Flags: None affected.
+<h2 class="Ss" title="Ss" id="CCF"><a class="selflink" href="#CCF">CCF</a></h2>
+Complement Carry Flag.
+<div class="Pp"></div>
+Cycles: 1
+<div class="Pp"></div>
+Bytes: 1
+<div class="Pp"></div>
+Flags:
+<ul class="Bl-bullet Bl-compact">
+  <li class="It-bullet"><b class="Sy" title="Sy">N</b>: 0</li>
+  <li class="It-bullet"><b class="Sy" title="Sy">H</b>: 0</li>
+  <li class="It-bullet"><b class="Sy" title="Sy">C</b>: Complemented.</li>
+</ul>
+<h2 class="Ss" title="Ss" id="CP_A,r8"><a class="selflink" href="#CP_A,r8">CP
+  A,r8</a></h2>
+Subtract the value in <var class="Ar" title="Ar">r8</var> from
+  <b class="Sy" title="Sy">A</b> and set flags accordingly, but don't store the
+  result.
+<div class="Pp"></div>
+Cycles: 1
+<div class="Pp"></div>
+Bytes: 1
+<div class="Pp"></div>
+Flags:
+<ul class="Bl-bullet Bl-compact">
+  <li class="It-bullet"><b class="Sy" title="Sy">Z</b>: Set if result is 0.</li>
+  <li class="It-bullet"><b class="Sy" title="Sy">N</b>: 1</li>
+  <li class="It-bullet"><b class="Sy" title="Sy">H</b>: Set if no borrow from
+      bit 4.</li>
+  <li class="It-bullet"><b class="Sy" title="Sy">C</b>: Set if no borrow (set if
+      <var class="Ar" title="Ar">r8</var> &gt;
+    <b class="Sy" title="Sy">A</b>).</li>
+</ul>
+<h2 class="Ss" title="Ss" id="CP_A,[HL]"><a class="selflink" href="#CP_A,[HL]">CP
+  A,[HL]</a></h2>
+Subtract the value pointed by <b class="Sy" title="Sy">HL</b> from
+  <b class="Sy" title="Sy">A</b> and set flags accordingly, but don't store the
+  result.
+<div class="Pp"></div>
+Cycles: 2
+<div class="Pp"></div>
+Bytes: 1
+<div class="Pp"></div>
+Flags: See <a class="Sx" title="Sx" href="#CP_A,r8">CP A,r8</a>
+<h2 class="Ss" title="Ss" id="CP_A,n8"><a class="selflink" href="#CP_A,n8">CP
+  A,n8</a></h2>
+Subtract the value <var class="Ar" title="Ar">n8</var> from
+  <b class="Sy" title="Sy">A</b> and set flags accordingly, but don't store the
+  result.
+<div class="Pp"></div>
+Cycles: 2
+<div class="Pp"></div>
+Bytes: 2
+<div class="Pp"></div>
+Flags: See <a class="Sx" title="Sx" href="#CP_A,r8">CP A,r8</a>
+<h2 class="Ss" title="Ss" id="CPL"><a class="selflink" href="#CPL">CPL</a></h2>
+Complement accumulator (<b class="Sy" title="Sy">A</b> =
+  <b class="Sy" title="Sy">~A</b>).
+<div class="Pp"></div>
+Cycles: 1
+<div class="Pp"></div>
+Bytes: 1
+<div class="Pp"></div>
+Flags:
+<ul class="Bl-bullet Bl-compact">
+  <li class="It-bullet"><b class="Sy" title="Sy">N</b>: 1</li>
+  <li class="It-bullet"><b class="Sy" title="Sy">H</b>: 1</li>
+</ul>
+<h2 class="Ss" title="Ss" id="DAA"><a class="selflink" href="#DAA">DAA</a></h2>
+Decimal adjust register A to get a correct BCD representation after an
+  arithmetic instruction.
+<div class="Pp"></div>
+Cycles: 1
+<div class="Pp"></div>
+Bytes: 1
+<div class="Pp"></div>
+Flags:
+<ul class="Bl-bullet Bl-compact">
+  <li class="It-bullet"><b class="Sy" title="Sy">Z</b>: Set if result is 0.</li>
+  <li class="It-bullet"><b class="Sy" title="Sy">H</b>: 0</li>
+  <li class="It-bullet"><b class="Sy" title="Sy">C</b>: Set or reset depending
+      on the operation.</li>
+</ul>
+<h2 class="Ss" title="Ss" id="DEC_r8"><a class="selflink" href="#DEC_r8">DEC
+  r8</a></h2>
+Decrement value in register <var class="Ar" title="Ar">r8</var> by 1.
+<div class="Pp"></div>
+Cycles: 1
+<div class="Pp"></div>
+Bytes: 1
+<div class="Pp"></div>
+Flags:
+<ul class="Bl-bullet Bl-compact">
+  <li class="It-bullet"><b class="Sy" title="Sy">Z</b>: Set if result is 0.</li>
+  <li class="It-bullet"><b class="Sy" title="Sy">N</b>: 1</li>
+  <li class="It-bullet"><b class="Sy" title="Sy">H</b>: Set if no borrow from
+      bit 4.</li>
+</ul>
+<h2 class="Ss" title="Ss" id="DEC_[HL]"><a class="selflink" href="#DEC_[HL]">DEC
+  [HL]</a></h2>
+Decrement the value pointed by <b class="Sy" title="Sy">HL</b> by 1.
+<div class="Pp"></div>
+Cycles: 3
+<div class="Pp"></div>
+Bytes: 1
+<div class="Pp"></div>
+Flags: See <a class="Sx" title="Sx" href="#DEC_r8">DEC r8</a>
+<h2 class="Ss" title="Ss" id="DEC_r16"><a class="selflink" href="#DEC_r16">DEC
+  r16</a></h2>
+Decrement value in register <var class="Ar" title="Ar">r16</var> by 1.
+<div class="Pp"></div>
+Cycles: 2
+<div class="Pp"></div>
+Bytes: 1
+<div class="Pp"></div>
+Flags: None affected.
+<h2 class="Ss" title="Ss" id="DEC_SP"><a class="selflink" href="#DEC_SP">DEC
+  SP</a></h2>
+Decrement value in register <b class="Sy" title="Sy">SP</b> by 1.
+<div class="Pp"></div>
+Cycles: 2
+<div class="Pp"></div>
+Bytes: 1
+<div class="Pp"></div>
+Flags: None affected.
+<h2 class="Ss" title="Ss" id="DI"><a class="selflink" href="#DI">DI</a></h2>
+Disable Interrupts.
+<div class="Pp"></div>
+Cycles: 1
+<div class="Pp"></div>
+Bytes: 1
+<div class="Pp"></div>
+Flags: None affected.
+<h2 class="Ss" title="Ss" id="EI"><a class="selflink" href="#EI">EI</a></h2>
+Enable Interrupts.
+<div class="Pp"></div>
+Cycles: 1
+<div class="Pp"></div>
+Bytes: 1
+<div class="Pp"></div>
+Flags: None affected.
+<h2 class="Ss" title="Ss" id="HALT"><a class="selflink" href="#HALT">HALT</a></h2>
+Enter CPU low power mode.
+<div class="Pp"></div>
+Cycles: -
+<div class="Pp"></div>
+Bytes: 1
+<div class="Pp"></div>
+Flags: None affected.
+<h2 class="Ss" title="Ss" id="INC_r8"><a class="selflink" href="#INC_r8">INC
+  r8</a></h2>
+Increment value in register <var class="Ar" title="Ar">r8</var> by 1.
+<div class="Pp"></div>
+Cycles: 1
+<div class="Pp"></div>
+Bytes: 1
+<div class="Pp"></div>
+Flags:
+<ul class="Bl-bullet Bl-compact">
+  <li class="It-bullet"><b class="Sy" title="Sy">Z</b>: Set if result is 0.</li>
+  <li class="It-bullet"><b class="Sy" title="Sy">N</b>: 0</li>
+  <li class="It-bullet"><b class="Sy" title="Sy">H</b>: Set if overflow from bit
+      3.</li>
+</ul>
+<h2 class="Ss" title="Ss" id="INC_[HL]"><a class="selflink" href="#INC_[HL]">INC
+  [HL]</a></h2>
+Increment the value pointed by <b class="Sy" title="Sy">HL</b> by 1.
+<div class="Pp"></div>
+Cycles: 3
+<div class="Pp"></div>
+Bytes: 1
+<div class="Pp"></div>
+Flags: See <a class="Sx" title="Sx" href="#INC_r8">INC r8</a>
+<h2 class="Ss" title="Ss" id="INC_r16"><a class="selflink" href="#INC_r16">INC
+  r16</a></h2>
+Increment value in register <var class="Ar" title="Ar">r16</var> by 1.
+<div class="Pp"></div>
+Cycles: 2
+<div class="Pp"></div>
+Bytes: 1
+<div class="Pp"></div>
+Flags: None affected.
+<h2 class="Ss" title="Ss" id="INC_SP"><a class="selflink" href="#INC_SP">INC
+  SP</a></h2>
+Increment value in register <b class="Sy" title="Sy">SP</b> by 1.
+<div class="Pp"></div>
+Cycles: 2
+<div class="Pp"></div>
+Bytes: 1
+<div class="Pp"></div>
+Flags: None affected.
+<h2 class="Ss" title="Ss" id="JP_n16"><a class="selflink" href="#JP_n16">JP
+  n16</a></h2>
+Absolute jump to address <var class="Ar" title="Ar">n16</var>.
+<div class="Pp"></div>
+Cycles: 4
+<div class="Pp"></div>
+Bytes: 3
+<div class="Pp"></div>
+Flags: None affected.
+<h2 class="Ss" title="Ss" id="JP_cc,n16"><a class="selflink" href="#JP_cc,n16">JP
+  cc,n16</a></h2>
+Absolute jump to address <var class="Ar" title="Ar">n16</var> if condition
+  <var class="Ar" title="Ar">cc</var> is met.
+<div class="Pp"></div>
+Cycles: 4/3
+<div class="Pp"></div>
+Bytes: 3
+<div class="Pp"></div>
+Flags: None affected.
+<h2 class="Ss" title="Ss" id="JP_HL"><a class="selflink" href="#JP_HL">JP
+  HL</a></h2>
+Jump to address in <b class="Sy" title="Sy">HL</b>, that is, load
+  <b class="Sy" title="Sy">PC</b> with value in register
+  <b class="Sy" title="Sy">HL</b>.
+<div class="Pp"></div>
+Cycles: 1
+<div class="Pp"></div>
+Bytes: 1
+<div class="Pp"></div>
+Flags: None affected.
+<h2 class="Ss" title="Ss" id="JR_e8"><a class="selflink" href="#JR_e8">JR
+  e8</a></h2>
+Relative jump by adding <var class="Ar" title="Ar">e8</var> to the current
+  address.
+<div class="Pp"></div>
+Cycles: 3
+<div class="Pp"></div>
+Bytes: 2
+<div class="Pp"></div>
+Flags: None affected.
+<h2 class="Ss" title="Ss" id="JR_cc,e8"><a class="selflink" href="#JR_cc,e8">JR
+  cc,e8</a></h2>
+Relative jump by adding <var class="Ar" title="Ar">e8</var> to the current
+  address if condition <var class="Ar" title="Ar">cc</var> is met.
+<div class="Pp"></div>
+Cycles: 3/2
+<div class="Pp"></div>
+Bytes: 2
+<div class="Pp"></div>
+Flags: None affected.
+<h2 class="Ss" title="Ss" id="LD_r8,r8"><a class="selflink" href="#LD_r8,r8">LD
+  r8,r8</a></h2>
+Store value in register on the right into register on the left.
+<div class="Pp"></div>
+Cycles: 1
+<div class="Pp"></div>
+Bytes: 1
+<div class="Pp"></div>
+Flags: None affected.
+<h2 class="Ss" title="Ss" id="LD_r8,n8"><a class="selflink" href="#LD_r8,n8">LD
+  r8,n8</a></h2>
+Load value <var class="Ar" title="Ar">n8</var> into register
+  <var class="Ar" title="Ar">r8</var>.
+<div class="Pp"></div>
+Cycles: 2
+<div class="Pp"></div>
+Bytes: 2
+<div class="Pp"></div>
+Flags: None affected.
+<h2 class="Ss" title="Ss" id="LD_r16,n16"><a class="selflink" href="#LD_r16,n16">LD
+  r16,n16</a></h2>
+Load value <var class="Ar" title="Ar">n16</var> into register
+  <var class="Ar" title="Ar">r16</var>.
+<div class="Pp"></div>
+Cycles: 3
+<div class="Pp"></div>
+Bytes: 3
+<div class="Pp"></div>
+Flags: None affected.
+<h2 class="Ss" title="Ss" id="LD_[HL],r8"><a class="selflink" href="#LD_[HL],r8">LD
+  [HL],r8</a></h2>
+Store value in register <var class="Ar" title="Ar">r8</var> into byte pointed by
+  register <b class="Sy" title="Sy">HL</b>.
+<div class="Pp"></div>
+Cycles: 2
+<div class="Pp"></div>
+Bytes: 1
+<div class="Pp"></div>
+Flags: None affected.
+<h2 class="Ss" title="Ss" id="LD_[HL],n8"><a class="selflink" href="#LD_[HL],n8">LD
+  [HL],n8</a></h2>
+Store value <var class="Ar" title="Ar">n8</var> into byte pointed by register
+  <b class="Sy" title="Sy">HL</b>.
+<div class="Pp"></div>
+Cycles: 3
+<div class="Pp"></div>
+Bytes: 2
+<div class="Pp"></div>
+Flags: None affected.
+<h2 class="Ss" title="Ss" id="LD_r8,[HL]"><a class="selflink" href="#LD_r8,[HL]">LD
+  r8,[HL]</a></h2>
+Load value into register <var class="Ar" title="Ar">r8</var> from byte pointed
+  by register <b class="Sy" title="Sy">HL</b>.
+<div class="Pp"></div>
+Cycles: 2
+<div class="Pp"></div>
+Bytes: 1
+<div class="Pp"></div>
+Flags: None affected.
+<h2 class="Ss" title="Ss" id="LD_[r16],A"><a class="selflink" href="#LD_[r16],A">LD
+  [r16],A</a></h2>
+Store value in register <b class="Sy" title="Sy">A</b> into address pointed by
+  register <var class="Ar" title="Ar">r16</var>.
+<div class="Pp"></div>
+Cycles: 2
+<div class="Pp"></div>
+Bytes: 1
+<div class="Pp"></div>
+Flags: None affected.
+<h2 class="Ss" title="Ss" id="LD_[n16],A"><a class="selflink" href="#LD_[n16],A">LD
+  [n16],A</a></h2>
+Store value in register <b class="Sy" title="Sy">A</b> into address
+  <var class="Ar" title="Ar">n16</var>.
+<div class="Pp"></div>
+Cycles: 4
+<div class="Pp"></div>
+Bytes: 3
+<div class="Pp"></div>
+Flags: None affected.
+<h2 class="Ss" title="Ss" id="LD_[$FF00+n8],A"><a class="selflink" href="#LD_[$FF00+n8],A">LD
+  [$FF00+n8],A</a></h2>
+Store value in register <b class="Sy" title="Sy">A</b> into high RAM or I/O
+  registers.
+<div class="Pp"></div>
+The following synonym forces this encoding: <b class="Sy" title="Sy">LDH
+  [$FF00+n8],A</b>
+<div class="Pp"></div>
+Cycles: 3
+<div class="Pp"></div>
+Bytes: 2
+<div class="Pp"></div>
+Flags: None affected.
+<h2 class="Ss" title="Ss" id="LD_[$FF00+C],A"><a class="selflink" href="#LD_[$FF00+C],A">LD
+  [$FF00+C],A</a></h2>
+Store value in register <b class="Sy" title="Sy">A</b> into high RAM or I/O
+  registers.
+<div class="Pp"></div>
+Cycles: 2
+<div class="Pp"></div>
+Bytes: 1
+<div class="Pp"></div>
+Flags: None affected.
+<h2 class="Ss" title="Ss" id="LD_A,[r16]"><a class="selflink" href="#LD_A,[r16]">LD
+  A,[r16]</a></h2>
+Load value in register <b class="Sy" title="Sy">A</b> from address pointed by
+  register <var class="Ar" title="Ar">r16</var>.
+<div class="Pp"></div>
+Cycles: 2
+<div class="Pp"></div>
+Bytes: 1
+<div class="Pp"></div>
+Flags: None affected.
+<h2 class="Ss" title="Ss" id="LD_A,[n16]"><a class="selflink" href="#LD_A,[n16]">LD
+  A,[n16]</a></h2>
+Load value in register <b class="Sy" title="Sy">A</b> from address
+  <var class="Ar" title="Ar">n16</var>.
+<div class="Pp"></div>
+Cycles: 4
+<div class="Pp"></div>
+Bytes: 3
+<div class="Pp"></div>
+Flags: None affected.
+<h2 class="Ss" title="Ss" id="LD_A,[$FF00+n8]"><a class="selflink" href="#LD_A,[$FF00+n8]">LD
+  A,[$FF00+n8]</a></h2>
+Load value in register <b class="Sy" title="Sy">A</b> from high RAM or I/O
+  registers.
+<div class="Pp"></div>
+The following synonym forces this encoding: <b class="Sy" title="Sy">LDH
+  A,[$FF00+n8]</b>
+<div class="Pp"></div>
+Cycles: 3
+<div class="Pp"></div>
+Bytes: 2
+<div class="Pp"></div>
+Flags: None affected.
+<h2 class="Ss" title="Ss" id="LD_A,[$FF00+C]"><a class="selflink" href="#LD_A,[$FF00+C]">LD
+  A,[$FF00+C]</a></h2>
+Load value in register <b class="Sy" title="Sy">A</b> from high RAM or I/O
+  registers.
+<div class="Pp"></div>
+Cycles: 2
+<div class="Pp"></div>
+Bytes: 1
+<div class="Pp"></div>
+Flags: None affected.
+<h2 class="Ss" title="Ss" id="LD_[HL+],A"><a class="selflink" href="#LD_[HL+],A">LD
+  [HL+],A</a></h2>
+Store value in register <b class="Sy" title="Sy">A</b> into byte pointed by
+  <b class="Sy" title="Sy">HL</b> and post-increment
+  <b class="Sy" title="Sy">HL</b>.
+<div class="Pp"></div>
+Cycles: 2
+<div class="Pp"></div>
+Bytes: 1
+<div class="Pp"></div>
+Flags: None affected.
+<h2 class="Ss" title="Ss" id="LD_[HL-],A"><a class="selflink" href="#LD_[HL-],A">LD
+  [HL-],A</a></h2>
+Store value in register <b class="Sy" title="Sy">A</b> into byte pointed by
+  <b class="Sy" title="Sy">HL</b> and post-decrement
+  <b class="Sy" title="Sy">HL</b>.
+<div class="Pp"></div>
+Cycles: 2
+<div class="Pp"></div>
+Bytes: 1
+<div class="Pp"></div>
+Flags: None affected.
+<h2 class="Ss" title="Ss" id="LD_A,[HL+]"><a class="selflink" href="#LD_A,[HL+]">LD
+  A,[HL+]</a></h2>
+Load value into register <b class="Sy" title="Sy">A</b> from byte pointed by
+  <b class="Sy" title="Sy">HL</b> and post-increment
+  <b class="Sy" title="Sy">HL</b>.
+<div class="Pp"></div>
+Cycles: 2
+<div class="Pp"></div>
+Bytes: 1
+<div class="Pp"></div>
+Flags: None affected.
+<h2 class="Ss" title="Ss" id="LD_A,[HL-]"><a class="selflink" href="#LD_A,[HL-]">LD
+  A,[HL-]</a></h2>
+Load value into register <b class="Sy" title="Sy">A</b> from byte pointed by
+  <b class="Sy" title="Sy">HL</b> and post-decrement
+  <b class="Sy" title="Sy">HL</b>.
+<div class="Pp"></div>
+Cycles: 2
+<div class="Pp"></div>
+Bytes: 1
+<div class="Pp"></div>
+Flags: None affected.
+<h2 class="Ss" title="Ss" id="LD_SP,n16"><a class="selflink" href="#LD_SP,n16">LD
+  SP,n16</a></h2>
+Load value <var class="Ar" title="Ar">n16</var> into register
+  <b class="Sy" title="Sy">SP</b>.
+<div class="Pp"></div>
+Cycles: 3
+<div class="Pp"></div>
+Bytes: 3
+<div class="Pp"></div>
+Flags: None affected.
+<h2 class="Ss" title="Ss" id="LD_[n16],SP"><a class="selflink" href="#LD_[n16],SP">LD
+  [n16],SP</a></h2>
+Store <b class="Sy" title="Sy">SP</b> into addresses
+  <var class="Ar" title="Ar">n16</var> (LSB) and
+  <var class="Ar" title="Ar">n16</var> + 1 (MSB).
+<div class="Pp"></div>
+Cycles: 5
+<div class="Pp"></div>
+Bytes: 3
+<div class="Pp"></div>
+Flags: None affected.
+<h2 class="Ss" title="Ss" id="LD_HL,SP+e8"><a class="selflink" href="#LD_HL,SP+e8">LD
+  HL,SP+e8</a></h2>
+Add the signed value <var class="Ar" title="Ar">e8</var> to
+  <b class="Sy" title="Sy">SP</b> and store the result in
+  <b class="Sy" title="Sy">HL.</b>
+<div class="Pp"></div>
+Cycles: 3
+<div class="Pp"></div>
+Bytes: 2
+<div class="Pp"></div>
+Flags:
+<ul class="Bl-bullet Bl-compact">
+  <li class="It-bullet"><b class="Sy" title="Sy">Z</b>: 0</li>
+  <li class="It-bullet"><b class="Sy" title="Sy">N</b>: 0</li>
+  <li class="It-bullet"><b class="Sy" title="Sy">H</b>: Set if overflow from bit
+      3.</li>
+  <li class="It-bullet"><b class="Sy" title="Sy">C</b>: Set if overflow from bit
+      7.</li>
+</ul>
+<h2 class="Ss" title="Ss" id="LD_SP,HL"><a class="selflink" href="#LD_SP,HL">LD
+  SP,HL</a></h2>
+Load register <b class="Sy" title="Sy">HL</b> into register
+  <b class="Sy" title="Sy">SP</b>.
+<div class="Pp"></div>
+Cycles: 2
+<div class="Pp"></div>
+Bytes: 1
+<div class="Pp"></div>
+Flags: None affected.
+<h2 class="Ss" title="Ss" id="NOP"><a class="selflink" href="#NOP">NOP</a></h2>
+No operation.
+<div class="Pp"></div>
+Cycles: 1
+<div class="Pp"></div>
+Bytes: 1
+<div class="Pp"></div>
+Flags: None affected.
+<h2 class="Ss" title="Ss" id="OR_A,r8"><a class="selflink" href="#OR_A,r8">OR
+  A,r8</a></h2>
+Bitwise OR between the value in <var class="Ar" title="Ar">r8</var> and
+  <b class="Sy" title="Sy">A</b>.
+<div class="Pp"></div>
+Cycles: 1
+<div class="Pp"></div>
+Bytes: 1
+<div class="Pp"></div>
+Flags:
+<ul class="Bl-bullet Bl-compact">
+  <li class="It-bullet"><b class="Sy" title="Sy">Z</b>: Set if result is 0.</li>
+  <li class="It-bullet"><b class="Sy" title="Sy">N</b>: 0</li>
+  <li class="It-bullet"><b class="Sy" title="Sy">H</b>: 0</li>
+  <li class="It-bullet"><b class="Sy" title="Sy">C</b>: 0</li>
+</ul>
+<h2 class="Ss" title="Ss" id="OR_A,[HL]"><a class="selflink" href="#OR_A,[HL]">OR
+  A,[HL]</a></h2>
+Bitwise OR between the value pointed by <b class="Sy" title="Sy">HL</b> and
+  <b class="Sy" title="Sy">A</b>.
+<div class="Pp"></div>
+Cycles: 2
+<div class="Pp"></div>
+Bytes: 1
+<div class="Pp"></div>
+Flags: See <a class="Sx" title="Sx" href="#OR_A,r8">OR A,r8</a>
+<h2 class="Ss" title="Ss" id="OR_A,n8"><a class="selflink" href="#OR_A,n8">OR
+  A,n8</a></h2>
+Bitwise OR between the value in <var class="Ar" title="Ar">n8</var> and
+  <b class="Sy" title="Sy">A</b>.
+<div class="Pp"></div>
+Cycles: 2
+<div class="Pp"></div>
+Bytes: 2
+<div class="Pp"></div>
+Flags: See <a class="Sx" title="Sx" href="#OR_A,r8">OR A,r8</a>
+<h2 class="Ss" title="Ss" id="POP_AF"><a class="selflink" href="#POP_AF">POP
+  AF</a></h2>
+Pop register <b class="Sy" title="Sy">AF</b> from the stack.
+<div class="Pp"></div>
+Cycles: 3
+<div class="Pp"></div>
+Bytes: 1
+<div class="Pp"></div>
+Flags: None affected.
+<h2 class="Ss" title="Ss" id="POP_r16"><a class="selflink" href="#POP_r16">POP
+  r16</a></h2>
+Pop register <var class="Ar" title="Ar">r16</var> from the stack.
+<div class="Pp"></div>
+Cycles: 3
+<div class="Pp"></div>
+Bytes: 1
+<div class="Pp"></div>
+Flags: None affected.
+<h2 class="Ss" title="Ss" id="PUSH_AF"><a class="selflink" href="#PUSH_AF">PUSH
+  AF</a></h2>
+Push register <b class="Sy" title="Sy">AF</b> into the stack.
+<div class="Pp"></div>
+Cycles: 4
+<div class="Pp"></div>
+Bytes: 1
+<div class="Pp"></div>
+Flags: None affected.
+<h2 class="Ss" title="Ss" id="PUSH_r16"><a class="selflink" href="#PUSH_r16">PUSH
+  r16</a></h2>
+Push register <var class="Ar" title="Ar">r16</var> into the stack.
+<div class="Pp"></div>
+Cycles: 4
+<div class="Pp"></div>
+Bytes: 1
+<div class="Pp"></div>
+Flags: None affected.
+<h2 class="Ss" title="Ss" id="RES_u3,r8"><a class="selflink" href="#RES_u3,r8">RES
+  u3,r8</a></h2>
+Set bit <var class="Ar" title="Ar">u3</var> in register
+  <var class="Ar" title="Ar">r8</var> to 0.
+<div class="Pp"></div>
+Cycles: 2
+<div class="Pp"></div>
+Bytes: 2
+<div class="Pp"></div>
+Flags: None affected.
+<h2 class="Ss" title="Ss" id="RES_u3,[HL]"><a class="selflink" href="#RES_u3,[HL]">RES
+  u3,[HL]</a></h2>
+Set bit <var class="Ar" title="Ar">u3</var> in the byte pointed by
+  <b class="Sy" title="Sy">HL</b> to 0.
+<div class="Pp"></div>
+Cycles: 4
+<div class="Pp"></div>
+Bytes: 2
+<div class="Pp"></div>
+Flags: None affected.
+<h2 class="Ss" title="Ss" id="RET"><a class="selflink" href="#RET">RET</a></h2>
+Return from subroutine.
+<div class="Pp"></div>
+Cycles: 4
+<div class="Pp"></div>
+Bytes: 1
+<div class="Pp"></div>
+Flags: None affected.
+<h2 class="Ss" title="Ss" id="RET_cc"><a class="selflink" href="#RET_cc">RET
+  cc</a></h2>
+Return from subroutine if condition <var class="Ar" title="Ar">cc</var> is met.
+<div class="Pp"></div>
+Cycles: 5/2
+<div class="Pp"></div>
+Bytes: 1
+<div class="Pp"></div>
+Flags: None affected.
+<h2 class="Ss" title="Ss" id="RETI"><a class="selflink" href="#RETI">RETI</a></h2>
+Return from subroutine and enable interrupts.
+<div class="Pp"></div>
+Cycles: 4
+<div class="Pp"></div>
+Bytes: 1
+<div class="Pp"></div>
+Flags: None affected.
+<h2 class="Ss" title="Ss" id="RL_r8"><a class="selflink" href="#RL_r8">RL
+  r8</a></h2>
+Rotate register <var class="Ar" title="Ar">r8</var> left through carry.
+<div class="Pp"></div>
+<div class="D1">C &lt;- [7 &lt;- 0] &lt;- C</div>
+<div class="Pp"></div>
+Cycles: 2
+<div class="Pp"></div>
+Bytes: 2
+<div class="Pp"></div>
+Flags:
+<ul class="Bl-bullet Bl-compact">
+  <li class="It-bullet"><b class="Sy" title="Sy">Z</b>: Set if result is 0.</li>
+  <li class="It-bullet"><b class="Sy" title="Sy">N</b>: 0</li>
+  <li class="It-bullet"><b class="Sy" title="Sy">H</b>: 0</li>
+  <li class="It-bullet"><b class="Sy" title="Sy">C</b>: Set according to
+    result.</li>
+</ul>
+<h2 class="Ss" title="Ss" id="RL_[HL]"><a class="selflink" href="#RL_[HL]">RL
+  [HL]</a></h2>
+Rotate value pointed by <b class="Sy" title="Sy">HL</b> left through carry.
+<div class="Pp"></div>
+<div class="D1">C &lt;- [7 &lt;- 0] &lt;- C</div>
+<div class="Pp"></div>
+Cycles: 4
+<div class="Pp"></div>
+Bytes: 2
+<div class="Pp"></div>
+Flags: See <a class="Sx" title="Sx" href="#RL_r8">RL r8</a>
+<h2 class="Ss" title="Ss" id="RLA"><a class="selflink" href="#RLA">RLA</a></h2>
+Rotate register <b class="Sy" title="Sy">A</b> left through carry.
+<div class="Pp"></div>
+<div class="D1">C &lt;- [7 &lt;- 0] &lt;- C</div>
+<div class="Pp"></div>
+Cycles: 1
+<div class="Pp"></div>
+Bytes: 1
+<div class="Pp"></div>
+Flags:
+<ul class="Bl-bullet Bl-compact">
+  <li class="It-bullet"><b class="Sy" title="Sy">Z</b>: 0</li>
+  <li class="It-bullet"><b class="Sy" title="Sy">N</b>: 0</li>
+  <li class="It-bullet"><b class="Sy" title="Sy">H</b>: 0</li>
+  <li class="It-bullet"><b class="Sy" title="Sy">C</b>: Set according to
+    result.</li>
+</ul>
+<h2 class="Ss" title="Ss" id="RLC_r8"><a class="selflink" href="#RLC_r8">RLC
+  r8</a></h2>
+Rotate register <var class="Ar" title="Ar">r8</var> left.
+<div class="Pp"></div>
+<div class="D1">C &lt;- [7 &lt;- 0] &lt;- [7]</div>
+<div class="Pp"></div>
+Cycles: 2
+<div class="Pp"></div>
+Bytes: 2
+<div class="Pp"></div>
+Flags:
+<ul class="Bl-bullet Bl-compact">
+  <li class="It-bullet"><b class="Sy" title="Sy">Z</b>: Set if result is 0.</li>
+  <li class="It-bullet"><b class="Sy" title="Sy">N</b>: 0</li>
+  <li class="It-bullet"><b class="Sy" title="Sy">H</b>: 0</li>
+  <li class="It-bullet"><b class="Sy" title="Sy">C</b>: Set according to
+    result.</li>
+</ul>
+<h2 class="Ss" title="Ss" id="RLC_[HL]"><a class="selflink" href="#RLC_[HL]">RLC
+  [HL]</a></h2>
+Rotate value pointed by <b class="Sy" title="Sy">HL</b> left.
+<div class="Pp"></div>
+<div class="D1">C &lt;- [7 &lt;- 0] &lt;- [7]</div>
+<div class="Pp"></div>
+Cycles: 4
+<div class="Pp"></div>
+Bytes: 2
+<div class="Pp"></div>
+Flags: See <a class="Sx" title="Sx" href="#RLC_r8">RLC r8</a>
+<h2 class="Ss" title="Ss" id="RLCA"><a class="selflink" href="#RLCA">RLCA</a></h2>
+Rotate register <b class="Sy" title="Sy">A</b> left.
+<div class="Pp"></div>
+<div class="D1">C &lt;- [7 &lt;- 0] &lt;- [7]</div>
+<div class="Pp"></div>
+Cycles: 1
+<div class="Pp"></div>
+Bytes: 1
+<div class="Pp"></div>
+Flags:
+<ul class="Bl-bullet Bl-compact">
+  <li class="It-bullet"><b class="Sy" title="Sy">Z</b>: 0</li>
+  <li class="It-bullet"><b class="Sy" title="Sy">N</b>: 0</li>
+  <li class="It-bullet"><b class="Sy" title="Sy">H</b>: 0</li>
+  <li class="It-bullet"><b class="Sy" title="Sy">C</b>: Set according to
+    result.</li>
+</ul>
+<h2 class="Ss" title="Ss" id="RR_r8"><a class="selflink" href="#RR_r8">RR
+  r8</a></h2>
+Rotate register <var class="Ar" title="Ar">r8</var> right through carry.
+<div class="Pp"></div>
+<div class="D1">C -&gt; [7 -&gt; 0] -&gt; C</div>
+<div class="Pp"></div>
+Cycles: 2
+<div class="Pp"></div>
+Bytes: 2
+<div class="Pp"></div>
+Flags:
+<ul class="Bl-bullet Bl-compact">
+  <li class="It-bullet"><b class="Sy" title="Sy">Z</b>: Set if result is 0.</li>
+  <li class="It-bullet"><b class="Sy" title="Sy">N</b>: 0</li>
+  <li class="It-bullet"><b class="Sy" title="Sy">H</b>: 0</li>
+  <li class="It-bullet"><b class="Sy" title="Sy">C</b>: Set according to
+    result.</li>
+</ul>
+<h2 class="Ss" title="Ss" id="RR_[HL]"><a class="selflink" href="#RR_[HL]">RR
+  [HL]</a></h2>
+Rotate value pointed by <b class="Sy" title="Sy">HL</b> right through carry.
+<div class="Pp"></div>
+<div class="D1">C -&gt; [7 -&gt; 0] -&gt; C</div>
+<div class="Pp"></div>
+Cycles: 4
+<div class="Pp"></div>
+Bytes: 2
+<div class="Pp"></div>
+Flags: See <a class="Sx" title="Sx" href="#RR_r8">RR r8</a>
+<h2 class="Ss" title="Ss" id="RRA"><a class="selflink" href="#RRA">RRA</a></h2>
+Rotate register <b class="Sy" title="Sy">A</b> right through carry.
+<div class="Pp"></div>
+<div class="D1">C -&gt; [7 -&gt; 0] -&gt; C</div>
+<div class="Pp"></div>
+Cycles: 1
+<div class="Pp"></div>
+Bytes: 1
+<div class="Pp"></div>
+Flags:
+<ul class="Bl-bullet Bl-compact">
+  <li class="It-bullet"><b class="Sy" title="Sy">Z</b>: 0</li>
+  <li class="It-bullet"><b class="Sy" title="Sy">N</b>: 0</li>
+  <li class="It-bullet"><b class="Sy" title="Sy">H</b>: 0</li>
+  <li class="It-bullet"><b class="Sy" title="Sy">C</b>: Set according to
+    result.</li>
+</ul>
+<h2 class="Ss" title="Ss" id="RRC_r8"><a class="selflink" href="#RRC_r8">RRC
+  r8</a></h2>
+Rotate register <var class="Ar" title="Ar">r8</var> right.
+<div class="Pp"></div>
+<div class="D1">[0] -&gt; [7 -&gt; 0] -&gt; C</div>
+<div class="Pp"></div>
+Cycles: 2
+<div class="Pp"></div>
+Bytes: 2
+<div class="Pp"></div>
+Flags:
+<ul class="Bl-bullet Bl-compact">
+  <li class="It-bullet"><b class="Sy" title="Sy">Z</b>: Set if result is 0.</li>
+  <li class="It-bullet"><b class="Sy" title="Sy">N</b>: 0</li>
+  <li class="It-bullet"><b class="Sy" title="Sy">H</b>: 0</li>
+  <li class="It-bullet"><b class="Sy" title="Sy">C</b>: Set according to
+    result.</li>
+</ul>
+<h2 class="Ss" title="Ss" id="RRC_[HL]"><a class="selflink" href="#RRC_[HL]">RRC
+  [HL]</a></h2>
+Rotate value pointed by <b class="Sy" title="Sy">HL</b> right.
+<div class="Pp"></div>
+<div class="D1">[0] -&gt; [7 -&gt; 0] -&gt; C</div>
+<div class="Pp"></div>
+Cycles: 4
+<div class="Pp"></div>
+Bytes: 2
+<div class="Pp"></div>
+Flags: See <a class="Sx" title="Sx" href="#RRC_r8">RRC r8</a>
+<h2 class="Ss" title="Ss" id="RRCA"><a class="selflink" href="#RRCA">RRCA</a></h2>
+Rotate register <b class="Sy" title="Sy">A</b> right.
+<div class="Pp"></div>
+<div class="D1">[0] -&gt; [7 -&gt; 0] -&gt; C</div>
+<div class="Pp"></div>
+Cycles: 1
+<div class="Pp"></div>
+Bytes: 1
+<div class="Pp"></div>
+Flags:
+<ul class="Bl-bullet Bl-compact">
+  <li class="It-bullet"><b class="Sy" title="Sy">Z</b>: 0</li>
+  <li class="It-bullet"><b class="Sy" title="Sy">N</b>: 0</li>
+  <li class="It-bullet"><b class="Sy" title="Sy">H</b>: 0</li>
+  <li class="It-bullet"><b class="Sy" title="Sy">C</b>: Set according to
+    result.</li>
+</ul>
+<h2 class="Ss" title="Ss" id="RST_vec"><a class="selflink" href="#RST_vec">RST
+  vec</a></h2>
+Call restart vector <var class="Ar" title="Ar">vec</var>.
+<div class="Pp"></div>
+Cycles: 4
+<div class="Pp"></div>
+Bytes: 1
+<div class="Pp"></div>
+Flags: None affected.
+<h2 class="Ss" title="Ss" id="SBC_A,r8"><a class="selflink" href="#SBC_A,r8">SBC
+  A,r8</a></h2>
+Subtract the value in <var class="Ar" title="Ar">r8</var> and the carry flag
+  from <b class="Sy" title="Sy">A</b>.
+<div class="Pp"></div>
+Cycles: 1
+<div class="Pp"></div>
+Bytes: 1
+<div class="Pp"></div>
+Flags:
+<ul class="Bl-bullet Bl-compact">
+  <li class="It-bullet"><b class="Sy" title="Sy">Z</b>: Set if result is 0.</li>
+  <li class="It-bullet"><b class="Sy" title="Sy">N</b>: 1</li>
+  <li class="It-bullet"><b class="Sy" title="Sy">H</b>: Set if no borrow from
+      bit 4.</li>
+  <li class="It-bullet"><b class="Sy" title="Sy">C</b>: Set if no borrow (set if
+      <var class="Ar" title="Ar">r8</var> &gt;
+    <b class="Sy" title="Sy">A</b>).</li>
+</ul>
+<h2 class="Ss" title="Ss" id="SBC_A,[HL]"><a class="selflink" href="#SBC_A,[HL]">SBC
+  A,[HL]</a></h2>
+Subtract the value pointed by <b class="Sy" title="Sy">HL</b> and the carry flag
+  from <b class="Sy" title="Sy">A</b>.
+<div class="Pp"></div>
+Cycles: 2
+<div class="Pp"></div>
+Bytes: 1
+<div class="Pp"></div>
+Flags: See <a class="Sx" title="Sx" href="#SBC_A,r8">SBC A,r8</a>
+<h2 class="Ss" title="Ss" id="SBC_A,n8"><a class="selflink" href="#SBC_A,n8">SBC
+  A,n8</a></h2>
+Subtract the value <var class="Ar" title="Ar">n8</var> and the carry flag from
+  <b class="Sy" title="Sy">A</b>.
+<div class="Pp"></div>
+Cycles: 2
+<div class="Pp"></div>
+Bytes: 2
+<div class="Pp"></div>
+Flags: See <a class="Sx" title="Sx" href="#SBC_A,r8">SBC A,r8</a>
+<h2 class="Ss" title="Ss" id="SCF"><a class="selflink" href="#SCF">SCF</a></h2>
+Set Carry Flag.
+<div class="Pp"></div>
+Cycles: 1
+<div class="Pp"></div>
+Bytes: 1
+<div class="Pp"></div>
+Flags:
+<ul class="Bl-bullet Bl-compact">
+  <li class="It-bullet"><b class="Sy" title="Sy">N</b>: 0</li>
+  <li class="It-bullet"><b class="Sy" title="Sy">H</b>: 0</li>
+  <li class="It-bullet"><b class="Sy" title="Sy">C</b>: 1</li>
+</ul>
+<h2 class="Ss" title="Ss" id="SET_u3,r8"><a class="selflink" href="#SET_u3,r8">SET
+  u3,r8</a></h2>
+Set bit <var class="Ar" title="Ar">u3</var> in register
+  <var class="Ar" title="Ar">r8</var> to 1.
+<div class="Pp"></div>
+Cycles: 2
+<div class="Pp"></div>
+Bytes: 2
+<div class="Pp"></div>
+Flags: None affected.
+<h2 class="Ss" title="Ss" id="SET_u3,[HL]"><a class="selflink" href="#SET_u3,[HL]">SET
+  u3,[HL]</a></h2>
+Set bit <var class="Ar" title="Ar">u3</var> in the byte pointed by
+  <b class="Sy" title="Sy">HL</b> to 1.
+<div class="Pp"></div>
+Cycles: 4
+<div class="Pp"></div>
+Bytes: 2
+<div class="Pp"></div>
+Flags: None affected.
+<h2 class="Ss" title="Ss" id="SLA_r8"><a class="selflink" href="#SLA_r8">SLA
+  r8</a></h2>
+Shift left arithmetic register <var class="Ar" title="Ar">r8</var>.
+<div class="Pp"></div>
+<div class="D1">C &lt;- [7 &lt;- 0] &lt;- 0</div>
+<div class="Pp"></div>
+Cycles: 2
+<div class="Pp"></div>
+Bytes: 2
+<div class="Pp"></div>
+Flags:
+<ul class="Bl-bullet Bl-compact">
+  <li class="It-bullet"><b class="Sy" title="Sy">Z</b>: Set if result is 0.</li>
+  <li class="It-bullet"><b class="Sy" title="Sy">N</b>: 0</li>
+  <li class="It-bullet"><b class="Sy" title="Sy">H</b>: 0</li>
+  <li class="It-bullet"><b class="Sy" title="Sy">C</b>: Set according to
+    result.</li>
+</ul>
+<h2 class="Ss" title="Ss" id="SLA_[HL]"><a class="selflink" href="#SLA_[HL]">SLA
+  [HL]</a></h2>
+Shift left arithmetic value pointed by <b class="Sy" title="Sy">HL</b>.
+<div class="Pp"></div>
+<div class="D1">C &lt;- [7 &lt;- 0] &lt;- 0</div>
+<div class="Pp"></div>
+Cycles: 4
+<div class="Pp"></div>
+Bytes: 2
+<div class="Pp"></div>
+Flags: See <a class="Sx" title="Sx" href="#SLA_r8">SLA r8</a>
+<h2 class="Ss" title="Ss" id="SRA_r8"><a class="selflink" href="#SRA_r8">SRA
+  r8</a></h2>
+Shift right arithmetic register <var class="Ar" title="Ar">r8</var>.
+<div class="Pp"></div>
+<div class="D1">[7] -&gt; [7 -&gt; 0] -&gt; C</div>
+<div class="Pp"></div>
+Cycles: 2
+<div class="Pp"></div>
+Bytes: 2
+<div class="Pp"></div>
+Flags:
+<ul class="Bl-bullet Bl-compact">
+  <li class="It-bullet"><b class="Sy" title="Sy">Z</b>: Set if result is 0.</li>
+  <li class="It-bullet"><b class="Sy" title="Sy">N</b>: 0</li>
+  <li class="It-bullet"><b class="Sy" title="Sy">H</b>: 0</li>
+  <li class="It-bullet"><b class="Sy" title="Sy">C</b>: Set according to
+    result.</li>
+</ul>
+<h2 class="Ss" title="Ss" id="SRA_[HL]"><a class="selflink" href="#SRA_[HL]">SRA
+  [HL]</a></h2>
+Shift right arithmetic value pointed by <b class="Sy" title="Sy">HL</b>.
+<div class="Pp"></div>
+<div class="D1">[7] -&gt; [7 -&gt; 0] -&gt; C</div>
+<div class="Pp"></div>
+Cycles: 4
+<div class="Pp"></div>
+Bytes: 2
+<div class="Pp"></div>
+Flags: See <a class="Sx" title="Sx" href="#SRA_r8">SRA r8</a>
+<h2 class="Ss" title="Ss" id="SRL_r8"><a class="selflink" href="#SRL_r8">SRL
+  r8</a></h2>
+Shift right logic register <var class="Ar" title="Ar">r8</var>.
+<div class="Pp"></div>
+<div class="D1">0 -&gt; [7 -&gt; 0] -&gt; C</div>
+<div class="Pp"></div>
+Cycles: 2
+<div class="Pp"></div>
+Bytes: 2
+<div class="Pp"></div>
+Flags:
+<ul class="Bl-bullet Bl-compact">
+  <li class="It-bullet"><b class="Sy" title="Sy">Z</b>: Set if result is 0.</li>
+  <li class="It-bullet"><b class="Sy" title="Sy">N</b>: 0</li>
+  <li class="It-bullet"><b class="Sy" title="Sy">H</b>: 0</li>
+  <li class="It-bullet"><b class="Sy" title="Sy">C</b>: Set according to
+    result.</li>
+</ul>
+<h2 class="Ss" title="Ss" id="SRL_[HL]"><a class="selflink" href="#SRL_[HL]">SRL
+  [HL]</a></h2>
+Shift right logic value pointed by <b class="Sy" title="Sy">HL</b>.
+<div class="Pp"></div>
+<div class="D1">0 -&gt; [7 -&gt; 0] -&gt; C</div>
+<div class="Pp"></div>
+Cycles: 4
+<div class="Pp"></div>
+Bytes: 2
+<div class="Pp"></div>
+Flags: See <a class="Sx" title="Sx" href="#SRA_r8">SRA r8</a>
+<h2 class="Ss" title="Ss" id="STOP"><a class="selflink" href="#STOP">STOP</a></h2>
+Enter CPU very low power mode. Also used to switch between doube speed and
+  normal CPU modes in GBC.
+<div class="Pp"></div>
+Cycles: -
+<div class="Pp"></div>
+Bytes: 2
+<div class="Pp"></div>
+Flags: None affected.
+<h2 class="Ss" title="Ss" id="SUB_A,r8"><a class="selflink" href="#SUB_A,r8">SUB
+  A,r8</a></h2>
+Subtract the value in <var class="Ar" title="Ar">r8</var> from
+  <b class="Sy" title="Sy">A</b>.
+<div class="Pp"></div>
+Cycles: 1
+<div class="Pp"></div>
+Bytes: 1
+<div class="Pp"></div>
+Flags:
+<ul class="Bl-bullet Bl-compact">
+  <li class="It-bullet"><b class="Sy" title="Sy">Z</b>: Set if result is 0.</li>
+  <li class="It-bullet"><b class="Sy" title="Sy">N</b>: 1</li>
+  <li class="It-bullet"><b class="Sy" title="Sy">H</b>: Set if no borrow from
+      bit 4.</li>
+  <li class="It-bullet"><b class="Sy" title="Sy">C</b>: Set if no borrow (set if
+      <var class="Ar" title="Ar">r8</var> &gt;
+    <b class="Sy" title="Sy">A</b>).</li>
+</ul>
+<h2 class="Ss" title="Ss" id="SUB_A,[HL]"><a class="selflink" href="#SUB_A,[HL]">SUB
+  A,[HL]</a></h2>
+Subtract the value pointed by <b class="Sy" title="Sy">HL</b> from
+  <b class="Sy" title="Sy">A</b>.
+<div class="Pp"></div>
+Cycles: 2
+<div class="Pp"></div>
+Bytes: 1
+<div class="Pp"></div>
+Flags: See <a class="Sx" title="Sx" href="#SUB_A,r8">SUB A,r8</a>
+<h2 class="Ss" title="Ss" id="SUB_A,n8"><a class="selflink" href="#SUB_A,n8">SUB
+  A,n8</a></h2>
+Subtract the value <var class="Ar" title="Ar">n8</var> from
+  <b class="Sy" title="Sy">A</b>.
+<div class="Pp"></div>
+Cycles: 2
+<div class="Pp"></div>
+Bytes: 2
+<div class="Pp"></div>
+Flags: See <a class="Sx" title="Sx" href="#SUB_A,r8">SUB A,r8</a>
+<h2 class="Ss" title="Ss" id="SWAP_r8"><a class="selflink" href="#SWAP_r8">SWAP
+  r8</a></h2>
+Swap upper 4 bits in register <var class="Ar" title="Ar">r8</var> and the lower
+  ones.
+<div class="Pp"></div>
+Cycles: 2
+<div class="Pp"></div>
+Bytes: 2
+<div class="Pp"></div>
+Flags:
+<ul class="Bl-bullet Bl-compact">
+  <li class="It-bullet"><b class="Sy" title="Sy">Z</b>: Set if result is 0.</li>
+  <li class="It-bullet"><b class="Sy" title="Sy">N</b>: 0</li>
+  <li class="It-bullet"><b class="Sy" title="Sy">H</b>: 0</li>
+  <li class="It-bullet"><b class="Sy" title="Sy">C</b>: 0</li>
+</ul>
+<h2 class="Ss" title="Ss" id="SWAP_[HL]"><a class="selflink" href="#SWAP_[HL]">SWAP
+  [HL]</a></h2>
+Swap upper 4 bits in the byte pointed by <b class="Sy" title="Sy">HL</b> and the
+  lower ones.
+<div class="Pp"></div>
+Cycles: 4
+<div class="Pp"></div>
+Bytes: 2
+<div class="Pp"></div>
+Flags: See <a class="Sx" title="Sx" href="#SWAP_r8">SWAP r8</a>
+<h2 class="Ss" title="Ss" id="XOR_A,r8"><a class="selflink" href="#XOR_A,r8">XOR
+  A,r8</a></h2>
+Bitwise XOR between the value in <var class="Ar" title="Ar">r8</var> and
+  <b class="Sy" title="Sy">A</b>.
+<div class="Pp"></div>
+Cycles: 1
+<div class="Pp"></div>
+Bytes: 1
+<div class="Pp"></div>
+Flags:
+<ul class="Bl-bullet Bl-compact">
+  <li class="It-bullet"><b class="Sy" title="Sy">Z</b>: Set if result is 0.</li>
+  <li class="It-bullet"><b class="Sy" title="Sy">N</b>: 0</li>
+  <li class="It-bullet"><b class="Sy" title="Sy">H</b>: 0</li>
+  <li class="It-bullet"><b class="Sy" title="Sy">C</b>: 0</li>
+</ul>
+<h2 class="Ss" title="Ss" id="XOR_A,[HL]"><a class="selflink" href="#XOR_A,[HL]">XOR
+  A,[HL]</a></h2>
+Bitwise XOR between the value pointed by <b class="Sy" title="Sy">HL</b> and
+  <b class="Sy" title="Sy">A</b>.
+<div class="Pp"></div>
+Cycles: 2
+<div class="Pp"></div>
+Bytes: 1
+<div class="Pp"></div>
+Flags: See <a class="Sx" title="Sx" href="#XOR_A,r8">XOR A,r8</a>
+<h2 class="Ss" title="Ss" id="XOR_A,n8"><a class="selflink" href="#XOR_A,n8">XOR
+  A,n8</a></h2>
+Bitwise XOR between the value in <var class="Ar" title="Ar">n8</var> and
+  <b class="Sy" title="Sy">A</b>.
+<div class="Pp"></div>
+Cycles: 2
+<div class="Pp"></div>
+Bytes: 2
+<div class="Pp"></div>
+Flags: See <a class="Sx" title="Sx" href="#XOR_A,r8">XOR A,r8</a>
+<h1 class="Sh" title="Sh" id="SEE_ALSO"><a class="selflink" href="#SEE_ALSO">SEE
+  ALSO</a></h1>
+<a class="Xr" title="Xr">rgbasm(1)</a>, <a class="Xr" title="Xr">rgbds(7)</a>
+<h1 class="Sh" title="Sh" id="HISTORY"><a class="selflink" href="#HISTORY">HISTORY</a></h1>
+<b class="Nm" title="Nm">rgbds</b> was originally written by Carsten
+  S&#x00F8;rensen as part of the ASMotor package, and was later packaged in
+  RGBDS by Justin Lloyd. It is now maintained by a number of contributors at
+  <a class="Lk" title="Lk" href="https://github.com/rednex/rgbds">https://github.com/rednex/rgbds</a>.</div>
+<table class="foot">
+  <tr>
+    <td class="foot-date">April 17, 2017</td>
+    <td class="foot-os">RGBDS Manual</td>
+  </tr>
+</table>
+</body>
+</html>
--- /dev/null
+++ b/docs/index.html
@@ -1,0 +1,32 @@
+<!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>RGBDS — Rednex Game Boy Development System</h1>
+<h2>Table of Contents</h2>
+<ul>
+	<li><a href="rgbds.7.html">RGBDS general information</a>
+</ul>
+<ul>
+	<li><a href="rgbasm.5.html">RGBASM language description</a>
+	<li><a href="rgblink.5.html">RGBLINK linkerscript language description</a>
+	<li><a href="gbz80.7.html">GBZ80 CPU instruction set description</a>
+</ul>
+<ul>
+	<li><a href="rgbasm.1.html">RGBASM command-line usage</a>
+	<li><a href="rgblink.1.html">RGBLINK command-line usage</a>
+	<li><a href="rgbfix.1.html">RGBFIX command-line usage</a>
+	<li><a href="rgbgfx.1.html">RGBGFX command-line usage</a>
+</ul>
+<ul>
+	<li><a href="rgbds.5.html">RGBDS object file format</a>
+</ul>
+<h3 id="GitHub Repository">GitHub Repository:</h3>
+<ul>
+	<li><a href="https://github.com/rednex/rgbds">https://github.com/rednex/rgbds</a>
+</ul>
+</body>
--- /dev/null
+++ b/docs/rgbasm.1.html
@@ -1,0 +1,146 @@
+<!DOCTYPE html>
+<html>
+<head>
+  <meta charset="utf-8"/>
+  <style>
+    table.head, table.foot { width: 100%; }
+    td.head-rtitle, td.foot-os { text-align: right; }
+    td.head-vol { text-align: center; }
+    div.Pp { margin: 1ex 0ex; }
+  </style>
+  <link rel="stylesheet" href="manual.css" type="text/css" media="all"/>
+  <title>RGBASM(1)</title>
+</head>
+<body>
+<table class="head">
+  <tr>
+    <td class="head-ltitle">RGBASM(1)</td>
+    <td class="head-vol">General Commands Manual</td>
+    <td class="head-rtitle">RGBASM(1)</td>
+  </tr>
+</table>
+<div class="manual-text">
+<h1 class="Sh" title="Sh" id="NAME"><a class="selflink" href="#NAME">NAME</a></h1>
+<b class="Nm" title="Nm">rgbasm</b> &#x2014; <span class="Nd" title="Nd">Game
+  Boy assembler</span>
+<h1 class="Sh" title="Sh" id="SYNOPSIS"><a class="selflink" href="#SYNOPSIS">SYNOPSIS</a></h1>
+<table class="Nm">
+  <tr>
+    <td><b class="Nm" title="Nm">rgbasm</b></td>
+    <td>[<span class="Op"><b class="Fl" title="Fl">-EhVvw</b></span>]
+      [<span class="Op"><b class="Fl" title="Fl">-b</b>
+      <var class="Ar" title="Ar">chars</var></span>]
+      [<span class="Op"><b class="Fl" title="Fl">-D</b>
+      <var class="Ar" title="Ar">name</var>[<span class="Op">=<var class="Ar" title="Ar">value</var></span>]</span>]
+      [<span class="Op"><b class="Fl" title="Fl">-g</b>
+      <var class="Ar" title="Ar">chars</var></span>]
+      [<span class="Op"><b class="Fl" title="Fl">-i</b>
+      <var class="Ar" title="Ar">path</var></span>]
+      [<span class="Op"><b class="Fl" title="Fl">-M</b>
+      <var class="Ar" title="Ar">dependfile</var></span>]
+      [<span class="Op"><b class="Fl" title="Fl">-o</b>
+      <var class="Ar" title="Ar">outfile</var></span>]
+      [<span class="Op"><b class="Fl" title="Fl">-p</b>
+      <var class="Ar" title="Ar">pad_value</var></span>]
+      <var class="Ar" title="Ar">file</var></td>
+  </tr>
+</table>
+<h1 class="Sh" title="Sh" id="DESCRIPTION"><a class="selflink" href="#DESCRIPTION">DESCRIPTION</a></h1>
+The <b class="Nm" title="Nm">rgbasm</b> program creates an object file from an
+  assembly source file. Its arguments are as follows:
+<dl class="Bl-tag">
+  <dt class="It-tag">&#x00A0;</dt>
+  <dd class="It-tag">&#x00A0;</dd>
+  <dt class="It-tag"><a class="selflink" href="#b"><b class="Fl" title="Fl" id="b">-b</b></a>
+    <var class="Ar" title="Ar">chars</var></dt>
+  <dd class="It-tag">Change the two characters used for binary constants. The
+      defaults are 01.</dd>
+  <dt class="It-tag">&#x00A0;</dt>
+  <dd class="It-tag">&#x00A0;</dd>
+  <dt class="It-tag"><a class="selflink" href="#D"><b class="Fl" title="Fl" id="D">-D</b></a>
+    <var class="Ar" title="Ar">name</var>[<span class="Op">=<var class="Ar" title="Ar">value</var></span>]</dt>
+  <dd class="It-tag">Add string symbol to the compiled source code. This is
+      equivalent to <var class="Ar" title="Ar">name</var>
+      <b class="Cm" title="Cm">EQUS</b>
+      &#x201C;<var class="Ar" title="Ar">value</var>&#x201D; in code. If a value
+      is not specified, a value of 1 is given.</dd>
+  <dt class="It-tag">&#x00A0;</dt>
+  <dd class="It-tag">&#x00A0;</dd>
+  <dt class="It-tag"><a class="selflink" href="#E"><b class="Fl" title="Fl" id="E">-E</b></a></dt>
+  <dd class="It-tag">Export all labels, including unreferenced and local
+    labels.</dd>
+  <dt class="It-tag">&#x00A0;</dt>
+  <dd class="It-tag">&#x00A0;</dd>
+  <dt class="It-tag"><a class="selflink" href="#g"><b class="Fl" title="Fl" id="g">-g</b></a>
+    <var class="Ar" title="Ar">chars</var></dt>
+  <dd class="It-tag">Change the four characters used for binary constants. The
+      defaults are 0123.</dd>
+  <dt class="It-tag">&#x00A0;</dt>
+  <dd class="It-tag">&#x00A0;</dd>
+  <dt class="It-tag"><a class="selflink" href="#h"><b class="Fl" title="Fl" id="h">-h</b></a></dt>
+  <dd class="It-tag">By default, <b class="Nm" title="Nm">rgbasm</b> inserts a
+      &#x2018;nop&#x2019; instruction immediately after any &#x2018;halt&#x2019;
+      instruction. The <b class="Fl" title="Fl">-h</b> option disables this
+      behavior.</dd>
+  <dt class="It-tag">&#x00A0;</dt>
+  <dd class="It-tag">&#x00A0;</dd>
+  <dt class="It-tag"><a class="selflink" href="#i"><b class="Fl" title="Fl" id="i">-i</b></a>
+    <var class="Ar" title="Ar">path</var></dt>
+  <dd class="It-tag">Add an include path.</dd>
+  <dt class="It-tag">&#x00A0;</dt>
+  <dd class="It-tag">&#x00A0;</dd>
+  <dt class="It-tag"><a class="selflink" href="#M"><b class="Fl" title="Fl" id="M">-M</b></a>
+    <var class="Ar" title="Ar">dependfile</var></dt>
+  <dd class="It-tag">Print <a class="Xr" title="Xr">make(1)</a> dependencies to
+      <var class="Ar" title="Ar">dependfile</var>.</dd>
+  <dt class="It-tag">&#x00A0;</dt>
+  <dd class="It-tag">&#x00A0;</dd>
+  <dt class="It-tag"><a class="selflink" href="#o"><b class="Fl" title="Fl" id="o">-o</b></a>
+    <var class="Ar" title="Ar">outfile</var></dt>
+  <dd class="It-tag">Write an object file to the given filename.</dd>
+  <dt class="It-tag">&#x00A0;</dt>
+  <dd class="It-tag">&#x00A0;</dd>
+  <dt class="It-tag"><a class="selflink" href="#p"><b class="Fl" title="Fl" id="p">-p</b></a>
+    <var class="Ar" title="Ar">pad_value</var></dt>
+  <dd class="It-tag">When padding an image, pad with this value. The default is
+      0x00.</dd>
+  <dt class="It-tag">&#x00A0;</dt>
+  <dd class="It-tag">&#x00A0;</dd>
+  <dt class="It-tag"><a class="selflink" href="#V"><b class="Fl" title="Fl" id="V">-V</b></a></dt>
+  <dd class="It-tag">Print the version of the program and exit.</dd>
+  <dt class="It-tag">&#x00A0;</dt>
+  <dd class="It-tag">&#x00A0;</dd>
+  <dt class="It-tag"><a class="selflink" href="#v"><b class="Fl" title="Fl" id="v">-v</b></a></dt>
+  <dd class="It-tag">Be verbose.</dd>
+  <dt class="It-tag">&#x00A0;</dt>
+  <dd class="It-tag">&#x00A0;</dd>
+  <dt class="It-tag"><a class="selflink" href="#w"><b class="Fl" title="Fl" id="w">-w</b></a></dt>
+  <dd class="It-tag">Disable warning output.</dd>
+</dl>
+<h1 class="Sh" title="Sh" id="EXAMPLES"><a class="selflink" href="#EXAMPLES">EXAMPLES</a></h1>
+Assembling a basic source file is simple:
+<div class="Pp"></div>
+<div class="D1">$ rgbasm -o bar.o foo.asm</div>
+<div class="Pp"></div>
+The resulting object file is not yet a usable ROM image &#x2014; it must first
+  be run through <a class="Xr" title="Xr">rgblink(1)</a> and
+  <a class="Xr" title="Xr">rgbfix(1)</a>.
+<h1 class="Sh" title="Sh" id="SEE_ALSO"><a class="selflink" href="#SEE_ALSO">SEE
+  ALSO</a></h1>
+<a class="Xr" title="Xr">rgbasm(5)</a>, <a class="Xr" title="Xr">rgbfix(1)</a>,
+  <a class="Xr" title="Xr">rgblink(1)</a>,
+  <a class="Xr" title="Xr">rgbds(5)</a>, <a class="Xr" title="Xr">rgbds(7)</a>,
+  <a class="Xr" title="Xr">gbz80(7)</a>
+<h1 class="Sh" title="Sh" id="HISTORY"><a class="selflink" href="#HISTORY">HISTORY</a></h1>
+<b class="Nm" title="Nm">rgbasm</b> was originally written by Carsten
+  S&#x00F8;rensen as part of the ASMotor package, and was later packaged in
+  RGBDS by Justin Lloyd. It is now maintained by a number of contributors at
+  <a class="Lk" title="Lk" href="https://github.com/rednex/rgbds">https://github.com/rednex/rgbds</a>.</div>
+<table class="foot">
+  <tr>
+    <td class="foot-date">April 17, 2017</td>
+    <td class="foot-os">RGBDS Manual</td>
+  </tr>
+</table>
+</body>
+</html>
--- /dev/null
+++ b/docs/rgbasm.5.html
@@ -1,0 +1,1459 @@
+<!DOCTYPE html>
+<html>
+<head>
+  <meta charset="utf-8"/>
+  <style>
+    table.head, table.foot { width: 100%; }
+    td.head-rtitle, td.foot-os { text-align: right; }
+    td.head-vol { text-align: center; }
+    div.Pp { margin: 1ex 0ex; }
+  </style>
+  <link rel="stylesheet" href="manual.css" type="text/css" media="all"/>
+  <title>RGBASM(5)</title>
+</head>
+<body>
+<table class="head">
+  <tr>
+    <td class="head-ltitle">RGBASM(5)</td>
+    <td class="head-vol">File Formats Manual</td>
+    <td class="head-rtitle">RGBASM(5)</td>
+  </tr>
+</table>
+<div class="manual-text">
+<h1 class="Sh" title="Sh" id="NAME"><a class="selflink" href="#NAME">NAME</a></h1>
+<b class="Nm" title="Nm">rgbasm</b> &#x2014;
+  <span class="Nd" title="Nd">language documentation</span>
+<h1 class="Sh" title="Sh" id="DESCRIPTION"><a class="selflink" href="#DESCRIPTION">DESCRIPTION</a></h1>
+This is the full description of the language used by
+  <a class="Xr" title="Xr">rgbasm(1)</a>. The description of the instructions
+  supported by the GameBoy CPU is in <a class="Xr" title="Xr">gbz80(7)</a>.
+<h1 class="Sh" title="Sh" id="GENERAL"><a class="selflink" href="#GENERAL">GENERAL</a></h1>
+<h2 class="Ss" title="Ss" id="Syntax"><a class="selflink" href="#Syntax">Syntax</a></h2>
+The syntax is line&#x2010;based, just as in any other assembler, meaning that
+  you do one instruction or pseudo&#x2010;op per line:
+<div class="Pp"></div>
+<div class="D1"><code class="Li">[<span class="Op"><var class="Ar" title="Ar">label</var></span>]
+  [<span class="Op"><var class="Ar" title="Ar">instruction</var></span>]
+  [<span class="Op"><var class="Ar" title="Ar">;comment</var></span>]</code></div>
+<div class="Pp"></div>
+Example:
+<div class="Pp"></div>
+<div class="D1"><code class="Li">John: ld a,87 ;Weee</code></div>
+<div class="Pp"></div>
+All pseudo&#x2010;ops, mnemonics and registers (reserved keywords) are
+  case&#x2010;insensitive and all labels are case&#x2010;sensitive.
+<h2 class="Ss" title="Ss" id="Sections"><a class="selflink" href="#Sections">Sections</a></h2>
+Before you can start writing code, you must define a section. This tells the
+  assembler what kind of information follows and, if it is code, where to put
+  it.
+<div class="Pp"></div>
+<div class="D1"><code class="Li">SECTION &quot;CoolStuff&quot;,ROMX</code></div>
+<div class="Pp"></div>
+This switches to the section called &quot;CoolStuff&quot; (or creates it if it
+  doesn't already exist) and it defines it as a code section. All sections
+  assembled at the same time that have the same name, type, etc, are considered
+  to be the same one, and their code is put together in the object file
+  generated by the assembler. All other sections must have a unique name, even
+  in different source files, or the linker will treat it as an error.
+<div class="Pp"></div>
+Possible section types are as follows:
+<dl class="Bl-tag">
+  <dt class="It-tag">&#x00A0;</dt>
+  <dd class="It-tag">&#x00A0;</dd>
+  <dt class="It-tag"><b class="Sy" title="Sy">ROM0</b></dt>
+  <dd class="It-tag">A ROM section. Mapped to memory at $0000&#x2013;$3FFF (or
+      $0000-$7FFF if tiny ROM mode is enabled in
+      <a class="Xr" title="Xr">rgblink(1)</a>).</dd>
+  <dt class="It-tag">&#x00A0;</dt>
+  <dd class="It-tag">&#x00A0;</dd>
+  <dt class="It-tag"><b class="Sy" title="Sy">ROMX</b></dt>
+  <dd class="It-tag">A banked ROM section. Mapped to memory at
+      $4000&#x2013;$7FFF. Valid banks range from 1 to 511. Not available if tiny
+      ROM mode is enabled in <a class="Xr" title="Xr">rgblink(1)</a>.</dd>
+  <dt class="It-tag">&#x00A0;</dt>
+  <dd class="It-tag">&#x00A0;</dd>
+  <dt class="It-tag"><b class="Sy" title="Sy">VRAM</b></dt>
+  <dd class="It-tag">A banked video RAM section. Mapped to memory at
+      $8000&#x2013;$9FFF. Can only allocate memory, not fill it. Valid banks are
+      0 and 1 but bank 1 isn't available if DMG mode is enabled in
+      <a class="Xr" title="Xr">rgblink(1)</a>.</dd>
+  <dt class="It-tag">&#x00A0;</dt>
+  <dd class="It-tag">&#x00A0;</dd>
+  <dt class="It-tag"><b class="Sy" title="Sy">SRAM</b></dt>
+  <dd class="It-tag">A banked external (save) RAM section. Mapped to memory at
+      $A000&#x2013;$BFFF. Can only allocate memory, not fill it. Valid banks
+      range from 0 to 15.</dd>
+  <dt class="It-tag">&#x00A0;</dt>
+  <dd class="It-tag">&#x00A0;</dd>
+  <dt class="It-tag"><b class="Sy" title="Sy">WRAM0</b></dt>
+  <dd class="It-tag">A general-purpose RAM section. Mapped to memory at
+      $C000&#x2013;$CFFF, or $C000-$DFFF if DMG mode is enabled in
+      <a class="Xr" title="Xr">rgblink(1)</a>. Can only allocate memory, not
+      fill it.</dd>
+  <dt class="It-tag">&#x00A0;</dt>
+  <dd class="It-tag">&#x00A0;</dd>
+  <dt class="It-tag"><b class="Sy" title="Sy">WRAMX</b></dt>
+  <dd class="It-tag">A banked general-purpose RAM section. Mapped to memory at
+      $D000&#x2013;$DFFF. Can only allocate memory, not fill it. Valid banks
+      range from 1 to 7. Not available if DMG mode is enabled in
+      <a class="Xr" title="Xr">rgblink(1)</a>.</dd>
+  <dt class="It-tag">&#x00A0;</dt>
+  <dd class="It-tag">&#x00A0;</dd>
+  <dt class="It-tag"><b class="Sy" title="Sy">OAM</b></dt>
+  <dd class="It-tag">An object attributes RAM section. Mapped to memory at
+      $FE00-$FE9F. Can only allocate memory, not fill it.</dd>
+  <dt class="It-tag">&#x00A0;</dt>
+  <dd class="It-tag">&#x00A0;</dd>
+  <dt class="It-tag"><b class="Sy" title="Sy">HRAM</b></dt>
+  <dd class="It-tag">A high RAM section. Mapped to memory at $FF80&#x2013;$FFFE.
+      Can only allocate memory, not fill it.
+    <div class="Pp"></div>
+    NOTE: If you use this method of allocating HRAM the assembler will NOT
+      choose the short addressing mode in the LD instructions
+      <b class="Sy" title="Sy">LD [$FF00+n8],A</b> and
+      <b class="Sy" title="Sy">LD A,[$FF00+n8]</b> because the actual address
+      calculation is done by the linker. If you find this undesirable you can
+      use <b class="Ic" title="Ic">RSSET</b> <span class="No">/</span>
+      <b class="Ic" title="Ic">RB</b> <span class="No">/</span>
+      <b class="Ic" title="Ic">RW</b> instead or use the
+      <b class="Sy" title="Sy">LDH [$FF00+n8],A</b> and
+      <b class="Sy" title="Sy">LDH A,[$FF00+n8]</b> syntax instead. This forces
+      the assembler to emit the correct instruction and the linker to check if
+      the value is in the correct range.</dd>
+</dl>
+<div class="Pp"></div>
+A section is usually defined as a floating one, but the code can restrict where
+  the linker can place it.
+<div class="Pp"></div>
+If a section is defined with no indications, it is a floating section. The
+  linker will decide where to place it in the final binary and it has no
+  obligation to follow any specific rules. The following example defines a
+  section that can be placed anywhere in any ROMX bank:
+<div class="Pp"></div>
+<div class="D1"><code class="Li">SECTION &quot;CoolStuff&quot;,ROMX</code></div>
+<div class="Pp"></div>
+If it is needed, the following syntax can be used to fix the base address of the
+  section:
+<div class="Pp"></div>
+<div class="D1"><code class="Li">SECTION
+  &quot;CoolStuff&quot;,ROMX[$4567]</code></div>
+<div class="Pp"></div>
+It won't, however, fix the bank number, which is left to the linker. If you also
+  want to specify the bank you can do:
+<div class="Pp"></div>
+<div class="D1"><code class="Li">SECTION
+  &quot;CoolStuff&quot;,ROMX[$4567],BANK[3]</code></div>
+<div class="Pp"></div>
+And if you only want to force the section into a certain bank, and not it's
+  position within the bank, that's also possible:
+<div class="Pp"></div>
+<div class="D1"><code class="Li">SECTION
+  &quot;CoolStuff&quot;,ROMX,BANK[7]</code></div>
+<div class="Pp"></div>
+In addition, you can specify byte alignment for a section. This ensures that the
+  section starts at a memory address where the given number of least-significant
+  bits are 0. This can be used along with <b class="Ic" title="Ic">BANK</b>, if
+  desired. However, if an alignment is specified, the base address must be left
+  unassigned. This can be useful when using DMA to copy data or when it is
+  needed to align the start of an array to 256 bytes to optimize the code that
+  accesses it.
+<div class="Pp"></div>
+<div class="D1"><code class="Li">SECTION &quot;OAM Data&quot;,WRAM0,ALIGN[8];
+  align to 256 bytes</code></div>
+<div class="Pp"></div>
+<div class="D1"><code class="Li">SECTION &quot;VRAM
+  Data&quot;,ROMX,BANK[2],ALIGN[4]; align to 16 bytes</code></div>
+<div class="Pp"></div>
+HINT: If you think this is a lot of typing for doing a simple
+  <b class="Ic" title="Ic">ORG</b> type thing you can quite easily write an
+  intelligent macro (called <b class="Ic" title="Ic">ORG</b> for example) that
+  uses <b class="Ic" title="Ic">@</b> for the section name and determines
+  correct section type etc as arguments for
+  <b class="Ic" title="Ic">SECTION</b>.
+<div class="Pp"></div>
+<b class="Ic" title="Ic">POPS</b> and <b class="Ic" title="Ic">PUSHS</b> provide
+  the interface to the section stack. <b class="Ic" title="Ic">PUSHS</b> will
+  push the current section context on the section stack.
+  <b class="Ic" title="Ic">POPS</b> can then later be used to restore it. Useful
+  for defining sections in included files when you don't want to destroy the
+  section context for the program that included your file. The number of entries
+  in the stack is limited only by the amount of memory in your machine.
+<div class="Pp"></div>
+Sections can also be placed by using a linkerscript file. The format is
+  described in <a class="Xr" title="Xr">rgblink(5)</a>. They allow the user to
+  place floating sections in the desired bank in the order specified in the
+  script. This is useful if the sections can't be placed at an address manually
+  because the size may change, but they have to be together.
+<h1 class="Sh" title="Sh" id="SYMBOLS"><a class="selflink" href="#SYMBOLS">SYMBOLS</a></h1>
+<h2 class="Ss" title="Ss" id="Symbols"><a class="selflink" href="#Symbols">Symbols</a></h2>
+RGBDS supports several types of symbols:
+<dl class="Bl-hang">
+  <dt class="It-hang"><b class="Sy" title="Sy">Label</b></dt>
+  <dd class="It-hang">Used to assign a memory location with a name</dd>
+  <dt class="It-hang"><b class="Sy" title="Sy">EQUate</b></dt>
+  <dd class="It-hang">Give a constant a name.</dd>
+  <dt class="It-hang"><b class="Sy" title="Sy">SET</b></dt>
+  <dd class="It-hang">Almost the same as EQUate, but you can change the value of
+      a SET during assembling.</dd>
+  <dt class="It-hang"><b class="Sy" title="Sy">Structure</b>
+    (<b class="Sy" title="Sy">the RS group</b>)</dt>
+  <dd class="It-hang">Define a structure easily.</dd>
+  <dt class="It-hang"><b class="Sy" title="Sy">String equate</b>
+    (<b class="Sy" title="Sy">EQUS</b>)</dt>
+  <dd class="It-hang">Give a frequently used string a name. Can also be used as
+      a mini-macro, like #define in C.</dd>
+  <dt class="It-hang"><b class="Sy" title="Sy">MACRO</b></dt>
+  <dd class="It-hang">A block of code or pseudo instructions that you invoke
+      like any other mnemonic. You can give them arguments too.</dd>
+</dl>
+<div class="Pp"></div>
+A symbol cannot have the same name as a reserved keyword.
+<dl class="Bl-hang">
+  <dt class="It-hang"><b class="Sy" title="Sy">Label</b></dt>
+  <dd class="It-hang">
+    <div class="Pp"></div>
+    One of the assembler's main tasks is to keep track of addresses for you so
+      you don't have to remember obscure numbers but can make do with a
+      meaningful name, a label.
+    <div class="Pp"></div>
+    This can be done in a number of ways:
+    <div class="Pp"></div>
+    <div class="Bd" style="margin-left: 5.00ex;">
+    <pre class="Li">
+GlobalLabel 
+AnotherGlobal: 
+.locallabel 
+.yet_a_local: 
+AnotherGlobal.with_another_local: 
+ThisWillBeExported:: ;note the two colons 
+ThisWillBeExported.too::
+    </pre>
+    </div>
+    <div class="Pp"></div>
+    In the line where a label is defined there musn't be any whitespace before
+      it. Local labels are only accessible within the scope they are defined. A
+      scope starts after a global label and ends at the next global label.
+      Declaring a label (global or local) with :: does an EXPORT at the same
+      time. Local labels can be declared as scope.local or simply as as .local.
+      If the former notation is used, the scope must be the actual current
+      scope.
+    <div class="Pp"></div>
+    Labels will normally change their value during the link process and are thus
+      not constant. The exception is the case in which the base address of a
+      section is fixed, so the address of the label is known at assembly time.
+    <div class="Pp"></div>
+    The subtraction of two labels is only constant (known at assembly time) if
+      they are two local labels that belong to the same scope, or they are two
+      global labels that belong to sections with fixed base addresses.</dd>
+  <dt class="It-hang"><b class="Sy" title="Sy">EQU</b></dt>
+  <dd class="It-hang">
+    <div class="Pp"></div>
+    EQUates are constant symbols. They can, for example, be used for things such
+      as bit-definitions of hardware registers.
+    <div class="Pp"></div>
+    <div class="D1"><code class="Li">EXIT_OK EQU $00</code></div>
+    <div class="D1"><code class="Li">EXIT_FAILURE EQU $01</code></div>
+    <div class="Pp"></div>
+    Note that a colon (:) following the label-name is not allowed. EQUates
+      cannot be exported and imported. They don't change their value during the
+      link process.</dd>
+  <dt class="It-hang"><b class="Sy" title="Sy">SET</b></dt>
+  <dd class="It-hang">
+    <div class="Pp"></div>
+    SETs are similar to EQUates. They are also constant symbols in the sense
+      that their values are defined during the assembly process. These symbols
+      are normally used in macros.
+    <div class="Pp"></div>
+    <div class="Bd" style="margin-left: 5.00ex;">
+    <pre class="Li">
+ARRAY_SIZE EQU 4 
+COUNT      SET 2 
+COUNT      SET ARRAY_SIZE+COUNT
+    </pre>
+    </div>
+    <div class="Pp"></div>
+    Note that a colon (:) following the label-name is not allowed. SETs cannot
+      be exported and imported. Alternatively you can use = as a synonym for
+      SET.
+    <div class="Pp"></div>
+    <div class="D1"><code class="Li">COUNT = 2</code></div>
+  </dd>
+  <dt class="It-hang"><b class="Sy" title="Sy">RSSET</b>,
+    <b class="Sy" title="Sy">RSRESET</b>, <b class="Sy" title="Sy">RB</b>,
+    <b class="Sy" title="Sy">RW</b></dt>
+  <dd class="It-hang">
+    <div class="Pp"></div>
+    The RS group of commands is a handy way of defining structures:
+    <div class="Pp"></div>
+    <div class="Bd" style="margin-left: 5.00ex;">
+    <pre class="Li">
+              RSRESET 
+str_pStuff    RW   1 
+str_tData     RB   256 
+str_bCount    RB   1 
+str_SIZEOF    RB   0
+    </pre>
+    </div>
+    <div class="Pp"></div>
+    The example defines four equated symbols:
+    <div class="Pp"></div>
+    <div class="Bd" style="margin-left: 5.00ex;">
+    <pre class="Li">
+str_pStuff = 0 
+str_tData  = 2 
+str_bCount = 258 
+str_SIZEOF = 259
+    </pre>
+    </div>
+    <div class="Pp"></div>
+    There are four commands in the RS group of commands:
+    <table class="Bl-column">
+      <colgroup>
+        <col style="width: 15.00ex;"/>
+        <col style="min-width: 10.00ex;"/>
+      </colgroup>
+      <tr class="It-column">
+        <td class="It-column"><b class="Sy" title="Sy">Command</b></td>
+        <td class="It-column"></td>
+        <td class="It-column"></td>
+        <td class="It-column"><b class="Sy" title="Sy">Meaning</b></td>
+      </tr>
+      <tr class="It-column">
+        <td class="It-column"><a class="selflink" href="#RSRESET"><b class="Ic" title="Ic" id="RSRESET">RSRESET</b></a></td>
+        <td class="It-column"></td>
+        <td class="It-column">Resets the _RS counter to zero.</td>
+      </tr>
+      <tr class="It-column">
+        <td class="It-column"><a class="selflink" href="#RSSET"><b class="Ic" title="Ic" id="RSSET">RSSET</b></a>
+          <var class="Ar" title="Ar">constexpr</var></td>
+        <td class="It-column">Sets the <b class="Ic" title="Ic">_RS</b>
+          <span class="No">counter to</span>
+          <var class="Ar" title="Ar">constexpr</var>.</td>
+      </tr>
+      <tr class="It-column">
+        <td class="It-column"><a class="selflink" href="#RB"><b class="Ic" title="Ic" id="RB">RB</b></a>
+          <var class="Ar" title="Ar">constexpr</var></td>
+        <td class="It-column">Sets the preceding symbol to
+          <b class="Ic" title="Ic">_RS</b> <span class="No">and adds</span>
+          <var class="Ar" title="Ar">constexpr</var> <span class="No">to</span>
+          <b class="Ic" title="Ic">_RS</b>.</td>
+      </tr>
+      <tr class="It-column">
+        <td class="It-column"><a class="selflink" href="#RW"><b class="Ic" title="Ic" id="RW">RW</b></a>
+          <var class="Ar" title="Ar">constexpr</var></td>
+        <td class="It-column">Sets the preceding symbol to
+          <b class="Ic" title="Ic">_RS</b> <span class="No">and adds</span>
+          <var class="Ar" title="Ar">constexpr</var> <span class="No">* 2
+          to</span> <b class="Ic" title="Ic">_RS.</b></td>
+      </tr>
+      <tr class="It-column">
+        <td class="It-column"><a class="selflink" href="#RL"><b class="Ic" title="Ic" id="RL">RL</b></a>
+          <var class="Ar" title="Ar">constexpr</var></td>
+        <td class="It-column">Sets the preceding symbol to
+          <b class="Ic" title="Ic">_RS</b> <span class="No">and adds</span>
+          <var class="Ar" title="Ar">constexpr</var> <span class="No">* 4
+          to</span> <b class="Ic" title="Ic">_RS.</b></td>
+      </tr>
+    </table>
+    <div class="Pp"></div>
+    Note that a colon (:) following the symbol-name is not allowed.
+      <b class="Sy" title="Sy">RS</b> symbols cannot be exported and imported.
+      They don't change their value during the link process.</dd>
+  <dt class="It-hang"><b class="Sy" title="Sy">EQUS</b></dt>
+  <dd class="It-hang">
+    <div class="Pp"></div>
+    EQUS is used to define string-symbols. Wherever the assembler meets a string
+      symbol its name is replaced with its value. If you are familiar with C you
+      can think of it as the same as #define.
+    <div class="Pp"></div>
+    <div class="Bd" style="margin-left: 5.00ex;">
+    <pre class="Li">
+COUNTREG EQUS &quot;[hl+]&quot; 
+ld a,COUNTREG 
+ 
+PLAYER_NAME EQUS &quot;\&quot;John\&quot;&quot; 
+db PLAYER_NAME
+    </pre>
+    </div>
+    <div class="Pp"></div>
+    Note that : following the label-name is not allowed, and that strings must
+      be quoted to be useful.
+    <div class="Pp"></div>
+    This will be interpreted as:
+    <div class="Pp"></div>
+    <div class="D1"><code class="Li">ld a,[hl+]</code></div>
+    <div class="D1"><code class="Li">db &quot;John&quot;</code></div>
+    <div class="Pp"></div>
+    String-symbols can also be used to define small one-line macros:
+    <div class="Pp"></div>
+    <div class="D1"><code class="Li">PUSHA EQUS &quot;push af\npush bc\npush
+      de\npush hl\n&quot;</code></div>
+    <div class="Pp"></div>
+    Note that a colon (:) following the label-name is not allowed. String
+      equates can't be exported or imported.
+    <div class="Pp"></div>
+    <b class="Sy" title="Sy">Important note</b>: An EQUS can be expanded to a
+      string that contains another EQUS and it will be expanded as well. This
+      means that, if you aren't careful, you may trap the assembler into an
+      infinite loop if there's a circular dependency in the expansions. Also, a
+      MACRO can have inside an EQUS which references the same MACRO, which has
+      the same problem.</dd>
+  <dt class="It-hang"><b class="Sy" title="Sy">MACRO</b></dt>
+  <dd class="It-hang">
+    <div class="Pp"></div>
+    One of the best features of an assembler is the ability to write macros for
+      it. Macros also provide a method of passing arguments to them and they can
+      then react to the input using IF-constructs.
+    <div class="Pp"></div>
+    <div class="Bd" style="margin-left: 5.00ex;">
+    <pre class="Li">
+MyMacro: MACRO 
+         ld   a,80 
+         call MyFunc 
+         ENDM
+    </pre>
+    </div>
+    <div class="Pp"></div>
+    Note that a colon (:) following the macro-name is required. Macros can't be
+      exported or imported. It's valid to call a macro from a macro (yes, even
+      the same one).
+    <div class="Pp"></div>
+    The above example is a very simple macro. You execute the macro by typing
+      its name.
+    <div class="Pp"></div>
+    <div class="Bd" style="margin-left: 5.00ex;">
+    <pre class="Li">
+         add  a,b 
+         ld   sp,hl 
+         MyMacro ;This will be expanded 
+         sub  a,87
+    </pre>
+    </div>
+    <div class="Pp"></div>
+    When the assembler meets MyMacro it will insert the macrodefinition (the
+      text enclosed in <b class="Ic" title="Ic">MACRO</b> /
+      <b class="Ic" title="Ic">ENDM</b>).
+    <div class="Pp"></div>
+    Suppose your macro contains a loop.
+    <div class="Pp"></div>
+    <div class="Bd" style="margin-left: 5.00ex;">
+    <pre class="Li">
+LoopyMacro: MACRO 
+            xor  a,a 
+.loop       ld   [hl+],a 
+            dec  c 
+            jr   nz,.loop 
+            ENDM
+    </pre>
+    </div>
+    <div class="Pp"></div>
+    This is fine. That is, if you only use the macro once per scope. To get
+      around this problem there is a special label string equate called
+      <b class="Ic" title="Ic">\@</b> that you can append to your labels and it
+      will then expand to a unique string.
+    <div class="Pp"></div>
+    <b class="Ic" title="Ic">\@</b> also works in REPT-blocks should you have
+      any loops there.
+    <div class="Pp"></div>
+    <div class="Bd" style="margin-left: 5.00ex;">
+    <pre class="Li">
+LoopyMacro: MACRO 
+            xor  a,a 
+.loop\@     ld   [hl+],a 
+            dec  c 
+            jr   nz,.loop\@ 
+            ENDM
+    </pre>
+    </div>
+    <div class="Pp"></div>
+    <b class="Sy" title="Sy">Important note</b>: Since a MACRO can call itself
+      (or a different MACRO that calls the first one) there can be problems of
+      circular dependency. They trap the assembler in an infinite loop, so you
+      have to be careful when using recursion with MACROs. Also, a MACRO can
+      have inside an EQUS which references the same MACRO, which has the same
+      problem.
+    <div class="Pp"></div>
+    <b class="Sy" title="Sy">Macro Arguments</b>
+    <div class="Pp"></div>
+    I'd like LoopyMacro a lot better if I didn't have to pre-load the registers
+      with values and then call it. What I'd like is the ability to pass it
+      arguments and it then loaded the registers itself.
+    <div class="Pp"></div>
+    And I can do that. In macros you can get the arguments by using the special
+      macro string equates <b class="Ic" title="Ic">\1</b> through
+      <b class="Ic" title="Ic">\9</b>, <b class="Ic" title="Ic">\1</b> being the
+      first argument specified on the calling of the macro.
+    <div class="Pp"></div>
+    <div class="Bd" style="margin-left: 5.00ex;">
+    <pre class="Li">
+LoopyMacro: MACRO 
+            ld   hl,\1 
+            ld   c,\2 
+            xor  a,a 
+.loop\@     ld   [hl+],a 
+            dec  c 
+            jr   nz,.loop\@ 
+            ENDM
+    </pre>
+    </div>
+    <div class="Pp"></div>
+    Now I can call the macro specifying two arguments. The first being the
+      address and the second being a bytecount. The macro will then reset all
+      bytes in this range.
+    <div class="Pp"></div>
+    <div class="D1"><code class="Li">LoopyMacro MyVars,54</code></div>
+    <div class="Pp"></div>
+    Arguments are passed as string equates. There's no need to enclose them in
+      quotes. An expression will not be evaluated first but passed directly.
+      This means that it's probably a very good idea to use brackets around
+      <b class="Ic" title="Ic">\1</b> to <b class="Ic" title="Ic">\9</b> if you
+      perform further calculations on them. For instance, if you pass 1 + 2 as
+      the first argument and then do <b class="Ic" title="Ic">PRINTV</b>
+      <b class="Ic" title="Ic">\1</b> * 2 you will get the value 5 on screen and
+      not 6 as you might have expected.
+    <div class="Pp"></div>
+    In reality, up to 256 arguments can be passed to a macro, but you can only
+      use the first 9 like this. If you want to use the rest, you need to use
+      the keyword <b class="Ic" title="Ic">SHIFT</b>.
+    <div class="Pp"></div>
+    <b class="Ic" title="Ic">SHIFT</b> is a special command only available in
+      macros. Very useful in REPT-blocks. It will &quot;shift&quot; the
+      arguments by one &quot;to the left&quot;. <b class="Ic" title="Ic">\1</b>
+      will get the value of <b class="Ic" title="Ic">\2</b>,
+      <b class="Ic" title="Ic">\2</b> will get the value in
+      <b class="Ic" title="Ic">\3</b> and so forth.
+    <div class="Pp"></div>
+    This is the only way of accessing the value of arguments from 10 to
+    256.</dd>
+</dl>
+<h2 class="Ss" title="Ss" id="Exporting_and_importing_symbols"><a class="selflink" href="#Exporting_and_importing_symbols">Exporting
+  and importing symbols</a></h2>
+Importing and exporting of symbols is a feature that is very useful when your
+  project spans many source-files and, for example, you need to jump to a
+  routine defined in another file.
+<div class="Pp"></div>
+Exporting of symbols has to be done manually, importing is done automatically if
+  the assembler doesn't know where a symbol is defined.
+<div class="Pp"></div>
+<b class="Ic" title="Ic">EXPORT</b> <var class="Ar" title="Ar">label</var> [,
+  <var class="Ar" title="Ar">label</var> , <span class="No">...</span>]
+<div class="Pp"></div>
+The assembler will make label accessible to other files during the link process.
+<div class="Pp"></div>
+<b class="Ic" title="Ic">GLOBAL</b> <var class="Ar" title="Ar">label</var> [,
+  <var class="Ar" title="Ar">label</var> , <span class="No">...</span>]
+<div class="Pp"></div>
+If label is defined during the assembly it will be exported, if not, it will be
+  imported. Handy (very!) for include-files. Note that, since importing is done
+  automatically, this keyword has the same effect as
+  <b class="Ic" title="Ic">EXPORT</b>.
+<h2 class="Ss" title="Ss" id="Purging_symbols"><a class="selflink" href="#Purging_symbols">Purging
+  symbols</a></h2>
+<b class="Ic" title="Ic">PURGE</b> allows you to completely remove a symbol from
+  the symbol table as if it had never existed. USE WITH EXTREME CAUTION!!! I
+  can't stress this enough, you seriously need to know what you are doing. DON'T
+  purge symbol that you use in expressions the linker needs to calculate. In
+  fact, it's probably not even safe to purge anything other than string symbols
+  and macros.
+<div class="Pp"></div>
+<div class="Bd" style="margin-left: 5.00ex;">
+<pre class="Li">
+Kamikaze EQUS  &quot;I don't want to live anymore&quot; 
+AOLer    EQUS  &quot;Me too&quot; 
+         PURGE Kamikaze, AOLer
+</pre>
+</div>
+<div class="Pp"></div>
+Note that string symbols that are part of a <b class="Ic" title="Ic">PURGE</b>
+  command WILL NOT BE EXPANDED as the ONLY exception to this rule.
+<h2 class="Ss" title="Ss" id="Predeclared_Symbols"><a class="selflink" href="#Predeclared_Symbols">Predeclared
+  Symbols</a></h2>
+The following symbols are defined by the assembler:
+<table class="Bl-column" style="margin-left: 6.00ex;">
+  <colgroup>
+    <col style="width: 15.00ex;"/>
+    <col style="width: 15.00ex;"/>
+    <col style="min-width: 10.00ex;"/>
+  </colgroup>
+  <tr class="It-column">
+    <td class="It-column"><b class="Sy" title="Sy">Type</b></td>
+    <td class="It-column"><b class="Sy" title="Sy">Name</b></td>
+    <td class="It-column"></td>
+    <td class="It-column"><b class="Sy" title="Sy">Contents</b></td>
+  </tr>
+  <tr class="It-column">
+    <td class="It-column"><a class="selflink" href="#EQU"><b class="Ic" title="Ic" id="EQU">EQU</b></a></td>
+    <td class="It-column"><a class="selflink" href="#@"><b class="Ic" title="Ic" id="@">@</b></a></td>
+    <td class="It-column"></td>
+    <td class="It-column">PC value</td>
+  </tr>
+  <tr class="It-column">
+    <td class="It-column"><a class="selflink" href="#EQU"><b class="Ic" title="Ic" id="EQU">EQU</b></a></td>
+    <td class="It-column"><a class="selflink" href="#_PI"><b class="Ic" title="Ic" id="_PI">_PI</b></a></td>
+    <td class="It-column"></td>
+    <td class="It-column">Fixed point &#x03C0;</td>
+  </tr>
+  <tr class="It-column">
+    <td class="It-column"><a class="selflink" href="#SET"><b class="Ic" title="Ic" id="SET">SET</b></a></td>
+    <td class="It-column"><a class="selflink" href="#_RS"><b class="Ic" title="Ic" id="_RS">_RS</b></a></td>
+    <td class="It-column"></td>
+    <td class="It-column">_RS Counter</td>
+  </tr>
+  <tr class="It-column">
+    <td class="It-column"><a class="selflink" href="#EQU"><b class="Ic" title="Ic" id="EQU">EQU</b></a></td>
+    <td class="It-column"><a class="selflink" href="#_NARG"><b class="Ic" title="Ic" id="_NARG">_NARG</b></a></td>
+    <td class="It-column"></td>
+    <td class="It-column">Number of arguments passed to macro</td>
+  </tr>
+  <tr class="It-column">
+    <td class="It-column"><a class="selflink" href="#EQU"><b class="Ic" title="Ic" id="EQU">EQU</b></a></td>
+    <td class="It-column"><a class="selflink" href="#__LINE__"><b class="Ic" title="Ic" id="__LINE__">__LINE__</b></a></td>
+    <td class="It-column"></td>
+    <td class="It-column">The current line number</td>
+  </tr>
+  <tr class="It-column">
+    <td class="It-column"><a class="selflink" href="#EQUS"><b class="Ic" title="Ic" id="EQUS">EQUS</b></a></td>
+    <td class="It-column"><a class="selflink" href="#__FILE__"><b class="Ic" title="Ic" id="__FILE__">__FILE__</b></a></td>
+    <td class="It-column"></td>
+    <td class="It-column">The current filename</td>
+  </tr>
+  <tr class="It-column">
+    <td class="It-column"><a class="selflink" href="#EQUS"><b class="Ic" title="Ic" id="EQUS">EQUS</b></a></td>
+    <td class="It-column"><a class="selflink" href="#__DATE__"><b class="Ic" title="Ic" id="__DATE__">__DATE__</b></a></td>
+    <td class="It-column"></td>
+    <td class="It-column">Today's date</td>
+  </tr>
+  <tr class="It-column">
+    <td class="It-column"><a class="selflink" href="#EQUS"><b class="Ic" title="Ic" id="EQUS">EQUS</b></a></td>
+    <td class="It-column"><a class="selflink" href="#__TIME__"><b class="Ic" title="Ic" id="__TIME__">__TIME__</b></a></td>
+    <td class="It-column"></td>
+    <td class="It-column">The current time</td>
+  </tr>
+  <tr class="It-column">
+    <td class="It-column"><a class="selflink" href="#EQUS"><b class="Ic" title="Ic" id="EQUS">EQUS</b></a></td>
+    <td class="It-column"><a class="selflink" href="#__ISO_8601_LOCAL__"><b class="Ic" title="Ic" id="__ISO_8601_LOCAL__">__ISO_8601_LOCAL__</b></a></td>
+    <td class="It-column">ISO 8601 timestamp (local)</td>
+  </tr>
+  <tr class="It-column">
+    <td class="It-column"><a class="selflink" href="#EQUS"><b class="Ic" title="Ic" id="EQUS">EQUS</b></a></td>
+    <td class="It-column"><a class="selflink" href="#__ISO_8601_UTC__"><b class="Ic" title="Ic" id="__ISO_8601_UTC__">__ISO_8601_UTC__</b></a></td>
+    <td class="It-column">ISO 8601 timestamp (UTC)</td>
+  </tr>
+  <tr class="It-column">
+    <td class="It-column"><a class="selflink" href="#EQU"><b class="Ic" title="Ic" id="EQU">EQU</b></a></td>
+    <td class="It-column"><a class="selflink" href="#__UTC_YEAR__"><b class="Ic" title="Ic" id="__UTC_YEAR__">__UTC_YEAR__</b></a></td>
+    <td class="It-column"></td>
+    <td class="It-column">Today's year</td>
+  </tr>
+  <tr class="It-column">
+    <td class="It-column"><a class="selflink" href="#EQU"><b class="Ic" title="Ic" id="EQU">EQU</b></a></td>
+    <td class="It-column"><a class="selflink" href="#__UTC_MONTH__"><b class="Ic" title="Ic" id="__UTC_MONTH__">__UTC_MONTH__</b></a></td>
+    <td class="It-column"></td>
+    <td class="It-column">Today's month number, 1-12</td>
+  </tr>
+  <tr class="It-column">
+    <td class="It-column"><a class="selflink" href="#EQU"><b class="Ic" title="Ic" id="EQU">EQU</b></a></td>
+    <td class="It-column"><a class="selflink" href="#__UTC_DAY__"><b class="Ic" title="Ic" id="__UTC_DAY__">__UTC_DAY__</b></a></td>
+    <td class="It-column"></td>
+    <td class="It-column">Today's day of the month, 1-31</td>
+  </tr>
+  <tr class="It-column">
+    <td class="It-column"><a class="selflink" href="#EQU"><b class="Ic" title="Ic" id="EQU">EQU</b></a></td>
+    <td class="It-column"><a class="selflink" href="#__UTC_HOUR__"><b class="Ic" title="Ic" id="__UTC_HOUR__">__UTC_HOUR__</b></a></td>
+    <td class="It-column"></td>
+    <td class="It-column">Current hour, 0-23</td>
+  </tr>
+  <tr class="It-column">
+    <td class="It-column"><a class="selflink" href="#EQU"><b class="Ic" title="Ic" id="EQU">EQU</b></a></td>
+    <td class="It-column"><a class="selflink" href="#__UTC_MINUTE__"><b class="Ic" title="Ic" id="__UTC_MINUTE__">__UTC_MINUTE__</b></a></td>
+    <td class="It-column"></td>
+    <td class="It-column">Current minute, 0-59</td>
+  </tr>
+  <tr class="It-column">
+    <td class="It-column"><a class="selflink" href="#EQU"><b class="Ic" title="Ic" id="EQU">EQU</b></a></td>
+    <td class="It-column"><a class="selflink" href="#__UTC_SECOND__"><b class="Ic" title="Ic" id="__UTC_SECOND__">__UTC_SECOND__</b></a></td>
+    <td class="It-column"></td>
+    <td class="It-column">Current second, 0-59</td>
+  </tr>
+  <tr class="It-column">
+    <td class="It-column"><a class="selflink" href="#EQU"><b class="Ic" title="Ic" id="EQU">EQU</b></a></td>
+    <td class="It-column"><a class="selflink" href="#__RGBDS_MAJOR__"><b class="Ic" title="Ic" id="__RGBDS_MAJOR__">__RGBDS_MAJOR__</b></a></td>
+    <td class="It-column"></td>
+    <td class="It-column">Major version number of RGBDS.</td>
+  </tr>
+  <tr class="It-column">
+    <td class="It-column"><a class="selflink" href="#EQU"><b class="Ic" title="Ic" id="EQU">EQU</b></a></td>
+    <td class="It-column"><a class="selflink" href="#__RGBDS_MINOR__"><b class="Ic" title="Ic" id="__RGBDS_MINOR__">__RGBDS_MINOR__</b></a></td>
+    <td class="It-column"></td>
+    <td class="It-column">Minor version number of RGBDS.</td>
+  </tr>
+  <tr class="It-column">
+    <td class="It-column"><a class="selflink" href="#EQU"><b class="Ic" title="Ic" id="EQU">EQU</b></a></td>
+    <td class="It-column"><a class="selflink" href="#__RGBDS_PATCH__"><b class="Ic" title="Ic" id="__RGBDS_PATCH__">__RGBDS_PATCH__</b></a></td>
+    <td class="It-column"></td>
+    <td class="It-column">Patch version number of RGBDS.</td>
+  </tr>
+</table>
+<h1 class="Sh" title="Sh" id="DEFINING_DATA"><a class="selflink" href="#DEFINING_DATA">DEFINING
+  DATA</a></h1>
+<h2 class="Ss" title="Ss" id="Defining_constant_data"><a class="selflink" href="#Defining_constant_data">Defining
+  constant data</a></h2>
+<b class="Ic" title="Ic">DB</b> defines a list of bytes that will be stored in
+  the final image. Ideal for tables and text (which is not zero-terminated).
+<div class="Pp"></div>
+<div class="D1"><code class="Li">DB 1,2,3,4,&quot;This is a
+  string&quot;</code></div>
+<div class="Pp"></div>
+Alternatively, you can use <b class="Ic" title="Ic">DW</b> to store a list of
+  words (16-bits) or <b class="Ic" title="Ic">DL</b> to store a list of
+  doublewords/longs (32-bits). Strings are not allowed as arguments to
+  <b class="Ic" title="Ic">DW</b> and <b class="Ic" title="Ic">DL</b>.
+<div class="Pp"></div>
+You can also use <b class="Ic" title="Ic">DB</b>,
+  <b class="Ic" title="Ic">DW</b> and <b class="Ic" title="Ic">DL</b> without
+  arguments, or leaving empty elements at any point in the list. This works
+  exactly like <b class="Sy" title="Sy">DS 1</b>, <b class="Sy" title="Sy">DS
+  2</b> and <b class="Sy" title="Sy">DS 4</b> respectively. Consequently,
+  <b class="Ic" title="Ic">DB</b>, <b class="Ic" title="Ic">DW</b> and
+  <b class="Ic" title="Ic">DL</b> can be used in a
+  <b class="Sy" title="Sy">WRAM0</b> <span class="No">/</span>
+  <b class="Sy" title="Sy">WRAMX</b> <span class="No">/</span>
+  <b class="Sy" title="Sy">HRAM</b> <span class="No">/</span>
+  <b class="Sy" title="Sy">VRAM</b> <span class="No">/</span>
+  <b class="Sy" title="Sy">SRAM</b> section.
+<h2 class="Ss" title="Ss" id="Declaring_variables_in_a_RAM_section"><a class="selflink" href="#Declaring_variables_in_a_RAM_section">Declaring
+  variables in a RAM section</a></h2>
+<b class="Ic" title="Ic">DS</b> allocates a number of bytes. The content is
+  undefined. This is the preferred method of allocationg space in a RAM section.
+  You can, however, use <b class="Ic" title="Ic">DB</b>,
+  <b class="Ic" title="Ic">DW</b> and <b class="Ic" title="Ic">DL</b> without
+  any arguments instead.
+<div class="Pp"></div>
+<div class="D1"><code class="Li">DS str_SIZEOF ;allocate str_SIZEOF
+  bytes</code></div>
+<h2 class="Ss" title="Ss" id="Including_binary_files"><a class="selflink" href="#Including_binary_files">Including
+  binary files</a></h2>
+You probably have some graphics you'd like to include. Use
+  <b class="Ic" title="Ic">INCBIN</b> to include a raw binary file as it is. If
+  the file isn't found in the current directory, the include-path list passed to
+  the linker on the command line will be searched.
+<div class="Pp"></div>
+<div class="D1"><code class="Li">INCBIN &quot;titlepic.bin&quot;</code></div>
+<div class="D1"><code class="Li">INCBIN &quot;sprites/hero.bin&quot;&#x00A0;;
+  UNIX</code></div>
+<div class="D1"><code class="Li">INCBIN &quot;sprites\\hero.bin&quot;&#x00A0;;
+  Windows</code></div>
+<div class="Pp"></div>
+You can also include only part of a file with
+  <b class="Ic" title="Ic">INCBIN</b>. The example below includes 256 bytes from
+  data.bin starting from byte 78.
+<div class="Pp"></div>
+<div class="D1"><code class="Li">INCBIN &quot;data.bin&quot;,78,256</code></div>
+<h2 class="Ss" title="Ss" id="Unions"><a class="selflink" href="#Unions">Unions</a></h2>
+Unions allow multiple memory allocations to share the same space in memory, like
+  unions in C. This allows you to easily reuse memory for different purposes,
+  depending on the game's state.
+<div class="Pp"></div>
+You create unions using the <b class="Ic" title="Ic">UNION</b>,
+  <b class="Ic" title="Ic">NEXTU</b> and <b class="Ic" title="Ic">ENDU</b>
+  keywords. <b class="Ic" title="Ic">NEXTU</b> lets you create a new block of
+  allocations, and you may use it as many times within a union as necessary.
+<div class="Pp"></div>
+<div class="Bd" style="margin-left: 5.00ex;">
+<pre class="Li">
+UNION 
+Name: ds 8 
+Nickname: ds 8 
+NEXTU 
+Health: dw 
+Something: ds 3 
+Lives: db 
+NEXTU 
+Temporary: ds 19 
+ENDU
+</pre>
+</div>
+<div class="Pp"></div>
+This union will use up 19 bytes, as this is the size of the largest block (the
+  last one, containing 'Temporary'). Of course, as 'Name', 'Health', and
+  'Temporary' all point to the same memory locations, writes to any one of these
+  will affect values read from the others.
+<div class="Pp"></div>
+Unions may be used in any section, but code and data may not be included.
+<h1 class="Sh" title="Sh" id="THE_MACRO_LANGUAGE"><a class="selflink" href="#THE_MACRO_LANGUAGE">THE
+  MACRO LANGUAGE</a></h1>
+<h2 class="Ss" title="Ss" id="Printing_things_during_assembly"><a class="selflink" href="#Printing_things_during_assembly">Printing
+  things during assembly</a></h2>
+These three instructions type text and values to stdout. Useful for debugging
+  macros or wherever you may feel the need to tell yourself some important
+  information.
+<div class="Pp"></div>
+<div class="Bd" style="margin-left: 5.00ex;">
+<pre class="Li">
+PRINTT &quot;I'm the greatest programmer in the whole wide world\n&quot; 
+PRINTV (2+3)/5 
+PRINTF MUL(3.14,3987.0)
+</pre>
+</div>
+<dl class="Bl-inset">
+  <dt class="It-inset"><a class="selflink" href="#PRINTT"><b class="Ic" title="Ic" id="PRINTT">PRINTT</b></a></dt>
+  <dd class="It-inset">prints out a string.</dd>
+  <dt class="It-inset"><a class="selflink" href="#PRINTV"><b class="Ic" title="Ic" id="PRINTV">PRINTV</b></a></dt>
+  <dd class="It-inset">prints out an integer value or, as in the example, the
+      result of a calculation. Unsurprisingly, you can also print out a constant
+      symbols value.</dd>
+  <dt class="It-inset"><a class="selflink" href="#PRINTF"><b class="Ic" title="Ic" id="PRINTF">PRINTF</b></a></dt>
+  <dd class="It-inset">prints out a fixed point value.</dd>
+</dl>
+<h2 class="Ss" title="Ss" id="Automatically_repeating_blocks_of_code"><a class="selflink" href="#Automatically_repeating_blocks_of_code">Automatically
+  repeating blocks of code</a></h2>
+Suppose you're feeling lazy and you want to unroll a time consuming loop.
+  <b class="Ic" title="Ic">REPT</b> is here for that purpose. Everything between
+  <b class="Ic" title="Ic">REPT</b> and <b class="Ic" title="Ic">ENDR</b> will
+  be repeated a number of times just as if you done a copy/paste operation
+  yourself. The following example will assemble <b class="Sy" title="Sy">add
+  a,c</b> four times:
+<div class="Pp"></div>
+<div class="Bd" style="margin-left: 5.00ex;">
+<pre class="Li">
+REPT 4 
+add  a,c 
+ENDR
+</pre>
+</div>
+<div class="Pp"></div>
+You can also use <b class="Ic" title="Ic">REPT</b> to generate tables on the
+  fly:
+<div class="Pp"></div>
+<div class="Bd" style="margin-left: 5.00ex;">
+<pre class="Li">
+; -- 
+; -- Generate a 256 byte sine table with values between 0 and 128 
+; -- 
+ANGLE SET   0.0 
+      REPT  256 
+      DB    (MUL(64.0,SIN(ANGLE))+64.0)&gt;&gt;16 
+ANGLE SET ANGLE+256.0 
+      ENDR
+</pre>
+</div>
+<div class="Pp"></div>
+<b class="Ic" title="Ic">REPT</b> is also very useful in recursive macros and,
+  as in macros, you can also use the special label operator
+  <b class="Ic" title="Ic">\@</b>. REPT-blocks can be nested.
+<h2 class="Ss" title="Ss" id="Aborting_the_assembly_process"><a class="selflink" href="#Aborting_the_assembly_process">Aborting
+  the assembly process</a></h2>
+<b class="Ic" title="Ic">FAIL</b> and <b class="Ic" title="Ic">WARN</b> can be
+  used to print errors and warnings respectively during the assembly process.
+  This is especially useful for macros that get an invalid argument.
+  <b class="Ic" title="Ic">FAIL</b> and <b class="Ic" title="Ic">WARN</b> take a
+  string as the only argument and they will print this string out as a normal
+  error with a line number.
+<div class="Pp"></div>
+<b class="Ic" title="Ic">FAIL</b> stops assembling immediately while
+  <b class="Ic" title="Ic">WARN</b> shows the message but continues afterwards.
+<h2 class="Ss" title="Ss" id="Including_other_source_files"><a class="selflink" href="#Including_other_source_files">Including
+  other source files</a></h2>
+Use <b class="Ic" title="Ic">INCLUDE</b> to process another assembler-file and
+  then return to the current file when done. If the file isn't found in the
+  current directory the include-path list will be searched. You may nest
+  <b class="Ic" title="Ic">INCLUDE</b> calls infinitely (or until you run out of
+  memory, whichever comes first).
+<div class="Pp"></div>
+<div class="D1"><code class="Li">INCLUDE &quot;irq.inc&quot;</code></div>
+<h2 class="Ss" title="Ss" id="Conditional_assembling"><a class="selflink" href="#Conditional_assembling">Conditional
+  assembling</a></h2>
+The four commands <b class="Ic" title="Ic">IF</b>,
+  <b class="Ic" title="Ic">ELIF</b>, <b class="Ic" title="Ic">ELSE</b>, and
+  <b class="Ic" title="Ic">ENDC</b> are used to conditionally assemble parts of
+  your file. This is a powerful feature commonly used in macros.
+<div class="Pp"></div>
+<div class="Bd" style="margin-left: 5.00ex;">
+<pre class="Li">
+IF NUM &lt; 0 
+  PRINTT &quot;NUM &lt; 0\n&quot; 
+ELIF NUM == 0 
+  PRINTT &quot;NUM == 0\n&quot; 
+ELSE 
+  PRINTT &quot;NUM &gt; 0\n&quot; 
+ENDC
+</pre>
+</div>
+<div class="Pp"></div>
+The <b class="Ic" title="Ic">ELIF</b> and <b class="Ic" title="Ic">ELSE</b>
+  blocks are optional. <b class="Ic" title="Ic">IF</b> <span class="No">/</span>
+  <b class="Ic" title="Ic">ELIF</b> <span class="No">/</span>
+  <b class="Ic" title="Ic">ELSE</b> <span class="No">/</span>
+  <b class="Ic" title="Ic">ENDC</b> blocks can be nested.
+<div class="Pp"></div>
+Note that if an <b class="Ic" title="Ic">ELSE</b> block is found before an
+  <b class="Ic" title="Ic">ELIF</b> block, the <b class="Ic" title="Ic">ELIF</b>
+  block will be ignored. All <b class="Ic" title="Ic">ELIF</b> blocks must go
+  before the <b class="Ic" title="Ic">ELSE</b> block. Also, if there is more
+  than one <b class="Ic" title="Ic">ELSE</b> block, all of them but the first
+  one are ignored.
+<h2 class="Ss" title="Ss" id="Integer_and_Boolean_expressions"><a class="selflink" href="#Integer_and_Boolean_expressions">Integer
+  and Boolean expressions</a></h2>
+An expression can be composed of many things. Expressions are always evaluated
+  using signed 32-bit math.
+<div class="Pp"></div>
+The most basic expression is just a single number.
+<div class="Pp"></div>
+<b class="Sy" title="Sy">Numeric Formats</b>
+<div class="Pp"></div>
+There are a number of numeric formats.
+<div class="Pp"></div>
+<ul class="Bl-dash Bl-compact">
+  <li class="It-dash">Hexadecimal: $0123456789ABCDEF. Case-insensitive</li>
+  <li class="It-dash">Decimal: 0123456789</li>
+  <li class="It-dash">Octal: &amp;01234567</li>
+  <li class="It-dash">Binary: %01</li>
+  <li class="It-dash">Fixedpoint (16.16): 01234.56789</li>
+  <li class="It-dash">Character constant: &quot;ABYZ&quot;</li>
+  <li class="It-dash">Gameboy graphics: `0123</li>
+</ul>
+<div class="Pp"></div>
+The last one, Gameboy graphics, is quite interesting and useful. The values are
+  actually pixel values and it converts the &#x201C;chunky&#x201D; data to
+  &#x201C;planar&#x201D; data as used in the Gameboy.
+<div class="Pp"></div>
+<div class="D1"><code class="Li">DW `01012323</code></div>
+<div class="Pp"></div>
+Admittedly, an expression with just a single number is quite boring. To spice
+  things up a bit there are a few operators you can use to perform calculations
+  between numbers.
+<div class="Pp"></div>
+<b class="Sy" title="Sy">Operators</b>
+<div class="Pp"></div>
+A great number of operators you can use in expressions are available (listed in
+  order of precedence):
+<table class="Bl-column" style="margin-left: 6.00ex;">
+  <colgroup>
+    <col style="width: 15.00ex;"/>
+    <col style="min-width: 10.00ex;"/>
+  </colgroup>
+  <tr class="It-column">
+    <td class="It-column"><b class="Sy" title="Sy">Operator</b></td>
+    <td class="It-column"><b class="Sy" title="Sy">Meaning</b></td>
+  </tr>
+  <tr class="It-column">
+    <td class="It-column">()</td>
+    <td class="It-column">Precedence override</td>
+  </tr>
+  <tr class="It-column">
+    <td class="It-column"><a class="selflink" href="#FUNC()"><code class="Li" id="FUNC()">FUNC()</code></a></td>
+    <td class="It-column">Function call</td>
+  </tr>
+  <tr class="It-column">
+    <td class="It-column"><a class="selflink" href="#~_+_-"><code class="Li" id="~_+_-">~
+      + -</code></a></td>
+    <td class="It-column">Unary not/plus/minus</td>
+  </tr>
+  <tr class="It-column">
+    <td class="It-column"><a class="selflink" href="#*_/_%"><code class="Li" id="*_/_%">*
+      / %</code></a></td>
+    <td class="It-column">Multiply/divide/modulo</td>
+  </tr>
+  <tr class="It-column">
+    <td class="It-column"><a class="selflink" href="#&lt;&lt;_&gt;&gt;"><code class="Li" id="&lt;&lt;_&gt;&gt;">&lt;&lt;
+      &gt;&gt;</code></a></td>
+    <td class="It-column">Shift left/right</td>
+  </tr>
+  <tr class="It-column">
+    <td class="It-column"><a class="selflink" href="#&amp;"><code class="Li" id="&amp;">&amp;</code></a>
+      | <a class="selflink" href="#^"><code class="Li" id="^">^</code></a></td>
+    <td class="It-column">Binary and/or/xor</td>
+  </tr>
+  <tr class="It-column">
+    <td class="It-column"><a class="selflink" href="#+_-"><code class="Li" id="+_-">+
+      -</code></a></td>
+    <td class="It-column">Add/subtract</td>
+  </tr>
+  <tr class="It-column">
+    <td class="It-column"><a class="selflink" href="#!=_==_&lt;="><code class="Li" id="!=_==_&lt;=">!=
+      == &lt;=</code></a></td>
+    <td class="It-column">Boolean comparison</td>
+  </tr>
+  <tr class="It-column">
+    <td class="It-column"><a class="selflink" href="#&gt;=_&lt;_&gt;"><code class="Li" id="&gt;=_&lt;_&gt;">&gt;=
+      &lt; &gt;</code></a></td>
+    <td class="It-column">Boolean comparison (Same precedence as the
+      others)</td>
+  </tr>
+  <tr class="It-column">
+    <td class="It-column"><a class="selflink" href="#&amp;&amp;_||"><code class="Li" id="&amp;&amp;_||">&amp;&amp;
+      ||</code></a></td>
+    <td class="It-column">Boolean and/or</td>
+  </tr>
+  <tr class="It-column">
+    <td class="It-column">!</td>
+    <td class="It-column">Unary Boolean not</td>
+  </tr>
+</table>
+<div class="Pp"></div>
+The result of the boolean operators is zero if when FALSE and non-zero when
+  TRUE. It is legal to use an integer as the condition for IF blocks. You can
+  use symbols instead of numbers in your expression if you wish.
+<div class="Pp"></div>
+An expression is said to be constant when it doesn't change its value during
+  linking. This basically means that you can't use labels in those expressions.
+  The instructions in the macro-language all require expressions that are
+  constant. The only exception is the subtraction of labels in the same section
+  or labels that belong to sections with a fixed base addresses, all of which
+  must be defined in the same source file (the calculation cannot be passed to
+  the object file generated by the assembler). In this case, the result is a
+  constant that can be calculated at assembly time.
+<h2 class="Ss" title="Ss" id="Fixed&#x2010;point_Expressions"><a class="selflink" href="#Fixed&#x2010;point_Expressions">Fixed&#x2010;point
+  Expressions</a></h2>
+Fixed point constants are basically normal 32-bit constants where the upper 16
+  bits are used for the integer part and the lower 16 bits are used for the
+  fraction (65536ths). This means that you can use them in normal integer
+  expression, and some integer operators like plus and minus don't care whether
+  the operands are integer or fixed-point. You can easily convert a fixed-point
+  number to an integer by shifting it right 16 bits. It follows that you can
+  convert an integer to a fixed-point number by shifting it left.
+<div class="Pp"></div>
+Some things are different for fixed-point math, though, which is why you have
+  the following functions to use:
+<table class="Bl-column" style="margin-left: 6.00ex;">
+  <colgroup>
+    <col style="width: 15.00ex;"/>
+    <col style="min-width: 10.00ex;"/>
+  </colgroup>
+  <tr class="It-column">
+    <td class="It-column"><b class="Sy" title="Sy">Name</b></td>
+    <td class="It-column"></td>
+    <td class="It-column"><b class="Sy" title="Sy">Operation</b></td>
+  </tr>
+  <tr class="It-column">
+    <td class="It-column"><a class="selflink" href="#DIV(x,y)"><code class="Li" id="DIV(x,y)">DIV(x,y)</code></a></td>
+    <td class="It-column"></td>
+    <td class="It-column">x/y</td>
+  </tr>
+  <tr class="It-column">
+    <td class="It-column"><a class="selflink" href="#MUL(x,y)"><code class="Li" id="MUL(x,y)">MUL(x,y)</code></a></td>
+    <td class="It-column"></td>
+    <td class="It-column">x*y</td>
+  </tr>
+  <tr class="It-column">
+    <td class="It-column"><a class="selflink" href="#SIN(x)"><code class="Li" id="SIN(x)">SIN(x)</code></a></td>
+    <td class="It-column"></td>
+    <td class="It-column">sin(x)</td>
+  </tr>
+  <tr class="It-column">
+    <td class="It-column"><a class="selflink" href="#COS(x)"><code class="Li" id="COS(x)">COS(x)</code></a></td>
+    <td class="It-column"></td>
+    <td class="It-column">cos(x)</td>
+  </tr>
+  <tr class="It-column">
+    <td class="It-column"><a class="selflink" href="#TAN(x)"><code class="Li" id="TAN(x)">TAN(x)</code></a></td>
+    <td class="It-column"></td>
+    <td class="It-column">tan(x)</td>
+  </tr>
+  <tr class="It-column">
+    <td class="It-column"><a class="selflink" href="#ASIN(x)"><code class="Li" id="ASIN(x)">ASIN(x)</code></a></td>
+    <td class="It-column"></td>
+    <td class="It-column">arcsin(x)</td>
+  </tr>
+  <tr class="It-column">
+    <td class="It-column"><a class="selflink" href="#ACOS(x)"><code class="Li" id="ACOS(x)">ACOS(x)</code></a></td>
+    <td class="It-column"></td>
+    <td class="It-column">arccos(x)</td>
+  </tr>
+  <tr class="It-column">
+    <td class="It-column"><a class="selflink" href="#ATAN(x)"><code class="Li" id="ATAN(x)">ATAN(x)</code></a></td>
+    <td class="It-column"></td>
+    <td class="It-column">arctan(x)</td>
+  </tr>
+  <tr class="It-column">
+    <td class="It-column"><a class="selflink" href="#ATAN2(x,y)"><code class="Li" id="ATAN2(x,y)">ATAN2(x,y)</code></a></td>
+    <td class="It-column">Angle between (x,y) and (1,0)</td>
+  </tr>
+</table>
+<div class="Pp"></div>
+These functions are extremely useful for automatic generation of various tables.
+  A circle has 65536.0 degrees. Sine values are between [-1.0; 1.0].
+<div class="Pp"></div>
+<div class="Bd" style="margin-left: 5.00ex;">
+<pre class="Li">
+; -- 
+; -- Generate a 256 byte sine table with values between 0 and 128 
+; -- 
+ANGLE SET   0.0 
+      REPT  256 
+      DB    (MUL(64.0,SIN(ANGLE))+64.0)&gt;&gt;16 
+ANGLE SET ANGLE+256.0 
+      ENDR
+</pre>
+</div>
+<h2 class="Ss" title="Ss" id="String_Expressions"><a class="selflink" href="#String_Expressions">String
+  Expressions</a></h2>
+The most basic string expression is any number of characters contained in double
+  quotes (&quot;for instance&quot;). Like in C, the escape character is \, and
+  there are a number of commands you can use within a string:
+<table class="Bl-column" style="margin-left: 6.00ex;">
+  <colgroup>
+    <col style="width: 15.00ex;"/>
+    <col style="min-width: 10.00ex;"/>
+  </colgroup>
+  <tr class="It-column">
+    <td class="It-column"><b class="Sy" title="Sy">String</b></td>
+    <td class="It-column"><b class="Sy" title="Sy">Meaning</b></td>
+  </tr>
+  <tr class="It-column">
+    <td class="It-column"><a class="selflink" href="#\\"><code class="Li" id="\\">\\</code></a></td>
+    <td class="It-column">Backslash</td>
+  </tr>
+  <tr class="It-column">
+    <td class="It-column"><a class="selflink" href="#\&quot;"><code class="Li" id="\&quot;">\&quot;</code></a></td>
+    <td class="It-column">Double quote</td>
+  </tr>
+  <tr class="It-column">
+    <td class="It-column"><a class="selflink" href="#\,"><code class="Li" id="\,">\,</code></a></td>
+    <td class="It-column">Comma</td>
+  </tr>
+  <tr class="It-column">
+    <td class="It-column"><a class="selflink" href="#\{"><code class="Li" id="\{">\{</code></a></td>
+    <td class="It-column">Curly bracket left</td>
+  </tr>
+  <tr class="It-column">
+    <td class="It-column"><a class="selflink" href="#\}"><code class="Li" id="\}">\}</code></a></td>
+    <td class="It-column">Curly bracket right</td>
+  </tr>
+  <tr class="It-column">
+    <td class="It-column"><a class="selflink" href="#\n"><code class="Li" id="\n">\n</code></a></td>
+    <td class="It-column">Newline ($0A)</td>
+  </tr>
+  <tr class="It-column">
+    <td class="It-column"><a class="selflink" href="#\t"><code class="Li" id="\t">\t</code></a></td>
+    <td class="It-column">Tab ($09)</td>
+  </tr>
+  <tr class="It-column">
+    <td class="It-column"><a class="selflink" href="#\1_-_\9"><code class="Li" id="\1_-_\9">\1
+      - \9</code></a></td>
+    <td class="It-column">Macro argument (Only the body of a macros)</td>
+  </tr>
+  <tr class="It-column">
+    <td class="It-column"><a class="selflink" href="#\@"><code class="Li" id="\@">\@</code></a></td>
+    <td class="It-column">Label name suffix (Only in the body of macros and
+      repts)</td>
+  </tr>
+</table>
+<div class="Pp"></div>
+A funky feature is <b class="Sy" title="Sy">{symbol}</b> withing a string. This
+  will examine the type of the symbol and insert its value accordingly. If
+  symbol is a string symbol, the symbols value is simply copied. If it's a
+  numeric symbol, the value is converted to hexadecimal notation and inserted as
+  a string.
+<div class="Pp"></div>
+HINT: The <b class="Sy" title="Sy">{symbol}</b> construct can also be used
+  outside strings. The symbol's value is again inserted as a string. This is
+  just a short way of doing &quot;{symbol}&quot;.
+<div class="Pp"></div>
+Whenever the macro-language expects a string you can actually use a string
+  expression. This consists of one or more of these function (yes, you can nest
+  them). Note that some of these functions actually return an integer and can be
+  used as part of an integer expression!
+<table class="Bl-column">
+  <colgroup>
+    <col style="width: 15.00ex;"/>
+    <col style="min-width: 10.00ex;"/>
+  </colgroup>
+  <tr class="It-column">
+    <td class="It-column"><b class="Sy" title="Sy">Name</b></td>
+    <td class="It-column"></td>
+    <td class="It-column"></td>
+    <td class="It-column"><b class="Sy" title="Sy">Operation</b></td>
+  </tr>
+  <tr class="It-column">
+    <td class="It-column"><a class="selflink" href="#STRLEN(string)"><code class="Li" id="STRLEN(string)">STRLEN(string)</code></a></td>
+    <td class="It-column">Returns the number of characters in string</td>
+  </tr>
+  <tr class="It-column">
+    <td class="It-column"><a class="selflink" href="#STRCAT(str1,str2)"><code class="Li" id="STRCAT(str1,str2)">STRCAT(str1,str2)</code></a></td>
+    <td class="It-column">Appends str2 to str1.</td>
+  </tr>
+  <tr class="It-column">
+    <td class="It-column"><a class="selflink" href="#STRCMP(str1,str2)"><code class="Li" id="STRCMP(str1,str2)">STRCMP(str1,str2)</code></a></td>
+    <td class="It-column">Returns negative if str1 is alphabetically lower than
+      str2, zero if they match, positive if str1 is greater than str2.</td>
+  </tr>
+  <tr class="It-column">
+    <td class="It-column"><a class="selflink" href="#STRIN(str1,str2)"><code class="Li" id="STRIN(str1,str2)">STRIN(str1,str2)</code></a></td>
+    <td class="It-column">Returns the position of str2 in str1 or zero if it's
+      not present (first character is position 1).</td>
+  </tr>
+  <tr class="It-column">
+    <td class="It-column"><a class="selflink" href="#STRSUB(str,pos,len)"><code class="Li" id="STRSUB(str,pos,len)">STRSUB(str,pos,len)</code></a></td>
+    <td class="It-column">Returns a substring from str starting at pos (first
+      character is position 1) and with len characters.</td>
+  </tr>
+  <tr class="It-column">
+    <td class="It-column"><a class="selflink" href="#STRUPR(str)"><code class="Li" id="STRUPR(str)">STRUPR(str)</code></a></td>
+    <td class="It-column">Converts all characters in str to capitals and returns
+      the new string.</td>
+  </tr>
+  <tr class="It-column">
+    <td class="It-column"><a class="selflink" href="#STRLWR(str)"><code class="Li" id="STRLWR(str)">STRLWR(str)</code></a></td>
+    <td class="It-column">Converts all characters in str to lower case and
+      returns the new string.</td>
+  </tr>
+</table>
+<h2 class="Ss" title="Ss" id="Other_functions"><a class="selflink" href="#Other_functions">Other
+  functions</a></h2>
+There are a few other functions that do various useful things:
+<table class="Bl-column">
+  <colgroup>
+    <col style="width: 15.00ex;"/>
+    <col style="min-width: 10.00ex;"/>
+  </colgroup>
+  <tr class="It-column">
+    <td class="It-column"><b class="Sy" title="Sy">Name</b></td>
+    <td class="It-column"></td>
+    <td class="It-column"></td>
+    <td class="It-column"><b class="Sy" title="Sy">Operation</b></td>
+  </tr>
+  <tr class="It-column">
+    <td class="It-column"><a class="selflink" href="#BANK(@/str/lbl)"><code class="Li" id="BANK(@/str/lbl)">BANK(@/str/lbl)</code></a></td>
+    <td class="It-column">Returns a bank number. If the argument is the symbol
+      <b class="Ic" title="Ic">@,</b> this function returns the bank of the
+      current section. If the argument is a string, it returns the bank of the
+      section that has that name. If the argument is a label, it returns the
+      bank number the label is in. For labels, as the linker has to resolve
+      this, it can't be used when the expression has to be constant.</td>
+  </tr>
+  <tr class="It-column">
+    <td class="It-column"><a class="selflink" href="#DEF(label)"><code class="Li" id="DEF(label)">DEF(label)</code></a></td>
+    <td class="It-column">Returns TRUE if label has been defined.</td>
+  </tr>
+  <tr class="It-column">
+    <td class="It-column"><a class="selflink" href="#HIGH(r16/cnst/lbl)"><code class="Li" id="HIGH(r16/cnst/lbl)">HIGH(r16/cnst/lbl)</code></a></td>
+    <td class="It-column">Returns the top 8 bits of the operand if it is a label
+      or constant, or the top 8-bit register if it is a 16-bit register.</td>
+  </tr>
+  <tr class="It-column">
+    <td class="It-column"><a class="selflink" href="#LOW(r16/cnst/lbl)"><code class="Li" id="LOW(r16/cnst/lbl)">LOW(r16/cnst/lbl)</code></a></td>
+    <td class="It-column">Returns the bottom 8 bits of the operand if it is a
+      label or constant, or the bottom 8-bit register if it is a 16-bit register
+      (AF isn't a valid register for this function).</td>
+  </tr>
+</table>
+<h1 class="Sh" title="Sh" id="MISCELLANEOUS"><a class="selflink" href="#MISCELLANEOUS">MISCELLANEOUS</a></h1>
+<h2 class="Ss" title="Ss" id="Changing_options_while_assembling"><a class="selflink" href="#Changing_options_while_assembling">Changing
+  options while assembling</a></h2>
+<b class="Ic" title="Ic">OPT</b> can be used to change some of the options
+  during assembling the source instead of defining them on the commandline.
+<div class="Pp"></div>
+<b class="Ic" title="Ic">OPT</b> takes a comma-seperated list of options as its
+  argument:
+<div class="Pp"></div>
+<div class="Bd" style="margin-left: 5.00ex;">
+<pre class="Li">
+PUSHO 
+OPT   g.oOX ;Set the GB graphics constants to use these characters 
+DW    `..ooOOXX 
+POPO 
+DW    `00112233
+</pre>
+</div>
+<div class="Pp"></div>
+The options that OPT can modify are currently: <b class="Sy" title="Sy">b</b>,
+  <b class="Sy" title="Sy">e</b> and <b class="Sy" title="Sy">g</b>.
+<div class="Pp"></div>
+<b class="Ic" title="Ic">POPO</b> and <b class="Ic" title="Ic">PUSHO</b> provide
+  the interface to the option stack. <b class="Ic" title="Ic">PUSHO</b> will
+  push the current set of options on the option stack.
+  <b class="Ic" title="Ic">POPO</b> can then later be used to restore them.
+  Useful if you want to change some options in an include file and you don't
+  want to destroy the options set by the program that included your file. The
+  stacks number of entries is limited only by the amount of memory in your
+  machine.
+<h1 class="Sh" title="Sh" id="ALPHABETICAL_LIST_OF_KEYWORDS"><a class="selflink" href="#ALPHABETICAL_LIST_OF_KEYWORDS">ALPHABETICAL
+  LIST OF KEYWORDS</a></h1>
+<dl class="Bl-inset Bl-compact">
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#@">@</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#__DATE__">__DATE__</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#__FILE__">__FILE__</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#__ISO_8601_LOCAL__">__ISO_8601_LOCAL__</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#__ISO_8601_UTC__">__ISO_8601_UTC__</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#__LINE__">__LINE__</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#__TIME__">__TIME__</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#__RGBDS_MAJOR__">__RGBDS_MAJOR__</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#__RGBDS_MINOR__">__RGBDS_MINOR__</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#__RGBDS_PATCH__">__RGBDS_PATCH__</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#__UTC_YEAR__">__UTC_YEAR__</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#__UTC_MONTH__">__UTC_MONTH__</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#__UTC_DAY__">__UTC_DAY__</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#__UTC_HOUR__">__UTC_HOUR__</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#__UTC_MINUTE__">__UTC_MINUTE__</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#__UTC_SECOND__">__UTC_SECOND__</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#_NARG">_NARG</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#_PI">_PI</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#_RS">_RS</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#ACOS">ACOS</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#ASIN">ASIN</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#ATAN">ATAN</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#ATAN2">ATAN2</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#BANK">BANK</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#COS">COS</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#DB">DB</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#DEF">DEF</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#DIV">DIV</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#DL">DL</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#DS">DS</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#DW">DW</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#ELIF">ELIF</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#ELSE">ELSE</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#ENDC">ENDC</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#ENDM">ENDM</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#ENDR">ENDR</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#EQU">EQU</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#EQUS">EQUS</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#EXPORT">EXPORT</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#FAIL">FAIL</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#GLOBAL">GLOBAL</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#HIGH">HIGH</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#HRAM">HRAM</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#IF">IF</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#INCBIN">INCBIN</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#INCLUDE">INCLUDE</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#LOW">LOW</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#MACRO">MACRO</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#MUL">MUL</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#OPT">OPT</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#POPO">POPO</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#POPS">POPS</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#PRINTF">PRINTF</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#PRINTT">PRINTT</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#PRINTV">PRINTV</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#PURGE">PURGE</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#PUSHO">PUSHO</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#PUSHS">PUSHS</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#REPT">REPT</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#RB">RB</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#RL">RL</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#ROM0">ROM0</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#ROMX">ROMX</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#RSRESET">RSRESET</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#RSSET">RSSET</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#RW">RW</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#SECTION">SECTION</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#SET">SET</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#SHIFT">SHIFT</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#SIN">SIN</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#SRAM">SRAM</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#STRCAT">STRCAT</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#STRCMP">STRCMP</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#STRIN">STRIN</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#STRLEN">STRLEN</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#STRLWR">STRLWR</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#STRSUB">STRSUB</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#STRUPR">STRUPR</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#TAN">TAN</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#VRAM">VRAM</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#WRAM0">WRAM0</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#WRAMX">WRAMX</a></dt>
+  <dd class="It-inset"></dd>
+  <dt class="It-inset"><a class="Sx" title="Sx" href="#WARN">WARN</a></dt>
+  <dd class="It-inset"></dd>
+</dl>
+<h1 class="Sh" title="Sh" id="SEE_ALSO"><a class="selflink" href="#SEE_ALSO">SEE
+  ALSO</a></h1>
+<a class="Xr" title="Xr">rgbasm(1)</a>, <a class="Xr" title="Xr">rgblink(1)</a>,
+  <a class="Xr" title="Xr">rgblink(5)</a>,
+  <a class="Xr" title="Xr">rgbds(5)</a>, <a class="Xr" title="Xr">rgbds(7)</a>,
+  <a class="Xr" title="Xr">gbz80(7)</a>
+<h1 class="Sh" title="Sh" id="HISTORY"><a class="selflink" href="#HISTORY">HISTORY</a></h1>
+<b class="Nm" title="Nm">rgbds</b> was originally written by Carsten
+  S&#x00F8;rensen as part of the ASMotor package, and was later packaged in
+  RGBDS by Justin Lloyd. It is now maintained by a number of contributors at
+  <a class="Lk" title="Lk" href="https://github.com/rednex/rgbds">https://github.com/rednex/rgbds</a>.</div>
+<table class="foot">
+  <tr>
+    <td class="foot-date">January 7, 2018</td>
+    <td class="foot-os">RGBDS Manual</td>
+  </tr>
+</table>
+</body>
+</html>
--- /dev/null
+++ b/docs/rgbds.5.html
@@ -1,0 +1,306 @@
+<!DOCTYPE html>
+<html>
+<head>
+  <meta charset="utf-8"/>
+  <style>
+    table.head, table.foot { width: 100%; }
+    td.head-rtitle, td.foot-os { text-align: right; }
+    td.head-vol { text-align: center; }
+    div.Pp { margin: 1ex 0ex; }
+  </style>
+  <link rel="stylesheet" href="manual.css" type="text/css" media="all"/>
+  <title>RGBDS(5)</title>
+</head>
+<body>
+<table class="head">
+  <tr>
+    <td class="head-ltitle">RGBDS(5)</td>
+    <td class="head-vol">File Formats Manual</td>
+    <td class="head-rtitle">RGBDS(5)</td>
+  </tr>
+</table>
+<div class="manual-text">
+<h1 class="Sh" title="Sh" id="NAME"><a class="selflink" href="#NAME">NAME</a></h1>
+<b class="Nm" title="Nm">rgbds</b> &#x2014; <span class="Nd" title="Nd">object
+  file format documentation</span>
+<h1 class="Sh" title="Sh" id="DESCRIPTION"><a class="selflink" href="#DESCRIPTION">DESCRIPTION</a></h1>
+This is the description of the object files used by
+  <a class="Xr" title="Xr">rgbasm(1)</a> and
+  <a class="Xr" title="Xr">rgblink(1)</a>. Please, note that the specifications
+  may change. This toolchain is in development and new features may require
+  adding more information to the current format, or modifying some fields, which
+  would break compatibility with older versions.
+<h1 class="Sh" title="Sh" id="FILE_STRUCTURE"><a class="selflink" href="#FILE_STRUCTURE">FILE
+  STRUCTURE</a></h1>
+The following types are used:
+<div class="Pp"></div>
+<var class="Ar" title="Ar">LONG</var> is a 32&#x2010;bit integer stored in
+  little&#x2010;endian format (Intel). <var class="Ar" title="Ar">BYTE</var> is
+  an 8&#x2010;bit integer. <var class="Ar" title="Ar">STRING</var> is a
+  0&#x2010;terminated string of <var class="Ar" title="Ar">BYTE</var>.
+<div class="Pp"></div>
+<div class="Bd" style="margin-left: 0.00ex;">
+<pre class="Li">
+; Header 
+ 
+BYTE    ID[4]            ; &quot;RGB6&quot; 
+LONG    NumberOfSymbols  ; The number of symbols used in this file 
+LONG    NumberOfSections ; The number of sections used in this file 
+ 
+; Symbols 
+ 
+REPT    NumberOfSymbols   ; Number of symbols defined in this object file. 
+ 
+    STRING  Name          ; The name of this symbol. Local symbols are stored 
+                          ; as &quot;Scope.Symbol&quot;. 
+ 
+    BYTE    Type          ; 0 = LOCAL symbol only used in this file. 
+                          ; 1 = IMPORT this symbol from elsewhere (unused). 
+                          ; 2 = EXPORT this symbol to other objects. 
+ 
+    IF      Type != 1     ; If symbol is defined in this object file. 
+ 
+        STRING  FileName  ; File where the symbol is defined. 
+ 
+        LONG    LineNum   ; Line number in the file where the symbol is defined. 
+ 
+        LONG    SectionID ; The section number (of this object file) in which 
+                          ; this symbol is defined. 
+ 
+        LONG    Value     ; The symbols value. It's the offset into that 
+                          ; symbol's section. 
+ 
+    ENDC 
+ 
+ENDR 
+ 
+; Sections 
+ 
+REPT NumberOfSections 
+    STRING  Name  ; Name of the section 
+ 
+    LONG    Size  ; Size in bytes of this section 
+ 
+    BYTE    Type  ; 0 = WRAM0 
+                  ; 1 = VRAM 
+                  ; 2 = ROMX 
+                  ; 3 = ROM0 
+                  ; 4 = HRAM 
+                  ; 5 = WRAMX 
+                  ; 6 = SRAM 
+                  ; 7 = OAM 
+ 
+    LONG    Org   ; Address to fix this section at. -1 if the linker should 
+                  ; decide (floating address). 
+ 
+    LONG    Bank  ; Bank to load this section into. -1 if the linker should 
+                  ; decide (floating bank). This field is only valid for ROMX, 
+                  ; VRAM, WRAMX and SRAM sections. 
+ 
+    LONG    Align ; Alignment of this section (expressed as number of low bits 
+                  ; to leave as 0). -1 if not defined. 
+ 
+    IF      (Type == ROMX) || (Type == ROM0) ; Sections that can contain data. 
+ 
+        BYTE    Data[Size]      ; Raw data of the section. 
+ 
+        LONG    NumberOfPatches ; Number of patches to apply. 
+ 
+        ; These types of sections may have patches 
+ 
+        REPT    NumberOfPatches 
+ 
+            STRING  SourceFile   ; Name of the source file (for printing error 
+                                 ; messages). 
+ 
+            LONG    Line         ; The line of the source file. 
+ 
+            LONG    Offset       ; Offset into the section where patch should 
+                                 ; be applied (in bytes). 
+ 
+            BYTE    Type         ; 0 = BYTE patch. 
+                                 ; 1 = little endian WORD patch. 
+                                 ; 2 = little endian LONG patch. 
+ 
+            LONG    RPNSize      ; Size of the buffer with the RPN. 
+                                 ; expression. 
+ 
+            BYTE    RPN[RPNSize] ; RPN expression. Definition below. 
+ 
+        ENDR 
+ 
+    ENDC 
+ 
+ENDR
+</pre>
+</div>
+<h2 class="Ss" title="Ss" id="RPN_DATA"><a class="selflink" href="#RPN_DATA">RPN
+  DATA</a></h2>
+Expressions in the object file are stored as RPN. This is an expression of the
+  form &#x201C;2 5 +&#x201D;. This will first push the value &#x201C;2&#x201D;
+  to the stack. Then &#x201C;5&#x201D;. The &#x201C;+&#x201D; 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 BYTEs with some bytes being special prefixes for
+  integers and symbols.
+<table class="Bl-column" style="margin-left: 6.00ex;">
+  <colgroup>
+    <col style="width: 15.00ex;"/>
+    <col style="min-width: 10.00ex;"/>
+  </colgroup>
+  <tr class="It-column">
+    <td class="It-column"><b class="Sy" title="Sy">Value</b></td>
+    <td class="It-column"><b class="Sy" title="Sy">Meaning</b></td>
+  </tr>
+  <tr class="It-column">
+    <td class="It-column"><a class="selflink" href="#$00"><code class="Li" id="$00">$00</code></a></td>
+    <td class="It-column"><a class="selflink" href="#+_operator"><code class="Li" id="+_operator">+
+      operator</code></a></td>
+  </tr>
+  <tr class="It-column">
+    <td class="It-column"><a class="selflink" href="#$01"><code class="Li" id="$01">$01</code></a></td>
+    <td class="It-column"><a class="selflink" href="#-_operator"><code class="Li" id="-_operator">-
+      operator</code></a></td>
+  </tr>
+  <tr class="It-column">
+    <td class="It-column"><a class="selflink" href="#$02"><code class="Li" id="$02">$02</code></a></td>
+    <td class="It-column"><a class="selflink" href="#*_operator"><code class="Li" id="*_operator">*
+      operator</code></a></td>
+  </tr>
+  <tr class="It-column">
+    <td class="It-column"><a class="selflink" href="#$03"><code class="Li" id="$03">$03</code></a></td>
+    <td class="It-column"><a class="selflink" href="#/_operator"><code class="Li" id="/_operator">/
+      operator</code></a></td>
+  </tr>
+  <tr class="It-column">
+    <td class="It-column"><a class="selflink" href="#$04"><code class="Li" id="$04">$04</code></a></td>
+    <td class="It-column"><a class="selflink" href="#%_operator"><code class="Li" id="%_operator">%
+      operator</code></a></td>
+  </tr>
+  <tr class="It-column">
+    <td class="It-column"><a class="selflink" href="#$05"><code class="Li" id="$05">$05</code></a></td>
+    <td class="It-column"><a class="selflink" href="#unary_-"><code class="Li" id="unary_-">unary
+      -</code></a></td>
+  </tr>
+  <tr class="It-column">
+    <td class="It-column"><a class="selflink" href="#$10"><code class="Li" id="$10">$10</code></a></td>
+    <td class="It-column">|
+      <a class="selflink" href="#operator"><code class="Li" id="operator">operator</code></a></td>
+  </tr>
+  <tr class="It-column">
+    <td class="It-column"><a class="selflink" href="#$11"><code class="Li" id="$11">$11</code></a></td>
+    <td class="It-column"><a class="selflink" href="#&amp;_operator"><code class="Li" id="&amp;_operator">&amp;
+      operator</code></a></td>
+  </tr>
+  <tr class="It-column">
+    <td class="It-column"><a class="selflink" href="#$12"><code class="Li" id="$12">$12</code></a></td>
+    <td class="It-column"><a class="selflink" href="#^_operator"><code class="Li" id="^_operator">^
+      operator</code></a></td>
+  </tr>
+  <tr class="It-column">
+    <td class="It-column"><a class="selflink" href="#$13"><code class="Li" id="$13">$13</code></a></td>
+    <td class="It-column"><a class="selflink" href="#unary_~"><code class="Li" id="unary_~">unary
+      ~</code></a></td>
+  </tr>
+  <tr class="It-column">
+    <td class="It-column"><a class="selflink" href="#$21"><code class="Li" id="$21">$21</code></a></td>
+    <td class="It-column"><a class="selflink" href="#&amp;&amp;_comparison"><code class="Li" id="&amp;&amp;_comparison">&amp;&amp;
+      comparison</code></a></td>
+  </tr>
+  <tr class="It-column">
+    <td class="It-column"><a class="selflink" href="#$22"><code class="Li" id="$22">$22</code></a></td>
+    <td class="It-column"><a class="selflink" href="#||_comparison"><code class="Li" id="||_comparison">||
+      comparison</code></a></td>
+  </tr>
+  <tr class="It-column">
+    <td class="It-column"><a class="selflink" href="#$23"><code class="Li" id="$23">$23</code></a></td>
+    <td class="It-column"><a class="selflink" href="#unary"><code class="Li" id="unary">unary</code></a>!</td>
+  </tr>
+  <tr class="It-column">
+    <td class="It-column"><a class="selflink" href="#$30"><code class="Li" id="$30">$30</code></a></td>
+    <td class="It-column"><a class="selflink" href="#==_comparison"><code class="Li" id="==_comparison">==
+      comparison</code></a></td>
+  </tr>
+  <tr class="It-column">
+    <td class="It-column"><a class="selflink" href="#$31"><code class="Li" id="$31">$31</code></a></td>
+    <td class="It-column"><a class="selflink" href="#!=_comparison"><code class="Li" id="!=_comparison">!=
+      comparison</code></a></td>
+  </tr>
+  <tr class="It-column">
+    <td class="It-column"><a class="selflink" href="#$32"><code class="Li" id="$32">$32</code></a></td>
+    <td class="It-column"><a class="selflink" href="#&gt;_comparison"><code class="Li" id="&gt;_comparison">&gt;
+      comparison</code></a></td>
+  </tr>
+  <tr class="It-column">
+    <td class="It-column"><a class="selflink" href="#$33"><code class="Li" id="$33">$33</code></a></td>
+    <td class="It-column"><a class="selflink" href="#&lt;_comparison"><code class="Li" id="&lt;_comparison">&lt;
+      comparison</code></a></td>
+  </tr>
+  <tr class="It-column">
+    <td class="It-column"><a class="selflink" href="#$34"><code class="Li" id="$34">$34</code></a></td>
+    <td class="It-column"><a class="selflink" href="#&gt;=_comparison"><code class="Li" id="&gt;=_comparison">&gt;=
+      comparison</code></a></td>
+  </tr>
+  <tr class="It-column">
+    <td class="It-column"><a class="selflink" href="#$35"><code class="Li" id="$35">$35</code></a></td>
+    <td class="It-column"><a class="selflink" href="#&lt;=_comparison"><code class="Li" id="&lt;=_comparison">&lt;=
+      comparison</code></a></td>
+  </tr>
+  <tr class="It-column">
+    <td class="It-column"><a class="selflink" href="#$40"><code class="Li" id="$40">$40</code></a></td>
+    <td class="It-column"><a class="selflink" href="#&lt;&lt;_comparison"><code class="Li" id="&lt;&lt;_comparison">&lt;&lt;
+      comparison</code></a></td>
+  </tr>
+  <tr class="It-column">
+    <td class="It-column"><a class="selflink" href="#$41"><code class="Li" id="$41">$41</code></a></td>
+    <td class="It-column"><a class="selflink" href="#&gt;&gt;_comparison"><code class="Li" id="&gt;&gt;_comparison">&gt;&gt;
+      comparison</code></a></td>
+  </tr>
+  <tr class="It-column">
+    <td class="It-column"><a class="selflink" href="#$50"><code class="Li" id="$50">$50</code></a></td>
+    <td class="It-column"><a class="selflink" href="#BANK(symbol),"><code class="Li" id="BANK(symbol),">BANK(symbol),</code></a>
+      a <var class="Ar" title="Ar">LONG</var> Symbol ID follows.</td>
+  </tr>
+  <tr class="It-column">
+    <td class="It-column"><a class="selflink" href="#$51"><code class="Li" id="$51">$51</code></a></td>
+    <td class="It-column"><a class="selflink" href="#BANK(section_name),"><code class="Li" id="BANK(section_name),">BANK(section_name),</code></a>
+      a null-terminated string follows.</td>
+  </tr>
+  <tr class="It-column">
+    <td class="It-column"><a class="selflink" href="#$52"><code class="Li" id="$52">$52</code></a></td>
+    <td class="It-column"><a class="selflink" href="#Current_BANK()"><code class="Li" id="Current_BANK()">Current
+      BANK()</code></a>.</td>
+  </tr>
+  <tr class="It-column">
+    <td class="It-column"><a class="selflink" href="#$60"><code class="Li" id="$60">$60</code></a></td>
+    <td class="It-column"><a class="selflink" href="#HRAMCheck."><code class="Li" id="HRAMCheck.">HRAMCheck.</code></a>
+      Check if the value is in HRAM, AND it with 0xFF.</td>
+  </tr>
+  <tr class="It-column">
+    <td class="It-column"><a class="selflink" href="#$80"><code class="Li" id="$80">$80</code></a></td>
+    <td class="It-column"><var class="Ar" title="Ar">LONG</var> integer
+      follows.</td>
+  </tr>
+  <tr class="It-column">
+    <td class="It-column"><a class="selflink" href="#$81"><code class="Li" id="$81">$81</code></a></td>
+    <td class="It-column"><var class="Ar" title="Ar">LONG</var> Symbol ID
+      follows.</td>
+  </tr>
+</table>
+<h1 class="Sh" title="Sh" id="SEE_ALSO"><a class="selflink" href="#SEE_ALSO">SEE
+  ALSO</a></h1>
+<a class="Xr" title="Xr">rgbasm(1)</a>, <a class="Xr" title="Xr">rgblink(1)</a>,
+  <a class="Xr" title="Xr">rgbds(7)</a>, <a class="Xr" title="Xr">gbz80(7)</a>
+<h1 class="Sh" title="Sh" id="HISTORY"><a class="selflink" href="#HISTORY">HISTORY</a></h1>
+<b class="Nm" title="Nm">rgbds</b> was originally written by Carsten
+  S&#x00F8;rensen as part of the ASMotor package, and was later packaged in
+  RGBDS by Justin Lloyd. It is now maintained by a number of contributors at
+  <a class="Lk" title="Lk" href="https://github.com/rednex/rgbds">https://github.com/rednex/rgbds</a>.</div>
+<table class="foot">
+  <tr>
+    <td class="foot-date">January 7, 2018</td>
+    <td class="foot-os">RGBDS Manual</td>
+  </tr>
+</table>
+</body>
+</html>
--- /dev/null
+++ b/docs/rgbfix.1.html
@@ -1,0 +1,187 @@
+<!DOCTYPE html>
+<html>
+<head>
+  <meta charset="utf-8"/>
+  <style>
+    table.head, table.foot { width: 100%; }
+    td.head-rtitle, td.foot-os { text-align: right; }
+    td.head-vol { text-align: center; }
+    div.Pp { margin: 1ex 0ex; }
+  </style>
+  <link rel="stylesheet" href="manual.css" type="text/css" media="all"/>
+  <title>RGBFIX(1)</title>
+</head>
+<body>
+<table class="head">
+  <tr>
+    <td class="head-ltitle">RGBFIX(1)</td>
+    <td class="head-vol">General Commands Manual</td>
+    <td class="head-rtitle">RGBFIX(1)</td>
+  </tr>
+</table>
+<div class="manual-text">
+<h1 class="Sh" title="Sh" id="NAME"><a class="selflink" href="#NAME">NAME</a></h1>
+<b class="Nm" title="Nm">rgbfix</b> &#x2014; <span class="Nd" title="Nd">Game
+  Boy checksum fixer</span>
+<h1 class="Sh" title="Sh" id="SYNOPSIS"><a class="selflink" href="#SYNOPSIS">SYNOPSIS</a></h1>
+<table class="Nm">
+  <tr>
+    <td><b class="Nm" title="Nm">rgbfix</b></td>
+    <td>[<span class="Op"><b class="Fl" title="Fl">-CcjsVv</b></span>]
+      [<span class="Op"><b class="Fl" title="Fl">-i</b>
+      <var class="Ar" title="Ar">game_id</var></span>]
+      [<span class="Op"><b class="Fl" title="Fl">-k</b>
+      <var class="Ar" title="Ar">licensee_str</var></span>]
+      [<span class="Op"><b class="Fl" title="Fl">-l</b>
+      <var class="Ar" title="Ar">licensee_id</var></span>]
+      [<span class="Op"><b class="Fl" title="Fl">-m</b>
+      <var class="Ar" title="Ar">mbc_type</var></span>]
+      [<span class="Op"><b class="Fl" title="Fl">-n</b>
+      <var class="Ar" title="Ar">rom_version</var></span>]
+      [<span class="Op"><b class="Fl" title="Fl">-p</b>
+      <var class="Ar" title="Ar">pad_value</var></span>]
+      [<span class="Op"><b class="Fl" title="Fl">-r</b>
+      <var class="Ar" title="Ar">ram_size</var></span>]
+      [<span class="Op"><b class="Fl" title="Fl">-t</b>
+      <var class="Ar" title="Ar">title_str</var></span>]
+      <var class="Ar" title="Ar">file</var></td>
+  </tr>
+</table>
+<h1 class="Sh" title="Sh" id="DESCRIPTION"><a class="selflink" href="#DESCRIPTION">DESCRIPTION</a></h1>
+The <b class="Nm" title="Nm">rgbfix</b> program changes headers of Game Boy ROM
+  images. It also performs other filetype operations, such as truncation. The
+  arguments are as follows:
+<dl class="Bl-tag">
+  <dt class="It-tag">&#x00A0;</dt>
+  <dd class="It-tag">&#x00A0;</dd>
+  <dt class="It-tag"><a class="selflink" href="#C"><b class="Fl" title="Fl" id="C">-C</b></a></dt>
+  <dd class="It-tag">Set the Game Boy Color&#x2013;only flag:
+      <i class="Ad">0x143</i> = 0xC0. If both this and the
+      <b class="Fl" title="Fl">-c</b> flag are set, this takes precedence.</dd>
+  <dt class="It-tag">&#x00A0;</dt>
+  <dd class="It-tag">&#x00A0;</dd>
+  <dt class="It-tag"><a class="selflink" href="#c"><b class="Fl" title="Fl" id="c">-c</b></a></dt>
+  <dd class="It-tag">Set the Game Boy Color&#x2013;compatible flag:
+      <i class="Ad">0x143</i> = 0x80. If both this and the
+      <b class="Fl" title="Fl">-C</b> flag are set,
+      <b class="Fl" title="Fl">-C</b> takes precedence.</dd>
+  <dt class="It-tag">&#x00A0;</dt>
+  <dd class="It-tag">&#x00A0;</dd>
+  <dt class="It-tag"><a class="selflink" href="#i"><b class="Fl" title="Fl" id="i">-i</b></a>
+    <var class="Ar" title="Ar">game_id</var></dt>
+  <dd class="It-tag">Set the game ID string
+      (<i class="Ad">0x13F</i>&#x2013;<i class="Ad">0x142</i>) to a given string
+      of exactly 4 characters. If both this and the title are set, the game ID
+      will overwrite the overlapping portion of the title.</dd>
+  <dt class="It-tag">&#x00A0;</dt>
+  <dd class="It-tag">&#x00A0;</dd>
+  <dt class="It-tag"><a class="selflink" href="#j"><b class="Fl" title="Fl" id="j">-j</b></a></dt>
+  <dd class="It-tag">Set the non-Japanese region flag: <i class="Ad">0x14A</i> =
+      1.</dd>
+  <dt class="It-tag">&#x00A0;</dt>
+  <dd class="It-tag">&#x00A0;</dd>
+  <dt class="It-tag"><a class="selflink" href="#k"><b class="Fl" title="Fl" id="k">-k</b></a>
+    <var class="Ar" title="Ar">licensee_str</var></dt>
+  <dd class="It-tag">Set the new licensee string
+      (<i class="Ad">0x144</i>&#x2013;<i class="Ad">0x145</i>) to a given
+      string, truncated to at most two characters.</dd>
+  <dt class="It-tag">&#x00A0;</dt>
+  <dd class="It-tag">&#x00A0;</dd>
+  <dt class="It-tag"><a class="selflink" href="#l"><b class="Fl" title="Fl" id="l">-l</b></a>
+    <var class="Ar" title="Ar">licensee_id</var></dt>
+  <dd class="It-tag">Set the old licensee code, <i class="Ad">0x14B</i>, to a
+      given value from 0 to 0xFF. This value is deprecated and should be set to
+      0x33 in all new software.</dd>
+  <dt class="It-tag">&#x00A0;</dt>
+  <dd class="It-tag">&#x00A0;</dd>
+  <dt class="It-tag"><a class="selflink" href="#m"><b class="Fl" title="Fl" id="m">-m</b></a>
+    <var class="Ar" title="Ar">mbc_type</var></dt>
+  <dd class="It-tag">Set the MBC type, <i class="Ad">0x147</i>, to a given value
+      from 0 to 0xFF.</dd>
+  <dt class="It-tag">&#x00A0;</dt>
+  <dd class="It-tag">&#x00A0;</dd>
+  <dt class="It-tag"><a class="selflink" href="#n"><b class="Fl" title="Fl" id="n">-n</b></a>
+    <var class="Ar" title="Ar">rom_version</var></dt>
+  <dd class="It-tag">Set the ROM version, <i class="Ad">0x14C</i>, to a given
+      value from 0 to 0xFF.</dd>
+  <dt class="It-tag">&#x00A0;</dt>
+  <dd class="It-tag">&#x00A0;</dd>
+  <dt class="It-tag"><a class="selflink" href="#p"><b class="Fl" title="Fl" id="p">-p</b></a>
+    <var class="Ar" title="Ar">pad_value</var></dt>
+  <dd class="It-tag">Pad the image to a valid size with a given pad value from 0
+      to 0xFF. <b class="Nm" title="Nm">rgbfix</b> will automatically pick a
+      size from 32KiB, 64KiB, 128KiB, ..., 8192KiB and give a warning
+      thereafter. The cartridge size byte (<i class="Ad">0x148</i>) will be
+      changed to reflect this new size.</dd>
+  <dt class="It-tag">&#x00A0;</dt>
+  <dd class="It-tag">&#x00A0;</dd>
+  <dt class="It-tag"><a class="selflink" href="#r"><b class="Fl" title="Fl" id="r">-r</b></a>
+    <var class="Ar" title="Ar">ram_size</var></dt>
+  <dd class="It-tag">Set the RAM size, <i class="Ad">0x149</i>, to a given value
+      from 0 to 0xFF.</dd>
+  <dt class="It-tag">&#x00A0;</dt>
+  <dd class="It-tag">&#x00A0;</dd>
+  <dt class="It-tag"><a class="selflink" href="#s"><b class="Fl" title="Fl" id="s">-s</b></a></dt>
+  <dd class="It-tag">Set the SGB flag: <i class="Ad">0x146</i> = 3.</dd>
+  <dt class="It-tag">&#x00A0;</dt>
+  <dd class="It-tag">&#x00A0;</dd>
+  <dt class="It-tag"><a class="selflink" href="#t"><b class="Fl" title="Fl" id="t">-t</b></a>
+    <var class="Ar" title="Ar">title</var></dt>
+  <dd class="It-tag">Set the title string
+      (<i class="Ad">0x134</i>&#x2013;<i class="Ad">0x143</i>) to a given
+      string, truncated to at most 16 characters. It is recommended to use 15
+      characters instead, to avoid clashing with the CGB flag
+      (<b class="Fl" title="Fl">-c</b> or <b class="Fl" title="Fl">-C</b>). If
+      both this and the game ID are set, the game ID will overwrite the
+      overlapping portion of the title.</dd>
+  <dt class="It-tag">&#x00A0;</dt>
+  <dd class="It-tag">&#x00A0;</dd>
+  <dt class="It-tag"><a class="selflink" href="#V"><b class="Fl" title="Fl" id="V">-V</b></a></dt>
+  <dd class="It-tag">Print the version of the program and exit.</dd>
+  <dt class="It-tag">&#x00A0;</dt>
+  <dd class="It-tag">&#x00A0;</dd>
+  <dt class="It-tag"><a class="selflink" href="#v"><b class="Fl" title="Fl" id="v">-v</b></a></dt>
+  <dd class="It-tag">Validate the header and fix checksums: the Nintendo
+      character area (<i class="Ad">0x104</i>&#x2013;<i class="Ad">0x133</i>),
+      the header checksum (<i class="Ad">0x14D</i>), and the global checksum
+      (<i class="Ad">0x14E</i>&#x2013;<i class="Ad">0x14F</i>).</dd>
+</dl>
+<h1 class="Sh" title="Sh" id="EXAMPLES"><a class="selflink" href="#EXAMPLES">EXAMPLES</a></h1>
+Most values in the ROM header are only cosmetic. The bare minimum requirements
+  for a workable image are checksums, the Nintendo logo, and (if needed) the
+  CGB/SGB flags. It is a good idea to pad the image to a valid size as well
+  (&#x201C;valid&#x201D; meaning a multiple of 32KiB).
+<div class="Pp"></div>
+The following will make a plain, no-color Game Boy game without checking for a
+  valid size:
+<div class="Pp"></div>
+<div class="D1">$ rgbfix -v foo.gb</div>
+<div class="Pp"></div>
+The following will make a SGB-enabled, color-enabled game with a title of
+  &#x201C;foobar&#x201D;, and pad it to a multiple of 32KiB. (The Game Boy
+  itself does not use the title, but some emulators or ROM managers might.)
+<div class="Pp"></div>
+<div class="D1">$ rgbfix -vcs -l 0x33 -p 0 -t foobar baz.gb</div>
+<div class="Pp"></div>
+The following will duplicate the header (sans global checksum) of the game
+  &#x201C;Survival Kids&#x201D;:
+<div class="Pp"></div>
+<div class="D1">$ rgbfix -cjsv -k A4 -l 0x33 -m 0x1B -p 0xFF -r 3 -t
+  SURVIVALKIDAVKE SurvivalKids.gbc</div>
+<h1 class="Sh" title="Sh" id="SEE_ALSO"><a class="selflink" href="#SEE_ALSO">SEE
+  ALSO</a></h1>
+<a class="Xr" title="Xr">rgbasm(1)</a>, <a class="Xr" title="Xr">rgblink(1)</a>,
+  <a class="Xr" title="Xr">rgbds(7)</a>
+<h1 class="Sh" title="Sh" id="HISTORY"><a class="selflink" href="#HISTORY">HISTORY</a></h1>
+<b class="Nm" title="Nm">rgbfix</b> was originally released by Carsten
+  S&#x00F8;rensen as a standalone program called gbfix, and was later packaged
+  in RGBDS by Justin Lloyd. It is now maintained by a number of contributors at
+  <a class="Lk" title="Lk" href="https://github.com/rednex/rgbds">https://github.com/rednex/rgbds</a>.</div>
+<table class="foot">
+  <tr>
+    <td class="foot-date">April 17, 2017</td>
+    <td class="foot-os">RGBDS Manual</td>
+  </tr>
+</table>
+</body>
+</html>
--- /dev/null
+++ b/docs/rgbgfx.1.html
@@ -1,0 +1,153 @@
+<!DOCTYPE html>
+<html>
+<head>
+  <meta charset="utf-8"/>
+  <style>
+    table.head, table.foot { width: 100%; }
+    td.head-rtitle, td.foot-os { text-align: right; }
+    td.head-vol { text-align: center; }
+    div.Pp { margin: 1ex 0ex; }
+  </style>
+  <link rel="stylesheet" href="manual.css" type="text/css" media="all"/>
+  <title>RGBGFX(1)</title>
+</head>
+<body>
+<table class="head">
+  <tr>
+    <td class="head-ltitle">RGBGFX(1)</td>
+    <td class="head-vol">General Commands Manual</td>
+    <td class="head-rtitle">RGBGFX(1)</td>
+  </tr>
+</table>
+<div class="manual-text">
+<h1 class="Sh" title="Sh" id="NAME"><a class="selflink" href="#NAME">NAME</a></h1>
+<b class="Nm" title="Nm">rgbgfx</b> &#x2014; <span class="Nd" title="Nd">Game
+  Boy graphics converter</span>
+<h1 class="Sh" title="Sh" id="SYNOPSIS"><a class="selflink" href="#SYNOPSIS">SYNOPSIS</a></h1>
+<table class="Nm">
+  <tr>
+    <td><b class="Nm" title="Nm">rgbgfx</b></td>
+    <td>[<span class="Op"><b class="Fl" title="Fl">-DfFhPTVv</b></span>]
+      [<span class="Op"><b class="Fl" title="Fl">-o</b>
+      <var class="Ar" title="Ar">outfile</var></span>]
+      [<span class="Op"><b class="Fl" title="Fl">-d</b>
+      <var class="Ar" title="Ar">depth</var></span>]
+      [<span class="Op"><b class="Fl" title="Fl">-p</b>
+      <var class="Ar" title="Ar">palfile</var></span>]
+      [<span class="Op"><b class="Fl" title="Fl">-t</b>
+      <var class="Ar" title="Ar">mapfile</var></span>]
+      [<span class="Op"><b class="Fl" title="Fl">-x</b>
+      <var class="Ar" title="Ar">tiles</var></span>]
+      <var class="Ar" title="Ar">file</var></td>
+  </tr>
+</table>
+<h1 class="Sh" title="Sh" id="DESCRIPTION"><a class="selflink" href="#DESCRIPTION">DESCRIPTION</a></h1>
+The <b class="Nm" title="Nm">rgbgfx</b> program converts PNG images into the
+  Nintendo Game Boy's planar tile format. The arguments are as follows:
+<dl class="Bl-tag">
+  <dt class="It-tag">&#x00A0;</dt>
+  <dd class="It-tag">&#x00A0;</dd>
+  <dt class="It-tag"><a class="selflink" href="#D"><b class="Fl" title="Fl" id="D">-D</b></a></dt>
+  <dd class="It-tag">Debug features are enabled.</dd>
+  <dt class="It-tag">&#x00A0;</dt>
+  <dd class="It-tag">&#x00A0;</dd>
+  <dt class="It-tag"><a class="selflink" href="#f"><b class="Fl" title="Fl" id="f">-f</b></a></dt>
+  <dd class="It-tag">Fix the input PNG file to be a correctly indexed
+    image.</dd>
+  <dt class="It-tag">&#x00A0;</dt>
+  <dd class="It-tag">&#x00A0;</dd>
+  <dt class="It-tag"><a class="selflink" href="#F"><b class="Fl" title="Fl" id="F">-F</b></a></dt>
+  <dd class="It-tag">Same as <b class="Fl" title="Fl">-f</b>, but additionally,
+      the input PNG file is fixed to have its parameters match the command
+      line's parameters.</dd>
+  <dt class="It-tag">&#x00A0;</dt>
+  <dd class="It-tag">&#x00A0;</dd>
+  <dt class="It-tag"><a class="selflink" href="#d"><b class="Fl" title="Fl" id="d">-d</b></a>
+    <var class="Ar" title="Ar">depth</var></dt>
+  <dd class="It-tag">The bitdepth of the output image (either 1 or 2). By
+      default, the bitdepth is 2 (two bits per pixel).</dd>
+  <dt class="It-tag">&#x00A0;</dt>
+  <dd class="It-tag">&#x00A0;</dd>
+  <dt class="It-tag"><a class="selflink" href="#h"><b class="Fl" title="Fl" id="h">-h</b></a></dt>
+  <dd class="It-tag">Lay out tiles horizontally rather than vertically.</dd>
+  <dt class="It-tag">&#x00A0;</dt>
+  <dd class="It-tag">&#x00A0;</dd>
+  <dt class="It-tag"><a class="selflink" href="#o"><b class="Fl" title="Fl" id="o">-o</b></a>
+    <var class="Ar" title="Ar">outfile</var></dt>
+  <dd class="It-tag">The name of the output file.</dd>
+  <dt class="It-tag">&#x00A0;</dt>
+  <dd class="It-tag">&#x00A0;</dd>
+  <dt class="It-tag"><a class="selflink" href="#p"><b class="Fl" title="Fl" id="p">-p</b></a>
+    <var class="Ar" title="Ar">palfile</var></dt>
+  <dd class="It-tag">Raw bytes (8 bytes for two bits per pixel, 4 bytes for one
+      bit per pixel) containing the RGB15 values in the little-endian byte order
+      and then ordered from lightest to darkest.</dd>
+  <dt class="It-tag">&#x00A0;</dt>
+  <dd class="It-tag">&#x00A0;</dd>
+  <dt class="It-tag"><a class="selflink" href="#P"><b class="Fl" title="Fl" id="P">-P</b></a></dt>
+  <dd class="It-tag">Same as <b class="Fl" title="Fl">-p</b>, but the pallete
+      file output name is made by taking the input filename, removing the file
+      extension, and appending <i class="Pa" title="Pa">.pal</i>.</dd>
+  <dt class="It-tag">&#x00A0;</dt>
+  <dd class="It-tag">&#x00A0;</dd>
+  <dt class="It-tag"><a class="selflink" href="#t"><b class="Fl" title="Fl" id="t">-t</b></a>
+    <var class="Ar" title="Ar">mapfile</var></dt>
+  <dd class="It-tag">If any tiles are the same, don't place the repeat tiles in
+      the output file, and make a tilemap file.</dd>
+  <dt class="It-tag">&#x00A0;</dt>
+  <dd class="It-tag">&#x00A0;</dd>
+  <dt class="It-tag"><a class="selflink" href="#T"><b class="Fl" title="Fl" id="T">-T</b></a></dt>
+  <dd class="It-tag">Same as <b class="Fl" title="Fl">-t</b>, but the tilemap
+      file output name is made by taking the input filename, removing the file
+      extension, and appending <i class="Pa" title="Pa">.tilemap</i>.</dd>
+  <dt class="It-tag">&#x00A0;</dt>
+  <dd class="It-tag">&#x00A0;</dd>
+  <dt class="It-tag"><a class="selflink" href="#u"><b class="Fl" title="Fl" id="u">-u</b></a></dt>
+  <dd class="It-tag">Truncate repeated tiles. Useful with tilemaps.</dd>
+  <dt class="It-tag">&#x00A0;</dt>
+  <dd class="It-tag">&#x00A0;</dd>
+  <dt class="It-tag"><a class="selflink" href="#V"><b class="Fl" title="Fl" id="V">-V</b></a></dt>
+  <dd class="It-tag">Print the version of the program and exit.</dd>
+  <dt class="It-tag">&#x00A0;</dt>
+  <dd class="It-tag">&#x00A0;</dd>
+  <dt class="It-tag"><a class="selflink" href="#v"><b class="Fl" title="Fl" id="v">-v</b></a></dt>
+  <dd class="It-tag">Verbose. Print errors when the command line parameters and
+      the parameters in the PNG file don't match.</dd>
+  <dt class="It-tag">&#x00A0;</dt>
+  <dd class="It-tag">&#x00A0;</dd>
+  <dt class="It-tag"><a class="selflink" href="#x"><b class="Fl" title="Fl" id="x">-x</b></a>
+    <var class="Ar" title="Ar">tiles</var></dt>
+  <dd class="It-tag">Trim the end of the output file by this many tiles.</dd>
+</dl>
+<h1 class="Sh" title="Sh" id="EXAMPLES"><a class="selflink" href="#EXAMPLES">EXAMPLES</a></h1>
+The following will take a PNG file with a bitdepth of 1, 2, or 8, and output
+  planar 2bpp data:
+<div class="Pp"></div>
+<div class="D1">$ rgbgfx -o out.2bpp in.png</div>
+<div class="Pp"></div>
+The following creates a planar 2bpp file with only unique tiles, and its tilemap
+  <i class="Pa" title="Pa">out.tilemap</i>:
+<div class="Pp"></div>
+<div class="D1">$ rgbgfx -T -u -o out.2bpp in.png</div>
+<div class="Pp"></div>
+The following will do nothing:
+<div class="Pp"></div>
+<div class="D1">$ rgbgfx in.png</div>
+<h1 class="Sh" title="Sh" id="SEE_ALSO"><a class="selflink" href="#SEE_ALSO">SEE
+  ALSO</a></h1>
+<a class="Xr" title="Xr">rgbds(7)</a>, <a class="Xr" title="Xr">rgbasm(1)</a>,
+  <a class="Xr" title="Xr">rgblink(1)</a>,
+  <a class="Xr" title="Xr">rgbfix(1)</a>, <a class="Xr" title="Xr">gbz80(7)</a>
+<h1 class="Sh" title="Sh" id="HISTORY"><a class="selflink" href="#HISTORY">HISTORY</a></h1>
+<b class="Nm" title="Nm">rgbgfx</b> was created by
+  <span class="An" title="An">stag019</span> to be included in RGBDS. It is now
+  maintained by a number of contributors at
+  <a class="Lk" title="Lk" href="https://github.com/rednex/rgbds">https://github.com/rednex/rgbds</a>.</div>
+<table class="foot">
+  <tr>
+    <td class="foot-date">April 17, 2017</td>
+    <td class="foot-os">RGBDS Manual</td>
+  </tr>
+</table>
+</body>
+</html>
--- /dev/null
+++ b/docs/rgblink.1.html
@@ -1,0 +1,161 @@
+<!DOCTYPE html>
+<html>
+<head>
+  <meta charset="utf-8"/>
+  <style>
+    table.head, table.foot { width: 100%; }
+    td.head-rtitle, td.foot-os { text-align: right; }
+    td.head-vol { text-align: center; }
+    div.Pp { margin: 1ex 0ex; }
+  </style>
+  <link rel="stylesheet" href="manual.css" type="text/css" media="all"/>
+  <title>RGBLINK(1)</title>
+</head>
+<body>
+<table class="head">
+  <tr>
+    <td class="head-ltitle">RGBLINK(1)</td>
+    <td class="head-vol">General Commands Manual</td>
+    <td class="head-rtitle">RGBLINK(1)</td>
+  </tr>
+</table>
+<div class="manual-text">
+<h1 class="Sh" title="Sh" id="NAME"><a class="selflink" href="#NAME">NAME</a></h1>
+<b class="Nm" title="Nm">rgblink</b> &#x2014; <span class="Nd" title="Nd">Game
+  Boy linker</span>
+<h1 class="Sh" title="Sh" id="SYNOPSIS"><a class="selflink" href="#SYNOPSIS">SYNOPSIS</a></h1>
+<table class="Nm">
+  <tr>
+    <td><b class="Nm" title="Nm">rgblink</b></td>
+    <td>[<span class="Op"><b class="Fl" title="Fl">-dtVw</b></span>]
+      [<span class="Op"><b class="Fl" title="Fl">-m</b>
+      <var class="Ar" title="Ar">mapfile</var></span>]
+      [<span class="Op"><b class="Fl" title="Fl">-n</b>
+      <var class="Ar" title="Ar">symfile</var></span>]
+      [<span class="Op"><b class="Fl" title="Fl">-O</b>
+      <var class="Ar" title="Ar">overlayfile</var></span>]
+      [<span class="Op"><b class="Fl" title="Fl">-o</b>
+      <var class="Ar" title="Ar">outfile</var></span>]
+      [<span class="Op"><b class="Fl" title="Fl">-p</b>
+      <var class="Ar" title="Ar">pad_value</var></span>]
+      [<span class="Op"><b class="Fl" title="Fl">-s</b>
+      <var class="Ar" title="Ar">symbol</var></span>]
+      [<span class="Op"><b class="Fl" title="Fl">-l</b>
+      <var class="Ar" title="Ar">linkerscript</var></span>]
+      <var class="Ar" title="Ar">file ...</var></td>
+  </tr>
+</table>
+<h1 class="Sh" title="Sh" id="DESCRIPTION"><a class="selflink" href="#DESCRIPTION">DESCRIPTION</a></h1>
+The <b class="Nm" title="Nm">rgblink</b> program links objects created by
+  <a class="Xr" title="Xr">rgbasm(1)</a> into a single Game Boy ROM file.
+<div class="Pp"></div>
+By default, ROM0 sections created by the assembler are placed in the 16KiB bank
+  0, and ROMX sections are placed in any bank except bank 0. If your ROM will
+  only be 32KiB, you can use the <b class="Fl" title="Fl">-t</b> option to
+  override this.
+<div class="Pp"></div>
+Similarly, WRAM0 sections are placed in the first 4KiB of WRAM bank 0 and WRAMX
+  sections are placed in any bank except bank 0. If your ROM doesn't use banked
+  WRAM you can use option <b class="Fl" title="Fl">-w</b> option to override
+  this.
+<div class="Pp"></div>
+Also, if your ROM is designed for DMG, you can make sure that you don't use any
+  prohibited section by using the option <b class="Fl" title="Fl">-d</b>, which
+  implies <b class="Fl" title="Fl">-w</b> but also prohibits the use of VRAM
+  bank 1.
+<div class="Pp"></div>
+The arguments are as follows:
+<dl class="Bl-tag">
+  <dt class="It-tag">&#x00A0;</dt>
+  <dd class="It-tag">&#x00A0;</dd>
+  <dt class="It-tag"><a class="selflink" href="#m"><b class="Fl" title="Fl" id="m">-m</b></a>
+    <var class="Ar" title="Ar">mapfile</var></dt>
+  <dd class="It-tag">Write a mapfile to the given filename.</dd>
+  <dt class="It-tag">&#x00A0;</dt>
+  <dd class="It-tag">&#x00A0;</dd>
+  <dt class="It-tag"><a class="selflink" href="#n"><b class="Fl" title="Fl" id="n">-n</b></a>
+    <var class="Ar" title="Ar">symfile</var></dt>
+  <dd class="It-tag">Write a symbol file to the given filename.</dd>
+  <dt class="It-tag">&#x00A0;</dt>
+  <dd class="It-tag">&#x00A0;</dd>
+  <dt class="It-tag"><a class="selflink" href="#O"><b class="Fl" title="Fl" id="O">-O</b></a>
+    <var class="Ar" title="Ar">overlayfile</var></dt>
+  <dd class="It-tag">The ROM image to overlay sections over. When an overlay ROM
+      is provided, all sections must be fixed. This may be used to patch an
+      existing binray.</dd>
+  <dt class="It-tag">&#x00A0;</dt>
+  <dd class="It-tag">&#x00A0;</dd>
+  <dt class="It-tag"><a class="selflink" href="#o"><b class="Fl" title="Fl" id="o">-o</b></a>
+    <var class="Ar" title="Ar">outfile</var></dt>
+  <dd class="It-tag">Write ROM image to the given filename.</dd>
+  <dt class="It-tag">&#x00A0;</dt>
+  <dd class="It-tag">&#x00A0;</dd>
+  <dt class="It-tag"><a class="selflink" href="#p"><b class="Fl" title="Fl" id="p">-p</b></a>
+    <var class="Ar" title="Ar">pad_value</var></dt>
+  <dd class="It-tag">When padding an image, pad with this value. The default is
+      0x00.</dd>
+  <dt class="It-tag">&#x00A0;</dt>
+  <dd class="It-tag">&#x00A0;</dd>
+  <dt class="It-tag"><a class="selflink" href="#s"><b class="Fl" title="Fl" id="s">-s</b></a>
+    <var class="Ar" title="Ar">symbol</var></dt>
+  <dd class="It-tag">???</dd>
+  <dt class="It-tag">&#x00A0;</dt>
+  <dd class="It-tag">&#x00A0;</dd>
+  <dt class="It-tag"><a class="selflink" href="#w"><b class="Fl" title="Fl" id="w">-w</b></a></dt>
+  <dd class="It-tag">Expand the WRAM0 section size from 4KiB to the full 8KiB
+      assigned to WRAM and prohibit the use of WRAMX sections.</dd>
+  <dt class="It-tag">&#x00A0;</dt>
+  <dd class="It-tag">&#x00A0;</dd>
+  <dt class="It-tag"><a class="selflink" href="#d"><b class="Fl" title="Fl" id="d">-d</b></a></dt>
+  <dd class="It-tag">Enable DMG mode. Prohibit the use of sections that doesn't
+      exist on a DMG, such as WRAMX and VRAM bank 1. This option automatically
+      enables <b class="Fl" title="Fl">-w</b>.</dd>
+  <dt class="It-tag">&#x00A0;</dt>
+  <dd class="It-tag">&#x00A0;</dd>
+  <dt class="It-tag"><a class="selflink" href="#t"><b class="Fl" title="Fl" id="t">-t</b></a></dt>
+  <dd class="It-tag">Expand the ROM0 section size from 16KiB to the full 32KiB
+      assigned to ROM and prohibit the use of ROMX sections. Useful for ROMs
+      that fit in 32 KiB.</dd>
+  <dt class="It-tag">&#x00A0;</dt>
+  <dd class="It-tag">&#x00A0;</dd>
+  <dt class="It-tag"><a class="selflink" href="#l"><b class="Fl" title="Fl" id="l">-l</b></a>
+    <var class="Ar" title="Ar">linkerscript</var></dt>
+  <dd class="It-tag">Specify a linkerscript file that tells the linker how
+      sections must be placed in the ROM. This file has priority over the
+      attributes assigned in the source code, but they have to be consistent.
+      See <a class="Xr" title="Xr">rgblink(5)</a> for more information about its
+      format.</dd>
+  <dt class="It-tag">&#x00A0;</dt>
+  <dd class="It-tag">&#x00A0;</dd>
+  <dt class="It-tag"><a class="selflink" href="#V"><b class="Fl" title="Fl" id="V">-V</b></a></dt>
+  <dd class="It-tag">Print the version of the program and exit.</dd>
+</dl>
+<h1 class="Sh" title="Sh" id="EXAMPLES"><a class="selflink" href="#EXAMPLES">EXAMPLES</a></h1>
+All you need for a basic ROM is an object file, which can be made into a ROM
+  image like so:
+<div class="Pp"></div>
+<div class="D1">$ rgblink -o bar.gb foo.o</div>
+<div class="Pp"></div>
+The resulting bar.gb will not have correct checksums (unless you put them in the
+  assembly source). You should use <a class="Xr" title="Xr">rgbfix(1)</a> to fix
+  these so that the program will actually run in a Game Boy:
+<div class="Pp"></div>
+<div class="D1">$ rgbfix -v bar.gb</div>
+<h1 class="Sh" title="Sh" id="SEE_ALSO"><a class="selflink" href="#SEE_ALSO">SEE
+  ALSO</a></h1>
+<a class="Xr" title="Xr">rgbasm(1)</a>, <a class="Xr" title="Xr">rgblink(5)</a>,
+  <a class="Xr" title="Xr">rgbfix(1)</a>, <a class="Xr" title="Xr">rgbds(5)</a>,
+  <a class="Xr" title="Xr">rgbds(7)</a>
+<h1 class="Sh" title="Sh" id="HISTORY"><a class="selflink" href="#HISTORY">HISTORY</a></h1>
+<b class="Nm" title="Nm">rgblink</b> was originally written by Carsten
+  S&#x00F8;rensen as part of the ASMotor package, and was later packaged in
+  RGBDS by Justin Lloyd. It is now maintained by a number of contributors at
+  <a class="Lk" title="Lk" href="https://github.com/rednex/rgbds">https://github.com/rednex/rgbds</a>.</div>
+<table class="foot">
+  <tr>
+    <td class="foot-date">April 17, 2017</td>
+    <td class="foot-os">RGBDS Manual</td>
+  </tr>
+</table>
+</body>
+</html>
--- /dev/null
+++ b/docs/rgblink.5.html
@@ -1,0 +1,105 @@
+<!DOCTYPE html>
+<html>
+<head>
+  <meta charset="utf-8"/>
+  <style>
+    table.head, table.foot { width: 100%; }
+    td.head-rtitle, td.foot-os { text-align: right; }
+    td.head-vol { text-align: center; }
+    div.Pp { margin: 1ex 0ex; }
+  </style>
+  <link rel="stylesheet" href="manual.css" type="text/css" media="all"/>
+  <title>RGBLINK(5)</title>
+</head>
+<body>
+<table class="head">
+  <tr>
+    <td class="head-ltitle">RGBLINK(5)</td>
+    <td class="head-vol">File Formats Manual</td>
+    <td class="head-rtitle">RGBLINK(5)</td>
+  </tr>
+</table>
+<div class="manual-text">
+<h1 class="Sh" title="Sh" id="NAME"><a class="selflink" href="#NAME">NAME</a></h1>
+<b class="Nm" title="Nm">rgblink</b> &#x2014;
+  <span class="Nd" title="Nd">linkerscript file format</span>
+<h1 class="Sh" title="Sh" id="DESCRIPTION"><a class="selflink" href="#DESCRIPTION">DESCRIPTION</a></h1>
+The linkerscript is an external file that allows the user to specify the order
+  of sections without the need for doing so before assembling each object file.
+<div class="Pp"></div>
+The placement of sections specified in the linkerscript is done before the
+  sections whose placement is defined in the source code.
+<div class="Pp"></div>
+A linkerscript consists on a series of banks followed by a list of sections and,
+  optionally, commands. They can be lowercase or uppercase, it is ignored. Any
+  line can contain a comment starting with
+  &#x2018;<code class="Li">;</code>&#x2019; that ends at the end of the line:
+<div class="Pp"></div>
+<div class="Bd" style="margin-left: 5.00ex;">
+<pre class="Li">
+ROMX $F ; This is a comment 
+  &quot;Functions to read array&quot; 
+  ALIGN 8 
+  &quot;Array aligned to 256 bytes&quot; 
+ 
+WRAMX 2 
+  &quot;Some variables&quot;
+</pre>
+</div>
+<div class="Pp"></div>
+Numbers can be in decimal or hexadecimal format (the prefix is
+  &#x2018;<code class="Li">$</code>&#x2019;). It is an error if any bank or
+  command is found before setting a bank.
+<div class="Pp"></div>
+Files can be included by using the <var class="Ar" title="Ar">INCLUDE</var>
+  keyword followed by a string with the path of the file that has to be
+  included.
+<div class="Pp"></div>
+The possible bank types are: <b class="Sy" title="Sy">ROM0</b>,
+  <b class="Sy" title="Sy">ROMX</b>, <b class="Sy" title="Sy">VRAM</b>,
+  <b class="Sy" title="Sy">WRAM0</b>, <b class="Sy" title="Sy">WRAMX</b>,
+  <b class="Sy" title="Sy">OAM</b> and <b class="Sy" title="Sy">HRAM</b>. Types
+  <b class="Sy" title="Sy">ROMX</b>, <b class="Sy" title="Sy">VRAM</b>,
+  <b class="Sy" title="Sy">WRAMX</b> and <b class="Sy" title="Sy">SRAM</b> are
+  banked, which means that it is needed to specify a bank after the type.
+<div class="Pp"></div>
+When a new bank statement is found, sections found after it will be placed right
+  from the beginning of that bank. If the linkerscript switches to a different
+  bank and then it comes back to the previous one it will continue from the last
+  address that was used.
+<div class="Pp"></div>
+The only two commands are <var class="Ar" title="Ar">ORG</var> and
+  <var class="Ar" title="Ar">ALIGN</var>:
+<ul class="Bl-bullet">
+  <li class="It-bullet"><var class="Ar" title="Ar">ORG</var> sets the address in
+      which new sections will be placed. It can not be lower than the current
+      address.</li>
+  <li class="It-bullet"><var class="Ar" title="Ar">ALIGN</var> will increase the
+      address until it is aligned to the specified boundary (it tries to set to
+      0 the number of bits specified after the command:
+      <b class="Sy" title="Sy">ALIGN 8</b> will align to $100).</li>
+</ul>
+<div class="Pp"></div>
+Note: The bank, alignment, address and type of sections can be specified both in
+  the source code and in the linkerscript. For a section to be able to be placed
+  with the linkerscript the bank must be left unassigned in the source code or
+  be the same as the one specified in the linkerscript. The address and
+  alignment musn't be set.
+<h1 class="Sh" title="Sh" id="SEE_ALSO"><a class="selflink" href="#SEE_ALSO">SEE
+  ALSO</a></h1>
+<a class="Xr" title="Xr">rgbasm(1)</a>, <a class="Xr" title="Xr">rgblink(1)</a>,
+  <a class="Xr" title="Xr">rgbfix(1)</a>, <a class="Xr" title="Xr">rgbds(5)</a>,
+  <a class="Xr" title="Xr">rgbds(7)</a>
+<h1 class="Sh" title="Sh" id="HISTORY"><a class="selflink" href="#HISTORY">HISTORY</a></h1>
+<b class="Nm" title="Nm">rgblink</b> was originally written by Carsten
+  S&#x00F8;rensen as part of the ASMotor package, and was later packaged in
+  RGBDS by Justin Lloyd. It is now maintained by a number of contributors at
+  <a class="Lk" title="Lk" href="https://github.com/rednex/rgbds">https://github.com/rednex/rgbds</a>.</div>
+<table class="foot">
+  <tr>
+    <td class="foot-date">April 17, 2017</td>
+    <td class="foot-os">RGBDS Manual</td>
+  </tr>
+</table>
+</body>
+</html>