1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
|
; empties screen in preparation to draw some menu
InitMenuScreen:
ld a, $0
ld [wTileMapFill], a
call EmptyScreen
call LoadSymbolsFont
lb de, $30, $7f
call SetupText
call Set_OBJ_8x8
xor a
ldh [hSCX], a
ldh [hSCY], a
ld a, [wLCDC]
bit LCDC_ENABLE_F, a
jr nz, .skip_clear_scroll
xor a
ldh [rSCX], a
ldh [rSCY], a
.skip_clear_scroll
call SetDefaultPalettes
call ZeroObjectPositions
ld a, $1
ld [wVBlankOAMCopyToggle], a
ret
; saves all pals to SRAM, then fills them with white.
; after flushing, it loads back the saved pals from SRAM.
FlashWhiteScreen:
ldh a, [hBankSRAM]
push af
ld a, BANK("SRAM1")
call BankswitchSRAM
call CopyPalsToSRAMBuffer
call DisableSRAM
call SetWhitePalettes
call FlushAllPalettes
call EnableLCD
call DoFrameIfLCDEnabled
call LoadPalsFromSRAMBuffer
call FlushAllPalettes
pop af
call BankswitchSRAM
call DisableSRAM
ret
|