shithub: pokecrystal

Download patch

ref: 066cc91b136b7266288b832bfa212123400ed758
parent: f27f79488a460f0a89670f3611e1e9e175baf5d6
author: mid-kid <esteve.varela@gmail.com>
date: Sat Dec 30 07:23:20 EST 2017

Fix some MenuData2 labels

Gave them better names, moved the flags out of the union, and documented
the w2DMenuFlags1.

--- a/engine/menu.asm
+++ b/engine/menu.asm
@@ -110,14 +110,14 @@
 	ret
 ; 240cd
 
-GetMenuNumberOfColumns: ; 240cd
-	ld a, [wMenuData2Items]
+Get2DMenuNumberOfColumns: ; 240cd
+	ld a, [wMenuData2_2DMenuDimensions]
 	and $f
 	ret
 ; 240d3
 
-GetMenuNumberOfRows: ; 240d3
-	ld a, [wMenuData2Items]
+Get2DMenuNumberOfRows: ; 240d3
+	ld a, [wMenuData2_2DMenuDimensions]
 	swap a
 	and $f
 	ret
@@ -130,12 +130,12 @@
 	ld d, [hl]
 	call GetMenuTextStartCoord
 	call Coord2Tile
-	call GetMenuNumberOfRows
+	call Get2DMenuNumberOfRows
 	ld b, a
 .row
 	push bc
 	push hl
-	call GetMenuNumberOfColumns
+	call Get2DMenuNumberOfColumns
 	ld c, a
 .col
 	push bc
@@ -142,7 +142,7 @@
 	ld a, [wMenuData2_2DMenuItemStringsBank]
 	call Place2DMenuItemName
 	inc de
-	ld a, [wMenuData2Spacing]
+	ld a, [wMenuData2_2DMenuSpacing]
 	ld c, a
 	ld b, 0
 	add hl, bc
@@ -174,9 +174,9 @@
 	dec c
 	ld a, c
 	ld [w2DMenuCursorInitX], a
-	call GetMenuNumberOfRows
+	call Get2DMenuNumberOfRows
 	ld [w2DMenuNumRows], a
-	call GetMenuNumberOfColumns
+	call Get2DMenuNumberOfColumns
 	ld [w2DMenuNumCols], a
 	call .InitFlags_a
 	call .InitFlags_b
@@ -238,7 +238,7 @@
 ; 2418a
 
 .InitFlags_b: ; 2418a
-	ld a, [wMenuData2Spacing]
+	ld a, [wMenuData2_2DMenuSpacing]
 	or $20
 	ld [w2DMenuCursorOffsets], a
 	ret
--- a/wram.asm
+++ b/wram.asm
@@ -1361,37 +1361,28 @@
 wMenuDataHeaderEnd::
 
 wMenuData2::
-UNION ; cf91
 ; MenuData2
-wMenuData2Flags:: ; cf91
-; bit 7: When set, start printing text one tile to the right of the border
-;        In scrolling menus, SELECT is functional
-; bit 6: When set, start printing text one tile below the border
-;        In scrolling menus, START is functional
-; bit 5: ????
-; bit 4: ????
-; bit 3: ????
-; bit 2: ????
-; bit 1: Enable Select button
-; bit 0: Disable B button
-	db
+
+wMenuData2Flags:: db ; cf91
+
+UNION ; cf92
+; Vertical Menu/DoNthMenu/SetUpMenu
 wMenuData2Items:: db ; cf92
 wMenuData2IndicesPointer:: dw ; cf94
 wMenuData2DisplayFunctionPointer:: dw ; cf96
 wMenuData2PointerTableAddr:: dw ; cf97
 
-NEXTU ; cf91
-; 2D menu
-	ds 2 ; cf91
-wMenuData2Spacing:: db ; cf93
+NEXTU ; cf92
+; 2D Menu
+wMenuData2_2DMenuDimensions:: db ; cf92
+wMenuData2_2DMenuSpacing:: db ; cf93
 wMenuData2_2DMenuItemStringsBank:: db ; cf94
 wMenuData2_2DMenuItemStringsAddr:: dw ; cf96
 wMenuData2_2DMenuFunctionBank:: db ; cf97
 wMenuData2_2DMenuFunctionAddr:: dw ; cf98
 
-NEXTU ; cf91
-; scrolling menu
-	ds 1 ; cf91
+NEXTU ; cf92
+; Scrolling Menu
 wMenuData2_ScrollingMenuHeight:: db ; cf92
 wMenuData2_ScrollingMenuWidth:: db ; cf93
 wMenuData2_ScrollingMenuSpacing:: db ; cf94
@@ -1408,7 +1399,16 @@
 w2DMenuCursorInitX:: db ; cfa2
 w2DMenuNumRows:: db ; cfa3
 w2DMenuNumCols:: db ; cfa4
-w2DMenuFlags1:: db ; cfa5
+w2DMenuFlags1:: ; cfa5
+; bit 7: Disable checking of wMenuJoypadFilter
+; bit 6: Enable sprite animations
+; bit 5: Wrap around vertically
+; bit 4: Wrap around horizontally
+; bit 3: Set bit 7 in w2DMenuFlags2 and exit the loop if bit 5 is disabled and we tried to go too far down
+; bit 2: Set bit 7 in w2DMenuFlags2 and exit the loop if bit 5 is disabled and we tried to go too far up
+; bit 1: Set bit 7 in w2DMenuFlags2 and exit the loop if bit 4 is disabled and we tried to go too far left
+; bit 0: Set bit 7 in w2DMenuFlags2 and exit the loop if bit 4 is disabled and we tried to go too far right
+	db
 w2DMenuFlags2:: db ; cfa6
 w2DMenuCursorOffsets:: db ; cfa7
 wMenuJoypadFilter:: db ; cfa8