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
This commit is contained in:
Rangi
2021-03-03 22:22:41 -05:00
parent 9c17fb14c8
commit 40902ffe24
148 changed files with 608 additions and 237 deletions

View File

@@ -7,6 +7,7 @@ ENDM
SpecialPhoneCallList:
; entries correspond to SPECIALCALL_* constants
table_width SPECIALCALL_SIZE, SpecialPhoneCallList
specialcall SpecialCallOnlyWhenOutside, PHONECONTACT_ELM, ElmPhoneCallerScript
specialcall SpecialCallOnlyWhenOutside, PHONECONTACT_ELM, ElmPhoneCallerScript
specialcall SpecialCallOnlyWhenOutside, PHONECONTACT_ELM, ElmPhoneCallerScript
@@ -15,3 +16,4 @@ SpecialPhoneCallList:
specialcall SpecialCallWhereverYouAre, PHONECONTACT_BIKESHOP, BikeShopPhoneCallerScript
specialcall SpecialCallWhereverYouAre, PHONECONTACT_MOM, MomPhoneLectureScript
specialcall SpecialCallOnlyWhenOutside, PHONECONTACT_ELM, ElmPhoneCallerScript
assert_table_length NUM_SPECIALCALLS