G

Untitled

public
Guest Jun 18, 2025 Never 48
Clone
Plaintext paste1.txt 161 lines (145 loc) | 2.18 KB
1
2
3
LD SP,$fffe ; Stack
4
5
XOR A
6
LD HL,$9fff
7
.zero_vram:
8
LD (HL-),A
9
BIT 7,H
10
JR NZ,.zero_vram
11
12
LD HL,$ff26 ; Audio
13
LD C,$11
14
LD A,$80
15
LD (HL-),A
16
LD ($FF00+C),A
17
INC C
18
LD A,$f3
19
LD ($FF00+C),A
20
LD (HL-),A
21
LD A,$77
22
LD (HL),A
23
24
LD A,$fc ; BG palette
25
LD ($FF00+$47),A
26
27
LD DE,$0104 ; Logo
28
LD HL,$8010
29
.load_logo:
30
LD A,(DE)
31
CALL $0095
32
CALL $0096
33
INC DE
34
LD A,E
35
CP $34
36
JR NZ,.load_logo
37
38
LD DE,$00d8 ; ® tile
39
LD B,$08
40
.load_extra:
41
LD A,(DE)
42
INC DE
43
LD (HL+),A
44
INC HL
45
DEC B
46
JR NZ,.load_extra
47
48
LD A,$19 ; Tilemap
49
LD ($9910),A
50
LD HL,$992f
51
.tilemap_loop:
52
LD C,$0c
53
.fill_tile:
54
DEC A
55
JR Z,.scroll_start
56
LD (HL-),A
57
DEC C
58
JR NZ,.fill_tile
59
LD L,$0f
60
JR .tilemap_loop
61
62
.scroll_start:
63
LD H,A
64
LD A,$64
65
LD D,A
66
LD ($FF00+$42),A
67
LD A,$91
68
LD ($FF00+$40),A
69
INC B
70
.scroll_loop:
71
LD E,$02
72
.frame_wait1:
73
LD C,$0c
74
.frame_wait2:
75
LD A,($FF00+$44)
76
CP $90
77
JR NZ,.frame_wait2
78
DEC C
79
JR NZ,.frame_wait2
80
DEC E
81
JR NZ,.frame_wait1
82
83
LD C,$13
84
INC H
85
LD A,H
86
LD E,$83
87
CP $62
88
JR Z,.sound1
89
LD E,$c1
90
CP $64
91
JR NZ,.nosound
92
.sound1:
93
LD A,E
94
LD ($FF00+C),A
95
INC C
96
LD A,$87
97
LD ($FF00+C),A
98
.nosound:
99
LD A,($FF00+$42)
100
SUB B
101
LD ($FF00+$42),A
102
DEC D
103
JR NZ,.scroll_loop
104
105
DEC B
106
JR NZ,.logo_check
107
108
LD D,$20
109
JR .scroll_loop
110
111
; === Logo gfx routine ===
112
LD C,A ; $0095
113
LD B,$04 ; $0096
114
.gfx_loop:
115
PUSH BC
116
RL C
117
RLA
118
POP BC
119
RL C
120
RLA
121
DEC B
122
JR NZ,.gfx_loop
123
LD (HL+),A
124
INC HL
125
LD (HL+),A
126
INC HL
127
RET
128
129
; === Nintendo Logo ===
130
Addr_00A8:
131
.DB $CE,$ED,$66,$66,$CC,$0D,$00,$0B,$03,$73,$00,$83,$00,$0C,$00,$0D
132
.DB $00,$08,$11,$1F,$88,$89,$00,$0E,$DC,$CC,$6E,$E6,$DD,$DD,$D9,$99
133
.DB $BB,$BB,$67,$63,$6E,$0E,$EC,$CC,$DD,$DC,$99,$9F,$BB,$B9,$33,$3E
134
135
Addr_00D8:
136
.DB $3C,$42,$B9,$A5,$B9,$A5,$42,$3C
137
138
; === Logo check ===
139
.logo_check:
140
LD HL,$0104
141
LD DE,$00a8
142
.compare_loop:
143
LD A,(DE)
144
INC DE
145
CP (HL)
146
JR NZ,$fe
147
INC HL
148
LD A,L
149
CP $34
150
JR NZ,.compare_loop
151
152
LD B,$19
153
LD A,B
154
.sum_loop:
155
ADD (HL)
156
INC HL
157
DEC B
158
JR NZ,.sum_loop
159
ADD (HL)
160
JR NZ,$fe
161
162
LD A,$01
163
LD ($FF00+$50),A