Commit Graph

69 Commits

Author SHA1 Message Date
xCrystal
e53ae0eac9 Optimize some HRAM usage 2023-09-30 19:12:57 +02:00
xCrystal
2cbe0e1764 Sync with pokecrystal up to aba1f14 2023-09-24 15:06:19 +02:00
xCrystal
59bda0b36b Fix some pokecrystal bug and glitches (#8)
Credits sequence changes move selection menu behavior; Swimming NPCs aren't limited by their movement radius; No bump noise if standing on tile E; The unused phonecall script command may crash; ScriptCall can overflow wScriptStack and crash; LoadSpriteGFX does not limit the capacity of UsedSprites; ReadObjectEvents overflows into wObjectMasks; ClearWRAM only clears WRAM bank 1; BattleAnimCmd_ClearObjs only clears the first 6⅔ objects; Options menu fails to clear joypad state on initialization
2023-07-27 13:01:32 +02:00
xCrystal
d30b9dd60f Further remove unnecessary DMG/SGB checking (#7) and remove SGB layouts and palette data (#1) 2023-07-26 17:02:33 +02:00
xCrystal
acd022d765 Remove unnecessary DMG and SGB checking (#7) 2023-07-26 17:02:33 +02:00
Fredrik Ljungdahl
40c899162b Replace numbers with constants in PlayHitSound 2022-08-24 12:17:31 +02:00
Colton G. Rushton
145d8dd5c2
wVirtualOAM -> wShadowOAM and hTransferVirtualOAM -> hTransferShadowOAM (#971) 2022-07-09 17:18:22 -04:00
vulcandth
ef9b9bb437
Clean up bugs commented in the source code (#912)
Co-authored-by: Rangi <remy.oukaour+rangi42@gmail.com>
2022-07-09 16:12:02 -05:00
vulcandth
a4d346cc8c
Improved Virtual Console patch identifiers (#907) 2022-06-06 17:22:48 -04:00
Rangi
f33a041930 Allow alternate labels for patch names 2022-03-12 22:38:29 -05:00
vulcandth
31c3c94d64
Build the Virtual Console patch with make crystal11_vc (#882)
Fixes #813
2022-03-12 18:34:04 -05:00
Rangi
e706b878d9 Use ~X instead of $ff ^ X 2021-11-23 20:37:18 -05:00
Rangi
d132a20b7a Verify script command table sizes 2021-03-11 16:28:52 -05:00
Rangi
4264d53eb6 Identify some more labels 2021-02-05 12:44:21 -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
03e149e559 Identify wBattleAnimTemp0-3 2020-11-09 15:05:14 -05: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
7Soul
cf26f55985
Identify battle bg effects functions and constants (#773)
Identify battle bg effects functions and constants
2020-10-06 15:45:09 -04:00
Rangi
6b7ade66da Identify more unnamed labels 2020-10-05 16:15:57 -04: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
b6055b1944 Use TRUE for hCGBPalUpdate 2020-08-05 16:02:48 +02:00
Rangi
6ca82e5c86 Eliminate enum: use const instead, with case-by-case parallel const implementations 2020-07-08 15:30:23 -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
f76dabedcc Harmonize engine/{battle, battle_anims, events, games} with pokegold 2020-06-16 19:32:36 -04:00
Rangi
6a6ba10315 rgbds supports 'X - 1' instead of 'X + -1' 2020-03-21 14:01:05 -04:00
Rangi
5a5f5ececd Miscellaneous fixes from #694 2020-03-21 13:07:18 -04:00
Rangi
1d4c1aeef4 'and BANK' -> 'aka BANK' 2020-02-28 11:51:42 -05:00
mid-kid
c5a4c0bd2e Create some battle tower SRAM labels 2019-04-12 13:58:49 +02:00
Rangi
7c42452748 Standardize on $ff ^ X for bitwise negating 8-bit values 2019-02-16 13:52:19 -05:00
Rangi
96bcf72d96 Document the BattleAnimCmd_ClearObjs bug 2019-02-16 13:31:23 -05:00
mid-kid
80ece33e3e Document wBattleAnimFlags
`anim_clearsprites` was misnamed, so I renamed it to `anim_keepsprites`,
and documented it in docs/battle_anim_commands.md
2019-02-16 12:55:40 +01:00
mid-kid
7e93916c8a Add more constants for battle anim structs
Any access of the wram arrays for battle anim objects and background
effects use appropriate macros and constants, now.
2019-02-16 01:43:12 +01:00
mid-kid
4154f191e0 Anotate more of the battle anim subsystem
The X and Y flip flags can be applied through the stack consisting of:
- Object attributes
- Animation frame attributes
- OAM Data
Each of these negate eachother.

Confused yet? The same stack is traversed to obtain the final tile ID,
with an added layer on top for the base GFX offset and the offset for
the dynamically loaded GFX requested by the object!

wBattleAnimDelay is populated with the values passed to `anim_wait`.
2019-02-15 03:01:59 +01:00
mid-kid
bfedd89308 BATTLEANIMSTRUCT_0B -> BATTLEANIMSTRUCT_PARAM
This structure member is used for storing the parameter passed to
`anim_obj`.
2019-02-06 08:12:52 +01:00
mid-kid
930d285fab Fix comments around BANK() statements
Found a couple BANK()s that reference multiple labels.
2018-12-26 21:58:13 +01:00
mid-kid
c4979d9770 Rename "feet and head follow" commands
The lot of these were rather misnamed, since they're used to replace
part of the player or enemy with objects for several background effects.
https://github.com/pret/pokecrystal/pull/578#issuecomment-440996244
2018-11-25 23:57:38 +01:00
mid-kid
41f39211ca Identified another user of wBattleAnimTemp
QueueBattleAnimation loads an object using these wram addresses. Usually
populated by the anim_obj command, but in a couple of cases also
manually.
2018-11-22 12:32:24 +01:00
mid-kid
2746288030 Define ANIM_GFX for PLAYER and ENEMY
These are used where the head or the feet of the player/enemy have to be
moved in an animation, and shouldn't overlap. These aren't actual GFX
and should be loaded with the proper commands, and they're always loaded
at the end of the VRAM area.

Furthermore, I've defined BATTLEANIM_BASE_TILE, which is the tile from
which battle animation graphics may start to load. This value was picked
to make sure at least an entire pokemon pic fits in the area before it,
even though it doesn't seem very used...
2018-11-21 23:44:31 +01: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
04d0490c4c Fix anim_ret_command 2018-07-18 10:55:30 +02:00
Rangi
1caa50a647 No space between labels and bodies 2018-06-25 12:24:18 -04:00
Rangi
67d1364c7a Fix triple newlines left over from removing address comments 2018-06-24 23:22:50 -04:00
mid-kid
1d9a68dbdd Remove all address comments 2018-06-24 16:13:22 +02:00
Rangi
fbe82a7fe0 Note which labels are only needed for locating banks (relevant to issue #485) 2018-06-12 23:29:15 -04:00
mid-kid
80d437d565 Fix some uses of EFFECTIVE 2018-04-05 07:54:20 +02:00
Rangi
32ed487a47 Merge branch 'master' of https://github.com/pret/pokecrystal
# Conflicts:
#	audio/engine.asm
#	constants/gfx_constants.asm
#	constants/map_data_constants.asm
#	constants/pokemon_data_constants.asm
#	constants/sprite_constants.asm
#	constants/wram_constants.asm
#	data/maps/data.asm
#	engine/battle/ai/scoring.asm
#	engine/battle/core.asm
#	engine/battle/effect_commands.asm
#	engine/battle/misc.asm
#	engine/battle_anims/getpokeballwobble.asm
#	engine/breeding.asm
#	engine/buy_sell_toss.asm
#	engine/decorations.asm
#	engine/events/battle_tower/battle_tower.asm
#	engine/events/battle_tower/rules.asm
#	engine/events/buena.asm
#	engine/events/bug_contest/contest_2.asm
#	engine/events/daycare.asm
#	engine/events/dratini.asm
#	engine/events/halloffame.asm
#	engine/events/happiness_egg.asm
#	engine/events/kurt.asm
#	engine/events/lucky_number.asm
#	engine/events/magnet_train.asm
#	engine/events/overworld.asm
#	engine/events/pokerus/pokerus.asm
#	engine/events/print_unown.asm
#	engine/events/print_unown_2.asm
#	engine/events/unown_walls.asm
#	engine/item_effects.asm
#	engine/link.asm
#	engine/mon_menu.asm
#	engine/player_object.asm
#	engine/routines/playslowcry.asm
#	engine/scripting.asm
#	engine/search.asm
#	engine/search2.asm
#	engine/specials.asm
#	engine/start_menu.asm
#	engine/timeset.asm
#	home/battle_vars.asm
#	home/map.asm
#	maps/GoldenrodUndergroundSwitchRoomEntrances.asm
#	maps/IlexForest.asm
#	maps/KrissHouse2F.asm
#	maps/Route39Barn.asm
#	mobile/mobile_12_2.asm
#	mobile/mobile_40.asm
#	mobile/mobile_5f.asm
#	wram.asm
2018-02-03 19:42:56 -05:00
Rangi
e32e5212af use "x + -1" not "x +- 1"
(TODO: use "x - 1" once rgbds allows it)
2018-02-02 22:55:38 -05:00
luckytyphlosion
4a3384ab09 wSpritesEnd -> wVirtualOAMEnd. 2018-01-30 14:55:20 -05:00