# HG changeset patch
# User lost@l-w.ca
# Date 1313820175 21600
# Node ID 42a7a16a058f807f1bcd7ab6a9b2cf7fb4ef5fe3
# Parent 697bc543368c5d656b3026e4b0bb06f84ce53a2c
Documented the addition of data/code address streams for OS9 modules.
diff -r 697bc543368c -r 42a7a16a058f docs/manual.docbook.sgml
--- a/docs/manual.docbook.sgml Fri Aug 19 23:55:40 2011 -0600
+++ b/docs/manual.docbook.sgml Sat Aug 20 00:02:55 2011 -0600
@@ -114,13 +114,26 @@
-It is also critical to understand that unlike many OS9 assemblers, LWASM
-does NOT maintain a separate data address counter. Thus, you must define
-all your data offsets and so on outside of the mod/emod segment. It is,
-therefore, likely that source code targeted at other assemblers will require
-edits to build correctly.
+As of version 4.5, LWASM also implements the standard data/code address
+streams for OS9 modules. That means that between MOD and EMOD, any RMB,
+RMD, RMQ, or equivalent directives will move the data address ahead and
+leave the code address unmodified. Outside of an actual module, both the
+code and data addresses are moved ahead equally. That last bit is critical
+to understand because it means any directives that follow an EMOD directive
+may have different results than other assemblers.
+
+
+Additionally, within a module body, the ORG directive sets only the data
+address, not the code address. However, outside a module body, ORG sets both
+addresses.
+
+
+
+
+Both code and data addresses are reset to 0 by the MOD directive.
+