diff options
author | yenatch <yenatch@gmail.com> | 2013-01-23 15:27:14 -0500 |
---|---|---|
committer | yenatch <yenatch@gmail.com> | 2013-01-23 15:27:14 -0500 |
commit | dd16a2576892326dec80f361094d255cef460d7e (patch) | |
tree | 291ce0d15510cf2789e4f0fde33dcc0221ba657f | |
parent | 3ba86a82eb2a592aa43e23b745bfa99e07bb37b6 (diff) |
allow labels and includes on the same line
-rw-r--r-- | preprocessor.py | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/preprocessor.py b/preprocessor.py index 9b748dbd6..5fe331b64 100644 --- a/preprocessor.py +++ b/preprocessor.py @@ -569,13 +569,19 @@ def macro_translator(macro, token, line): def include_file(asm): """This is more reliable than rgbasm/rgbds including files on its own.""" + prefix = asm.split("INCLUDE \"")[0] + '\n' filename = asm.split("\"")[1] + suffix = asm.split("\"")[2] + + read_line(prefix) lines = open(filename, "r").readlines() for line in lines: read_line(line) + read_line(suffix) + def read_line(l): """Preprocesses a given line of asm.""" @@ -586,9 +592,8 @@ def read_line(l): asm = l comment = None - # handle INCLUDE as a special case either at the start of the line or - # after the first character in the line (like a tab) - if "INCLUDE \"" in [asm[0:9], asm[1:9]]: + # handle INCLUDE as a special case + if "INCLUDE \"" in l: include_file(asm) # convert text to bytes when a quote appears (not in a comment) |