summaryrefslogtreecommitdiff
path: root/data/types
diff options
context:
space:
mode:
authorRangi <remy.oukaour+rangi42@gmail.com>2021-03-03 22:22:41 -0500
committerRangi <remy.oukaour+rangi42@gmail.com>2021-03-05 16:10:25 -0500
commit5454e1e0deefc6b4fc8c4de0e63314052fceebc0 (patch)
tree565805b252fa596aab3f80b3128ebc91b1fae540 /data/types
parentb423e94be700cc6434465cf1dcccf0b677489192 (diff)
Verify data table sizes with table_width and assert_table_length macros
It also uncovered some off-by-one issues with defining some constants. A few structs now use rsreset/_RS to define their offset constants.
Diffstat (limited to 'data/types')
-rw-r--r--data/types/names.asm4
-rw-r--r--data/types/search_strings.asm2
-rw-r--r--data/types/search_types.asm2
3 files changed, 8 insertions, 0 deletions
diff --git a/data/types/names.asm b/data/types/names.asm
index 62d8e13b..94fe67e1 100644
--- a/data/types/names.asm
+++ b/data/types/names.asm
@@ -1,5 +1,6 @@
TypeNames:
; entries correspond to types (see constants/type_constants.asm)
+ table_width 2, TypeNames
dw Normal
dw Fighting
dw Flying
@@ -10,6 +11,7 @@ TypeNames:
dw Bug
dw Ghost
dw Steel
+ assert_table_length UNUSED_TYPES
dw Normal
dw Normal
dw Normal
@@ -20,6 +22,7 @@ TypeNames:
dw Normal
dw Normal
dw CurseType
+ assert_table_length UNUSED_TYPES_END
dw Fire
dw Water
dw Grass
@@ -28,6 +31,7 @@ TypeNames:
dw Ice
dw Dragon
dw Dark
+ assert_table_length TYPES_END
Normal: db "NORMAL@"
Fighting: db "FIGHTING@"
diff --git a/data/types/search_strings.asm b/data/types/search_strings.asm
index d03d2786..1345c27c 100644
--- a/data/types/search_strings.asm
+++ b/data/types/search_strings.asm
@@ -1,5 +1,6 @@
PokedexTypeSearchStrings:
; entries correspond with PokedexTypeSearchConversionTable (see data/types/search_types.asm)
+ table_width POKEDEX_TYPE_STRING_LENGTH, PokedexTypeSearchStrings
db " ---- @"
db " NORMAL @"
db " FIRE @"
@@ -18,3 +19,4 @@ PokedexTypeSearchStrings:
db " DRAGON @"
db " DARK @"
db " STEEL @"
+ assert_table_length NUM_TYPES + 1
diff --git a/data/types/search_types.asm b/data/types/search_types.asm
index c3aba3c9..dd9ea562 100644
--- a/data/types/search_types.asm
+++ b/data/types/search_types.asm
@@ -1,5 +1,6 @@
PokedexTypeSearchConversionTable:
; entries correspond with PokedexTypeSearchStrings (see data/types/search_strings.asm)
+ table_width 1, PokedexTypeSearchConversionTable
db NORMAL
db FIRE
db WATER
@@ -17,3 +18,4 @@ PokedexTypeSearchConversionTable:
db DRAGON
db DARK
db STEEL
+ assert_table_length NUM_TYPES