Commit Graph

246 Commits

Author SHA1 Message Date
Rangi
dbe2360ecd Miscellaneous cleanup 2021-03-22 16:41:17 -04:00
Rangi
6c8f8609cb Assert some more table widths 2021-03-17 11:38:01 -04:00
Rangi
ec1fe073a3 $11 = wTempMonStructEnd - wTempMonLevel 2021-03-15 15:40:48 -04:00
Rangi
97a11c623e Sync some files with pokegold 2021-03-11 17:43:20 -05:00
Rangi
d132a20b7a Verify script command table sizes 2021-03-11 16:28:52 -05:00
Rangi
dbabd8b4a9 Define MAPGROUP_* constants and verify MapGroup_* table sizes 2021-03-10 21:16:54 -05:00
Rangi
e791c5392b
Merge pull request #806 from Rangi42/tables
Verify data table sizes with table_width and assert_table_length macros
2021-03-08 07:01:31 -08:00
Rangi
c1c609ec4a Identify scrolling menu lists in WRAM
Fixes #809
2021-03-08 09:41:55 -05: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
99e66c2557 Rename some labels
- Remove "Buffer" suffix from some byte and word quantities
- Change "Ptr" to "Pointer"

Fixes #789
2020-12-23 16:29:30 -05:00
Rangi
4613bcfadf Use STRING_BUFFER_LENGTH for the wStringBuffers 2020-11-24 20:11:17 -05:00
Rangi
97e981985b Correct some filename comments 2020-11-17 11:12:21 -05:00
Rangi
9b3c45b14d Resolve some "???" comments 2020-11-17 11:09:02 -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
c88c4a8340 Identify more uses of wBuffer1-6 2020-11-03 19:53:07 -05:00
Rangi
ba5bc304f9 Updates to more closely sync with pokegold 2020-10-29 23:23:57 -04:00
Rangi
bcc0d633e9 Identify the remaining (non-mobile) uses of another WRAM union 2020-10-29 14:51:41 -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
446f1846b1 Identify remaining Mystery Gift labels and constants
Source: https://projectpokemon.org/home/forums/topic/43930-mystery-gift-reverse-engineering-of-ir-protocol/
2020-10-27 23:09:06 -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
bd3f634049 Identify remaining map object labels 2020-10-22 21:30:21 -04:00
Rangi
d8310c166d Identify some more map object labels and constants 2020-10-22 17:41:48 -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
2e90df15b7 Update battle anim bg function comments, and identify more unnamed labels 2020-10-06 18:09:33 -04:00
Rangi
fc08ff2c38 Identify some unnamed labels 2020-10-06 13:50:02 -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
ff2d850219 Identify some more unnamed labels 2020-10-05 12:02:56 -04:00
Rangi
306c85750e Identify some more unnamed labels 2020-10-04 20:10:39 -04:00
Rangi
0b31d12dac
Merge pull request #756 from mid-kid/master
Rub a dub dub, thanks for the grub
2020-08-18 16:35:15 -04:00
Rangi
7729dcd204 Consistent constants for radio data table sizes (could still be better) 2020-08-13 13:47:50 -04:00
mid-kid
b6055b1944 Use TRUE for hCGBPalUpdate 2020-08-05 16:02:48 +02:00
Rangi
dcb24bc724 Use def_* macros for automatic map event counts
Resolves #742
2020-07-24 09:57:16 -04:00
Rangi
11dc805de0 Revert "Factor out tables into data/overworld/"
This reverts commit b5a7e7de3e.
2020-07-22 20:21:26 -04:00
Rangi
b5a7e7de3e Factor out tables into data/overworld/
Fixes #749
2020-07-22 15:22:58 -04:00
Rangi
212846af57 Treat map setup commands like trade script commands
Fixes #736
2020-07-22 13:37:43 -04:00
Rangi
fc99117d88 " " → $7f 2020-07-21 11:12:56 -04:00
Rangi
ef452ccbc7 return → endcallback, reloadandreturn → reloadend 2020-07-17 08:37:03 -04:00
Rangi
eca33ef190 Define map setup commands as macros like other script commands 2020-07-13 20:44:16 -04:00
Rangi
e239aa4aba Disassemble the final English debug ROM 2020-07-13 15:18:28 -04:00
Rangi
6ca82e5c86 Eliminate enum: use const instead, with case-by-case parallel const implementations 2020-07-08 15:30:23 -04:00
Rangi
61847b3596 Identify some more labels 2020-06-22 16:30:13 -04:00
Rangi
c3c18dd196 Comment more ROM labels as unreferenced
(Some unreferenced labels are above code which is still used via fallthrough!)
2020-06-21 18:33:31 -04:00
Rangi
91774f206e Replace "Unreferenced" labels with "; unreferenced" comments 2020-06-21 16:27:43 -04:00
Rangi
50e182e831 Harmonize engine/overworld with pokegold 2020-06-17 22:12:04 -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
f2550fc3c2 ReplaceKrisSprite -> UpdatePlayerSprite 2020-06-16 19:38:00 -04:00
Rangi
b9f2b93c17 Harmonize some more symbols with pokegold 2020-06-16 11:28:52 -04:00
Rangi
4342ced31f Identify wObjectPriorities 2020-06-15 23:28:24 -04:00
Rangi
401aa383e2 make DEBUG=1 logs all symbols in the .map and .sym files 2020-06-14 21:52:33 -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
22615cecc5 More miscellaneous fixes (see #709) 2020-04-17 10:52:59 -04:00
Rangi
58b377f25b Fix #709 miscellaneous issues 2020-04-16 09:30:50 -04:00
Rangi
ad50e94b50 Add a LANDMARK_ prefix to landmark constants
Resolves #697
2020-03-15 19:50:39 -04:00
Rangi
c3f389d615 Replace some "idiotic", "wtf", "stupid interns" comments with more common "useless", "pointless", "could have done X instead" 2020-02-23 18:51:32 -05:00
mid-kid
9a927c1b3e
Merge pull request #685 from mid-kid/master
Moshi moshi? minoru enhansumentsu desu
2020-02-21 21:11:36 +01:00
Rangi
88bbdb6a2f Define TileCollisionTable as a standard 'db' series 2020-02-13 19:07:19 -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
Rangi
fb9cbe7d1e
Merge pull request #650 from pret/audio-macros
Update audio macros and arguments
2020-02-05 18:51:20 -05:00
Rangi
24a23b1922 Use CMDQUEUE constants 2020-02-04 11:11:43 -05:00
dannye
e7be25948d Merge branch 'master' into audio-macros 2020-01-06 22:07:33 -06:00
Rangi
94ebdab6d3
Merge pull request #660 from mid-kid/master
Make the map setup commands match the actual function names better
2020-01-04 20:08:43 -05:00
Rangi
fa7261a8ee Update some labels 2019-12-03 09:17:21 -05:00
mid-kid
739a60b33c Make the map setup commands match the actual function names better
These functions used as map setup commands are used in other places,
too, so I can't prefix them under the same. The names should match
except I won't repeat "map" in a map setup command name.
2019-11-18 18:21:57 +01:00
Rangi
4d32035d4f Bit 6 of PrintNum left-aligns numbers 2019-11-03 20:17:04 -05:00
Rangi
0c7b309f7f Suggested formatting changes 2019-11-03 20:07:25 -05:00
Rangi
717cf3f458 Identify PLAYERMOVEMENT_* constants 2019-11-03 14:30:33 -05:00
Rangi
4aeab6b879 Rename buttonsound to promptbutton 2019-11-03 12:48:54 -05:00
Rangi
5134266b9a Rename OBJECT_LENGTH to MAPOBJECT_LENGTH and OBJECT_STRUCT_LENGTH to OBJECT_LENGTH 2019-11-03 12:26:38 -05:00
mid-kid
7111ae8e58 Fix some mobile script and map sign things 2019-10-21 00:42:36 +02:00
mid-kid
1f172badc4 Misc fixes 2019-10-21 00:31:50 +02:00
mid-kid
e3e0bcd653 #641 fixes and additions. (#646)
Name a lot of text labels according to our conventions
2019-10-20 18:24:17 -04:00
dannye
fc051f2130 Update audio macros and arguments
and update related labels/constants/comments
this fixes a lot of mistakes and maximizes compatibility with red
2019-09-02 03:41:25 -05:00
mid-kid
c048b24d25 Create constants for ScrollingMenu item formats
...I should've done this quite a while ago.
2019-06-09 02:31:24 +02:00
mid-kid
c7fdf5f9ec Fix overworld scrolling function names 2019-06-09 00:17:35 +02:00
mid-kid
649c8d38da Get rid of _CRYSTAL
Having this here is completely redundant and useless, and doesn't even
work since it should use `if DEF(_CRYSTAL)` instead.
2019-05-25 17:59:50 +02:00
Rangi
cca2afe827 More fixes for fixes 2019-04-23 19:07:41 -04:00
Rangi
45e3f6aca9 Identify some more WRAM labels 2019-04-19 11:35:27 -04:00
Rangi
1ada06f576
Merge pull request #622 from mid-kid/master
TextBox -> Textbox
2019-04-13 11:50:16 -04:00
Rangi
9c0ef59cb0
Merge pull request #614 from Fontbane/text
common_1 text documentation
2019-04-13 11:46:37 -04:00
mid-kid
3e78e5b2b6 TextBox -> Textbox
Homogenizing names.
2019-04-09 16:09:18 +02:00
Rangi
2184b60a0c Identify and eliminate wEngineBuffer1-5 2019-04-08 19:42:55 -04:00
Fontbane
a3119736fa common_1 text documentation
Should be almost everything besides some of the mobile stuff and some debug text.

Removed VS stuff

oops
2019-03-16 13:00:44 -04:00
Rangi
f5c9958aea Rename some call/jump script commands to avoid confusion with jr/jp asm instructions
Fixes #580
2019-03-10 16:39:31 -04:00
Rangi
e002b536af Rename more script commands for consistency and predictability
Fixes #540
2019-03-10 16:00:19 -04:00
Rangi
79dc22c769 Define constants for map event sizes 2019-03-03 14:19:16 -05:00
Rangi
dc396822d7 Identify more collision-related constants and data 2019-03-03 13:30:27 -05:00
Rangi
8e359978d6 passtoengine -> autoinput 2019-02-16 16:06:11 -05:00
Rangi
af29f1f97c Eliminate some $xxxx values 2019-02-16 13:04:08 -05:00
Rangi
6cbdd245fc $8 = HIGH(vTiles1 - vTiles0) 2019-02-06 23:52:50 -05:00
Rangi
60cdc65293 wc7e8 -> wUnusedC7E8 (similar to wUnusedD102) 2019-01-30 19:46:45 -05:00
Rangi
79ea091ff6 Use and define more WRAM constants 2019-01-24 21:41:14 -05:00
Rangi
68d4a53483 Use more constants 2019-01-24 21:15:30 -05: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
fe04acad7b Document bugfix: ScriptCall can overflow wScriptStack and crash 2019-01-07 18:28:47 -05:00
Rangi
e51339f01a Formatting and comments 2018-12-09 18:13:37 -05:00
Rangi
3202c4f3df Resolve issue #575: Rename text commands 2018-11-18 12:41:11 -05:00
Rangi
ffd2b70902
Merge pull request #573 from mid-kid/master
text_jump → text_far
2018-11-11 17:07:17 -05:00
mid-kid
375963349a Finish new connection macro
Tried simplifying things a bit, although not nearly as much as I wanted.
Ideally, we'd either have one of two situations:
- A single set of calculations based on values depending on the
direction of the connection
- A bunch of "generic" calculations done before applying simple
modifiers to them in the final `if` block

Right now it's an icky mix of both and I'm not really sure what to make
of it.
2018-11-10 14:34:49 +01:00
mid-kid
940256569b text_jump → text_far
The previous name for this was rather misleading. It isn't an actual
jump like you'd expect the `jp` instruction to behave as. Instead, it
behaves more like a `farcall`.
This also makes it consistent with its current command ID name of
`TX_FAR`.
2018-11-05 22:26:18 +01:00
mid-kid
f52f20edb7 Rename CheckTrainerBattle
Renamed to be more in line with our current coding standards. Hopefully
this is slightly more readable.
2018-10-11 11:39:09 +02:00
Rangi
ae022e1420 Curr -> Cur 2018-09-09 15:09:51 -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
mid-kid
f98a95b8ee wWeeklyFlags -> wDailyFlags2
These are by far not always checked each week, and as such shouldn't be
called that.
Since they're almost always used through the `bit` instruction, it's
very inconvenient to just make wDailyFlags a `dw` instead.
2018-08-07 09:46:21 +02:00
Rangi
c9cb67141b Make reviewed fixes; standardize on " + " 2018-07-29 01:40:23 -04:00
Rangi
5145d69506 ; entries correspond to PLAYEREVENT_* constants 2018-07-29 00:57:28 -04:00
Rangi
9dec80b07e Add meaningful aliases for wd265
Introduce MONICON_* constants
Introduce BATTLEPLAYERACTION_* constants
2018-07-29 00:25:52 -04:00
mid-kid
23708441ef Make proper cmdqueue constants 2018-07-18 10:55:30 +02:00
Rangi
b23f0b2bda Fewer uses of 'Thing2 - Thing1' for sizeof(Thing) 2018-07-16 15:58:07 -04:00
Rangi
60568e8833 Comments for ToggleMaptileDecorations 2018-07-13 23:19:24 -04:00
Rangi
e2cf3eb7bd Add more collision nybble constants 2018-06-28 22:35:29 -04:00
Rangi
00c2dba157 Merge events_2.asm with events.asm
(events_2.asm was only separate because scripting.asm intervenes; but other files have a similar "code / INCLUDE self-contained code / more code" structure to this)
2018-06-25 13:48:16 -04:00
Rangi
1caa50a647 No space between labels and bodies 2018-06-25 12:24:18 -04:00
Rangi
9f3e9145f9 Remove more triple newlines 2018-06-25 12:01:02 -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
Rangi
e2fb7acac0 Merge branch 'master' of https://github.com/pret/pokecrystal
# Conflicts:
#	engine/items/mart.asm
2018-06-24 21:23:51 -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
Rangi
1a888f2200 NUM_GRASSMON * 2 2018-06-24 13:00:55 -04:00
Rangi
ee48c7a3ed NUM_WATERMON 2018-06-24 12:32:56 -04:00
Rangi
d84aabf3c1 WATER_WILDDATA_LENGTH 2018-06-24 12:30:33 -04:00
mid-kid
1d9a68dbdd Remove all address comments 2018-06-24 16:13:22 +02:00
mid-kid
5e9c785b3f Merge branch 'master' of https://github.com/pret/pokecrystal 2018-06-04 11:05:53 +02:00
mid-kid
17087489c6 Miscellaneous fixes in the use of _command constants. 2018-06-01 09:04:36 +02:00
Rangi
3927bcdb9d Function6ec1 → CanObjectMoveInDirection 2018-05-24 12:36:35 -04:00
Rangi
a91aa18dae Use constants more 2018-05-23 22:13:46 -04:00
Rangi
1840af8b4f Identify more sprite move data flag bits 2018-05-23 22:01:21 -04:00
Rangi
85f7328bf8 Identify USE_OBP1_F 2018-05-23 20:44:32 -04:00
Rangi
50ea6d6e22 WALKS_ON_WATER → SWIMMING 2018-05-23 19:10:15 -04:00
Rangi
c85b32ed80 More sprite movement data flag constants 2018-05-23 19:06:04 -04:00
Rangi
c5d18de8ff Use known sprite movement data flag constants 2018-05-23 13:15:07 -04:00
mid-kid
acdb302035 Fix rest of the givepokeitem/checkpokeitem references 2018-05-06 13:48:04 +02:00
mid-kid
c82deab86f fix-various-little-things
A compilation of suggestions from the discord that don't deserve
separate commits and are not questionable at all™.
2018-05-05 09:19:04 +02:00
yenatch
40b537d45b
Merge pull request #503 from Rangi42/master
Factor wMisc into meaningful parts; move most code out of home.asm
2018-04-09 21:30:24 -04:00
Rangi
7307fc8dce Use constants for bit/set/res more 2018-04-05 11:44:02 -04:00
mid-kid
28c6eb8341 Use data/items/pocket_names.asm 2018-04-05 07:54:20 +02:00
Rangi
81306889e3 Merge branch 'master' of https://github.com/pret/pokecrystal 2018-04-04 23:56:40 -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
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