From 4cd6284647447367ce981a836e40b59111de37e7 Mon Sep 17 00:00:00 2001 From: Rangi Date: Sat, 22 Jan 2022 21:43:10 -0500 Subject: `ClearWindowData` clears four menu data buffers, each the same size --- home/menu.asm | 21 ++++++++++++--------- wram.asm | 6 ++++-- 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 -- cgit v1.2.3