diff options
-rw-r--r-- | home.asm | 57 | ||||
-rwxr-xr-x | home/scrolling_menu.asm | 61 | ||||
-rw-r--r-- | main.asm | 4 |
3 files changed, 64 insertions, 58 deletions
@@ -257,62 +257,7 @@ GetWeekday:: INCLUDE "home/pokedex_flags.asm" INCLUDE "home/names.asm" - -ScrollingMenu:: - call CopyMenuData - ldh a, [hROMBank] - push af - ld a, BANK(ScrollingMenu_) - rst Bankswitch - call InitScrollingMenu - call ScrollingMenuUpdatePalettes - call ScrollingMenu_ - pop af - rst Bankswitch - ld a, [wMenuJoypad] - ret - -ScrollingMenuUpdatePalettes:: ; 3769 (0:3769) - ld hl, wVramState - bit 0, [hl] - jp nz, UpdateTimePals - jp SetPalettes - -DrawScrollingMenu:: - ld a, [wMenuBorderTopCoord] - dec a - ld b, a - ld a, [wMenuBorderBottomCoord] - sub b - ld d, a - ld a, [wMenuBorderLeftCoord] - dec a - ld c, a - ld a, [wMenuBorderRightCoord] - sub c - ld e, a - push de - call Coord2Tile - pop bc - jp Textbox - -ScrollingMenuJoyTextDelay:: - call DelayFrame - ldh a, [hInMenu] - push af - ld a, $1 - ldh [hInMenu], a - call JoyTextDelay - pop af - ldh [hInMenu], a - ldh a, [hJoyLast] - and $f0 - ld c, a - ldh a, [hJoyPressed] - and $f - or c - ld c, a - ret +INCLUDE "home/scrolling_menu.asm" HandleStoneQueue:: ldh a, [hROMBank] diff --git a/home/scrolling_menu.asm b/home/scrolling_menu.asm new file mode 100755 index 00000000..6b8c1595 --- /dev/null +++ b/home/scrolling_menu.asm @@ -0,0 +1,61 @@ +ScrollingMenu:: + call CopyMenuData + ldh a, [hROMBank] + push af + + ld a, BANK(_ScrollingMenu) ; aka BANK(_InitScrollingMenu) + rst Bankswitch + + call _InitScrollingMenu + call .UpdatePalettes + call _ScrollingMenu + + pop af + rst Bankswitch + + ld a, [wMenuJoypad] + ret + +.UpdatePalettes: + ld hl, wVramState + bit 0, [hl] + jp nz, UpdateTimePals + jp SetPalettes + +InitScrollingMenu:: + ld a, [wMenuBorderTopCoord] + dec a + ld b, a + ld a, [wMenuBorderBottomCoord] + sub b + ld d, a + ld a, [wMenuBorderLeftCoord] + dec a + ld c, a + ld a, [wMenuBorderRightCoord] + sub c + ld e, a + push de + call Coord2Tile + pop bc + jp Textbox + +JoyTextDelay_ForcehJoyDown:: + call DelayFrame + + ldh a, [hInMenu] + push af + ld a, $1 + ldh [hInMenu], a + call JoyTextDelay + pop af + ldh [hInMenu], a + + ldh a, [hJoyLast] + and D_RIGHT + D_LEFT + D_UP + D_DOWN + ld c, a + ldh a, [hJoyPressed] + and A_BUTTON + B_BUTTON + SELECT + START + or c + ld c, a + ret
\ No newline at end of file @@ -741,9 +741,9 @@ _InitVerticalMenuCursor:: dr $24395, $243eb UpdateItemDescription: dr $243eb, $244d7 -InitScrollingMenu:: +_InitScrollingMenu:: dr $244d7, $244f3 -ScrollingMenu_:: +_ScrollingMenu:: dr $244f3, $24834 SwitchItemsInBag: dr $24834, $249dc |