Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
pret
GitHub Repository: pret/pokered
Path: blob/master/home/init.asm
1270 views
1
SoftReset::
2
call StopAllSounds
3
call GBPalWhiteOut
4
ld c, 32
5
call DelayFrames
6
; fallthrough
7
8
Init::
9
; Program init.
10
di
11
12
xor a
13
ldh [rIF], a
14
ldh [rIE], a
15
ldh [rSCX], a
16
ldh [rSCY], a
17
ldh [rSB], a
18
ldh [rSC], a
19
ldh [rWX], a
20
ldh [rWY], a
21
ldh [rTMA], a
22
ldh [rTAC], a
23
ldh [rBGP], a
24
ldh [rOBP0], a
25
ldh [rOBP1], a
26
27
ld a, LCDC_ON
28
ldh [rLCDC], a
29
call DisableLCD
30
31
ld sp, wStack
32
33
ld hl, STARTOF(WRAM0)
34
ld bc, SIZEOF(WRAM0)
35
.loop
36
ld [hl], 0
37
inc hl
38
dec bc
39
ld a, b
40
or c
41
jr nz, .loop
42
43
call ClearVram
44
45
ld hl, STARTOF(HRAM)
46
ld bc, SIZEOF(HRAM)
47
call FillMemory
48
49
call ClearSprites
50
51
ld a, BANK(WriteDMACodeToHRAM)
52
ldh [hLoadedROMBank], a
53
ld [rROMB], a
54
call WriteDMACodeToHRAM
55
56
xor a
57
ldh [hTileAnimations], a
58
ldh [rSTAT], a
59
ldh [hSCX], a
60
ldh [hSCY], a
61
ldh [rIF], a
62
ld a, IE_VBLANK | IE_TIMER | IE_SERIAL
63
ldh [rIE], a
64
65
ld a, 144 ; move the window off-screen
66
ldh [hWY], a
67
ldh [rWY], a
68
ld a, 7
69
ldh [rWX], a
70
71
ld a, CONNECTION_NOT_ESTABLISHED
72
ldh [hSerialConnectionStatus], a
73
74
ld h, HIGH(vBGMap0)
75
call ClearBgMap
76
ld h, HIGH(vBGMap1)
77
call ClearBgMap
78
79
ld a, LCDC_DEFAULT
80
ldh [rLCDC], a
81
ld a, 16
82
ldh [hSoftReset], a
83
call StopAllSounds
84
85
ei
86
87
predef LoadSGB
88
89
ld a, BANK(SFX_Shooting_Star)
90
ld [wAudioROMBank], a
91
ld [wAudioSavedROMBank], a
92
ld a, HIGH(vBGMap1)
93
ldh [hAutoBGTransferDest + 1], a
94
xor a
95
ldh [hAutoBGTransferDest], a
96
dec a
97
ld [wUpdateSpritesEnabled], a
98
99
predef PlayIntro
100
101
call DisableLCD
102
call ClearVram
103
call GBPalNormal
104
call ClearSprites
105
ld a, LCDC_DEFAULT
106
ldh [rLCDC], a
107
108
jp PrepareTitleScreen
109
110
ClearVram::
111
ld hl, STARTOF(VRAM)
112
ld bc, SIZEOF(VRAM)
113
xor a
114
jp FillMemory
115
116
117
StopAllSounds::
118
ld a, BANK("Audio Engine 1")
119
ld [wAudioROMBank], a
120
ld [wAudioSavedROMBank], a
121
xor a
122
ld [wAudioFadeOutControl], a
123
ld [wNewSoundID], a
124
ld [wLastMusicSoundID], a
125
dec a
126
jp PlaySound
127
128