diff options
Diffstat (limited to 'home')
-rw-r--r-- | home/menu.asm | 389 | ||||
-rw-r--r-- | home/tilemap.asm | 209 |
2 files changed, 258 insertions, 340 deletions
diff --git a/home/menu.asm b/home/menu.asm index 3e04af8c..bbc29b34 100644 --- a/home/menu.asm +++ b/home/menu.asm @@ -1,78 +1,61 @@ -; Functions used in displaying and handling menus. - - -LoadMenuDataHeader:: +LoadMenuDataHeader:: ; 1bac (0:1bac) call CopyMenuDataHeader call PushWindow ret -CopyMenuDataHeader:: +CopyMenuDataHeader:: ; 1bb3 (0:1bb3) ld de, wMenuDataHeader ld bc, wMenuDataHeaderEnd - wMenuDataHeader call CopyBytes - ld a, [hROMBank] - ld [wMenuDataBank], a ret -; 0x1d4b -StoreTo_wMenuCursorBuffer:: ; 1d4b +StoreTo_wMenuCursorBuffer ld [wMenuCursorBuffer], a ret -; 1d4f - -MenuTextBox:: ; 1d4f +MenuTextBox:: ; 1bc1 (0:1bc1) push hl call LoadMenuTextBox pop hl jp PrintText -; 1d57 -ret_1d57:: ; 1d57 -; unreferenced +; XXX +ret_1bc9 ret -; 1d58 -LoadMenuTextBox:: ; 1d58 +LoadMenuTextBox:: ; 1bca (0:1bca) ld hl, .MenuDataHeader call LoadMenuDataHeader ret -; 1d5f - -.MenuDataHeader ; 1d5f +.MenuDataHeader: db $40 ; tile backup db 12, 0 ; start coords db 17, 19 ; end coords - dw VTiles0 + dw $8000 db 0 ; default option -; 1d67 -MenuTextBoxBackup:: ; 1d67 +MenuTextBoxBackup:: call MenuTextBox call CloseWindow ret -; 1d6e -LoadStandardMenuDataHeader:: ; 1d6e +LoadStandardMenuDataHeader:: ld hl, .MenuDataHeader call LoadMenuDataHeader ret -; 1d75 -.MenuDataHeader ; 1d75 +.MenuDataHeader: ; 1d75 db $40 ; tile backup db 0, 0 ; start coords db 17, 19 ; end coords dw 0 db 1 ; default option -; 1d7d -Call_ExitMenu:: ; 1d7d +Call_ExitMenu:: call ExitMenu ret -; 1d81 -VerticalMenu:: +VerticalMenu:: ; 1bf3 (0:1bf3) xor a ld [hBGMapMode], a call MenuBox @@ -82,28 +65,25 @@ VerticalMenu:: call CopyMenuData2 ld a, [wMenuData2Flags] bit 7, a - jr z, .cancel + jr z, .asm_1c19 call InitVerticalMenuCursor call StaticMenuJoypad call MenuClickSound bit 1, a - jr z, .okay -.cancel + jr z, .asm_1c1b +.asm_1c19 scf ret - -.okay +.asm_1c1b and a ret -; 0x1dab -GetMenu2:: ; 1dab +GetMenu2:: call LoadMenuDataHeader call VerticalMenu call CloseWindow ld a, [wMenuCursorY] ret -; 1db8 CopyNameFromMenu:: push hl @@ -116,94 +96,74 @@ CopyNameFromMenu:: inc hl inc hl pop af - call GetNthString + call Function3654 ld d, h ld e, l - call CopyName1 + call Function317b pop bc pop hl ret -; 0x1dcf - -YesNoBox:: ; 1dcf +YesNoBox:: lb bc, SCREEN_WIDTH - 6, 7 - -PlaceYesNoBox:: ; 1dd2 +PlaceYesNoBox:: jr _YesNoBox -PlaceGenericTwoOptionBox:: ; 1dd4 +PlaceGenericTwoOptionBox:: call LoadMenuDataHeader jr InterpretTwoOptionMenu -_YesNoBox:: ; 1dd9 -; Return nc (yes) or c (no). +_YesNoBox:: push bc ld hl, YesNoMenuDataHeader call CopyMenuDataHeader pop bc -; This seems to be an overflow prevention, but -; it was coded wrong. - ld a, b - cp SCREEN_WIDTH - 6 - jr nz, .okay ; should this be "jr nc"? - ld a, SCREEN_WIDTH - 6 - ld b, a - -.okay ld a, b ld [wMenuBorderLeftCoord], a - add 5 + add $5 ld [wMenuBorderRightCoord], a ld a, c ld [wMenuBorderTopCoord], a - add 4 + add $4 ld [wMenuBorderBottomCoord], a call PushWindow - -InterpretTwoOptionMenu:: ; 1dfe +InterpretTwoOptionMenu:: call VerticalMenu push af ld c, $f call DelayFrames call CloseWindow pop af - jr c, .no + jr c, .asm_1c80 ld a, [wMenuCursorY] - cp 2 ; no - jr z, .no + cp $2 + jr z, .asm_1c80 and a ret - -.no - ld a, 2 +.asm_1c80 + ld a, $2 ld [wMenuCursorY], a scf ret -; 1e1d - -YesNoMenuDataHeader:: ; 1e1d +YesNoMenuDataHeader:: ; 1c87 (0:1c87) db $40 ; tile backup db 5, 10 ; start coords db 9, 15 ; end coords dw .MenuData2 db 1 ; default option -; 1e25 -.MenuData2 ; 1e25 +.MenuData2: ; 1e25 db $c0 ; flags db 2 db "YES@" db "NO@" -; 1e2e -OffsetMenuDataHeader:: ; 1e2e - call _OffsetMenuDataHeader +OffsetMenuDataHeader:: + call OffsetMenuDataHeader_ call PushWindow ret -; 1e35 -_OffsetMenuDataHeader:: ; 1e35 +OffsetMenuDataHeader_:: ; 1c9f (0:1c9f) push de call CopyMenuDataHeader pop de @@ -226,39 +186,37 @@ _OffsetMenuDataHeader:: ; 1e35 add l ld [wMenuBorderBottomCoord], a ret -; 1e5d -DoNthMenu:: ; 1e5d - call MenuFunc_1e7f +DoNthMenu:: + call DrawVariableLengthMenuBox call MenuWriteText - call Function1eff - call Function1f23 + call InitMenuCursorAndButtonPermissions + call GetStaticMenuJoypad call GetMenuJoypad call MenuClickSound ret -; 1e70 -SetUpMenu:: ; 1e70 - call MenuFunc_1e7f ; ??? +SetUpMenu:: + call DrawVariableLengthMenuBox call MenuWriteText - call Function1eff ; set up selection pointer - ld hl, w2DMenuFlags1 + call InitMenuCursorAndButtonPermissions + ld hl, wcedc set 7, [hl] ret -MenuFunc_1e7f:: +DrawVariableLengthMenuBox:: ; 1ce9 (0:1ce9) call CopyMenuData2 call GetMenuIndexSet - call Function1ea6 + call AutomaticGetMenuBottomCoord call MenuBox ret -MenuWriteText:: +MenuWriteText:: ; 1cf6 (0:1cf6) xor a ld [hBGMapMode], a - call GetMenuIndexSet ; sort out the text - call Function1eda ; actually write it - call Function2e31 + call GetMenuIndexSet + call RunMenuItemPrintingFunction + call Function2ef1 ld a, [hOAMUpdate] push af ld a, $1 @@ -267,9 +225,8 @@ MenuWriteText:: pop af ld [hOAMUpdate], a ret -; 0x1ea6 -Function1ea6:: ; 1ea6 +AutomaticGetMenuBottomCoord:: ; 1d10 (0:1d10) ld a, [wMenuBorderLeftCoord] ld c, a ld a, [wMenuBorderRightCoord] @@ -283,165 +240,146 @@ Function1ea6:: ; 1ea6 add b ld [wMenuBorderBottomCoord], a ret -; 1ebd -GetMenuIndexSet:: ; 1ebd +GetMenuIndexSet:: ; 1d27 (0:1d27) ld hl, wMenuData2IndicesPointer ld a, [hli] ld h, [hl] ld l, a ld a, [wWhichIndexSet] and a - jr z, .skip + jr z, .asm_1d3d ld b, a - ld c, -1 -.loop + ld c, $ff +.asm_1d36 ld a, [hli] cp c - jr nz, .loop + jr nz, .asm_1d36 dec b - jr nz, .loop - -.skip + jr nz, .asm_1d36 +.asm_1d3d ld d, h ld e, l ld a, [hl] ld [wMenuData2Items], a ret -; 1eda -Function1eda:: ; 1eda +RunMenuItemPrintingFunction:: ; 1d44 (0:1d44) call MenuBoxCoord2Tile ld bc, 2 * SCREEN_WIDTH + 2 add hl, bc -.loop +.asm_1d4b inc de ld a, [de] - cp -1 + cp $ff ret z - ld [MenuSelection], a + ld [wMenuSelection], a push de push hl ld d, h ld e, l ld hl, wMenuData2DisplayFunctionPointer - call .__wMenuData2DisplayFunction__ + call ._hl_ pop hl - ld de, 2 * SCREEN_WIDTH + ld de, $28 add hl, de pop de - jr .loop -; 1efb + jr .asm_1d4b -.__wMenuData2DisplayFunction__ ; 1efb +._hl_ ; 1d65 (0:1d65) ld a, [hli] ld h, [hl] ld l, a jp [hl] -; 1eff -Function1eff:: ; 1eff +InitMenuCursorAndButtonPermissions:: ; 1d69 (0:1d69) call InitVerticalMenuCursor ld hl, wMenuJoypadFilter ld a, [wMenuData2Flags] bit 3, a - jr z, .disallow_select - set START_F, [hl] - -.disallow_select + jr z, .asm_1d78 + set 3, [hl] +.asm_1d78 ld a, [wMenuData2Flags] bit 2, a - jr z, .disallow_left_right - set D_LEFT_F, [hl] - set D_RIGHT_F, [hl] - -.disallow_left_right + jr z, .asm_1d83 + set 5, [hl] + set 4, [hl] +.asm_1d83 ret -; 1f1a - -Function1f1a:: ; 1f1a +GetScrollingMenuJoypad:: call ScrollingMenuJoypad ld hl, wMenuJoypadFilter and [hl] - jr Function1f2a -; 1f23 + jr ContinueGettingMenuJoypad -Function1f23:: ; 1f23 +GetStaticMenuJoypad:: ; 1d8d (0:1d8d) xor a ld [wMenuJoypad], a call StaticMenuJoypad -; 1f2a - -Function1f2a:: ; 1f2a - bit A_BUTTON_F, a - jr nz, .a_button - bit B_BUTTON_F, a - jr nz, .b_start - bit START_F, a - jr nz, .b_start - bit D_RIGHT_F, a - jr nz, .d_right - bit D_LEFT_F, a - jr nz, .d_left +ContinueGettingMenuJoypad:: + bit 0, a + jr nz, .asm_1dbc + bit 1, a + jr nz, .asm_1dd7 + bit 3, a + jr nz, .asm_1dd7 + bit 4, a + jr nz, .asm_1dae + bit 5, a + jr nz, .asm_1db5 xor a ld [wMenuJoypad], a - jr .done - -.d_right - ld a, D_RIGHT + jr .asm_1dc1 +.asm_1dae + ld a, $10 ld [wMenuJoypad], a - jr .done - -.d_left - ld a, D_LEFT + jr .asm_1dc1 +.asm_1db5 + ld a, $20 ld [wMenuJoypad], a - jr .done - -.a_button - ld a, A_BUTTON + jr .asm_1dc1 +.asm_1dbc + ld a, $1 ld [wMenuJoypad], a - -.done +.asm_1dc1 call GetMenuIndexSet ld a, [wMenuCursorY] ld l, a ld h, $0 add hl, de ld a, [hl] - ld [MenuSelection], a + ld [wMenuSelection], a ld a, [wMenuCursorY] ld [wMenuCursorBuffer], a and a ret - -.b_start - ld a, B_BUTTON +.asm_1dd7 + ld a, $2 ld [wMenuJoypad], a - ld a, -1 - ld [MenuSelection], a + ld a, $ff + ld [wMenuSelection], a scf ret -; 1f79 -PlaceMenuStrings:: ; 1f79 +PlaceMenuStrings:: push de ld hl, wMenuData2PointerTableAddr ld a, [hli] ld h, [hl] ld l, a - ld a, [MenuSelection] - call GetNthString + ld a, [wMenuSelection] + call Function3654 ld d, h ld e, l pop hl call PlaceString ret -; 1f8d -PlaceNthMenuStrings:: ; 1f8d +PlaceNthMenuStrings:: push de - ld a, [MenuSelection] + ld a, [wMenuSelection] call GetMenuDataPointerTableEntry inc hl inc hl @@ -451,10 +389,8 @@ PlaceNthMenuStrings:: ; 1f8d pop hl call PlaceString ret -; 1f9e -Function1f9e:: ; 1f9e -; unreferenced +Function1e08:: call GetMenuDataPointerTableEntry inc hl inc hl @@ -462,18 +398,16 @@ Function1f9e:: ; 1f9e ld d, [hl] ld e, a ret -; 1fa7 -MenuJumptable:: ; 1fa7 - ld a, [MenuSelection] +MenuJumptable:: + ld a, [wMenuSelection] call GetMenuDataPointerTableEntry ld a, [hli] ld h, [hl] ld l, a jp [hl] -; 1fb1 -GetMenuDataPointerTableEntry:: ; 1fb1 +GetMenuDataPointerTableEntry:: ; 1e1b (0:1e1b) ld e, a ld d, $0 ld hl, wMenuData2PointerTableAddr @@ -485,107 +419,88 @@ GetMenuDataPointerTableEntry:: ; 1fb1 add hl, de add hl, de ret -; 1fbf -ClearWindowData:: ; 1fbf - ld hl, wWindowStackPointer +ClearWindowData:: + ld hl, wWindowData call .bytefill ld hl, wMenuDataHeader call .bytefill - ld hl, wMenuData2Flags + ld hl, wMenuData2 call .bytefill - ld hl, w2DMenuCursorInitY + ld hl, wMenuData3 call .bytefill - - ld a, [rSVBK] - push af - ld a, $7 - ld [rSVBK], a - xor a - ld hl, wWindowStackBottom + call OpenSRAM + xor a + ld hl, sWindowStackTop ld [hld], a ld [hld], a ld a, l ld [wWindowStackPointer], a ld a, h ld [wWindowStackPointer + 1], a - - pop af - ld [rSVBK], a + call CloseSRAM ret -; 1ff0 -.bytefill: ; 1ff0 - ld bc, $0010 +.bytefill + ld bc, $10 xor a call ByteFill ret -; 1ff8 -MenuClickSound:: ; 1ff8 +MenuClickSound:: ; 1e5f (0:1e5f) push af - and A_BUTTON | B_BUTTON - jr z, .nosound - ld hl, wMenuFlags - bit 3, [hl] - jr nz, .nosound + and $3 + jr z, .asm_1e6e + ld hl, wMenuDataHeader + bit 3, a + jr nz, .asm_1e6e call PlayClickSFX -.nosound +.asm_1e6e pop af ret -; 2009 - - -PlayClickSFX:: ; 2009 +PlayClickSFX:: ; 1e70 (0:1e70) push de ld de, SFX_READ_TEXT_2 call PlaySFX pop de ret -; 0x2012 -MenuTextBoxWaitButton:: ; 2012 +MenuTextBoxWaitButton:: call MenuTextBox call WaitButton call ExitMenu ret -; 201c -Place2DMenuItemName:: ; 201c - ld [hBuffer], a +Place2DMenuItemName:: + ld [wBuffer], a ld a, [hROMBank] push af - ld a, [hBuffer] + ld a, [wBuffer] rst Bankswitch - call PlaceString pop af rst Bankswitch - ret -; 202a -_2DMenu:: ; 202a - ld a, [hROMBank] - ld [wMenuData2_2DMenuItemStringsBank], a - callba _2DMenu_ - ld a, [wMenuCursorBuffer] - ret -; 2039 - -InterpretBattleMenu:: ; 2039 +_2DMenu:: + call CopyMenuData2 ld a, [hROMBank] - ld [wMenuData2_2DMenuItemStringsBank], a - callba _InterpretBattleMenu + ld [wMenuDataBank], a + push af + ld a, BANK(_2DMenu_) + rst Bankswitch + call _2DMenu_ + pop bc + ld a, b + rst Bankswitch ld a, [wMenuCursorBuffer] ret -; 2048 -InterpretMobileMenu:: ; 2048 - ld a, [hROMBank] - ld [wMenuData2_2DMenuItemStringsBank], a - callba _InterpretMobileMenu - ld a, [wMenuCursorBuffer] +ResetBGWindow:: + xor a + ld [hBGMapMode], a + ld a, $90 + ld [rWY], a + ld [hWY], a ret -; 2057 diff --git a/home/tilemap.asm b/home/tilemap.asm index 152f7568..9b2a41da 100644 --- a/home/tilemap.asm +++ b/home/tilemap.asm @@ -1,19 +1,81 @@ -PushWindow:: ; 1c00 - callab _PushWindow +SetMenuAttributes:: ; 1a4e + push hl + push bc + ld hl, w2DMenuCursorInitY + ld b, $8 +.asm_1a55 + ld a, [de] + inc de + ld [hli], a + dec b + jr nz, .asm_1a55 + ld a, $1 + ld [hli], a + ld [hli], a + xor a + ld [hli], a + ld [hli], a + ld [hli], a + pop bc + pop hl + ret + +StaticMenuJoypad:: ; 1a66 (0:1a66) + callab StaticMenuJoypad_ + call GetMenuJoypad + ret + +ScrollingMenuJoypad:: ; 1a70 (0:1a70) + callab ScrollingMenuJoypad_ + call GetMenuJoypad ret -; 1c07 -ExitMenu:: ; 0x1c07 +GetMenuJoypad:: ; 1a7a (0:1a7a) + push bc push af - callab _ExitMenu + ld a, [hJoyLast] + and D_PAD + ld b, a + ld a, [hJoyPressed] + and BUTTONS + or b + ld b, a pop af + ld a, b + pop bc + ret + +PlaceHollowCursor:: + ld hl, wCursorCurrentTile + ld a, [hli] + ld h, [hl] + ld l, a + ld [hl], "▷" ret -InitVerticalMenuCursor:: ; 0x1c10 - callab _InitVerticalMenuCursor +HideCursor:: + ld hl, wCursorCurrentTile + ld a, [hli] + ld h, [hl] + ld l, a + ld [hl], " " ret -CloseWindow:: ; 0x1c17 +PushWindow:: ; 1a9d (0:1a9d) + callab PushWindow_ + ret + +ExitMenu:: ; 1aa4 (0:1aa4) + push af + callab ExitMenu_ + pop af + ret + +InitVerticalMenuCursor:: ; 1aad (0:1aad) + callab InitVerticalMenuCursor_ + ret + +CloseWindow:: ; 1ab4 (0:1ab4) push af call ExitMenu call ApplyTilemap @@ -21,65 +83,53 @@ CloseWindow:: ; 0x1c17 pop af ret -RestoreTileBackup:: ; 0x1c23 +RestoreTileBackup:: call MenuBoxCoord2Tile - call .copy - call MenuBoxCoord2Attr - call .copy - ret -; 0x1c30 - -.copy: ; 0x1c30 call GetMenuBoxDims inc b inc c - -.row +.asm_1ac8 push bc push hl - -.col +.asm_1aca ld a, [de] ld [hli], a dec de dec c - jr nz, .col ; 0x1c3b $fa - + jr nz, .asm_1aca pop hl - ld bc, SCREEN_WIDTH + ld bc, $14 add hl, bc pop bc dec b - jr nz, .row ; 0x1c44 $ef - + jr nz, .asm_1ac8 ret -PopWindow:: ; 0x1c47 - ld b, $10 - ld de, wMenuFlags -.loop +PopWindow:: + ld b, wMenuDataHeaderEnd - wMenuDataHeader + ld de, wMenuDataHeader +.asm_1adf ld a, [hld] ld [de], a inc de dec b - jr nz, .loop ; 0x1c50 $fa + jr nz, .asm_1adf ret -GetMenuBoxDims:: ; 0x1c53 - ld a, [wMenuBorderTopCoord] ; top +GetMenuBoxDims:: ; 1ae6 (0:1ae6) + ld a, [wMenuBorderTopCoord] ld b, a - ld a, [wMenuBorderBottomCoord] ; bottom + ld a, [wMenuBorderBottomCoord] sub b ld b, a - ld a, [wMenuBorderLeftCoord] ; left + ld a, [wMenuBorderLeftCoord] ld c, a - ld a, [wMenuBorderRightCoord] ; right + ld a, [wMenuBorderRightCoord] sub c ld c, a ret -; 0x1c66 -CopyMenuData2:: ; 1c66 +CopyMenuData2:: ; 1af9 (0:1af9) push hl push de push bc @@ -88,17 +138,16 @@ CopyMenuData2:: ; 1c66 ld a, [hli] ld h, [hl] ld l, a - ld de, wMenuData2Flags - ld bc, wMenuData2End - wMenuData2Flags + ld de, wMenuData2 + ld bc, wMenuData2End - wMenuData2 call CopyBytes pop af pop bc pop de pop hl ret -; 1c7e -GetWindowStackTop:: ; 1c7e +GetWindowStackTop:: ld hl, wWindowStackPointer ld a, [hli] ld h, [hl] @@ -108,21 +157,20 @@ GetWindowStackTop:: ; 1c7e ld h, [hl] ld l, a ret -; 1c89 -PlaceVerticalMenuItems:: ; 1c89 +PlaceVerticalMenuItems:: ; 1b1c (0:1b1c) call CopyMenuData2 ld hl, wMenuData2Pointer ld e, [hl] inc hl ld d, [hl] call GetMenuTextStartCoord - call Coord2Tile ; hl now contains the TileMap address where we will start printing text. + call Coord2Tile inc de - ld a, [de] ; Number of items + ld a, [de] inc de ld b, a -.loop +.asm_1b2f push bc call PlaceString inc de @@ -130,12 +178,10 @@ PlaceVerticalMenuItems:: ; 1c89 add hl, bc pop bc dec b - jr nz, .loop - + jr nz, .asm_1b2f ld a, [wMenuData2Flags] bit 4, a ret z - call MenuBoxCoord2Tile ld a, [de] ld c, a @@ -143,41 +189,34 @@ PlaceVerticalMenuItems:: ; 1c89 ld b, $0 add hl, bc jp PlaceString -; 1cbb -MenuBox:: ; 1cbb +MenuBox:: ; 1b4e (0:1b4e) call MenuBoxCoord2Tile call GetMenuBoxDims dec b dec c jp TextBox -; 1cc6 -GetMenuTextStartCoord:: ; 1cc6 +GetMenuTextStartCoord:: ; 1b59 (0:1b59) ld a, [wMenuBorderTopCoord] ld b, a inc b ld a, [wMenuBorderLeftCoord] ld c, a inc c -; bit 6: if not set, leave extra room on top ld a, [wMenuData2Flags] bit 6, a - jr nz, .bit_6_set + jr nz, .asm_1b6b inc b - -.bit_6_set -; bit 7: if set, leave extra room on the left +.asm_1b6b ld a, [wMenuData2Flags] bit 7, a - jr z, .bit_7_clear + jr z, .asm_1b73 inc c - -.bit_7_clear +.asm_1b73 ret -; 1ce1 -ClearMenuBoxInterior:: ; 1ce1 +ClearMenuBoxInterior:: call MenuBoxCoord2Tile ld bc, SCREEN_WIDTH + 1 add hl, bc @@ -186,56 +225,21 @@ ClearMenuBoxInterior:: ; 1ce1 dec c call ClearBox ret -; 1cf1 -ClearWholeMenuBox:: ; 1cf1 +ClearWholeMenuBox:: call MenuBoxCoord2Tile call GetMenuBoxDims inc c inc b call ClearBox ret -; 1cfd - - -MenuBoxCoord2Tile:: ; 1cfd - ld a, [wMenuBorderLeftCoord] - ld c, a - ld a, [wMenuBorderTopCoord] - ld b, a -; 1d05 - - -Coord2Tile:: ; 1d05 -; Return the address of TileMap(c, b) in hl. - xor a - ld h, a - ld l, b - ld a, c - ld b, h - ld c, l - add hl, hl - add hl, hl - add hl, bc - add hl, hl - add hl, hl - ld c, a - xor a - ld b, a - add hl, bc - bccoord 0, 0 - add hl, bc - ret -; 1d19 -MenuBoxCoord2Attr:: ; 1d19 +MenuBoxCoord2Tile:: ; 1b90 (0:1b90) ld a, [wMenuBorderLeftCoord] ld c, a ld a, [wMenuBorderTopCoord] ld b, a - -Coord2Attr:: ; 1d21 -; Return the address of AttrMap(c, b) in hl. +Coord2Tile:: ; 1b98 (0:1b98) xor a ld h, a ld l, b @@ -251,7 +255,6 @@ Coord2Attr:: ; 1d21 xor a ld b, a add hl, bc - bccoord 0, 0, AttrMap + ld bc, wTileMap add hl, bc ret -; 1d35 |