mirror of
https://gitlab.com/xCrystal/pokecrystal-board.git
synced 2024-09-09 09:51:34 -07:00
104 lines
1.7 KiB
NASM
104 lines
1.7 KiB
NASM
|
ReanchorBGMap_NoOAMUpdate:: ; 6454
|
||
|
call DelayFrame
|
||
|
ld a, [hOAMUpdate]
|
||
|
push af
|
||
|
|
||
|
ld a, $1
|
||
|
ld [hOAMUpdate], a
|
||
|
ld a, [hBGMapMode]
|
||
|
push af
|
||
|
xor a
|
||
|
ld [hBGMapMode], a
|
||
|
|
||
|
call .ReanchorBGMap
|
||
|
|
||
|
pop af
|
||
|
ld [hBGMapMode], a
|
||
|
pop af
|
||
|
ld [hOAMUpdate], a
|
||
|
ld hl, VramState
|
||
|
set 6, [hl]
|
||
|
ret
|
||
|
|
||
|
.ReanchorBGMap:
|
||
|
xor a
|
||
|
ld [hLCDCPointer], a
|
||
|
ld [hBGMapMode], a
|
||
|
ld a, $90
|
||
|
ld [hWY], a
|
||
|
call OverworldTextModeSwitch
|
||
|
ld a, VBGMap1 / $100
|
||
|
call .LoadBGMapAddrIntoHRAM
|
||
|
call _OpenAndCloseMenu_HDMATransferTileMapAndAttrMap
|
||
|
callba LoadOW_BGPal7
|
||
|
callba ApplyPals
|
||
|
ld a, $1
|
||
|
ld [hCGBPalUpdate], a
|
||
|
xor a
|
||
|
ld [hBGMapMode], a
|
||
|
ld [hWY], a
|
||
|
callba HDMATransfer_FillBGMap0WithBlack ; no need to farcall
|
||
|
ld a, VBGMap0 / $100
|
||
|
call .LoadBGMapAddrIntoHRAM
|
||
|
xor a
|
||
|
ld [wBGMapAnchor], a
|
||
|
ld a, VBGMap0 / $100
|
||
|
ld [wBGMapAnchor + 1], a
|
||
|
xor a
|
||
|
ld [hSCX], a
|
||
|
ld [hSCY], a
|
||
|
call ApplyBGMapAnchorToObjects
|
||
|
ret
|
||
|
|
||
|
.LoadBGMapAddrIntoHRAM: ; 64b9
|
||
|
ld [hBGMapAddress + 1], a
|
||
|
xor a
|
||
|
ld [hBGMapAddress], a
|
||
|
ret
|
||
|
|
||
|
LoadFonts_NoOAMUpdate:: ; 64bf
|
||
|
ld a, [hOAMUpdate]
|
||
|
push af
|
||
|
ld a, $1
|
||
|
ld [hOAMUpdate], a
|
||
|
|
||
|
call .LoadGFX
|
||
|
|
||
|
pop af
|
||
|
ld [hOAMUpdate], a
|
||
|
ret
|
||
|
|
||
|
.LoadGFX:
|
||
|
call LoadFontsExtra
|
||
|
ld a, $90
|
||
|
ld [hWY], a
|
||
|
call SafeUpdateSprites
|
||
|
call LoadStandardFont
|
||
|
ret
|
||
|
|
||
|
HDMATransfer_FillBGMap0WithBlack: ; 64db
|
||
|
ld a, [rSVBK]
|
||
|
push af
|
||
|
ld a, $6
|
||
|
ld [rSVBK], a
|
||
|
|
||
|
ld a, "<BLACK>" ; $60
|
||
|
ld hl, wDecompressScratch
|
||
|
ld bc, wScratchAttrMap - wDecompressScratch
|
||
|
call ByteFill
|
||
|
ld a, wDecompressScratch / $100
|
||
|
ld [rHDMA1], a
|
||
|
ld a, wDecompressScratch % $100
|
||
|
ld [rHDMA2], a
|
||
|
ld a, (VBGMap0 % $8000) / $100
|
||
|
ld [rHDMA3], a
|
||
|
ld a, (VBGMap0 % $8000) % $100
|
||
|
ld [rHDMA4], a
|
||
|
ld a, $3f
|
||
|
ld [hDMATransfer], a
|
||
|
call DelayFrame
|
||
|
|
||
|
pop af
|
||
|
ld [rSVBK], a
|
||
|
ret
|