Please test this out to make sure I haven't done anything stupid!
The syntax for including another file is:
include 'filename'
or
include "filename"
The file will be included as-is at that spot. The listing will reflect
that a series of lines was included by printing
#<<<< Start of filename >>>>
#<<<< End of filename >>>>
at the beginning and end of the included file.
Macros are defined like:
println macro thing
print thing
print "\n"
endm
and invoked like
println "My happy string"
in the listing, expanded macros appear with ">" in front of the code.
You should be able to include up to any depth, but I didn't test it. In
addition, macros should be able to use other macros. I did some basic
tests, but nothing extensive.
The only incompatibility I've introduced is now assemble.pl won't read
from stdin...you have to give it a filename. Patches welcome!
Enjoy!
Brian