Commit Graph

54 Commits

Author SHA1 Message Date
Bryan Bishop
3fb03e9981 two more unused imports from preprocessor 2013-08-28 20:31:17 -05:00
Bryan Bishop
e4d3ea7256 don't use globals in the preprocessor
Macros are now passed around as lists and dicts.
2013-08-28 17:53:26 -05:00
Bryan Bishop
16bfc01124 use generic skippable macros in preprocessor
This removes TextEndingCommand from the preprocessor. Instead, there is
a generic concept of a skippable type of macro like "db".

This adds SkippableMacro to the preprocessor.
2013-08-28 17:18:29 -05:00
Bryan Bishop
b602cc9bd6 don't directly reference two macro classes
Ideally the macro classes will be removed from the preprocessor core
soon, there's no reason they should be infecting these functions.
2013-08-28 16:48:29 -05:00
Bryan Bishop
6d612c8828 remove MoneyByteParam from preprocessor
It didn't belong in there. All of the references were removed.
2013-08-28 16:33:27 -05:00
Bryan Bishop
a4782d9b5a Merge branch 'master' into remove-another-moneybyteparam-special-case 2013-08-28 16:32:15 -05:00
Bryan Bishop
0236b59360 remove another MoneyByteParam special case
This updates the preprocessor to just look for a from_asm method on the
class for the parameter it's processing. If there's a from_asm method,
then it uses it to spit out the right asm.
2013-08-28 16:30:47 -05:00
Bryan Bishop
00b36922d2 remove a special case for MoneyByteParam
The preprocessor should ideally have no special cases for macros at all
in the first place. But it does. This one doesn't seem to be necessary.
2013-08-28 16:14:23 -05:00
Bryan Bishop
3453879756 Merge branch 'master' into remove-extras 2013-08-27 10:51:30 -05:00
Bryan Bishop
2a421c54b6 fix preprocessor imports for the latest submodule
I am surprised this worked. Maybe it's not actually working, and I just
have cached files everywhere.
2013-08-03 16:25:14 -05:00
yenatch
d4e6ccca3b jp char ァ 2013-07-31 18:02:08 -04:00
yenatch
d3872d1aa9 chars: ▷ 2013-07-10 19:17:02 -04:00
Bryan Bishop
b710b8721e don't mix tabs/whitespace 2013-06-25 22:25:50 -05:00
yenatch
8d2df72cb8 pre: restore separate_comment's behavior 2013-06-25 21:24:09 -04:00
yenatch
e733c4234c preprocess asm files individually
this fixes a lot of previous hacks

first off, rgbds requires that labels from includes be marked as globals.
instead, 3626ddeb stuffed includes into the parent file in the preprocessor.
this meant one huge file got preprocessed every time, adding an additional
ten seconds to compile time.

running the preprocessor once for each file would create too much overhead,
so a list is fed into prequeue.py, which then makes calls to preprocessor.py.

this paves the way for compiling source files separately some day.

next, compiling previously required `make clean` to be executed first.
f3340de6 touched main.asm to force a fresh compile instead. this behavior
has been reverted. now, `make all` will only attempt to recompile if a
source file has changed.

preprocessor.py has some marginal changes. prequeue.py is created to keep
the original functionality of preprocessor.py intact. so many files are
preprocessed on first compile (1951 as of this commit) that the prequeue
call has been hidden.

compile time is reduced to 15-30 seconds on first compile, and 5-10 seconds
subsequently. the majority of this time is spent in rgbasm.
2013-06-21 16:12:40 -04:00
yenatch
ffd562351b preprocessor: minor optimization in separate_comment 2013-05-15 14:39:43 -04:00
yenatch
ac391b7b8e preprocessor: print macro automatically inserts newlines 2013-05-11 13:51:30 -04:00
Bryan Bishop
2a44711fa7 Merge pull request #126 from yenatch/master
map scripts + ai + disabled line ending correction
2013-05-06 22:15:41 -07:00
yenatch
2acb46f6b5 downward triangle character 0xee 2013-05-01 23:18:38 -04:00
Bryan Bishop
0e47273378 Merge yenatch/master. 2013-04-27 17:29:29 -05:00
yenatch
dc81d0cfcf dump move effects 2013-03-29 18:54:42 -04:00
Bryan Bishop
4332a25bd5 fix docstring formatting everywhere 2013-03-21 15:15:42 -05:00
Bryan Bishop
393b4971f4 include some http ascii from the ROM 2013-03-01 21:40:01 -06:00
Bryan Bishop
80fc1f42c4 clean up the preprocessor macro list 2013-01-27 17:45:23 -06:00
yenatch
dd16a25768 allow labels and includes on the same line 2013-01-23 15:27:14 -05:00