Closed BitFracture closed 3 years ago
I advise you to carefully read the documentation (how to use macro and macro itself) because you miss the "curly bracket" point and you did not copy all char of the macro for your example which is NOT in the documentation.
The only macro in the documentation who may not worked may be the register.low example as there is no curly brackets, i will advice the documentation writer
Here is a temporary fix for low/high macro example which will assemble ld a,e
macro getlow16 reg
ld a,{reg}.low
mend
getlow16 DE
Thank you, I see "Arguments inside the macro are referenced using curly brackets" and now that I know what this looks like, this is very helpful! But my original confusion came from the example I copied above, which does not have curly brackets on the parameters in the PDF. I am using the Firefox internal PDF reader.
@EdouardBERGE I have identified the issue, the English version of the manual is incorrect (as I copied above) but the French version is as you described, showing the curly brackets.
ok, i will open an issue for the documentation!
Thanks for the help! The brackets have solved all of my original issues
I've experimented with several forms of syntax for macros (it seems there are a few in the RASM manual) and have been unsuccessful getting any of them to work.
For the sake of this discussion let's analyze this example:
I am using this command line from Windows, working directory includes the RASM binary.
And the following error occurs:
If I bracket the arguments or params it makes no difference. Changing tabbing of the macro or invocation thereof does not alter error behavior. If I replace the parameter comma with a space it concatenates them and I get:
I've been successful in assembling several binaries with no macros, even those with the repeat directive. Great tool! I would love to sort out this issue with macros, whether it's in better communicating an error I'm making, or if there's an error with the assembler. Thank you!
OS: Windows 10 x64 10.0.19041.928 RASM: v1.4, v1.3, v1.2, v1.1 win64; further errors with v1.0