summaryrefslogtreecommitdiff
path: root/src/code
diff options
context:
space:
mode:
authorDragorn421 <Dragorn421@users.noreply.github.com>2022-05-17 00:14:08 +0200
committerGitHub <noreply@github.com>2022-05-17 00:14:08 +0200
commitf6c472ae5e53575af5f0fd0f92ddc03c37ff0cf7 (patch)
tree5ebbe2be6a8974436ca032fbab8d4a14fa894f92 /src/code
parentd4b6b31b153ae1df434e75dca53d796cb63ca197 (diff)
Doc misc 5 (#1223)
* Annotate global equip and upgrade masks data * Trivial respawn doc stuff Move the respawn mode enum up to use the _MAX enum value in the save context struct * Comment on the `sceneFlags[127]` debug-strings-suggested out-of-bounds access * Reword `room_inf[127]` comments (attempt)
Diffstat (limited to 'src/code')
-rw-r--r--src/code/code_80097A00.c77
1 files changed, 59 insertions, 18 deletions
diff --git a/src/code/code_80097A00.c b/src/code/code_80097A00.c
index 6e624ed17..bf9d205fa 100644
--- a/src/code/code_80097A00.c
+++ b/src/code/code_80097A00.c
@@ -11,26 +11,67 @@ u32 gBitFlags[] = {
(1 << 24), (1 << 25), (1 << 26), (1 << 27), (1 << 28), (1 << 29), (1 << 30), (1 << 31),
};
-u16 gEquipMasks[] = { 0x000F, 0x00F0, 0x0F00, 0xF000 };
-u16 gEquipNegMasks[] = { 0xFFF0, 0xFF0F, 0xF0FF, 0x0FFF };
-u32 gUpgradeMasks[] = {
- 0x00000007, 0x00000038, 0x000001C0, 0x00000E00, 0x00003000, 0x0001C000, 0x000E0000, 0x00700000,
+u16 gEquipMasks[EQUIP_TYPE_MAX] = {
+ 0xF << (EQUIP_TYPE_SWORD * 4), // EQUIP_TYPE_SWORD
+ 0xF << (EQUIP_TYPE_SHIELD * 4), // EQUIP_TYPE_SHIELD
+ 0xF << (EQUIP_TYPE_TUNIC * 4), // EQUIP_TYPE_TUNIC
+ 0xF << (EQUIP_TYPE_BOOTS * 4), // EQUIP_TYPE_BOOTS
};
-u32 gUpgradeNegMasks[] = {
- 0xFFFFFFF8, 0xFFFFFFC7, 0xFFFFFE3F, 0xFFFFF1FF, 0xFFFFCFFF, 0xFFFE3FFF, 0xFFF1FFFF, 0xFF8FFFFF,
+u16 gEquipNegMasks[EQUIP_TYPE_MAX] = {
+ (u16) ~(0xF << (EQUIP_TYPE_SWORD * 4)), // EQUIP_TYPE_SWORD
+ (u16) ~(0xF << (EQUIP_TYPE_SHIELD * 4)), // EQUIP_TYPE_SHIELD
+ (u16) ~(0xF << (EQUIP_TYPE_TUNIC * 4)), // EQUIP_TYPE_TUNIC
+ (u16) ~(0xF << (EQUIP_TYPE_BOOTS * 4)), // EQUIP_TYPE_BOOTS
};
-u8 gEquipShifts[] = { 0, 4, 8, 12 };
-u8 gUpgradeShifts[] = { 0, 3, 6, 9, 12, 14, 17, 20 };
-
-u16 gUpgradeCapacities[][4] = {
- { 0, 30, 40, 50 }, // Quivers
- { 0, 20, 30, 40 }, // Bomb Bags
- { 0, 0, 0, 0 }, // Unused (Scale)
- { 0, 0, 0, 0 }, // Unused (Strength)
- { 99, 200, 500, 500 }, // Wallets
- { 0, 30, 40, 50 }, // Deku Seed Bullet Bags
- { 0, 10, 20, 30 }, // Deku Stick Upgrades
- { 0, 20, 30, 40 }, // Deku Nut Upgrades
+
+u32 gUpgradeMasks[UPG_MAX] = {
+ 0x00000007, // UPG_QUIVER
+ 0x00000038, // UPG_BOMB_BAG
+ 0x000001C0, // UPG_STRENGTH
+ 0x00000E00, // UPG_SCALE
+ 0x00003000, // UPG_WALLET
+ 0x0001C000, // UPG_BULLET_BAG
+ 0x000E0000, // UPG_STICKS
+ 0x00700000, // UPG_NUTS
+};
+u32 gUpgradeNegMasks[UPG_MAX] = {
+ ~0x00000007, // UPG_QUIVER
+ ~0x00000038, // UPG_BOMB_BAG
+ ~0x000001C0, // UPG_STRENGTH
+ ~0x00000E00, // UPG_SCALE
+ ~0x00003000, // UPG_WALLET
+ ~0x0001C000, // UPG_BULLET_BAG
+ ~0x000E0000, // UPG_STICKS
+ ~0x00700000, // UPG_NUTS
+};
+
+u8 gEquipShifts[EQUIP_TYPE_MAX] = {
+ EQUIP_TYPE_SWORD * 4, // EQUIP_TYPE_SWORD
+ EQUIP_TYPE_SHIELD * 4, // EQUIP_TYPE_SHIELD
+ EQUIP_TYPE_TUNIC * 4, // EQUIP_TYPE_TUNIC
+ EQUIP_TYPE_BOOTS * 4, // EQUIP_TYPE_BOOTS
+};
+
+u8 gUpgradeShifts[UPG_MAX] = {
+ 0, // UPG_QUIVER
+ 3, // UPG_BOMB_BAG
+ 6, // UPG_STRENGTH
+ 9, // UPG_SCALE
+ 12, // UPG_WALLET
+ 14, // UPG_BULLET_BAG
+ 17, // UPG_STICKS
+ 20, // UPG_NUTS
+};
+
+u16 gUpgradeCapacities[UPG_MAX][4] = {
+ { 0, 30, 40, 50 }, // UPG_QUIVER
+ { 0, 20, 30, 40 }, // UPG_BOMB_BAG
+ { 0, 0, 0, 0 }, // UPG_STRENGTH (unused)
+ { 0, 0, 0, 0 }, // UPG_SCALE (unused)
+ { 99, 200, 500, 500 }, // UPG_WALLET
+ { 0, 30, 40, 50 }, // UPG_BULLET_BAG
+ { 0, 10, 20, 30 }, // UPG_STICKS
+ { 0, 20, 30, 40 }, // UPG_NUTS
};
u32 gGsFlagsMasks[] = { 0x000000FF, 0x0000FF00, 0x00FF0000, 0xFF000000 };