summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRangi <remy.oukaour+rangi42@gmail.com>2022-01-22 21:43:10 -0500
committerRangi <remy.oukaour+rangi42@gmail.com>2022-01-22 21:43:10 -0500
commit4cd6284647447367ce981a836e40b59111de37e7 (patch)
tree894fae22e7a74a333981b86c1ad756337d10eff3
parenta5d862057a07ba81b363b9099165846f4b88389a (diff)
`ClearWindowData` clears four menu data buffers, each the same size
-rw-r--r--home/menu.asm21
-rw-r--r--wram.asm6
2 files changed, 16 insertions, 11 deletions
diff --git a/home/menu.asm b/home/menu.asm
index 4395ee34..0bd39595 100644
--- a/home/menu.asm
+++ b/home/menu.asm
@@ -710,14 +710,14 @@ GetMenuDataPointerTableEntry::
ret
ClearWindowData::
- ld hl, wWindowStackPointer
- call .bytefill
+ ld hl, wMenuMetadata
+ call .ClearMenuData
ld hl, wMenuHeader
- call .bytefill
- ld hl, wMenuDataFlags
- call .bytefill
- ld hl, w2DMenuCursorInitY
- call .bytefill
+ call .ClearMenuData
+ ld hl, wMenuData
+ call .ClearMenuData
+ ld hl, wMoreMenuData
+ call .ClearMenuData
xor a
call OpenSRAM
@@ -734,8 +734,11 @@ ClearWindowData::
call CloseSRAM
ret
-.bytefill
- ld bc, $10
+.ClearMenuData:
+ ld bc, wMenuMetadataEnd - wMenuMetadata
+ assert wMenuMetadataEnd - wMenuMetadata == wMenuHeaderEnd - wMenuHeader
+ assert wMenuMetadataEnd - wMenuMetadata == wMenuDataEnd - wMenuData
+ assert wMenuMetadataEnd - wMenuMetadata == wMoreMenuDataEnd - wMoreMenuData
xor a
call ByteFill
ret
diff --git a/wram.asm b/wram.asm
index 172faa10..35751c8f 100644
--- a/wram.asm
+++ b/wram.asm
@@ -1287,6 +1287,7 @@ wTileRight:: db
wTilePermissions:: db
+wMenuMetadata::
wWindowStackPointer:: dw
wMenuJoypad:: db
wMenuSelection:: db
@@ -1294,8 +1295,8 @@ wMenuSelectionQuantity:: db
wWhichIndexSet:: db
wScrollingMenuCursorPosition:: db
wWindowStackSize:: db
-
ds 8
+wMenuMetadataEnd::
; menu header
wMenuHeader::
@@ -1341,6 +1342,7 @@ wMenuData_ScrollingMenuFunction3:: ds 3
ENDU
wMenuDataEnd::
+wMoreMenuData::
w2DMenuData::
w2DMenuCursorInitY:: db
w2DMenuCursorInitX:: db
@@ -1364,8 +1366,8 @@ wMenuCursorY:: db
wMenuCursorX:: db
wCursorOffCharacter:: db
wCursorCurrentTile:: dw
-
ds 3
+wMoreMenuDataEnd::
wOverworldDelay:: db
wTextDelayFrames:: db