summaryrefslogtreecommitdiff
path: root/engine/battle/1c.asm
diff options
context:
space:
mode:
Diffstat (limited to 'engine/battle/1c.asm')
-rwxr-xr-xengine/battle/1c.asm911
1 files changed, 911 insertions, 0 deletions
diff --git a/engine/battle/1c.asm b/engine/battle/1c.asm
new file mode 100755
index 00000000..1f07807a
--- /dev/null
+++ b/engine/battle/1c.asm
@@ -0,0 +1,911 @@
+Func_708ca: ; 708ca (1c:48ca)
+ ld a, $e4
+ ld [rOBP1], a ; $ff49
+ call Func_7092a
+ FuncCoord 12, 0 ; $c3ac
+ ld hl, Coord
+ ld bc, $707
+ call ClearScreenArea
+ call Delay3
+ xor a
+ ld [H_AUTOBGTRANSFERENABLED], a ; $ffba
+ ld a, $91
+ ld [$cee9], a
+ ld a, $1
+ ld [H_WHOSETURN], a ; $fff3
+ callab Func_79793
+ ld d, $80
+ call Func_704f3
+.asm_708f6
+ ld c, $a
+ call DelayFrames
+ ld a, [rOBP1] ; $ff49
+ sla a
+ sla a
+ ld [rOBP1], a ; $ff49
+ jr nz, .asm_708f6
+ call CleanLCD_OAM
+ call Func_7092a
+ ld b, $e4
+.asm_7090d
+ ld c, $a
+ call DelayFrames
+ ld a, [rOBP1] ; $ff49
+ srl b
+ rra
+ srl b
+ rra
+ ld [rOBP1], a ; $ff49
+ ld a, b
+ and a
+ jr nz, .asm_7090d
+ ld a, $1
+ ld [H_AUTOBGTRANSFERENABLED], a ; $ffba
+ call Delay3
+ jp CleanLCD_OAM
+
+Func_7092a: ; 7092a (1c:492a)
+ ld de, $9000
+ ld hl, $8000
+ ld bc, $31
+ call CopyVideoData
+ ld a, $10
+ ld [W_BASECOORDY], a ; $d082
+ ld a, $70
+ ld [W_BASECOORDX], a ; $d081
+ ld hl, wOAMBuffer
+ ld bc, $606
+ ld d, $8
+.asm_70948
+ push bc
+ ld a, [W_BASECOORDY] ; $d082
+ ld e, a
+.asm_7094d
+ ld a, e
+ add $8
+ ld e, a
+ ld [hli], a
+ ld a, [W_BASECOORDX] ; $d081
+ ld [hli], a
+ ld a, d
+ ld [hli], a
+ ld a, $10
+ ld [hli], a
+ inc d
+ dec c
+ jr nz, .asm_7094d
+ inc d
+ ld a, [W_BASECOORDX] ; $d081
+ add $8
+ ld [W_BASECOORDX], a ; $d081
+ pop bc
+ dec b
+ jr nz, .asm_70948
+ ret
+
+Func_7096d: ; 7096d (1c:496d)
+ ld a, $1
+ ld [H_AUTOBGTRANSFERENABLED], a ; $ffba
+ call Delay3
+ xor a
+ ld [$ffb0], a
+ dec a
+ ld [$cfcb], a
+ call DelayFrame
+ ld hl, $c102
+ ld a, [H_DOWNARROWBLINKCNT2] ; $ff8c
+ ld c, a
+ ld b, $0
+ ld de, $10
+.asm_70989
+ ld a, [hl]
+ cp $ff
+ jr z, .asm_7098f
+ inc b
+.asm_7098f
+ add hl, de
+ dec c
+ jr nz, .asm_70989
+ ld hl, $c310
+ ld c, $9
+.asm_70998
+ ld a, b
+ swap a
+ cp l
+ jr z, .asm_709a9
+ push hl
+ push bc
+ ld bc, $10
+ xor a
+ call FillMemory
+ pop bc
+ pop hl
+.asm_709a9
+ ld de, $10
+ add hl, de
+ dec c
+ jr nz, .asm_70998
+ call Delay3
+ call LoadBattleTransitionTile
+ ld bc, $0
+ ld a, [W_ISLINKBATTLE] ; $d12b
+ cp $4
+ jr z, .asm_709c9
+ call Func_709e2
+ call Func_709ef
+ call Func_70a19
+.asm_709c9
+ ld hl, PointerTable_709d2 ; $49d2
+ add hl, bc
+ add hl, bc
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ jp [hl]
+
+PointerTable_709d2: ; 709d2 (1c:49d2)
+ dw Func_70d24
+ dw Func_70a72
+ dw Func_70ce4
+ dw Func_70a72
+ dw Func_70cb4
+ dw Func_70b7f
+ dw Func_70c7e
+ dw Func_70bca
+
+Func_709e2: ; 709e2 (1c:49e2)
+ ld a, [W_CUROPPONENT] ; $d059
+ cp $c8
+ jr nc, .asm_709ec
+ res 0, c
+ ret
+.asm_709ec
+ set 0, c
+ ret
+
+Func_709ef: ; 709ef (1c:49ef)
+ ld hl, W_PARTYMON1_HP ; $d16c
+.asm_709f2
+ ld a, [hli]
+ or [hl]
+ jr nz, .asm_709fc
+ ld de, $2b
+ add hl, de
+ jr .asm_709f2
+.asm_709fc
+ ld de, $1f
+ add hl, de
+ ld a, [hl]
+ add $3
+ ld e, a
+ ld a, [W_CURENEMYLVL] ; $d127
+ sub e
+ jr nc, .asm_70a12
+ res 1, c
+ ld a, $1
+ ld [$cd47], a
+ ret
+.asm_70a12
+ set 1, c
+ xor a
+ ld [$cd47], a
+ ret
+
+Func_70a19: ; 70a19 (1c:4a19)
+ ld a, [W_CURMAP] ; $d35e
+ ld e, a
+ ld hl, MapIDList_70a3f ; $4a3f
+.asm_70a20
+ ld a, [hli]
+ cp $ff
+ jr z, .asm_70a2b
+ cp e
+ jr nz, .asm_70a20
+.asm_70a28
+ set 2, c
+ ret
+.asm_70a2b
+ ld hl, MapIDList_70a44 ; $4a44
+.asm_70a2e
+ ld a, [hli]
+ cp $ff
+ jr z, .asm_70a3c
+ ld d, a
+ ld a, [hli]
+ cp e
+ jr c, .asm_70a2e
+ ld a, e
+ cp d
+ jr nc, .asm_70a28
+.asm_70a3c
+ res 2, c
+ ret
+
+; Func_70a19 checks if W_CURMAP is equal to one of these maps
+MapIDList_70a3f: ; 70a3f (1c:4a3f)
+ db VIRIDIAN_FOREST
+ db ROCK_TUNNEL_1
+ db SEAFOAM_ISLANDS_1
+ db ROCK_TUNNEL_2
+ db $FF
+
+; Func_70a19 checks if W_CURMAP is in between or equal to each pair of maps
+MapIDList_70a44: ; 70a44 (1c:4a44)
+ ; all MT_MOON maps
+ db MT_MOON_1
+ db MT_MOON_3
+
+ ; all SS_ANNE maps, VICTORY_ROAD_1, LANCES_ROOM, and HALL_OF_FAME
+ db SS_ANNE_1
+ db HALL_OF_FAME
+
+ ; all POKEMONTOWER maps and Lavender Town buildings
+ db LAVENDER_POKECENTER
+ db LAVENDER_HOUSE_2
+
+ ; all SILPH_CO, MANSION, SAFARI_ZONE, and UNKNOWN_DUNGEON maps,
+ ; except for SILPH_CO_1F
+ db SILPH_CO_2F
+ db UNKNOWN_DUNGEON_1
+ db $FF
+
+LoadBattleTransitionTile: ; 70a4d (1c:4a4d)
+ ld hl, $8ff0
+ ld de, BattleTransitionTile ; $4a59
+ ld bc, (BANK(BattleTransitionTile) << 8) + $01
+ jp CopyVideoData
+
+BattleTransitionTile: ; 70a59 (1c:4a59)
+ INCBIN "gfx/battle_transition.2bpp"
+
+Func_70a69: ; 70a69 (1c:4a69)
+ ld a, $ff
+ ld [rBGP], a ; $ff47
+ ld [rOBP0], a ; $ff48
+ ld [rOBP1], a ; $ff49
+ ret
+
+Func_70a72: ; 70a72 (1c:4a72)
+ ld a, [$cd47]
+ and a
+ jr z, .asm_70a7d
+ call Func_70aaa
+ jr .asm_70a9f
+.asm_70a7d
+ FuncCoord 10, 10 ; $c472
+ ld hl, Coord
+ ld a, $3
+ ld [$d09f], a
+ ld a, l
+ ld [$d09b], a
+ ld a, h
+ ld [$d09a], a
+ ld b, $78
+.asm_70a8f
+ ld c, $3
+.asm_70a91
+ push bc
+ call Func_70af9
+ pop bc
+ dec c
+ jr nz, .asm_70a91
+ call DelayFrame
+ dec b
+ jr nz, .asm_70a8f
+.asm_70a9f
+ call Func_70a69
+ xor a
+ ld [$d09b], a
+ ld [$d09a], a
+ ret
+
+Func_70aaa: ; 70aaa (1c:4aaa)
+ ld a, $7
+ ld [wWhichTrade], a ; $cd3d
+ ld hl, wTileMap
+ ld c, $11
+ ld de, $14
+ call Func_70ae0
+ inc c
+ jr .asm_70ac3
+.asm_70abd
+ ld de, $14
+ call Func_70ae0
+.asm_70ac3
+ inc c
+ ld de, $1
+ call Func_70ae0
+ dec c
+ dec c
+ ld de, $ffec
+ call Func_70ae0
+ inc c
+ ld de, rIE ; $ffff
+ call Func_70ae0
+ dec c
+ dec c
+ ld a, c
+ and a
+ jr nz, .asm_70abd
+ ret
+
+Func_70ae0: ; 70ae0 (1c:4ae0)
+ push bc
+.asm_70ae1
+ ld [hl], $ff
+ add hl, de
+ push bc
+ ld a, [wWhichTrade] ; $cd3d
+ dec a
+ jr nz, .asm_70af0
+ call Func_70d19
+ ld a, $7
+.asm_70af0
+ ld [wWhichTrade], a ; $cd3d
+ pop bc
+ dec c
+ jr nz, .asm_70ae1
+ pop bc
+ ret
+
+Func_70af9: ; 70af9 (1c:4af9)
+ ld bc, $ffec
+ ld de, $14
+ ld a, [$d09b]
+ ld l, a
+ ld a, [$d09a]
+ ld h, a
+ ld a, [$d09f]
+ cp $0
+ jr z, .asm_70b25
+ cp $1
+ jr z, .asm_70b2f
+ cp $2
+ jr z, .asm_70b39
+ cp $3
+ jr z, .asm_70b43
+.asm_70b1a
+ ld [hl], $ff
+.asm_70b1c
+ ld a, l
+ ld [$d09b], a
+ ld a, h
+ ld [$d09a], a
+ ret
+.asm_70b25
+ dec hl
+ ld a, [hl]
+ cp $ff
+ jr nz, .asm_70b4d
+ inc hl
+ add hl, bc
+ jr .asm_70b1a
+.asm_70b2f
+ add hl, de
+ ld a, [hl]
+ cp $ff
+ jr nz, .asm_70b4d
+ add hl, bc
+ dec hl
+ jr .asm_70b1a
+.asm_70b39
+ inc hl
+ ld a, [hl]
+ cp $ff
+ jr nz, .asm_70b4d
+ dec hl
+ add hl, de
+ jr .asm_70b1a
+.asm_70b43
+ add hl, bc
+ ld a, [hl]
+ cp $ff
+ jr nz, .asm_70b4d
+ add hl, de
+ inc hl
+ jr .asm_70b1a
+.asm_70b4d
+ ld [hl], $ff
+ ld a, [$d09f]
+ inc a
+ cp $4
+ jr nz, .asm_70b58
+ xor a
+.asm_70b58
+ ld [$d09f], a
+ jr .asm_70b1c
+
+Func_70b5d: ; 70b5d (1c:4b5d)
+ ld hl, DataTable_70b72 ; $4b72
+.asm_70b60
+ ld a, [hli]
+ cp $1
+ jr z, .asm_70b6e
+ ld [rBGP], a ; $ff47
+ ld c, $2
+ call DelayFrames
+ jr .asm_70b60
+.asm_70b6e
+ dec b
+ jr nz, Func_70b5d
+ ret
+
+DataTable_70b72: ; 70b72 (1c:4b72)
+ db $F9,$FE,$FF,$FE,$F9,$E4,$90,$40,$00,$40,$90,$E4
+ db $01 ; terminator
+
+Func_70b7f: ; 70b7f (1c:4b7f)
+ ld c, $9
+.asm_70b81
+ push bc
+ xor a
+ ld [H_AUTOBGTRANSFERENABLED], a ; $ffba
+ FuncCoord 0, 7 ; $c42c
+ ld hl, Coord
+ FuncCoord 0, 8 ; $c440
+ ld de, Coord
+ ld bc, $ffd8
+ call Func_70c12
+ FuncCoord 0, 10 ; $c468
+ ld hl, Coord
+ FuncCoord 0, 9 ; $c454
+ ld de, Coord
+ ld bc, $28
+ call Func_70c12
+ FuncCoord 8, 0 ; $c3a8
+ ld hl, Coord
+ FuncCoord 9, 0 ; $c3a9
+ ld de, Coord
+ ld bc, $fffe
+ call Func_70c3f
+ FuncCoord 11, 0 ; $c3ab
+ ld hl, Coord
+ FuncCoord 10, 0 ; $c3aa
+ ld de, Coord
+ ld bc, $2
+ call Func_70c3f
+ ld a, $1
+ ld [H_AUTOBGTRANSFERENABLED], a ; $ffba
+ ld c, $6
+ call DelayFrames
+ pop bc
+ dec c
+ jr nz, .asm_70b81
+ call Func_70a69
+ ld c, $a
+ jp DelayFrames
+
+Func_70bca: ; 70bca (1c:4bca)
+ ld c, $9
+ xor a
+ ld [H_AUTOBGTRANSFERENABLED], a ; $ffba
+.asm_70bcf
+ push bc
+ FuncCoord 0, 16 ; $c4e0
+ ld hl, Coord
+ FuncCoord 0, 17 ; $c4f4
+ ld de, Coord
+ ld bc, $ffd8
+ call Func_70c12
+ FuncCoord 0, 1 ; $c3b4
+ ld hl, Coord
+ ld de, wTileMap
+ ld bc, $28
+ call Func_70c12
+ FuncCoord 18, 0 ; $c3b2
+ ld hl, Coord
+ FuncCoord 19, 0 ; $c3b3
+ ld de, Coord
+ ld bc, $fffe
+ call Func_70c3f
+ FuncCoord 1, 0 ; $c3a1
+ ld hl, Coord
+ ld de, wTileMap
+ ld bc, $2
+ call Func_70c3f
+ call Func_70d19
+ call Delay3
+ pop bc
+ dec c
+ jr nz, .asm_70bcf
+ call Func_70a69
+ ld c, $a
+ jp DelayFrames
+
+Func_70c12: ; 70c12 (1c:4c12)
+ ld a, c
+ ld [wWhichTrade], a ; $cd3d
+ ld a, b
+ ld [$cd3e], a
+ ld c, $8
+.asm_70c1c
+ push bc
+ push hl
+ push de
+ ld bc, $14
+ call CopyData
+ pop hl
+ pop de
+ ld a, [wWhichTrade] ; $cd3d
+ ld c, a
+ ld a, [$cd3e]
+ ld b, a
+ add hl, bc
+ pop bc
+ dec c
+ jr nz, .asm_70c1c
+ ld l, e
+ ld h, d
+ ld a, $ff
+ ld c, $14
+.asm_70c3a
+ ld [hli], a
+ dec c
+ jr nz, .asm_70c3a
+ ret
+
+Func_70c3f: ; 70c3f (1c:4c3f)
+ ld a, c
+ ld [wWhichTrade], a ; $cd3d
+ ld a, b
+ ld [$cd3e], a
+ ld c, $9
+.asm_70c49
+ push bc
+ push hl
+ push de
+ ld c, $12
+.asm_70c4e
+ ld a, [hl]
+ ld [de], a
+ ld a, e
+ add $14
+ jr nc, .asm_70c56
+ inc d
+.asm_70c56
+ ld e, a
+ ld a, l
+ add $14
+ jr nc, .asm_70c5d
+ inc h
+.asm_70c5d
+ ld l, a
+ dec c
+ jr nz, .asm_70c4e
+ pop hl
+ pop de
+ ld a, [wWhichTrade] ; $cd3d
+ ld c, a
+ ld a, [$cd3e]
+ ld b, a
+ add hl, bc
+ pop bc
+ dec c
+ jr nz, .asm_70c49
+ ld l, e
+ ld h, d
+ ld de, $14
+ ld c, $12
+.asm_70c77
+ ld [hl], $ff
+ add hl, de
+ dec c
+ jr nz, .asm_70c77
+ ret
+
+Func_70c7e: ; 70c7e (1c:4c7e)
+ ld c, $12
+ ld hl, wTileMap
+ FuncCoord 1, 17 ; $c4f5
+ ld de, Coord
+ xor a
+ ld [H_AUTOBGTRANSFERENABLED], a ; $ffba
+.asm_70c89
+ push bc
+ push hl
+ push de
+ push de
+ call Func_70caa
+ pop hl
+ call Func_70caa
+ call Func_70d19
+ pop hl
+ ld bc, $ffec
+ add hl, bc
+ ld e, l
+ ld d, h
+ pop hl
+ ld bc, $14
+ add hl, bc
+ pop bc
+ dec c
+ jr nz, .asm_70c89
+ jp Func_70a69
+
+Func_70caa: ; 70caa (1c:4caa)
+ ld c, $a
+.asm_70cac
+ ld [hl], $ff
+ inc hl
+ inc hl
+ dec c
+ jr nz, .asm_70cac
+ ret
+
+Func_70cb4: ; 70cb4 (1c:4cb4)
+ ld c, $14
+ ld hl, wTileMap
+ FuncCoord 19, 1 ; $c3c7
+ ld de, Coord
+ xor a
+ ld [H_AUTOBGTRANSFERENABLED], a ; $ffba
+.asm_70cbf
+ push bc
+ push hl
+ push de
+ push de
+ call Func_70cd8
+ pop hl
+ call Func_70cd8
+ call Func_70d19
+ pop de
+ pop hl
+ pop bc
+ inc hl
+ dec de
+ dec c
+ jr nz, .asm_70cbf
+ jp Func_70a69
+
+Func_70cd8: ; 70cd8 (1c:4cd8)
+ ld c, $9
+ ld de, $28
+.asm_70cdd
+ ld [hl], $ff
+ add hl, de
+ dec c
+ jr nz, .asm_70cdd
+ ret
+
+Func_70ce4: ; 70ce4 (1c:4ce4)
+ call Func_70cfd
+ ld bc, $000a
+ ld hl, Unknown_70d61
+ call Func_70d06
+ ld c, $a
+ ld b, $1
+ ld hl, Unknown_70d93
+ call Func_70d06
+ jp Func_70a69
+
+Func_70cfd: ; 70cfd (1c:4cfd)
+ ld b, $3
+ call Func_70b5d
+ xor a
+ ld [H_AUTOBGTRANSFERENABLED], a ; $ffba
+ ret
+
+Func_70d06: ; 70d06 (1c:4d06)
+ push bc
+ push hl
+ ld a, b
+ call Func_70d50
+ pop hl
+ ld bc, $0005
+ add hl, bc
+ call Func_70d19
+ pop bc
+ dec c
+ jr nz, Func_70d06
+ ret
+
+Func_70d19: ; 70d19 (1c:4d19)
+ ld a, $1
+ ld [H_AUTOBGTRANSFERENABLED], a ; $ffba
+ call Delay3
+ xor a
+ ld [H_AUTOBGTRANSFERENABLED], a ; $ffba
+ ret
+
+Func_70d24: ; 70d24 (1c:4d24)
+ call Func_70cfd
+ ld c, $a
+ ld hl, Unknown_70d61 ; $4d61
+ ld de, Unknown_70d93 ; $4d93
+.asm_70d2f
+ push bc
+ push hl
+ push de
+ push de
+ xor a
+ call Func_70d50
+ pop hl
+ ld a, $1
+ call Func_70d50
+ pop hl
+ ld bc, $5
+ add hl, bc
+ ld e, l
+ ld d, h
+ pop hl
+ add hl, bc
+ call Func_70d19
+ pop bc
+ dec c
+ jr nz, .asm_70d2f
+ jp Func_70a69
+
+Func_70d50: ; 70d50 (1c:4d50)
+ ld [wWhichTrade], a ; $cd3d
+ ld a, [hli]
+ ld [$cd3e], a
+ ld a, [hli]
+ ld e, a
+ ld a, [hli]
+ ld d, a
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ jp Func_70dc5
+
+Unknown_70d61: ; 70d61 (1c:4d61)
+ db $01
+ dw Unknown_70dfe
+ FuncCoord 18, 6
+ dw Coord
+
+ db $01
+ dw Unknown_70e04
+ FuncCoord 19, 3
+ dw Coord
+
+ db $01
+ dw Unknown_70e0e
+ FuncCoord 18, 0
+ dw Coord
+
+ db $01
+ dw Unknown_70e20
+ FuncCoord 14, 0
+ dw Coord
+
+ db $01
+ dw Unknown_70e2e
+ FuncCoord 10, 0
+ dw Coord
+
+ db $00
+ dw Unknown_70e2e
+ FuncCoord 9, 0
+ dw Coord
+
+ db $00
+ dw Unknown_70e20
+ FuncCoord 5, 0
+ dw Coord
+
+ db $00
+ dw Unknown_70e0e
+ FuncCoord 1, 0
+ dw Coord
+
+ db $00
+ dw Unknown_70e04
+ FuncCoord 0, 3
+ dw Coord
+
+ db $00
+ dw Unknown_70dfe
+ FuncCoord 1, 6
+ dw Coord
+
+Unknown_70d93: ; 70d93 (1c:4d93)
+ db $00
+ dw Unknown_70dfe
+ FuncCoord 1, 11
+ dw Coord
+
+ db $00
+ dw Unknown_70e04
+ FuncCoord 0, 14
+ dw Coord
+
+ db $00
+ dw Unknown_70e0e
+ FuncCoord 1, 17
+ dw Coord
+
+ db $00
+ dw Unknown_70e20
+ FuncCoord 5, 17
+ dw Coord
+
+ db $00
+ dw Unknown_70e2e
+ FuncCoord 9, 17
+ dw Coord
+
+ db $01
+ dw Unknown_70e2e
+ FuncCoord 10, 17
+ dw Coord
+
+ db $01
+ dw Unknown_70e20
+ FuncCoord 14, 17
+ dw Coord
+
+ db $01
+ dw Unknown_70e0e
+ FuncCoord 18, 17
+ dw Coord
+
+ db $01
+ dw Unknown_70e04
+ FuncCoord 19, 14
+ dw Coord
+
+ db $01
+ dw Unknown_70dfe
+ FuncCoord 18, 11
+ dw Coord
+
+Func_70dc5: ; 70dc5 (1c:4dc5)
+ push hl
+ ld a, [de]
+ ld c, a
+ inc de
+.asm_70dc9
+ ld [hl], $ff
+ ld a, [$cd3e]
+ and a
+ jr z, .asm_70dd4
+ inc hl
+ jr .asm_70dd5
+.asm_70dd4
+ dec hl
+.asm_70dd5
+ dec c
+ jr nz, .asm_70dc9
+ pop hl
+ ld a, [wWhichTrade] ; $cd3d
+ and a
+ ld bc, $14
+ jr z, .asm_70de5
+ ld bc, $ffec
+.asm_70de5
+ add hl, bc
+ ld a, [de]
+ inc de
+ cp $ff
+ ret z
+ and a
+ jr z, Func_70dc5
+ ld c, a
+.asm_70def
+ ld a, [$cd3e]
+ and a
+ jr z, .asm_70df8
+ dec hl
+ jr .asm_70df9
+.asm_70df8
+ inc hl
+.asm_70df9
+ dec c
+ jr nz, .asm_70def
+ jr Func_70dc5
+
+Unknown_70dfe: ; 70dfe (1c:4dfe)
+ db $02,$03,$05,$04,$09,$FF
+
+Unknown_70e04: ; 70e04 (1c:4e04)
+ db $01,$01,$02,$02,$04,$02,$04,$02,$03,$FF
+
+Unknown_70e0e: ; 70e0e (1c:4e0e)
+ db $02,$01,$03,$01,$04,$01,$04,$01,$04,$01,$03,$01,$02,$01,$01,$01,$01,$FF
+
+Unknown_70e20: ; 70e20 (1c:4e20)
+ db $04,$01,$04,$00,$03,$01,$03,$00,$02,$01,$02,$00,$01,$FF
+
+Unknown_70e2e: ; 70e2e (1c:4e2e)
+ db $04,$00,$03,$00,$03,$00,$02,$00,$02,$00,$01,$00,$01,$00,$01,$FF