From 282fa7725993c9b0b0d2bb0977c124f11abea1fd Mon Sep 17 00:00:00 2001
From: Ian C <ianc@noddybox.co.uk>
Date: Tue, 8 Mar 2016 13:51:57 +0000
Subject: Wildcard for args, EX changes and CP/M test.

+ Added '*' wildcard for macro arguments
+ Allow 'EX' with parameters reversed on the Z80
+ Added simple CP/M example test.
+ Added some files to gitignore
---
 doc/manual.asciidoc | 26 +++++++++++++++++++++++++-
 1 file changed, 25 insertions(+), 1 deletion(-)

(limited to 'doc/manual.asciidoc')

diff --git a/doc/manual.asciidoc b/doc/manual.asciidoc
index 888a9f0..99d07f6 100644
--- a/doc/manual.asciidoc
+++ b/doc/manual.asciidoc
@@ -317,7 +317,9 @@ Macros
 ~~~~~~
 
 Macros can be defined in one of two ways; either parameterless or with named
-parameters.  Macro names are case-insensitive.
+parameters.  Macro names are case-insensitive.  In the parameterless mode the
+special identifier '*' can be used to expand all arguments, which will be
+separated with commas.
 
 ----
 macro1: macro
@@ -325,6 +327,7 @@ macro1: macro
         ld a,\1
         ld b,\2
         call \3
+        defb \*
 
         endm
 
@@ -456,6 +459,27 @@ EOR can be used the same as XOR:
     and     b
 ----
 
+For exchange opcodes with parameters the parameters can be reversed from their
+official form:
+
+----
+    ; The official forms
+    ;
+    ex      de,hl
+    ex      af,af'
+    ex      (sp),hl
+    ex      (sp),ix
+    ex      (sp),iy
+
+    ; Also supported
+    ;
+    ex      hl,de
+    ex      af',af
+    ex      hl,(sp)
+    ex      ix,(sp)
+    ex      iy,(sp)
+----
+
 Where the high/low register parts of the IX and IY registers are to be used,
 simply use ixl, iyl, ixh and iyh.  Note that the assembler will accept
 illegal pairings involving H and L, but these will be warned about:
-- 
cgit v1.2.3

