Commit Graph

2670 Commits

Author SHA1 Message Date
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
d46d1901c2 Merge branch 'remove-another-moneybyteparam-special-case' into master 2013-08-28 16:34:06 -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
53d208ce4c fail fast when the baserom.gbc file doesn't exist
One day this will not be required. But until then, waiting one or more
seconds for the build to fail just to learn that you forgot baserom.gbc
is really silly.

This makes failure almost instantaneous compared to before, which would
take between one and ten seconds depending on system performance.

fixes #167
2013-08-28 16:22:50 -05:00
Bryan Bishop
16f6619ac8 Merge pull request #168 from kanzure/remove-preprocessor-special-case
Remove a special case for MoneyByteParam.
2013-08-28 14:15:58 -07: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
yenatch
7fe1fa58e3 hram constants in serial interrupt 2013-08-28 04:29:20 -04:00
yenatch
03abb89474 serial hram constants 2013-08-28 04:28:45 -04:00
yenatch
faae0e1029 serial interrupt 2013-08-28 01:24:52 -04:00
yenatch
8898f63fc7 timer interrupt 2013-08-27 23:38:05 -04:00
yenatch
e48899c1f4 gbhw: flag constants for interrupts and timer registers 2013-08-27 23:37:24 -04:00
yenatch
651e0a4245 LYOverrides in main.asm 2013-08-27 20:56:28 -04:00
yenatch
64bb7d2253 add LYOverrides in wram bank 5 2013-08-27 20:56:24 -04:00
yenatch
25dcc71c4c rename some LCD functions 2013-08-27 20:46:15 -04:00
yenatch
12ab33b37e rename FarCall family labels
FarJump labels renamed to FarCall
register aliases JpHl and JpDe renamed to _hl_ and _de_
2013-08-27 18:16:42 -04:00
yenatch
be9c504b24 rename PushScriptPointer -> CallScript 2013-08-27 18:00:41 -04:00
yenatch
886ab68884 add some field move asm and scripts 2013-08-27 17:11:24 -04:00
yenatch
94fc90a243 badge engine flags in main.asm 2013-08-27 16:23:53 -04:00
yenatch
7cba224d4a engine flag constants 2013-08-27 14:12:05 -04:00
yenatch
517da9357b PlayerPalette and PlayerAction wram labels 2013-08-27 13:49:32 -04:00
Bryan Bishop
ddc4a92905 Merge pull request #161 from kanzure/remove-extras
This merges branch 'remove-extras' into master. The extras/ path is now
replaced by a git submodule that is independently version controlled and
separate from the pokecrystal project.

The git submodule is a reference to v1.1.0 of this repository:
    https://github.com/kanzure/pokemon-reverse-engineering-tools

It's also available as a generic python module now:
    https://pypi.python.org/pypi/pokemontools

https://github.com/kanzure/pokecrystal/pull/161
2013-08-27 11:18:30 -05:00
Bryan Bishop
94f5f61265 bump extras submodule to v1.1.0
The extras submodule is provided by pokemon-reverse-engineering-tools
v1.1.0 at commit 016f0206b5029fc83a6200be29b0f980c76dfd90.
2013-08-27 11:17:14 -05:00
Bryan Bishop
3453879756 Merge branch 'master' into remove-extras 2013-08-27 10:51:30 -05:00
yenatch
2b10d184b0 recomment some common asm (rtc/lcd) 2013-08-27 00:10:22 -04:00
yenatch
2f5ed8468d SpecialRoamMons -> InitRoamMons 2013-08-26 19:48:44 -04:00
yenatch
9cf90f6c7b deobfuscate some encounter asm 2013-08-26 19:47:42 -04:00
Bryan Bishop
c61b3d42ad Merge remote-tracking branch 'yenatch/merge-kanzure-again' into master 2013-08-26 11:50:30 -05:00
Bryan Bishop
5098ed740d Merge remote-tracking branch 'github/master' into master 2013-08-26 11:49:04 -05:00
yenatch
17725d7af1 battle init and some overworld actions 2013-08-24 04:10:38 -04:00
yenatch
18e42e8c6e battle init and battle transition predefs 2013-08-24 04:09:32 -04:00
yenatch
744d1d8599 first event flag constants 2013-08-23 21:19:58 -04:00
yenatch
af205a7217 BitTable2 -> EngineFlags 2013-08-23 16:08:31 -04:00
yenatch
3a24cff5eb BitTableFunc -> FlagAction 2013-08-23 15:49:24 -04:00
yenatch
bc7b63b44a EventFlags label (bittable1) 2013-08-23 15:00:07 -04:00
yenatch
849e5a7d0f game freak presents splash 2013-08-23 01:26:35 -04:00
yenatch
ac7b7ede0b more bank 0 labels instead of static addresses 2013-08-23 01:11:53 -04:00
yenatch
8105dc6c7c BoxMons in main.asm 2013-08-22 18:34:01 -04:00
yenatch
35a16b4860 Party/BoxMon nickname enders 2013-08-22 15:40:00 -04:00
yenatch
231adfe99c boxmon labels in sram 2013-08-22 14:01:46 -04:00
yenatch
179decd644 GiveOddEgg and related asm
That's it for bank 7e
2013-08-21 17:25:24 -04:00
yenatch
7f96387411 dump odd eggs 2013-08-21 16:02:36 -04:00
yenatch
cc1f57ec93 condense IncGradGBPalTable
this way is more readable too
2013-08-21 14:49:35 -04:00
yenatch
76fe7c5aa1 Merge remote-tracking branch 'kanzure/master' into merge-kanzure-again
Conflicts:
	wram.asm
2013-08-21 14:04:06 -04:00
yenatch
27e1d3fabf Merge branch 'master' into merge-kanzure 2013-08-21 14:02:13 -04:00
yenatch
7b5ffb5475 more field move asm/scripts 2013-08-21 14:01:51 -04:00
yenatch
5db04abdab TileType is actually TileCollision 2013-08-21 14:01:50 -04:00
yenatch
9ac0fc631b formatting in TileTypeTable and tile checks 2013-08-21 14:01:50 -04:00