Commit Graph

141 Commits

Author SHA1 Message Date
Rangi
3684296583 Revise some constant definitions 2021-03-16 18:06:18 -04:00
Rangi
40902ffe24 Verify data table sizes with table_width and assert_table_length macros
This was discussed in #706

It also uncovered some off-by-one issues with defining some constants.

A few structs now use rsreset/_RS to define their offset constants, as discussed in #739
2021-03-04 00:15:03 -05:00
Rangi
7d3ea88611 Rename GetFarHalfword to GetFarWord
Fixes #796
2021-01-09 15:16:05 -05:00
Rangi
5db892782a Remove "Buffer" suffix from two HRAM labels 2020-12-23 16:54:28 -05:00
Rangi
17894e5f39 Replace $0 with 0 for "ld l, a / ld h, 0" idiom 2020-11-09 15:20:40 -05:00
Rangi
62b756c46e Rename "dummy game" to "memory game" 2020-11-08 19:32:57 -05:00
Rangi
6220200f0f Identify some more labels, and make some more consistent 2020-11-01 12:36:38 -05:00
Rangi
4a323cf591 UnusedSpriteAnimGFX was to sprite anims as AnimObjGFX is to battle anims 2020-10-30 17:41:03 -04:00
Rangi
9b0002161b Extract more RGB data to .pal files 2020-10-30 16:12:25 -04:00
Rangi
fe1a58deea Identify wSpriteAnimDict key constants 2020-10-30 15:39:08 -04:00
Rangi
1237156948 Identify mobile Name Card exchange labels 2020-10-30 10:45:31 -04:00
Rangi
ea426a8879 Identify more WRAM labels, and start a <X>_DummyFunction label convention 2020-10-28 14:34:38 -04:00
Rangi
6d333bed5f Replace many '; unused' with '; unreferenced' 2020-10-28 10:21:10 -04:00
Rangi
c85ba78b77 Use more assertions to ensure correct code and data 2020-10-26 22:24:38 -04:00
Rangi
9dcdad5e60 Comment, remove, or revise many unreferenced labels 2020-10-26 20:29:58 -04:00
Rangi
a2b6befd7d Identify some more labels, mostly WRAM 2020-10-23 16:04:15 -04:00
Rangi
15f6a0af43 Identify a few more labels and data 2020-10-22 12:55:46 -04:00
Rangi
b9a74ff777 Identify more sprite graphics and map object labels, and have consistent anonymous jumptable labels 2020-10-22 10:54:53 -04:00
Rangi
42d0a2567a Identify some more unnamed labels 2020-10-05 20:10:01 -04:00
Rangi
6b7ade66da Identify more unnamed labels 2020-10-05 16:15:57 -04:00
Rangi
d9603e3e33 Identify more unnamed labels 2020-10-04 22:34:50 -04:00
Rangi
306c85750e Identify some more unnamed labels 2020-10-04 20:10:39 -04:00
Rangi
5a546068a8 Identify SGB blk/pal packets 2020-10-04 18:32:33 -04:00
mid-kid
353f78f493 GS_INTRO_STAR/SPARKLE -> GS_GAMEFREAK_LOGO_STAR/SPARKLE
These two sprite animations are related to the Game Freak Logo splash
screen, not the actual intro.
2020-08-27 15:13:41 +02:00
mid-kid
15c08ad8a3 Small changes to better match pokegold 2020-08-27 14:52:27 +02:00
mid-kid
13c4a93cea Fix some constants surrounding sprite animations
Also commented the use of the field surrounding the struct
initialization functions.

SPRITEANIMSTRUCT_0C -> SPRITEANIMSTRUCT_VAR1
SPRITEANIMSTRUCT_0D -> SPRITEANIMSTRUCT_VAR2
SPRITEANIMSTRUCT_0E -> SPRITEANIMSTRUCT_VAR3
SPRITEANIMSTRUCT_0F -> SPRITEANIMSTRUCT_VAR4

BATTLEANIMSTRUCT_01 -> BATTLEANIMSTRUCT_OAMFLAGS
BATTLEANIMSTRUCT_ANON_JT_INDEX -> BATTLEANIMSTRUCT_JUMPTABLE_INDEX
BATTLEANIMSTRUCT_0F -> BATTLEANIMSTRUCT_VAR1
BATTLEANIMSTRUCT_10 -> BATTLEANIMSTRUCT_VAR2
2020-08-27 13:59:33 +02:00
mid-kid
733664b18f Document splash screen animation 2020-08-27 13:59:33 +02:00
mid-kid
926e231849 Move all splash screen files to gfx/splash 2020-08-27 13:58:54 +02:00
mid-kid
8befc889ad Remove a verifiably false comment
wSpriteAnimCount starts at 0, keeps incrementing and never decrements.
When it reaches $ff, the next value is 1.

Its purpose is unknown, as this value is used nowhere else.
2020-08-05 16:02:48 +02:00
mid-kid
aabfc0b413 d is the multiplier for Sprites_Sine 2020-08-05 16:02:48 +02:00
mid-kid
b6055b1944 Use TRUE for hCGBPalUpdate 2020-08-05 16:02:48 +02:00
Rangi
bb25c1074c Use LOAD/ENDL for OAM DMA code in HRAM (requires rgbds 0.4.1) 2020-07-21 19:45:25 -04:00
Rangi
f5ac9b0eb7 SCGB_PARTY_MENU_HP_PALS -> SCGB_PARTY_MENU_HP_BARS, and SCGB_RAM -> SCGB_DEFAULT 2020-07-04 16:18:16 -04:00
Rangi
91774f206e Replace "Unreferenced" labels with "; unreferenced" comments 2020-06-21 16:27:43 -04:00
Rangi
cc460a17b0 Harmonize engine/{movie, pokemon} with pokegold (renames GetSRAMBank to OpenSRAM)
To do: engine/{menus, overworld}
2020-06-17 17:03:38 -04:00
Rangi
8019db3ea9 Harmonize engine/{gfx, items, link, math} with pokegold 2020-06-17 10:39:17 -04:00
Rangi
7b2515d1e4 [in progress] Harmonize more constant and data files with pokegold 2020-06-16 14:32:57 -04:00
Rangi
b9f2b93c17 Harmonize some more symbols with pokegold 2020-06-16 11:28:52 -04:00
Rangi
60c71add58 Define pokeanim setup commands like std scripts, predefs, and specials
No need for a macro workaround in rgbds 0.4.0
2020-06-10 17:15:53 -04:00
Rangi
4259b0f934 Separate UnusedBattleObjectPals from PartyMenuOBPals 2020-06-03 12:20:34 -04:00
Rangi
156f2cc3ef Update some routine labels, including unreferenced ones 2020-05-18 11:59:48 -04:00
Rangi
e32cf1bfd1 Miscellaneous cleanup noted in #709 2020-05-17 20:59:15 -04:00
Rangi
20464d1bfb Miscellaneous updates
- `PREDEFPAL_00` -> `PREDEFPAL_ROUTES` (observed from `LoadSGBLayout.GetMapPalsIndex.route`)
- `$0` -> `PLAYER` (standard person ID)
- Fix some whitespace formatting
2020-04-30 11:27:32 -04:00
Rangi
576cbf5b3e Miscellaneous fixes, including one for the Pokédex design flaw by ax6 2020-04-18 17:31:51 -04:00
Rangi
865d623846 Remove unused nonmatching files for electro_ball.png and sgb_border.bin
electro_ball.png needed to preserve one whitespace tile which tools/gfx would normally remove. Preserving a list of tile indexes has been added as a general feature to tools/gfx.

sgb_border.bin needed to remove the 20x18 center area of $00 bytes. This is achievable with the standard tr utility.
2020-04-08 12:14:37 -04:00
Rangi
3144b54bd1 Enable rgbds warnings and remove CFLAGS=-O2 (default is now -O3) 2020-04-06 12:41:07 -04:00
Rangi
6a6ba10315 rgbds supports 'X - 1' instead of 'X + -1' 2020-03-21 14:01:05 -04:00
Rangi
447da80615 Identify remaining gfx/unknown files 2020-02-28 09:23:41 -05:00
Rangi
81eaf83cd7 Identify gfx/unknown/4985a.asm as gfx/tilesets/forest-tree/unused.png 2020-02-26 15:41:22 -05:00
mid-kid
26b8bf003e Standardize on lowercase Tilemap and Attrmap
We used to have a mixture of TileMap and and Tilemap, as well as the
similar AttrMap. Standardize on one.
2020-02-13 18:31:10 +01:00
mid-kid
0d81f1c470 InitSpriteAnimStruct <-> _InitSpriteAnimStruct
These were the wrong way around, as the function in home should not be
prefixed
2020-02-13 18:31:10 +01:00
Rangi
4211886921 Use constants for quantities when copying SGB border tiles and palettes 2019-11-03 14:15:20 -05:00
Rangi
71db95dc34 Identify a few more WRAM label uses 2019-04-19 18:55:04 -04:00
mid-kid
3e78e5b2b6 TextBox -> Textbox
Homogenizing names.
2019-04-09 16:09:18 +02:00
Rangi
2ffbde764e Minor code+docs fixes 2019-03-12 22:55:40 -04:00
Rangi
7c42452748 Standardize on $ff ^ X for bitwise negating 8-bit values 2019-02-16 13:52:19 -05:00
Rangi
771d2efd65
Merge pull request #601 from mid-kid/master
Exciting adventures down battle animation street!
2019-02-16 13:23:17 -05:00
mid-kid
7d6befa181 Fix issues in review 2019-02-16 19:08:34 +01:00
Rangi
df337fc417 Update to rgbds 0.3.8 2019-02-16 12:17:55 -05:00
mid-kid
5f60cc24cf Fix some constants
Glass ting SFX were added in crystal.
PicAnimations and UnownAnimations are expected to be in the same bank as
their pointers, because the pointers are not BANK()-referenced
separately.
2019-01-15 13:06:16 +01:00
Rangi
1853e3d127 Say "BANK(Foo) ; aka BANK(Bar)" to clarify that Foo and Bar share a bank 2019-01-12 15:17:20 -05:00
Rangi
2e7e5ca67b PREDEFPAL_4D -> PREDEFPAL_GAMEFREAK_LOGO_OB 2018-09-22 13:40:37 -04:00
Rangi
03cb8c53f1 Identify some Spaceworld beta content 2018-09-16 13:40:47 -04:00
Rangi
ae022e1420 Curr -> Cur 2018-09-09 15:09:51 -04:00
Rangi
557ce82073 hQuotient is a four-byte buffer (fixes #558) 2018-08-26 13:49:38 -04:00
Rangi
1c0fff7668 hLabel - $ff00 -> LOW(hLabel) 2018-08-25 14:34:25 -04:00
Rangi
eb1e3636bb Use labels instead of constants for HRAM
Use explicit ldh instruction to access HRAM locations, don't rely on optimizing ld
2018-08-25 14:28:22 -04:00
Rangi
9dec80b07e Add meaningful aliases for wd265
Introduce MONICON_* constants
Introduce BATTLEPLAYERACTION_* constants
2018-07-29 00:25:52 -04:00
Rangi
d5b98f5206 wPokeAnimStruct matches wPokeAnimStructEnd 2018-07-23 00:37:48 -04:00
Rangi
a1806d6e81 Consistent routine naming convention: 'Foo' wraps '_Foo' 2018-07-23 00:13:43 -04:00
Rangi
bdde60c64b ANIM_MON_UNUSED → ANIM_MON_HOF 2018-07-22 23:42:50 -04:00
Rangi
8b06ff09eb Use significant values 5, 6, and 7 2018-06-30 15:58:05 -04:00
Rangi
6306e590bd No linebreak 2018-06-30 14:53:38 -04:00
Rangi
67d1364c7a Fix triple newlines left over from removing address comments 2018-06-24 23:22:50 -04:00
Rangi
9afaed9b8f Remove more address comments 2018-06-24 21:39:23 -04:00
mid-kid
5efce10789 Remove even more address comments
That should be all of them this time
2018-06-25 02:10:37 +02:00
mid-kid
1d9a68dbdd Remove all address comments 2018-06-24 16:13:22 +02:00
yenatch
dbf05e48eb
Merge pull request #517 from mid-kid/master
Some fixes all around
2018-06-05 07:04:54 -04:00
yenatch
5c0e5fa7ca Fix unused shiny check comments. 2018-06-04 23:36:27 -04:00
mid-kid
5e9c785b3f Merge branch 'master' of https://github.com/pret/pokecrystal 2018-06-04 11:05:53 +02:00
Rangi
c7bb2d15cf Create empty sections for the remaining FixPicBank array entries 2018-06-03 23:25:21 -04:00
Rangi
7cd5bcbae4 Change FixPicBank bank array 2018-06-03 23:18:31 -04:00
mid-kid
17087489c6 Miscellaneous fixes in the use of _command constants. 2018-06-01 09:04:36 +02:00
Rangi
4df72a8474 SGB palette roles discovered from Spaceworld beta G/S 2018-06-01 02:11:44 -04:00
Rangi
a71b7a92b7 Same pic bank solution as pokecrystal 2018-05-29 19:14:04 -04:00
Rangi
1c92cb8b48 'rept' is not indented 2018-05-06 12:16:57 -04:00
mid-kid
d3cc861d33 Fix snake_case filenames
Renamed a bunch of files, most of them one-off functions, to better fit
the general snake_case naming scheme. Also renamed some awfully long filenames.
2018-04-04 22:26:07 +02:00
mid-kid
81fff9bb80 Fix file permissions
I have no idea why this was a thing (do people store this repo on FAT32
flash drives or something?), but quite a bit of files had a permission
of 755. This isn't really a problem, but it's inconsistent and weird.
2018-04-01 17:05:10 +02:00
mid-kid
0d9241889f Organize the engine/ directory, take 3
Renamed `title` to `movies`.
Moved some functions from `engine/routines/` to their fitting
directories, and cleaned up the base `engine/` directory.
Moved `engine/pokemon/tmhm.asm` back to `engine/items/`.

Made a new subdirectory:
* engine/tilesets: Contains all map-related graphics routines.
2018-03-25 16:18:33 +02:00
mid-kid
97c511cd2f Organize the engine/ directory, take 2
Renamed `game` to `games` and `menu` to `menus`.
Moved some functions from `engine/routines/` to their fitting subdirectories.

Made two new subdirectories:
* engine/rtc: Contains all RTC-related things. Menus, hardware, misc
functions.
* engine/items: Contains all item-related things. Pack, item effects,
other item handlers.
2018-03-14 13:28:36 +01:00
mid-kid
baa0dc5a96 Organize the engine/ directory
This is an informed attempt at reorganizing the engine/ directory by
creating categorized subdirectories, in order to make it easier to
navigate and find things.

The directories created are as follows:
* engine/game: Contains all "minigames", things like the unown puzzle
and slot machine.
* engine/gfx: Contains all handling of graphics. From loading palettes
to playing animations.
* engine/link: Contains all multiplayer functionality.
* engine/menu: Contains all generic/misc. menus and menu code.
Other, more specialized menus are in their own subdirectories (pokedex,
pokegear, party menu, etc).
* engine/overworld: Contains all handling of the overworld. From loading
and connecting maps to wild encounters and the scripting engine.
* engine/pokegear: In the same vein as engine/pokedex, except it could
use some more splitting up.
* engine/pokemon: Contains everything related to manipulating pokemon
data. From the pokemon storage system to evolution and mail.
* engine/printer: Contains everything related to printing things as well
as the printer communication.
* engine/title: Contains intro sequences, title screens and credits.
2018-03-13 13:21:40 +01:00