pokecrystal-board/engine/sprites.asm

2888 lines
48 KiB
NASM
Raw Normal View History

2015-11-12 21:49:27 -08:00
Function8cf53: ; 8cf53
ld hl, wc300
ld bc, wc3c1 - wc300
.loop
ld [hl], $0
inc hl
dec bc
ld a, c
or b
jr nz, .loop
2015-11-04 17:20:14 -08:00
ret
2015-11-12 21:49:27 -08:00
; 8cf62
2015-11-04 17:20:14 -08:00
2015-11-12 21:49:27 -08:00
Function8cf62: ; 8cf62
call Function8cf69
call DelayFrame
2015-11-04 17:20:14 -08:00
ret
2015-11-12 21:49:27 -08:00
; 8cf69
2015-11-04 17:20:14 -08:00
2015-11-12 21:49:27 -08:00
Function8cf69: ; 8cf69
push hl
push de
push bc
2015-11-04 17:20:14 -08:00
push af
2015-11-12 21:49:27 -08:00
ld a, $0
ld [wc3b5], a
call Function8cf7a
2015-11-04 17:20:14 -08:00
pop af
2015-11-12 21:49:27 -08:00
pop bc
pop de
pop hl
2015-11-04 17:20:14 -08:00
ret
2015-11-12 21:49:27 -08:00
; 8cf7a
2015-11-04 17:20:14 -08:00
2015-11-12 21:49:27 -08:00
Function8cf7a: ; 8cf7a
ld hl, wc314
ld e, 10 ; There are 10 structs here.
2015-11-04 17:20:14 -08:00
.loop
2015-11-12 21:49:27 -08:00
ld a, [hl]
and a
jr z, .next ; This struct is deinitialized.
ld c, l
ld b, h
push hl
push de
call Function8d24b ; Uses a massive jumptable
call Function8d04c
pop de
pop hl
jr c, .done
.next
ld bc, $10
add hl, bc
dec e
2015-11-04 17:20:14 -08:00
jr nz, .loop
2015-11-12 21:49:27 -08:00
ld a, [wc3b5]
ld l, a
ld h, Sprites / $0100
2015-11-04 17:20:14 -08:00
2015-11-12 21:49:27 -08:00
.loop2 ; Clear (Sprites + [wc3b5] --> SpritesEnd)
ld a, l
cp SpritesEnd % $100
jr nc, .done
xor a
ld [hli], a
jr .loop2
2015-11-04 17:20:14 -08:00
2015-11-12 21:49:27 -08:00
.done
2015-11-04 17:20:14 -08:00
ret
2015-11-12 21:49:27 -08:00
; 8cfa8
2015-11-04 17:20:14 -08:00
2015-11-12 21:49:27 -08:00
Function8cfa8: ; 8cfa8 (23:4fa8)
ld hl, wc314
ld e, 10
.loop
ld a, [hl]
and a
jr z, .next
ld c, l
ld b, h
push hl
push de
call Function8d24b ; Uses a massive jumptable
call Function8d04c
pop de
pop hl
jr c, .done
2015-11-04 17:20:14 -08:00
2015-11-12 21:49:27 -08:00
.next
ld bc, $10
add hl, bc
dec e
jr nz, .loop
2015-11-04 17:20:14 -08:00
2015-11-12 21:49:27 -08:00
ld a, [wc3b5]
ld l, a
ld h, (Sprites + $40) / $100
2015-11-04 17:20:14 -08:00
2015-11-12 21:49:27 -08:00
.loop2 ; Clear (Sprites + [wc3b5] --> Sprites + $40)
ld a, l
cp (Sprites + $40) % $100
jr nc, .done
xor a
ld [hli], a
jr .loop2
2015-11-04 17:20:14 -08:00
2015-11-12 21:49:27 -08:00
.done
2015-11-04 17:20:14 -08:00
ret
2015-11-13 07:48:49 -08:00
InitSpriteAnimStruct:: ; 8cfd6
2015-11-12 21:49:27 -08:00
; Find if there's any room in the wc314 array, which is 10x16
push de
2015-11-04 17:20:14 -08:00
push af
2015-11-12 21:49:27 -08:00
ld hl, wc314
ld e, 10
.loop
2015-11-04 17:20:14 -08:00
ld a, [hl]
2015-11-12 21:49:27 -08:00
and a
jr z, .found
ld bc, $10
add hl, bc
dec e
2015-11-04 17:20:14 -08:00
jr nz, .loop
2015-11-12 21:49:27 -08:00
; We've reached the end. There is no more room here.
; Return carry.
pop af
pop de
scf
2015-11-04 17:20:14 -08:00
ret
2015-11-12 21:49:27 -08:00
.found
; Back up the structure address to bc.
ld c, l
ld b, h
; Value [wc3b4] is initially set to -1. Set it to
; the number of objects loaded into this array.
ld hl, wc3b4
inc [hl]
ld a, [hl]
and a
jr nz, .initialized
inc [hl]
2015-11-04 17:20:14 -08:00
2015-11-12 21:49:27 -08:00
.initialized
; Get row a of Unknown_8d1c4, copy the pointer into de
pop af
ld e, a
ld d, 0
ld hl, Unknown_8d1c4
rept 3
add hl, de
endr
ld e, l
ld d, h
; Set hl to the first field (field 0) in the current structure.
ld hl, 0
add hl, bc
; Load the index.
ld a, [wc3b4]
ld [hli], a
; Copy the table entry to the next two fields.
ld a, [de]
ld [hli], a
inc de
ld a, [de]
ld [hli], a
inc de
; Look up the third field from the table in the wc300 array (10x2).
; Take the value and load it in
ld a, [de]
call LookUpInwDict_c300
ld [hli], a
pop de
; Set hl to field 4. Kinda pointless, because we're presumably already here.
ld hl, $4
2015-11-04 17:20:14 -08:00
add hl, bc
2015-11-12 21:49:27 -08:00
; Load the original value of de into here.
ld a, e
ld [hli], a
ld a, d
ld [hli], a
; load 0 into the next four fields
xor a
rept 2
ld [hli], a
2015-11-04 17:20:14 -08:00
endr
2015-11-12 21:49:27 -08:00
xor a
rept 2
ld [hli], a
endr
; load -1 into the next field
dec a
ld [hli], a
; load 0 into the last five fields
xor a
rept 4
ld [hli], a
endr
ld [hl], a
; back up the address of the first field to wc3b8
ld a, c
ld [wc3b8], a
ld a, b
ld [wc3b8 + 1], a
2015-11-04 17:20:14 -08:00
ret
2015-11-12 21:49:27 -08:00
; 8d036
2015-11-04 17:20:14 -08:00
2015-11-12 21:49:27 -08:00
Function8d036: ; 8d036
; Clear the index field of the struct in bc.
ld hl, 0
add hl, bc
ld [hl], $0
2015-11-04 17:20:14 -08:00
ret
2015-11-12 21:49:27 -08:00
; 8d03d
2015-11-04 17:20:14 -08:00
2015-11-12 21:49:27 -08:00
Function8d03d: ; 8d03d (23:503d)
; Clear the index field of every struct in the wc314 array.
ld hl, wc314
ld bc, $10
ld e, 10
xor a
.loop
ld [hl], a
add hl, bc
dec e
jr nz, .loop
2015-11-04 17:20:14 -08:00
ret
2015-11-12 21:49:27 -08:00
Function8d04c: ; 8d04c
call Function8d0ec ; init WRAM
call Function8d132 ; read from a memory array
cp -3
jr z, .done
cp -4
jr z, .almost
call Function8d1a2 ; read from a pointer table
ld a, [wc3ba]
add [hl]
ld [wc3ba], a
inc hl
2015-11-04 17:20:14 -08:00
ld a, [hli]
2015-11-12 21:49:27 -08:00
ld h, [hl]
ld l, a
push bc
ld a, [wc3b5]
2015-11-04 17:20:14 -08:00
ld e, a
2015-11-12 21:49:27 -08:00
ld d, Sprites / $100
2015-11-04 17:20:14 -08:00
ld a, [hli]
ld c, a
2015-11-12 21:49:27 -08:00
.loop
ld a, [wc3bc]
ld b, a
ld a, [wc3be]
add b
ld b, a
ld a, [wc3bf]
add b
ld b, a
call Function8d0be
add b
ld [de], a
inc hl
inc de
ld a, [wc3bb]
ld b, a
ld a, [wc3bd]
add b
ld b, a
ld a, [wc3c0]
add b
ld b, a
call Function8d0ce
add b
ld [de], a
inc hl
inc de
ld a, [wc3ba]
add [hl]
ld [de], a
inc hl
inc de
call Function8d0de
ld [de], a
inc hl
inc de
ld a, e
ld [wc3b5], a
cp SpritesEnd % $100
jr nc, .outofroom
dec c
jr nz, .loop
pop bc
jr .done
2015-11-04 17:20:14 -08:00
2015-11-12 21:49:27 -08:00
.almost
call Function8d036
2015-11-04 17:20:14 -08:00
2015-11-12 21:49:27 -08:00
.done
2015-11-04 17:20:14 -08:00
and a
ret
2015-11-12 21:49:27 -08:00
.outofroom
pop bc
2015-11-04 17:20:14 -08:00
scf
ret
2015-11-12 21:49:27 -08:00
; 8d0be
2015-11-04 17:20:14 -08:00
2015-11-12 21:49:27 -08:00
Function8d0be: ; 8d0be
push hl
2015-11-04 17:20:14 -08:00
ld a, [hl]
2015-11-12 21:49:27 -08:00
ld hl, wc3b8
bit 6, [hl]
jr z, .ok
add $8
xor $ff
inc a
2015-11-04 17:20:14 -08:00
2015-11-12 21:49:27 -08:00
.ok
pop hl
2015-11-04 17:20:14 -08:00
ret
2015-11-12 21:49:27 -08:00
; 8d0ce
2015-11-04 17:20:14 -08:00
2015-11-12 21:49:27 -08:00
Function8d0ce: ; 8d0ce
2015-11-04 17:20:14 -08:00
push hl
ld a, [hl]
2015-11-12 21:49:27 -08:00
ld hl, wc3b8
bit 5, [hl]
jr z, .ok
add $8
xor $ff
inc a
2015-11-04 17:20:14 -08:00
2015-11-12 21:49:27 -08:00
.ok
pop hl
2015-11-04 17:20:14 -08:00
ret
2015-11-12 21:49:27 -08:00
; 8d0de
2015-11-04 17:20:14 -08:00
2015-11-12 21:49:27 -08:00
Function8d0de: ; 8d0de
ld a, [wc3b8]
ld b, a
ld a, [hl]
xor b
and $e0
ld b, a
ld a, [hl]
and $1f
or b
2015-11-04 17:20:14 -08:00
ret
2015-11-12 21:49:27 -08:00
; 8d0ec
2015-11-04 17:20:14 -08:00
2015-11-12 21:49:27 -08:00
Function8d0ec: ; 8d0ec
2015-11-04 17:20:14 -08:00
xor a
2015-11-12 21:49:27 -08:00
ld [wc3b8], a
ld hl, $3
add hl, bc
ld a, [hli]
ld [wc3ba], a
ld a, [hli]
ld [wc3bb], a
ld a, [hli]
ld [wc3bc], a
ld a, [hli]
ld [wc3bd], a
ld a, [hli]
ld [wc3be], a
2015-11-04 17:20:14 -08:00
ret
2015-11-12 21:49:27 -08:00
; 8d109
2015-11-04 17:20:14 -08:00
2015-11-12 21:49:27 -08:00
LookUpInwDict_c300: ; 8d109
; a = wDict_c300[a] if a in wDict_c300 else 0
2015-11-04 17:20:14 -08:00
push hl
push bc
2015-11-12 21:49:27 -08:00
ld hl, wDict_c300
2015-11-04 17:20:14 -08:00
ld b, a
2015-11-12 21:49:27 -08:00
ld c, 10
2015-11-04 17:20:14 -08:00
.loop
2015-11-12 21:49:27 -08:00
ld a, [hli]
2015-11-04 17:20:14 -08:00
cp b
2015-11-12 21:49:27 -08:00
jr z, .ok
2015-11-04 17:20:14 -08:00
inc hl
dec c
jr nz, .loop
2015-11-12 21:49:27 -08:00
xor a
jr .done
2015-11-04 17:20:14 -08:00
2015-11-12 21:49:27 -08:00
.ok
ld a, [hl]
2015-11-04 17:20:14 -08:00
2015-11-12 21:49:27 -08:00
.done
2015-11-04 17:20:14 -08:00
pop bc
pop hl
ret
2015-11-12 21:49:27 -08:00
; 8d120
2015-11-04 17:20:14 -08:00
2015-11-12 21:49:27 -08:00
Function8d120:: ; 8d120
ld hl, $1
add hl, bc
ld [hl], a
ld hl, $8
add hl, bc
ld [hl], $0
ld hl, $a
add hl, bc
ld [hl], $ff
2015-11-04 17:20:14 -08:00
ret
2015-11-12 21:49:27 -08:00
; 8d132
2015-11-04 17:20:14 -08:00
2015-11-12 21:49:27 -08:00
Function8d132: ; 8d132
2015-11-04 17:20:14 -08:00
.loop
2015-11-12 21:49:27 -08:00
ld hl, $8
add hl, bc
ld a, [hl]
2015-11-04 17:20:14 -08:00
and a
2015-11-12 21:49:27 -08:00
jr z, .ok
dec [hl]
call Function8d189
ld a, [hli]
push af
jr .skip
.ok
ld hl, $a
add hl, bc
inc [hl]
call Function8d189
ld a, [hli]
cp $fe
jr z, .minus_2
cp $ff
jr z, .minus_1
push af
ld a, [hl]
2015-11-04 17:20:14 -08:00
push hl
2015-11-12 21:49:27 -08:00
and $3f
ld hl, $9
add hl, bc
add [hl]
ld hl, $8
add hl, bc
ld [hl], a
2015-11-04 17:20:14 -08:00
pop hl
2015-11-12 21:49:27 -08:00
.skip
ld a, [hl]
and $c0
srl a
ld [wc3b8], a
pop af
2015-11-04 17:20:14 -08:00
ret
2015-11-12 21:49:27 -08:00
.minus_1
xor a
ld hl, $8
add hl, bc
ld [hl], a
ld hl, $a
add hl, bc
rept 2
dec [hl]
endr
jr .loop
2015-11-04 17:20:14 -08:00
2015-11-12 21:49:27 -08:00
.minus_2
xor a
ld hl, $8
add hl, bc
ld [hl], a
dec a
ld hl, $a
add hl, bc
ld [hl], a
jr .loop
; 8d189
Function8d189: ; 8d189
; Get the [bc+10]th entry in the data table
; indexed at [bc+1] in Unknown_8d6e6
ld hl, $1
add hl, bc
ld e, [hl]
ld d, 0
ld hl, Unknown_8d6e6
rept 2
add hl, de
endr
ld e, [hl]
inc hl
ld d, [hl]
ld hl, $a
add hl, bc
ld l, [hl]
ld h, 0
add hl, hl
add hl, de
ret
; 8d1a2
2015-11-04 17:20:14 -08:00
2015-11-12 21:49:27 -08:00
Function8d1a2: ; 8d1a2
ld e, a
ld d, 0
ld hl, Unknown_8d94d
rept 3
add hl, de
endr
ret
; 8d1ac
2015-11-04 17:20:14 -08:00
2015-11-12 21:49:27 -08:00
Function8d1ac: ; unreferenced
push hl
ld l, a
ld h, 0
2015-11-04 17:20:14 -08:00
rept 2
2015-11-12 21:49:27 -08:00
add hl, hl
2015-11-04 17:20:14 -08:00
endr
2015-11-12 21:49:27 -08:00
ld de, Unknown_8e706 ; broken 2bpp pointers
add hl, de
ld c, [hl]
inc hl
ld b, [hl]
inc hl
ld e, [hl]
inc hl
ld d, [hl]
pop hl
push bc
call Request2bpp
pop bc
ret
; 8d1c4
Unknown_8d1c4: ; 8d1c4
2015-11-13 07:48:49 -08:00
db $01, SPRITE_ANIM_SEQ_01, $00 ; 00
db $07, SPRITE_ANIM_SEQ_04, $00 ; 01
db $08, SPRITE_ANIM_SEQ_05, $05 ; 02
db $0a, SPRITE_ANIM_SEQ_06, $00 ; 03
db $0b, SPRITE_ANIM_SEQ_07, $06 ; 04
db $0c, SPRITE_ANIM_SEQ_08, $06 ; 05
db $0d, SPRITE_ANIM_SEQ_09, $07 ; 06
db $0e, SPRITE_ANIM_SEQ_0A, $07 ; 07
db $10, SPRITE_ANIM_SEQ_0B, $07 ; 08
db $08, SPRITE_ANIM_SEQ_0C, $05 ; 09
db $11, SPRITE_ANIM_SEQ_00, $00 ; 0a
db $12, SPRITE_ANIM_SEQ_0D, $08 ; 0b
db $12, SPRITE_ANIM_SEQ_0E, $08 ; 0c
db $12, SPRITE_ANIM_SEQ_0F, $08 ; 0d
db $13, SPRITE_ANIM_SEQ_10, $00 ; 0e
db $15, SPRITE_ANIM_SEQ_00, $00 ; 0f
db $16, SPRITE_ANIM_SEQ_11, $00 ; 10
db $17, SPRITE_ANIM_SEQ_12, $00 ; 11
db $18, SPRITE_ANIM_SEQ_12, $00 ; 12
db $19, SPRITE_ANIM_SEQ_13, $00 ; 13
db $1a, SPRITE_ANIM_SEQ_14, $00 ; 14
db $1b, SPRITE_ANIM_SEQ_00, $00 ; 15
db $1d, SPRITE_ANIM_SEQ_15, $00 ; 16
db $1e, SPRITE_ANIM_SEQ_00, $00 ; 17
db $1d, SPRITE_ANIM_SEQ_17, $00 ; 18
db $1f, SPRITE_ANIM_SEQ_00, $00 ; 19
db $24, SPRITE_ANIM_SEQ_19, $00 ; 1a
db $25, SPRITE_ANIM_SEQ_00, $00 ; 1b
db $20, SPRITE_ANIM_SEQ_13, $00 ; 1c
db $26, SPRITE_ANIM_SEQ_1A, $00 ; 1d
db $2d, SPRITE_ANIM_SEQ_00, $00 ; 1e
db $2e, SPRITE_ANIM_SEQ_00, $00 ; 1f
db $2f, SPRITE_ANIM_SEQ_00, $00 ; 20
db $30, SPRITE_ANIM_SEQ_00, $00 ; 21
db $31, SPRITE_ANIM_SEQ_00, $00 ; 22
db $32, SPRITE_ANIM_SEQ_1B, $00 ; 23
db $33, SPRITE_ANIM_SEQ_1C, $00 ; 24
db $34, SPRITE_ANIM_SEQ_00, $00 ; 25
db $35, SPRITE_ANIM_SEQ_1D, $00 ; 26
db $37, SPRITE_ANIM_SEQ_1E, $00 ; 27
db $38, SPRITE_ANIM_SEQ_1E, $00 ; 28
db $39, SPRITE_ANIM_SEQ_20, $00 ; 29
db $3f, SPRITE_ANIM_SEQ_21, $00 ; 2a
db $3e, SPRITE_ANIM_SEQ_22, $00 ; 2b
db $40, SPRITE_ANIM_SEQ_00, $00 ; 2c
2015-11-12 21:49:27 -08:00
; 8d24b
Function8d24b: ; 8d24b
ld hl, $2 ; field 2, see the second column in the above table
add hl, bc
ld e, [hl]
ld d, 0
ld hl, .Jumptable
rept 2
add hl, de
endr
ld a, [hli]
ld h, [hl]
ld l, a
jp [hl]
; 8d25b
.Jumptable: ; 8d25b (23:525b)
dw .zero ; town map
dw .one ; bouncing mon icons
dw .two
dw .three
dw .four
dw .five
dw .six ; Game Freak logo
dw .seven
dw .eight
dw .nine
dw .ten
dw .eleven
dw .twelve
dw .thirteen
dw .fourteen
dw .fifteen
dw .sixteen
dw .seventeen
dw .eighteen
dw .nineteen
dw .twenty
dw .twentyone
dw .twentytwo ; flying sprite
dw .twentythree ; flying leaves
dw .twentyfour
dw .twentyfive
dw .twentysix
dw .twentyseven
dw .twentyeight
dw .twentynine ; intro suicune
dw .thirty ; intro pichu wooper
dw .thirtyone
dw .thirtytwo ; intro unown
dw .thirtythree ; intro unown F with suicune leaping up
dw .thirtyfour ; intro suicune facing away from us
.zero: ; 8d2a1 (23:52a1)
ret
2015-11-04 17:20:14 -08:00
2015-11-12 21:49:27 -08:00
.one: ; 8d2a2 (23:52a2)
ld a, [MenuSelection2]
ld hl, 0
add hl, bc
cp [hl]
jr z, .two
ld hl, $4
add hl, bc
ld [hl], $10
ld hl, $7
add hl, bc
ld [hl], $0
ret
2015-11-04 17:20:14 -08:00
2015-11-12 21:49:27 -08:00
.two: ; 8d2b9 (23:52b9)
ld hl, $4
add hl, bc
ld [hl], $18
ld hl, $c
add hl, bc
ld a, [hl]
ld d, a
inc [hl]
and $f
ret nz
ld hl, $d
add hl, bc
ld e, [hl]
ld hl, $7
add hl, bc
ld a, d
and $10 ; bit 4
jr z, .asm_8d2df
ld a, e
and a
jr z, .asm_8d2e6
cp $1
jr z, .asm_8d2e2
.asm_8d2df
xor a
ld [hl], a
ret
.asm_8d2e2
ld a, $ff
ld [hl], a
ret
.asm_8d2e6
ld a, $fe
ld [hl], a
ret
2015-11-04 17:20:14 -08:00
2015-11-12 21:49:27 -08:00
.three: ; 8d2ea (23:52ea)
ld a, [MenuSelection2]
ld hl, 0
add hl, bc
2015-11-04 17:20:14 -08:00
cp [hl]
2015-11-12 21:49:27 -08:00
jr z, .asm_8d2fb
ld hl, $4
add hl, bc
ld [hl], $10
ret
.asm_8d2fb
ld hl, $4
add hl, bc
ld [hl], $18
ret
2015-11-04 17:20:14 -08:00
2015-11-12 21:49:27 -08:00
.four: ; 8d302 (23:5302)
call .anonymous_jumptable
jp [hl]
; 8d306 (23:5306)
2015-11-04 17:20:14 -08:00
2015-11-12 21:49:27 -08:00
; Anonymous jumptable (see .anonymous_jumptable)
dw .four_zero
dw .four_one
; 8d30a
.four_zero: ; 8d30a
call .asm_8d6d8
ld hl, 0
add hl, bc
2015-11-04 17:20:14 -08:00
ld a, [hl]
2015-11-12 21:49:27 -08:00
ld hl, $d
add hl, bc
and $3
ld [hl], a
inc [hl]
swap a
ld hl, $c
add hl, bc
ld [hl], a
.four_one: ; 8d321
ld hl, $4
add hl, bc
2015-11-04 17:20:14 -08:00
ld a, [hl]
2015-11-12 21:49:27 -08:00
cp $a4
jr nc, .asm_8d356
ld hl, $d
add hl, bc
add $4
ld hl, $4
add hl, bc
ld [hl], a
ld hl, $5
add hl, bc
inc [hl]
ld hl, $d
add hl, bc
ld a, [hl]
sla a
sla a
ld d, $2
ld hl, $c
add hl, bc
ld a, [hl]
add $3
ld [hl], a
call .asm_8d6de
ld hl, $7
add hl, bc
ld [hl], a
ret
2015-11-04 17:20:14 -08:00
2015-11-12 21:49:27 -08:00
.asm_8d356
call Function8d036
ret
; 8d35a
2015-11-04 17:20:14 -08:00
2015-11-12 21:49:27 -08:00
.twentyfive: ; 8d35a (23:535a)
ld hl, $c
add hl, bc
ld a, [hl]
inc a
ld [hl], a
ld d, $2
call .asm_8d6de
ld hl, $7
add hl, bc
ld [hl], a
ret
2015-11-04 17:20:14 -08:00
2015-11-12 21:49:27 -08:00
.five: ; 8d36c (23:536c)
callab Function11a3b
ret
.twelve: ; 8d373 (23:5373)
callab Function120c1
ret
.six: ; 8d37a (23:537a)
callab GameFreakLogoJumper
ret
.seven: ; 8d381 (23:5381)
ld hl, $c
add hl, bc
ld a, [hl]
and a
jr z, .asm_8d3ba
2015-11-04 17:20:14 -08:00
rept 2
2015-11-12 21:49:27 -08:00
dec [hl]
2015-11-04 17:20:14 -08:00
endr
2015-11-12 21:49:27 -08:00
ld d, a
and $1f
jr nz, .asm_8d395
ld hl, $d
add hl, bc
dec [hl]
.asm_8d395
ld hl, $b
add hl, bc
ld a, [hl]
push af
push de
call .asm_8d6de
ld hl, $7
add hl, bc
ld [hl], a
2015-11-04 17:20:14 -08:00
pop de
2015-11-12 21:49:27 -08:00
pop af
call .asm_8d6e2
ld hl, $6
add hl, bc
ld [hl], a
ld hl, $d
add hl, bc
ld a, [hl]
ld hl, $b
add hl, bc
add [hl]
ld [hl], a
ret
.asm_8d3ba
ld a, $1
ld [wcf64], a
call Function8d036
2015-11-04 17:20:14 -08:00
ret
2015-11-12 21:49:27 -08:00
.eight: ; 8d3c3 (23:53c3)
ld hl, $c
add hl, bc
ld a, [hli]
or [hl]
jr z, .asm_8d41e
ld hl, $f
add hl, bc
ld d, [hl]
ld hl, $b
add hl, bc
ld a, [hl]
push af
push de
call .asm_8d6de
ld hl, $7
add hl, bc
ld [hl], a
pop de
pop af
call .asm_8d6e2
ld hl, $6
add hl, bc
ld [hl], a
ld hl, $c
add hl, bc
ld e, [hl]
inc hl
ld d, [hl]
ld hl, $e
add hl, bc
ld a, [hli]
ld h, [hl]
ld l, a
add hl, de
ld e, l
ld d, h
ld hl, $e
add hl, bc
ld [hl], e
inc hl
ld [hl], d
ld hl, $c
add hl, bc
ld a, [hli]
ld h, [hl]
ld l, a
ld de, $fff0
add hl, de
ld e, l
ld d, h
ld hl, $c
add hl, bc
ld [hl], e
inc hl
ld [hl], d
ld hl, $b
add hl, bc
ld a, [hl]
xor $20
ld [hl], a
ret
.asm_8d41e
call Function8d036
ret
2015-11-04 17:20:14 -08:00
2015-11-12 21:49:27 -08:00
.nine: ; 8d422 (23:5422)
callab Function9321d
ret
2015-11-04 17:20:14 -08:00
2015-11-12 21:49:27 -08:00
.ten: ; 8d429 (23:5429)
callab Function932ac
ld hl, wcf64
ld a, [hl]
cp $2
ret nz
ld [hl], $3
ld a, $f
call Function8d120
ret
2015-11-04 17:20:14 -08:00
2015-11-12 21:49:27 -08:00
.eleven: ; 8d43e (23:543e)
ld hl, $b
add hl, bc
2015-11-04 17:20:14 -08:00
ld a, [hl]
2015-11-12 21:49:27 -08:00
dec [hl]
ld e, a
and $1
jr z, .asm_8d462
ld hl, $4
add hl, bc
ld a, [hl]
cp $78
jr c, .asm_8d461
call Function8d036
ld a, $4
ld [wcf64], a
ld de, SFX_PLACE_PUZZLE_PIECE_DOWN
call PlaySFX
ret
.asm_8d461
inc [hl]
.asm_8d462
ld a, e
ld d, $20
call .asm_8d6de
ld hl, $7
add hl, bc
ld [hl], a
ret
2015-11-04 17:20:14 -08:00
2015-11-12 21:49:27 -08:00
.thirteen: ; 8d46e (23:546e)
callab Functione00ed
ret
2015-11-04 17:20:14 -08:00
2015-11-12 21:49:27 -08:00
.fifteen: ; 8d475 (23:5475)
callab Function90d41
ret
2015-11-04 17:20:14 -08:00
2015-11-12 21:49:27 -08:00
.fourteen: ; 8d47c (23:547c)
callab Functione21a1
ret
.sixteen: ; 8d483 (23:5483)
call .anonymous_jumptable
jp [hl]
; 8d487 (23:5487)
; Anonymous jumptable (see .anonymous_jumptable)
dw .sixteen_zero
dw .sixteen_one
dw .sixteen_two
dw .sixteen_three
dw .sixteen_four
dw .sixteen_five
; 8d493
.sixteen_zero: ; 8d493
ld a, $14
call Function8d120
ld hl, $b
add hl, bc
ld [hl], $2
ld hl, $c
add hl, bc
ld [hl], $20
ret
; 8d4a5
2015-11-04 17:20:14 -08:00
2015-11-12 21:49:27 -08:00
.sixteen_two: ; 8d4a5
ld hl, $c
add hl, bc
2015-11-04 17:20:14 -08:00
ld a, [hl]
2015-11-12 21:49:27 -08:00
and a
jr z, .asm_8d4af
dec [hl]
ret
2015-11-04 17:20:14 -08:00
2015-11-12 21:49:27 -08:00
.asm_8d4af
call .asm_8d6d8
ld hl, $c
add hl, bc
ld [hl], $40
2015-11-04 17:20:14 -08:00
2015-11-12 21:49:27 -08:00
.sixteen_three: ; 8d4b8
ld hl, $c
add hl, bc
ld a, [hl]
cp $30
jr c, .asm_8d4cd
dec [hl]
ld d, $28
call .asm_8d6de
ld hl, $7
add hl, bc
ld [hl], a
ret
2015-11-04 17:20:14 -08:00
2015-11-12 21:49:27 -08:00
.asm_8d4cd
ld de, SFX_GOT_SAFARI_BALLS
call PlaySFX
jr .sixteen_five
; 8d4d5
2015-11-04 17:20:14 -08:00
2015-11-12 21:49:27 -08:00
.sixteen_one: ; 8d4d5
ld hl, $b
add hl, bc
ld [hl], $4
ld hl, $c
add hl, bc
ld [hl], $30
ld hl, $d
add hl, bc
ld [hl], $24
2015-11-04 17:20:14 -08:00
ret
2015-11-12 21:49:27 -08:00
; 8d4e8
2015-11-04 17:20:14 -08:00
2015-11-12 21:49:27 -08:00
.sixteen_four: ; 8d4e8
ld hl, $d
add hl, bc
ld a, [hl]
and a
jr z, .asm_8d51c
ld d, a
ld hl, $c
add hl, bc
ld a, [hl]
call Function8e72c
ld hl, $7
add hl, bc
ld [hl], a
ld hl, $c
add hl, bc
inc [hl]
ld a, [hl]
and $3f
ret nz
ld hl, $c
add hl, bc
ld [hl], $20
ld hl, $d
add hl, bc
ld a, [hl]
sub $c
ld [hl], a
ld de, SFX_SWITCH_POKEMON
call PlaySFX
ret
2015-11-04 17:20:14 -08:00
2015-11-12 21:49:27 -08:00
.asm_8d51c
xor a
ld hl, $7
add hl, bc
ld [hl], a
call .asm_8d6d8
ret
2015-11-04 17:20:14 -08:00
2015-11-12 21:49:27 -08:00
.sixteen_five: ; 8d526
call Function8d036
2015-11-04 17:20:14 -08:00
ret
2015-11-12 21:49:27 -08:00
; 8d52a
2015-11-04 17:20:14 -08:00
2015-11-12 21:49:27 -08:00
.seventeen: ; 8d52a (23:552a)
ld hl, $4
add hl, bc
ld a, [hl]
rept 2
inc [hl]
endr
cp $b0
jr nc, .asm_8d53f
and $3
ret nz
ld de, SFX_POKEBALLS_PLACED_ON_TABLE
call PlaySFX
2015-11-04 17:20:14 -08:00
ret
2015-11-12 21:49:27 -08:00
.asm_8d53f
call Function8d036
2015-11-04 17:20:14 -08:00
ret
2015-11-12 21:49:27 -08:00
.eighteen: ; 8d543 (23:5543)
callab Function29676
ret
2015-11-04 17:20:14 -08:00
2015-11-12 21:49:27 -08:00
.nineteen: ; 8d54a (23:554a)
ld hl, $c
add hl, bc
ld a, [hl]
cp $80
jr nc, .asm_8d574
ld d, a
add $8
ld [hl], a
ld hl, $b
add hl, bc
ld a, [hl]
xor $20
ld [hl], a
push af
push de
call .asm_8d6de
ld hl, $7
add hl, bc
ld [hl], a
pop de
pop af
call .asm_8d6e2
ld hl, $6
add hl, bc
ld [hl], a
ret
.asm_8d574
call Function8d036
ret
2015-11-04 17:20:14 -08:00
2015-11-12 21:49:27 -08:00
.twenty: ; 8d578 (23:5578)
callab Function91640
2015-11-04 17:20:14 -08:00
ret
2015-11-12 21:49:27 -08:00
.twentyone: ; 8d57f (23:557f)
ld hl, $d
add hl, bc
ld e, [hl]
inc hl
ld d, [hl]
ld hl, $80
add hl, de
ld e, l
ld d, h
ld hl, $d
add hl, bc
ld [hl], e
inc hl
ld [hl], d
ld hl, $c
add hl, bc
ld a, [hl]
rept 3
inc [hl]
endr
push af
2015-11-04 17:20:14 -08:00
push de
2015-11-12 21:49:27 -08:00
call .asm_8d6de
ld hl, $7
add hl, bc
ld [hl], a
pop de
pop af
call .asm_8d6e2
ld hl, $6
add hl, bc
ld [hl], a
ret
2015-11-04 17:20:14 -08:00
2015-11-12 21:49:27 -08:00
.twentytwo: ; 8d5b0 (23:55b0)
ld hl, $5
add hl, bc
ld a, [hl]
and a
ret z
ld hl, $d
add hl, bc
ld a, [hl]
inc [hl]
cp $40
ret c
ld hl, $5
add hl, bc
rept 2
dec [hl]
2015-11-04 17:20:14 -08:00
endr
2015-11-12 21:49:27 -08:00
ld hl, $f
add hl, bc
ld a, [hl]
ld d, a
cp $40
jr nc, .asm_8d5d3
2015-11-04 17:20:14 -08:00
add $8
2015-11-12 21:49:27 -08:00
ld [hl], a
.asm_8d5d3
ld hl, $e
add hl, bc
ld a, [hl]
inc [hl]
call .asm_8d6e2
ld hl, $6
add hl, bc
ld [hl], a
ret
2015-11-04 17:20:14 -08:00
2015-11-12 21:49:27 -08:00
.twentythree: ; 8d5e2 (23:55e2)
ld hl, $4
add hl, bc
ld a, [hl]
cp $b8
jr nc, .asm_8d603
rept 2
inc [hl]
endr
ld hl, $5
add hl, bc
dec [hl]
ld d, $40
ld hl, $c
add hl, bc
ld a, [hl]
inc [hl]
call .asm_8d6e2
ld hl, $6
add hl, bc
ld [hl], a
ret
.asm_8d603
call Function8d036
2015-11-04 17:20:14 -08:00
ret
2015-11-12 21:49:27 -08:00
.twentyfour: ; 8d607 (23:5607)
ld hl, $5
add hl, bc
ld a, [hl]
cp $54
ret z
ld hl, $5
add hl, bc
rept 2
inc [hl]
2015-11-04 17:20:14 -08:00
endr
2015-11-12 21:49:27 -08:00
ld hl, $f
add hl, bc
ld a, [hl]
ld d, a
and a
jr z, .asm_8d621
sub $2
ld [hl], a
.asm_8d621
ld hl, $e
add hl, bc
ld a, [hl]
inc [hl]
call .asm_8d6e2
ld hl, $6
add hl, bc
ld [hl], a
2015-11-04 17:20:14 -08:00
ret
2015-11-12 21:49:27 -08:00
.twentyseven: ; 8d630 (23:5630)
callba Function108bc7
ret
2015-11-04 17:20:14 -08:00
2015-11-12 21:49:27 -08:00
.twentyeight: ; 8d637 (23:5637)
callba Function108be0
ret
.twentynine: ; 8d63e (23:563e)
ld a, [wcf65]
and a
jr nz, .asm_8d645
ret
.asm_8d645
ld hl, $7
add hl, bc
ld [hl], $0
ld hl, $d
add hl, bc
ld a, [hl]
add $2
ld [hl], a
xor $ff
inc a
ld d, $20
call .asm_8d6de
ld hl, $7
add hl, bc
ld [hl], a
ld a, $36
call Function8d120
ret
.thirty: ; 8d666 (23:5666)
ld hl, $c
add hl, bc
ld a, [hl]
cp $14
jr nc, .asm_8d67f
add $2
ld [hl], a
xor $ff
inc a
ld d, $20
call .asm_8d6de
ld hl, $7
add hl, bc
ld [hl], a
.asm_8d67f
ret
.thirtytwo: ; 8d680 (23:5680)
ld hl, $b
add hl, bc
ld d, [hl]
rept 3
inc [hl]
endr
ld hl, $c
add hl, bc
ld a, [hl]
push af
push de
call .asm_8d6de
ld hl, $7
add hl, bc
ld [hl], a
pop de
2015-11-04 17:20:14 -08:00
pop af
2015-11-12 21:49:27 -08:00
call .asm_8d6e2
ld hl, $6
add hl, bc
ld [hl], a
2015-11-04 17:20:14 -08:00
ret
2015-11-12 21:49:27 -08:00
.thirtythree: ; 8d6a2 (23:56a2)
ld a, [wcf64]
cp $40
ret nz
ld a, $3d
call Function8d120
ret
.thirtyfour: ; 8d6ae (23:56ae)
ld hl, $5
add hl, bc
ld a, [hl]
add $10
ld [hl], a
ret
.twentysix: ; 8d6b7 (23:56b7)
callba Function11d0b6
ret
.thirtyone: ; 8d6be (23:56be)
callba Function49aa2
ret
.anonymous_jumptable: ; 8d6c5 (23:56c5)
ld hl, [sp+$0]
2015-11-04 17:20:14 -08:00
ld e, [hl]
inc hl
ld d, [hl]
2015-11-12 21:49:27 -08:00
inc de
ld hl, $b
add hl, bc
ld l, [hl]
ld h, $0
add hl, hl
add hl, de
2015-11-04 17:20:14 -08:00
ld a, [hli]
ld h, [hl]
ld l, a
2015-11-12 21:49:27 -08:00
ret
; 8d6d8 (23:56d8)
.asm_8d6d8: ; 8d6d8
ld hl, $b
add hl, bc
inc [hl]
ret
; 8d6de
.asm_8d6de: ; 8d6de (23:56de)
call Function8e72c
ret
.asm_8d6e2: ; 8d6e2 (23:56e2)
call Function8e72a
ret
; 8d6e6 (23:56e6)
Unknown_8d6e6: ; 8d6e6
dw Unknown_8d76a
dw Unknown_8d76d
dw Unknown_8d772
dw Unknown_8d777
dw Unknown_8d77c
dw Unknown_8d781
dw Unknown_8d786
dw Unknown_8d7a6
dw Unknown_8d7ab
dw Unknown_8d7b0
dw Unknown_8d7b5
dw Unknown_8d7d4
dw Unknown_8d7d9
dw Unknown_8d7e2
dw Unknown_8d7eb
dw Unknown_8d7f4
dw Unknown_8d7ff
dw Unknown_8d78b
dw Unknown_8d802
dw Unknown_8d805
dw Unknown_8d808
dw Unknown_8d811
dw Unknown_8d818
dw Unknown_8d81d
dw Unknown_8d822
dw Unknown_8d825
dw Unknown_8d82c
dw Unknown_8d82f
dw Unknown_8d861
dw Unknown_8d864
dw Unknown_8d867
dw Unknown_8d874
dw Unknown_8d877
dw Unknown_8d87a
dw Unknown_8d87d
dw Unknown_8d880
dw Unknown_8d883
dw Unknown_8d890
dw Unknown_8d899
dw Unknown_8d89c
dw Unknown_8d89f
dw Unknown_8d8a2
dw Unknown_8d8a5
dw Unknown_8d8a8
dw Unknown_8d8ab
dw Unknown_8d794
dw Unknown_8d79d
dw Unknown_8d8ae
dw Unknown_8d8cd
dw Unknown_8d8ec
dw Unknown_8d8f1
dw Unknown_8d8f4
dw Unknown_8d8f7
dw Unknown_8d8fe
dw Unknown_8d907
dw Unknown_8d90c
dw Unknown_8d913
dw Unknown_8d916
dw Unknown_8d91d
dw Unknown_8d924
dw Unknown_8d92b
dw Unknown_8d932
dw Unknown_8d93d
dw Unknown_8d940
dw Unknown_8d943
dw Unknown_8d948
; 8d76a
Unknown_8d76a: dw $2000
db -1
Unknown_8d76d: dw $0800, $0801
db -2
Unknown_8d772: dw $083d, $083e
db -2
Unknown_8d777: dw $083f, $0840
db -2
Unknown_8d77c: dw $0400, $0401
db -2
Unknown_8d781: dw $043d, $043e
db -2
Unknown_8d786: dw $043f, $0440
db -2
Unknown_8d78b: dw $0800, $0801, $0800, $4801
db -2
Unknown_8d794: dw $0863, $0864, $0863, $4864
db -2
Unknown_8d79d: dw $0865, $0866, $0865, $4866
db -2
Unknown_8d7a6: dw $011e, $011f
db -2
Unknown_8d7ab: dw $0120, $01fd
db -2
Unknown_8d7b0: dw $0121, $01fd
db -2
Unknown_8d7b5: dw $0c81, $0182, $0183, $0482, $0c81, $0c82, $0483, $2084, $0385, $0386, $0487, $0488, $0489, $0a8a, $078b
db -1
Unknown_8d7d4: dw $0323, $8323
db -2
Unknown_8d7d9: dw $0224, $0225, $0226, $0225
db -2
Unknown_8d7e2: dw $0727, $0728, $8727, $4728
db -2
Unknown_8d7eb: dw $0729, $072a, $0729, $072b
db -2
Unknown_8d7f4: dw $0729, $072c, $072d, $072c, $0729
db -1
Unknown_8d7ff: dw $142e
db -1
Unknown_8d802: dw $202f
db -1
Unknown_8d805: dw $2030
db -1
Unknown_8d808: dw $0330, $0331, $0330, $4331
db -2
Unknown_8d811: dw $0432, $0433, $0434
db -4
Unknown_8d818: dw $0335, $0336
db -2
Unknown_8d81d: dw $0737, $0738
db -2
Unknown_8d822: dw $2039
db -1
Unknown_8d825: dw $023b, $023a, $023b
db -1
Unknown_8d82c: dw $203c
db -1
Unknown_8d82f: dw $0841, $0842, $0841, $4842
db -2
dw $0843, $0844
db -2
dw $0845, $0846
db -2
dw $0847, $0848
db -2
dw $0149, $4149, $c149, $8149
db -2
dw $204a
db -1
dw $204b
db -1
dw $204c
db -1
dw $204d
db -1
dw $034e, $03fd
db -2
Unknown_8d861: dw $20fd
db -1
Unknown_8d864: dw $204f
db -1
Unknown_8d867: dw $0250, $1051, $01fd, $0152, $01fd, $0153
db -4
Unknown_8d874: dw $2054
db -1
Unknown_8d877: dw $2055
db -1
Unknown_8d87a: dw $6055
db -1
Unknown_8d87d: dw $a055
db -1
Unknown_8d880: dw $e055
db -1
Unknown_8d883: dw $0a56, $0957, $0a58, $0a59, $0958, $0a5a
db -2
Unknown_8d890: dw $0250, $025b, $0250, $425b
db -2
Unknown_8d899: dw $025c
db -1
Unknown_8d89c: dw $025d
db -1
Unknown_8d89f: dw $025e
db -1
Unknown_8d8a2: dw $025f
db -1
Unknown_8d8a5: dw $0260
db -1
Unknown_8d8a8: dw $0261
db -1
Unknown_8d8ab: dw $0262
db -1
Unknown_8d8ae: dw $0332, $0333, $0334, $0330, $0331, $0330, $4331, $0330, $0331, $0330, $4331, $0330, $0331, $0330, $4331
db -1
Unknown_8d8cd: dw $0330, $0331, $0330, $4331, $0330, $0331, $0330, $4331, $0330, $0331, $0330, $4331, $0332, $0333, $0334
db -4
Unknown_8d8ec: dw $0367, $0368
db -2
Unknown_8d8f1: dw $036c
db -1
Unknown_8d8f4: dw $036d
db -1
Unknown_8d8f7: dw $0269, $026a, $026b
db -4
Unknown_8d8fe: dw $036e, $036f, $0370, $0371
db -2
Unknown_8d907: dw $0371, $076e
db -1
Unknown_8d90c: dw $2072, $0773, $0774
db -1
Unknown_8d913: dw $0375
db -1
Unknown_8d916: dw $0376, $0377, $0778
db -4
Unknown_8d91d: dw $4376, $4377, $4778
db -4
Unknown_8d924: dw $8376, $8377, $8778
db -4
Unknown_8d92b: dw $c376, $c377, $c778
db -4
Unknown_8d932: dw $0379, $037a, $037b, $077c, $077d
db -1
Unknown_8d93d: dw $037e
db -1
Unknown_8d940: dw $00fd
db -1
Unknown_8d943: dw $087f, $0880
db -1
Unknown_8d948: dw $487f, $4880
db -1
; 8d94d
Unknown_8d94d: ; 8d94d
dbw $00, Unknown_8dd8a ; 00
dbw $04, Unknown_8dd8a ; 01
dbw $4c, Unknown_8daf1 ; 02
dbw $5c, Unknown_8daf1 ; 03
dbw $6c, Unknown_8daf6 ; 04
dbw $6e, Unknown_8daf6 ; 05
dbw $2d, Unknown_8ddf0 ; 06
dbw $4d, Unknown_8ddf0 ; 07
dbw $60, Unknown_8de09 ; 08
dbw $00, Unknown_8de09 ; 09
dbw $00, Unknown_8de09 ; 0a
dbw $06, Unknown_8de09 ; 0b
dbw $0c, Unknown_8de7e ; 0c
dbw $0d, Unknown_8daf1 ; 0d
dbw $00, Unknown_8dc53 ; 0e
dbw $04, Unknown_8dc53 ; 0f
dbw $08, Unknown_8dc53 ; 10
dbw $40, Unknown_8dc53 ; 11
dbw $44, Unknown_8dc53 ; 12
dbw $48, Unknown_8dc53 ; 13
dbw $4c, Unknown_8dc53 ; 14
dbw $80, Unknown_8de87 ; 15
dbw $85, Unknown_8de87 ; 16
dbw $8a, Unknown_8de87 ; 17
dbw $00, Unknown_8db29 ; 18
dbw $01, Unknown_8db5c ; 19
dbw $09, Unknown_8db9d ; 1a
dbw $10, Unknown_8dc94 ; 1b
dbw $29, Unknown_8dc94 ; 1c
dbw $42, Unknown_8dc94 ; 1d
dbw $f8, Unknown_8e17e ; 1e
dbw $fa, Unknown_8e17e ; 1f
dbw $00, Unknown_8deb2 ; 20
dbw $00, Unknown_8dec3 ; 21
dbw $00, Unknown_8deec ; 22
dbw $0f, Unknown_8db07 ; 23
dbw $11, Unknown_8daf1 ; 24
dbw $12, Unknown_8daf1 ; 25
dbw $13, Unknown_8daf1 ; 26
dbw $00, Unknown_8df29 ; 27
dbw $08, Unknown_8df29 ; 28
dbw $10, Unknown_8df42 ; 29
dbw $10, Unknown_8df5b ; 2a
dbw $10, Unknown_8df74 ; 2b
dbw $10, Unknown_8df8d ; 2c
dbw $10, Unknown_8dfa6 ; 2d
dbw $3a, Unknown_8daf1 ; 2e
dbw $00, Unknown_8dd8a ; 2f
dbw $00, Unknown_8db18 ; 30
dbw $02, Unknown_8dd9b ; 31
dbw $06, Unknown_8db5c ; 32
dbw $0a, Unknown_8db5c ; 33
dbw $0e, Unknown_8db5c ; 34
dbw $12, Unknown_8db3a ; 35
dbw $13, Unknown_8db3a ; 36
dbw $00, Unknown_8dd8a ; 37
dbw $04, Unknown_8dd8a ; 38
dbw $10, Unknown_8db5c ; 39
dbw $00, Unknown_8dd9b ; 3a
dbw $04, Unknown_8daf1 ; 3b
dbw $00, Unknown_8dfbf ; 3c
dbw $00, Unknown_8ddac ; 3d
dbw $00, Unknown_8ddbd ; 3e
dbw $00, Unknown_8ddce ; 3f
dbw $00, Unknown_8dddf ; 40
dbw $00, Unknown_8dd9b ; 41
dbw $04, Unknown_8dd9b ; 42
dbw $00, Unknown_8dc2e ; 43
dbw $30, Unknown_8dc2e ; 44
dbw $03, Unknown_8dc2e ; 45
dbw $33, Unknown_8dc2e ; 46
dbw $06, Unknown_8dc2e ; 47
dbw $36, Unknown_8dc2e ; 48
dbw $09, Unknown_8dc2e ; 49
dbw $39, Unknown_8dc2e ; 4a
dbw $0c, Unknown_8dfcc ; 4b
dbw $0c, Unknown_8dfe5 ; 4c
dbw $3c, Unknown_8daf1 ; 4d
dbw $3e, Unknown_8daf1 ; 4e
dbw $00, Unknown_8de9c ; 4f
dbw $00, Unknown_8dea1 ; 50
dbw $00, Unknown_8dff6 ; 51
dbw $00, Unknown_8e007 ; 52
dbw $00, Unknown_8e018 ; 53
dbw $00, Unknown_8daf1 ; 54
dbw $01, Unknown_8daf1 ; 55
dbw $00, Unknown_8e029 ; 56
dbw $00, Unknown_8e076 ; 57
dbw $00, Unknown_8e0b7 ; 58
dbw $00, Unknown_8e0f4 ; 59
dbw $00, Unknown_8e139 ; 5a
dbw $04, Unknown_8dea1 ; 5b
dbw $00, Unknown_8e183 ; 5c
dbw $00, Unknown_8e1b4 ; 5d
dbw $00, Unknown_8e1b9 ; 5e
dbw $00, Unknown_8e1ca ; 5f
dbw $00, Unknown_8e1eb ; 60
dbw $00, Unknown_8e1f0 ; 61
dbw $00, Unknown_8e1f9 ; 62
dbw $00, Unknown_8e202 ; 63
dbw $04, Unknown_8e202 ; 64
dbw $00, Unknown_8e213 ; 65
dbw $04, Unknown_8e213 ; 66
dbw $20, Unknown_8e224 ; 67
dbw $21, Unknown_8e224 ; 68
dbw $22, Unknown_8e24b ; 69
dbw $23, Unknown_8e25c ; 6a
dbw $27, Unknown_8e27d ; 6b
dbw $2a, Unknown_8e229 ; 6c
dbw $2a, Unknown_8e23a ; 6d
dbw $00, Unknown_8e2ae ; 6e
dbw $08, Unknown_8e33f ; 6f
dbw $60, Unknown_8e3b0 ; 70
dbw $68, Unknown_8e429 ; 71
dbw $00, Unknown_8e4a6 ; 72
dbw $05, Unknown_8e4a6 ; 73
dbw $0a, Unknown_8e4a6 ; 74
dbw $50, Unknown_8e50b ; 75
dbw $00, Unknown_8e54c ; 76
dbw $01, Unknown_8e551 ; 77
dbw $04, Unknown_8e55e ; 78
dbw $00, Unknown_8db29 ; 79
dbw $01, Unknown_8e57b ; 7a
dbw $03, Unknown_8e59c ; 7b
dbw $08, Unknown_8e5cd ; 7c
dbw $1c, Unknown_8e5cd ; 7d
dbw $80, Unknown_8e61e ; 7e
dbw $00, Unknown_8e66f ; 7f
dbw $04, Unknown_8e66f ; 80
dbw $d0, Unknown_8e680 ; 81
dbw $d3, Unknown_8e680 ; 82
dbw $d6, Unknown_8e680 ; 83
dbw $6c, Unknown_8e6a5 ; 84
dbw $68, Unknown_8e6a5 ; 85
dbw $64, Unknown_8e6a5 ; 86
dbw $60, Unknown_8e6a5 ; 87
dbw $0c, Unknown_8e6a5 ; 88
dbw $08, Unknown_8e6a5 ; 89
dbw $04, Unknown_8e6a5 ; 8a
dbw $00, Unknown_8e6a5 ; 8b
; 8daf1
Unknown_8daf1: ; 8daf1
db 1
db $fc, $fc, $00, $00
; 8daf6
Unknown_8daf6: ; 8daf6
db 4
db $f8, $f8, $00, $00
db $f8, $00, $01, $00
db $00, $f8, $10, $00
db $00, $00, $11, $00
; 8db07
Unknown_8db07: ; 8db07
db 4
db $f8, $f8, $00, $00
db $f8, $00, $00, $20
db $00, $f8, $01, $00
db $00, $00, $01, $20
; 8db18
Unknown_8db18: ; 8db18
db 4
db $f8, $f8, $00, $80
db $f8, $00, $00, $a0
db $00, $f8, $01, $80
db $00, $00, $01, $a0
; 8db29
Unknown_8db29: ; 8db29
db 4
db $f8, $f8, $00, $00
db $f8, $00, $00, $20
db $00, $f8, $00, $40
db $00, $00, $00, $60
; 8db3a
Unknown_8db3a: ; 8db3a
db 4
db $f8, $f8, $00, $07
db $f8, $00, $00, $27
db $00, $f8, $00, $47
db $00, $00, $00, $67
; 8db4b
; 8db4b
db 4
db $f8, $f8, $00, $80
db $f8, $00, $00, $a0
db $00, $f8, $00, $c0
db $00, $00, $00, $e0
; 8db5c
Unknown_8db5c: ; 8db5c
db 16
db $f0, $f0, $00, $00
db $f0, $f8, $01, $00
db $f8, $f0, $02, $00
db $f8, $f8, $03, $00
db $f0, $00, $01, $20
db $f0, $08, $00, $20
db $f8, $00, $03, $20
db $f8, $08, $02, $20
db $00, $f0, $02, $40
db $00, $f8, $03, $40
db $08, $f0, $00, $40
db $08, $f8, $01, $40
db $00, $00, $03, $60
db $00, $08, $02, $60
db $08, $00, $01, $60
db $08, $08, $00, $60
; 8db9d
Unknown_8db9d: ; 8db9d
db 36
db $e8, $e8, $00, $00
db $e8, $f0, $01, $00
db $e8, $f8, $02, $00
db $f0, $e8, $03, $00
db $f0, $f0, $04, $00
db $f0, $f8, $05, $00
db $f8, $e8, $06, $00
db $f8, $f0, $05, $00
db $f8, $f8, $05, $00
db $e8, $00, $02, $20
db $e8, $08, $01, $20
db $e8, $10, $00, $20
db $f0, $00, $05, $20
db $f0, $08, $04, $20
db $f0, $10, $03, $20
db $f8, $00, $05, $20
db $f8, $08, $05, $20
db $f8, $10, $06, $20
db $00, $e8, $06, $40
db $00, $f0, $05, $40
db $00, $f8, $05, $40
db $08, $e8, $03, $40
db $08, $f0, $04, $40
db $08, $f8, $05, $40
db $10, $e8, $00, $40
db $10, $f0, $01, $40
db $10, $f8, $02, $40
db $00, $00, $05, $60
db $00, $08, $05, $60
db $00, $10, $06, $60
db $08, $00, $05, $60
db $08, $08, $04, $60
db $08, $10, $03, $60
db $10, $00, $02, $60
db $10, $08, $01, $60
db $10, $10, $00, $60
; 8dc2e
Unknown_8dc2e: ; 8dc2e
db 9
db $f4, $f4, $00, $00
db $f4, $fc, $01, $00
db $f4, $04, $02, $00
db $fc, $f4, $10, $00
db $fc, $fc, $11, $00
db $fc, $04, $12, $00
db $04, $f4, $20, $00
db $04, $fc, $21, $00
db $04, $04, $22, $00
; 8dc53
Unknown_8dc53: ; 8dc53
db 16
db $f0, $f0, $00, $00
db $f0, $f8, $01, $00
db $f0, $00, $02, $00
db $f0, $08, $03, $00
db $f8, $f0, $10, $00
db $f8, $f8, $11, $00
db $f8, $00, $12, $00
db $f8, $08, $13, $00
db $00, $f0, $20, $00
db $00, $f8, $21, $00
db $00, $00, $22, $00
db $00, $08, $23, $00
db $08, $f0, $30, $00
db $08, $f8, $31, $00
db $08, $00, $32, $00
db $08, $08, $33, $00
; 8dc94
Unknown_8dc94: ; 8dc94
db 25
db $ec, $ec, $00, $00
db $f4, $ec, $01, $00
db $fc, $ec, $02, $00
db $04, $ec, $03, $00
db $0c, $ec, $04, $00
db $ec, $f4, $05, $00
db $f4, $f4, $06, $00
db $fc, $f4, $07, $00
db $04, $f4, $08, $00
db $0c, $f4, $09, $00
db $ec, $fc, $0a, $00
db $f4, $fc, $0b, $00
db $fc, $fc, $0c, $00
db $04, $fc, $0d, $00
db $0c, $fc, $0e, $00
db $ec, $04, $0f, $00
db $f4, $04, $10, $00
db $fc, $04, $11, $00
db $04, $04, $12, $00
db $0c, $04, $13, $00
db $ec, $0c, $14, $00
db $f4, $0c, $15, $00
db $fc, $0c, $16, $00
db $04, $0c, $17, $00
db $0c, $0c, $18, $00
; 8dcf9
; 8dcf9
db 36
db $e8, $e8, $00, $00
db $e8, $f0, $01, $00
db $e8, $f8, $02, $00
db $e8, $00, $03, $00
db $e8, $08, $04, $00
db $e8, $10, $05, $00
db $f0, $e8, $06, $00
db $f0, $f0, $07, $00
db $f0, $f8, $08, $00
db $f0, $00, $09, $00
db $f0, $08, $0a, $00
db $f0, $10, $0b, $00
db $f8, $e8, $0c, $00
db $f8, $f0, $0d, $00
db $f8, $f8, $0e, $00
db $f8, $00, $0f, $00
db $f8, $08, $10, $00
db $f8, $10, $11, $00
db $00, $e8, $12, $00
db $00, $f0, $13, $00
db $00, $f8, $14, $00
db $00, $00, $15, $00
db $00, $08, $16, $00
db $00, $10, $17, $00
db $08, $e8, $18, $00
db $08, $f0, $19, $00
db $08, $f8, $1a, $00
db $08, $00, $1b, $00
db $08, $08, $1c, $00
db $08, $10, $1d, $00
db $10, $e8, $1e, $00
db $10, $f0, $1f, $00
db $10, $f8, $20, $00
db $10, $00, $21, $00
db $10, $08, $22, $00
db $10, $10, $23, $00
; 8dd8a
Unknown_8dd8a: ; 8dd8a
db 4
db $f8, $f8, $00, $00
db $f8, $00, $01, $00
db $00, $f8, $02, $00
db $00, $00, $03, $00
; 8dd9b
Unknown_8dd9b: ; 8dd9b
db 4
db $f8, $f8, $00, $80
db $f8, $00, $01, $80
db $00, $f8, $02, $80
db $00, $00, $03, $80
; 8ddac
Unknown_8ddac: ; 8ddac
db 4
db $f8, $f8, $00, $00
db $f8, $00, $01, $00
db $00, $f8, $08, $00
db $00, $00, $03, $00
; 8ddbd
Unknown_8ddbd: ; 8ddbd
db 4
db $f8, $f8, $04, $00
db $f8, $00, $05, $00
db $00, $f8, $08, $00
db $00, $00, $07, $00
; 8ddce
Unknown_8ddce: ; 8ddce
db 4
db $f8, $f8, $00, $00
db $f8, $00, $01, $00
db $00, $f8, $09, $00
db $00, $00, $03, $00
; 8dddf
Unknown_8dddf: ; 8dddf
db 4
db $f8, $f8, $04, $00
db $f8, $00, $05, $00
db $00, $f8, $09, $00
db $00, $00, $07, $00
; 8ddf0
Unknown_8ddf0: ; 8ddf0
db 6
db $f8, $f4, $00, $01
db $f8, $fc, $01, $01
db $f8, $04, $02, $01
db $00, $f4, $10, $01
db $00, $fc, $11, $01
db $00, $04, $12, $01
; 8de09
Unknown_8de09: ; 8de09
db 29
db $e8, $e8, $00, $00
db $e8, $f0, $01, $00
db $e8, $f8, $02, $00
db $e8, $00, $03, $00
db $f0, $e8, $10, $00
db $f0, $f0, $11, $00
db $f0, $f8, $12, $00
db $f0, $00, $13, $00
db $f8, $e8, $20, $00
db $f8, $f0, $21, $00
db $f8, $f8, $22, $00
db $f8, $00, $23, $00
db $f8, $08, $24, $00
db $00, $e8, $30, $80
db $00, $f0, $31, $80
db $00, $f8, $32, $80
db $00, $00, $33, $80
db $00, $08, $34, $80
db $08, $e8, $40, $80
db $08, $f0, $41, $80
db $08, $f8, $42, $80
db $08, $00, $43, $80
db $08, $08, $44, $80
db $08, $10, $45, $80
db $10, $f0, $51, $80
db $10, $f8, $52, $80
db $10, $00, $53, $80
db $10, $08, $54, $80
db $10, $10, $55, $80
; 8de7e
Unknown_8de7e: ; 8de7e
db 2
db $f8, $fc, $00, $00
db $00, $fc, $10, $00
; 8de87
Unknown_8de87: ; 8de87
db 5
db $f0, $18, $00, $00
db $f0, $20, $01, $00
db $f8, $10, $02, $00
db $f8, $18, $03, $00
db $00, $10, $04, $00
; 8de9c
Unknown_8de9c: ; 8de9c
db 1
db $fc, $fc, $00, $06
; 8dea1
Unknown_8dea1: ; 8dea1
db 4
db $f8, $f8, $00, $06
db $f8, $00, $01, $06
db $00, $f8, $02, $06
db $00, $00, $03, $06
; 8deb2
Unknown_8deb2: ; 8deb2
db 4
db $ff, $ff, $00, $00
db $ff, $00, $00, $20
db $00, $ff, $00, $40
db $00, $00, $00, $60
; 8dec3
Unknown_8dec3: ; 8dec3
db 10
db $ff, $00, $00, $00
db $ff, $08, $01, $00
db $ff, $10, $01, $00
db $ff, $18, $01, $00
db $ff, $20, $00, $20
db $00, $00, $00, $40
db $00, $08, $01, $40
db $00, $10, $01, $40
db $00, $18, $01, $40
db $00, $20, $00, $60
; 8deec
Unknown_8deec: ; 8deec
db 15
db $ec, $f4, $00, $11
db $ec, $fc, $01, $11
db $ec, $04, $02, $11
db $f4, $f4, $03, $11
db $f4, $fc, $04, $11
db $f4, $04, $05, $11
db $fc, $f4, $06, $11
db $fc, $fc, $07, $11
db $fc, $04, $08, $11
db $04, $f4, $09, $11
db $04, $fc, $0a, $11
db $04, $04, $0b, $11
db $0c, $f4, $0c, $11
db $0c, $fc, $0d, $11
db $0c, $04, $0e, $11
; 8df29
Unknown_8df29: ; 8df29
db 6
db $f4, $f4, $00, $15
db $f4, $fc, $02, $15
db $f4, $04, $00, $35
db $04, $f4, $04, $15
db $04, $fc, $06, $15
db $04, $04, $04, $35
; 8df42
Unknown_8df42: ; 8df42
db 6
db $f4, $f4, $00, $16
db $f4, $fc, $02, $16
db $f4, $04, $04, $16
db $04, $f4, $06, $16
db $04, $fc, $08, $16
db $04, $04, $0a, $16
; 8df5b
Unknown_8df5b: ; 8df5b
db 6
db $f4, $f4, $00, $16
db $f4, $fc, $02, $16
db $f4, $04, $04, $16
db $04, $f4, $0c, $16
db $04, $fc, $0e, $16
db $04, $04, $10, $16
; 8df74
Unknown_8df74: ; 8df74
db 6
db $f4, $f4, $00, $16
db $f4, $fc, $02, $16
db $f4, $04, $04, $16
db $04, $f4, $12, $16
db $04, $fc, $14, $16
db $04, $04, $16, $16
; 8df8d
Unknown_8df8d: ; 8df8d
db 6
db $f4, $f4, $00, $16
db $f4, $fc, $02, $16
db $f4, $04, $04, $16
db $04, $f4, $18, $16
db $04, $fc, $1a, $16
db $04, $04, $1c, $16
; 8dfa6
Unknown_8dfa6: ; 8dfa6
db 6
db $f4, $f4, $1e, $16
db $f4, $fc, $20, $16
db $f4, $04, $22, $16
db $04, $f4, $24, $16
db $04, $fc, $26, $16
db $04, $04, $28, $16
; 8dfbf
Unknown_8dfbf: ; 8dfbf
db 3
db $f4, $fc, $00, $10
db $fc, $fc, $00, $10
db $04, $fc, $00, $10
; 8dfcc
Unknown_8dfcc: ; 8dfcc
db 6
db $00, $00, $00, $00
db $00, $08, $01, $00
db $00, $10, $01, $00
db $00, $18, $01, $00
db $00, $20, $02, $00
db $00, $28, $03, $00
; 8dfe5
Unknown_8dfe5: ; 8dfe5
db 4
db $00, $00, $00, $00
db $00, $08, $01, $00
db $00, $10, $02, $00
db $00, $18, $03, $00
; 8dff6
Unknown_8dff6: ; 8dff6
db 4
db $f8, $f6, $00, $06
db $f8, $02, $01, $06
db $00, $f6, $02, $06
db $00, $02, $03, $06
; 8e007
Unknown_8e007: ; 8e007
db 4
db $f8, $f4, $00, $06
db $f8, $04, $01, $06
db $00, $f4, $02, $06
db $00, $04, $03, $06
; 8e018
Unknown_8e018: ; 8e018
db 4
db $f8, $f0, $00, $06
db $f8, $08, $01, $06
db $00, $f0, $02, $06
db $00, $08, $03, $06
; 8e029
Unknown_8e029: ; 8e029
db 19
db $f8, $e0, $00, $00
db $f0, $e8, $02, $00
db $00, $e8, $04, $00
db $e8, $f0, $06, $00
db $f8, $f0, $08, $00
db $08, $f0, $0a, $00
db $e8, $f8, $0c, $00
db $f8, $f8, $0e, $00
db $08, $f8, $10, $00
db $e8, $00, $12, $00
db $f8, $00, $14, $00
db $08, $00, $16, $00
db $e8, $08, $18, $00
db $f8, $08, $1a, $00
db $08, $08, $1c, $00
db $f8, $10, $1e, $00
db $08, $10, $20, $00
db $f0, $18, $22, $00
db $00, $18, $24, $00
; 8e076
Unknown_8e076: ; 8e076
db 16
db $f8, $e0, $00, $00
db $f0, $e8, $02, $00
db $00, $e8, $04, $00
db $f8, $f0, $26, $00
db $08, $f0, $0a, $00
db $e8, $f8, $28, $00
db $f8, $f8, $2a, $00
db $08, $f8, $10, $00
db $f8, $00, $2c, $00
db $08, $00, $16, $00
db $f8, $08, $30, $00
db $08, $08, $1c, $00
db $f8, $10, $1e, $00
db $08, $10, $20, $00
db $f0, $18, $22, $00
db $00, $18, $24, $00
; 8e0b7
Unknown_8e0b7: ; 8e0b7
db 15
db $f8, $e0, $00, $00
db $f0, $e8, $02, $00
db $00, $e8, $32, $00
db $f8, $f0, $34, $00
db $08, $f0, $36, $00
db $f8, $f8, $38, $00
db $08, $f8, $3a, $00
db $f8, $00, $3c, $00
db $08, $00, $3e, $00
db $f8, $08, $30, $00
db $08, $08, $1c, $00
db $f8, $10, $1e, $00
db $08, $10, $20, $00
db $f0, $18, $22, $00
db $00, $18, $24, $00
; 8e0f4
Unknown_8e0f4: ; 8e0f4
db 17
db $f8, $e0, $00, $00
db $f0, $e8, $02, $00
db $00, $e8, $04, $00
db $f8, $f0, $40, $00
db $08, $f0, $42, $00
db $18, $f0, $44, $00
db $f8, $f8, $46, $00
db $08, $f8, $48, $00
db $18, $f8, $4a, $00
db $f8, $00, $4c, $00
db $08, $00, $4e, $00
db $f8, $08, $30, $00
db $08, $08, $1c, $00
db $f8, $10, $1e, $00
db $08, $10, $20, $00
db $f0, $18, $22, $00
db $00, $18, $24, $00
; 8e139
Unknown_8e139: ; 8e139
db 17
db $f8, $e0, $00, $00
db $f0, $e8, $02, $00
db $00, $e8, $04, $00
db $f8, $f0, $50, $00
db $08, $f0, $0a, $00
db $e8, $f8, $52, $00
db $f8, $f8, $54, $00
db $08, $f8, $10, $00
db $e8, $00, $56, $00
db $f8, $00, $2e, $00
db $08, $00, $16, $00
db $f8, $08, $30, $00
db $08, $08, $1c, $00
db $f8, $10, $1e, $00
db $08, $10, $20, $00
db $f0, $18, $22, $00
db $00, $18, $24, $00
; 8e17e
Unknown_8e17e: ; 8e17e
db 1
db $fc, $fc, $00, $11
; 8e183
Unknown_8e183: ; 8e183
db 12
db $00, $00, $30, $00
db $00, $08, $31, $00
db $00, $10, $31, $00
db $00, $18, $31, $00
db $00, $20, $31, $00
db $00, $28, $32, $00
db $08, $00, $33, $00
db $08, $08, $34, $00
db $08, $10, $34, $00
db $08, $18, $34, $00
db $08, $20, $34, $00
db $08, $28, $35, $00
; 8e1b4
Unknown_8e1b4: ; 8e1b4
db 1
db $00, $00, $ed, $00
; 8e1b9
Unknown_8e1b9: ; 8e1b9
db 4
db $ff, $ff, $30, $00
db $ff, $01, $32, $00
db $01, $ff, $33, $00
db $01, $01, $35, $00
; 8e1ca
Unknown_8e1ca: ; 8e1ca
db 8
db $ff, $ff, $30, $00
db $ff, $04, $31, $00
db $ff, $0c, $31, $00
db $ff, $11, $32, $00
db $01, $ff, $33, $00
db $01, $04, $34, $00
db $01, $0c, $34, $00
db $01, $11, $35, $00
; 8e1eb
Unknown_8e1eb: ; 8e1eb
db 1
db $00, $00, $34, $00
; 8e1f0
Unknown_8e1f0: ; 8e1f0
db 2
db $00, $00, $30, $00
db $08, $00, $33, $00
; 8e1f9
Unknown_8e1f9: ; 8e1f9
db 2
db $00, $00, $32, $00
db $08, $00, $35, $00
; 8e202
Unknown_8e202: ; 8e202
db 4
db $f8, $f8, $00, $01
db $f8, $00, $01, $01
db $00, $f8, $02, $01
db $00, $00, $03, $01
; 8e213
Unknown_8e213: ; 8e213
db 4
db $f8, $f8, $00, $81
db $f8, $00, $01, $81
db $00, $f8, $02, $81
db $00, $00, $03, $81
; 8e224
Unknown_8e224: ; 8e224
db 1
db $fc, $fc, $00, $02
; 8e229
Unknown_8e229: ; 8e229
db 4
db $f0, $fc, $00, $03
db $f8, $fc, $01, $03
db $00, $fc, $02, $03
db $08, $fc, $03, $03
; 8e23a
Unknown_8e23a: ; 8e23a
db 4
db $f0, $fc, $03, $44
db $f8, $fc, $02, $44
db $00, $fc, $01, $44
db $08, $fc, $00, $44
; 8e24b
Unknown_8e24b: ; 8e24b
db 4
db $f8, $f8, $00, $01
db $f8, $00, $00, $21
db $00, $f8, $00, $41
db $00, $00, $00, $61
; 8e25c
Unknown_8e25c: ; 8e25c
db 8
db $f4, $f4, $00, $01
db $f4, $fc, $01, $01
db $f4, $04, $00, $21
db $fc, $f4, $02, $01
db $fc, $04, $02, $21
db $04, $f4, $00, $41
db $04, $fc, $01, $41
db $04, $04, $00, $61
; 8e27d
Unknown_8e27d: ; 8e27d
db 12
db $f0, $f0, $00, $01
db $f0, $f8, $01, $01
db $f8, $f0, $02, $01
db $f0, $00, $01, $21
db $f0, $08, $00, $21
db $f8, $08, $02, $21
db $00, $f0, $02, $41
db $08, $f0, $00, $41
db $08, $f8, $01, $41
db $00, $08, $02, $61
db $08, $00, $01, $61
db $08, $08, $00, $61
; 8e2ae
Unknown_8e2ae: ; 8e2ae
db 36
db $e8, $08, $05, $00
db $e8, $10, $06, $00
db $e8, $18, $07, $00
db $f0, $e8, $11, $00
db $f0, $f0, $12, $00
db $f0, $f8, $13, $00
db $f0, $00, $14, $00
db $f0, $08, $15, $00
db $f0, $10, $16, $00
db $f0, $18, $17, $00
db $f8, $e0, $20, $00
db $f8, $e8, $21, $00
db $f8, $f0, $22, $00
db $f8, $f8, $23, $00
db $f8, $00, $24, $00
db $f8, $08, $25, $00
db $f8, $10, $26, $00
db $f8, $18, $27, $00
db $00, $e0, $30, $00
db $00, $e8, $31, $00
db $00, $f0, $32, $00
db $00, $f8, $33, $00
db $00, $00, $34, $00
db $00, $08, $35, $00
db $00, $10, $36, $00
db $08, $e0, $40, $00
db $08, $e8, $41, $00
db $08, $f0, $42, $00
db $08, $f8, $43, $00
db $08, $00, $44, $00
db $08, $08, $45, $00
db $08, $10, $46, $00
db $08, $18, $47, $00
db $10, $e0, $50, $00
db $10, $e8, $51, $00
db $10, $18, $57, $00
; 8e33f
Unknown_8e33f: ; 8e33f
db 28
db $e8, $00, $04, $00
db $e8, $08, $05, $00
db $e8, $10, $06, $00
db $f0, $e8, $11, $00
db $f0, $f0, $12, $00
db $f0, $f8, $13, $00
db $f0, $00, $14, $00
db $f0, $08, $15, $00
db $f0, $10, $16, $00
db $f8, $e8, $21, $00
db $f8, $f0, $22, $00
db $f8, $f8, $23, $00
db $f8, $00, $24, $00
db $f8, $08, $25, $00
db $f8, $10, $26, $00
db $00, $e0, $30, $00
db $00, $e8, $31, $00
db $00, $f0, $32, $00
db $00, $f8, $33, $00
db $00, $00, $34, $00
db $00, $08, $35, $00
db $08, $f0, $42, $00
db $08, $f8, $43, $00
db $08, $00, $44, $00
db $08, $08, $45, $00
db $10, $f8, $53, $00
db $10, $00, $54, $00
db $10, $08, $55, $00
; 8e3b0
Unknown_8e3b0: ; 8e3b0
db 30
db $e8, $00, $04, $00
db $e8, $08, $05, $00
db $f0, $e8, $11, $00
db $f0, $f0, $12, $00
db $f0, $f8, $13, $00
db $f0, $00, $14, $00
db $f0, $08, $15, $00
db $f0, $10, $16, $00
db $f0, $18, $17, $00
db $f8, $e0, $20, $00
db $f8, $e8, $21, $00
db $f8, $f0, $22, $00
db $f8, $f8, $23, $00
db $f8, $00, $24, $00
db $f8, $08, $25, $00
db $f8, $10, $26, $00
db $00, $e0, $30, $00
db $00, $e8, $31, $00
db $00, $f0, $32, $00
db $00, $f8, $33, $00
db $00, $00, $34, $00
db $00, $08, $35, $00
db $08, $f0, $42, $00
db $08, $f8, $43, $00
db $08, $00, $44, $00
db $08, $08, $45, $00
db $10, $f0, $52, $00
db $10, $f8, $53, $00
db $10, $00, $54, $00
db $10, $08, $55, $00
; 8e429
Unknown_8e429: ; 8e429
db 31
db $f0, $e8, $11, $00
db $f0, $f0, $12, $00
db $f0, $f8, $13, $00
db $f0, $00, $14, $00
db $f0, $08, $15, $00
db $f0, $10, $16, $00
db $f0, $18, $17, $00
db $f8, $e0, $20, $00
db $f8, $e8, $21, $00
db $f8, $f0, $22, $00
db $f8, $f8, $23, $00
db $f8, $00, $24, $00
db $f8, $08, $25, $00
db $f8, $10, $26, $00
db $f8, $18, $27, $00
db $00, $e0, $30, $00
db $00, $e8, $31, $00
db $00, $f0, $32, $00
db $00, $f8, $33, $00
db $00, $00, $34, $00
db $00, $08, $35, $00
db $00, $10, $36, $00
db $08, $e8, $41, $00
db $08, $f0, $42, $00
db $08, $f8, $43, $00
db $08, $00, $44, $00
db $08, $08, $45, $00
db $10, $e8, $51, $00
db $10, $f0, $52, $00
db $10, $00, $54, $00
db $10, $08, $55, $00
; 8e4a6
Unknown_8e4a6: ; 8e4a6
db 25
db $ec, $ec, $00, $09
db $ec, $f4, $01, $09
db $ec, $fc, $02, $09
db $ec, $04, $03, $09
db $ec, $0c, $04, $09
db $f4, $ec, $10, $09
db $f4, $f4, $11, $09
db $f4, $fc, $12, $09
db $f4, $04, $13, $09
db $f4, $0c, $14, $09
db $fc, $ec, $20, $09
db $fc, $f4, $21, $09
db $fc, $fc, $22, $09
db $fc, $04, $23, $09
db $fc, $0c, $24, $09
db $04, $ec, $30, $09
db $04, $f4, $31, $09
db $04, $fc, $32, $09
db $04, $04, $33, $09
db $04, $0c, $34, $09
db $0c, $ec, $40, $09
db $0c, $f4, $41, $09
db $0c, $fc, $42, $09
db $0c, $04, $43, $09
db $0c, $0c, $44, $09
; 8e50b
Unknown_8e50b: ; 8e50b
db 16
db $f0, $ec, $00, $0a
db $f0, $f4, $01, $0a
db $f0, $fc, $02, $0a
db $f0, $04, $03, $0a
db $f8, $ec, $04, $0a
db $f8, $f4, $05, $0a
db $f8, $fc, $06, $0a
db $f8, $04, $07, $0a
db $00, $ec, $08, $0a
db $00, $f4, $09, $0a
db $00, $fc, $0a, $0a
db $00, $04, $0b, $0a
db $08, $ec, $0c, $0a
db $08, $f4, $0d, $0a
db $08, $fc, $0e, $0a
db $08, $04, $0f, $0a
; 8e54c
Unknown_8e54c: ; 8e54c
db 1
db $fc, $fc, $00, $00
; 8e551
Unknown_8e551: ; 8e551
db 3
db $00, $f8, $00, $00
db $f8, $f8, $01, $00
db $f8, $00, $02, $00
; 8e55e
Unknown_8e55e: ; 8e55e
db 7
db $08, $f0, $00, $00
db $00, $f0, $01, $00
db $f8, $f0, $02, $00
db $f8, $f8, $03, $00
db $f0, $f8, $04, $00
db $f0, $00, $05, $00
db $f0, $08, $06, $00
; 8e57b
Unknown_8e57b: ; 8e57b
db 8
db $f8, $f0, $00, $00
db $f8, $f8, $01, $00
db $f8, $00, $01, $20
db $f8, $08, $00, $20
db $00, $f0, $00, $40
db $00, $f8, $01, $40
db $00, $00, $01, $60
db $00, $08, $00, $60
; 8e59c
Unknown_8e59c: ; 8e59c
db 12
db $e8, $f8, $00, $00
db $f0, $f8, $01, $00
db $f8, $f8, $02, $00
db $e8, $00, $00, $20
db $f0, $00, $01, $20
db $f8, $00, $02, $20
db $00, $f8, $02, $40
db $08, $f8, $01, $40
db $10, $f8, $00, $40
db $00, $00, $02, $60
db $08, $00, $01, $60
db $10, $00, $00, $60
; 8e5cd
Unknown_8e5cd: ; 8e5cd
db 20
db $ec, $f0, $00, $00
db $ec, $f8, $01, $00
db $ec, $00, $02, $00
db $ec, $08, $03, $00
db $f4, $f0, $04, $00
db $f4, $f8, $05, $00
db $f4, $00, $06, $00
db $f4, $08, $07, $00
db $fc, $f0, $08, $00
db $fc, $f8, $09, $00
db $fc, $00, $0a, $00
db $fc, $08, $0b, $00
db $04, $f0, $0c, $00
db $04, $f8, $0d, $00
db $04, $00, $0e, $00
db $04, $08, $0f, $00
db $0c, $f0, $10, $00
db $0c, $f8, $11, $00
db $0c, $00, $12, $00
db $0c, $08, $13, $00
; 8e61e
Unknown_8e61e: ; 8e61e
db 20
db $00, $08, $00, $81
db $08, $10, $00, $81
db $10, $18, $00, $81
db $18, $20, $00, $81
db $20, $28, $00, $81
db $18, $30, $00, $81
db $10, $38, $00, $81
db $08, $40, $00, $81
db $00, $48, $00, $81
db $08, $50, $00, $81
db $10, $58, $00, $81
db $18, $60, $00, $81
db $20, $68, $00, $81
db $18, $70, $00, $81
db $10, $78, $00, $81
db $08, $80, $00, $81
db $00, $88, $00, $81
db $08, $90, $00, $81
db $10, $98, $00, $81
db $18, $a0, $00, $81
; 8e66f
Unknown_8e66f: ; 8e66f
db 4
db $f8, $f8, $00, $02
db $f8, $00, $01, $02
db $00, $f8, $02, $02
db $00, $00, $03, $02
; 8e680
Unknown_8e680: ; 8e680
db 9
db $f0, $f4, $00, $01
db $f0, $fc, $01, $01
db $f0, $04, $02, $01
db $f8, $f4, $10, $01
db $f8, $fc, $11, $01
db $f8, $04, $12, $01
db $00, $f4, $20, $01
db $00, $fc, $21, $01
db $00, $04, $22, $01
; 8e6a5
Unknown_8e6a5: ; 8e6a5
db 24
db $d8, $f4, $00, $01
db $d8, $fc, $01, $01
db $d8, $04, $02, $01
db $d8, $0c, $03, $01
db $e0, $f4, $10, $01
db $e0, $fc, $11, $01
db $e0, $04, $12, $01
db $e0, $0c, $13, $01
db $e8, $f4, $20, $01
db $e8, $fc, $21, $01
db $e8, $04, $22, $01
db $e8, $0c, $23, $01
db $f0, $f4, $30, $01
db $f0, $fc, $31, $01
db $f0, $04, $32, $01
db $f0, $0c, $33, $01
db $f8, $f4, $40, $01
db $f8, $fc, $41, $01
db $f8, $04, $42, $01
db $f8, $0c, $43, $01
db $00, $f4, $50, $01
db $00, $fc, $51, $01
db $00, $04, $52, $01
db $00, $0c, $53, $01
; 8e706
Unknown_8e706: ; Broken 2bpp pointers
dbbw $80, $01, $672a ; 128-tile 2bpp at 1:672a (inside Multiply)
dbbw $80, $01, $672a
dbbw $80, $01, $672a
dbbw $80, $01, $672a
dbbw $10, $37, $672a ; 16-tile 2bpp at 37:672a (within Tileset11GFX)
dbbw $10, $11, $672a ; 16-tile 2bpp at 11:672a (empty data)
dbbw $10, $39, $672a ; 16-tile 2bpp at 39:672a (empty data)
dbbw $10, $24, $672a ; 16-tile 2bpp at 24:672a (inside Function926f7)
dbbw $10, $21, $672a ; 16-tile 2bpp at 21:672a (inside Function8671c)
Function8e72a: ; 8e72a
add $10
Function8e72c: ; 8e72c
and $3f
cp $20
jr nc, .asm_8e737
call Function8e741
ld a, h
ret
.asm_8e737
and $1f
call Function8e741
ld a, h
xor $ff ; cpl
inc a
ret
; 8e741
Function8e741: ; 8e741
ld e, a
ld a, d
ld d, 0
ld hl, Unknown_8e75d
rept 2
add hl, de
endr
ld e, [hl]
inc hl
ld d, [hl]
ld hl, 0
.asm_8e750
srl a
jr nc, .asm_8e755
add hl, de
.asm_8e755
sla e
rl d
2015-11-04 17:20:14 -08:00
and a
2015-11-12 21:49:27 -08:00
jr nz, .asm_8e750
ret
; 8e75d
Unknown_8e75d: ; 8e75d
sine_wave $100