shithub: pokecrystal

Download patch

ref: 8152ab612c0405d9e0074b7d51c9785e0dd3bc95
parent: 3893feb835ef4959b77148668da90aaed3189b00
author: PikalaxALT <[email protected]>
date: Wed Dec 23 12:10:50 EST 2015

Battle anims

--- a/audio/engine.asm
+++ b/audio/engine.asm
@@ -2549,7 +2549,7 @@
 	ld [hl], a
 .start
 	call StartChannel
-	ld a, [wc2bc]
+	ld a, [wStereoPanningMask]
 	and a
 	jr z, .next
 	
@@ -2750,7 +2750,7 @@
 	call GetLRTracks
 	add hl, de
 	ld a, [hl]
-	ld hl, wc2bc
+	ld hl, wStereoPanningMask
 	and [hl]
 	
 	ld hl, Channel1Tracks - Channel1
@@ -2766,7 +2766,7 @@
 	jr c, .skip
 	
 ; ch3-4
-	ld a, [wc2be]
+	ld a, [wSFXDuration]
 	
 	ld hl, Channel1Field0x2e - Channel1 ; $c12f - Channel1
 	add hl, bc
--- a/battle/anim_commands.asm
+++ b/battle/anim_commands.asm
@@ -105,9 +105,9 @@
 	call Functioncc8d3
 
 .playframe
-	call Functioncc25f
+	call RunBattleAnimCommand
 	call _ExecuteBGEffects
-	call Functioncc96e
+	call BattleAnim_UpdateOAM_All
 	call Function3b0c
 	call BattleAnimRequestPals
 
@@ -283,7 +283,7 @@
 	ret
 ; cc25f
 
-Functioncc25f: ; cc25f
+RunBattleAnimCommand: ; cc25f
 	call .CheckTimer
 	ret nc
 	call .RunScript
@@ -725,24 +725,25 @@
 
 BattleAnimCmd_IncObj: ; cc4c0 (33:44c0)
 	call GetBattleAnimByte
-	ld e, $a
+	ld e, 10
 	ld bc, ActiveAnimObjects
-.asm_cc4c8
-	ld hl, $0
+.loop
+	ld hl, BATTLEANIMSTRUCT_INDEX
 	add hl, bc
 	ld d, [hl]
 	ld a, [BattleAnimByte]
 	cp d
-	jr z, .asm_cc4dd
-	ld hl, $18
+	jr z, .increment
+	ld hl, BATTLEANIMSTRUCT_LENGTH
 	add hl, bc
 	ld c, l
 	ld b, h
 	dec e
-	jr nz, .asm_cc4c8
+	jr nz, .loop
 	ret
-.asm_cc4dd
-	ld hl, $e
+
+.increment
+	ld hl, BATTLEANIMSTRUCT_ANON_JT_INDEX
 	add hl, bc
 	inc [hl]
 	ret
@@ -1208,17 +1209,17 @@
 	ld e, a
 	srl a
 	srl a
-	ld [wc2be], a
-	call Functioncc7fc
+	ld [wSFXDuration], a
+	call .GetCryTrack
 	and 3
 	ld [CryTracks], a ; CryTracks
 
 	ld e, a
 	ld d, 0
-	ld hl, Datacc7f8
+	ld hl, .GetPanning
 	add hl, de
 	ld a, [hl]
-	ld [wc2bc], a
+	ld [wStereoPanningMask], a
 
 	call GetBattleAnimByte
 	ld e, a
@@ -1228,11 +1229,11 @@
 	ret
 ; cc7f8 (33:47f8)
 
-Datacc7f8: ; cc7f8
+.GetPanning: ; cc7f8
 	db $f0, $0f, $f0, $0f
 ; cc7fc
 
-Functioncc7fc: ; cc7fc (33:47fc)
+.GetCryTrack: ; cc7fc (33:47fc)
 	ld a, [hBattleTurn]
 	and a
 	jr nz, .enemy
@@ -1311,7 +1312,7 @@
 	ld a, h
 	ld [CryLength + 1], a
 	ld a, 1
-	ld [wc2bc], a
+	ld [wStereoPanningMask], a
 
 	callab _PlayCryHeader
 
@@ -1478,7 +1479,7 @@
 	ret
 ; cc96e
 
-Functioncc96e: ; cc96e
+BattleAnim_UpdateOAM_All: ; cc96e
 	ld a, $0
 	ld [w5_d418], a
 	ld hl, ActiveAnimObjects
@@ -1491,14 +1492,14 @@
 	ld b, h
 	push hl
 	push de
-	call Functionccfbe
-	call Functioncca09
+	call DoBattleAnimFrame
+	call BattleAnimOAMUpdate
 	pop de
 	pop hl
 	jr c, .done
 
 .next
-	ld bc, $0018
+	ld bc, BATTLEANIMSTRUCT_LENGTH
 	add hl, bc
 	dec e
 	jr nz, .loop
--- a/battle/anim_objects.asm
+++ b/battle/anim_objects.asm
@@ -43,43 +43,51 @@
 	ld hl, BATTLEANIMSTRUCT_INDEX
 	add hl, bc
 	ld a, [wNumActiveBattleAnims]
-	ld [hli], a
-rept 5
+	ld [hli], a ; 00
 	ld a, [de]
 	inc de
-	ld [hli], a
-endr
+	ld [hli], a ; 01
 	ld a, [de]
-	call Functionccb31
-	ld [hli], a
+	inc de
+	ld [hli], a ; 02
+	ld a, [de]
+	inc de
+	ld [hli], a ; 03
+	ld a, [de]
+	inc de
+	ld [hli], a ; 04
+	ld a, [de]
+	inc de
+	ld [hli], a ; 05
+	ld a, [de]
+	call GetBattleAnimTileOffset
+	ld [hli], a ; 06
 	ld a, [BattleAnimTemps + 1]
-	ld [hli], a
+	ld [hli], a ; 07
 	ld a, [BattleAnimTemps + 2]
-	ld [hli], a
+	ld [hli], a ; 08
 	xor a
-rept 2
-	ld [hli], a
-endr
+	ld [hli], a ; 09
+	ld [hli], a ; 0a
 	ld a, [BattleAnimTemps + 3]
-	ld [hli], a
+	ld [hli], a ; 0b
 	xor a
-	ld [hli], a
+	ld [hli], a ; 0c
 	dec a
-	ld [hli], a
+	ld [hli], a ; 0d
 	xor a
-rept 2
-	ld [hli], a
-endr
-	ld [hl], a
+	ld [hli], a ; 0e
+	ld [hli], a ; 0f
+	ld [hl], a  ; 10
 	ret
 
-Functioncca09: ; cca09
+BattleAnimOAMUpdate: ; cca09
 	call Functionccaaa
-	call Functionce7d1
+	call GetBattleAnimFrame
 	cp -3
-	jp z, .asm_ccaa5
+	jp z, .exit_no_carry
 	cp -4
-	jp z, .asm_ccaa2
+	jp z, .delete_exit
 	push af
 	ld hl, BattleAnimTemps
 	ld a, [BattleAnimTemps + 7]
@@ -88,7 +96,7 @@
 	ld [hl], a
 	pop af
 	push bc
-	call Functionce83c
+	call GetBattleAnimOAMPointer
 	ld a, [BattleAnimTemps + 2]
 	add [hl]
 	ld [BattleAnimTemps + 2], a
@@ -100,8 +108,8 @@
 	ld l, a
 	ld a, [w5_d418]
 	ld e, a
-	ld d, $c4
-.asm_cca3c
+	ld d, Sprites / $100
+.loop
 	ld a, [BattleAnimTemps + 4]
 	ld b, a
 	ld a, [BattleAnimTemps + 6]
@@ -111,12 +119,12 @@
 	ld a, [hl]
 	ld hl, BattleAnimTemps
 	bit 6, [hl]
-	jr z, .asm_cca53
+	jr z, .no_yflip
 	add $8
 	xor $ff
 	inc a
 
-.asm_cca53
+.no_yflip
 	pop hl
 	add b
 	ld [de], a
@@ -131,12 +139,12 @@
 	ld a, [hl]
 	ld hl, BattleAnimTemps
 	bit 5, [hl]
-	jr z, .asm_cca6f
+	jr z, .no_xflip
 	add $8
 	xor $ff
 	inc a
 
-.asm_cca6f
+.no_xflip
 	pop hl
 	add b
 	ld [de], a
@@ -167,20 +175,20 @@
 	ld a, e
 	ld [w5_d418], a
 	cp $a0
-	jr nc, .asm_ccaa7
+	jr nc, .exit_set_carry
 	dec c
-	jr nz, .asm_cca3c
+	jr nz, .loop
 	pop bc
-	jr .asm_ccaa5
+	jr .exit_no_carry
 
-.asm_ccaa2
+.delete_exit
 	call DeinitBattleAnimation
 
-.asm_ccaa5
+.exit_no_carry
 	and a
 	ret
 
-.asm_ccaa7
+.exit_set_carry
 	pop bc
 	scf
 	ret
@@ -203,7 +211,7 @@
 	add hl, bc
 	ld a, [hl]
 	ld [BattleAnimTemps + 1], a
-	ld hl, BATTLEANIMSTRUCT_06
+	ld hl, BATTLEANIMSTRUCT_TILEID
 	add hl, bc
 	ld a, [hli]
 	ld [BattleAnimTemps + 2], a
@@ -235,34 +243,34 @@
 	ld d, a
 	ld a, [BattleAnimTemps + 1]
 	cp $ff
-	jr nz, .asm_ccb09
+	jr nz, .check_kinesis_softboiled_milkdrink
 	ld a, $28
 	add d
-	jr .asm_ccb26
+	jr .done
 
-.asm_ccb09
+.check_kinesis_softboiled_milkdrink
 	sub d
 	push af
 	ld a, [FXAnimIDHi]
 	or a
-	jr nz, .asm_ccb25
+	jr nz, .no_sub
 	ld a, [FXAnimIDLo]
-	cp $86
-	jr z, .asm_ccb20
-	cp $87
-	jr z, .asm_ccb20
-	cp $d0
-	jr nz, .asm_ccb25
-
-.asm_ccb20
+	cp KINESIS
+	jr z, .kinesis
+	cp SOFTBOILED
+	jr z, .softboiled
+	cp MILK_DRINK
+	jr nz, .no_sub
+.kinesis
+.softboiled
+.milk_drink
 	pop af
 	sub $8
-	jr .asm_ccb26
+	jr .done
 
-.asm_ccb25
+.no_sub
 	pop af
-
-.asm_ccb26
+.done
 	ld [BattleAnimTemps + 4], a
 	ld a, [hli]
 	xor $ff
@@ -272,7 +280,7 @@
 
 ; ccb31
 
-Functionccb31: ; ccb31 (33:4b31)
+GetBattleAnimTileOffset: ; ccb31 (33:4b31)
 	push hl
 	push bc
 	ld hl, wBattleAnimTileDict
@@ -308,4533 +316,247 @@
 ; ccb56 (33:4b56)
 
 BattleAnimObjects: ; ccb56
-	db $01, $ff, $00, $00, $02, $01 ; 00
-	db $01, $ff, $01, $00, $02, $01 ; 01
-	db $01, $ff, $02, $00, $02, $01 ; 02
-	db $01, $90, $00, $00, $02, $01 ; 03
-	db $01, $90, $01, $00, $02, $01 ; 04
-	db $01, $90, $02, $00, $02, $01 ; 05
-	db $01, $ff, $03, $00, $02, $01 ; 06
-	db $01, $ff, $04, $1b, $02, $01 ; 07
-	db $01, $ff, $05, $00, $02, $01 ; 08
-	db $01, $ff, $06, $00, $02, $01 ; 09
-	db $01, $90, $07, $09, $02, $01 ; 0a
-	db $01, $aa, $10, $10, $04, $03 ; 0b
-	db $01, $90, $0e, $04, $04, $03 ; 0c
-	db $01, $90, $0f, $03, $04, $03 ; 0d
-	db $01, $90, $10, $08, $04, $03 ; 0e
-	db $01, $90, $0f, $0a, $04, $03 ; 0f
-	db $01, $90, $11, $03, $04, $03 ; 10
-	db $01, $90, $12, $08, $06, $0a ; 11
-	db $01, $90, $13, $00, $06, $0a ; 12
-	db $01, $90, $14, $01, $06, $0a ; 13
-	db $21, $78, $16, $0b, $05, $06 ; 14
-	db $00, $00, $09, $12, $04, $0b ; 15
-	db $00, $00, $09, $13, $04, $0b ; 16
-	db $01, $90, $18, $00, $04, $08 ; 17
-	db $01, $ff, $18, $00, $04, $08 ; 18
-	db $01, $90, $1d, $06, $02, $0c ; 19
-	db $01, $b4, $1f, $38, $02, $0c ; 1a
-	db $01, $90, $08, $00, $02, $07 ; 1b
-	db $01, $a0, $08, $00, $02, $07 ; 1c
-	db $01, $ff, $19, $07, $07, $09 ; 1d
-	db $01, $ff, $1a, $07, $07, $09 ; 1e
-	db $01, $b0, $1b, $36, $07, $09 ; 1f
-	db $01, $b0, $84, $36, $06, $21 ; 20
-	db $01, $90, $21, $0c, $06, $0d ; 21
-	db $00, $00, $23, $0d, $06, $0d ; 22
-	db $01, $90, $24, $0e, $02, $0e ; 23
-	db $61, $80, $27, $0f, $06, $04 ; 24
-	db $01, $b4, $2a, $00, $06, $04 ; 25
-	db $01, $40, $2b, $11, $05, $0f ; 26
-	db $61, $98, $2c, $00, $03, $10 ; 27
-	db $61, $98, $2d, $09, $03, $10 ; 28
-	db $01, $b8, $2e, $00, $06, $0a ; 29
-	db $01, $b8, $2f, $00, $06, $0a ; 2a
-	db $01, $b8, $30, $14, $07, $11 ; 2b
-	db $01, $90, $21, $14, $03, $0d ; 2c
-	db $21, $b0, $31, $00, $03, $05 ; 2d
-	db $21, $b0, $32, $00, $03, $05 ; 2e
-	db $21, $b0, $33, $00, $03, $05 ; 2f
-	db $21, $90, $34, $15, $03, $05 ; 30
-	db $21, $90, $36, $00, $03, $05 ; 31
-	db $21, $90, $37, $03, $02, $08 ; 32
-	db $21, $90, $38, $00, $03, $05 ; 33
-	db $21, $90, $39, $03, $02, $08 ; 34
-	db $21, $90, $3a, $16, $02, $02 ; 35
-	db $01, $90, $3c, $17, $02, $02 ; 36
-	db $21, $ff, $3e, $00, $02, $02 ; 37
-	db $21, $ff, $3f, $00, $02, $02 ; 38
-	db $21, $ff, $40, $00, $02, $02 ; 39
-	db $21, $ff, $41, $00, $02, $02 ; 3a
-	db $21, $ff, $42, $00, $02, $02 ; 3b
-	db $01, $88, $43, $18, $05, $12 ; 3c
-	db $01, $88, $44, $00, $05, $12 ; 3d
-	db $21, $b8, $45, $19, $02, $13 ; 3e
-	db $21, $ff, $46, $00, $02, $14 ; 3f
-	db $21, $ff, $47, $00, $02, $14 ; 40
-	db $21, $ff, $48, $1a, $02, $14 ; 41
-	db $21, $ff, $49, $1a, $02, $14 ; 42
-	db $21, $98, $4a, $01, $02, $14 ; 43
-	db $21, $80, $4b, $00, $03, $11 ; 44
-	db $01, $88, $4c, $1c, $05, $12 ; 45
-	db $21, $b0, $4d, $1d, $02, $15 ; 46
-	db $01, $b0, $51, $1e, $03, $11 ; 47
-	db $21, $ff, $52, $1f, $05, $16 ; 48
-	db $21, $ff, $54, $1f, $05, $16 ; 49
-	db $21, $68, $56, $20, $05, $06 ; 4a
-	db $21, $90, $59, $21, $02, $0e ; 4b
-	db $21, $90, $5c, $02, $02, $17 ; 4c
-	db $01, $90, $5d, $22, $03, $11 ; 4d
-	db $61, $88, $5f, $00, $03, $10 ; 4e
-	db $61, $88, $2d, $09, $03, $10 ; 4f
-	db $21, $88, $60, $00, $03, $18 ; 50
-	db $21, $80, $60, $00, $02, $18 ; 51
-	db $21, $50, $61, $23, $03, $19 ; 52
-	db $01, $80, $63, $24, $02, $19 ; 53
-	db $01, $80, $66, $25, $02, $19 ; 54
-	db $01, $50, $1c, $00, $02, $0c ; 55
-	db $21, $a8, $67, $26, $07, $1a ; 56
-	db $21, $a8, $68, $00, $07, $1a ; 57
-	db $21, $90, $69, $01, $02, $1a ; 58
-	db $21, $90, $6d, $28, $03, $19 ; 59
-	db $21, $90, $6a, $27, $02, $1b ; 5a
-	db $00, $00, $6f, $29, $02, $1c ; 5b
-	db $21, $48, $70, $29, $02, $1c ; 5c
-	db $21, $48, $6f, $29, $02, $1c ; 5d
-	db $21, $78, $6f, $2a, $02, $1c ; 5e
-	db $61, $90, $71, $2b, $02, $1d ; 5f
-	db $61, $90, $72, $2c, $02, $1d ; 60
-	db $01, $48, $73, $2d, $04, $1e ; 61
-	db $01, $90, $74, $06, $02, $15 ; 62
-	db $01, $ff, $75, $2e, $07, $19 ; 63
-	db $21, $90, $4a, $02, $02, $14 ; 64
-	db $01, $80, $30, $2f, $02, $11 ; 65
-	db $01, $78, $76, $2a, $04, $23 ; 66
-	db $01, $80, $77, $30, $02, $1f ; 67
-	db $01, $90, $77, $02, $02, $1f ; 68
-	db $01, $ff, $77, $00, $02, $1f ; 69
-	db $01, $80, $78, $08, $03, $23 ; 6a
-	db $21, $90, $79, $00, $02, $1f ; 6b
-	db $01, $ff, $7a, $31, $03, $11 ; 6c
-	db $01, $88, $7a, $31, $03, $11 ; 6d
-	db $21, $88, $7b, $32, $02, $20 ; 6e
-	db $21, $98, $7c, $00, $02, $04 ; 6f
-	db $21, $80, $7d, $00, $02, $18 ; 70
-	db $01, $80, $21, $2f, $06, $0d ; 71
-	db $01, $b0, $7e, $33, $03, $12 ; 72
-	db $01, $80, $7f, $2f, $02, $08 ; 73
-	db $21, $a0, $6f, $34, $02, $1c ; 74
-	db $21, $a0, $74, $35, $02, $15 ; 75
-	db $21, $b0, $80, $33, $02, $14 ; 76
-	db $01, $88, $81, $37, $02, $11 ; 77
-	db $01, $88, $85, $00, $02, $22 ; 78
-	db $01, $88, $86, $00, $02, $22 ; 79
-	db $01, $90, $87, $39, $02, $1f ; 7a
-	db $01, $80, $30, $3a, $03, $11 ; 7b
-	db $21, $90, $34, $00, $03, $05 ; 7c
-	db $a1, $88, $88, $3b, $06, $13 ; 7d
-	db $01, $80, $76, $25, $04, $23 ; 7e
-	db $01, $98, $10, $34, $04, $03 ; 7f
-	db $01, $a8, $0f, $3c, $04, $03 ; 80
-	db $21, $68, $89, $29, $02, $1f ; 81
-	db $21, $b0, $8a, $00, $02, $1f ; 82
-	db $21, $80, $8c, $00, $02, $1f ; 83
-	db $21, $50, $8d, $00, $03, $1f ; 84
-	db $01, $40, $24, $40, $02, $0e ; 85
-	db $21, $a8, $8e, $41, $04, $1f ; 86
-	db $21, $88, $8f, $3e, $02, $1f ; 87
-	db $21, $88, $93, $3e, $02, $1f ; 88
-	db $21, $90, $97, $3d, $02, $1f ; 89
-	db $21, $90, $78, $3d, $03, $23 ; 8a
-	db $01, $ff, $99, $2e, $02, $19 ; 8b
-	db $21, $a0, $74, $02, $02, $15 ; 8c
-	db $21, $a0, $99, $35, $04, $19 ; 8d
-	db $21, $70, $8b, $3f, $02, $1f ; 8e
-	db $01, $90, $15, $08, $02, $0a ; 8f
-	db $01, $90, $11, $02, $04, $03 ; 90
-	db $01, $80, $7f, $42, $02, $08 ; 91
-	db $01, $90, $9a, $00, $02, $1b ; 92
-	db $21, $a0, $9b, $35, $04, $23 ; 93
-	db $21, $80, $9c, $23, $02, $25 ; 94
-	db $21, $80, $9d, $25, $02, $25 ; 95
-	db $21, $80, $9c, $00, $02, $25 ; 96
-	db $21, $80, $9e, $00, $06, $25 ; 97
-	db $61, $80, $9f, $3a, $05, $23 ; 98
-	db $21, $80, $a0, $16, $02, $23 ; 99
-	db $21, $70, $78, $43, $03, $23 ; 9a
-	db $21, $c0, $a2, $01, $02, $25 ; 9b
-	db $21, $40, $a3, $44, $03, $24 ; 9c
-	db $01, $80, $a4, $00, $02, $24 ; 9d
-	db $01, $80, $a5, $00, $03, $24 ; 9e
-	db $01, $88, $43, $45, $04, $12 ; 9f
-	db $21, $ff, $a6, $00, $02, $02 ; a0
-	db $21, $ff, $a7, $00, $02, $02 ; a1
-	db $21, $00, $b4, $4a, $07, $0f ; a2
-	db $21, $90, $a8, $02, $03, $05 ; a3
-	db $21, $40, $9c, $11, $02, $25 ; a4
-	db $61, $90, $a9, $46, $02, $23 ; a5
-	db $00, $00, $24, $47, $02, $0e ; a6
-	db $01, $80, $aa, $00, $02, $24 ; a7
-	db $21, $b8, $ab, $48, $02, $13 ; a8
-	db $21, $90, $ac, $44, $02, $13 ; a9
-	db $01, $a8, $05, $00, $02, $01 ; aa
-	db $01, $90, $24, $43, $02, $0e ; ab
-	db $01, $88, $ad, $00, $06, $17 ; ac
-	db $01, $a8, $ae, $49, $02, $01 ; ad
-	db $21, $90, $af, $01, $03, $11 ; ae
-	db $21, $00, $b0, $4a, $02, $04 ; af
-	db $00, $00, $70, $4b, $04, $1c ; b0
-	db $01, $88, $b1, $4c, $02, $19 ; b1
-	db $01, $b8, $19, $4d, $07, $09 ; b2
-	db $61, $98, $b3, $00, $03, $27 ; b3
-	db $61, $98, $74, $04, $06, $15 ; b4
-	db $21, $ff, $19, $4e, $07, $09 ; b5
-	db $01, $90, $73, $08, $04, $1e ; b6
-	db $01, $ff, $89, $4f, $04, $1f ; b7
-	db $00, $00, $b5, $00, $00, $28 ; b8
-	db $00, $00, $b6, $00, $01, $29 ; b9
-	db $00, $00, $b7, $00, $00, $28 ; ba
-	db $00, $00, $b8, $00, $01, $29 ; bb
-; ccfbe
+battleanimobj: MACRO
+	db \1, \2, \3, \4, \5, \6
+endm
 
-Functionccfbe: ; ccfbe
-	ld hl, BATTLEANIMSTRUCT_04
-	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]
-
-; ccfce
-
-.Jumptable: ; ccfce (33:4fce)
-	dw Functioncd06e ; 00
-	dw Functioncd12a ; 01
-	dw Functioncd146 ; 02
-	dw Functioncd0e3 ; 03
-	dw Functioncd0a6 ; 04
-	dw Functioncd081 ; 05
-	dw Functioncd079 ; 06
-	dw Functioncd2be ; 07
-	dw Functioncd306 ; 08
-	dw Functioncd3ae ; 09
-	dw Functioncd3f2 ; 0a
-	dw Functioncd478 ; 0b
-	dw Functioncd5e9 ; 0c
-	dw Functioncd66a ; 0d
-	dw Functioncd6e3 ; 0e
-	dw Functioncd71a ; 0f
-	dw Functioncd284 ; 10
-	dw Functioncd777 ; 11
-	dw Functioncd15c ; 12
-	dw Functioncd212 ; 13
-	dw Functioncd7a4 ; 14
-	dw Functioncd80c ; 15
-	dw Functioncd824 ; 16
-	dw Functioncd89a ; 17
-	dw Functioncd900 ; 18
-	dw Functioncd954 ; 19
-	dw Functioncdafa ; 1a
-	dw Functioncdb06 ; 1b
-	dw Functioncda0a ; 1c
-	dw Functioncdb80 ; 1d
-	dw Functioncdca6 ; 1e
-	dw Functioncda31 ; 1f
-	dw Functioncda4d ; 20
-	dw Functioncdcc3 ; 21
-	dw Functioncdd2a ; 22
-	dw Functioncdd90 ; 23
-	dw Functioncddf9 ; 24
-	dw Functioncde28 ; 25
-	dw Functioncde54 ; 26
-	dw Functioncde6b ; 27
-	dw Functioncde89 ; 28
-	dw Functioncdedd ; 29
-	dw Functioncdf59 ; 2a
-	dw Functionce063 ; 2b
-	dw Functionce0c5 ; 2c
-	dw Functioncdf1b ; 2d
-	dw Functionce10e ; 2e
-	dw Functionce15c ; 2f
-	dw Functionce1e7 ; 30
-	dw Functionce226 ; 31
-	dw Functionce255 ; 32
-	dw Functionce2cc ; 33
-	dw Functioncdf8c ; 34
-	dw Functionce00b ; 35
-	dw Functionce2fd ; 36
-	dw Functionce35f ; 37
-	dw Functionce389 ; 38
-	dw Functionce3b4 ; 39
-	dw Functionce3d2 ; 3a
-	dw Functionce3ff ; 3b
-	dw Functioncdfcb ; 3c
-	dw Functionce416 ; 3d
-	dw Functionce43a ; 3e
-	dw Functioncdad6 ; 3f
-	dw Functionce49c ; 40
-	dw Functionce4dc ; 41
-	dw Functionce1b0 ; 42
-	dw Functionce508 ; 43
-	dw Functionce532 ; 44
-	dw Functionce55b ; 45
-	dw Functionce593 ; 46
-	dw Functionce5b4 ; 47
-	dw Functionce5dc ; 48
-	dw Functionce5ee ; 49
-	dw Functionce62f ; 4a
-	dw Functionce688 ; 4b
-	dw Functionce6b3 ; 4c
-	dw Functionce6d2 ; 4d
-	dw Functioncd58a ; 4e
-	dw Functionce6bf ; 4f
-
-Functioncd06e: ; cd06e (33:506e)
-	call BattleAnim_AnonJumptable
-.anon_jumptable
-	dw Functioncd078
-	dw Functioncd075
-
-Functioncd075: ; cd075 (33:5075)
-	call DeinitBattleAnimation
-
-Functioncd078: ; cd078 (33:5078)
-	ret
-
-Functioncd079: ; cd079 (33:5079)
-	call Functioncd081
-	ret c
-	call DeinitBattleAnimation
-	ret
-
-Functioncd081: ; cd081 (33:5081)
-	ld hl, BATTLEANIMSTRUCT_07
-	add hl, bc
-	ld a, [hl]
-	cp $88
-	ret nc
-	add $2
-	ld [hl], a
-	ld hl, BATTLEANIMSTRUCT_08
-	add hl, bc
-	dec [hl]
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	ld a, [hl]
-	dec [hl]
-	ld hl, BATTLEANIMSTRUCT_0B
-	add hl, bc
-	ld d, [hl]
-	call BattleAnim_Sine
-	ld hl, BATTLEANIMSTRUCT_0A
-	add hl, bc
-	ld [hl], a
-	scf
-	ret
-
-Functioncd0a6: ; cd0a6 (33:50a6)
-	ld hl, BATTLEANIMSTRUCT_07
-	add hl, bc
-	ld a, [hl]
-	cp $88
-	jr c, .asm_cd0b3
-	call DeinitBattleAnimation
-	ret
-
-.asm_cd0b3
-	add $2
-	ld [hl], a
-	ld hl, BATTLEANIMSTRUCT_08
-	add hl, bc
-	dec [hl]
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	ld a, [hl]
-rept 4
-	inc [hl]
-endr
-	ld d, $10
-	push af
-	push de
-	call BattleAnim_Sine
-	ld hl, BATTLEANIMSTRUCT_0A
-	add hl, bc
-	ld [hl], a
-	pop de
-	pop af
-	call BattleAnim_Cosine
-	ld hl, BATTLEANIMSTRUCT_09
-	add hl, bc
-	sra a
-	sra a
-	sra a
-	sra a
-	ld [hl], a
-	ret
-
-Functioncd0e3: ; cd0e3 (33:50e3)
-	call BattleAnim_AnonJumptable
-.anon_jumptable
-	dw Functioncd0ea
-	dw Functioncd106
-
-Functioncd0ea: ; cd0ea (33:50ea)
-	call Functionce72c
-	ld hl, BATTLEANIMSTRUCT_0B
-	add hl, bc
-	bit 7, [hl]
-	ld a, $0
-	jr z, .asm_cd0f9
-	ld a, $20
-.asm_cd0f9
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	ld [hl], a
-	ld hl, BATTLEANIMSTRUCT_0B
-	add hl, bc
-	ld a, [hl]
-	and $7f
-	ld [hl], a
-
-Functioncd106: ; cd106 (33:5106)
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	ld a, [hl]
-	ld hl, BATTLEANIMSTRUCT_0B
-	add hl, bc
-	ld d, [hl]
-	push af
-	push de
-	call BattleAnim_Sine
-	ld hl, BATTLEANIMSTRUCT_0A
-	add hl, bc
-	ld [hl], a
-	pop de
-	pop af
-	call BattleAnim_Cosine
-	ld hl, BATTLEANIMSTRUCT_09
-	add hl, bc
-	ld [hl], a
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	inc [hl]
-	ret
-
-Functioncd12a: ; cd12a (33:512a)
-	call BattleAnim_AnonJumptable
-.anon_jumptable
-	dw Functioncd135
-	dw Functioncd131
-
-Functioncd131: ; cd131 (33:5131)
-	call DeinitBattleAnimation
-	ret
-
-Functioncd135: ; cd135 (33:5135)
-	ld hl, BATTLEANIMSTRUCT_07
-	add hl, bc
-	ld a, [hl]
-	cp $84
-	ret nc
-	ld hl, BATTLEANIMSTRUCT_0B
-	add hl, bc
-	ld a, [hl]
-	call Functionce70a
-	ret
-
-Functioncd146: ; cd146 (33:5146)
-	ld hl, BATTLEANIMSTRUCT_07
-	add hl, bc
-	ld a, [hl]
-	cp $84
-	jr nc, .asm_cd158
-	ld hl, BATTLEANIMSTRUCT_0B
-	add hl, bc
-	ld a, [hl]
-	call Functionce70a
-	ret
-
-.asm_cd158
-	call DeinitBattleAnimation
-	ret
-
-Functioncd15c: ; cd15c (33:515c)
-	call BattleAnim_AnonJumptable
-.anon_jumptable
-	dw Functioncd177
-	dw Functioncd17e
-	dw Functioncd1dc
-	dw Functioncd196
-	dw Functioncd1a7
-	dw Functioncd1dc
-	dw Functioncd1d2
-	dw Functioncd1dd
-	dw Functioncd1ee
-	dw Functioncd1dc
-	dw Functioncd1ee
-	dw Functioncd20e
-
-Functioncd177: ; cd177 (33:5177)
-	call Functioncd249
-	call Functionce72c
-	ret
-
-Functioncd17e: ; cd17e (33:517e)
-	call Functioncd081
-	ret c
-	ld hl, BATTLEANIMSTRUCT_0A
-	add hl, bc
-	ld a, [hl]
-	ld hl, BATTLEANIMSTRUCT_08
-	add hl, bc
-	add [hl]
-	ld [hl], a
-	ld a, $b
-	call Functionce7bf
-	call Functionce72c
-	ret
-
-Functioncd196: ; cd196 (33:5196)
-	call Functionce72c
-	ld a, $9
-	call Functionce7bf
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	ld [hl], $0
-	inc hl
-	ld [hl], $10
-
-Functioncd1a7: ; cd1a7 (33:51a7)
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	ld a, [hli]
-	ld d, [hl]
-	call BattleAnim_Sine
-	ld hl, BATTLEANIMSTRUCT_0A
-	add hl, bc
-	ld [hl], a
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	ld a, [hl]
-	dec a
-	ld [hl], a
-	and $1f
-	ret nz
-	ld [hl], a
-	ld hl, BATTLEANIMSTRUCT_10
-	ADD HL, BC
-	ld a, [hl]
-	sub $4
-	ld [hl], a
-	ret nz
-	ld a, $c
-	call Functionce7bf
-	call Functionce72c
-	ret
-
-Functioncd1d2: ; cd1d2 (33:51d2)
-	ld a, $d
-	call Functionce7bf
-	ld hl, BATTLEANIMSTRUCT_0E
-	add hl, bc
-	dec [hl]
-
-Functioncd1dc: ; cd1dc (33:51dc)
-	ret
-
-Functioncd1dd: ; cd1dd (33:51dd)
-	call Functioncd249
-	ld a, $a
-	call Functionce7bf
-	call Functionce72c
-	ld hl, BATTLEANIMSTRUCT_10
-	ADD HL, BC
-	ld [hl], $20
-
-Functioncd1ee: ; cd1ee (33:51ee)
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	ld a, [hli]
-	ld d, [hl]
-	call BattleAnim_Sine
-	ld hl, BATTLEANIMSTRUCT_0A
-	add hl, bc
-	ld [hl], a
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	ld a, [hl]
-	dec a
-	ld [hl], a
-	and $1f
-	jr z, Functioncd20e
-	and $f
-	ret nz
-	call Functionce72c
-	ret
-
-Functioncd20e: ; cd20e (33:520e)
-	call DeinitBattleAnimation
-	ret
-
-Functioncd212: ; cd212 (33:5212)
-	call BattleAnim_AnonJumptable
-.anon_jumptable
-	dw Functioncd21b
-	dw Functioncd222
-	dw Functioncd232
-
-Functioncd21b: ; cd21b (33:521b)
-	call Functioncd249
-	call Functionce72c
-	ret
-
-Functioncd222: ; cd222 (33:5222)
-	ld hl, BATTLEANIMSTRUCT_07
-	add hl, bc
-	ld a, [hl]
-	cp $70
-	jr nc, .asm_cd22f
-	call Functioncd081
-	ret
-
-.asm_cd22f
-	call Functionce72c
-
-Functioncd232: ; cd232 (33:5232)
-	ld hl, BATTLEANIMSTRUCT_08
-	add hl, bc
-	ld a, [hl]
-	cp $80
-	jr nc, .asm_cd245
-	add $4
-	ld [hl], a
-	ld hl, BATTLEANIMSTRUCT_07
-	add hl, bc
-rept 2
-	dec [hl]
-endr
-	ret
-
-.asm_cd245
-	call DeinitBattleAnimation
-	ret
-
-Functioncd249: ; cd249 (33:5249)
-	ld hl, Unknown_cd26c
-	ld a, [rSVBK]
-	push af
-	ld a, $1
-	ld [rSVBK], a
-	ld a, [CurItem] ; CurItem
-	ld e, a
-	pop af
-	ld [rSVBK], a
-.asm_cd25a
-	ld a, [hli]
-	cp $ff
-	jr z, .asm_cd265
-	cp e
-	jr z, .asm_cd265
-	inc hl
-	jr .asm_cd25a
-
-.asm_cd265
-	ld a, [hl]
-	ld hl, SPRITEANIMSTRUCT_YCOORD
-	add hl, bc
-	ld [hl], a
-	ret
-
-; cd26c (33:526c)
-
-Unknown_cd26c: ; cd26c
-	db MASTER_BALL, 5
-	db ULTRA_BALL,  3
-	db GREAT_BALL,  6
-	db POKE_BALL,   4
-	db HEAVY_BALL,  2
-	db LEVEL_BALL,  7
-	db LURE_BALL,   6
-	db FAST_BALL,   6
-	db FRIEND_BALL, 3
-	db MOON_BALL,   2
-	db LOVE_BALL,   4
-	db $ff,         2
-; cd284
-
-Functioncd284: ; cd284 (33:5284)
-	call BattleAnim_AnonJumptable
-.anon_jumptable
-	dw Functioncd291
-	dw Functioncd2a0
-	dw Functioncd2b1
-	dw Functioncd2b5
-	dw Functioncd2bd
-
-Functioncd291: ; cd291 (33:5291)
-	ld hl, BATTLEANIMSTRUCT_0B
-	add hl, bc
-	ld a, [hl]
-	swap a
-	and $f
-	ld hl, BATTLEANIMSTRUCT_0E
-	add hl, bc
-	ld [hl], a
-	ret
-
-Functioncd2a0: ; cd2a0 (33:52a0)
-	ld hl, BATTLEANIMSTRUCT_07
-	add hl, bc
-	ld a, [hl]
-	cp $88
-	ret nc
-	ld hl, BATTLEANIMSTRUCT_0B
-	add hl, bc
-	ld a, [hl]
-	call Functionce70a
-	ret
-
-Functioncd2b1: ; cd2b1 (33:52b1)
-	call DeinitBattleAnimation
-	ret
-
-Functioncd2b5: ; cd2b5 (33:52b5)
-	call Functionce72c
-	ld a, $f
-	call Functionce7bf
-
-Functioncd2bd: ; cd2bd (33:52bd)
-	ret
-
-Functioncd2be: ; cd2be (33:52be)
-	call BattleAnim_AnonJumptable
-.anon_jumptable
-	dw Functioncd2c5
-	dw Functioncd2d1
-
-Functioncd2c5: ; cd2c5 (33:52c5)
-	call Functionce72c
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	ld [hl], $30
-	inc hl
-	ld [hl], $48
-
-Functioncd2d1: ; cd2d1 (33:52d1)
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	ld a, [hli]
-	ld d, [hl]
-	call BattleAnim_Sine
-	ld hl, BATTLEANIMSTRUCT_0A
-	add hl, bc
-	ld [hl], a
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	inc [hl]
-	ld a, [hl]
-	and $3f
-	ret nz
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	ld [hl], $20
-	ld hl, BATTLEANIMSTRUCT_10
-	ADD HL, BC
-	ld a, [hl]
-	ld hl, BATTLEANIMSTRUCT_0B
-	add hl, bc
-	sub [hl]
-	jr z, .asm_cd302
-	jr c, .asm_cd302
-	ld hl, BATTLEANIMSTRUCT_10
-	ADD HL, BC
-	ld [hl], a
-	ret
-
-.asm_cd302
-	call DeinitBattleAnimation
-	ret
-
-Functioncd306: ; cd306 (33:5306)
-	call BattleAnim_AnonJumptable
-.anon_jumptable
-	dw Functioncd311
-	dw Functioncd321
-	dw Functioncd32a
-	dw Functioncd37d
-
-Functioncd311: ; cd311 (33:5311)
-	ld hl, BATTLEANIMSTRUCT_07
-	add hl, bc
-	ld a, [hl]
-	cp $80
-	jr nc, .asm_cd31e
-	call Functioncd38e
-	ret
-
-.asm_cd31e
-	call Functionce72c
-
-Functioncd321: ; cd321 (33:5321)
-	call Functionce72c
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	ld [hl], $0
-
-Functioncd32a: ; cd32a (33:532a)
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	ld a, [hl]
-	cp $40
-	jr nc, .asm_cd363
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	ld a, [hl]
-	ld d, $18
-	call BattleAnim_Cosine
-	sub $18
-	sra a
-	ld hl, BATTLEANIMSTRUCT_0A
-	add hl, bc
-	ld [hl], a
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	ld a, [hl]
-	ld d, $18
-	call BattleAnim_Sine
-	ld hl, BATTLEANIMSTRUCT_09
-	add hl, bc
-	ld [hl], a
-	ld hl, BATTLEANIMSTRUCT_0B
-	add hl, bc
-	ld a, [hl]
-	and $f
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	add [hl]
-	ld [hl], a
-	ret
-
-.asm_cd363
-	ld hl, BATTLEANIMSTRUCT_0B
-	add hl, bc
-	ld a, [hl]
-	and $f0
-	jr z, .asm_cd37a
-	sub $10
-	ld d, a
-	ld a, [hl]
-	and $f
-	or d
-	ld [hl], a
-	ld hl, BATTLEANIMSTRUCT_0E
-	add hl, bc
-	dec [hl]
-	ret
-
-.asm_cd37a
-	call Functionce72c
-
-Functioncd37d: ; cd37d (33:537d)
-	ld hl, BATTLEANIMSTRUCT_07
-	add hl, bc
-	ld a, [hl]
-	cp $b0
-	jr c, .asm_cd38a
-	call DeinitBattleAnimation
-	ret
-
-.asm_cd38a
-	call Functioncd38e
-	ret
-
-Functioncd38e: ; cd38e (33:538e)
-	ld hl, BATTLEANIMSTRUCT_0B
-	add hl, bc
-	ld a, [hl]
-	and $f
-	ld hl, BATTLEANIMSTRUCT_07
-	add hl, bc
-	add [hl]
-	ld [hl], a
-	ld hl, BATTLEANIMSTRUCT_0B
-	add hl, bc
-	ld a, [hl]
-	and $f
-	ld e, a
-	srl e
-	ld hl, BATTLEANIMSTRUCT_08
-	add hl, bc
-.asm_cd3a9
-	dec [hl]
-	dec e
-	jr nz, .asm_cd3a9
-	ret
-
-Functioncd3ae: ; cd3ae (33:53ae)
-	call BattleAnim_AnonJumptable
-.anon_jumptable
-	dw Functioncd3b7
-	dw Functioncd3cc
-	dw Functioncd3ee
-
-Functioncd3b7: ; cd3b7 (33:53b7)
-	call Functionce72c
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	ld [hl], $0
-	ld hl, BATTLEANIMSTRUCT_0B
-	add hl, bc
-	ld a, [hl]
-	and $f
-	ld hl, BATTLEANIMSTRUCT_09
-	add hl, bc
-	ld [hl], a
-
-Functioncd3cc: ; cd3cc (33:53cc)
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	ld a, [hl]
-	and a
-	jr z, .asm_cd3d6
-	dec [hl]
-	ret
-
-.asm_cd3d6
-	ld hl, BATTLEANIMSTRUCT_0B
-	add hl, bc
-	ld a, [hl]
-	swap a
-	and $f
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	ld [hl], a
-	ld hl, BATTLEANIMSTRUCT_09
-	add hl, bc
-	ld a, [hl]
-	xor $ff
-	inc a
-	ld [hl], a
-	ret
-
-Functioncd3ee: ; cd3ee (33:53ee)
-	call DeinitBattleAnimation
-	ret
-
-Functioncd3f2: ; cd3f2 (33:53f2)
-	call BattleAnim_AnonJumptable
-.anon_jumptable
-	dw Functioncd409
-	dw Functioncd45c
-	dw Functioncd467
-	dw Functioncd472
-	dw Functioncd462
-	dw Functioncd46d
-	dw Functioncd477
-	dw Functioncd41d
-	dw Functioncd437
-	dw Functioncd458
-
-Functioncd409: ; cd409 (33:5409)
-	ld hl, BATTLEANIMSTRUCT_0B
-	add hl, bc
-	ld a, [hl]
-	ld hl, BATTLEANIMSTRUCT_0E
-	add hl, bc
-	ld [hl], a
-	cp $7
-	jr z, Functioncd41d
-	ld a, $11
-	call Functionce7bf
-	ret
-
-Functioncd41d: ; cd41d (33:541d)
-	ld hl, BATTLEANIMSTRUCT_07
-	add hl, bc
-	ld a, [hl]
-	cp $88
-	jr nc, .asm_cd42f
-	add $2
-	ld [hl], a
-	ld hl, BATTLEANIMSTRUCT_08
-	add hl, bc
-	dec [hl]
-	ret
-
-.asm_cd42f
-	call Functionce72c
-	ld a, $10
-	call Functionce7bf
-
-Functioncd437: ; cd437 (33:5437)
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	ld a, [hl]
-	ld d, $10
-	push af
-	push de
-	call BattleAnim_Sine
-	ld hl, BATTLEANIMSTRUCT_0A
-	add hl, bc
-	ld [hl], a
-	pop de
-	pop af
-	call BattleAnim_Cosine
-	ld hl, BATTLEANIMSTRUCT_09
-	add hl, bc
-	ld [hl], a
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	inc [hl]
-	ret
-
-Functioncd458: ; cd458 (33:5458)
-	call DeinitBattleAnimation
-	ret
-
-Functioncd45c: ; cd45c (33:545c)
-	ld hl, BATTLEANIMSTRUCT_0A
-	add hl, bc
-	dec [hl]
-	ret
-
-Functioncd462: ; cd462 (33:5462)
-	ld hl, BATTLEANIMSTRUCT_0A
-	add hl, bc
-	inc [hl]
-
-Functioncd467: ; cd467 (33:5467)
-	ld hl, BATTLEANIMSTRUCT_09
-	add hl, bc
-	dec [hl]
-	ret
-
-Functioncd46d: ; cd46d (33:546d)
-	ld hl, BATTLEANIMSTRUCT_0A
-	add hl, bc
-	inc [hl]
-
-Functioncd472: ; cd472 (33:5472)
-	ld hl, BATTLEANIMSTRUCT_09
-	add hl, bc
-	inc [hl]
-
-Functioncd477: ; cd477 (33:5477)
-	ret
-
-Functioncd478: ; cd478 (33:5478)
-	call BattleAnim_AnonJumptable
-.anon_jumptable
-	dw Functioncd48d
-	dw Functioncd496
-	dw Functioncd4ee
-	dw Functioncd53a
-	dw Functioncd545
-	dw Functioncd545
-	dw Functioncd545
-	dw Functioncd545
-	dw Functioncd549
-
-Functioncd48d: ; cd48d (33:548d)
-	call Functionce72c
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	ld [hl], $40
-
-Functioncd496: ; cd496 (33:5496)
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	ld a, [hl]
-	cp $30
-	jr nc, .asm_cd4bc
-	call Functionce72c
-	xor a
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	ld [hli], a
-	ld [hl], a
-	ld a, $17
-	call Functionce7bf
-	ld hl, BATTLEANIMSTRUCT_0B
-	add hl, bc
-	bit 6, [hl]
-	ret z
-	ld hl, BATTLEANIMSTRUCT_0D
-	add hl, bc
-	ld [hl], $5
-	ret
-
-.asm_cd4bc
-	ld hl, BATTLEANIMSTRUCT_0B
-	add hl, bc
-	ld a, [hl]
-	and $3f
-	ld d, a
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	ld a, [hl]
-	dec [hl]
-	call BattleAnim_Sine
-	ld hl, BATTLEANIMSTRUCT_0A
-	add hl, bc
-	ld [hl], a
-	call Functioncd557
-	ld hl, BATTLEANIMSTRUCT_10
-	ADD HL, BC
-	ld a, [hl]
-	ld hl, BATTLEANIMSTRUCT_07
-	add hl, bc
-	ld h, [hl]
-	ld l, a
-	add hl, de
-	ld e, l
-	ld d, h
-	ld hl, BATTLEANIMSTRUCT_07
-	add hl, bc
-	ld [hl], d
-	ld hl, BATTLEANIMSTRUCT_10
-	ADD HL, BC
-	ld [hl], e
-	ret
-
-Functioncd4ee: ; cd4ee (33:54ee)
-	ld hl, BATTLEANIMSTRUCT_0A
-	add hl, bc
-	ld a, [hl]
-	cp $20
-	jr nz, .asm_cd4fb
-	call DeinitBattleAnimation
-	ret
-
-.asm_cd4fb
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	ld a, [hl]
-	ld d, $10
-	call BattleAnim_Sine
-	ld hl, BATTLEANIMSTRUCT_09
-	add hl, bc
-	ld [hl], a
-	ld hl, BATTLEANIMSTRUCT_0B
-	add hl, bc
-	bit 6, [hl]
-	jr nz, .asm_cd519
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	inc [hl]
-	jr .asm_cd51e
-
-.asm_cd519
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	dec [hl]
-.asm_cd51e
-	ld de, $80
-	ld hl, BATTLEANIMSTRUCT_10
-	ADD HL, BC
-	ld a, [hl]
-	ld hl, BATTLEANIMSTRUCT_0A
-	add hl, bc
-	ld h, [hl]
-	ld l, a
-	add hl, de
-	ld e, l
-	ld d, h
-	ld hl, BATTLEANIMSTRUCT_0A
-	add hl, bc
-	ld [hl], d
-	ld hl, BATTLEANIMSTRUCT_10
-	ADD HL, BC
-	ld [hl], e
-	ret
-
-Functioncd53a: ; cd53a (33:553a)
-	ld a, $16
-	call Functionce7bf
-	ld hl, BATTLEANIMSTRUCT_01
-	add hl, bc
-	res 5, [hl]
-
-Functioncd545: ; cd545 (33:5545)
-	call Functionce72c
-	ret
-
-Functioncd549: ; cd549 (33:5549)
-	ld hl, BATTLEANIMSTRUCT_07
-	add hl, bc
-	ld a, [hl]
-	cp $c0
-	ret nc
-	ld a, $8
-	call Functionce70a
-	ret
-
-Functioncd557: ; cd557 (33:5557)
-	ld hl, BATTLEANIMSTRUCT_0B
-	add hl, bc
-	ld a, [hl]
-	bit 7, a
-	jr nz, .negative
-	cp $20
-	jr nc, .plus_256
-	cp $18
-	jr nc, .plus_384
-	ld de, $200
-	ret
-
-.plus_384
-	ld de, $180
-	ret
-
-.plus_256
-	ld de, $100
-	ret
-
-.negative
-	and $3f
-	cp $20
-	jr nc, .minus_256
-	cp $18
-	jr nc, .minus_384
-	ld de, -$200
-	ret
-
-.minus_384
-	ld de, -$180
-	ret
-
-.minus_256
-	ld de, -$100
-	ret
-
-Functioncd58a: ; cd58a (33:558a)
-	call BattleAnim_AnonJumptable
-.anon_jumptable
-	dw Functioncd591
-	dw Functioncd5aa
-
-Functioncd591: ; cd591 (33:5591)
-	ld hl, BATTLEANIMSTRUCT_0B
-	add hl, bc
-	ld a, [hl]
-	and $40
-	rlca
-	rlca
-	add $19
-	ld hl, BATTLEANIMSTRUCT_03
-	add hl, bc
-	ld [hl], a
-	call Functionce72c
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	ld [hl], $40
-Functioncd5aa: ; cd5aa (33:55aa)
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	ld a, [hl]
-	cp $30
-	jr nc, .asm_cd5b7
-	call DeinitBattleAnimation
-	ret
-
-.asm_cd5b7
-	ld hl, BATTLEANIMSTRUCT_0B
-	add hl, bc
-	ld a, [hl]
-	and $3f
-	ld d, a
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	ld a, [hl]
-	dec [hl]
-	call BattleAnim_Sine
-	ld hl, BATTLEANIMSTRUCT_0A
-	add hl, bc
-	ld [hl], a
-	call Functioncd557
-	ld hl, BATTLEANIMSTRUCT_10
-	ADD HL, BC
-	ld a, [hl]
-	ld hl, BATTLEANIMSTRUCT_07
-	add hl, bc
-	ld h, [hl]
-	ld l, a
-	add hl, de
-	ld e, l
-	ld d, h
-	ld hl, BATTLEANIMSTRUCT_07
-	add hl, bc
-	ld [hl], d
-	ld hl, BATTLEANIMSTRUCT_10
-	ADD HL, BC
-	ld [hl], e
-	ret
-
-Functioncd5e9: ; cd5e9 (33:55e9)
-	call BattleAnim_AnonJumptable
-.anon_jumptable
-	dw Functioncd5f2
-	dw Functioncd5fb
-	dw Functioncd61b
-
-Functioncd5f2: ; cd5f2 (33:55f2)
-	call Functionce72c
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	ld [hl], $c
-
-Functioncd5fb: ; cd5fb (33:55fb)
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	ld a, [hl]
-	and a
-	jr z, .asm_cd60d
-	dec [hl]
-	ld hl, BATTLEANIMSTRUCT_0B
-	add hl, bc
-	ld a, [hl]
-	call Functionce70a
-	ret
-
-.asm_cd60d
-	call Functionce72c
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	ld [hl], $0
-	ld a, $22
-	call Functionce7bf
-
-Functioncd61b: ; cd61b (33:561b)
-	ld hl, BATTLEANIMSTRUCT_07
-	add hl, bc
-	ld a, [hl]
-	cp $98
-	jr nc, .asm_cd63f
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	ld a, [hl]
-	ld hl, BATTLEANIMSTRUCT_07
-	add hl, bc
-	ld h, [hl]
-	ld l, a
-	ld de, $60
-	add hl, de
-	ld e, l
-	ld d, h
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	ld [hl], e
-	ld hl, BATTLEANIMSTRUCT_07
-	add hl, bc
-	ld [hl], d
-.asm_cd63f
-	ld hl, BATTLEANIMSTRUCT_08
-	add hl, bc
-	ld a, [hl]
-	cp $20
-	ret c
-	ld hl, BATTLEANIMSTRUCT_0B
-	add hl, bc
-	ld a, [hl]
-	and $f0
-	ld e, a
-	ld d, $ff
-	ld hl, BATTLEANIMSTRUCT_10
-	ADD HL, BC
-	ld a, [hl]
-	ld hl, BATTLEANIMSTRUCT_08
-	add hl, bc
-	ld h, [hl]
-	ld l, a
-	add hl, de
-	ld e, l
-	ld d, h
-	ld hl, BATTLEANIMSTRUCT_10
-	ADD HL, BC
-	ld [hl], e
-	ld hl, BATTLEANIMSTRUCT_08
-	add hl, bc
-	ld [hl], d
-	ret
-
-Functioncd66a: ; cd66a (33:566a)
-	call BattleAnim_AnonJumptable
-.anon_jumptable
-	dw Functioncd677
-	dw Functioncd687
-	dw Functioncd6c5
-	dw Functioncd6c6
-	dw Functioncd6d6
-
-Functioncd677: ; cd677 (33:5677)
-	call Functionce72c
-	ld a, $42
-	ld [hLCDStatCustom], a
-	ld a, $58
-	ld [hLCDStatCustom + 1], a
-	ld a, $5e
-	ld [hLCDStatCustom + 2], a
-	ret
-
-Functioncd687: ; cd687 (33:5687)
-	ld hl, BATTLEANIMSTRUCT_0B
-	add hl, bc
-	ld e, [hl]
-	ld hl, BATTLEANIMSTRUCT_08
-	add hl, bc
-	ld a, [hl]
-	cp e
-	jr nc, .asm_cd69b
-	call Functionce72c
-	xor a
-	ld [hLCDStatCustom + 1], a
-	ret
-
-.asm_cd69b
-	dec a
-	ld [hl], a
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	ld a, [hl]
-	ld d, $10
-	call BattleAnim_Sine
-	ld hl, BATTLEANIMSTRUCT_0A
-	add hl, bc
-	ld [hl], a
-	ld hl, BATTLEANIMSTRUCT_08
-	add hl, bc
-	add [hl]
-	sub $10
-	ret c
-	ld [hLCDStatCustom + 1], a
-	ld hl, BATTLEANIMSTRUCT_09
-	add hl, bc
-	ld a, [hl]
-	inc a
-	and $7
-	ld [hl], a
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-rept 2
-	inc [hl]
-endr
-
-Functioncd6c5: ; cd6c5 (33:56c5)
-	ret
-
-Functioncd6c6: ; cd6c6 (33:56c6)
-	ld hl, BATTLEANIMSTRUCT_08
-	add hl, bc
-	ld a, [hl]
-	cp $70
-	jr c, asm_cd6da
-	xor a
-	ld [hLCDStatCustom], a
-	ld [hLCDStatCustom + 1], a
-	ld [hLCDStatCustom + 2], a
-
-Functioncd6d6: ; cd6d6 (33:56d6)
-	call DeinitBattleAnimation
-	ret
-
-asm_cd6da: ; cd6da (33:56da)
-rept 2
-	inc a
-endr
-	ld [hl], a
-	sub $10
-	ret c
-	ld [hLCDStatCustom + 1], a
-	ret
-
-Functioncd6e3: ; cd6e3 (33:56e3)
-	call BattleAnim_AnonJumptable
-.anon_jumptable
-	dw Functioncd6ea
-	dw Functioncd6f7
-
-Functioncd6ea: ; cd6ea (33:56ea)
-	call Functionce72c
-	ld hl, BATTLEANIMSTRUCT_0B
-	add hl, bc
-	ld a, $24
-	add [hl]
-	call Functionce7bf
-
-Functioncd6f7: ; cd6f7 (33:56f7)
-	ld hl, BATTLEANIMSTRUCT_07
-	add hl, bc
-	ld a, [hl]
-	cp $b8
-	jr c, .asm_cd704
-	call DeinitBattleAnimation
-	ret
-
-.asm_cd704
-	ld a, $2
-	call Functionce70a
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	ld a, [hl]
-	dec [hl]
-	ld d, $8
-	call BattleAnim_Sine
-	ld hl, BATTLEANIMSTRUCT_0A
-	add hl, bc
-	ld [hl], a
-	ret
-
-Functioncd71a: ; cd71a (33:571a)
-	call BattleAnim_AnonJumptable
-.anon_jumptable
-	dw Functioncd725
-	dw Functioncd728
-	dw Functioncd763
-	dw Functioncd776
-
-Functioncd725: ; cd725 (33:5725)
-	call Functionce72c
-
-Functioncd728: ; cd728 (33:5728)
-	ld hl, BATTLEANIMSTRUCT_08
-	add hl, bc
-	ld a, [hl]
-	cp $30
-	jr c, .asm_cd747
-	ld a, $2
-	call Functionce70a
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	ld a, [hl]
-	dec [hl]
-	ld d, $8
-	call BattleAnim_Sine
-	ld hl, BATTLEANIMSTRUCT_0A
-	add hl, bc
-	ld [hl], a
-	ret
-
-.asm_cd747
-	call Functionce72c
-	ld a, $28
-	call Functionce7bf
-	ld hl, BATTLEANIMSTRUCT_0A
-	add hl, bc
-	ld [hl], $0
-	ld hl, BATTLEANIMSTRUCT_08
-	add hl, bc
-	ld [hl], $30
-	ld hl, BATTLEANIMSTRUCT_01
-	add hl, bc
-	ld a, [hl]
-	and $1
-	ld [hl], a
-
-Functioncd763: ; cd763 (33:5763)
-	ld hl, BATTLEANIMSTRUCT_0A
-	add hl, bc
-	ld a, [hl]
-	cp $18
-	jr nc, .asm_cd76e
-	inc [hl]
-	ret
-
-.asm_cd76e
-	call Functionce72c
-	ld a, $29
-	call Functionce7bf
-
-Functioncd776: ; cd776 (33:5776)
-	ret
-
-Functioncd777: ; cd777 (33:5777)
-	ld hl, BATTLEANIMSTRUCT_0A
-	add hl, bc
-	ld a, [hl]
-	cp $38
-	jr c, .asm_cd784
-	call DeinitBattleAnimation
-	ret
-
-.asm_cd784
-	ld a, [hl]
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	ld l, [hl]
-	ld h, a
-	ld de, $80
-	add hl, de
-	ld e, l
-	ld d, h
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	ld [hl], e
-	ld hl, BATTLEANIMSTRUCT_0A
-	add hl, bc
-	ld [hl], d
-	ld hl, BATTLEANIMSTRUCT_09
-	add hl, bc
-	ld a, [hl]
-	xor $10
-	ld [hl], a
-	ret
-
-Functioncd7a4: ; cd7a4 (33:57a4)
-	call BattleAnim_AnonJumptable
-.anon_jumptable
-	dw Functioncd7ab
-	dw Functioncd7d2
-
-Functioncd7ab: ; cd7ab (33:57ab)
-	call Functionce72c
-	ld hl, BATTLEANIMSTRUCT_0B
-	add hl, bc
-	ld a, [hl]
-	and $f0
-	ld hl, BATTLEANIMSTRUCT_10
-	ADD HL, BC
-	ld [hl], a
-	ld hl, BATTLEANIMSTRUCT_0B
-	add hl, bc
-	ld a, [hl]
-	and $f
-	sla a
-	sla a
-	sla a
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	ld [hl], a
-	ld hl, BATTLEANIMSTRUCT_0B
-	add hl, bc
-	ld [hl], $1
-
-Functioncd7d2: ; cd7d2 (33:57d2)
-	ld hl, BATTLEANIMSTRUCT_10
-	ADD HL, BC
-	ld a, [hl]
-	and a
-	jr nz, .asm_cd7de
-	call DeinitBattleAnimation
-	ret
-
-.asm_cd7de
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	ld a, [hl]
-	inc [hl]
-	ld hl, BATTLEANIMSTRUCT_10
-	ADD HL, BC
-	ld d, [hl]
-	push af
-	push de
-	call BattleAnim_Sine
-	ld hl, BATTLEANIMSTRUCT_0A
-	add hl, bc
-	ld [hl], a
-	pop de
-	pop af
-	call BattleAnim_Cosine
-	ld hl, BATTLEANIMSTRUCT_09
-	add hl, bc
-	ld [hl], a
-	ld hl, BATTLEANIMSTRUCT_0B
-	add hl, bc
-	ld a, [hl]
-	xor $1
-	ld [hl], a
-	ret z
-	ld hl, BATTLEANIMSTRUCT_10
-	ADD HL, BC
-	dec [hl]
-	ret
-
-Functioncd80c: ; cd80c (33:580c)
-	call BattleAnim_AnonJumptable
-.anon_jumptable
-	dw Functioncd81f
-	dw Functioncd817
-	dw Functioncd81f
-	dw Functioncd820
-
-Functioncd817: ; cd817 (33:5817)
-	call Functionce72c
-	ld a, $35
-	call Functionce7bf
-
-Functioncd81f: ; cd81f (33:581f)
-	ret
-
-Functioncd820: ; cd820 (33:5820)
-	call DeinitBattleAnimation
-	ret
-
-Functioncd824: ; cd824 (33:5824)
-	call BattleAnim_AnonJumptable
-.anon_jumptable
-	dw Functioncd835
-	dw Functioncd860
-	dw Functioncd88f
-	dw Functioncd88f
-	dw Functioncd88f
-	dw Functioncd88f
-	dw Functioncd893
-
-Functioncd835: ; cd835 (33:5835)
-	call Functionce72c
-	ld hl, BATTLEANIMSTRUCT_03
-	add hl, bc
-	ld a, [hl]
-	ld hl, BATTLEANIMSTRUCT_10
-	ADD HL, BC
-	ld [hl], a
-	ld hl, BATTLEANIMSTRUCT_0B
-	add hl, bc
-	bit 7, [hl]
-	jr nz, .asm_cd852
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	ld [hl], $10
-	jr .asm_cd858
-
-.asm_cd852
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	ld [hl], $30
-.asm_cd858
-	ld hl, BATTLEANIMSTRUCT_0B
-	add hl, bc
-	ld a, [hl]
-	and $7f
-	ld [hl], a
-
-Functioncd860: ; cd860 (33:5860)
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	ld a, [hl]
-	ld hl, BATTLEANIMSTRUCT_0B
-	add hl, bc
-	ld d, [hl]
-	call BattleAnim_Sine
-	ld hl, BATTLEANIMSTRUCT_09
-	add hl, bc
-	ld [hl], a
-	bit 7, a
-	jr nz, .asm_cd87e
-	ld hl, BATTLEANIMSTRUCT_10
-	ADD HL, BC
-	ld a, [hl]
-	inc a
-	jr .asm_cd883
-
-.asm_cd87e
-	ld hl, BATTLEANIMSTRUCT_10
-	ADD HL, BC
-	ld a, [hl]
-.asm_cd883
-	call Functionce7bf
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	inc [hl]
-	ld a, [hl]
-	and $1f
-	ret nz
-
-Functioncd88f: ; cd88f (33:588f)
-	call Functionce72c
-	ret
-
-Functioncd893: ; cd893 (33:5893)
-	ld hl, BATTLEANIMSTRUCT_0E
-	add hl, bc
-	ld [hl], $1
-	ret
-
-Functioncd89a: ; cd89a (33:589a)
-	call BattleAnim_AnonJumptable
-.anon_jumptable
-	dw Functioncd8ab
-	dw Functioncd8cc
-	dw Functioncd8f5
-	dw Functioncd8f5
-	dw Functioncd8f5
-	dw Functioncd8f5
-	dw Functioncd8f9
-
-Functioncd8ab: ; cd8ab (33:58ab)
-	call Functionce72c
-	ld hl, BATTLEANIMSTRUCT_0B
-	add hl, bc
-	bit 7, [hl]
-	jr nz, .asm_cd8be
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	ld [hl], $10
-	jr .asm_cd8c4
-
-.asm_cd8be
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	ld [hl], $30
-.asm_cd8c4
-	ld hl, BATTLEANIMSTRUCT_0B
-	add hl, bc
-	ld a, [hl]
-	and $7f
-	ld [hl], a
-
-Functioncd8cc: ; cd8cc (33:58cc)
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	ld a, [hl]
-	ld hl, BATTLEANIMSTRUCT_0B
-	add hl, bc
-	ld d, [hl]
-	call BattleAnim_Sine
-	ld hl, BATTLEANIMSTRUCT_0A
-	add hl, bc
-	ld [hl], a
-	bit 7, a
-	jr nz, .asm_cd8e6
-	ld a, $3d
-	jr .asm_cd8e8
-
-.asm_cd8e6
-	ld a, $3c
-.asm_cd8e8
-	call Functionce7bf
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-rept 2
-	inc [hl]
-endr
-	ld a, [hl]
-	and $1f
-	ret nz
-
-Functioncd8f5: ; cd8f5 (33:58f5)
-	call Functionce72c
-	ret
-
-Functioncd8f9: ; cd8f9 (33:58f9)
-	ld hl, BATTLEANIMSTRUCT_0E
-	add hl, bc
-	ld [hl], $1
-	ret
-
-Functioncd900: ; cd900 (33:5900)
-	call BattleAnim_AnonJumptable
-.anon_jumptable
-	dw Functioncd907
-	dw Functioncd913
-
-Functioncd907: ; cd907 (33:5907)
-	call Functionce72c
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	ld [hl], $28
-	inc hl
-	ld [hl], $0
-
-Functioncd913: ; cd913 (33:5913)
-	ld hl, BATTLEANIMSTRUCT_0B
-	add hl, bc
-	ld a, [hl]
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	ld d, [hl]
-	push af
-	push de
-	call BattleAnim_Sine
-	ld hl, BATTLEANIMSTRUCT_0A
-	add hl, bc
-	ld [hl], a
-	pop de
-	pop af
-	call BattleAnim_Cosine
-	ld hl, BATTLEANIMSTRUCT_09
-	add hl, bc
-	ld [hl], a
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	ld a, [hl]
-	and a
-	jr z, .asm_cd950
-	ld d, a
-	ld hl, BATTLEANIMSTRUCT_10
-	ADD HL, BC
-	ld e, [hl]
-	ld hl, hPushOAM ; $ff80
-	add hl, de
-	ld e, l
-	ld d, h
-	ld hl, BATTLEANIMSTRUCT_10
-	ADD HL, BC
-	ld [hl], e
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	ld [hl], d
-	ret
-
-.asm_cd950
-	call DeinitBattleAnimation
-	ret
-
-Functioncd954: ; cd954 (33:5954)
-	call BattleAnim_AnonJumptable
-.anon_jumptable
-	dw Functioncd961
-	dw Functioncd96a
-	dw Functioncd96e
-	dw Functioncd96a
-	dw Functioncd97b
-
-Functioncd961: ; cd961 (33:5961)
-	call Functionce72c
-	ld hl, BATTLEANIMSTRUCT_0B
-	add hl, bc
-	ld [hl], $0
-
-Functioncd96a: ; cd96a (33:596a)
-	call Functioncd99a
-	ret
-
-Functioncd96e: ; cd96e (33:596e)
-	ld hl, BATTLEANIMSTRUCT_07
-	add hl, bc
-	ld a, [hl]
-	cp $88
-	jr c, asm_cd988
-	call Functionce72c
-	ret
-
-Functioncd97b: ; cd97b (33:597b)
-	ld hl, BATTLEANIMSTRUCT_07
-	add hl, bc
-	ld a, [hl]
-	cp $b8
-	jr c, asm_cd988
-	call DeinitBattleAnimation
-	ret
-
-asm_cd988: ; cd988 (33:5988)
-	call Functioncd99a
-	ld hl, BATTLEANIMSTRUCT_07
-	add hl, bc
-	inc [hl]
-	ld a, [hl]
-	and $1
-	ret nz
-	ld hl, BATTLEANIMSTRUCT_08
-	add hl, bc
-	dec [hl]
-	ret
-
-Functioncd99a: ; cd99a (33:599a)
-	call Functioncd9f4
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	ld a, [hl]
-	push af
-	push de
-	call BattleAnim_Sine
-	sra a
-	sra a
-	sra a
-	sra a
-	ld hl, BATTLEANIMSTRUCT_0B
-	add hl, bc
-	add [hl]
-	ld hl, BATTLEANIMSTRUCT_0A
-	add hl, bc
-	ld [hl], a
-	pop de
-	pop af
-	call BattleAnim_Cosine
-	ld hl, BATTLEANIMSTRUCT_09
-	add hl, bc
-	ld [hl], a
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	ld a, [hl]
-	sub $8
-	ld [hl], a
-	ld hl, BATTLEANIMSTRUCT_0B
-	add hl, bc
-	ld a, [hl]
-	and a
-	jr z, .asm_cd9d7
-	cp $c2
-	jr c, .asm_cd9e2
-.asm_cd9d7
-	dec a
-	ld [hl], a
-	and $7
-	ret nz
-	ld hl, BATTLEANIMSTRUCT_10
-	ADD HL, BC
-	inc [hl]
-	ret
-
-.asm_cd9e2
-	xor a
-	ld hl, BATTLEANIMSTRUCT_10
-	ADD HL, BC
-	ld [hl], a
-	ld hl, BATTLEANIMSTRUCT_0B
-	add hl, bc
-	ld [hl], a
-	ld hl, BATTLEANIMSTRUCT_09
-	add hl, bc
-	ld [hli], a
-	ld [hl], a
-	ret
-
-Functioncd9f4: ; cd9f4 (33:59f4)
-	ld hl, BATTLEANIMSTRUCT_10
-	ADD HL, BC
-	ld e, [hl]
-	ld d, 0
-	ld hl, Unknown_cda01
-	add hl, de
-	ld d, [hl]
-	ret
-
-; cda01 (33:5a01)
-
-Unknown_cda01: ; cda01
-	db 8, 6, 5, 4, 5, 6, 8, 12, 16
-; cda0a
-
-Functioncda0a: ; cda0a (33:5a0a)
-	ld hl, BATTLEANIMSTRUCT_07
-	add hl, bc
-	ld a, [hl]
-	cp $30
-	jr nc, .asm_cda17
-	call DeinitBattleAnimation
-	ret
-
-.asm_cda17
-	ld hl, BATTLEANIMSTRUCT_0B
-	add hl, bc
-	ld a, [hl]
-	and $f
-	ld e, a
-	ld hl, BATTLEANIMSTRUCT_07
-	add hl, bc
-	ld a, [hl]
-	sub e
-	ld [hl], a
-	srl e
-	ld hl, BATTLEANIMSTRUCT_08
-	add hl, bc
-.asm_cda2c
-	inc [hl]
-	dec e
-	jr nz, .asm_cda2c
-	ret
-
-Functioncda31: ; cda31 (33:5a31)
-	call BattleAnim_AnonJumptable
-.anon_jumptable
-	dw Functioncda4c
-	dw Functioncda3a
-	dw Functioncda4c
-
-Functioncda3a: ; cda3a (33:5a3a)
-	ld hl, BATTLEANIMSTRUCT_03
-	add hl, bc
-	ld a, [hl]
-	inc a
-	call Functionce7bf
-	call Functionce72c
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	ld [hl], $8
-
-Functioncda4c: ; cda4c (33:5a4c)
-	ret
-
-Functioncda4d: ; cda4d (33:5a4d)
-	call BattleAnim_AnonJumptable
-.anon_jumptable
-	dw Functioncda58
-	dw Functioncda62
-	dw Functioncda7a
-	dw Functioncda8c
-
-Functioncda58: ; cda58 (33:5a58)
-	call Functionce72c
-	ld hl, BATTLEANIMSTRUCT_10
-	ADD HL, BC
-	ld [hl], $40
-	ret
-
-Functioncda62: ; cda62 (33:5a62)
-	ld hl, BATTLEANIMSTRUCT_10
-	ADD HL, BC
-	ld a, [hl]
-	cp $20
-	jr c, .asm_cda6f
-	call Functioncda8d
-	ret
-
-.asm_cda6f
-	ld [hl], $40
-	ld a, $57
-	call Functionce7bf
-	call Functionce72c
-	ret
-
-Functioncda7a: ; cda7a (33:5a7a)
-	ld hl, BATTLEANIMSTRUCT_10
-	ADD HL, BC
-	ld a, [hl]
-	and a
-	jr z, .asm_cda84
-	dec [hl]
-	ret
-
-.asm_cda84
-	call Functionce72c
-	ld a, $58
-	call Functionce7bf
-
-Functioncda8c: ; cda8c (33:5a8c)
-	ret
-
-Functioncda8d: ; cda8d (33:5a8d)
-	dec [hl]
-	ld d, $20
-	call BattleAnim_Sine
-	ld hl, BATTLEANIMSTRUCT_0A
-	add hl, bc
-	ld [hl], a
-	ld hl, SPRITEANIMSTRUCT_ANIM_SEQ_ID
-	add hl, bc
-	ld a, [hl]
-	add $2
-	ld [hl], a
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	ld e, [hl]
-	ld hl, BATTLEANIMSTRUCT_07
-	add hl, bc
-	ld d, [hl]
-	ld hl, BATTLEANIMSTRUCT_0B
-	add hl, bc
-	ld h, [hl]
-	ld a, h
-	and $f
-	swap a
-	ld l, a
-	ld a, h
-	and $f0
-	swap a
-	ld h, a
-	add hl, de
-	ld e, l
-	ld d, h
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	ld [hl], e
-	ld hl, BATTLEANIMSTRUCT_07
-	add hl, bc
-	ld [hl], d
-	ld hl, BATTLEANIMSTRUCT_10
-	ADD HL, BC
-	ld a, [hl]
-	and $1
-	ret nz
-	ld hl, BATTLEANIMSTRUCT_08
-	add hl, bc
-	dec [hl]
-	ret
-
-Functioncdad6: ; cdad6 (33:5ad6)
-	call BattleAnim_AnonJumptable
-.anon_jumptable
-	dw Functioncdadf
-	dw Functioncdae9
-	dw Functioncdaf9
-
-Functioncdadf: ; cdadf (33:5adf)
-	call Functionce72c
-	ld hl, BATTLEANIMSTRUCT_10
-	ADD HL, BC
-	ld [hl], $40
-	ret
-
-Functioncdae9: ; cdae9 (33:5ae9)
-	ld hl, BATTLEANIMSTRUCT_10
-	ADD HL, BC
-	ld a, [hl]
-	cp $20
-	jr c, .asm_cdaf6
-	call Functioncda8d
-	ret
-
-.asm_cdaf6
-	call Functionce72c
-
-Functioncdaf9: ; cdaf9 (33:5af9)
-	ret
-
-Functioncdafa: ; cdafa (33:5afa)
-	call Functioncd0e3
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	ld a, [hl]
-	add $f
-	ld [hl], a
-	ret
-
-Functioncdb06: ; cdb06 (33:5b06)
-	call BattleAnim_AnonJumptable
-.anon_jumptable
-	dw Functioncdb13
-	dw Functioncdb14
-	dw Functioncdb28
-	dw Functioncdb50
-	dw Functioncdb65
+	battleanimobj $01, $ff, $00, $00, $02, $01 ; 00
+	battleanimobj $01, $ff, $01, $00, $02, $01 ; 01
+	battleanimobj $01, $ff, $02, $00, $02, $01 ; 02
+	battleanimobj $01, $90, $00, $00, $02, $01 ; 03
+	battleanimobj $01, $90, $01, $00, $02, $01 ; 04
+	battleanimobj $01, $90, $02, $00, $02, $01 ; 05
+	battleanimobj $01, $ff, $03, $00, $02, $01 ; 06
+	battleanimobj $01, $ff, $04, $1b, $02, $01 ; 07
+	battleanimobj $01, $ff, $05, $00, $02, $01 ; 08
+	battleanimobj $01, $ff, $06, $00, $02, $01 ; 09
+	battleanimobj $01, $90, $07, $09, $02, $01 ; 0a
+	battleanimobj $01, $aa, $10, $10, $04, $03 ; 0b
+	battleanimobj $01, $90, $0e, $04, $04, $03 ; 0c
+	battleanimobj $01, $90, $0f, $03, $04, $03 ; 0d
+	battleanimobj $01, $90, $10, $08, $04, $03 ; 0e
+	battleanimobj $01, $90, $0f, $0a, $04, $03 ; 0f
+	battleanimobj $01, $90, $11, $03, $04, $03 ; 10
+	battleanimobj $01, $90, $12, $08, $06, $0a ; 11
+	battleanimobj $01, $90, $13, $00, $06, $0a ; 12
+	battleanimobj $01, $90, $14, $01, $06, $0a ; 13
+	battleanimobj $21, $78, $16, $0b, $05, $06 ; 14
+	battleanimobj $00, $00, $09, $12, $04, $0b ; 15
+	battleanimobj $00, $00, $09, $13, $04, $0b ; 16
+	battleanimobj $01, $90, $18, $00, $04, $08 ; 17
+	battleanimobj $01, $ff, $18, $00, $04, $08 ; 18
+	battleanimobj $01, $90, $1d, $06, $02, $0c ; 19
+	battleanimobj $01, $b4, $1f, $38, $02, $0c ; 1a
+	battleanimobj $01, $90, $08, $00, $02, $07 ; 1b
+	battleanimobj $01, $a0, $08, $00, $02, $07 ; 1c
+	battleanimobj $01, $ff, $19, $07, $07, $09 ; 1d
+	battleanimobj $01, $ff, $1a, $07, $07, $09 ; 1e
+	battleanimobj $01, $b0, $1b, $36, $07, $09 ; 1f
+	battleanimobj $01, $b0, $84, $36, $06, $21 ; 20
+	battleanimobj $01, $90, $21, $0c, $06, $0d ; 21
+	battleanimobj $00, $00, $23, $0d, $06, $0d ; 22
+	battleanimobj $01, $90, $24, $0e, $02, $0e ; 23
+	battleanimobj $61, $80, $27, $0f, $06, $04 ; 24
+	battleanimobj $01, $b4, $2a, $00, $06, $04 ; 25
+	battleanimobj $01, $40, $2b, $11, $05, $0f ; 26
+	battleanimobj $61, $98, $2c, $00, $03, $10 ; 27
+	battleanimobj $61, $98, $2d, $09, $03, $10 ; 28
+	battleanimobj $01, $b8, $2e, $00, $06, $0a ; 29
+	battleanimobj $01, $b8, $2f, $00, $06, $0a ; 2a
+	battleanimobj $01, $b8, $30, $14, $07, $11 ; 2b
+	battleanimobj $01, $90, $21, $14, $03, $0d ; 2c
+	battleanimobj $21, $b0, $31, $00, $03, $05 ; 2d
+	battleanimobj $21, $b0, $32, $00, $03, $05 ; 2e
+	battleanimobj $21, $b0, $33, $00, $03, $05 ; 2f
+	battleanimobj $21, $90, $34, $15, $03, $05 ; 30
+	battleanimobj $21, $90, $36, $00, $03, $05 ; 31
+	battleanimobj $21, $90, $37, $03, $02, $08 ; 32
+	battleanimobj $21, $90, $38, $00, $03, $05 ; 33
+	battleanimobj $21, $90, $39, $03, $02, $08 ; 34
+	battleanimobj $21, $90, $3a, $16, $02, $02 ; 35
+	battleanimobj $01, $90, $3c, $17, $02, $02 ; 36
+	battleanimobj $21, $ff, $3e, $00, $02, $02 ; 37
+	battleanimobj $21, $ff, $3f, $00, $02, $02 ; 38
+	battleanimobj $21, $ff, $40, $00, $02, $02 ; 39
+	battleanimobj $21, $ff, $41, $00, $02, $02 ; 3a
+	battleanimobj $21, $ff, $42, $00, $02, $02 ; 3b
+	battleanimobj $01, $88, $43, $18, $05, $12 ; 3c
+	battleanimobj $01, $88, $44, $00, $05, $12 ; 3d
+	battleanimobj $21, $b8, $45, $19, $02, $13 ; 3e
+	battleanimobj $21, $ff, $46, $00, $02, $14 ; 3f
+	battleanimobj $21, $ff, $47, $00, $02, $14 ; 40
+	battleanimobj $21, $ff, $48, $1a, $02, $14 ; 41
+	battleanimobj $21, $ff, $49, $1a, $02, $14 ; 42
+	battleanimobj $21, $98, $4a, $01, $02, $14 ; 43
+	battleanimobj $21, $80, $4b, $00, $03, $11 ; 44
+	battleanimobj $01, $88, $4c, $1c, $05, $12 ; 45
+	battleanimobj $21, $b0, $4d, $1d, $02, $15 ; 46
+	battleanimobj $01, $b0, $51, $1e, $03, $11 ; 47
+	battleanimobj $21, $ff, $52, $1f, $05, $16 ; 48
+	battleanimobj $21, $ff, $54, $1f, $05, $16 ; 49
+	battleanimobj $21, $68, $56, $20, $05, $06 ; 4a
+	battleanimobj $21, $90, $59, $21, $02, $0e ; 4b
+	battleanimobj $21, $90, $5c, $02, $02, $17 ; 4c
+	battleanimobj $01, $90, $5d, $22, $03, $11 ; 4d
+	battleanimobj $61, $88, $5f, $00, $03, $10 ; 4e
+	battleanimobj $61, $88, $2d, $09, $03, $10 ; 4f
+	battleanimobj $21, $88, $60, $00, $03, $18 ; 50
+	battleanimobj $21, $80, $60, $00, $02, $18 ; 51
+	battleanimobj $21, $50, $61, $23, $03, $19 ; 52
+	battleanimobj $01, $80, $63, $24, $02, $19 ; 53
+	battleanimobj $01, $80, $66, $25, $02, $19 ; 54
+	battleanimobj $01, $50, $1c, $00, $02, $0c ; 55
+	battleanimobj $21, $a8, $67, $26, $07, $1a ; 56
+	battleanimobj $21, $a8, $68, $00, $07, $1a ; 57
+	battleanimobj $21, $90, $69, $01, $02, $1a ; 58
+	battleanimobj $21, $90, $6d, $28, $03, $19 ; 59
+	battleanimobj $21, $90, $6a, $27, $02, $1b ; 5a
+	battleanimobj $00, $00, $6f, $29, $02, $1c ; 5b
+	battleanimobj $21, $48, $70, $29, $02, $1c ; 5c
+	battleanimobj $21, $48, $6f, $29, $02, $1c ; 5d
+	battleanimobj $21, $78, $6f, $2a, $02, $1c ; 5e
+	battleanimobj $61, $90, $71, $2b, $02, $1d ; 5f
+	battleanimobj $61, $90, $72, $2c, $02, $1d ; 60
+	battleanimobj $01, $48, $73, $2d, $04, $1e ; 61
+	battleanimobj $01, $90, $74, $06, $02, $15 ; 62
+	battleanimobj $01, $ff, $75, $2e, $07, $19 ; 63
+	battleanimobj $21, $90, $4a, $02, $02, $14 ; 64
+	battleanimobj $01, $80, $30, $2f, $02, $11 ; 65
+	battleanimobj $01, $78, $76, $2a, $04, $23 ; 66
+	battleanimobj $01, $80, $77, $30, $02, $1f ; 67
+	battleanimobj $01, $90, $77, $02, $02, $1f ; 68
+	battleanimobj $01, $ff, $77, $00, $02, $1f ; 69
+	battleanimobj $01, $80, $78, $08, $03, $23 ; 6a
+	battleanimobj $21, $90, $79, $00, $02, $1f ; 6b
+	battleanimobj $01, $ff, $7a, $31, $03, $11 ; 6c
+	battleanimobj $01, $88, $7a, $31, $03, $11 ; 6d
+	battleanimobj $21, $88, $7b, $32, $02, $20 ; 6e
+	battleanimobj $21, $98, $7c, $00, $02, $04 ; 6f
+	battleanimobj $21, $80, $7d, $00, $02, $18 ; 70
+	battleanimobj $01, $80, $21, $2f, $06, $0d ; 71
+	battleanimobj $01, $b0, $7e, $33, $03, $12 ; 72
+	battleanimobj $01, $80, $7f, $2f, $02, $08 ; 73
+	battleanimobj $21, $a0, $6f, $34, $02, $1c ; 74
+	battleanimobj $21, $a0, $74, $35, $02, $15 ; 75
+	battleanimobj $21, $b0, $80, $33, $02, $14 ; 76
+	battleanimobj $01, $88, $81, $37, $02, $11 ; 77
+	battleanimobj $01, $88, $85, $00, $02, $22 ; 78
+	battleanimobj $01, $88, $86, $00, $02, $22 ; 79
+	battleanimobj $01, $90, $87, $39, $02, $1f ; 7a
+	battleanimobj $01, $80, $30, $3a, $03, $11 ; 7b
+	battleanimobj $21, $90, $34, $00, $03, $05 ; 7c
+	battleanimobj $a1, $88, $88, $3b, $06, $13 ; 7d
+	battleanimobj $01, $80, $76, $25, $04, $23 ; 7e
+	battleanimobj $01, $98, $10, $34, $04, $03 ; 7f
+	battleanimobj $01, $a8, $0f, $3c, $04, $03 ; 80
+	battleanimobj $21, $68, $89, $29, $02, $1f ; 81
+	battleanimobj $21, $b0, $8a, $00, $02, $1f ; 82
+	battleanimobj $21, $80, $8c, $00, $02, $1f ; 83
+	battleanimobj $21, $50, $8d, $00, $03, $1f ; 84
+	battleanimobj $01, $40, $24, $40, $02, $0e ; 85
+	battleanimobj $21, $a8, $8e, $41, $04, $1f ; 86
+	battleanimobj $21, $88, $8f, $3e, $02, $1f ; 87
+	battleanimobj $21, $88, $93, $3e, $02, $1f ; 88
+	battleanimobj $21, $90, $97, $3d, $02, $1f ; 89
+	battleanimobj $21, $90, $78, $3d, $03, $23 ; 8a
+	battleanimobj $01, $ff, $99, $2e, $02, $19 ; 8b
+	battleanimobj $21, $a0, $74, $02, $02, $15 ; 8c
+	battleanimobj $21, $a0, $99, $35, $04, $19 ; 8d
+	battleanimobj $21, $70, $8b, $3f, $02, $1f ; 8e
+	battleanimobj $01, $90, $15, $08, $02, $0a ; 8f
+	battleanimobj $01, $90, $11, $02, $04, $03 ; 90
+	battleanimobj $01, $80, $7f, $42, $02, $08 ; 91
+	battleanimobj $01, $90, $9a, $00, $02, $1b ; 92
+	battleanimobj $21, $a0, $9b, $35, $04, $23 ; 93
+	battleanimobj $21, $80, $9c, $23, $02, $25 ; 94
+	battleanimobj $21, $80, $9d, $25, $02, $25 ; 95
+	battleanimobj $21, $80, $9c, $00, $02, $25 ; 96
+	battleanimobj $21, $80, $9e, $00, $06, $25 ; 97
+	battleanimobj $61, $80, $9f, $3a, $05, $23 ; 98
+	battleanimobj $21, $80, $a0, $16, $02, $23 ; 99
+	battleanimobj $21, $70, $78, $43, $03, $23 ; 9a
+	battleanimobj $21, $c0, $a2, $01, $02, $25 ; 9b
+	battleanimobj $21, $40, $a3, $44, $03, $24 ; 9c
+	battleanimobj $01, $80, $a4, $00, $02, $24 ; 9d
+	battleanimobj $01, $80, $a5, $00, $03, $24 ; 9e
+	battleanimobj $01, $88, $43, $45, $04, $12 ; 9f
+	battleanimobj $21, $ff, $a6, $00, $02, $02 ; a0
+	battleanimobj $21, $ff, $a7, $00, $02, $02 ; a1
+	battleanimobj $21, $00, $b4, $4a, $07, $0f ; a2
+	battleanimobj $21, $90, $a8, $02, $03, $05 ; a3
+	battleanimobj $21, $40, $9c, $11, $02, $25 ; a4
+	battleanimobj $61, $90, $a9, $46, $02, $23 ; a5
+	battleanimobj $00, $00, $24, $47, $02, $0e ; a6
+	battleanimobj $01, $80, $aa, $00, $02, $24 ; a7
+	battleanimobj $21, $b8, $ab, $48, $02, $13 ; a8
+	battleanimobj $21, $90, $ac, $44, $02, $13 ; a9
+	battleanimobj $01, $a8, $05, $00, $02, $01 ; aa
+	battleanimobj $01, $90, $24, $43, $02, $0e ; ab
+	battleanimobj $01, $88, $ad, $00, $06, $17 ; ac
+	battleanimobj $01, $a8, $ae, $49, $02, $01 ; ad
+	battleanimobj $21, $90, $af, $01, $03, $11 ; ae
+	battleanimobj $21, $00, $b0, $4a, $02, $04 ; af
+	battleanimobj $00, $00, $70, $4b, $04, $1c ; b0
+	battleanimobj $01, $88, $b1, $4c, $02, $19 ; b1
+	battleanimobj $01, $b8, $19, $4d, $07, $09 ; b2
+	battleanimobj $61, $98, $b3, $00, $03, $27 ; b3
+	battleanimobj $61, $98, $74, $04, $06, $15 ; b4
+	battleanimobj $21, $ff, $19, $4e, $07, $09 ; b5
+	battleanimobj $01, $90, $73, $08, $04, $1e ; b6
+	battleanimobj $01, $ff, $89, $4f, $04, $1f ; b7
+	battleanimobj $00, $00, $b5, $00, $00, $28 ; b8
+	battleanimobj $00, $00, $b6, $00, $01, $29 ; b9
+	battleanimobj $00, $00, $b7, $00, $00, $28 ; ba
+	battleanimobj $00, $00, $b8, $00, $01, $29 ; bb
+; ccfbe
 
-Functioncdb13: ; cdb13 (33:5b13)
-	ret
+INCLUDE "battle/objects/functions.asm"
 
-Functioncdb14: ; cdb14 (33:5b14)
-	ld hl, BATTLEANIMSTRUCT_08
+ReinitBattleAnimFrameset: ; ce7bf (33:67bf)
+	ld hl, BATTLEANIMSTRUCT_FRAMESET_ID
 	add hl, bc
-	ld a, [hl]
-	cp $30
-	jr c, .asm_cdb24
-	ld hl, BATTLEANIMSTRUCT_0E
-	add hl, bc
-	ld [hl], $0
-	ret
-
-.asm_cdb24
-	add $4
 	ld [hl], a
-	ret
-
-Functioncdb28: ; cdb28 (33:5b28)
-	ld hl, BATTLEANIMSTRUCT_07
+	ld hl, BATTLEANIMSTRUCT_DURATION
 	add hl, bc
-	ld a, [hl]
-	cp $98
-	ret nc
-rept 2
-	inc [hl]
-endr
-	ld hl, BATTLEANIMSTRUCT_01
+	ld [hl], 0
+	ld hl, BATTLEANIMSTRUCT_FRAME
 	add hl, bc
-	set 0, [hl]
-	ld hl, SPRITEANIMSTRUCT_ANIM_SEQ_ID
-	add hl, bc
-	ld [hl], $90
-	ld hl, BATTLEANIMSTRUCT_0D
-	add hl, bc
-	ld [hl], $0
-	ld hl, BATTLEANIMSTRUCT_0C
-	add hl, bc
-	ld [hl], $2
-	ld hl, BATTLEANIMSTRUCT_08
-	add hl, bc
-	dec [hl]
+	ld [hl], -1
 	ret
 
-Functioncdb50: ; cdb50 (33:5b50)
-	call Functionce72c
-	ld hl, BATTLEANIMSTRUCT_0F
+GetBattleAnimFrame: ; ce7d1
+.loop
+	ld hl, BATTLEANIMSTRUCT_DURATION
 	add hl, bc
-	ld [hl], $2c
-	ld hl, BATTLEANIMSTRUCT_0D
-	add hl, bc
-	ld [hl], $0
-	ld hl, BATTLEANIMSTRUCT_0C
-	add hl, bc
-	ld [hl], $80
-
-Functioncdb65: ; cdb65 (33:5b65)
-	ld hl, BATTLEANIMSTRUCT_07
-	add hl, bc
 	ld a, [hl]
-	cp $98
-	ret nc
-rept 2
-	inc [hl]
-endr
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	ld a, [hl]
-	inc [hl]
-	ld d, $8
-	call BattleAnim_Sine
-	ld hl, BATTLEANIMSTRUCT_0A
-	add hl, bc
-	ld [hl], a
-	ret
-
-Functioncdb80: ; cdb80 (33:5b80)
-	call BattleAnim_AnonJumptable
-.anon_jumptable
-	dw Functioncdb9f
-	dw Functioncdbb3
-	dw Functioncdbcf
-	dw Functioncdbeb
-	dw Functioncdc74
-	dw Functioncdc1a
-	dw Functioncdbc1
-	dw Functioncdc1e
-	dw Functioncdc27
-	dw Functioncdc39
-	dw Functioncdc74
-	dw Functioncdc48
-	dw Functioncdc57
-	dw Functioncdc74
-
-Functioncdb9f: ; cdb9f (33:5b9f)
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	ld [hl], $28
-	inc hl
-	ld [hl], $10
-	ld hl, BATTLEANIMSTRUCT_0B
-	add hl, bc
-	ld a, [hl]
-	ld hl, BATTLEANIMSTRUCT_0E
-	add hl, bc
-	ld [hl], a
-	ret
-
-Functioncdbb3: ; cdbb3 (33:5bb3)
-	ld hl, BATTLEANIMSTRUCT_07
-	add hl, bc
-	ld a, [hl]
-	cp $40
-	jr nc, .asm_cdbbd
-	inc [hl]
-.asm_cdbbd
-	call Functioncdc75
-	ret
-
-Functioncdbc1: ; cdbc1 (33:5bc1)
-	ld hl, BATTLEANIMSTRUCT_07
-	add hl, bc
-	ld a, [hl]
-	cp $4b
-	jr nc, .asm_cdbcb
-	inc [hl]
-.asm_cdbcb
-	call Functioncdc75
-	ret
-
-Functioncdbcf: ; cdbcf (33:5bcf)
-	ld hl, BATTLEANIMSTRUCT_07
-	add hl, bc
-	ld a, [hl]
-	cp $88
-	jr nc, .asm_cdbe6
-	and $f
-	jr nz, asm_cdbfa
-	ld hl, BATTLEANIMSTRUCT_10
-	ADD HL, BC
-	ld [hl], $10
-	call Functionce72c
-	ret
-
-.asm_cdbe6
-	call Functionce72c
-	inc [hl]
-	ret
-
-Functioncdbeb: ; cdbeb (33:5beb)
-	ld hl, BATTLEANIMSTRUCT_10
-	ADD HL, BC
-	ld a, [hl]
 	and a
-	jr z, .asm_cdbf5
+	jr z, .next_frame
 	dec [hl]
-	ret
-
-.asm_cdbf5
-	ld hl, BATTLEANIMSTRUCT_0E
-	add hl, bc
-	dec [hl]
-asm_cdbfa: ; cdbfa (33:5bfa)
-	ld hl, BATTLEANIMSTRUCT_07
-	add hl, bc
-	inc [hl]
-	ld hl, BATTLEANIMSTRUCT_08
-	add hl, bc
-	ld d, [hl]
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	ld e, [hl]
-	ld hl, hPushOAM ; $ff80
-	add hl, de
-	ld e, l
-	ld d, h
-	ld hl, BATTLEANIMSTRUCT_08
-	add hl, bc
-	ld [hl], d
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	ld [hl], e
-	ret
-
-Functioncdc1a: ; cdc1a (33:5c1a)
-	call DeinitBattleAnimation
-	ret
-
-Functioncdc1e: ; cdc1e (33:5c1e)
-	ld a, $4e
-	call Functionce7bf
-	call Functionce72c
-	ret
-
-Functioncdc27: ; cdc27 (33:5c27)
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	ld a, [hl]
-rept 2
-	inc [hl]
-endr
-	ld d, $2
-	call BattleAnim_Sine
-	ld hl, BATTLEANIMSTRUCT_09
-	add hl, bc
-	ld [hl], a
-	ret
-
-Functioncdc39: ; cdc39 (33:5c39)
-	ld a, $50
-	call Functionce7bf
-	ld hl, BATTLEANIMSTRUCT_0A
-	add hl, bc
-	ld [hl], $4
-	call Functionce72c
-	ret
-
-Functioncdc48: ; cdc48 (33:5c48)
-	ld a, $4f
-	call Functionce7bf
-	call Functionce72c
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	ld [hl], $40
-	ret
-
-Functioncdc57: ; cdc57 (33:5c57)
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	ld a, [hl]
-	ld d, $20
-	call BattleAnim_Sine
-	ld hl, BATTLEANIMSTRUCT_0A
-	add hl, bc
-	ld [hl], a
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	ld a, [hl]
-	cp $30
-	jr c, .asm_cdc71
-	dec [hl]
-	ret
-
-.asm_cdc71
-	call Functionce72c
-
-Functioncdc74: ; cdc74 (33:5c74)
-	ret
-
-Functioncdc75: ; cdc75 (33:5c75)
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
+	call .GetPointer
 	ld a, [hli]
-	ld d, [hl]
-	call BattleAnim_Sine
-	ld hl, BATTLEANIMSTRUCT_0A
-	add hl, bc
-	ld [hl], a
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	inc [hl]
-	ld a, [hl]
-	and $3f
-	ret nz
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	ld [hl], $20
-	ld hl, BATTLEANIMSTRUCT_10
-	ADD HL, BC
-	ld a, [hl]
-	sub $8
-	ld [hl], a
-	ret nz
-	xor a
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	ld [hli], a
-	ld [hl], a
-	call Functionce72c
-	ret
-
-Functioncdca6: ; cdca6 (33:5ca6)
-	ld hl, BATTLEANIMSTRUCT_0A
-	add hl, bc
-	ld a, [hl]
-	and a
-	jr z, .asm_cdcb6
-	cp $d8
-	jr nc, .asm_cdcb6
-	call DeinitBattleAnimation
-	ret
-
-.asm_cdcb6
-	ld hl, BATTLEANIMSTRUCT_0B
-	add hl, bc
-	ld d, [hl]
-	ld hl, BATTLEANIMSTRUCT_0A
-	add hl, bc
-	ld a, [hl]
-	sub d
-	ld [hl], a
-	ret
-
-Functioncdcc3: ; cdcc3 (33:5cc3)
-	call BattleAnim_AnonJumptable
-.anon_jumptable
-	dw Functioncdcca
-	dw Functioncdced
-
-Functioncdcca: ; cdcca (33:5cca)
-	ld a, [hBattleTurn]
-	and a
-	jr z, .asm_cdcd9
-	ld hl, BATTLEANIMSTRUCT_0B
-	add hl, bc
-	ld a, [hl]
-	xor $ff
-	add $3
-	ld [hl], a
-.asm_cdcd9
-	call Functionce72c
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	ld [hl], $8
-	ld hl, BATTLEANIMSTRUCT_0B
-	add hl, bc
-	ld a, $59
-	add [hl]
-	call Functionce7bf
-	ret
-
-Functioncdced: ; cdced (33:5ced)
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	ld a, [hl]
-	and a
-	jr z, .asm_cdcfa
-	dec [hl]
-	call Functioncdcfe
-	ret
-
-.asm_cdcfa
-	call DeinitBattleAnimation
-	ret
-
-Functioncdcfe: ; cdcfe (33:5cfe)
-	ld hl, BATTLEANIMSTRUCT_10
-	ADD HL, BC
-	ld a, [hl]
-rept 2
-	inc [hl]
-endr
-	ld d, $10
-	call BattleAnim_Sine
-	ld d, a
-	ld hl, BATTLEANIMSTRUCT_09
-	add hl, bc
-	ld [hl], a
-	ld hl, BATTLEANIMSTRUCT_0B
-	add hl, bc
-	ld a, [hl]
-	and a
-	jr z, .asm_cdd20
-	dec a
-	ret z
-	ld hl, BATTLEANIMSTRUCT_0A
-	add hl, bc
-	ld [hl], d
-	ret
-
-.asm_cdd20
-	ld hl, BATTLEANIMSTRUCT_0A
-	add hl, bc
-	ld a, d
-	xor $ff
-	inc a
-	ld [hl], a
-	ret
-
-Functioncdd2a: ; cdd2a (33:5d2a)
-	call BattleAnim_AnonJumptable
-.anon_jumptable
-	dw Functioncdd31
-	dw Functioncdd4f
-
-Functioncdd31: ; cdd31 (33:5d31)
-	call Functionce72c
-	ld hl, BATTLEANIMSTRUCT_0B
-	add hl, bc
-	ld a, [hl]
-	and $3f
-	ld hl, BATTLEANIMSTRUCT_10
-	ADD HL, BC
-	ld [hl], a
-	ld hl, BATTLEANIMSTRUCT_0B
-	add hl, bc
-	ld a, [hl]
-	and $80
-	rlca
-	ld [hl], a
-	add $5d
-	call Functionce7bf
-	ret
-
-Functioncdd4f: ; cdd4f (33:5d4f)
-	ld hl, BATTLEANIMSTRUCT_0B
-	add hl, bc
-	ld a, [hl]
-	swap a
-	ld d, a
-	ld hl, BATTLEANIMSTRUCT_10
-	ADD HL, BC
-	ld a, [hl]
-	inc [hl]
 	push af
-	push de
-	call BattleAnim_Sine
-	ld hl, BATTLEANIMSTRUCT_0A
-	add hl, bc
-	ld [hl], a
-	pop de
-	pop af
-	call BattleAnim_Cosine
-	ld hl, BATTLEANIMSTRUCT_09
-	add hl, bc
-	ld [hl], a
-	ld hl, BATTLEANIMSTRUCT_07
-	add hl, bc
-	ld a, [hl]
-	cp $80
-	ret nc
-	ld hl, BATTLEANIMSTRUCT_10
-	ADD HL, BC
-	ld a, [hl]
-	and $3
-	jr nz, .asm_cdd87
-	ld hl, BATTLEANIMSTRUCT_08
-	add hl, bc
-	dec [hl]
-.asm_cdd87
-	and $1
-	ret nz
-	ld hl, BATTLEANIMSTRUCT_07
-	add hl, bc
-	inc [hl]
-	ret
+	jr .okay
 
-Functioncdd90: ; cdd90 (33:5d90)
-	call BattleAnim_AnonJumptable
-.anon_jumptable
-	dw Functioncdd97
-	dw Functioncddbc
-
-Functioncdd97: ; cdd97 (33:5d97)
-	call Functionce72c
-	ld hl, BATTLEANIMSTRUCT_03
+.next_frame
+	ld hl, BATTLEANIMSTRUCT_FRAME
 	add hl, bc
-	ld a, [hl]
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	ld [hl], a
-	ld hl, BATTLEANIMSTRUCT_0B
-	add hl, bc
-	ld a, [hl]
-	and $80
-	rlca
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	add [hl]
-	call Functionce7bf
-	ld hl, BATTLEANIMSTRUCT_0B
-	add hl, bc
-	ld a, [hl]
-	and $7f
-	ld [hl], a
-
-Functioncddbc: ; cddbc (33:5dbc)
-	ld hl, BATTLEANIMSTRUCT_0B
-	add hl, bc
-	ld a, [hl]
-	ld d, $10
-	push af
-	push de
-	call BattleAnim_Sine
-	sra a
-	sra a
-	ld hl, BATTLEANIMSTRUCT_0A
-	add hl, bc
-	ld [hl], a
-	pop de
-	pop af
-	call BattleAnim_Cosine
-	ld hl, BATTLEANIMSTRUCT_09
-	add hl, bc
-	ld [hl], a
-	ld hl, BATTLEANIMSTRUCT_0B
-	add hl, bc
-	ld a, [hl]
 	inc [hl]
-	and $3f
-	jr z, .asm_cddf0
-	and $1f
-	ret nz
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	ld a, [hl]
-	inc a
-	jr .asm_cddf5
-
-.asm_cddf0
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	ld a, [hl]
-.asm_cddf5
-	call Functionce7bf
-	ret
-
-Functioncddf9: ; cddf9 (33:5df9)
-	call BattleAnim_AnonJumptable
-.anon_jumptable
-	dw Functioncde02
-	dw Functioncde20
-	dw Functioncde21
-
-Functioncde02: ; cde02 (33:5e02)
-	call Functionce72c
-	ld hl, BATTLEANIMSTRUCT_0B
-	add hl, bc
-	ld a, [hl]
-	add $63
-	call Functionce7bf
-	ld hl, BATTLEANIMSTRUCT_0B
-	add hl, bc
-	ld e, [hl]
-	ld d, 0
-	ld hl, Unknown_cde25
-	add hl, de
-	ld a, [hl]
-	ld hl, BATTLEANIMSTRUCT_0A
-	add hl, bc
-	ld [hl], a
-
-Functioncde20: ; cde20 (33:5e20)
-	ret
-
-Functioncde21: ; cde21 (33:5e21)
-	call DeinitBattleAnimation
-	ret
-
-; cde25 (33:5e25)
-
-Unknown_cde25: ; cde25
-	db $ec, $f8, $00
-; cde28
-
-Functioncde28: ; cde28 (33:5e28)
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	ld a, [hl]
-rept 2
-	inc [hl]
-endr
-	ld d, $4
-	call BattleAnim_Sine
-	ld hl, BATTLEANIMSTRUCT_09
-	add hl, bc
-	ld [hl], a
-	ld hl, BATTLEANIMSTRUCT_0A
-	add hl, bc
-	ld d, [hl]
-	ld hl, BATTLEANIMSTRUCT_10
-	ADD HL, BC
-	ld e, [hl]
-	ld hl, $ffa0
-	add hl, de
-	ld e, l
-	ld d, h
-	ld hl, BATTLEANIMSTRUCT_0A
-	add hl, bc
-	ld [hl], d
-	ld hl, BATTLEANIMSTRUCT_10
-	ADD HL, BC
-	ld [hl], e
-	ret
-
-Functioncde54: ; cde54 (33:5e54)
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	ld a, [hl]
-rept 2
-	dec [hl]
-endr
-	ld d, $10
-	call BattleAnim_Sine
-	ld hl, BATTLEANIMSTRUCT_0A
-	add hl, bc
-	ld [hl], a
-	ld hl, BATTLEANIMSTRUCT_07
-	add hl, bc
-	inc [hl]
-	ret
-
-Functioncde6b: ; cde6b (33:5e6b)
-	call BattleAnim_AnonJumptable
-.anon_jumptable
-	dw Functioncde72
-	dw Functioncde88
-
-Functioncde72: ; cde72 (33:5e72)
-	call Functionce72c
-	ld hl, BATTLEANIMSTRUCT_0B
-	add hl, bc
-	ld a, [hl]
-	and a
-	jr nz, .asm_cde83
-	ld hl, BATTLEANIMSTRUCT_01
-	add hl, bc
-	set 6, [hl]
-.asm_cde83
-	add $6a
-	call Functionce7bf
-
-Functioncde88: ; cde88 (33:5e88)
-	ret
-
-Functioncde89: ; cde89 (33:5e89)
-	call BattleAnim_AnonJumptable
-.anon_jumptable
-	dw Functioncde90
-	dw Functioncdebf
-
-Functioncde90: ; cde90 (33:5e90)
-	call Functionce72c
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	ld [hl], $0
-	ld hl, BATTLEANIMSTRUCT_0B
-	add hl, bc
-	ld e, [hl]
-	ld a, e
-	and $70
-	swap a
-	ld [hl], a
-	ld hl, BATTLEANIMSTRUCT_09
-	add hl, bc
-	ld a, e
-	and $80
-	jr nz, .asm_cdeb2
-	ld a, e
-	and $f
-	ld [hl], a
-	ret
-
-.asm_cdeb2
-	ld a, e
-	and $f
-	xor $ff
-	inc a
-	ld [hl], a
-	ld a, $6e
-	call Functionce7bf
-	ret
-
-Functioncdebf: ; cdebf (33:5ebf)
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	ld a, [hl]
-	and a
-	jr z, .asm_cdec9
-	dec [hl]
-	ret
-
-.asm_cdec9
-	ld hl, BATTLEANIMSTRUCT_0B
-	add hl, bc
-	ld a, [hl]
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	ld [hl], a
-	ld hl, BATTLEANIMSTRUCT_09
-	add hl, bc
-	ld a, [hl]
-	xor $ff
-	inc a
-	ld [hl], a
-	ret
-
-Functioncdedd: ; cdedd (33:5edd)
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	ld a, [hl]
-	ld d, $18
-	push af
-	push de
-	call BattleAnim_Sine
-	sra a
-	sra a
-	sra a
-	ld hl, BATTLEANIMSTRUCT_10
-	ADD HL, BC
-	add [hl]
-	ld hl, BATTLEANIMSTRUCT_0A
-	add hl, bc
-	ld [hl], a
-	pop de
-	pop af
-	call BattleAnim_Cosine
-	ld hl, BATTLEANIMSTRUCT_09
-	add hl, bc
-	ld [hl], a
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	inc [hl]
-	ld a, [hl]
-	and $7
-	ret nz
-	ld hl, BATTLEANIMSTRUCT_10
-	ADD HL, BC
-	ld a, [hl]
-	cp $28
-	jr nc, .asm_cdf17
-	inc [hl]
-	ret
-
-.asm_cdf17
-	call DeinitBattleAnimation
-	ret
-
-Functioncdf1b: ; cdf1b (33:5f1b)
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	ld a, [hl]
-	ld d, $18
-	push af
-	push de
-	call BattleAnim_Sine
-	sra a
-	sra a
-	sra a
-	ld hl, BATTLEANIMSTRUCT_10
-	ADD HL, BC
-	add [hl]
-	ld hl, BATTLEANIMSTRUCT_0A
-	add hl, bc
-	ld [hl], a
-	pop de
-	pop af
-	call BattleAnim_Cosine
-	ld hl, BATTLEANIMSTRUCT_09
-	add hl, bc
-	ld [hl], a
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	inc [hl]
-	ld a, [hl]
-	and $3
-	ret nz
-	ld hl, BATTLEANIMSTRUCT_10
-	ADD HL, BC
-	ld a, [hl]
-	cp $28
-	jr nc, .asm_cdf55
-	inc [hl]
-	ret
-
-.asm_cdf55
-	call DeinitBattleAnimation
-	ret
-
-Functioncdf59: ; cdf59 (33:5f59)
-	call BattleAnim_AnonJumptable
-.anon_jumptable
-	dw Functioncdf60
-	dw Functioncdedd
-
-Functioncdf60: ; cdf60 (33:5f60)
-	ld hl, BATTLEANIMSTRUCT_07
-	add hl, bc
-	ld a, [hl]
-	cp $84
-	jr nc, .asm_cdf88
-	inc [hl]
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	ld a, [hl]
-	inc [hl]
-	ld d, $18
-	call BattleAnim_Cosine
-	ld hl, BATTLEANIMSTRUCT_09
-	add hl, bc
-	ld [hl], a
-	ld hl, BATTLEANIMSTRUCT_07
-	add hl, bc
-	ld a, [hl]
-	and $1
-	ret nz
-	ld hl, BATTLEANIMSTRUCT_08
-	add hl, bc
-	dec [hl]
-	ret
-
-.asm_cdf88
-	call Functionce72c
-	ret
-
-Functioncdf8c: ; cdf8c (33:5f8c)
-	ld hl, BATTLEANIMSTRUCT_0B
-	add hl, bc
-	ld a, [hl]
-	ld d, $18
-	push af
-	push de
-	call BattleAnim_Sine
-	sra a
-	sra a
-	sra a
-	ld hl, BATTLEANIMSTRUCT_10
-	ADD HL, BC
-	add [hl]
-	ld hl, BATTLEANIMSTRUCT_0A
-	add hl, bc
-	ld [hl], a
-	pop de
-	pop af
-	call BattleAnim_Cosine
-	ld hl, BATTLEANIMSTRUCT_09
-	add hl, bc
-	ld [hl], a
-	ld hl, BATTLEANIMSTRUCT_0B
-	add hl, bc
-rept 2
-	inc [hl]
-endr
-	ld a, [hl]
-	and $7
-	ret nz
-	ld hl, BATTLEANIMSTRUCT_10
-	ADD HL, BC
-	ld a, [hl]
-	cp $e8
-	jr z, .asm_cdfc7
-	dec [hl]
-	ret
-
-.asm_cdfc7
-	call DeinitBattleAnimation
-	ret
-
-Functioncdfcb: ; cdfcb (33:5fcb)
-	ld hl, BATTLEANIMSTRUCT_0B
-	add hl, bc
-	ld a, [hl]
-	ld d, $18
-	push af
-	push de
-	call BattleAnim_Sine
-	sra a
-	sra a
-	sra a
-	ld hl, BATTLEANIMSTRUCT_10
-	ADD HL, BC
-	add [hl]
-	ld hl, BATTLEANIMSTRUCT_0A
-	add hl, bc
-	ld [hl], a
-	pop de
-	pop af
-	call BattleAnim_Cosine
-	ld hl, BATTLEANIMSTRUCT_09
-	add hl, bc
-	ld [hl], a
-	ld hl, BATTLEANIMSTRUCT_0B
-	add hl, bc
-rept 2
-	inc [hl]
-endr
-	ld a, [hl]
-	and $3
-	ret nz
-	ld hl, BATTLEANIMSTRUCT_10
-	ADD HL, BC
-	ld a, [hl]
-	cp $d0
-	jr z, .asm_ce007
-rept 2
-	dec [hl]
-endr
-	ret
-
-.asm_ce007
-	call DeinitBattleAnimation
-	ret
-
-Functionce00b: ; ce00b (33:600b)
-	call BattleAnim_AnonJumptable
-.anon_jumptable
-	dw Functionce014
-	dw Functionce023
-	dw Functionce05f
-
-Functionce014: ; ce014 (33:6014)
-	call Functionce72c
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	ld [hl], $34
-	ld hl, BATTLEANIMSTRUCT_10
-	ADD HL, BC
-	ld [hl], $10
-
-Functionce023: ; ce023 (33:6023)
-	ld hl, BATTLEANIMSTRUCT_07
-	add hl, bc
-	ld a, [hl]
-	cp $6c
-	jr c, .asm_ce02d
-	ret
-
-.asm_ce02d
-	ld a, $2
-	call Functionce70a
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	ld a, [hl]
-	ld hl, BATTLEANIMSTRUCT_10
-	ADD HL, BC
-	ld d, [hl]
-	call BattleAnim_Sine
-	bit 7, a
-	jr nz, .asm_ce046
-	xor $ff
-	inc a
-.asm_ce046
-	ld hl, BATTLEANIMSTRUCT_0A
-	add hl, bc
-	ld [hl], a
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	ld a, [hl]
-	sub $4
-	ld [hl], a
-	and $1f
-	cp $20
-	ret nz
-	ld hl, BATTLEANIMSTRUCT_10
-	ADD HL, BC
-	srl [hl]
-	ret
-
-Functionce05f: ; ce05f (33:605f)
-	call DeinitBattleAnimation
-	ret
-
-Functionce063: ; ce063 (33:6063)
-	call BattleAnim_AnonJumptable
-.anon_jumptable
-	dw Functionce06e
-	dw Functionce083
-	dw Functionce091
-	dw Functionce09e
-
-Functionce06e: ; ce06e (33:606e)
-	ld hl, BATTLEANIMSTRUCT_0B
-	add hl, bc
-	ld a, [hl]
-	ld hl, BATTLEANIMSTRUCT_0E
-	add hl, bc
-	ld [hl], a
-	ld hl, BATTLEANIMSTRUCT_08
-	add hl, bc
-	ld a, [hl]
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	ld [hl], a
-	ret
-
-Functionce083: ; ce083 (33:6083)
-	ld hl, BATTLEANIMSTRUCT_07
-	add hl, bc
-	ld a, [hl]
-	cp $58
-	ret nc
-	ld a, $2
-	call Functionce70a
-	ret
-
-Functionce091: ; ce091 (33:6091)
-	ld hl, BATTLEANIMSTRUCT_10
-	ADD HL, BC
-	ld a, [hl]
-	cp $20
-	jr c, Functionce09e
-	call DeinitBattleAnimation
-	ret
-
-Functionce09e: ; ce09e (33:609e)
-	ld hl, BATTLEANIMSTRUCT_10
-	ADD HL, BC
-	ld a, [hl]
-	ld d, $8
-	call BattleAnim_Sine
-	ld hl, BATTLEANIMSTRUCT_09
-	add hl, bc
-	ld [hl], a
-	sra a
-	xor $ff
-	inc a
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	add [hl]
-	ld hl, BATTLEANIMSTRUCT_08
-	add hl, bc
-	ld [hl], a
-	ld hl, BATTLEANIMSTRUCT_10
-	ADD HL, BC
-	ld a, [hl]
-	add $8
-	ld [hl], a
-	ret
-
-Functionce0c5: ; ce0c5 (33:60c5)
-	call BattleAnim_AnonJumptable
-.anon_jumptable
-	dw Functionce0ce
-	dw Functionce0f8
-	dw Functionce0dd
-
-Functionce0ce: ; ce0ce (33:60ce)
-	ld hl, BATTLEANIMSTRUCT_0B
-	add hl, bc
-	ld a, [hl]
-	and $f0
-	swap a
-	ld hl, BATTLEANIMSTRUCT_0E
-	add hl, bc
-	ld [hl], a
-	ret
-
-Functionce0dd: ; ce0dd (33:60dd)
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	ld a, [hl]
-	ld d, $10
-	call BattleAnim_Sine
-	ld hl, BATTLEANIMSTRUCT_0A
-	add hl, bc
-	bit 7, a
-	jr z, .asm_ce0f0
-	ld [hl], a
-.asm_ce0f0
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	ld a, [hl]
-	sub $4
-	ld [hl], a
-
-Functionce0f8: ; ce0f8 (33:60f8)
-	ld hl, BATTLEANIMSTRUCT_07
-	add hl, bc
-	ld a, [hl]
-	cp $84
-	jr c, .asm_ce105
-	call DeinitBattleAnimation
-	ret
-
-.asm_ce105
-	ld hl, BATTLEANIMSTRUCT_0B
-	add hl, bc
-	ld a, [hl]
-	call Functionce70a
-	ret
-
-Functionce10e: ; ce10e (33:610e)
-	call BattleAnim_AnonJumptable
-.anon_jumptable
-	dw Functionce115
-	dw Functionce12a
-
-Functionce115: ; ce115 (33:6115)
-	call Functionce72c
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	ld [hl], $28
-	ld hl, BATTLEANIMSTRUCT_08
-	add hl, bc
-	ld a, [hl]
-	sub $28
-	ld hl, BATTLEANIMSTRUCT_10
-	ADD HL, BC
-	ld [hl], a
-
-Functionce12a: ; ce12a (33:612a)
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
+	call .GetPointer
 	ld a, [hli]
-	ld d, [hl]
-	call BattleAnim_Sine
-	ld hl, BATTLEANIMSTRUCT_0A
-	add hl, bc
-	ld [hl], a
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	ld a, [hl]
-	ld hl, BATTLEANIMSTRUCT_0B
-	add hl, bc
-	and [hl]
-	jr nz, .asm_ce149
-	ld hl, BATTLEANIMSTRUCT_07
-	add hl, bc
-	dec [hl]
-.asm_ce149
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	inc [hl]
-	ld a, [hl]
-	and $3f
-	ret nz
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	ld [hl], $20
-	inc hl
-	srl [hl]
-	ret
-
-Functionce15c: ; ce15c (33:615c)
-	ld hl, BATTLEANIMSTRUCT_0B
-	add hl, bc
-	ld a, [hl]
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	ld d, [hl]
+	cp -2
+	jr z, .restart
+	cp -1
+	jr z, .repeat_last
 	push af
-	push de
-	call BattleAnim_Sine
-	ld hl, BATTLEANIMSTRUCT_0A
-	add hl, bc
-	ld [hl], a
-	pop de
-	pop af
-	call BattleAnim_Cosine
-	ld hl, BATTLEANIMSTRUCT_09
-	add hl, bc
-	ld [hl], a
-	ld hl, BATTLEANIMSTRUCT_0B
-	add hl, bc
-	inc [hl]
 	ld a, [hl]
-	and $1
-	jr nz, .asm_ce189
-	ld hl, BATTLEANIMSTRUCT_07
-	add hl, bc
-	dec [hl]
-.asm_ce189
-	ld hl, BATTLEANIMSTRUCT_0B
-	add hl, bc
-	ld a, [hl]
-	and $3
-	jr nz, .asm_ce197
-	ld hl, BATTLEANIMSTRUCT_08
-	add hl, bc
-	inc [hl]
-.asm_ce197
-	ld hl, BATTLEANIMSTRUCT_07
-	add hl, bc
-	ld a, [hl]
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	cp $5a
-	jr nc, .asm_ce1aa
-	ld a, [hl]
-	and a
-	jr z, .asm_ce1ac
-	dec [hl]
-	ret
-
-.asm_ce1aa
-	inc [hl]
-	ret
-
-.asm_ce1ac
-	call DeinitBattleAnimation
-	ret
-
-Functionce1b0: ; ce1b0 (33:61b0)
-	ld hl, BATTLEANIMSTRUCT_0B
-	add hl, bc
-	ld a, [hl]
-	inc [hl]
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	ld d, [hl]
-	push af
-	push de
-	call BattleAnim_Sine
-	ld hl, BATTLEANIMSTRUCT_0A
-	add hl, bc
-	ld [hl], a
-	pop de
-	pop af
-	call BattleAnim_Cosine
-	ld hl, BATTLEANIMSTRUCT_09
-	add hl, bc
-	ld [hl], a
-	ld hl, BATTLEANIMSTRUCT_10
-	ADD HL, BC
-	ld a, [hl]
-	inc [hl]
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	cp $40
-	jr nc, .asm_ce1df
-	inc [hl]
-	ret
-
-.asm_ce1df
-	ld a, [hl]
-	dec [hl]
-	and a
-	ret nz
-	call DeinitBattleAnimation
-	ret
-
-Functionce1e7: ; ce1e7 (33:61e7)
-	call BattleAnim_AnonJumptable
-.anon_jumptable
-	dw Functionce1ee
-	dw Functionce1fb
-
-Functionce1ee: ; ce1ee (33:61ee)
-	call Functionce72c
-	ld hl, BATTLEANIMSTRUCT_08
-	add hl, bc
-	ld a, [hl]
-	ld hl, BATTLEANIMSTRUCT_10
-	ADD HL, BC
-	ld [hl], a
-
-Functionce1fb: ; ce1fb (33:61fb)
-	ld hl, BATTLEANIMSTRUCT_0B
-	add hl, bc
-	ld a, [hl]
-	ld d, $30
-	call BattleAnim_Sine
-	ld hl, BATTLEANIMSTRUCT_10
-	ADD HL, BC
-	add [hl]
-	ld hl, BATTLEANIMSTRUCT_08
-	add hl, bc
-	ld [hl], a
-	ld hl, BATTLEANIMSTRUCT_0B
-	add hl, bc
-	ld a, [hl]
-	add $8
-	ld d, $30
-	call BattleAnim_Cosine
-	ld hl, BATTLEANIMSTRUCT_09
-	add hl, bc
-	ld [hl], a
-	ld hl, BATTLEANIMSTRUCT_0B
-	add hl, bc
-	inc [hl]
-	ret
-
-Functionce226: ; ce226 (33:6226)
-	call BattleAnim_AnonJumptable
-.anon_jumptable
-	dw Functionce22d
-	dw Functionce254
-
-Functionce22d: ; ce22d (33:622d)
-	call Functionce72c
-	ld hl, BATTLEANIMSTRUCT_0B
-	add hl, bc
-	ld a, [hl]
-	ld d, $10
-	call BattleAnim_Sine
-	ld hl, BATTLEANIMSTRUCT_0A
-	add hl, bc
-	ld [hl], a
-	ld hl, BATTLEANIMSTRUCT_0B
-	add hl, bc
-	ld a, [hl]
-	ld d, $10
-	call BattleAnim_Cosine
-	ld hl, BATTLEANIMSTRUCT_09
-	add hl, bc
-	ld [hl], a
-	ld hl, BATTLEANIMSTRUCT_10
-	ADD HL, BC
-	ld [hl], $f
-
-Functionce254: ; ce254 (33:6254)
-	ret
-
-Functionce255: ; ce255 (33:6255)
-	call BattleAnim_AnonJumptable
-.anon_jumptable
-	dw Functionce260
-	dw Functionce274
-	dw Functionce278
-	dw Functionce289
-
-Functionce260: ; ce260 (33:6260)
-	call Functionce72c
-	ld a, [hBattleTurn]
-	and a
-	jr nz, .asm_ce26c
-	ld a, $f0
-	jr .asm_ce26e
-
-.asm_ce26c
-	ld a, $cc
-.asm_ce26e
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	ld [hl], a
-	ret
-
-Functionce274: ; ce274 (33:6274)
-	call Functionce29f
-	ret
-
-Functionce278: ; ce278 (33:6278)
-	call Functionce29f
-	ld hl, BATTLEANIMSTRUCT_07
-	add hl, bc
-	ld a, [hl]
-	cp $84
-	ret nc
-	ld a, $4
-	call Functionce70a
-	ret
-
-Functionce289: ; ce289 (33:6289)
-	call Functionce29f
-	ld hl, BATTLEANIMSTRUCT_07
-	add hl, bc
-	ld a, [hl]
-	cp $d0
-	jr nc, .asm_ce29b
-	ld a, $4
-	call Functionce70a
-	ret
-
-.asm_ce29b
-	call DeinitBattleAnimation
-	ret
-
-Functionce29f: ; ce29f (33:629f)
-	ld hl, BATTLEANIMSTRUCT_10
-	ADD HL, BC
-	ld a, [hl]
-	and $7
-	inc [hl]
-	srl a
-	ld e, a
-	ld d, $0
-	ld a, [hSGB]
-	and a
-	jr nz, .asm_ce2b6
-	ld hl, Unknown_ce2c4
-	jr .asm_ce2b9
-
-.asm_ce2b6
-	ld hl, Unknown_ce2c8
-.asm_ce2b9
-	add hl, de
-	ld a, [hl]
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	and [hl]
-	ld [wOBP0], a
-	ret
-
-; ce2c4 (33:62c4)
-
-Unknown_ce2c4: ; ce2c4
-	db $ff, $aa, $55, $aa
-Unknown_ce2c8: ; ce2c8
-	db $ff, $ff, $00, $00
-; ce2cc
-
-Functionce2cc: ; ce2cc (33:62cc)
-	ld hl, BATTLEANIMSTRUCT_0B
-	add hl, bc
-	ld a, [hl]
-	ld d, $18
-	call BattleAnim_Sine
-	sra a
-	sra a
-	sra a
-	ld hl, BATTLEANIMSTRUCT_10
-	ADD HL, BC
-	add [hl]
-	ld hl, BATTLEANIMSTRUCT_0A
-	add hl, bc
-	ld [hl], a
-	ld hl, BATTLEANIMSTRUCT_0B
-	add hl, bc
-	ld a, [hl]
-	inc [hl]
-	ld d, $18
-	call BattleAnim_Cosine
-	ld hl, BATTLEANIMSTRUCT_09
-	add hl, bc
-	ld [hl], a
-	ld hl, BATTLEANIMSTRUCT_10
-	ADD HL, BC
-rept 2
-	dec [hl]
-endr
-	ret
-
-Functionce2fd: ; ce2fd (33:62fd)
-	call BattleAnim_AnonJumptable
-.anon_jumptable
-	dw Functionce306
-	dw Functionce330
-	dw Functionce34c
-
-Functionce306: ; ce306 (33:6306)
-	ld hl, BATTLEANIMSTRUCT_0A
-	add hl, bc
-	ld a, [hl]
-	cp $e0
-	jr nz, .asm_ce319
-	call Functionce72c
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	ld [hl], $2
-	ret
-
-.asm_ce319
-	ld d, a
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	ld e, [hl]
-	ld hl, hPushOAM ; $ff80
-	add hl, de
-	ld e, l
-	ld d, h
-	ld hl, BATTLEANIMSTRUCT_0A
-	add hl, bc
-	ld [hl], d
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	ld [hl], e
-	ret
-
-Functionce330: ; ce330 (33:6330)
-	ld hl, BATTLEANIMSTRUCT_10
-	ADD HL, BC
-	ld a, [hl]
-	and a
-	jr z, .asm_ce33a
-	dec [hl]
-	ret
-
-.asm_ce33a
-	ld [hl], $4
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	ld a, [hl]
-	xor $ff
-	inc a
-	ld [hl], a
-	ld hl, BATTLEANIMSTRUCT_0A
-	add hl, bc
-	add [hl]
-	ld [hl], a
-	ret
-
-Functionce34c: ; ce34c (33:634c)
-	ld hl, BATTLEANIMSTRUCT_07
-	add hl, bc
-	ld a, [hl]
-	cp $84
-	jr nc, .asm_ce35b
-	ld a, $4
-	call Functionce70a
-	ret
-
-.asm_ce35b
-	call DeinitBattleAnimation
-	ret
-
-Functionce35f: ; ce35f (33:635f)
-	call BattleAnim_AnonJumptable
-.anon_jumptable
-	dw Functionce366
-	dw Functionce375
-
-Functionce366: ; ce366 (33:6366)
-	call Functionce72c
-	ld hl, BATTLEANIMSTRUCT_0B
-	add hl, bc
-	ld a, [hl]
-	and $7f
-	add $81
-	call Functionce7bf
-
-Functionce375: ; ce375 (33:6375)
-	ld hl, BATTLEANIMSTRUCT_0B
-	add hl, bc
-	bit 7, [hl]
-	jr nz, .asm_ce383
-	ld hl, BATTLEANIMSTRUCT_09
-	add hl, bc
-	inc [hl]
-	ret
-
-.asm_ce383
-	ld hl, BATTLEANIMSTRUCT_09
-	add hl, bc
-	dec [hl]
-	ret
-
-Functionce389: ; ce389 (33:6389)
-	call BattleAnim_AnonJumptable
-.anon_jumptable
-	dw Functionce392
-	dw Functionce39c
-	dw Functionce3ae
-
-Functionce392: ; ce392 (33:6392)
-	call Functionce72c
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	ld [hl], $c
-	ret
-
-Functionce39c: ; ce39c (33:639c)
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	ld a, [hl]
-	and a
-	jr z, .asm_ce3a6
-	dec [hl]
-	ret
-
-.asm_ce3a6
-	call Functionce72c
-	ld a, $20
-	call Functionce7bf
-
-Functionce3ae: ; ce3ae (33:63ae)
-	ld hl, BATTLEANIMSTRUCT_0A
-	add hl, bc
-	dec [hl]
-	ret
-
-Functionce3b4: ; ce3b4 (33:63b4)
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	ld a, [hl]
-rept 2
-	inc [hl]
-endr
-	push af
-	ld d, $2
-	call BattleAnim_Sine
-	ld hl, BATTLEANIMSTRUCT_0A
-	add hl, bc
-	ld [hl], a
-	pop af
-	ld d, $8
-	call BattleAnim_Cosine
-	ld hl, BATTLEANIMSTRUCT_09
-	add hl, bc
-	ld [hl], a
-	ret
-
-Functionce3d2: ; ce3d2 (33:63d2)
-	ld hl, BATTLEANIMSTRUCT_0A
-	add hl, bc
-	ld a, [hl]
-	cp $20
-	jr c, .asm_ce3df
-	call DeinitBattleAnimation
-	ret
-
-.asm_ce3df
-	ld hl, BATTLEANIMSTRUCT_0B
-	add hl, bc
-	ld a, [hl]
-	ld d, $8
-	call BattleAnim_Cosine
-	ld hl, BATTLEANIMSTRUCT_09
-	add hl, bc
-	ld [hl], a
-	ld hl, BATTLEANIMSTRUCT_0B
-	add hl, bc
-	ld a, [hl]
-	add $2
-	ld [hl], a
-	and $7
-	ret nz
-	ld hl, BATTLEANIMSTRUCT_0A
-	add hl, bc
-	inc [hl]
-	ret
-
-Functionce3ff: ; ce3ff (33:63ff)
-	call BattleAnim_AnonJumptable
-.anon_jumptable
-	dw Functionce406
-	dw Functionce412
-
-Functionce406: ; ce406 (33:6406)
-	ld hl, BATTLEANIMSTRUCT_0B
-	add hl, bc
-	ld a, [hl]
-	ld hl, BATTLEANIMSTRUCT_07
-	add hl, bc
-	add [hl]
-	ld [hl], a
-	ret
-
-Functionce412: ; ce412 (33:6412)
-	call DeinitBattleAnimation
-	ret
-
-Functionce416: ; ce416 (33:6416)
-	ld hl, BATTLEANIMSTRUCT_0B
-	add hl, bc
-	ld a, [hl]
-	ld d, $18
-	push af
-	push de
-	call BattleAnim_Sine
-	ld hl, BATTLEANIMSTRUCT_0A
-	add hl, bc
-	ld [hl], a
-	pop de
-	pop af
-	call BattleAnim_Cosine
-	ld hl, BATTLEANIMSTRUCT_09
-	add hl, bc
-	sra a
-	ld [hl], a
-	ld hl, BATTLEANIMSTRUCT_0B
-	add hl, bc
-	ld a, [hl]
-	inc [hl]
-	ret
-
-Functionce43a: ; ce43a (33:643a)
-	call BattleAnim_AnonJumptable
-.anon_jumptable
-	dw Functionce443
-	dw Functionce465
-	dw Functionce490
-
-Functionce443: ; ce443 (33:6443)
-	call Functionce72c
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	ld [hl], $28
-	ld hl, BATTLEANIMSTRUCT_0B
-	add hl, bc
-	ld a, [hl]
-	and $f
-	ld hl, BATTLEANIMSTRUCT_03
-	add hl, bc
-	add [hl]
-	call Functionce7bf
-	ld hl, BATTLEANIMSTRUCT_0B
-	add hl, bc
-	ld a, [hl]
-	and $f0
-	or $8
-	ld [hl], a
-
-Functionce465: ; ce465 (33:6465)
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	ld a, [hl]
-	and a
-	jr z, .asm_ce48b
-	dec [hl]
-	add $8
-	ld d, a
-	ld hl, BATTLEANIMSTRUCT_0B
-	add hl, bc
-	ld a, [hl]
-	push af
-	push de
-	call BattleAnim_Sine
-	ld hl, BATTLEANIMSTRUCT_0A
-	add hl, bc
-	ld [hl], a
-	pop de
-	pop af
-	call BattleAnim_Cosine
-	ld hl, BATTLEANIMSTRUCT_09
-	add hl, bc
-	ld [hl], a
-	ret
-
-.asm_ce48b
-	ld [hl], $10
-	call Functionce72c
-
-Functionce490: ; ce490 (33:6490)
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	ld a, [hl]
-	dec [hl]
-	and a
-	ret nz
-	call DeinitBattleAnimation
-	ret
-
-Functionce49c: ; ce49c (33:649c)
-	call BattleAnim_AnonJumptable
-.anon_jumptable
-	dw Functionce4a3
-	dw Functionce4b0
-
-Functionce4a3: ; ce4a3 (33:64a3)
-	call Functionce72c
-	ld hl, BATTLEANIMSTRUCT_0B
-	add hl, bc
-	ld a, $24
-	add [hl]
-	call Functionce7bf
-
-Functionce4b0: ; ce4b0 (33:64b0)
-	ld hl, BATTLEANIMSTRUCT_0A
-	add hl, bc
-	ld a, [hl]
-	cp $38
-	jr nc, .asm_ce4d8
-	inc [hl]
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	ld a, [hl]
-	inc [hl]
-	ld d, $18
-	call BattleAnim_Cosine
-	ld hl, BATTLEANIMSTRUCT_09
-	add hl, bc
-	ld [hl], a
-	ld hl, BATTLEANIMSTRUCT_08
-	add hl, bc
-	ld a, [hl]
-	and $1
-	ret nz
-	ld hl, BATTLEANIMSTRUCT_07
-	add hl, bc
-	dec [hl]
-	ret
-
-.asm_ce4d8
-	call DeinitBattleAnimation
-	ret
-
-Functionce4dc: ; ce4dc (33:64dc)
-	ld hl, BATTLEANIMSTRUCT_0B
-	add hl, bc
-	ld a, [hl]
-	and a
-	ret z
-	ld d, a
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	ld a, [hl]
-	inc [hl]
-	call BattleAnim_Sine
-	bit 7, a
-	jr nz, .asm_ce4f4
-	xor $ff
-	inc a
-.asm_ce4f4
-	ld hl, BATTLEANIMSTRUCT_0A
-	add hl, bc
-	ld [hl], a
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	ld a, [hl]
-	and $1f
-	ret nz
-	ld hl, BATTLEANIMSTRUCT_0B
-	add hl, bc
-	srl [hl]
-	ret
-
-Functionce508: ; ce508 (33:6508)
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	ld a, [hl]
-	cp $10
-	jr nc, .asm_ce52e
-rept 2
-	inc [hl]
-endr
-	ld d, a
-	ld hl, BATTLEANIMSTRUCT_0B
-	add hl, bc
-	ld a, [hl]
-	push af
-	push de
-	call BattleAnim_Sine
-	ld hl, BATTLEANIMSTRUCT_0A
-	add hl, bc
-	ld [hl], a
-	pop de
-	pop af
-	call BattleAnim_Cosine
-	ld hl, BATTLEANIMSTRUCT_09
-	add hl, bc
-	ld [hl], a
-	ret
-
-.asm_ce52e
-	call DeinitBattleAnimation
-	ret
-
-Functionce532: ; ce532 (33:6532)
-	ld hl, BATTLEANIMSTRUCT_0B
-	add hl, bc
-	ld e, [hl]
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	ld d, [hl]
-	ld a, e
-	and $c0
-	rlca
-	rlca
-	add [hl]
-	ld [hl], a
-	ld a, e
-	and $3f
-	push af
-	push de
-	call BattleAnim_Sine
-	ld hl, BATTLEANIMSTRUCT_0A
-	add hl, bc
-	ld [hl], a
-	pop de
-	pop af
-	call BattleAnim_Cosine
-	ld hl, BATTLEANIMSTRUCT_09
-	add hl, bc
-	ld [hl], a
-	ret
-
-Functionce55b: ; ce55b (33:655b)
-	call BattleAnim_AnonJumptable
-.anon_jumptable
-	dw Functionce564
-	dw Functionce56e
-	dw Functionce577
-
-Functionce564: ; ce564 (33:6564)
-	ld d, $18
-	ld hl, BATTLEANIMSTRUCT_0B
-	add hl, bc
-	ld a, [hl]
-	inc [hl]
-	jr asm_ce58f
-
-Functionce56e: ; ce56e (33:656e)
-	call Functionce72c
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	ld [hl], $18
-
-Functionce577: ; ce577 (33:6577)
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	ld a, [hl]
-	cp $80
-	jr nc, .asm_ce58b
-	ld d, a
-	add $8
-	ld [hl], a
-	ld hl, BATTLEANIMSTRUCT_0B
-	add hl, bc
-	ld a, [hl]
-	jr asm_ce58f
-
-.asm_ce58b
-	call DeinitBattleAnimation
-	ret
-
-asm_ce58f: ; ce58f (33:658f)
-	call Functionce6f1
-	ret
-
-Functionce593: ; ce593 (33:6593)
-	call BattleAnim_AnonJumptable
-.anon_jumptable
-	dw Functionce5b3
-	dw Functionce59a
-
-Functionce59a: ; ce59a (33:659a)
-	ld hl, BATTLEANIMSTRUCT_07
-	add hl, bc
-	ld a, [hl]
-	cp $30
-	jr c, .asm_ce5b0
-	ld hl, BATTLEANIMSTRUCT_07
-	add hl, bc
-rept 2
-	dec [hl]
-endr
-	ld hl, BATTLEANIMSTRUCT_08
-	add hl, bc
-rept 2
-	inc [hl]
-endr
-	ret
-
-.asm_ce5b0
-	call DeinitBattleAnimation
-
-Functionce5b3: ; ce5b3 (33:65b3)
-	ret
-
-Functionce5b4: ; ce5b4 (33:65b4)
-	ld d, $50
-	ld hl, BATTLEANIMSTRUCT_0B
-	add hl, bc
-	ld a, [hl]
-rept 2
-	inc [hl]
-endr
-	push af
-	push de
-	call BattleAnim_Sine
-	sra a
-	sra a
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	add [hl]
-	inc [hl]
-	ld hl, BATTLEANIMSTRUCT_0A
-	add hl, bc
-	ld [hl], a
-	pop de
-	pop af
-	call BattleAnim_Cosine
-	ld hl, BATTLEANIMSTRUCT_09
-	add hl, bc
-	ld [hl], a
-	ret
-
-Functionce5dc: ; ce5dc (33:65dc)
-	ld hl, BATTLEANIMSTRUCT_0A
-	add hl, bc
-	ld a, [hl]
-	cp $d0
-	jr z, .asm_ce5ea
-rept 4
-	dec [hl]
-endr
-	ret
-
-.asm_ce5ea
-	call DeinitBattleAnimation
-	ret
-
-Functionce5ee: ; ce5ee (33:65ee)
-	call BattleAnim_AnonJumptable
-.anon_jumptable
-	dw Functionce5f9
-	dw Functionce60a
-	dw Functionce622
-	dw Functionce618
-
-Functionce5f9: ; ce5f9 (33:65f9)
-	ld hl, BATTLEANIMSTRUCT_0B
-	add hl, bc
-	ld a, [hl]
-	and a
-	jr nz, asm_ce61c
-	call Functionce72c
-	ld hl, BATTLEANIMSTRUCT_0A
-	add hl, bc
-	ld [hl], $ec
-
-Functionce60a: ; ce60a (33:660a)
-	ld hl, BATTLEANIMSTRUCT_0A
-	add hl, bc
-	ld a, [hl]
-	cp $4
-	jr z, Functionce618
-rept 4
-	inc [hl]
-endr
-	ret
-
-Functionce618: ; ce618 (33:6618)
-	call DeinitBattleAnimation
-	ret
-
-asm_ce61c: ; ce61c (33:661c)
-	call Functionce72c
-	call Functionce72c
-
-Functionce622: ; ce622 (33:6622)
-	ld hl, BATTLEANIMSTRUCT_0A
-	add hl, bc
-	ld a, [hl]
-	cp $d8
-	ret z
-rept 4
-	dec [hl]
-endr
-	ret
-
-Functionce62f: ; ce62f (33:662f)
-	call BattleAnim_AnonJumptable
-.anon_jumptable
-	dw Functionce63a
-	dw Functionce648
-	dw Functionce65c
-	dw Functionce672
-
-Functionce63a: ; ce63a (33:663a)
-	ld hl, BATTLEANIMSTRUCT_0B
-	add hl, bc
-	ld a, [hl]
-	ld hl, BATTLEANIMSTRUCT_0E
-	add hl, bc
-	ld [hl], a
-	call Functionce72c
-	ret
-
-Functionce648: ; ce648 (33:6648)
-	ld hl, BATTLEANIMSTRUCT_0A
-	add hl, bc
-	ld a, [hl]
-	add $4
-	cp $70
-	jr c, .asm_ce654
-	xor a
-.asm_ce654
-	ld [hl], a
-	ld hl, BATTLEANIMSTRUCT_09
-	add hl, bc
-rept 2
-	inc [hl]
-endr
-	ret
-
-Functionce65c: ; ce65c (33:665c)
-	ld hl, BATTLEANIMSTRUCT_0A
-	add hl, bc
-	ld a, [hl]
-	add $4
-	cp $70
-	jr c, .asm_ce668
-	xor a
-.asm_ce668
-	ld [hl], a
-	ld hl, BATTLEANIMSTRUCT_09
-	add hl, bc
-	ld a, [hl]
-	add $8
-	ld [hl], a
-	ret
-
-Functionce672: ; ce672 (33:6672)
-	ld hl, BATTLEANIMSTRUCT_0A
-	add hl, bc
-	ld a, [hl]
-	add $4
-	cp $70
-	jr c, .asm_ce67e
-	xor a
-.asm_ce67e
-	ld [hl], a
-	ld hl, BATTLEANIMSTRUCT_09
-	add hl, bc
-	ld a, [hl]
-	add $4
-	ld [hl], a
-	ret
-
-Functionce688: ; ce688 (33:6688)
-	ld hl, BATTLEANIMSTRUCT_07
-	add hl, bc
-	ld d, [hl]
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	ld e, [hl]
-	ld hl, BATTLEANIMSTRUCT_0B
-	add hl, bc
-	ld a, [hl]
-	ld l, a
-	and $f0
-	ld h, a
-	swap a
-	or h
-	ld h, a
-	ld a, l
-	and $f
-	swap a
-	ld l, a
-	add hl, de
-	ld e, l
-	ld d, h
-	ld hl, BATTLEANIMSTRUCT_07
-	add hl, bc
-	ld [hl], d
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	ld [hl], e
-	ret
-
-Functionce6b3: ; ce6b3 (33:66b3)
-	ld d, $18
-	ld hl, BATTLEANIMSTRUCT_0B
-	add hl, bc
-	ld a, [hl]
-	inc [hl]
-	call Functionce6f1
-	ret
-
-Functionce6bf: ; ce6bf (33:66bf)
-	ld d, $18
-	ld hl, BATTLEANIMSTRUCT_10
-	ADD HL, BC
-	ld a, [hl]
-	inc [hl]
-	srl a
-	ld hl, BATTLEANIMSTRUCT_0B
-	add hl, bc
-	add [hl]
-	call Functionce6f1
-	ret
-
-Functionce6d2: ; ce6d2 (33:66d2)
-	ld hl, BATTLEANIMSTRUCT_0F
-	add hl, bc
-	ld a, [hl]
-	cp $20
-	jr nc, .asm_ce6ed
-	inc [hl]
-	ld hl, BATTLEANIMSTRUCT_0B
-	add hl, bc
-	ld d, [hl]
-	call BattleAnim_Sine
-	xor $ff
-	inc a
-	ld hl, BATTLEANIMSTRUCT_0A
-	add hl, bc
-	ld [hl], a
-	ret
-
-.asm_ce6ed
-	call DeinitBattleAnimation
-	ret
-
-Functionce6f1: ; ce6f1 (33:66f1)
-	push af
-	push de
-	call BattleAnim_Sine
-	sra a
-	sra a
-	ld hl, BATTLEANIMSTRUCT_0A
-	add hl, bc
-	ld [hl], a
-	pop de
-	pop af
-	call BattleAnim_Cosine
-	ld hl, BATTLEANIMSTRUCT_09
-	add hl, bc
-	ld [hl], a
-	ret
-
-Functionce70a: ; ce70a (33:670a)
-	and $f
-	ld e, a
-	ld hl, BATTLEANIMSTRUCT_07
-	add hl, bc
-	add [hl]
-	ld [hl], a
-	srl e
-	ld hl, BATTLEANIMSTRUCT_08
-	add hl, bc
-.asm_ce719
-	dec [hl]
-	dec e
-	jr nz, .asm_ce719
-	ret
-
-BattleAnim_AnonJumptable: ; ce71e (33:671e)
-	pop de
-	ld hl, BATTLEANIMSTRUCT_0E
-	add hl, bc
-	ld l, [hl]
-	ld h, $0
-	add hl, hl
-	add hl, de
-	ld a, [hli]
-	ld h, [hl]
-	ld l, a
-	jp [hl]
-
-Functionce72c: ; ce72c (33:672c)
-	ld hl, BATTLEANIMSTRUCT_0E
-	add hl, bc
-	inc [hl]
-	ret
-
-BattleAnim_Cosine: ; ce732 (33:6732)
-	add $10
-BattleAnim_Sine: ; ce734 (33:6734)
-	and $3f
-	cp $20
-	jr nc, .negative
-	call .ApplySineWave
-	ld a, h
-	ret
-
-.negative
-	and $1f
-	call .ApplySineWave
-	ld a, h
-	xor $ff
-	inc a
-	ret
-
-.ApplySineWave: ; ce749 (33:6749)
-	ld e, a
-	ld a, d
-	ld d, 0
-	ld hl, BattleAnimSineWave
-rept 2
-	add hl, de
-endr
-	ld e, [hl]
-	inc hl
-	ld d, [hl]
-	ld hl, $0
-.multiply
-	srl a
-	jr nc, .even
-	add hl, de
-.even
-	sla e
-	rl d
-	and a
-	jr nz, .multiply
-	ret
-
-BattleAnim_Sine_e: ; ce765 (33:6765)
-	ld a, e
-	call BattleAnim_Sine
-	ld e, a
-	ret
-
-BattleAnim_Cosine_e: ; ce76b (33:676b)
-	ld a, e
-	call BattleAnim_Cosine
-	ld e, a
-	ret
-
-; ce771 (33:6771)
-
-BattleAnim_AbsSinePrecise: ; ce771
-	ld a, e
-	call BattleAnim_Sine
-	ld e, l
-	ld d, h
-	ret
-
-; ce778
-
-BattleAnim_AbsCosinePrecise: ; ce778
-	ld a, e
-	call BattleAnim_Cosine
-	ld e, l
-	ld d, h
-	ret
-
-; ce77f
-
-BattleAnimSineWave: ; ce77f
-	sine_wave $100
-; ce7bf
-
-Functionce7bf: ; ce7bf (33:67bf)
-	ld hl, BATTLEANIMSTRUCT_03
-	add hl, bc
-	ld [hl], a
-	ld hl, BATTLEANIMSTRUCT_0C
-	add hl, bc
-	ld [hl], $0
-	ld hl, BATTLEANIMSTRUCT_0D
-	add hl, bc
-	ld [hl], $ff
-	ret
-
-Functionce7d1: ; ce7d1
-.asm_ce7d1
-	ld hl, BATTLEANIMSTRUCT_0C
-	add hl, bc
-	ld a, [hl]
-	and a
-	jr z, .asm_ce7e1
-	dec [hl]
-	call Functionce823
-	ld a, [hli]
-	push af
-	jr .asm_ce7fd
-
-.asm_ce7e1
-	ld hl, BATTLEANIMSTRUCT_0D
-	add hl, bc
-	inc [hl]
-	call Functionce823
-	ld a, [hli]
-	cp $fe
-	jr z, .asm_ce815
-	cp $ff
-	jr z, .asm_ce807
-	push af
-	ld a, [hl]
 	push hl
 	and $3f
-	ld hl, BATTLEANIMSTRUCT_0C
+	ld hl, BATTLEANIMSTRUCT_DURATION
 	add hl, bc
 	ld [hl], a
 	pop hl
 
-.asm_ce7fd
+.okay
 	ld a, [hl]
 	and $c0
 	srl a
@@ -4842,44 +564,42 @@
 	pop af
 	ret
 
-.asm_ce807
+.repeat_last
 	xor a
-	ld hl, BATTLEANIMSTRUCT_0C
+	ld hl, BATTLEANIMSTRUCT_DURATION
 	add hl, bc
 	ld [hl], a
-	ld hl, BATTLEANIMSTRUCT_0D
+	ld hl, BATTLEANIMSTRUCT_FRAME
 	add hl, bc
-rept 2
 	dec [hl]
-endr
-	jr .asm_ce7d1
+	dec [hl]
+	jr .loop
 
-.asm_ce815
+.restart
 	xor a
-	ld hl, BATTLEANIMSTRUCT_0C
+	ld hl, BATTLEANIMSTRUCT_DURATION
 	add hl, bc
 	ld [hl], a
 	dec a
-	ld hl, BATTLEANIMSTRUCT_0D
+	ld hl, BATTLEANIMSTRUCT_FRAME
 	add hl, bc
 	ld [hl], a
-	jr .asm_ce7d1
+	jr .loop
 
 ; ce823
 
-Functionce823: ; ce823
-	ld hl, BATTLEANIMSTRUCT_03
+.GetPointer: ; ce823
+	ld hl, BATTLEANIMSTRUCT_FRAMESET_ID
 	add hl, bc
 	ld e, [hl]
 	ld d, 0
-	ld hl, Unknown_ce85e
-rept 2
+	ld hl, BattleAnimFrameData
 	add hl, de
-endr
+	add hl, de
 	ld e, [hl]
 	inc hl
 	ld d, [hl]
-	ld hl, BATTLEANIMSTRUCT_0D
+	ld hl, BATTLEANIMSTRUCT_FRAME
 	add hl, bc
 	ld l, [hl]
 	ld h, $0
@@ -4889,13 +609,12 @@
 
 ; ce83c
 
-Functionce83c: ; ce83c
+GetBattleAnimOAMPointer: ; ce83c
 	ld l, a
 	ld h, 0
-	ld de, Unknown_ceeae
-rept 2
+	ld de, BattleAnimOAMData
 	add hl, hl
-endr
+	add hl, hl
 	add hl, de
 	ret
 
@@ -4905,9 +624,8 @@
 	push hl
 	ld l, a
 	ld h, 0
-rept 2
 	add hl, hl
-endr
+	add hl, hl
 	ld de, AnimObjGFX
 	add hl, de
 	ld c, [hl]
@@ -4925,1700 +643,6 @@
 
 ; ce85e (33:685e)
 
-Unknown_ce85e: ; ce85e
-; ANIM_OBJ constants
-	dw Unknown_ce9d0
-	dw Unknown_ce9d3
-	dw Unknown_ce9d6
-	dw Unknown_ce9d9
-	dw Unknown_ce9dc
-	dw Unknown_ce9df
-	dw Unknown_ce9e2
-	dw Unknown_ce9e5
-	dw Unknown_cea6b
-	dw Unknown_cea74
-	dw Unknown_cea7d
-	dw Unknown_cea80
-	dw Unknown_cea83
-	dw Unknown_cea86
-	dw Unknown_cea91
-	dw Unknown_cea94
-	dw Unknown_cea99
-	dw Unknown_cea9e
-	dw Unknown_ceaaf
-	dw Unknown_ceabc
-	dw Unknown_cead3
-	dw Unknown_cead6
-	dw Unknown_ceadb
-	dw Unknown_ceade
-	dw Unknown_ceb06
-	dw Unknown_ceb0d
-	dw Unknown_ceb10
-	dw Unknown_ceb13
-	dw Unknown_ceb16
-	dw Unknown_ceb19
-	dw Unknown_ceb1c
-	dw Unknown_ceb1f
-	dw Unknown_ceb26
-	dw Unknown_ceb2b
-	dw Unknown_ceb2e
-	dw Unknown_ceb37
-	dw Unknown_ceb3a
-	dw Unknown_ceb3d
-	dw Unknown_ceb40
-	dw Unknown_ceb43
-	dw Unknown_ceb46
-	dw Unknown_ceb4b
-	dw Unknown_ceb50
-	dw Unknown_ceb63
-	dw Unknown_ceb68
-	dw Unknown_ceb6d
-	dw Unknown_ceb70
-	dw Unknown_ceb78
-	dw Unknown_ceb89
-	dw Unknown_ceb8e
-	dw Unknown_ceb97
-	dw Unknown_ceba0
-	dw Unknown_ceba9
-	dw Unknown_cebb0
-	dw Unknown_cebc1
-	dw Unknown_cebca
-	dw Unknown_cebcf
-	dw Unknown_cebd4
-	dw Unknown_cebd9
-	dw Unknown_cebdc
-	dw Unknown_cebdf
-	dw Unknown_cebe2
-	dw Unknown_ce9f6
-	dw Unknown_cea0b
-	dw Unknown_cea20
-	dw Unknown_cea35
-	dw Unknown_cea50
-	dw Unknown_cebe5
-	dw Unknown_cebf3
-	dw Unknown_cec0f
-	dw Unknown_cec20
-	dw Unknown_cec25
-	dw Unknown_cec2a
-	dw Unknown_cec37
-	dw Unknown_cec44
-	dw Unknown_cec4d
-	dw Unknown_cebec
-	dw Unknown_cec56
-	dw Unknown_cec67
-	dw Unknown_cec72
-	dw Unknown_cec77
-	dw Unknown_cec7c
-	dw Unknown_cec7f
-	dw Unknown_cec86
-	dw Unknown_cec8b
-	dw Unknown_cec92
-	dw Unknown_ceaf3
-	dw Unknown_ceaf6
-	dw Unknown_ceb01
-	dw Unknown_cec97
-	dw Unknown_cec9a
-	dw Unknown_cec9d
-	dw Unknown_ceca0
-	dw Unknown_cecab
-	dw Unknown_cecb0
-	dw Unknown_cecc9
-	dw Unknown_ceccc
-	dw Unknown_cece7
-	dw Unknown_cecec
-	dw Unknown_cecf1
-	dw Unknown_cecf4
-	dw Unknown_cecf7
-	dw Unknown_cecfa
-	dw Unknown_ced09
-	dw Unknown_ced0c
-	dw Unknown_ced19
-	dw Unknown_ced22
-	dw Unknown_ced2b
-	dw Unknown_ced32
-	dw Unknown_ced39
-	dw Unknown_ced3c
-	dw Unknown_ced3f
-	dw Unknown_ced44
-	dw Unknown_ced49
-	dw Unknown_ced4c
-	dw Unknown_ced4f
-	dw Unknown_ced54
-	dw Unknown_ced57
-	dw Unknown_ced5a
-	dw Unknown_ced5d
-	dw Unknown_ced62
-	dw Unknown_ced65
-	dw Unknown_cecb3
-	dw Unknown_ced72
-	dw Unknown_ced75
-	dw Unknown_ced88
-	dw Unknown_cec08
-	dw Unknown_ced8b
-	dw Unknown_ced8e
-	dw Unknown_ced91
-	dw Unknown_ced93
-	dw Unknown_ced95
-	dw Unknown_ced98
-	dw Unknown_ced9b
-	dw Unknown_ceda8
-	dw Unknown_cedb5
-	dw Unknown_cedb8
-	dw Unknown_cedbb
-	dw Unknown_cedbe
-	dw Unknown_cedc1
-	dw Unknown_cedc4
-	dw Unknown_cedc7
-	dw Unknown_cedcc
-	dw Unknown_cedcf
-	dw Unknown_cedd2
-	dw Unknown_cedd5
-	dw Unknown_cedd8
-	dw Unknown_ceddb
-	dw Unknown_cedde
-	dw Unknown_cede1
-	dw Unknown_cede4
-	dw Unknown_cede7
-	dw Unknown_cedea
-	dw Unknown_ceded
-	dw Unknown_cedf0
-	dw Unknown_cedf3
-	dw Unknown_cedf6
-	dw Unknown_cedf9
-	dw Unknown_cedfc
-	dw Unknown_cedff
-	dw Unknown_cee02
-	dw Unknown_cee05
-	dw Unknown_cee08
-	dw Unknown_cee0b
-	dw Unknown_cee12
-	dw Unknown_cee19
-	dw Unknown_cee1e
-	dw Unknown_cee3d
-	dw Unknown_cee5c
-	dw Unknown_cee61
-	dw Unknown_cee64
-	dw Unknown_cee6b
-	dw Unknown_cee70
-	dw Unknown_cee75
-	dw Unknown_cee7e
-	dw Unknown_cecbe
-	dw Unknown_cee81
-	dw Unknown_cee84
-	dw Unknown_cee8d
-	dw Unknown_cee96
-	dw Unknown_cee9f
-	dw Unknown_ceea2
-	dw Unknown_ceea5
-	dw Unknown_ceea8
-	dw Unknown_ceeab
-; ce9d0
-
-Unknown_ce9d0:	db $00,$06
-				db -4
-Unknown_ce9d3:	db $01,$06
-				db -4
-Unknown_ce9d6:	db $02,$06
-				db -4
-Unknown_ce9d9:	db $03,$06
-				db -4
-Unknown_ce9dc:	db $04,$06
-				db -4
-Unknown_ce9df:	db $05,$06
-				db -4
-Unknown_ce9e2:	db $06,$06
-				db -4
-Unknown_ce9e5:	db $03,$04, $01,$01, $03,$04, $01,$01, $03,$04, $01,$01, $03,$04, $01,$01
-				db -4
-Unknown_ce9f6:	db $4b,$02, $4c,$02, $4d,$04, $4e,$02, $fd,$02, $4e,$02, $fd,$02, $4e,$02, $fd,$02, $4e,$02
-				db -4
-Unknown_cea0b:	db $4b,$42, $4c,$42, $4d,$44, $4e,$42, $fd,$02, $4e,$42, $fd,$02, $4e,$42, $fd,$02, $4e,$42
-				db -4
-Unknown_cea20:	db $4b,$c2, $4c,$c2, $4d,$c4, $4e,$c2, $fd,$02, $4e,$c2, $fd,$02, $4e,$c2, $fd,$02, $4e,$c2
-				db -4
-Unknown_cea35:	db $4b,$01, $4c,$01, $4d,$01, $4f,$01, $50,$01, $51,$01, $52,$02, $fd,$02, $52,$02, $fd,$02, $52,$02, $fd,$02, $52,$02
-				db -4
-Unknown_cea50:	db $4b,$41, $4c,$41, $4d,$41, $4f,$41, $50,$41, $51,$41, $52,$42, $fd,$02, $52,$42, $fd,$02, $52,$42, $fd,$02, $52,$42
-				db -4
-Unknown_cea6b:	db $00,$03, $07,$03, $08,$03, $09,$03
-				db -4
-Unknown_cea74:	db $0a,$07, $0b,$07, $0a,$07, $0b,$47
-				db -2
-Unknown_cea7d:	db $0c,$08
-				db -1
-Unknown_cea80:	db $0d,$08
-				db -1
-Unknown_cea83:	db $0a,$08
-				db -1
-Unknown_cea86:	db $0a,$07, $0b,$07, $0a,$07, $0b,$47, $0a,$07
-				db -1
-Unknown_cea91:	db $0a,$08
-				db -1
-Unknown_cea94:	db $0a,$04, $0e,$04
-				db -2
-Unknown_cea99:	db $0f,$04, $10,$04
-				db -2
-Unknown_cea9e:	db $10,$04, $0f,$04, $0e,$04, $0a,$04, $0e,$04, $0a,$04, $0e,$04, $0a,$04
-				db -4
-Unknown_ceaaf:	db $10,$01, $0f,$01, $12,$01, $11,$01, $12,$01, $0f,$01
-				db -2
-Unknown_ceabc:	db $10,$03, $0f,$03, $12,$01, $fd,$01, $12,$01, $fd,$01, $12,$01, $fd,$01, $12,$01, $fd,$01, $12,$03
-				db -4
-Unknown_cead3:	db $13,$14
-				db -4
-Unknown_cead6:	db $10,$01, $0f,$01
-				db -2
-Unknown_ceadb:	db $14,$08
-				db -1
-Unknown_ceade:	db $17,$04, $16,$08, $15,$08, $16,$08, $17,$04, $17,$04, $16,$48, $15,$48, $16,$48, $17,$04
-				db -2
-Unknown_ceaf3:	db $69,$08
-				db -1
-Unknown_ceaf6:	db $69,$20, $6a,$04, $6b,$04, $6d,$04, $6c,$04
-				db -1
-Unknown_ceb01:	db $6c,$08, $6d,$08
-				db -2
-Unknown_ceb06:	db $18,$04, $19,$04, $1a,$04
-				db -4
-Unknown_ceb0d:	db $1b,$08
-				db -1
-Unknown_ceb10:	db $0f,$08
-				db -1
-Unknown_ceb13:	db $1c,$08
-				db -1
-Unknown_ceb16:	db $0a,$08
-				db -4
-Unknown_ceb19:	db $1d,$08
-				db -1
-Unknown_ceb1c:	db $17,$08
-				db -1
-Unknown_ceb1f:	db $0f,$03, $10,$03, $1e,$03
-				db -1
-Unknown_ceb26:	db $1f,$10, $20,$03
-				db -4
-Unknown_ceb2b:	db $20,$08
-				db -1
-Unknown_ceb2e:	db $20,$08, $21,$08, $1b,$08, $21,$08
-				db -2
-Unknown_ceb37:	db $22,$08
-				db -1
-Unknown_ceb3a:	db $1b,$08
-				db -1
-Unknown_ceb3d:	db $23,$08
-				db -1
-Unknown_ceb40:	db $24,$08
-				db -1
-Unknown_ceb43:	db $25,$08
-				db -1
-Unknown_ceb46:	db $26,$08, $27,$08
-				db -1
-Unknown_ceb4b:	db $28,$08, $29,$08
-				db -4
-Unknown_ceb50:	db $2a,$01, $2b,$01, $2c,$01, $2d,$01, $2e,$01, $2d,$01, $2c,$01, $2b,$01, $2a,$01
-				db -4
-Unknown_ceb63:	db $14,$01, $15,$01
-				db -2
-Unknown_ceb68:	db $2f,$04, $30,$28
-				db -4
-Unknown_ceb6d:	db $31,$08
-				db -1
-Unknown_ceb70:	db $32,$20, $33,$20, $34,$20, $35,$20 ; fallthrough
-Unknown_ceb78:	db $fd,$02, $35,$04, $fd,$02, $35,$04, $fd,$02, $35,$04, $fd,$02, $35,$04
-				db -4
-Unknown_ceb89:	db $14,$04, $15,$04
-				db -2
-Unknown_ceb8e:	db $36,$02, $37,$02, $38,$02, $39,$20
-				db -4
-Unknown_ceb97:	db $3a,$02, $3b,$02, $3c,$02, $3d,$20
-				db -4
-Unknown_ceba0:	db $3a,$42, $3b,$42, $3c,$42, $3d,$60
-				db -4
-Unknown_ceba9:	db $3e,$08, $3f,$08, $40,$08
-				db -1
-Unknown_cebb0:	db $40,$02, $fd,$02, $40,$02, $fd,$02, $41,$02, $fd,$02, $41,$02, $fd,$02
-				db -2
-Unknown_cebc1:	db $42,$02, $43,$02, $44,$02, $45,$02
-				db -2
-Unknown_cebca:	db $19,$02, $fd,$02
-				db -2
-Unknown_cebcf:	db $46,$04, $47,$04
-				db -2
-Unknown_cebd4:	db $18,$02, $fd,$02
-				db -2
-Unknown_cebd9:	db $48,$08
-				db -1
-Unknown_cebdc:	db $48,$48
-				db -1
-Unknown_cebdf:	db $49,$08
-				db -1
-Unknown_cebe2:	db $4a,$08
-				db -1
-Unknown_cebe5:	db $20,$10, $1f,$10, $1e,$10
-				db -1
-Unknown_cebec:	db $20,$08, $1f,$08, $1e,$08
-				db -1
-Unknown_cebf3:	db $fd,$14, $55,$28, $54,$28, $53,$14, $fd,$04, $53,$04, $fd,$04, $53,$04, $fd,$04, $53,$04
-				db -4
-Unknown_cec08:	db $1e,$08, $1f,$08, $20,$08
-				db -4
-Unknown_cec0f:	db $fd,$00, $14,$00, $15,$00, $14,$40, $fd,$00, $16,$40, $15,$00, $16,$00
-				db -2
-Unknown_cec20:	db $56,$02, $57,$04
-				db -4
-Unknown_cec25:	db $56,$c2, $57,$c4
-				db -4
-Unknown_cec2a:	db $56,$01, $57,$01, $58,$01, $57,$c1, $58,$c1, $57,$02
-				db -4
-Unknown_cec37:	db $56,$c1, $57,$c1, $58,$c1, $57,$01, $58,$01, $57,$c2
-				db -4
-Unknown_cec44:	db $57,$c1, $58,$c1, $57,$01, $58,$01
-				db -2
-Unknown_cec4d:	db $59,$01, $5a,$01, $5b,$01, $5c,$02
-				db -4
-Unknown_cec56:	db $0a,$0a, $0b,$43, $5d,$43, $0b,$c3, $0a,$82, $0b,$81, $5d,$01, $0b,$01
-				db -2
-Unknown_cec67:	db $0a,$03, $0b,$47, $0a,$07, $0b,$07, $0a,$03
-				db -2
-Unknown_cec72:	db $5e,$20, $5e,$20
-				db -4
-Unknown_cec77:	db $5f,$20, $5f,$20
-				db -4
-Unknown_cec7c:	db $60,$08
-				db -1
-Unknown_cec7f:	db $61,$01, $62,$01, $63,$01
-				db -1
-Unknown_cec86:	db $63,$07, $64,$07
-				db -2
-Unknown_cec8b:	db $65,$01, $66,$01, $67,$01
-				db -1
-Unknown_cec92:	db $67,$07, $68,$07
-				db -2
-Unknown_cec97:	db $6e,$08
-				db -1
-Unknown_cec9a:	db $6f,$08
-				db -1
-Unknown_cec9d:	db $6e,$88
-				db -1
-Unknown_ceca0:	db $18,$04, $70,$04, $71,$04, $72,$04, $73,$04
-				db -4
-Unknown_cecab:	db $74,$04, $75,$04
-				db -2
-Unknown_cecb0:	db $14,$08
-				db -1
-Unknown_cecb3:	db $74,$03, $14,$03, $15,$03, $14,$03, $15,$03
-				db -4
-Unknown_cecbe:	db $14,$00, $15,$00, $14,$00, $15,$00, $74,$0c
-				db -4
-Unknown_cecc9:	db $76,$08
-				db -1
-Unknown_ceccc:	db $77,$01, $78,$01, $79,$01, $7a,$01, $7b,$01, $7c,$01, $7d,$01, $7c,$c1, $7b,$c1, $7a,$c1, $79,$c1, $78,$c1, $77,$c1
-				db -4
-Unknown_cece7:	db $1b,$04, $7e,$04
-				db -2
-Unknown_cecec:	db $1b,$44, $7e,$44
-				db -2
-Unknown_cecf1:	db $7f,$08
-				db -1
-Unknown_cecf4:	db $25,$08
-				db -1
-Unknown_cecf7:	db $80,$08
-				db -1
-Unknown_cecfa:	db $83,$07, $82,$07, $81,$07, $82,$07, $83,$07, $82,$07, $81,$07
-				db -4
-Unknown_ced09:	db $1b,$10
-				db -4
-Unknown_ced0c:	db $fd,$0f, $84,$0f, $85,$0f, $29,$0f, $28,$0f, $86,$20
-				db -4
-Unknown_ced19:	db $1b,$03, $87,$03, $88,$03, $89,$03
-				db -4
-Unknown_ced22:	db $8a,$02, $8b,$02, $8c,$02, $8d,$02
-				db -4
-Unknown_ced2b:	db $61,$02, $62,$02, $63,$02
-				db -1
-Unknown_ced32:	db $65,$02, $66,$02, $67,$02
-				db -1
-Unknown_ced39:	db $8e,$08
-				db -1
-Unknown_ced3c:	db $8e,$48
-				db -1
-Unknown_ced3f:	db $8f,$10, $90,$10
-				db -2
-Unknown_ced44:	db $91,$10, $92,$10
-				db -2
-Unknown_ced49:	db $93,$08
-				db -1
-Unknown_ced4c:	db $1e,$08
-				db -1
-Unknown_ced4f:	db $1b,$07, $94,$07
-				db -2
-Unknown_ced54:	db $95,$08
-				db -1
-Unknown_ced57:	db $96,$08
-				db -1
-Unknown_ced5a:	db $95,$08
-				db -1
-Unknown_ced5d:	db $97,$01, $97,$41
-				db -2
-Unknown_ced62:	db $98,$08
-				db -1
-Unknown_ced65:	db $99,$20, $99,$20, $99,$20, $99,$20, $99,$20, $9a,$08
-				db -1
-Unknown_ced72:	db $9b,$08
-				db -1
-Unknown_ced75:	db $9c,$02, $9d,$02, $9e,$08, $fd,$02, $9e,$02, $fd,$02, $9e,$02, $fd,$02, $9e,$02
-				db -4
-Unknown_ced88:	db $9f,$08
-				db -1
-Unknown_ced8b:	db $0f,$08
-				db -1
-Unknown_ced8e:	db $6b,$18
-				db -4
-Unknown_ced91:	db $a0,$01 ; fallthrough
-Unknown_ced93:	db $a1,$01 ; fallthrough
-Unknown_ced95:	db $a2,$01
-				db -4
-Unknown_ced98:	db $a3,$08
-				db -1
-Unknown_ced9b:	db $a4,$04, $a5,$04, $a6,$04, $a7,$04, $a6,$44, $a5,$44
-				db -2
-Unknown_ceda8:	db $a8,$04, $a9,$04, $aa,$04, $ab,$04, $aa,$44, $a9,$44
-				db -2
-Unknown_cedb5:	db $1b,$08
-				db -1
-Unknown_cedb8:	db $ac,$08
-				db -1
-Unknown_cedbb:	db $ad,$08
-				db -1
-Unknown_cedbe:	db $ae,$08
-				db -1
-Unknown_cedc1:	db $af,$08
-				db -1
-Unknown_cedc4:	db $b0,$20
-				db -4
-Unknown_cedc7:	db $b1,$07, $b1,$47
-				db -2
-Unknown_cedcc:	db $b2,$08
-				db -1
-Unknown_cedcf:	db $b3,$08
-				db -1
-Unknown_cedd2:	db $b3,$48
-				db -1
-Unknown_cedd5:	db $b3,$88
-				db -1
-Unknown_cedd8:	db $b3,$c8
-				db -1
-Unknown_ceddb:	db $b5,$08
-				db -1
-Unknown_cedde:	db $b5,$48
-				db -1
-Unknown_cede1:	db $b5,$88
-				db -1
-Unknown_cede4:	db $b5,$c8
-				db -1
-Unknown_cede7:	db $b4,$08
-				db -1
-Unknown_cedea:	db $6b,$08
-				db -1
-Unknown_ceded:	db $b6,$08
-				db -1
-Unknown_cedf0:	db $b7,$20
-				db -1
-Unknown_cedf3:	db $1b,$20
-				db -1
-Unknown_cedf6:	db $b8,$20
-				db -1
-Unknown_cedf9:	db $b8,$60
-				db -1
-Unknown_cedfc:	db $b9,$20
-				db -1
-Unknown_cedff:	db $ba,$20
-				db -1
-Unknown_cee02:	db $bb,$60
-				db -1
-Unknown_cee05:	db $bb,$20
-				db -1
-Unknown_cee08:	db $bc,$20
-				db -1
-Unknown_cee0b:	db $bd,$0b, $be,$0b, $1b,$0b
-				db -4
-Unknown_cee12:	db $bf,$04, $c0,$04, $c1,$04
-				db -4
-Unknown_cee19:	db $c2,$20, $c2,$20
-				db -4
-Unknown_cee1e:	db $4b,$02, $4c,$02, $4d,$20, $4d,$20, $4d,$20, $4f,$01, $50,$01, $51,$01, $52,$02, $fd,$02, $52,$02, $fd,$02, $52,$02, $fd,$02, $52,$02
-				db -4
-Unknown_cee3d:	db $4b,$c2, $4c,$c2, $4d,$e0, $4d,$e0, $4d,$e0, $4f,$c1, $50,$c1, $51,$c1, $52,$c2, $fd,$02, $52,$c2, $fd,$02, $52,$c2, $fd,$02, $52,$c2
-				db -4
-Unknown_cee5c:	db $c3,$01, $c3,$c1
-				db -2
-Unknown_cee61:	db $c4,$20
-				db -1
-Unknown_cee64:	db $c5,$04, $c6,$04, $c7,$04
-				db -4
-Unknown_cee6b:	db $c8,$01, $c8,$41
-				db -2
-Unknown_cee70:	db $c9,$03, $05,$03
-				db -4
-Unknown_cee75:	db $ca,$20, $cb,$03, $ca,$03, $cb,$03
-				db -2
-Unknown_cee7e:	db $03,$a0
-				db -1
-Unknown_cee81:	db $cc,$20
-				db -1
-Unknown_cee84:	db $7f,$02, $25,$02, $80,$02, $25,$02
-				db -2
-Unknown_cee8d:	db $cd,$04, $ce,$04, $cd,$c4, $ce,$c4
-				db -2
-Unknown_cee96:	db $cf,$04, $d0,$04, $d1,$04, $d2,$04
-				db -4
-Unknown_cee9f:	db $d3,$20
-				db -1
-Unknown_ceea2:	db $d4,$08
-				db -1
-Unknown_ceea5:	db $d5,$08
-				db -1
-Unknown_ceea8:	db $d6,$08
-				db -1
-Unknown_ceeab:	db $d7,$08
-				db -1
-; ceeae
-
-Unknown_ceeae: ; ceeae
-; ?, length, address
-	dbbw $00, $10, Unknown_cf2f6
-	dbbw $04, $09, Unknown_cf262
-	dbbw $08, $04, Unknown_cf22e
-	dbbw $09, $04, Unknown_cf21e
-	dbbw $0d, $04, Unknown_cf386
-	dbbw $0f, $04, Unknown_cf21e
-	dbbw $13, $04, Unknown_cf386
-	dbbw $04, $10, Unknown_cf2f6
-	dbbw $08, $10, Unknown_cf2f6
-	dbbw $08, $10, Unknown_cf336
-	dbbw $00, $04, Unknown_cf386
-	dbbw $02, $04, Unknown_cf21e
-	dbbw $06, $02, Unknown_cf376
-	dbbw $07, $02, Unknown_cf376
-	dbbw $02, $04, Unknown_cf386
-	dbbw $04, $01, Unknown_cf736
-	dbbw $05, $01, Unknown_cf736
-	dbbw $00, $02, Unknown_cf20e
-	dbbw $02, $02, Unknown_cf20e
-	dbbw $00, $04, Unknown_cf3a6
-	dbbw $00, $01, Unknown_cf736
-	dbbw $01, $01, Unknown_cf736
-	dbbw $02, $01, Unknown_cf736
-	dbbw $03, $01, Unknown_cf736
-	dbbw $00, $04, Unknown_cf22e
-	dbbw $01, $10, Unknown_cf2f6
-	dbbw $05, $10, Unknown_cf2f6
-	dbbw $00, $04, Unknown_cf21e
-	dbbw $05, $0c, Unknown_cf2b6
-	dbbw $02, $04, Unknown_cf22e
-	dbbw $06, $01, Unknown_cf736
-	dbbw $07, $01, Unknown_cf736
-	dbbw $08, $01, Unknown_cf736
-	dbbw $04, $04, Unknown_cf21e
-	dbbw $09, $16, Unknown_cf3b6
-	dbbw $04, $02, Unknown_cf20e
-	dbbw $06, $02, Unknown_cf20e
-	dbbw $0c, $01, Unknown_cf736
-	dbbw $0a, $01, Unknown_cf736
-	dbbw $0b, $04, Unknown_cf22e
-	dbbw $08, $04, Unknown_cf386
-	dbbw $06, $04, Unknown_cf386
-	dbbw $00, $05, Unknown_cf40e
-	dbbw $03, $06, Unknown_cf422
-	dbbw $00, $07, Unknown_cf43a
-	dbbw $03, $08, Unknown_cf456
-	dbbw $00, $09, Unknown_cf476
-	dbbw $00, $04, Unknown_cf49a
-	dbbw $02, $04, Unknown_cf4aa
-	dbbw $04, $06, Unknown_cf4ba
-	dbbw $00, $02, Unknown_cf4da
-	dbbw $00, $07, Unknown_cf512
-	dbbw $00, $0e, Unknown_cf4da
-	dbbw $00, $15, Unknown_cf512
-	dbbw $00, $02, Unknown_cf566
-	dbbw $00, $06, Unknown_cf566
-	dbbw $00, $0a, Unknown_cf566
-	dbbw $00, $0e, Unknown_cf566
-	dbbw $00, $02, Unknown_cf59e
-	dbbw $00, $06, Unknown_cf59e
-	dbbw $00, $0a, Unknown_cf59e
-	dbbw $00, $0e, Unknown_cf59e
-	dbbw $00, $04, Unknown_cf5d6
-	dbbw $00, $10, Unknown_cf5d6
-	dbbw $00, $1a, Unknown_cf5d6
-	dbbw $00, $1a, Unknown_cf63e
-	dbbw $0e, $04, Unknown_cf6a6
-	dbbw $0e, $08, Unknown_cf6a6
-	dbbw $0e, $04, Unknown_cf6c6
-	dbbw $0e, $08, Unknown_cf6c6
-	dbbw $0e, $04, Unknown_cf6e6
-	dbbw $0e, $04, Unknown_cf6f6
-	dbbw $00, $06, Unknown_cf706
-	dbbw $03, $04, Unknown_cf71e
-	dbbw $03, $02, Unknown_cf72e
-	dbbw $01, $05, Unknown_cf736
-	dbbw $01, $06, Unknown_cf74a
-	dbbw $01, $07, Unknown_cf762
-	dbbw $01, $03, Unknown_cf762
-	dbbw $01, $08, Unknown_cf77e
-	dbbw $01, $09, Unknown_cf79e
-	dbbw $01, $0a, Unknown_cf7c2
-	dbbw $01, $06, Unknown_cf7c2
-	dbbw $00, $09, Unknown_cf262
-	dbbw $04, $04, Unknown_cf22e
-	dbbw $05, $04, Unknown_cf22e
-	dbbw $00, $02, Unknown_cf216
-	dbbw $02, $02, Unknown_cf216
-	dbbw $04, $02, Unknown_cf216
-	dbbw $02, $04, Unknown_cf7ea
-	dbbw $02, $04, Unknown_cf7fa
-	dbbw $02, $02, Unknown_cf376
-	dbbw $04, $02, Unknown_cf376
-	dbbw $06, $04, Unknown_cf396
-	dbbw $08, $02, Unknown_cf376
-	dbbw $09, $02, Unknown_cf376
-	dbbw $05, $02, Unknown_cf80a
-	dbbw $00, $02, Unknown_cf812
-	dbbw $00, $05, Unknown_cf812
-	dbbw $00, $09, Unknown_cf812
-	dbbw $09, $09, Unknown_cf812
-	dbbw $00, $04, Unknown_cf836
-	dbbw $00, $07, Unknown_cf836
-	dbbw $00, $09, Unknown_cf836
-	dbbw $09, $09, Unknown_cf836
-	dbbw $04, $01, Unknown_cf80e
-	dbbw $05, $02, Unknown_cf37e
-	dbbw $06, $04, Unknown_cf21e
-	dbbw $0a, $04, Unknown_cf21e
-	dbbw $0e, $04, Unknown_cf21e
-	dbbw $08, $05, Unknown_cf8f6
-	dbbw $0d, $03, Unknown_cf90a
-	dbbw $01, $08, Unknown_cfa06
-	dbbw $03, $08, Unknown_cfa06
-	dbbw $05, $08, Unknown_cfa06
-	dbbw $07, $08, Unknown_cfa06
-	dbbw $06, $04, Unknown_cf22e
-	dbbw $07, $04, Unknown_cf22e
-	dbbw $0a, $02, Unknown_cf4d2
-	dbbw $00, $01, Unknown_cf916
-	dbbw $00, $03, Unknown_cf91a
-	dbbw $00, $06, Unknown_cf926
-	dbbw $00, $09, Unknown_cf93e
-	dbbw $00, $0c, Unknown_cf962
-	dbbw $00, $0e, Unknown_cf992
-	dbbw $00, $0f, Unknown_cf9ca
-	dbbw $04, $04, Unknown_cf21e
-	dbbw $08, $04, Unknown_cf21e
-	dbbw $0d, $01, Unknown_cf736
-	dbbw $0e, $04, Unknown_cfa26
-	dbbw $10, $01, Unknown_cf736
-	dbbw $11, $01, Unknown_cf736
-	dbbw $04, $02, Unknown_cf37e
-	dbbw $05, $02, Unknown_cf37e
-	dbbw $0a, $04, Unknown_cf386
-	dbbw $00, $08, Unknown_cfa36
-	dbbw $00, $0c, Unknown_cfa76
-	dbbw $00, $10, Unknown_cfa36
-	dbbw $09, $02, Unknown_cfaa6
-	dbbw $09, $04, Unknown_cfaa6
-	dbbw $09, $06, Unknown_cfaa6
-	dbbw $09, $08, Unknown_cfaa6
-	dbbw $12, $05, Unknown_cfac6
-	dbbw $00, $04, Unknown_cfada
-	dbbw $04, $04, Unknown_cfada
-	dbbw $08, $04, Unknown_cfada
-	dbbw $0c, $04, Unknown_cfada
-	dbbw $00, $06, Unknown_cfaea
-	dbbw $04, $04, Unknown_cf21e
-	dbbw $0a, $04, Unknown_cf386
-	dbbw $15, $04, Unknown_cf4aa
-	dbbw $04, $04, Unknown_cf4aa
-	dbbw $0c, $04, Unknown_cf386
-	dbbw $0a, $04, Unknown_cfb02
-	dbbw $0c, $04, Unknown_cf21e
-	dbbw $00, $24, Unknown_cfb12
-	dbbw $0d, $02, Unknown_cfba2
-	dbbw $0d, $04, Unknown_cfba2
-	dbbw $0d, $06, Unknown_cfba2
-	dbbw $02, $08, Unknown_cfbba
-	dbbw $08, $07, Unknown_cfbda
-	dbbw $08, $05, Unknown_cfbda
-	dbbw $08, $03, Unknown_cfbda
-	dbbw $00, $10, Unknown_cf2b6
-	dbbw $00, $09, Unknown_cfbf6
-	dbbw $06, $09, Unknown_cfbf6
-	dbbw $0c, $09, Unknown_cfbf6
-	dbbw $12, $09, Unknown_cfbf6
-	dbbw $18, $09, Unknown_cfbf6
-	dbbw $1e, $09, Unknown_cfbf6
-	dbbw $24, $09, Unknown_cfbf6
-	dbbw $2a, $09, Unknown_cfbf6
-	dbbw $03, $04, Unknown_cfc1a
-	dbbw $12, $04, Unknown_cf21e
-	dbbw $10, $04, Unknown_cf386
-	dbbw $16, $01, Unknown_cf736
-	dbbw $17, $04, Unknown_cf22e
-	dbbw $18, $04, Unknown_cf21e
-	dbbw $1c, $04, Unknown_cf21e
-	dbbw $20, $03, Unknown_cf21e
-	dbbw $23, $04, Unknown_cf386
-	dbbw $25, $03, Unknown_cf21e
-	dbbw $17, $04, Unknown_cf21e
-	dbbw $0a, $10, Unknown_cf2f6
-	dbbw $10, $10, Unknown_cf2b6
-	dbbw $00, $10, Unknown_cf2b6
-	dbbw $04, $04, Unknown_cf21e
-	dbbw $08, $02, Unknown_cf20e
-	dbbw $20, $06, Unknown_cfc2a
-	dbbw $08, $01, Unknown_cf736
-	dbbw $04, $04, Unknown_cf21e
-	dbbw $1a, $04, Unknown_cf4aa
-	dbbw $16, $09, Unknown_cf262
-	dbbw $10, $10, Unknown_cfc42
-	dbbw $09, $06, Unknown_cfc82
-	dbbw $11, $09, Unknown_cf23e
-	dbbw $0e, $04, Unknown_cf21e
-	dbbw $0b, $04, Unknown_cf4aa
-	dbbw $1c, $06, Unknown_cf22e
-	dbbw $20, $10, Unknown_cfc42
-	dbbw $05, $06, Unknown_cfc9a
-	dbbw $0b, $04, Unknown_cf21e
-	dbbw $09, $04, Unknown_cfcb2
-	dbbw $0b, $04, Unknown_cf386
-	dbbw $11, $0d, Unknown_cfcc2
-	dbbw $00, $09, Unknown_cf23e
-	dbbw $09, $09, Unknown_cf23e
-	dbbw $00, $0c, Unknown_cf286
-	dbbw $06, $0c, Unknown_cf286
-	dbbw $0c, $0c, Unknown_cf286
-	dbbw $12, $0c, Unknown_cf286
-	dbbw $00, $0d, Unknown_cfcc2
-	dbbw $00, $07, Unknown_cf85a
-	dbbw $00, $06, Unknown_cf8ae
-	dbbw $00, $0e, Unknown_cf876
-	dbbw $00, $0c, Unknown_cf8c6
-; cf20e
-
-Unknown_cf20e:
-	db $f8, $fc, $00, $00
-	db $00, $fc, $01, $00
-
-Unknown_cf216:
-	db $fc, $f8, $00, $00
-	db $fc, $00, $01, $00
-
-Unknown_cf21e:
-	db $f8, $f8, $00, $00
-	db $f8, $00, $01, $00
-	db $00, $f8, $02, $00
-	db $00, $00, $03, $00
-
-Unknown_cf22e:
-	db $f8, $f8, $00, $00
-	db $f8, $00, $00, $20
-	db $00, $f8, $00, $40
-	db $00, $00, $00, $60
-
-Unknown_cf23e:
-	db $f4, $f4, $00, $00
-	db $f4, $fc, $01, $00
-	db $f4, $04, $02, $00
-	db $fc, $f4, $03, $00
-	db $fc, $fc, $04, $00
-	db $fc, $04, $05, $00
-	db $04, $f4, $06, $00
-	db $04, $fc, $07, $00
-	db $04, $04, $08, $00
-
-Unknown_cf262:
-	db $f4, $f4, $00, $00
-	db $f4, $fc, $01, $00
-	db $f4, $04, $00, $20
-	db $fc, $f4, $02, $00
-	db $fc, $fc, $03, $00
-	db $fc, $04, $02, $60
-	db $04, $f4, $00, $40
-	db $04, $fc, $01, $60
-	db $04, $04, $00, $60
-
-Unknown_cf286:
-	db $f0, $f4, $00, $00
-	db $f0, $fc, $01, $00
-	db $f0, $04, $02, $00
-	db $f8, $f4, $03, $00
-	db $f8, $fc, $04, $00
-	db $f8, $04, $05, $00
-	db $00, $f4, $05, $60
-	db $00, $fc, $04, $60
-	db $00, $04, $03, $60
-	db $08, $f4, $02, $60
-	db $08, $fc, $01, $60
-	db $08, $04, $00, $60
-
-Unknown_cf2b6:
-	db $f0, $f0, $00, $00
-	db $f0, $f8, $01, $00
-	db $f0, $00, $02, $00
-	db $f0, $08, $03, $00
-	db $f8, $f0, $04, $00
-	db $f8, $f8, $05, $00
-	db $f8, $00, $06, $00
-	db $f8, $08, $07, $00
-	db $00, $f0, $08, $00
-	db $00, $f8, $09, $00
-	db $00, $00, $0a, $00
-	db $00, $08, $0b, $00
-	db $08, $f0, $0c, $00
-	db $08, $f8, $0d, $00
-	db $08, $00, $0e, $00
-	db $08, $08, $0f, $00
-
-Unknown_cf2f6:
-	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
-
-Unknown_cf336:
-	db $ec, $ec, $00, $00
-	db $ec, $f4, $01, $00
-	db $f4, $ec, $02, $00
-	db $f4, $f4, $03, $00
-	db $ec, $04, $01, $20
-	db $ec, $0c, $00, $20
-	db $f4, $04, $03, $20
-	db $f4, $0c, $02, $20
-	db $04, $ec, $02, $40
-	db $04, $f4, $03, $40
-	db $0c, $ec, $00, $40
-	db $0c, $f4, $01, $40
-	db $04, $04, $03, $60
-	db $04, $0c, $02, $60
-	db $0c, $04, $01, $60
-	db $0c, $0c, $00, $60
-
-Unknown_cf376:
-	db $fc, $f8, $00, $00
-	db $fc, $00, $00, $20
-
-Unknown_cf37e:
-	db $00, $f8, $00, $00
-	db $00, $00, $00, $20
-
-Unknown_cf386:
-	db $f8, $f8, $00, $00
-	db $f8, $00, $00, $20
-	db $00, $f8, $01, $00
-	db $00, $00, $01, $20
-
-Unknown_cf396:
-	db $f8, $f8, $00, $00
-	db $f8, $00, $01, $00
-	db $00, $f8, $00, $40
-	db $00, $00, $01, $40
-
-Unknown_cf3a6:
-	db $fa, $f8, $02, $00
-	db $02, $f8, $03, $00
-	db $f6, $00, $02, $00
-	db $fe, $00, $03, $00
-
-Unknown_cf3b6:
-	db $08, $a8, $01, $00
-	db $00, $b0, $02, $00
-	db $00, $b8, $03, $00
-	db $00, $c0, $00, $00
-	db $00, $c8, $03, $00
-	db $00, $d0, $00, $00
-	db $00, $d8, $03, $00
-	db $00, $e0, $00, $00
-	db $00, $e8, $03, $00
-	db $00, $f0, $00, $00
-	db $00, $f8, $01, $00
-	db $f8, $00, $02, $00
-	db $f8, $08, $03, $00
-	db $f8, $10, $00, $00
-	db $f8, $18, $03, $00
-	db $f8, $20, $00, $00
-	db $f8, $28, $03, $00
-	db $f8, $30, $00, $00
-	db $f8, $38, $03, $00
-	db $f8, $40, $00, $00
-	db $f8, $48, $01, $00
-	db $f0, $50, $02, $00
-
-Unknown_cf40e:
-	db $ec, $f8, $00, $00
-	db $ec, $00, $00, $20
-	db $f4, $f8, $01, $00
-	db $f4, $00, $01, $20
-	db $fc, $fc, $02, $00
-
-Unknown_cf422:
-	db $e4, $f8, $00, $00
-	db $e4, $00, $00, $20
-	db $ec, $f8, $01, $00
-	db $ec, $00, $01, $20
-	db $f4, $fc, $02, $00
-	db $fc, $fc, $02, $00
-
-Unknown_cf43a:
-	db $dc, $f8, $00, $00
-	db $dc, $00, $00, $20
-	db $e4, $f8, $01, $00
-	db $e4, $00, $01, $20
-	db $ec, $fc, $02, $00
-	db $f4, $fc, $02, $00
-	db $fc, $fc, $02, $00
-
-Unknown_cf456:
-	db $d4, $f8, $00, $00
-	db $d4, $00, $00, $20
-	db $dc, $f8, $01, $00
-	db $dc, $00, $01, $20
-	db $e4, $fc, $02, $00
-	db $ec, $fc, $02, $00
-	db $f4, $fc, $02, $00
-	db $fc, $fc, $02, $00
-
-Unknown_cf476:
-	db $cc, $f8, $00, $00
-	db $cc, $00, $00, $20
-	db $d4, $f8, $01, $00
-	db $d4, $00, $01, $20
-	db $dc, $fc, $02, $00
-	db $e4, $fc, $02, $00
-	db $ec, $fc, $02, $00
-	db $f4, $fc, $02, $00
-	db $fc, $fc, $02, $00
-
-Unknown_cf49a:
-	db $f8, $f8, $00, $00
-	db $f8, $00, $00, $20
-	db $00, $f8, $01, $00
-	db $00, $00, $00, $60
-
-Unknown_cf4aa:
-	db $f8, $f8, $00, $00
-	db $f8, $00, $01, $00
-	db $00, $f8, $01, $60
-	db $00, $00, $00, $60
-
-Unknown_cf4ba:
-	db $f4, $f8, $00, $00
-	db $f4, $00, $01, $00
-	db $fc, $f8, $02, $00
-	db $fc, $00, $03, $00
-	db $04, $f8, $04, $00
-	db $04, $00, $05, $00
-
-Unknown_cf4d2:
-	db $fd, $f8, $00, $00
-	db $f9, $00, $00, $00
-
-Unknown_cf4da:
-	db $f8, $f4, $00, $00
-	db $f8, $04, $00, $00
-	db $e8, $f4, $00, $00
-	db $e8, $04, $00, $00
-	db $f0, $ec, $00, $00
-	db $f0, $f4, $01, $00
-	db $f0, $fc, $00, $00
-	db $f0, $04, $01, $00
-	db $f0, $0c, $00, $00
-	db $f8, $e4, $00, $00
-	db $f8, $ec, $01, $00
-	db $f8, $fc, $01, $00
-	db $f8, $0c, $01, $00
-	db $f8, $14, $00, $00
-
-Unknown_cf512:
-	db $f0, $f4, $00, $00
-	db $f0, $04, $00, $00
-	db $f8, $ec, $00, $00
-	db $f8, $f4, $01, $00
-	db $f8, $fc, $00, $00
-	db $f8, $04, $01, $00
-	db $f8, $0c, $00, $00
-	db $e0, $f4, $00, $00
-	db $e0, $04, $00, $00
-	db $e8, $ec, $00, $00
-	db $e8, $f4, $01, $00
-	db $e8, $fc, $00, $00
-	db $e8, $04, $01, $00
-	db $e8, $0c, $00, $00
-	db $f0, $e4, $00, $00
-	db $f0, $ec, $01, $00
-	db $f0, $fc, $01, $00
-	db $f0, $0c, $01, $00
-	db $f0, $14, $00, $00
-	db $f8, $e4, $01, $00
-	db $f8, $14, $01, $00
-
-Unknown_cf566:
-	db $cc, $f8, $00, $00
-	db $cc, $00, $01, $00
-	db $d4, $f8, $02, $00
-	db $d4, $00, $03, $00
-	db $dc, $f8, $04, $00
-	db $dc, $00, $05, $00
-	db $e4, $f8, $06, $00
-	db $e4, $00, $07, $00
-	db $ec, $f8, $08, $00
-	db $ec, $00, $09, $00
-	db $f4, $f8, $0a, $00
-	db $f4, $00, $0b, $00
-	db $fc, $f8, $0c, $00
-	db $fc, $00, $0d, $00
-
-Unknown_cf59e:
-	db $cc, $f8, $0c, $00
-	db $cc, $00, $0d, $00
-	db $d4, $f8, $08, $00
-	db $d4, $00, $09, $00
-	db $dc, $f8, $04, $00
-	db $dc, $00, $05, $00
-	db $e4, $f8, $00, $00
-	db $e4, $00, $01, $00
-	db $ec, $f8, $02, $00
-	db $ec, $00, $03, $00
-	db $f4, $00, $02, $00
-	db $f4, $08, $03, $00
-	db $fc, $00, $0a, $00
-	db $fc, $08, $0b, $00
-
-Unknown_cf5d6:
-	db $0c, $f0, $00, $40
-	db $0c, $f8, $02, $40
-	db $0c, $00, $02, $60
-	db $0c, $08, $00, $60
-	db $fc, $e8, $09, $20
-	db $fc, $f0, $08, $20
-	db $fc, $f8, $06, $00
-	db $fc, $00, $07, $00
-	db $fc, $08, $08, $00
-	db $fc, $10, $09, $00
-	db $04, $e8, $01, $20
-	db $04, $f0, $00, $20
-	db $04, $f8, $0c, $00
-	db $04, $00, $0d, $00
-	db $04, $08, $00, $00
-	db $04, $10, $01, $00
-	db $ec, $f0, $00, $00
-	db $ec, $f8, $02, $00
-	db $ec, $00, $02, $20
-	db $ec, $08, $00, $20
-	db $f4, $e8, $03, $20
-	db $f4, $f0, $02, $20
-	db $f4, $f8, $04, $00
-	db $f4, $00, $05, $00
-	db $f4, $08, $02, $00
-	db $f4, $10, $03, $00
-
-Unknown_cf63e:
-	db $ec, $f0, $00, $00
-	db $ec, $f8, $02, $00
-	db $ec, $00, $02, $20
-	db $ec, $08, $00, $20
-	db $f4, $ec, $00, $00
-	db $f4, $f4, $01, $00
-	db $f4, $f8, $05, $20
-	db $f4, $00, $04, $20
-	db $f4, $04, $01, $20
-	db $f4, $0c, $00, $20
-	db $fc, $ec, $02, $00
-	db $fc, $f4, $03, $00
-	db $fc, $f8, $07, $20
-	db $fc, $00, $06, $20
-	db $fc, $04, $03, $20
-	db $fc, $0c, $02, $20
-	db $04, $ec, $04, $00
-	db $04, $f4, $05, $00
-	db $04, $f8, $0d, $20
-	db $04, $00, $0c, $20
-	db $04, $04, $05, $20
-	db $04, $0c, $04, $20
-	db $0c, $f0, $00, $40
-	db $0c, $f8, $02, $40
-	db $0c, $00, $02, $60
-	db $0c, $08, $00, $60
-
-Unknown_cf6a6:
-	db $e8, $fc, $02, $00
-	db $10, $fc, $02, $60
-	db $fc, $e8, $01, $00
-	db $fc, $10, $01, $60
-	db $e0, $fc, $02, $00
-	db $18, $fc, $02, $60
-	db $fc, $e0, $01, $00
-	db $fc, $18, $01, $60
-
-Unknown_cf6c6:
-	db $ed, $ed, $00, $20
-	db $ed, $0b, $00, $00
-	db $0b, $ed, $00, $60
-	db $0b, $0b, $00, $40
-	db $e5, $e5, $00, $20
-	db $e5, $13, $00, $00
-	db $13, $e5, $00, $60
-	db $13, $13, $00, $40
-
-Unknown_cf6e6:
-	db $ec, $fc, $02, $00
-	db $0c, $fc, $02, $60
-	db $fc, $ec, $01, $00
-	db $fc, $0c, $01, $60
-
-Unknown_cf6f6:
-	db $f0, $f0, $00, $20
-	db $f0, $08, $00, $00
-	db $08, $f0, $00, $60
-	db $08, $08, $00, $40
-
-Unknown_cf706:
-	db $e8, $fc, $00, $00
-	db $f0, $fa, $00, $00
-	db $f8, $f8, $00, $00
-	db $00, $f8, $00, $00
-	db $08, $fa, $00, $00
-	db $10, $fc, $00, $00
-
-Unknown_cf71e:
-	db $fc, $f0, $00, $20
-	db $fa, $f8, $00, $20
-	db $fa, $00, $00, $00
-	db $fc, $08, $00, $00
-
-Unknown_cf72e:
-	db $fc, $f8, $00, $60
-	db $fc, $00, $00, $40
-
-Unknown_cf736:
-	db $fc, $fc, $00, $00
-	db $fc, $f4, $01, $00
-	db $fc, $fc, $01, $20
-	db $04, $f4, $01, $40
-	db $04, $fc, $01, $60
-
-Unknown_cf74a:
-	db $fc, $fc, $00, $00
-	db $02, $f6, $00, $00
-	db $02, $ee, $01, $00
-	db $02, $f6, $01, $20
-	db $0a, $ee, $01, $40
-	db $0a, $f6, $01, $60
-
-Unknown_cf762:
-	db $fc, $fc, $00, $00
-	db $02, $f6, $00, $00
-	db $08, $f0, $00, $00
-	db $08, $e8, $01, $00
-	db $08, $f0, $01, $20
-	db $10, $e8, $01, $40
-	db $10, $f0, $01, $60
-
-Unknown_cf77e:
-	db $fc, $fc, $00, $00
-	db $02, $f6, $00, $00
-	db $08, $f0, $00, $00
-	db $0e, $ea, $00, $00
-	db $0e, $e2, $01, $00
-	db $0e, $ea, $01, $20
-	db $16, $e2, $01, $40
-	db $16, $ea, $01, $60
-
-Unknown_cf79e:
-	db $fc, $fc, $00, $00
-	db $02, $f6, $00, $00
-	db $08, $f0, $00, $00
-	db $0e, $ea, $00, $00
-	db $14, $e4, $00, $00
-	db $14, $dc, $01, $00
-	db $14, $e4, $01, $20
-	db $1c, $dc, $01, $40
-	db $1c, $e4, $01, $60
-
-Unknown_cf7c2:
-	db $fc, $fc, $00, $00
-	db $02, $f6, $00, $00
-	db $08, $f0, $00, $00
-	db $0e, $ea, $00, $00
-	db $14, $e4, $00, $00
-	db $1a, $de, $00, $00
-	db $1a, $d6, $01, $00
-	db $1a, $de, $01, $20
-	db $22, $d6, $01, $40
-	db $22, $de, $01, $60
-
-Unknown_cf7ea:
-	db $fc, $f0, $00, $00
-	db $fc, $f8, $01, $00
-	db $fc, $00, $01, $20
-	db $fc, $08, $00, $20
-
-Unknown_cf7fa:
-	db $fc, $f0, $02, $00
-	db $fc, $f8, $01, $00
-	db $fc, $00, $01, $20
-	db $fc, $08, $02, $20
-
-Unknown_cf80a:
-	db $f8, $fc, $00, $00
-
-Unknown_cf80e:
-	db $00, $fc, $00, $00
-
-Unknown_cf812:
-	db $fc, $e4, $00, $00
-	db $fc, $ec, $01, $00
-	db $fc, $f4, $02, $00
-	db $fc, $fc, $03, $00
-	db $fc, $04, $04, $00
-	db $fc, $0c, $05, $00
-	db $fc, $14, $06, $00
-	db $f4, $0c, $07, $00
-	db $f4, $14, $08, $00
-
-Unknown_cf836:
-	db $f4, $e4, $08, $20
-	db $f4, $ec, $07, $20
-	db $fc, $e4, $06, $20
-	db $fc, $ec, $05, $20
-	db $fc, $f4, $04, $20
-	db $fc, $fc, $03, $20
-	db $fc, $04, $02, $20
-	db $fc, $0c, $01, $20
-	db $fc, $14, $00, $20
-
-Unknown_cf85a:
-	db $00, $e4, $00, $10
-	db $00, $ec, $01, $10
-	db $00, $f4, $02, $10
-	db $00, $fc, $03, $10
-	db $00, $04, $04, $10
-	db $00, $0c, $05, $10
-	db $00, $14, $06, $10
-
-Unknown_cf876:
-	db $f8, $e4, $00, $10
-	db $00, $e4, $01, $10
-	db $f8, $ec, $02, $10
-	db $00, $ec, $03, $10
-	db $f8, $f4, $04, $10
-	db $00, $f4, $05, $10
-	db $f8, $fc, $06, $10
-	db $00, $fc, $07, $10
-	db $f8, $04, $08, $10
-	db $00, $04, $09, $10
-	db $f8, $0c, $0a, $10
-	db $00, $0c, $0b, $10
-	db $f8, $14, $0c, $10
-	db $00, $14, $0d, $10
-
-Unknown_cf8ae:
-	db $00, $e8, $00, $11
-	db $00, $f0, $01, $11
-	db $00, $f8, $02, $11
-	db $00, $00, $03, $11
-	db $00, $08, $04, $11
-	db $00, $10, $05, $11
-
-Unknown_cf8c6:
-	db $00, $e8, $00, $11
-	db $08, $e8, $01, $11
-	db $00, $f0, $02, $11
-	db $08, $f0, $03, $11
-	db $00, $f8, $04, $11
-	db $08, $f8, $05, $11
-	db $00, $00, $06, $11
-	db $08, $00, $07, $11
-	db $00, $08, $08, $11
-	db $08, $08, $09, $11
-	db $00, $10, $0a, $11
-	db $08, $10, $0b, $11
-
-Unknown_cf8f6:
-	db $f4, $04, $00, $00
-	db $fc, $f4, $01, $00
-	db $fc, $fc, $02, $00
-	db $fc, $04, $03, $00
-	db $04, $f4, $04, $00
-
-Unknown_cf90a:
-	db $fc, $f4, $00, $00
-	db $fc, $fc, $01, $00
-	db $fc, $04, $02, $00
-
-Unknown_cf916:
-	db $e4, $0c, $01, $60
-
-Unknown_cf91a:
-	db $e4, $0c, $00, $00
-	db $e4, $04, $01, $60
-	db $ec, $0c, $01, $60
-
-Unknown_cf926:
-	db $e4, $0c, $01, $00
-	db $e4, $04, $00, $00
-	db $e4, $fc, $01, $60
-	db $ec, $0c, $00, $00
-	db $ec, $04, $01, $60
-	db $f4, $0c, $01, $60
-
-Unknown_cf93e:
-	db $e4, $f4, $01, $60
-	db $e4, $fc, $00, $00
-	db $e4, $04, $01, $00
-	db $ec, $fc, $01, $60
-	db $ec, $04, $00, $00
-	db $ec, $0c, $01, $00
-	db $f4, $04, $01, $60
-	db $f4, $0c, $00, $00
-	db $fc, $0c, $01, $60
-
-Unknown_cf962:
-	db $e4, $ec, $01, $60
-	db $e4, $f4, $00, $00
-	db $e4, $fc, $01, $00
-	db $ec, $f4, $01, $60
-	db $ec, $fc, $00, $00
-	db $ec, $04, $01, $00
-	db $f4, $fc, $01, $60
-	db $f4, $04, $00, $00
-	db $f4, $0c, $01, $00
-	db $fc, $04, $01, $60
-	db $fc, $0c, $00, $00
-	db $04, $0c, $01, $60
-
-Unknown_cf992:
-	db $e4, $ec, $00, $00
-	db $e4, $f4, $01, $00
-	db $ec, $ec, $01, $60
-	db $ec, $f4, $00, $00
-	db $ec, $fc, $01, $00
-	db $f4, $f4, $01, $60
-	db $f4, $fc, $00, $00
-	db $f4, $04, $01, $00
-	db $fc, $fc, $01, $60
-	db $fc, $04, $00, $00
-	db $fc, $0c, $01, $00
-	db $04, $04, $01, $60
-	db $04, $0c, $00, $00
-	db $0c, $0c, $01, $60
-
-Unknown_cf9ca:
-	db $e4, $ec, $01, $00
-	db $ec, $ec, $00, $00
-	db $ec, $f4, $01, $00
-	db $f4, $ec, $01, $60
-	db $f4, $f4, $00, $00
-	db $f4, $fc, $01, $00
-	db $fc, $f4, $01, $60
-	db $fc, $fc, $00, $00
-	db $fc, $04, $01, $00
-	db $04, $fc, $01, $60
-	db $04, $04, $00, $00
-	db $04, $0c, $01, $00
-	db $0c, $04, $01, $60
-	db $0c, $0c, $00, $00
-	db $14, $0c, $01, $60
-
-Unknown_cfa06:
-	db $f0, $f8, $00, $00
-	db $f8, $f8, $01, $00
-	db $f0, $00, $00, $20
-	db $f8, $00, $01, $20
-	db $00, $f8, $01, $40
-	db $08, $f8, $00, $40
-	db $00, $00, $01, $60
-	db $08, $00, $00, $60
-
-Unknown_cfa26:
-	db $f8, $f8, $00, $00
-	db $f8, $00, $01, $00
-	db $00, $f8, $01, $60
-	db $00, $00, $00, $60
-
-Unknown_cfa36:
-	db $f4, $f8, $00, $00
-	db $f4, $00, $01, $00
-	db $fc, $f8, $02, $00
-	db $fc, $00, $03, $00
-	db $fc, $f8, $00, $00
-	db $fc, $00, $01, $00
-	db $04, $f8, $02, $00
-	db $04, $00, $03, $00
-	db $ec, $f8, $00, $00
-	db $ec, $00, $01, $00
-	db $f4, $f8, $02, $00
-	db $f4, $00, $03, $00
-	db $04, $f8, $00, $00
-	db $04, $00, $01, $00
-	db $0c, $f8, $02, $00
-	db $0c, $00, $03, $00
-
-Unknown_cfa76:
-	db $f0, $f8, $00, $00
-	db $f0, $00, $01, $00
-	db $f8, $f8, $02, $00
-	db $f8, $00, $03, $00
-	db $f8, $f8, $00, $00
-	db $f8, $00, $01, $00
-	db $00, $f8, $02, $00
-	db $00, $00, $03, $00
-	db $00, $f8, $00, $00
-	db $00, $00, $01, $00
-	db $08, $f8, $02, $00
-	db $08, $00, $03, $00
-
-Unknown_cfaa6:
-	db $fc, $fc, $00, $00
-	db $f8, $04, $00, $00
-	db $f4, $0c, $00, $00
-	db $f0, $14, $00, $00
-	db $ec, $1c, $00, $00
-	db $e8, $24, $00, $00
-	db $e0, $2c, $00, $00
-	db $dc, $34, $00, $00
-
-Unknown_cfac6:
-	db $ec, $fc, $00, $00
-	db $f4, $fc, $01, $00
-	db $fc, $fc, $02, $00
-	db $04, $fc, $01, $40
-	db $0c, $fc, $00, $40
-
-Unknown_cfada:
-	db $fc, $f0, $00, $00
-	db $fc, $f8, $01, $00
-	db $fc, $00, $02, $00
-	db $fc, $08, $03, $00
-
-Unknown_cfaea:
-	db $f8, $f4, $00, $00
-	db $f8, $fc, $01, $00
-	db $f8, $04, $02, $00
-	db $00, $f4, $03, $00
-	db $00, $fc, $04, $00
-	db $00, $04, $05, $00
-
-Unknown_cfb02:
-	db $f8, $f8, $00, $00
-	db $f8, $00, $05, $00
-	db $00, $f8, $01, $00
-	db $00, $00, $05, $00
-
-Unknown_cfb12:
-	db $e4, $08, $00, $00
-	db $e4, $10, $01, $00
-	db $ec, $f8, $02, $00
-	db $ec, $00, $03, $00
-	db $ec, $08, $04, $00
-	db $ec, $10, $05, $00
-	db $ec, $18, $06, $00
-	db $f4, $f0, $07, $00
-	db $f4, $f8, $08, $00
-	db $f4, $00, $09, $00
-	db $f4, $08, $0a, $00
-	db $f4, $10, $0b, $00
-	db $f4, $18, $0c, $00
-	db $f4, $20, $0d, $00
-	db $fc, $e8, $0e, $00
-	db $fc, $f0, $0f, $00
-	db $fc, $f8, $10, $00
-	db $fc, $00, $11, $00
-	db $fc, $08, $12, $00
-	db $fc, $10, $13, $00
-	db $04, $d8, $14, $00
-	db $04, $e0, $15, $00
-	db $04, $e8, $16, $00
-	db $04, $f0, $17, $00
-	db $04, $f8, $18, $00
-	db $04, $00, $19, $00
-	db $04, $08, $1a, $00
-	db $04, $10, $1b, $00
-	db $04, $18, $1c, $00
-	db $0c, $d8, $1d, $00
-	db $0c, $e0, $1e, $00
-	db $0c, $f0, $1f, $00
-	db $0c, $f8, $20, $00
-	db $0c, $00, $21, $00
-	db $0c, $08, $22, $00
-	db $14, $00, $23, $00
-
-Unknown_cfba2:
-	db $04, $f8, $02, $00
-	db $04, $00, $03, $00
-	db $fc, $f8, $01, $00
-	db $fc, $00, $01, $20
-	db $f4, $f8, $00, $00
-	db $f4, $00, $00, $20
-
-Unknown_cfbba:
-	db $f8, $f0, $00, $00
-	db $f8, $f8, $01, $00
-	db $f8, $00, $02, $00
-	db $f8, $08, $03, $00
-	db $00, $f0, $04, $00
-	db $00, $f8, $05, $00
-	db $00, $00, $06, $00
-	db $00, $08, $07, $00
-
-Unknown_cfbda:
-	db $f4, $fc, $00, $00
-	db $fc, $fc, $00, $00
-	db $04, $fc, $00, $00
-	db $ec, $fc, $00, $00
-	db $0c, $fc, $00, $00
-	db $e4, $fc, $00, $00
-	db $14, $fc, $00, $00
-
-Unknown_cfbf6:
-	db $f4, $f4, $00, $00
-	db $f4, $fc, $01, $00
-	db $f4, $04, $02, $00
-	db $fc, $f4, $03, $00
-	db $fc, $fc, $04, $00
-	db $fc, $04, $05, $00
-	db $04, $f4, $00, $40
-	db $04, $fc, $01, $40
-	db $04, $04, $02, $40
-
-Unknown_cfc1a:
-	db $fc, $f0, $00, $00
-	db $fc, $f8, $01, $00
-	db $fc, $00, $01, $20
-	db $fc, $08, $00, $20
-
-Unknown_cfc2a:
-	db $fc, $e8, $00, $00
-	db $fc, $f0, $01, $00
-	db $fc, $f8, $02, $00
-	db $fc, $00, $02, $20
-	db $fc, $08, $01, $20
-	db $fc, $10, $00, $20
-
-Unknown_cfc42:
-	db $f0, $f0, $00, $00
-	db $f0, $f8, $01, $00
-	db $f0, $00, $02, $00
-	db $f0, $08, $00, $20
-	db $f8, $f0, $03, $00
-	db $f8, $f8, $04, $00
-	db $f8, $00, $04, $20
-	db $f8, $08, $05, $00
-	db $00, $f0, $05, $60
-	db $00, $f8, $04, $40
-	db $00, $00, $04, $60
-	db $00, $08, $03, $60
-	db $08, $f0, $00, $40
-	db $08, $f8, $02, $60
-	db $08, $00, $01, $60
-	db $08, $08, $00, $60
-
-Unknown_cfc82:
-	db $f8, $f0, $00, $00
-	db $f8, $f8, $01, $00
-	db $f8, $00, $00, $60
-	db $00, $f8, $00, $00
-	db $00, $00, $01, $00
-	db $00, $08, $00, $60
-
-Unknown_cfc9a:
-	db $f8, $0c, $00, $00
-	db $f8, $14, $01, $00
-	db $00, $fc, $02, $00
-	db $00, $04, $03, $00
-	db $00, $0c, $04, $00
-	db $00, $14, $05, $00
-
-Unknown_cfcb2:
-	db $f8, $f8, $00, $00
-	db $f8, $00, $01, $60
-	db $00, $f8, $01, $00
-	db $00, $00, $01, $20
-
-Unknown_cfcc2:
-	db $f0, $9c, $00, $00
-	db $e0, $ac, $00, $00
-	db $f8, $bc, $00, $00
-	db $d8, $cc, $00, $00
-	db $e8, $dc, $00, $00
-	db $d8, $ec, $00, $00
-	db $e8, $fc, $00, $00
-	db $e8, $04, $00, $00
-	db $d8, $14, $00, $00
-	db $00, $24, $00, $00
-	db $f0, $34, $00, $00
-	db $e0, $44, $00, $00
-	db $f0, $54, $00, $00
-; cfcf6
-
-AnimObjGFX: ; cfcf6
-
-object_gfx: MACRO
-; label, # tiles
-	db \2
-	db BANK(\1)
-	dw \1
-ENDM
-
-	object_gfx AnimObj00GFX, 0
-	object_gfx AnimObj01GFX, 21
-	object_gfx AnimObj02GFX, 6
-	object_gfx AnimObj03GFX, 6
-	object_gfx AnimObj04GFX, 20
-	object_gfx AnimObj05GFX, 26
-	object_gfx AnimObj06GFX, 18
-	object_gfx AnimObj07GFX, 12
-	object_gfx AnimObj08GFX, 9
-	object_gfx AnimObj09GFX, 17
-	object_gfx AnimObj10GFX, 6
-	object_gfx AnimObj11GFX, 10
-	object_gfx AnimObj12GFX, 9
-	object_gfx AnimObj13GFX, 13
-	object_gfx AnimObj14GFX, 16
-	object_gfx AnimObj15GFX, 2
-	object_gfx AnimObj16GFX, 11
-	object_gfx AnimObj17GFX, 9
-	object_gfx AnimObj18GFX, 9
-	object_gfx AnimObj19GFX, 19
-	object_gfx AnimObj20GFX, 10
-	object_gfx AnimObj21GFX, 12
-	object_gfx AnimObj22GFX, 18
-	object_gfx AnimObj23GFX, 13
-	object_gfx AnimObj24GFX, 10
-	object_gfx AnimObj25GFX, 27
-	object_gfx AnimObj26GFX, 12
-	object_gfx AnimObj27GFX, 14
-	object_gfx AnimObj28GFX, 16
-	object_gfx AnimObj29GFX, 7
-	object_gfx AnimObj30GFX, 8
-	object_gfx AnimObj31GFX, 40
-	object_gfx AnimObj32GFX, 36
-	object_gfx AnimObj33GFX, 16
-	object_gfx AnimObj34GFX, 48
-	object_gfx AnimObj35GFX, 18
-	object_gfx AnimObj36GFX, 38
-	object_gfx AnimObj37GFX, 35
-	object_gfx AnimObj38GFX, 18
-	object_gfx AnimObj39GFX, 24
-	object_gfx NULL, 1
-	object_gfx NULL, 1
-; cfd9e
+INCLUDE "battle/objects/framesets.asm"
+INCLUDE "battle/objects/oam.asm"
+INCLUDE "battle/objects/gfx_headers.asm"
--- a/battle/anims.asm
+++ b/battle/anims.asm
@@ -309,14 +309,14 @@
 	anim_jumpif GREAT_BALL, .GreatBall
 	; any other ball
 	anim_2gfx ANIM_GFX_POKE_BALL, ANIM_GFX_SMOKE
-	anim_sound $1a, SFX_THROW_BALL
-	anim_obj $15, 68, 92, $40
+	anim_sound 6, 2, SFX_THROW_BALL
+	anim_obj ANIM_OBJ_15, 68, 92, $40
 	anim_wait 36
-	anim_obj $15, 136, 65, $0
+	anim_obj ANIM_OBJ_15, 136, 65, $0
 	anim_setobj $2, $7
 	anim_wait 16
-	anim_sound $1, SFX_BALL_POOF
-	anim_obj $1c, 136, 64, $10
+	anim_sound 0, 1, SFX_BALL_POOF
+	anim_obj ANIM_OBJ_1C, 136, 64, $10
 	anim_wait 16
 	anim_jump .Shake
 ; c92f2
@@ -323,10 +323,10 @@
 
 .TheTrainerBlockedTheBall: ; c92f2
 	anim_2gfx ANIM_GFX_POKE_BALL, ANIM_GFX_HIT
-	anim_sound $1a, SFX_THROW_BALL
-	anim_obj $16, 64, 92, $20
+	anim_sound 6, 2, SFX_THROW_BALL
+	anim_obj ANIM_OBJ_16, 64, 92, $20
 	anim_wait 20
-	anim_obj $1, 112, 40, $0
+	anim_obj ANIM_OBJ_01, 112, 40, $0
 	anim_wait 32
 	anim_ret
 ; c9305
@@ -333,14 +333,14 @@
 
 .UltraBall: ; c9305
 	anim_2gfx ANIM_GFX_POKE_BALL, ANIM_GFX_SMOKE
-	anim_sound $1a, SFX_THROW_BALL
-	anim_obj $15, 68, 92, $40
+	anim_sound 6, 2, SFX_THROW_BALL
+	anim_obj ANIM_OBJ_15, 68, 92, $40
 	anim_wait 36
-	anim_obj $15, 136, 65, $0
+	anim_obj ANIM_OBJ_15, 136, 65, $0
 	anim_setobj $2, $7
 	anim_wait 16
-	anim_sound $1, SFX_BALL_POOF
-	anim_obj $1c, 136, 64, $10
+	anim_sound 0, 1, SFX_BALL_POOF
+	anim_obj ANIM_OBJ_1C, 136, 64, $10
 	anim_wait 16
 	anim_jump .Shake
 ; c9326
@@ -347,14 +347,14 @@
 
 .GreatBall: ; c9326
 	anim_2gfx ANIM_GFX_POKE_BALL, ANIM_GFX_SMOKE
-	anim_sound $1a, SFX_THROW_BALL
-	anim_obj $15, 68, 92, $40
+	anim_sound 6, 2, SFX_THROW_BALL
+	anim_obj ANIM_OBJ_15, 68, 92, $40
 	anim_wait 36
-	anim_obj $15, 136, 65, $0
+	anim_obj ANIM_OBJ_15, 136, 65, $0
 	anim_setobj $2, $7
 	anim_wait 16
-	anim_sound $1, SFX_BALL_POOF
-	anim_obj $1c, 136, 64, $10
+	anim_sound 0, 1, SFX_BALL_POOF
+	anim_obj ANIM_OBJ_1C, 136, 64, $10
 	anim_wait 16
 	anim_jump .Shake
 ; c9347
@@ -361,34 +361,34 @@
 
 .MasterBall: ; c9347
 	anim_3gfx ANIM_GFX_POKE_BALL, ANIM_GFX_SMOKE, ANIM_GFX_SPEED
-	anim_sound $1a, SFX_THROW_BALL
-	anim_obj $15, 64, 92, $20
+	anim_sound 6, 2, SFX_THROW_BALL
+	anim_obj ANIM_OBJ_15, 64, 92, $20
 	anim_wait 36
-	anim_obj $15, 136, 65, $0
+	anim_obj ANIM_OBJ_15, 136, 65, $0
 	anim_setobj $2, $7
 	anim_wait 16
-	anim_sound $1, SFX_BALL_POOF
-	anim_obj $1c, 136, 64, $10
+	anim_sound 0, 1, SFX_BALL_POOF
+	anim_obj ANIM_OBJ_1C, 136, 64, $10
 	anim_wait 24
-	anim_sound $1, SFX_MASTER_BALL
-	anim_obj $2b, 136, 56, $30
-	anim_obj $2b, 136, 56, $31
-	anim_obj $2b, 136, 56, $32
-	anim_obj $2b, 136, 56, $33
-	anim_obj $2b, 136, 56, $34
-	anim_obj $2b, 136, 56, $35
-	anim_obj $2b, 136, 56, $36
-	anim_obj $2b, 136, 56, $37
+	anim_sound 0, 1, SFX_MASTER_BALL
+	anim_obj ANIM_OBJ_2B, 136, 56, $30
+	anim_obj ANIM_OBJ_2B, 136, 56, $31
+	anim_obj ANIM_OBJ_2B, 136, 56, $32
+	anim_obj ANIM_OBJ_2B, 136, 56, $33
+	anim_obj ANIM_OBJ_2B, 136, 56, $34
+	anim_obj ANIM_OBJ_2B, 136, 56, $35
+	anim_obj ANIM_OBJ_2B, 136, 56, $36
+	anim_obj ANIM_OBJ_2B, 136, 56, $37
 	anim_wait 64
 .Shake: ; c9392
 	anim_bgeffect ANIM_BG_RETURN_MON, $0, $0, $0
 	anim_wait 8
-	anim_incobj $2
+	anim_incobj  2
 	anim_wait 16
-	anim_sound $1, SFX_CHANGE_DEX_MODE
-	anim_incobj $1
+	anim_sound 0, 1, SFX_CHANGE_DEX_MODE
+	anim_incobj  1
 	anim_wait 32
-	anim_sound $1, SFX_BALL_BOUNCE
+	anim_sound 0, 1, SFX_BALL_BOUNCE
 	anim_wait 32
 	anim_wait 32
 	anim_wait 32
@@ -399,8 +399,8 @@
 	anim_checkpokeball
 	anim_jumpvar $1, .Click
 	anim_jumpvar $2, .BreakFree
-	anim_incobj $1
-	anim_sound $1, SFX_BALL_WIGGLE
+	anim_incobj  1
+	anim_sound 0, 1, SFX_BALL_WIGGLE
 	anim_jump .Loop
 ; c93bc
 
@@ -411,8 +411,8 @@
 
 .BreakFree: ; c93be
 	anim_setobj $1, $b
-	anim_sound $1, SFX_BALL_POOF
-	anim_obj $1c, 136, 64, $10
+	anim_sound 0, 1, SFX_BALL_POOF
+	anim_obj ANIM_OBJ_1C, 136, 64, $10
 	anim_wait 2
 	anim_bgeffect ANIM_BG_ENTER_MON, $0, $0, $0
 	anim_wait 32
@@ -426,8 +426,8 @@
 	anim_1gfx ANIM_GFX_SMOKE
 	anim_call BattleAnim_SendOutMon_branch_cbca7
 	anim_bgeffect $2b, $0, $1, $0
-	anim_sound $0, SFX_BALL_POOF
-	anim_obj $1b, 48, 96, $0
+	anim_sound 0, 0, SFX_BALL_POOF
+	anim_obj ANIM_OBJ_1B, 48, 96, $0
 	anim_bgeffect ANIM_BG_ENTER_MON, $0, $1, $0
 	anim_wait 128
 	anim_wait 4
@@ -442,8 +442,8 @@
 	anim_wait 1
 	anim_bgeffect ANIM_BG_SHOW_MON, $0, $1, $0
 	anim_wait 4
-	anim_sound $0, SFX_BALL_POOF
-	anim_obj $1b, 48, 96, $0
+	anim_sound 0, 0, SFX_BALL_POOF
+	anim_obj ANIM_OBJ_1B, 48, 96, $0
 	anim_incbgeffect $2a
 	anim_wait 96
 	anim_incbgeffect $2a
@@ -455,29 +455,29 @@
 	anim_1gfx ANIM_GFX_SPEED
 	anim_bgeffect ANIM_BG_FLASH_INVERTED, $0, $4, $3
 	anim_bgeffect $6, $0, $2, $0
-	anim_sound $0, SFX_SHINE
-	anim_obj $6d, 48, 96, $0
+	anim_sound 0, 0, SFX_SHINE
+	anim_obj ANIM_OBJ_6D, 48, 96, $0
 	anim_wait 4
-	anim_sound $0, SFX_SHINE
-	anim_obj $6d, 48, 96, $8
+	anim_sound 0, 0, SFX_SHINE
+	anim_obj ANIM_OBJ_6D, 48, 96, $8
 	anim_wait 4
-	anim_sound $0, SFX_SHINE
-	anim_obj $6d, 48, 96, $10
+	anim_sound 0, 0, SFX_SHINE
+	anim_obj ANIM_OBJ_6D, 48, 96, $10
 	anim_wait 4
-	anim_sound $0, SFX_SHINE
-	anim_obj $6d, 48, 96, $18
+	anim_sound 0, 0, SFX_SHINE
+	anim_obj ANIM_OBJ_6D, 48, 96, $18
 	anim_wait 4
-	anim_sound $0, SFX_SHINE
-	anim_obj $6d, 48, 96, $20
+	anim_sound 0, 0, SFX_SHINE
+	anim_obj ANIM_OBJ_6D, 48, 96, $20
 	anim_wait 4
-	anim_sound $0, SFX_SHINE
-	anim_obj $6d, 48, 96, $28
+	anim_sound 0, 0, SFX_SHINE
+	anim_obj ANIM_OBJ_6D, 48, 96, $28
 	anim_wait 4
-	anim_sound $0, SFX_SHINE
-	anim_obj $6d, 48, 96, $30
+	anim_sound 0, 0, SFX_SHINE
+	anim_obj ANIM_OBJ_6D, 48, 96, $30
 	anim_wait 4
-	anim_sound $0, SFX_SHINE
-	anim_obj $6d, 48, 96, $38
+	anim_sound 0, 0, SFX_SHINE
+	anim_obj ANIM_OBJ_6D, 48, 96, $38
 	anim_wait 32
 	anim_ret
 ; c9471
@@ -484,8 +484,8 @@
 
 BattleAnim_SendOutMon_branch_c9471: ; c9471
 	anim_1gfx ANIM_GFX_SMOKE
-	anim_sound $0, SFX_BALL_POOF
-	anim_obj $1c, 44, 96, $0
+	anim_sound 0, 0, SFX_BALL_POOF
+	anim_obj ANIM_OBJ_1C, 44, 96, $0
 	anim_wait 4
 	anim_bgeffect ANIM_BG_ENTER_MON, $0, $1, $0
 	anim_wait 32
@@ -493,7 +493,7 @@
 ; c9483
 
 BattleAnim_ReturnMon: ; c9483
-	anim_sound $0, SFX_BALL_POOF
+	anim_sound 0, 0, SFX_BALL_POOF
 BattleAnim_BatonPass_branch_c9486: ; c9486
 	anim_bgeffect ANIM_BG_RETURN_MON, $0, $1, $0
 	anim_wait 32
@@ -502,7 +502,7 @@
 
 BattleAnim_Confused: ; c948d
 	anim_1gfx ANIM_GFX_STATUS
-	anim_sound $0, SFX_KINESIS
+	anim_sound 0, 0, SFX_KINESIS
 	anim_obj ANIM_OBJ_CHICK, 44, 56, $15
 	anim_obj ANIM_OBJ_CHICK, 44, 56, $aa
 	anim_obj ANIM_OBJ_CHICK, 44, 56, $bf
@@ -512,11 +512,11 @@
 
 BattleAnim_Slp: ; c94a3
 	anim_1gfx ANIM_GFX_STATUS
-	anim_sound $0, SFX_TAIL_WHIP
+	anim_sound 0, 0, SFX_TAIL_WHIP
 BattleAnim_Slp_branch_c94a8: ; c94a8
-	anim_obj $54, 64, 80, $0
+	anim_obj ANIM_OBJ_54, 64, 80, $0
 	anim_wait 40
-	anim_loop $3, BattleAnim_Slp_branch_c94a8
+	anim_loop 3, BattleAnim_Slp_branch_c94a8
 	anim_wait 32
 	anim_ret
 ; c94b4
@@ -524,10 +524,10 @@
 BattleAnim_Brn: ; c94b4
 	anim_1gfx ANIM_GFX_FIRE
 BattleAnim_Brn_branch_c94b6: ; c94b6
-	anim_sound $0, SFX_BURN
-	anim_obj $10, 56, 88, $10
+	anim_sound 0, 0, SFX_BURN
+	anim_obj ANIM_OBJ_BURNED, 56, 88, $10
 	anim_wait 4
-	anim_loop $3, BattleAnim_Brn_branch_c94b6
+	anim_loop 3, BattleAnim_Brn_branch_c94b6
 	anim_wait 6
 	anim_ret
 ; c94c5
@@ -534,10 +534,10 @@
 
 BattleAnim_Psn: ; c94c5
 	anim_1gfx ANIM_GFX_POISON
-	anim_sound $0, SFX_POISON
+	anim_sound 0, 0, SFX_POISON
 	anim_obj ANIM_OBJ_SKULL, 64, 56, $0
 	anim_wait 8
-	anim_sound $0, SFX_POISON
+	anim_sound 0, 0, SFX_POISON
 	anim_obj ANIM_OBJ_SKULL, 48, 56, $0
 	anim_wait 8
 	anim_ret
@@ -545,14 +545,14 @@
 
 BattleAnim_Sap: ; c94da
 	anim_1gfx ANIM_GFX_CHARGE
-	anim_sound $1b, SFX_WATER_GUN
-	anim_obj $45, 128, 48, $2
+	anim_sound 6, 3, SFX_WATER_GUN
+	anim_obj ANIM_OBJ_45, 128, 48, $2
 	anim_wait 6
-	anim_sound $1b, SFX_WATER_GUN
-	anim_obj $45, 136, 64, $3
+	anim_sound 6, 3, SFX_WATER_GUN
+	anim_obj ANIM_OBJ_45, 136, 64, $3
 	anim_wait 6
-	anim_sound $1b, SFX_WATER_GUN
-	anim_obj $45, 136, 32, $4
+	anim_sound 6, 3, SFX_WATER_GUN
+	anim_obj ANIM_OBJ_45, 136, 32, $4
 	anim_wait 16
 	anim_ret
 ; c94f8
@@ -560,9 +560,9 @@
 BattleAnim_Frz: ; c94f8
 	anim_1gfx ANIM_GFX_ICE
 	anim_obj ANIM_OBJ_FROZEN, 44, 110, $0
-	anim_sound $0, SFX_SHINE
+	anim_sound 0, 0, SFX_SHINE
 	anim_wait 16
-	anim_sound $0, SFX_SHINE
+	anim_sound 0, 0, SFX_SHINE
 	anim_wait 16
 	anim_ret
 ; c9508
@@ -570,7 +570,7 @@
 BattleAnim_Par: ; c9508
 	anim_1gfx ANIM_GFX_STATUS
 	anim_bgeffect $6, $0, $2, $0
-	anim_sound $0, SFX_THUNDERSHOCK
+	anim_sound 0, 0, SFX_THUNDERSHOCK
 	anim_obj ANIM_OBJ_PARALYZED, 20, 88, $42
 	anim_obj ANIM_OBJ_PARALYZED, 76, 88, $c2
 	anim_wait 128
@@ -579,10 +579,10 @@
 
 BattleAnim_InLove: ; c951e
 	anim_1gfx ANIM_GFX_OBJECTS
-	anim_sound $0, SFX_LICK
+	anim_sound 0, 0, SFX_LICK
 	anim_obj ANIM_OBJ_HEART, 64, 76, $0
 	anim_wait 32
-	anim_sound $0, SFX_LICK
+	anim_sound 0, 0, SFX_LICK
 	anim_obj ANIM_OBJ_HEART, 36, 72, $0
 	anim_wait 32
 	anim_ret
@@ -590,15 +590,15 @@
 
 BattleAnim_InSandstorm: ; c9533
 	anim_1gfx ANIM_GFX_POWDER
-	anim_obj $a2, 88, 0, $0
+	anim_obj ANIM_OBJ_A2, 88, 0, $0
 	anim_wait 8
-	anim_obj $a2, 72, 0, $1
+	anim_obj ANIM_OBJ_A2, 72, 0, $1
 	anim_wait 8
-	anim_obj $a2, 56, 0, $2
+	anim_obj ANIM_OBJ_A2, 56, 0, $2
 BattleAnim_InSandstorm_branch_c9546: ; c9546
-	anim_sound $1, SFX_MENU
+	anim_sound 0, 1, SFX_MENU
 	anim_wait 8
-	anim_loop $6, BattleAnim_InSandstorm_branch_c9546
+	anim_loop 6, BattleAnim_InSandstorm_branch_c9546
 	anim_wait 8
 	anim_ret
 ; c9550
@@ -605,8 +605,8 @@
 
 BattleAnim_InNightmare: ; c9550
 	anim_1gfx ANIM_GFX_ANGELS
-	anim_sound $0, SFX_BUBBLEBEAM
-	anim_obj $95, 68, 80, $0
+	anim_sound 0, 0, SFX_BUBBLEBEAM
+	anim_obj ANIM_OBJ_95, 68, 80, $0
 	anim_wait 40
 	anim_ret
 ; c955c
@@ -614,11 +614,11 @@
 BattleAnim_InWhirlpool: ; c955c
 	anim_1gfx ANIM_GFX_WIND
 	anim_bgeffect ANIM_BG_WHIRLPOOL, $0, $0, $0
-	anim_sound $1, SFX_SURF
+	anim_sound 0, 1, SFX_SURF
 BattleAnim_InWhirlpool_branch_c9566: ; c9566
 	anim_obj ANIM_OBJ_GUST, 132, 72, $0
 	anim_wait 6
-	anim_loop $6, BattleAnim_InWhirlpool_branch_c9566
+	anim_loop 6, BattleAnim_InWhirlpool_branch_c9566
 	anim_incbgeffect ANIM_BG_WHIRLPOOL
 	anim_wait 1
 	anim_ret
@@ -626,8 +626,8 @@
 
 BattleAnim_HitConfusion: ; c9574
 	anim_1gfx ANIM_GFX_HIT
-	anim_sound $0, SFX_POUND
-	anim_obj $4, 44, 96, $0
+	anim_sound 0, 0, SFX_POUND
+	anim_obj ANIM_OBJ_04, 44, 96, $0
 	anim_wait 16
 	anim_ret
 ; c9580
@@ -642,7 +642,7 @@
 	anim_wait 5
 	anim_bgeffect ANIM_BG_SHOW_MON, $0, $0, $0
 	anim_wait 5
-	anim_loop $3, BattleAnim_EnemyDamage_branch_c9581
+	anim_loop 3, BattleAnim_EnemyDamage_branch_c9581
 	anim_ret
 ; c9592
 
@@ -684,10 +684,10 @@
 
 BattleAnim_Pound: ; c95c3
 	anim_1gfx ANIM_GFX_HIT
-	anim_sound $1, SFX_POUND
-	anim_obj $8, 136, 56, $0
+	anim_sound 0, 1, SFX_POUND
+	anim_obj ANIM_OBJ_08, 136, 56, $0
 	anim_wait 6
-	anim_obj $1, 136, 56, $0
+	anim_obj ANIM_OBJ_01, 136, 56, $0
 	anim_wait 16
 	anim_ret
 ; c95d5
@@ -694,20 +694,20 @@
 
 BattleAnim_KarateChop: ; c95d5
 	anim_1gfx ANIM_GFX_HIT
-	anim_sound $1, SFX_KARATE_CHOP
-	anim_obj $8, 136, 40, $0
+	anim_sound 0, 1, SFX_KARATE_CHOP
+	anim_obj ANIM_OBJ_08, 136, 40, $0
 	anim_wait 6
-	anim_obj $1, 136, 40, $0
+	anim_obj ANIM_OBJ_01, 136, 40, $0
 	anim_wait 6
-	anim_sound $1, SFX_KARATE_CHOP
-	anim_obj $8, 136, 44, $0
+	anim_sound 0, 1, SFX_KARATE_CHOP
+	anim_obj ANIM_OBJ_08, 136, 44, $0
 	anim_wait 6
-	anim_obj $1, 136, 44, $0
+	anim_obj ANIM_OBJ_01, 136, 44, $0
 	anim_wait 6
-	anim_sound $1, SFX_KARATE_CHOP
-	anim_obj $8, 136, 48, $0
+	anim_sound 0, 1, SFX_KARATE_CHOP
+	anim_obj ANIM_OBJ_08, 136, 48, $0
 	anim_wait 6
-	anim_obj $1, 136, 48, $0
+	anim_obj ANIM_OBJ_01, 136, 48, $0
 	anim_wait 16
 	anim_ret
 ; c9605
@@ -715,19 +715,19 @@
 BattleAnim_Doubleslap: ; c9605
 	anim_1gfx ANIM_GFX_HIT
 	anim_jumpif $1, BattleAnim_Doubleslap_branch_c961b
-	anim_sound $1, SFX_DOUBLESLAP
-	anim_obj $8, 144, 48, $0
+	anim_sound 0, 1, SFX_DOUBLESLAP
+	anim_obj ANIM_OBJ_08, 144, 48, $0
 	anim_wait 6
-	anim_obj $1, 144, 48, $0
+	anim_obj ANIM_OBJ_01, 144, 48, $0
 	anim_wait 8
 	anim_ret
 ; c961b
 
 BattleAnim_Doubleslap_branch_c961b: ; c961b
-	anim_sound $1, SFX_DOUBLESLAP
-	anim_obj $8, 120, 48, $0
+	anim_sound 0, 1, SFX_DOUBLESLAP
+	anim_obj ANIM_OBJ_08, 120, 48, $0
 	anim_wait 6
-	anim_obj $1, 120, 48, $0
+	anim_obj ANIM_OBJ_01, 120, 48, $0
 	anim_wait 8
 	anim_ret
 ; c962b
@@ -735,19 +735,19 @@
 BattleAnim_CometPunch: ; c962b
 	anim_1gfx ANIM_GFX_HIT
 	anim_jumpif $1, BattleAnim_CometPunch_branch_c9641
-	anim_sound $1, SFX_COMET_PUNCH
-	anim_obj $6, 144, 48, $0
+	anim_sound 0, 1, SFX_COMET_PUNCH
+	anim_obj ANIM_OBJ_06, 144, 48, $0
 	anim_wait 6
-	anim_obj $1, 144, 48, $0
+	anim_obj ANIM_OBJ_01, 144, 48, $0
 	anim_wait 8
 	anim_ret
 ; c9641
 
 BattleAnim_CometPunch_branch_c9641: ; c9641
-	anim_sound $1, SFX_COMET_PUNCH
-	anim_obj $6, 120, 64, $0
+	anim_sound 0, 1, SFX_COMET_PUNCH
+	anim_obj ANIM_OBJ_06, 120, 64, $0
 	anim_wait 6
-	anim_obj $1, 120, 64, $0
+	anim_obj ANIM_OBJ_01, 120, 64, $0
 	anim_wait 8
 	anim_ret
 ; c9651
@@ -760,32 +760,32 @@
 	anim_bgeffect ANIM_BG_FLASH_INVERTED, $0, $8, $3
 BattleAnim_Bide_branch_c965e: ; c965e
 BattleAnim_MegaPunch_branch_c965e: ; c965e
-	anim_sound $1, SFX_MEGA_PUNCH
-	anim_obj $6, 136, 56, $0
-	anim_obj $0, 136, 56, $0
+	anim_sound 0, 1, SFX_MEGA_PUNCH
+	anim_obj ANIM_OBJ_06, 136, 56, $0
+	anim_obj ANIM_OBJ_00, 136, 56, $0
 	anim_wait 6
-	anim_obj $6, 136, 56, $0
+	anim_obj ANIM_OBJ_06, 136, 56, $0
 	anim_wait 6
-	anim_loop $3, BattleAnim_Bide_branch_c965e
+	anim_loop 3, BattleAnim_Bide_branch_c965e
 	anim_ret
 ; c9677
 
 BattleAnim_Stomp: ; c9677
 	anim_1gfx ANIM_GFX_HIT
-	anim_sound $1, SFX_STOMP
-	anim_obj $7, 136, 40, $0
+	anim_sound 0, 1, SFX_STOMP
+	anim_obj ANIM_OBJ_07, 136, 40, $0
 	anim_wait 6
-	anim_obj $1, 136, 40, $0
+	anim_obj ANIM_OBJ_01, 136, 40, $0
 	anim_wait 6
-	anim_sound $1, SFX_STOMP
-	anim_obj $7, 136, 44, $0
+	anim_sound 0, 1, SFX_STOMP
+	anim_obj ANIM_OBJ_07, 136, 44, $0
 	anim_wait 6
-	anim_obj $1, 136, 44, $0
+	anim_obj ANIM_OBJ_01, 136, 44, $0
 	anim_wait 6
-	anim_sound $1, SFX_STOMP
-	anim_obj $7, 136, 48, $0
+	anim_sound 0, 1, SFX_STOMP
+	anim_obj ANIM_OBJ_07, 136, 48, $0
 	anim_wait 6
-	anim_obj $1, 136, 48, $0
+	anim_obj ANIM_OBJ_01, 136, 48, $0
 	anim_wait 16
 	anim_ret
 ; c96a7
@@ -793,19 +793,19 @@
 BattleAnim_DoubleKick: ; c96a7
 	anim_1gfx ANIM_GFX_HIT
 	anim_jumpif $1, BattleAnim_DoubleKick_branch_c96bd
-	anim_sound $1, SFX_DOUBLE_KICK
-	anim_obj $7, 144, 48, $0
+	anim_sound 0, 1, SFX_DOUBLE_KICK
+	anim_obj ANIM_OBJ_07, 144, 48, $0
 	anim_wait 6
-	anim_obj $1, 144, 48, $0
+	anim_obj ANIM_OBJ_01, 144, 48, $0
 	anim_wait 8
 	anim_ret
 ; c96bd
 
 BattleAnim_DoubleKick_branch_c96bd: ; c96bd
-	anim_sound $1, SFX_DOUBLE_KICK
-	anim_obj $7, 120, 64, $0
+	anim_sound 0, 1, SFX_DOUBLE_KICK
+	anim_obj ANIM_OBJ_07, 120, 64, $0
 	anim_wait 6
-	anim_obj $1, 120, 64, $0
+	anim_obj ANIM_OBJ_01, 120, 64, $0
 	anim_wait 8
 	anim_ret
 ; c96cd
@@ -813,14 +813,14 @@
 BattleAnim_JumpKick: ; c96cd
 	anim_1gfx ANIM_GFX_HIT
 	anim_jumpif $1, BattleAnim_JumpKick_branch_c96f1
-	anim_sound $1, SFX_JUMP_KICK
-	anim_obj $7, 112, 72, $0
-	anim_obj $7, 100, 60, $0
+	anim_sound 0, 1, SFX_JUMP_KICK
+	anim_obj ANIM_OBJ_07, 112, 72, $0
+	anim_obj ANIM_OBJ_07, 100, 60, $0
 	anim_setobj $1, $2
 	anim_setobj $2, $2
 	anim_wait 24
-	anim_sound $1, SFX_DOUBLE_KICK
-	anim_obj $4, 136, 48, $0
+	anim_sound 0, 1, SFX_DOUBLE_KICK
+	anim_obj ANIM_OBJ_04, 136, 48, $0
 	anim_wait 16
 	anim_ret
 ; c96f1
@@ -827,8 +827,8 @@
 
 BattleAnim_JumpKick_branch_c96f1: ; c96f1
 	anim_wait 8
-	anim_sound $0, SFX_DOUBLE_KICK
-	anim_obj $4, 44, 88, $0
+	anim_sound 0, 0, SFX_DOUBLE_KICK
+	anim_obj ANIM_OBJ_04, 44, 88, $0
 	anim_wait 16
 	anim_ret
 ; c96fc
@@ -838,12 +838,12 @@
 	anim_bgeffect $1f, $40, $2, $0
 	anim_jumpif $1, BattleAnim_HiJumpKick_branch_c971e
 	anim_wait 32
-	anim_sound $1, SFX_JUMP_KICK
-	anim_obj $7, 112, 72, $0
+	anim_sound 0, 1, SFX_JUMP_KICK
+	anim_obj ANIM_OBJ_07, 112, 72, $0
 	anim_setobj $1, $2
 	anim_wait 16
-	anim_sound $1, SFX_DOUBLE_KICK
-	anim_obj $4, 136, 48, $0
+	anim_sound 0, 1, SFX_DOUBLE_KICK
+	anim_obj ANIM_OBJ_04, 136, 48, $0
 	anim_wait 16
 	anim_ret
 ; c971e
@@ -850,8 +850,8 @@
 
 BattleAnim_HiJumpKick_branch_c971e: ; c971e
 	anim_wait 16
-	anim_sound $0, SFX_DOUBLE_KICK
-	anim_obj $4, 44, 88, $0
+	anim_sound 0, 0, SFX_DOUBLE_KICK
+	anim_obj ANIM_OBJ_04, 44, 88, $0
 	anim_wait 16
 	anim_ret
 ; c9729
@@ -858,11 +858,11 @@
 
 BattleAnim_RollingKick: ; c9729
 	anim_1gfx ANIM_GFX_HIT
-	anim_sound $1, SFX_DOUBLE_KICK
-	anim_obj $7, 112, 56, $0
+	anim_sound 0, 1, SFX_DOUBLE_KICK
+	anim_obj ANIM_OBJ_07, 112, 56, $0
 	anim_setobj $1, $3
 	anim_wait 12
-	anim_obj $1, 136, 48, $0
+	anim_obj ANIM_OBJ_01, 136, 48, $0
 	anim_wait 16
 	anim_ret
 ; c973e
@@ -873,13 +873,13 @@
 	anim_wait 67
 	anim_bgeffect ANIM_BG_FLASH_INVERTED, $0, $8, $3
 BattleAnim_MegaKick_branch_c974b: ; c974b
-	anim_sound $1, SFX_MEGA_KICK
-	anim_obj $7, 136, 56, $0
-	anim_obj $0, 136, 56, $0
+	anim_sound 0, 1, SFX_MEGA_KICK
+	anim_obj ANIM_OBJ_07, 136, 56, $0
+	anim_obj ANIM_OBJ_00, 136, 56, $0
 	anim_wait 6
-	anim_obj $7, 136, 56, $0
+	anim_obj ANIM_OBJ_07, 136, 56, $0
 	anim_wait 6
-	anim_loop $3, BattleAnim_MegaKick_branch_c974b
+	anim_loop 3, BattleAnim_MegaKick_branch_c974b
 	anim_ret
 ; c9764
 
@@ -886,10 +886,10 @@
 BattleAnim_HyperFang: ; c9764
 	anim_1gfx ANIM_GFX_HIT
 	anim_bgeffect $1f, $20, $1, $0
-	anim_sound $1, SFX_BITE
-	anim_obj $9, 136, 56, $0
+	anim_sound 0, 1, SFX_BITE
+	anim_obj ANIM_OBJ_09, 136, 56, $0
 	anim_wait 6
-	anim_obj $1, 136, 56, $0
+	anim_obj ANIM_OBJ_01, 136, 56, $0
 	anim_wait 16
 	anim_ret
 ; c977b
@@ -900,34 +900,34 @@
 	anim_wait 48
 	anim_bgeffect ANIM_BG_FLASH_INVERTED, $0, $8, $3
 BattleAnim_SuperFang_branch_c9788: ; c9788
-	anim_sound $1, SFX_BITE
-	anim_obj $9, 136, 56, $0
-	anim_obj $0, 136, 56, $0
+	anim_sound 0, 1, SFX_BITE
+	anim_obj ANIM_OBJ_09, 136, 56, $0
+	anim_obj ANIM_OBJ_00, 136, 56, $0
 	anim_wait 6
-	anim_obj $9, 136, 56, $0
+	anim_obj ANIM_OBJ_09, 136, 56, $0
 	anim_wait 6
-	anim_loop $3, BattleAnim_SuperFang_branch_c9788
+	anim_loop 3, BattleAnim_SuperFang_branch_c9788
 	anim_ret
 ; c97a1
 
 BattleAnim_Ember: ; c97a1
 	anim_1gfx ANIM_GFX_FIRE
-	anim_sound $1a, SFX_EMBER
-	anim_obj $b, 64, 96, $12
+	anim_sound 6, 2, SFX_EMBER
+	anim_obj ANIM_OBJ_0B, 64, 96, $12
 	anim_wait 4
-	anim_sound $1a, SFX_EMBER
-	anim_obj $b, 64, 100, $14
+	anim_sound 6, 2, SFX_EMBER
+	anim_obj ANIM_OBJ_0B, 64, 100, $14
 	anim_wait 4
-	anim_sound $1a, SFX_EMBER
-	anim_obj $b, 64, 84, $13
+	anim_sound 6, 2, SFX_EMBER
+	anim_obj ANIM_OBJ_0B, 64, 84, $13
 	anim_wait 16
-	anim_incobj $1
-	anim_incobj $2
-	anim_incobj $3
-	anim_sound $1, SFX_EMBER
-	anim_obj $b, 120, 68, $30
-	anim_obj $b, 132, 68, $30
-	anim_obj $b, 144, 68, $30
+	anim_incobj  1
+	anim_incobj  2
+	anim_incobj  3
+	anim_sound 0, 1, SFX_EMBER
+	anim_obj ANIM_OBJ_0B, 120, 68, $30
+	anim_obj ANIM_OBJ_0B, 132, 68, $30
+	anim_obj ANIM_OBJ_0B, 144, 68, $30
 	anim_wait 32
 	anim_ret
 ; c97d8
@@ -934,7 +934,7 @@
 
 BattleAnim_FirePunch: ; c97d8
 	anim_2gfx ANIM_GFX_HIT, ANIM_GFX_FIRE
-	anim_obj $a, 136, 56, $43
+	anim_obj ANIM_OBJ_0A, 136, 56, $43
 	anim_call BattleAnim_FirePunch_branch_cbbcc
 	anim_wait 16
 	anim_ret
@@ -943,19 +943,19 @@
 BattleAnim_FireSpin: ; c97e5
 	anim_1gfx ANIM_GFX_FIRE
 BattleAnim_FireSpin_branch_c97e7: ; c97e7
-	anim_sound $1a, SFX_EMBER
-	anim_obj $e, 64, 88, $4
+	anim_sound 6, 2, SFX_EMBER
+	anim_obj ANIM_OBJ_0E, 64, 88, $4
 	anim_wait 2
-	anim_sound $1a, SFX_EMBER
-	anim_obj $e, 64, 96, $3
+	anim_sound 6, 2, SFX_EMBER
+	anim_obj ANIM_OBJ_0E, 64, 96, $3
 	anim_wait 2
-	anim_sound $1a, SFX_EMBER
-	anim_obj $e, 64, 88, $3
+	anim_sound 6, 2, SFX_EMBER
+	anim_obj ANIM_OBJ_0E, 64, 88, $3
 	anim_wait 2
-	anim_sound $1a, SFX_EMBER
-	anim_obj $e, 64, 96, $4
+	anim_sound 6, 2, SFX_EMBER
+	anim_obj ANIM_OBJ_0E, 64, 96, $4
 	anim_wait 2
-	anim_loop $2, BattleAnim_FireSpin_branch_c97e7
+	anim_loop 2, BattleAnim_FireSpin_branch_c97e7
 	anim_wait 96
 	anim_ret
 ; c9811
@@ -963,10 +963,10 @@
 BattleAnim_DragonRage: ; c9811
 	anim_1gfx ANIM_GFX_FIRE
 BattleAnim_DragonRage_branch_c9813: ; c9813
-	anim_sound $1a, SFX_EMBER
-	anim_obj $c, 64, 92, $0
+	anim_sound 6, 2, SFX_EMBER
+	anim_obj ANIM_OBJ_0C, 64, 92, $0
 	anim_wait 3
-	anim_loop $10, BattleAnim_DragonRage_branch_c9813
+	anim_loop 16, BattleAnim_DragonRage_branch_c9813
 	anim_wait 64
 	anim_ret
 ; c9822
@@ -973,27 +973,27 @@
 
 BattleAnim_Flamethrower: ; c9822
 	anim_1gfx ANIM_GFX_FIRE
-	anim_sound $1a, SFX_EMBER
-	anim_obj $d, 64, 92, $3
+	anim_sound 6, 2, SFX_EMBER
+	anim_obj ANIM_OBJ_0D, 64, 92, $3
 	anim_wait 2
-	anim_obj $d, 75, 86, $5
+	anim_obj ANIM_OBJ_0D, 75, 86, $5
 	anim_wait 2
-	anim_obj $d, 85, 81, $7
+	anim_obj ANIM_OBJ_0D, 85, 81, $7
 	anim_wait 2
-	anim_obj $d, 96, 76, $9
+	anim_obj ANIM_OBJ_0D, 96, 76, $9
 	anim_wait 2
-	anim_obj $d, 106, 71, $b
+	anim_obj ANIM_OBJ_0D, 106, 71, $b
 	anim_wait 2
-	anim_obj $d, 116, 66, $c
+	anim_obj ANIM_OBJ_0D, 116, 66, $c
 	anim_wait 2
-	anim_obj $d, 126, 61, $a
+	anim_obj ANIM_OBJ_0D, 126, 61, $a
 	anim_wait 2
-	anim_obj $d, 136, 56, $8
+	anim_obj ANIM_OBJ_0D, 136, 56, $8
 	anim_wait 16
 BattleAnim_Flamethrower_branch_c9857: ; c9857
-	anim_sound $1, SFX_EMBER
+	anim_sound 0, 1, SFX_EMBER
 	anim_wait 16
-	anim_loop $6, BattleAnim_Flamethrower_branch_c9857
+	anim_loop 6, BattleAnim_Flamethrower_branch_c9857
 	anim_wait 16
 	anim_ret
 ; c9861
@@ -1001,34 +1001,34 @@
 BattleAnim_FireBlast: ; c9861
 	anim_1gfx ANIM_GFX_FIRE
 BattleAnim_FireBlast_branch_c9863: ; c9863
-	anim_sound $1a, SFX_EMBER
-	anim_obj $f, 64, 92, $7
+	anim_sound 6, 2, SFX_EMBER
+	anim_obj ANIM_OBJ_0F, 64, 92, $7
 	anim_wait 6
-	anim_loop $a, BattleAnim_FireBlast_branch_c9863
+	anim_loop 10, BattleAnim_FireBlast_branch_c9863
 BattleAnim_FireBlast_branch_c9870: ; c9870
-	anim_sound $1, SFX_EMBER
+	anim_sound 0, 1, SFX_EMBER
 	anim_wait 8
-	anim_loop $a, BattleAnim_FireBlast_branch_c9870
-	anim_incobj $1
-	anim_incobj $2
-	anim_incobj $3
-	anim_incobj $4
-	anim_incobj $5
-	anim_incobj $6
-	anim_incobj $7
-	anim_incobj $8
-	anim_incobj $9
-	anim_incobj $a
+	anim_loop 10, BattleAnim_FireBlast_branch_c9870
+	anim_incobj  1
+	anim_incobj  2
+	anim_incobj  3
+	anim_incobj  4
+	anim_incobj  5
+	anim_incobj  6
+	anim_incobj  7
+	anim_incobj  8
+	anim_incobj  9
+	anim_incobj 10
 	anim_wait 2
 BattleAnim_FireBlast_branch_c988d: ; c988d
-	anim_sound $1, SFX_EMBER
-	anim_obj $f, 136, 56, $1
-	anim_obj $f, 136, 56, $2
-	anim_obj $f, 136, 56, $3
-	anim_obj $f, 136, 56, $4
-	anim_obj $f, 136, 56, $5
+	anim_sound 0, 1, SFX_EMBER
+	anim_obj ANIM_OBJ_0F, 136, 56, $1
+	anim_obj ANIM_OBJ_0F, 136, 56, $2
+	anim_obj ANIM_OBJ_0F, 136, 56, $3
+	anim_obj ANIM_OBJ_0F, 136, 56, $4
+	anim_obj ANIM_OBJ_0F, 136, 56, $5
 	anim_wait 16
-	anim_loop $2, BattleAnim_FireBlast_branch_c988d
+	anim_loop 2, BattleAnim_FireBlast_branch_c988d
 	anim_wait 32
 	anim_ret
 ; c98b0
@@ -1035,7 +1035,7 @@
 
 BattleAnim_IcePunch: ; c98b0
 	anim_2gfx ANIM_GFX_HIT, ANIM_GFX_ICE
-	anim_obj $a, 136, 56, $43
+	anim_obj ANIM_OBJ_0A, 136, 56, $43
 	anim_call BattleAnim_IcePunch_branch_cbbdf
 	anim_wait 32
 	anim_ret
@@ -1044,20 +1044,20 @@
 BattleAnim_IceBeam: ; c98bd
 	anim_1gfx ANIM_GFX_ICE
 BattleAnim_IceBeam_branch_c98bf: ; c98bf
-	anim_sound $1a, SFX_SHINE
-	anim_obj $13, 64, 92, $4
+	anim_sound 6, 2, SFX_SHINE
+	anim_obj ANIM_OBJ_13, 64, 92, $4
 	anim_wait 4
-	anim_loop $5, BattleAnim_IceBeam_branch_c98bf
-	anim_obj $29, 136, 74, $10
+	anim_loop 5, BattleAnim_IceBeam_branch_c98bf
+	anim_obj ANIM_OBJ_29, 136, 74, $10
 BattleAnim_IceBeam_branch_c98d1: ; c98d1
-	anim_sound $1a, SFX_SHINE
-	anim_obj $13, 64, 92, $4
+	anim_sound 6, 2, SFX_SHINE
+	anim_obj ANIM_OBJ_13, 64, 92, $4
 	anim_wait 4
-	anim_loop $f, BattleAnim_IceBeam_branch_c98d1
+	anim_loop 15, BattleAnim_IceBeam_branch_c98d1
 	anim_wait 48
-	anim_sound $1, SFX_SHINE
+	anim_sound 0, 1, SFX_SHINE
 	anim_wait 8
-	anim_sound $1, SFX_SHINE
+	anim_sound 0, 1, SFX_SHINE
 	anim_wait 8
 	anim_ret
 ; c98e8
@@ -1065,23 +1065,23 @@
 BattleAnim_Blizzard: ; c98e8
 	anim_1gfx ANIM_GFX_ICE
 BattleAnim_Blizzard_branch_c98ea: ; c98ea
-	anim_sound $1a, SFX_SHINE
-	anim_obj $11, 64, 88, $63
+	anim_sound 6, 2, SFX_SHINE
+	anim_obj ANIM_OBJ_11, 64, 88, $63
 	anim_wait 2
-	anim_sound $1a, SFX_SHINE
-	anim_obj $11, 64, 80, $64
+	anim_sound 6, 2, SFX_SHINE
+	anim_obj ANIM_OBJ_11, 64, 80, $64
 	anim_wait 2
-	anim_sound $1a, SFX_SHINE
-	anim_obj $11, 64, 96, $63
+	anim_sound 6, 2, SFX_SHINE
+	anim_obj ANIM_OBJ_11, 64, 96, $63
 	anim_wait 2
-	anim_loop $3, BattleAnim_Blizzard_branch_c98ea
+	anim_loop 3, BattleAnim_Blizzard_branch_c98ea
 	anim_bgeffect ANIM_BG_WHITE_HUES, $0, $8, $0
 	anim_wait 32
-	anim_obj $29, 136, 74, $10
+	anim_obj ANIM_OBJ_29, 136, 74, $10
 	anim_wait 128
-	anim_sound $1, SFX_SHINE
+	anim_sound 0, 1, SFX_SHINE
 	anim_wait 8
-	anim_sound $1, SFX_SHINE
+	anim_sound 0, 1, SFX_SHINE
 	anim_wait 24
 	anim_ret
 ; c991e
@@ -1088,14 +1088,14 @@
 
 BattleAnim_Bubble: ; c991e
 	anim_1gfx ANIM_GFX_BUBBLE
-	anim_sound $82, SFX_WATER_GUN
-	anim_obj $21, 64, 92, $c1
+	anim_sound 32, 2, SFX_WATER_GUN
+	anim_obj ANIM_OBJ_21, 64, 92, $c1
 	anim_wait 6
-	anim_sound $82, SFX_WATER_GUN
-	anim_obj $21, 64, 92, $e1
+	anim_sound 32, 2, SFX_WATER_GUN
+	anim_obj ANIM_OBJ_21, 64, 92, $e1
 	anim_wait 6
-	anim_sound $82, SFX_WATER_GUN
-	anim_obj $21, 64, 92, $d1
+	anim_sound 32, 2, SFX_WATER_GUN
+	anim_obj ANIM_OBJ_21, 64, 92, $d1
 	anim_wait 128
 	anim_wait 32
 	anim_ret
@@ -1104,16 +1104,16 @@
 BattleAnim_Bubblebeam: ; c993d
 	anim_1gfx ANIM_GFX_BUBBLE
 BattleAnim_Bubblebeam_branch_c993f: ; c993f
-	anim_sound $42, SFX_BUBBLEBEAM
-	anim_obj $21, 64, 92, $92
+	anim_sound 16, 2, SFX_BUBBLEBEAM
+	anim_obj ANIM_OBJ_21, 64, 92, $92
 	anim_wait 6
-	anim_sound $42, SFX_BUBBLEBEAM
-	anim_obj $21, 64, 92, $b3
+	anim_sound 16, 2, SFX_BUBBLEBEAM
+	anim_obj ANIM_OBJ_21, 64, 92, $b3
 	anim_wait 6
-	anim_sound $42, SFX_BUBBLEBEAM
-	anim_obj $21, 64, 92, $f4
+	anim_sound 16, 2, SFX_BUBBLEBEAM
+	anim_obj ANIM_OBJ_21, 64, 92, $f4
 	anim_wait 8
-	anim_loop $3, BattleAnim_Bubblebeam_branch_c993f
+	anim_loop 3, BattleAnim_Bubblebeam_branch_c993f
 	anim_wait 64
 	anim_clearobjs
 	anim_bgeffect $30, $0, $0, $0
@@ -1131,12 +1131,12 @@
 	anim_bgeffect $30, $0, $0, $0
 	anim_1gfx ANIM_GFX_WATER
 	anim_call BattleAnim_WaterGun_branch_cbcca
-	anim_sound $42, SFX_WATER_GUN
-	anim_obj $24, 64, 88, $0
+	anim_sound 16, 2, SFX_WATER_GUN
+	anim_obj ANIM_OBJ_24, 64, 88, $0
 	anim_wait 8
-	anim_obj $24, 64, 76, $0
+	anim_obj ANIM_OBJ_24, 64, 76, $0
 	anim_wait 8
-	anim_obj $24, 64, 82, $0
+	anim_obj ANIM_OBJ_24, 64, 82, $0
 	anim_wait 24
 	anim_bgeffect $31, $1c, $0, $0
 	anim_wait 8
@@ -1154,32 +1154,32 @@
 	anim_bgeffect $30, $0, $0, $0
 	anim_1gfx ANIM_GFX_WATER
 	anim_call BattleAnim_HydroPump_branch_cbcca
-	anim_sound $1, SFX_HYDRO_PUMP
-	anim_obj $25, 108, 72, $0
+	anim_sound 0, 1, SFX_HYDRO_PUMP
+	anim_obj ANIM_OBJ_25, 108, 72, $0
 	anim_bgeffect $31, $1c, $0, $0
 	anim_wait 8
-	anim_sound $1, SFX_HYDRO_PUMP
-	anim_obj $25, 116, 72, $0
+	anim_sound 0, 1, SFX_HYDRO_PUMP
+	anim_obj ANIM_OBJ_25, 116, 72, $0
 	anim_bgeffect $31, $8, $0, $0
 	anim_wait 8
-	anim_sound $1, SFX_HYDRO_PUMP
-	anim_obj $25, 124, 72, $0
+	anim_sound 0, 1, SFX_HYDRO_PUMP
+	anim_obj ANIM_OBJ_25, 124, 72, $0
 	anim_bgeffect $31, $30, $0, $0
 	anim_wait 8
-	anim_sound $1, SFX_HYDRO_PUMP
-	anim_obj $25, 132, 72, $0
+	anim_sound 0, 1, SFX_HYDRO_PUMP
+	anim_obj ANIM_OBJ_25, 132, 72, $0
 	anim_bgeffect $31, $1c, $0, $0
 	anim_wait 8
-	anim_sound $1, SFX_HYDRO_PUMP
-	anim_obj $25, 140, 72, $0
+	anim_sound 0, 1, SFX_HYDRO_PUMP
+	anim_obj ANIM_OBJ_25, 140, 72, $0
 	anim_bgeffect $31, $8, $0, $0
 	anim_wait 8
-	anim_sound $1, SFX_HYDRO_PUMP
-	anim_obj $25, 148, 72, $0
+	anim_sound 0, 1, SFX_HYDRO_PUMP
+	anim_obj ANIM_OBJ_25, 148, 72, $0
 	anim_bgeffect $31, $30, $0, $0
 	anim_wait 8
-	anim_sound $1, SFX_HYDRO_PUMP
-	anim_obj $25, 156, 72, $0
+	anim_sound 0, 1, SFX_HYDRO_PUMP
+	anim_obj ANIM_OBJ_25, 156, 72, $0
 	anim_bgeffect $31, $1c, $0, $0
 	anim_wait 32
 	anim_call BattleAnim_HydroPump_branch_cbcd2
@@ -1191,12 +1191,12 @@
 BattleAnim_Surf: ; c9a2a
 	anim_1gfx ANIM_GFX_BUBBLE
 	anim_bgeffect ANIM_BG_SURF, $0, $0, $0
-	anim_obj $22, 88, 104, $8
+	anim_obj ANIM_OBJ_22, 88, 104, $8
 BattleAnim_Surf_branch_c9a36: ; c9a36
-	anim_sound $1, SFX_SURF
+	anim_sound 0, 1, SFX_SURF
 	anim_wait 32
-	anim_loop $4, BattleAnim_Surf_branch_c9a36
-	anim_incobj $1
+	anim_loop 4, BattleAnim_Surf_branch_c9a36
+	anim_incobj  1
 	anim_wait 56
 	anim_ret
 ; c9a42
@@ -1203,13 +1203,13 @@
 
 BattleAnim_VineWhip: ; c9a42
 	anim_1gfx ANIM_GFX_WHIP
-	anim_sound $1, SFX_VINE_WHIP
-	anim_obj $40, 116, 52, $80
+	anim_sound 0, 1, SFX_VINE_WHIP
+	anim_obj ANIM_OBJ_40, 116, 52, $80
 	anim_wait 4
-	anim_sound $1, SFX_VINE_WHIP
-	anim_obj $3f, 128, 60, $0
+	anim_sound 0, 1, SFX_VINE_WHIP
+	anim_obj ANIM_OBJ_3F, 128, 60, $0
 	anim_wait 4
-	anim_incobj $1
+	anim_incobj  1
 	anim_wait 4
 	anim_ret
 ; c9a5a
@@ -1216,16 +1216,16 @@
 
 BattleAnim_LeechSeed: ; c9a5a
 	anim_1gfx ANIM_GFX_PLANT
-	anim_sound $42, SFX_VINE_WHIP
-	anim_obj $4a, 48, 80, $20
+	anim_sound 16, 2, SFX_VINE_WHIP
+	anim_obj ANIM_OBJ_4A, 48, 80, $20
 	anim_wait 8
-	anim_sound $42, SFX_VINE_WHIP
-	anim_obj $4a, 48, 80, $30
+	anim_sound 16, 2, SFX_VINE_WHIP
+	anim_obj ANIM_OBJ_4A, 48, 80, $30
 	anim_wait 8
-	anim_sound $42, SFX_VINE_WHIP
-	anim_obj $4a, 48, 80, $28
+	anim_sound 16, 2, SFX_VINE_WHIP
+	anim_obj ANIM_OBJ_4A, 48, 80, $28
 	anim_wait 32
-	anim_sound $1, SFX_CHARGE
+	anim_sound 0, 1, SFX_CHARGE
 	anim_wait 128
 	anim_ret
 ; c9a7c
@@ -1232,48 +1232,48 @@
 
 BattleAnim_RazorLeaf: ; c9a7c
 	anim_1gfx ANIM_GFX_PLANT
-	anim_sound $0, SFX_VINE_WHIP
-	anim_obj $14, 48, 80, $28
-	anim_obj $14, 48, 80, $5c
-	anim_obj $14, 48, 80, $10
-	anim_obj $14, 48, 80, $e8
-	anim_obj $14, 48, 80, $9c
-	anim_obj $14, 48, 80, $d0
+	anim_sound 0, 0, SFX_VINE_WHIP
+	anim_obj ANIM_OBJ_14, 48, 80, $28
+	anim_obj ANIM_OBJ_14, 48, 80, $5c
+	anim_obj ANIM_OBJ_14, 48, 80, $10
+	anim_obj ANIM_OBJ_14, 48, 80, $e8
+	anim_obj ANIM_OBJ_14, 48, 80, $9c
+	anim_obj ANIM_OBJ_14, 48, 80, $d0
 	anim_wait 6
-	anim_obj $14, 48, 80, $1c
-	anim_obj $14, 48, 80, $50
-	anim_obj $14, 48, 80, $dc
-	anim_obj $14, 48, 80, $90
+	anim_obj ANIM_OBJ_14, 48, 80, $1c
+	anim_obj ANIM_OBJ_14, 48, 80, $50
+	anim_obj ANIM_OBJ_14, 48, 80, $dc
+	anim_obj ANIM_OBJ_14, 48, 80, $90
 	anim_wait 80
-	anim_sound $42, SFX_VINE_WHIP
-	anim_incobj $3
+	anim_sound 16, 2, SFX_VINE_WHIP
+	anim_incobj  3
 	anim_wait 2
-	anim_sound $42, SFX_VINE_WHIP
-	anim_incobj $5
+	anim_sound 16, 2, SFX_VINE_WHIP
+	anim_incobj  5
 	anim_wait 2
-	anim_sound $42, SFX_VINE_WHIP
-	anim_incobj $7
+	anim_sound 16, 2, SFX_VINE_WHIP
+	anim_incobj  7
 	anim_wait 2
-	anim_sound $42, SFX_VINE_WHIP
-	anim_incobj $9
+	anim_sound 16, 2, SFX_VINE_WHIP
+	anim_incobj  9
 	anim_wait 2
-	anim_sound $42, SFX_VINE_WHIP
-	anim_incobj $1
+	anim_sound 16, 2, SFX_VINE_WHIP
+	anim_incobj  1
 	anim_wait 2
-	anim_sound $42, SFX_VINE_WHIP
-	anim_incobj $2
+	anim_sound 16, 2, SFX_VINE_WHIP
+	anim_incobj  2
 	anim_wait 2
-	anim_sound $42, SFX_VINE_WHIP
-	anim_incobj $4
+	anim_sound 16, 2, SFX_VINE_WHIP
+	anim_incobj  4
 	anim_wait 2
-	anim_sound $42, SFX_VINE_WHIP
-	anim_incobj $6
+	anim_sound 16, 2, SFX_VINE_WHIP
+	anim_incobj  6
 	anim_wait 2
-	anim_sound $42, SFX_VINE_WHIP
-	anim_incobj $8
+	anim_sound 16, 2, SFX_VINE_WHIP
+	anim_incobj  8
 	anim_wait 2
-	anim_sound $42, SFX_VINE_WHIP
-	anim_incobj $a
+	anim_sound 16, 2, SFX_VINE_WHIP
+	anim_incobj 10
 	anim_wait 64
 	anim_ret
 ; c9af2
@@ -1281,16 +1281,16 @@
 BattleAnim_Solarbeam: ; c9af2
 	anim_jumpif $0, BattleAnim_Solarbeam_branch_c9b30
 	anim_1gfx ANIM_GFX_CHARGE
-	anim_sound $0, SFX_CHARGE
-	anim_obj $3d, 48, 84, $0
-	anim_obj $3c, 48, 84, $0
-	anim_obj $3c, 48, 84, $8
-	anim_obj $3c, 48, 84, $10
-	anim_obj $3c, 48, 84, $18
-	anim_obj $3c, 48, 84, $20
-	anim_obj $3c, 48, 84, $28
-	anim_obj $3c, 48, 84, $30
-	anim_obj $3c, 48, 84, $38
+	anim_sound 0, 0, SFX_CHARGE
+	anim_obj ANIM_OBJ_3D, 48, 84, $0
+	anim_obj ANIM_OBJ_3C, 48, 84, $0
+	anim_obj ANIM_OBJ_3C, 48, 84, $8
+	anim_obj ANIM_OBJ_3C, 48, 84, $10
+	anim_obj ANIM_OBJ_3C, 48, 84, $18
+	anim_obj ANIM_OBJ_3C, 48, 84, $20
+	anim_obj ANIM_OBJ_3C, 48, 84, $28
+	anim_obj ANIM_OBJ_3C, 48, 84, $30
+	anim_obj ANIM_OBJ_3C, 48, 84, $38
 	anim_wait 104
 	anim_bgeffect ANIM_BG_FLASH_WHITE, $0, $4, $2
 	anim_wait 64
@@ -1307,10 +1307,10 @@
 
 BattleAnim_Thunderpunch: ; c9b3c
 	anim_2gfx ANIM_GFX_HIT, ANIM_GFX_LIGHTNING
-	anim_obj $a, 136, 56, $43
+	anim_obj ANIM_OBJ_0A, 136, 56, $43
 	anim_bgeffect ANIM_BG_FLASH_INVERTED, $0, $8, $2
-	anim_sound $1, SFX_THUNDER
-	anim_obj $2f, 152, 68, $0
+	anim_sound 0, 1, SFX_THUNDER
+	anim_obj ANIM_OBJ_2F, 152, 68, $0
 	anim_wait 64
 	anim_ret
 ; c9b53
@@ -1317,10 +1317,10 @@
 
 BattleAnim_Thundershock: ; c9b53
 	anim_2gfx ANIM_GFX_LIGHTNING, ANIM_GFX_EXPLOSION
-	anim_obj $34, 136, 56, $2
+	anim_obj ANIM_OBJ_34, 136, 56, $2
 	anim_wait 16
-	anim_sound $1, SFX_THUNDERSHOCK
-	anim_obj $33, 136, 56, $0
+	anim_sound 0, 1, SFX_THUNDERSHOCK
+	anim_obj ANIM_OBJ_33, 136, 56, $0
 	anim_wait 96
 	anim_ret
 ; c9b66
@@ -1327,11 +1327,11 @@
 
 BattleAnim_Thunderbolt: ; c9b66
 	anim_2gfx ANIM_GFX_LIGHTNING, ANIM_GFX_EXPLOSION
-	anim_obj $32, 136, 56, $2
+	anim_obj ANIM_OBJ_32, 136, 56, $2
 	anim_wait 16
 	anim_bgeffect ANIM_BG_FLASH_INVERTED, $0, $4, $2
-	anim_sound $1, SFX_THUNDERSHOCK
-	anim_obj $31, 136, 56, $0
+	anim_sound 0, 1, SFX_THUNDERSHOCK
+	anim_obj ANIM_OBJ_31, 136, 56, $0
 	anim_wait 64
 	anim_bgeffect ANIM_BG_FLASH_INVERTED, $0, $4, $2
 	anim_wait 64
@@ -1341,11 +1341,11 @@
 BattleAnim_ThunderWave: ; c9b84
 	anim_1gfx ANIM_GFX_LIGHTNING
 	anim_bgeffect ANIM_BG_FLASH_INVERTED, $0, $4, $3
-	anim_sound $1, SFX_THUNDERSHOCK
-	anim_obj $30, 136, 56, $0
+	anim_sound 0, 1, SFX_THUNDERSHOCK
+	anim_obj ANIM_OBJ_30, 136, 56, $0
 	anim_wait 20
 	anim_bgp $1b
-	anim_incobj $1
+	anim_incobj  1
 	anim_wait 96
 	anim_ret
 ; c9b9a
@@ -1353,14 +1353,14 @@
 BattleAnim_Thunder: ; c9b9a
 	anim_1gfx ANIM_GFX_LIGHTNING
 	anim_bgeffect ANIM_BG_FLASH_INVERTED, $0, $6, $20
-	anim_sound $1, SFX_THUNDER
-	anim_obj $2e, 120, 68, $0
+	anim_sound 0, 1, SFX_THUNDER
+	anim_obj ANIM_OBJ_2E, 120, 68, $0
 	anim_wait 16
-	anim_sound $1, SFX_THUNDER
-	anim_obj $2f, 152, 68, $0
+	anim_sound 0, 1, SFX_THUNDER
+	anim_obj ANIM_OBJ_2F, 152, 68, $0
 	anim_wait 16
-	anim_sound $1, SFX_THUNDER
-	anim_obj $2d, 136, 68, $0
+	anim_sound 0, 1, SFX_THUNDER
+	anim_obj ANIM_OBJ_2D, 136, 68, $0
 	anim_wait 48
 	anim_ret
 ; c9bbd
@@ -1371,22 +1371,22 @@
 	anim_bgeffect $6, $0, $1, $0
 BattleAnim_RazorWind_branch_c9bc8: ; c9bc8
 	anim_bgeffect ANIM_BG_FLASH_INVERTED, $0, $4, $2
-	anim_sound $1, SFX_RAZOR_WIND
-	anim_obj $42, 152, 40, $3
+	anim_sound 0, 1, SFX_RAZOR_WIND
+	anim_obj ANIM_OBJ_42, 152, 40, $3
 	anim_wait 4
-	anim_sound $1, SFX_RAZOR_WIND
-	anim_obj $42, 136, 56, $3
+	anim_sound 0, 1, SFX_RAZOR_WIND
+	anim_obj ANIM_OBJ_42, 136, 56, $3
 	anim_wait 4
-	anim_sound $1, SFX_RAZOR_WIND
-	anim_obj $42, 152, 64, $3
+	anim_sound 0, 1, SFX_RAZOR_WIND
+	anim_obj ANIM_OBJ_42, 152, 64, $3
 	anim_wait 4
-	anim_sound $1, SFX_RAZOR_WIND
-	anim_obj $41, 120, 40, $83
+	anim_sound 0, 1, SFX_RAZOR_WIND
+	anim_obj ANIM_OBJ_41, 120, 40, $83
 	anim_wait 4
-	anim_sound $1, SFX_RAZOR_WIND
-	anim_obj $41, 120, 64, $83
+	anim_sound 0, 1, SFX_RAZOR_WIND
+	anim_obj ANIM_OBJ_41, 120, 64, $83
 	anim_wait 4
-	anim_loop $3, BattleAnim_RazorWind_branch_c9bc8
+	anim_loop 3, BattleAnim_RazorWind_branch_c9bc8
 	anim_wait 24
 	anim_ret
 ; c9c00
@@ -1394,24 +1394,24 @@
 BattleAnim_Sonicboom_JP: ; c9c00
 	anim_2gfx ANIM_GFX_WHIP, ANIM_GFX_HIT
 BattleAnim_Sonicboom_JP_branch_c9c03: ; c9c03
-	anim_sound $c, SFX_RAZOR_WIND
-	anim_obj $43, 64, 80, $3
+	anim_sound 3, 0, SFX_RAZOR_WIND
+	anim_obj ANIM_OBJ_43, 64, 80, $3
 	anim_wait 8
-	anim_sound $c, SFX_RAZOR_WIND
-	anim_obj $43, 64, 88, $2
+	anim_sound 3, 0, SFX_RAZOR_WIND
+	anim_obj ANIM_OBJ_43, 64, 88, $2
 	anim_wait 8
-	anim_sound $c, SFX_RAZOR_WIND
-	anim_obj $43, 64, 96, $4
+	anim_sound 3, 0, SFX_RAZOR_WIND
+	anim_obj ANIM_OBJ_43, 64, 96, $4
 	anim_wait 8
-	anim_loop $2, BattleAnim_Sonicboom_JP_branch_c9c03
+	anim_loop 2, BattleAnim_Sonicboom_JP_branch_c9c03
 	anim_wait 32
-	anim_incobj $1
-	anim_incobj $2
-	anim_incobj $3
-	anim_incobj $4
-	anim_incobj $5
-	anim_incobj $6
-	anim_obj $1, 136, 56, $0
+	anim_incobj  1
+	anim_incobj  2
+	anim_incobj  3
+	anim_incobj  4
+	anim_incobj  5
+	anim_incobj  6
+	anim_obj ANIM_OBJ_01, 136, 56, $0
 	anim_wait 16
 	anim_ret
 ; c9c36
@@ -1421,13 +1421,13 @@
 	anim_2gfx ANIM_GFX_WIND, ANIM_GFX_HIT
 BattleAnim_Gust_branch_c9c39: ; c9c39
 BattleAnim_Sonicboom_branch_c9c39: ; c9c39
-	anim_sound $1, SFX_RAZOR_WIND
+	anim_sound 0, 1, SFX_RAZOR_WIND
 	anim_obj ANIM_OBJ_GUST, 136, 72, $0
 	anim_wait 6
-	anim_loop $9, BattleAnim_Gust_branch_c9c39
-	anim_obj $1, 144, 64, $18
+	anim_loop 9, BattleAnim_Gust_branch_c9c39
+	anim_obj ANIM_OBJ_01, 144, 64, $18
 	anim_wait 8
-	anim_obj $1, 128, 32, $18
+	anim_obj ANIM_OBJ_01, 128, 32, $18
 	anim_wait 16
 	anim_ret
 ; c9c53
@@ -1445,7 +1445,7 @@
 	anim_call BattleAnim_Selfdestruct_branch_cbb62
 	anim_wait 5
 	anim_bgeffect ANIM_BG_HIDE_MON, $0, $1, $0
-	anim_loop $2, BattleAnim_Selfdestruct_branch_c9c63
+	anim_loop 2, BattleAnim_Selfdestruct_branch_c9c63
 	anim_wait 16
 	anim_ret
 ; c9c72
@@ -1464,7 +1464,7 @@
 	anim_call BattleAnim_Explosion_branch_cbb62
 	anim_wait 5
 	anim_bgeffect ANIM_BG_HIDE_MON, $0, $1, $0
-	anim_loop $2, BattleAnim_Explosion_branch_c9c87
+	anim_loop 2, BattleAnim_Explosion_branch_c9c87
 	anim_wait 16
 	anim_ret
 ; c9c96
@@ -1479,20 +1479,20 @@
 BattleAnim_RockThrow: ; c9c9d
 	anim_1gfx ANIM_GFX_ROCKS
 	anim_bgeffect $1f, $60, $1, $0
-	anim_sound $1, SFX_STRENGTH
-	anim_obj $1e, 128, 64, $40
+	anim_sound 0, 1, SFX_STRENGTH
+	anim_obj ANIM_OBJ_1E, 128, 64, $40
 	anim_wait 2
-	anim_sound $1, SFX_STRENGTH
-	anim_obj $1d, 120, 68, $30
+	anim_sound 0, 1, SFX_STRENGTH
+	anim_obj ANIM_OBJ_1D, 120, 68, $30
 	anim_wait 2
-	anim_sound $1, SFX_STRENGTH
-	anim_obj $1e, 152, 68, $30
+	anim_sound 0, 1, SFX_STRENGTH
+	anim_obj ANIM_OBJ_1E, 152, 68, $30
 	anim_wait 2
-	anim_sound $1, SFX_STRENGTH
-	anim_obj $1d, 144, 64, $40
+	anim_sound 0, 1, SFX_STRENGTH
+	anim_obj ANIM_OBJ_1D, 144, 64, $40
 	anim_wait 2
-	anim_sound $1, SFX_STRENGTH
-	anim_obj $1e, 136, 68, $30
+	anim_sound 0, 1, SFX_STRENGTH
+	anim_obj ANIM_OBJ_1E, 136, 68, $30
 	anim_wait 96
 	anim_ret
 ; c9cd2
@@ -1501,22 +1501,22 @@
 	anim_1gfx ANIM_GFX_ROCKS
 	anim_bgeffect $1f, $c0, $1, $0
 BattleAnim_RockSlide_branch_c9cd9: ; c9cd9
-	anim_sound $1, SFX_STRENGTH
-	anim_obj $1e, 128, 64, $40
+	anim_sound 0, 1, SFX_STRENGTH
+	anim_obj ANIM_OBJ_1E, 128, 64, $40
 	anim_wait 4
-	anim_sound $1, SFX_STRENGTH
-	anim_obj $1d, 120, 68, $30
+	anim_sound 0, 1, SFX_STRENGTH
+	anim_obj ANIM_OBJ_1D, 120, 68, $30
 	anim_wait 4
-	anim_sound $1, SFX_STRENGTH
-	anim_obj $1e, 152, 68, $30
+	anim_sound 0, 1, SFX_STRENGTH
+	anim_obj ANIM_OBJ_1E, 152, 68, $30
 	anim_wait 4
-	anim_sound $1, SFX_STRENGTH
-	anim_obj $1d, 144, 64, $40
+	anim_sound 0, 1, SFX_STRENGTH
+	anim_obj ANIM_OBJ_1D, 144, 64, $40
 	anim_wait 4
-	anim_sound $1, SFX_STRENGTH
-	anim_obj $1e, 136, 68, $30
+	anim_sound 0, 1, SFX_STRENGTH
+	anim_obj ANIM_OBJ_1E, 136, 68, $30
 	anim_wait 16
-	anim_loop $4, BattleAnim_RockSlide_branch_c9cd9
+	anim_loop 4, BattleAnim_RockSlide_branch_c9cd9
 	anim_wait 96
 	anim_ret
 ; c9d0c
@@ -1523,19 +1523,19 @@
 
 BattleAnim_Sing: ; c9d0c
 	anim_1gfx ANIM_GFX_NOISE
-	anim_sound $42, SFX_SING
+	anim_sound 16, 2, SFX_SING
 BattleAnim_Sing_branch_c9d11: ; c9d11
-	anim_obj $23, 64, 92, $0
+	anim_obj ANIM_OBJ_23, 64, 92, $0
 	anim_wait 8
-	anim_obj $23, 64, 92, $1
+	anim_obj ANIM_OBJ_23, 64, 92, $1
 	anim_wait 8
-	anim_obj $23, 64, 92, $2
+	anim_obj ANIM_OBJ_23, 64, 92, $2
 	anim_wait 8
-	anim_obj $23, 64, 92, $0
+	anim_obj ANIM_OBJ_23, 64, 92, $0
 	anim_wait 8
-	anim_obj $23, 64, 92, $2
+	anim_obj ANIM_OBJ_23, 64, 92, $2
 	anim_wait 8
-	anim_loop $4, BattleAnim_Sing_branch_c9d11
+	anim_loop 4, BattleAnim_Sing_branch_c9d11
 	anim_wait 64
 	anim_ret
 ; c9d35
@@ -1549,22 +1549,22 @@
 BattleAnim_SleepPowder_branch_c9d37: ; c9d37
 BattleAnim_Spore_branch_c9d37: ; c9d37
 BattleAnim_StunSpore_branch_c9d37: ; c9d37
-	anim_sound $1, SFX_POWDER
-	anim_obj $26, 104, 16, $0
+	anim_sound 0, 1, SFX_POWDER
+	anim_obj ANIM_OBJ_26, 104, 16, $0
 	anim_wait 4
-	anim_sound $1, SFX_POWDER
-	anim_obj $26, 136, 16, $0
+	anim_sound 0, 1, SFX_POWDER
+	anim_obj ANIM_OBJ_26, 136, 16, $0
 	anim_wait 4
-	anim_sound $1, SFX_POWDER
-	anim_obj $26, 112, 16, $0
+	anim_sound 0, 1, SFX_POWDER
+	anim_obj ANIM_OBJ_26, 112, 16, $0
 	anim_wait 4
-	anim_sound $1, SFX_POWDER
-	anim_obj $26, 128, 16, $0
+	anim_sound 0, 1, SFX_POWDER
+	anim_obj ANIM_OBJ_26, 128, 16, $0
 	anim_wait 4
-	anim_sound $1, SFX_POWDER
-	anim_obj $26, 120, 16, $0
+	anim_sound 0, 1, SFX_POWDER
+	anim_obj ANIM_OBJ_26, 120, 16, $0
 	anim_wait 4
-	anim_loop $2, BattleAnim_Poisonpowder_branch_c9d37
+	anim_loop 2, BattleAnim_Poisonpowder_branch_c9d37
 	anim_wait 96
 	anim_ret
 ; c9d6a
@@ -1586,7 +1586,7 @@
 	anim_wait 64
 	anim_call BattleAnim_AuroraBeam_branch_cbb39
 	anim_wait 48
-	anim_incobj $5
+	anim_incobj  5
 	anim_wait 64
 	anim_ret
 ; c9d95
@@ -1593,9 +1593,9 @@
 
 BattleAnim_Vicegrip: ; c9d95
 	anim_1gfx ANIM_GFX_CUT
-	anim_sound $1, SFX_VICEGRIP
-	anim_obj $37, 152, 40, $0
-	anim_obj $39, 120, 72, $0
+	anim_sound 0, 1, SFX_VICEGRIP
+	anim_obj ANIM_OBJ_37, 152, 40, $0
+	anim_obj ANIM_OBJ_39, 120, 72, $0
 	anim_wait 32
 	anim_ret
 ; c9da6
@@ -1602,10 +1602,10 @@
 
 BattleAnim_Scratch: ; c9da6
 	anim_1gfx ANIM_GFX_CUT
-	anim_sound $1, SFX_SCRATCH
-	anim_obj $37, 144, 48, $0
-	anim_obj $37, 140, 44, $0
-	anim_obj $37, 136, 40, $0
+	anim_sound 0, 1, SFX_SCRATCH
+	anim_obj ANIM_OBJ_37, 144, 48, $0
+	anim_obj ANIM_OBJ_37, 140, 44, $0
+	anim_obj ANIM_OBJ_37, 136, 40, $0
 	anim_wait 32
 	anim_ret
 ; c9dbc
@@ -1613,21 +1613,21 @@
 BattleAnim_FurySwipes: ; c9dbc
 	anim_1gfx ANIM_GFX_CUT
 	anim_jumpif $1, BattleAnim_FurySwipes_branch_c9dd9
-	anim_sound $1, SFX_SCRATCH
-	anim_obj $37, 144, 48, $0
-	anim_obj $37, 140, 44, $0
-	anim_obj $37, 136, 40, $0
-	anim_sound $1, SFX_SCRATCH
+	anim_sound 0, 1, SFX_SCRATCH
+	anim_obj ANIM_OBJ_37, 144, 48, $0
+	anim_obj ANIM_OBJ_37, 140, 44, $0
+	anim_obj ANIM_OBJ_37, 136, 40, $0
+	anim_sound 0, 1, SFX_SCRATCH
 	anim_wait 32
 	anim_ret
 ; c9dd9
 
 BattleAnim_FurySwipes_branch_c9dd9: ; c9dd9
-	anim_sound $1, SFX_SCRATCH
-	anim_obj $38, 120, 48, $0
-	anim_obj $38, 124, 44, $0
-	anim_obj $38, 128, 40, $0
-	anim_sound $1, SFX_SCRATCH
+	anim_sound 0, 1, SFX_SCRATCH
+	anim_obj ANIM_OBJ_38, 120, 48, $0
+	anim_obj ANIM_OBJ_38, 124, 44, $0
+	anim_obj ANIM_OBJ_38, 128, 40, $0
+	anim_sound 0, 1, SFX_SCRATCH
 	anim_wait 32
 	anim_ret
 ; c9df0
@@ -1634,8 +1634,8 @@
 
 BattleAnim_Cut: ; c9df0
 	anim_1gfx ANIM_GFX_CUT
-	anim_sound $1, SFX_CUT
-	anim_obj $3a, 152, 40, $0
+	anim_sound 0, 1, SFX_CUT
+	anim_obj ANIM_OBJ_3A, 152, 40, $0
 	anim_wait 32
 	anim_ret
 ; c9dfc
@@ -1642,9 +1642,9 @@
 
 BattleAnim_Slash: ; c9dfc
 	anim_1gfx ANIM_GFX_CUT
-	anim_sound $1, SFX_CUT
-	anim_obj $3a, 152, 40, $0
-	anim_obj $3a, 148, 36, $0
+	anim_sound 0, 1, SFX_CUT
+	anim_obj ANIM_OBJ_3A, 152, 40, $0
+	anim_obj ANIM_OBJ_3A, 148, 36, $0
 	anim_wait 32
 	anim_ret
 ; c9e0d
@@ -1651,14 +1651,14 @@
 
 BattleAnim_Clamp: ; c9e0d
 	anim_2gfx ANIM_GFX_CUT, ANIM_GFX_HIT
-	anim_obj $35, 136, 56, $a0
-	anim_obj $35, 136, 56, $20
+	anim_obj ANIM_OBJ_35, 136, 56, $a0
+	anim_obj ANIM_OBJ_35, 136, 56, $20
 	anim_wait 16
-	anim_sound $1, SFX_BITE
-	anim_obj $1, 144, 48, $18
+	anim_sound 0, 1, SFX_BITE
+	anim_obj ANIM_OBJ_01, 144, 48, $18
 	anim_wait 32
-	anim_sound $1, SFX_BITE
-	anim_obj $1, 128, 64, $18
+	anim_sound 0, 1, SFX_BITE
+	anim_obj ANIM_OBJ_01, 128, 64, $18
 	anim_wait 16
 	anim_ret
 ; c9e2e
@@ -1665,14 +1665,14 @@
 
 BattleAnim_Bite: ; c9e2e
 	anim_2gfx ANIM_GFX_CUT, ANIM_GFX_HIT
-	anim_obj $36, 136, 56, $98
-	anim_obj $36, 136, 56, $18
+	anim_obj ANIM_OBJ_36, 136, 56, $98
+	anim_obj ANIM_OBJ_36, 136, 56, $18
 	anim_wait 8
-	anim_sound $1, SFX_BITE
-	anim_obj $1, 144, 48, $18
+	anim_sound 0, 1, SFX_BITE
+	anim_obj ANIM_OBJ_01, 144, 48, $18
 	anim_wait 16
-	anim_sound $1, SFX_BITE
-	anim_obj $1, 128, 64, $18
+	anim_sound 0, 1, SFX_BITE
+	anim_obj ANIM_OBJ_01, 128, 64, $18
 	anim_wait 8
 	anim_ret
 ; c9e4f
@@ -1696,8 +1696,8 @@
 	anim_jumpif $1, BattleAnim_Fly_branch_c9e89
 	anim_jumpif $2, BattleAnim_Fly_branch_c9e82
 	anim_1gfx ANIM_GFX_HIT
-	anim_sound $1, SFX_WING_ATTACK
-	anim_obj $1, 136, 56, $0
+	anim_sound 0, 1, SFX_WING_ATTACK
+	anim_obj ANIM_OBJ_01, 136, 56, $0
 	anim_wait 32
 BattleAnim_Fly_branch_c9e82: ; c9e82
 	anim_bgeffect ANIM_BG_SHOW_MON, $0, $1, $0
@@ -1716,7 +1716,7 @@
 
 BattleAnim_DoubleTeam: ; c9e9a
 	anim_call BattleAnim_DoubleTeam_branch_cbcaf
-	anim_sound $0, SFX_PSYBEAM
+	anim_sound 0, 0, SFX_PSYBEAM
 	anim_bgeffect ANIM_BG_DOUBLE_TEAM, $0, $1, $0
 	anim_wait 96
 	anim_incbgeffect ANIM_BG_DOUBLE_TEAM
@@ -1729,16 +1729,16 @@
 BattleAnim_Recover: ; c9eaf
 	anim_1gfx ANIM_GFX_BUBBLE
 	anim_call BattleAnim_Recover_branch_cbca7
-	anim_sound $0, SFX_FULL_HEAL
+	anim_sound 0, 0, SFX_FULL_HEAL
 	anim_bgeffect $18, $0, $1, $40
-	anim_obj $2c, 44, 88, $30
-	anim_obj $2c, 44, 88, $31
-	anim_obj $2c, 44, 88, $32
-	anim_obj $2c, 44, 88, $33
-	anim_obj $2c, 44, 88, $34
-	anim_obj $2c, 44, 88, $35
-	anim_obj $2c, 44, 88, $36
-	anim_obj $2c, 44, 88, $37
+	anim_obj ANIM_OBJ_2C, 44, 88, $30
+	anim_obj ANIM_OBJ_2C, 44, 88, $31
+	anim_obj ANIM_OBJ_2C, 44, 88, $32
+	anim_obj ANIM_OBJ_2C, 44, 88, $33
+	anim_obj ANIM_OBJ_2C, 44, 88, $34
+	anim_obj ANIM_OBJ_2C, 44, 88, $35
+	anim_obj ANIM_OBJ_2C, 44, 88, $36
+	anim_obj ANIM_OBJ_2C, 44, 88, $37
 	anim_wait 64
 	anim_incbgeffect $18
 	anim_call BattleAnim_Recover_branch_cbcb7
@@ -1747,18 +1747,18 @@
 
 BattleAnim_Absorb: ; c9eeb
 	anim_1gfx ANIM_GFX_CHARGE
-	anim_obj $3d, 44, 88, $0
+	anim_obj ANIM_OBJ_3D, 44, 88, $0
 BattleAnim_Absorb_branch_c9ef2: ; c9ef2
-	anim_sound $1b, SFX_WATER_GUN
-	anim_obj $45, 128, 48, $2
+	anim_sound 6, 3, SFX_WATER_GUN
+	anim_obj ANIM_OBJ_45, 128, 48, $2
 	anim_wait 6
-	anim_sound $1b, SFX_WATER_GUN
-	anim_obj $45, 136, 64, $3
+	anim_sound 6, 3, SFX_WATER_GUN
+	anim_obj ANIM_OBJ_45, 136, 64, $3
 	anim_wait 6
-	anim_sound $1b, SFX_WATER_GUN
-	anim_obj $45, 136, 32, $4
+	anim_sound 6, 3, SFX_WATER_GUN
+	anim_obj ANIM_OBJ_45, 136, 32, $4
 	anim_wait 6
-	anim_loop $5, BattleAnim_Absorb_branch_c9ef2
+	anim_loop 5, BattleAnim_Absorb_branch_c9ef2
 	anim_wait 32
 	anim_ret
 ; c9f13
@@ -1769,14 +1769,14 @@
 	anim_bgeffect $1c, $0, $0, $10
 	anim_setvar $0
 BattleAnim_MegaDrain_branch_c9f1f: ; c9f1f
-	anim_sound $1b, SFX_WATER_GUN
-	anim_obj $45, 128, 48, $2
+	anim_sound 6, 3, SFX_WATER_GUN
+	anim_obj ANIM_OBJ_45, 128, 48, $2
 	anim_wait 6
-	anim_sound $1b, SFX_WATER_GUN
-	anim_obj $45, 136, 64, $3
+	anim_sound 6, 3, SFX_WATER_GUN
+	anim_obj ANIM_OBJ_45, 136, 64, $3
 	anim_wait 6
-	anim_sound $1b, SFX_WATER_GUN
-	anim_obj $45, 136, 32, $4
+	anim_sound 6, 3, SFX_WATER_GUN
+	anim_obj ANIM_OBJ_45, 136, 32, $4
 	anim_wait 6
 	anim_incvar
 	anim_jumpvar $7, BattleAnim_MegaDrain_branch_c9f4e
@@ -1785,7 +1785,7 @@
 ; c9f46
 
 BattleAnim_MegaDrain_branch_c9f46: ; c9f46
-	anim_obj $3d, 44, 88, $0
+	anim_obj ANIM_OBJ_3D, 44, 88, $0
 	anim_jump BattleAnim_MegaDrain_branch_c9f1f
 ; c9f4e
 
@@ -1798,20 +1798,20 @@
 
 BattleAnim_EggBomb: ; c9f55
 	anim_2gfx ANIM_GFX_EGG, ANIM_GFX_EXPLOSION
-	anim_sound $0, SFX_SWITCH_POKEMON
-	anim_obj $46, 44, 104, $1
+	anim_sound 0, 0, SFX_SWITCH_POKEMON
+	anim_obj ANIM_OBJ_46, 44, 104, $1
 	anim_wait 128
 	anim_wait 96
-	anim_incobj $1
+	anim_incobj  1
 	anim_bgeffect ANIM_BG_FLASH_INVERTED, $0, $8, $3
-	anim_sound $1, SFX_EGG_BOMB
-	anim_obj $18, 128, 64, $0
+	anim_sound 0, 1, SFX_EGG_BOMB
+	anim_obj ANIM_OBJ_18, 128, 64, $0
 	anim_wait 8
-	anim_sound $1, SFX_EGG_BOMB
-	anim_obj $18, 144, 68, $0
+	anim_sound 0, 1, SFX_EGG_BOMB
+	anim_obj ANIM_OBJ_18, 144, 68, $0
 	anim_wait 8
-	anim_sound $1, SFX_EGG_BOMB
-	anim_obj $18, 136, 72, $0
+	anim_sound 0, 1, SFX_EGG_BOMB
+	anim_obj ANIM_OBJ_18, 136, 72, $0
 	anim_wait 24
 	anim_ret
 ; c9f85
@@ -1819,18 +1819,18 @@
 BattleAnim_Softboiled: ; c9f85
 	anim_2gfx ANIM_GFX_EGG, ANIM_GFX_BUBBLE
 	anim_call BattleAnim_Softboiled_branch_cbca7
-	anim_sound $0, SFX_SWITCH_POKEMON
-	anim_obj $46, 44, 104, $6
+	anim_sound 0, 0, SFX_SWITCH_POKEMON
+	anim_obj ANIM_OBJ_46, 44, 104, $6
 	anim_wait 128
-	anim_incobj $2
-	anim_obj $46, 76, 104, $b
+	anim_incobj  2
+	anim_obj ANIM_OBJ_46, 76, 104, $b
 	anim_wait 16
 	anim_bgeffect $18, $0, $1, $40
-	anim_sound $0, SFX_METRONOME
+	anim_sound 0, 0, SFX_METRONOME
 BattleAnim_Softboiled_branch_c9fa4: ; c9fa4
-	anim_obj $2c, 44, 88, $20
+	anim_obj ANIM_OBJ_2C, 44, 88, $20
 	anim_wait 8
-	anim_loop $8, BattleAnim_Softboiled_branch_c9fa4
+	anim_loop 8, BattleAnim_Softboiled_branch_c9fa4
 	anim_wait 128
 	anim_incbgeffect $18
 	anim_call BattleAnim_Softboiled_branch_cbcb7
@@ -1849,22 +1849,22 @@
 BattleAnim_RazorWind_branch_c9fc4: ; c9fc4
 BattleAnim_SkullBash_branch_c9fc4: ; c9fc4
 BattleAnim_SkyAttack_branch_c9fc4: ; c9fc4
-	anim_sound $0, SFX_SWORDS_DANCE
-	anim_obj $47, 44, 108, $6
+	anim_sound 0, 0, SFX_SWORDS_DANCE
+	anim_obj ANIM_OBJ_47, 44, 108, $6
 	anim_wait 2
-	anim_obj $47, 36, 108, $6
+	anim_obj ANIM_OBJ_47, 36, 108, $6
 	anim_wait 2
-	anim_obj $47, 52, 108, $8
+	anim_obj ANIM_OBJ_47, 52, 108, $8
 	anim_wait 2
-	anim_obj $47, 28, 108, $8
+	anim_obj ANIM_OBJ_47, 28, 108, $8
 	anim_wait 2
-	anim_obj $47, 60, 108, $6
+	anim_obj ANIM_OBJ_47, 60, 108, $6
 	anim_wait 2
-	anim_obj $47, 20, 108, $8
+	anim_obj ANIM_OBJ_47, 20, 108, $8
 	anim_wait 2
-	anim_obj $47, 68, 108, $8
+	anim_obj ANIM_OBJ_47, 68, 108, $8
 	anim_wait 2
-	anim_loop $3, BattleAnim_FocusEnergy_branch_c9fc4
+	anim_loop 3, BattleAnim_FocusEnergy_branch_c9fc4
 	anim_wait 8
 	anim_incbgeffect $16
 	anim_call BattleAnim_FocusEnergy_branch_cbcb7
@@ -1875,7 +1875,7 @@
 	anim_jumpif $0, BattleAnim_Bide_branch_c9651
 	anim_1gfx ANIM_GFX_HIT
 	anim_call BattleAnim_Bide_branch_cbca7
-	anim_sound $0, SFX_ESCAPE_ROPE
+	anim_sound 0, 0, SFX_ESCAPE_ROPE
 	anim_bgeffect $1a, $0, $1, $20
 	anim_wait 72
 	anim_incbgeffect $1a
@@ -1885,17 +1885,17 @@
 
 BattleAnim_Bind: ; ca014
 	anim_1gfx ANIM_GFX_ROPE
-	anim_sound $1, SFX_BIND
-	anim_obj $48, 132, 64, $0
+	anim_sound 0, 1, SFX_BIND
+	anim_obj ANIM_OBJ_48, 132, 64, $0
 	anim_wait 8
-	anim_obj $49, 132, 56, $0
+	anim_obj ANIM_OBJ_49, 132, 56, $0
 	anim_wait 8
-	anim_obj $48, 132, 48, $0
+	anim_obj ANIM_OBJ_48, 132, 48, $0
 	anim_wait 64
-	anim_sound $1, SFX_BIND
-	anim_incobj $1
-	anim_incobj $2
-	anim_incobj $3
+	anim_sound 0, 1, SFX_BIND
+	anim_incobj  1
+	anim_incobj  2
+	anim_incobj  3
 	anim_wait 96
 	anim_ret
 ; ca036
@@ -1902,17 +1902,17 @@
 
 BattleAnim_Wrap: ; ca036
 	anim_1gfx ANIM_GFX_ROPE
-	anim_sound $1, SFX_BIND
-	anim_obj $48, 132, 64, $0
+	anim_sound 0, 1, SFX_BIND
+	anim_obj ANIM_OBJ_48, 132, 64, $0
 	anim_wait 8
-	anim_obj $48, 132, 56, $0
+	anim_obj ANIM_OBJ_48, 132, 56, $0
 	anim_wait 8
-	anim_obj $48, 132, 48, $0
+	anim_obj ANIM_OBJ_48, 132, 48, $0
 	anim_wait 64
-	anim_sound $1, SFX_BIND
-	anim_incobj $1
-	anim_incobj $2
-	anim_incobj $3
+	anim_sound 0, 1, SFX_BIND
+	anim_incobj  1
+	anim_incobj  2
+	anim_incobj  3
 	anim_wait 96
 	anim_ret
 ; ca058
@@ -1920,7 +1920,7 @@
 BattleAnim_Confusion: ; ca058
 	anim_1gfx ANIM_GFX_HIT
 	anim_call BattleAnim_Confusion_branch_cbcca
-	anim_sound $1, SFX_PSYCHIC
+	anim_sound 0, 1, SFX_PSYCHIC
 	anim_bgeffect ANIM_BG_NIGHT_SHADE, $0, $0, $8
 	anim_wait 128
 	anim_incbgeffect ANIM_BG_NIGHT_SHADE
@@ -1930,14 +1930,14 @@
 
 BattleAnim_Constrict: ; ca06c
 	anim_1gfx ANIM_GFX_ROPE
-	anim_sound $1, SFX_BIND
-	anim_obj $49, 132, 64, $0
+	anim_sound 0, 1, SFX_BIND
+	anim_obj ANIM_OBJ_49, 132, 64, $0
 	anim_wait 8
-	anim_obj $48, 132, 48, $0
+	anim_obj ANIM_OBJ_48, 132, 48, $0
 	anim_wait 8
-	anim_obj $49, 132, 40, $0
+	anim_obj ANIM_OBJ_49, 132, 40, $0
 	anim_wait 8
-	anim_obj $48, 132, 56, $0
+	anim_obj ANIM_OBJ_48, 132, 56, $0
 	anim_wait 64
 	anim_ret
 ; ca08a
@@ -1945,9 +1945,9 @@
 BattleAnim_Earthquake: ; ca08a
 	anim_bgeffect $1f, $60, $4, $10
 BattleAnim_Earthquake_branch_ca08f: ; ca08f
-	anim_sound $1, SFX_EMBER
+	anim_sound 0, 1, SFX_EMBER
 	anim_wait 24
-	anim_loop $4, BattleAnim_Earthquake_branch_ca08f
+	anim_loop 4, BattleAnim_Earthquake_branch_ca08f
 	anim_ret
 ; ca098
 
@@ -1955,9 +1955,9 @@
 	anim_bgeffect ANIM_BG_FLASH_INVERTED, $0, $8, $40
 	anim_bgeffect $1f, $60, $4, $0
 BattleAnim_Fissure_branch_ca0a2: ; ca0a2
-	anim_sound $1, SFX_EMBER
+	anim_sound 0, 1, SFX_EMBER
 	anim_wait 24
-	anim_loop $4, BattleAnim_Fissure_branch_ca0a2
+	anim_loop 4, BattleAnim_Fissure_branch_ca0a2
 	anim_ret
 ; ca0ab
 
@@ -1969,7 +1969,7 @@
 BattleAnim_Growl_branch_ca0b5: ; ca0b5
 	anim_call BattleAnim_Growl_branch_cbbbc
 	anim_wait 16
-	anim_loop $3, BattleAnim_Growl_branch_ca0b5
+	anim_loop 3, BattleAnim_Growl_branch_ca0b5
 	anim_wait 9
 	anim_bgeffect ANIM_BG_FEET_FOLLOW, $0, $1, $0
 	anim_wait 8
@@ -1979,7 +1979,7 @@
 	anim_wait 1
 	anim_bgeffect ANIM_BG_SHOW_MON, $0, $1, $0
 	anim_wait 5
-	anim_incobj $a
+	anim_incobj 10
 	anim_wait 8
 	anim_ret
 ; ca0d7
@@ -1991,7 +1991,7 @@
 BattleAnim_Roar_branch_ca0e0: ; ca0e0
 	anim_call BattleAnim_Roar_branch_cbbbc
 	anim_wait 16
-	anim_loop $3, BattleAnim_Roar_branch_ca0e0
+	anim_loop 3, BattleAnim_Roar_branch_ca0e0
 	anim_wait 16
 	anim_jumpif $0, BattleAnim_Roar_branch_ca0f3
 	anim_bgeffect $27, $0, $0, $0
@@ -2003,10 +2003,10 @@
 BattleAnim_Supersonic: ; ca0f4
 	anim_1gfx ANIM_GFX_PSYCHIC
 BattleAnim_Supersonic_branch_ca0f6: ; ca0f6
-	anim_sound $1a, SFX_SUPERSONIC
-	anim_obj $4c, 64, 88, $2
+	anim_sound 6, 2, SFX_SUPERSONIC
+	anim_obj ANIM_OBJ_4C, 64, 88, $2
 	anim_wait 4
-	anim_loop $a, BattleAnim_Supersonic_branch_ca0f6
+	anim_loop 10, BattleAnim_Supersonic_branch_ca0f6
 	anim_wait 64
 	anim_ret
 ; ca105
@@ -2014,11 +2014,11 @@
 BattleAnim_Screech: ; ca105
 	anim_1gfx ANIM_GFX_PSYCHIC
 	anim_bgeffect $1f, $8, $1, $20
-	anim_sound $1a, SFX_SCREECH
+	anim_sound 6, 2, SFX_SCREECH
 BattleAnim_Screech_branch_ca10f: ; ca10f
-	anim_obj $4c, 64, 88, $2
+	anim_obj ANIM_OBJ_4C, 64, 88, $2
 	anim_wait 2
-	anim_loop $2, BattleAnim_Screech_branch_ca10f
+	anim_loop 2, BattleAnim_Screech_branch_ca10f
 	anim_wait 64
 	anim_ret
 ; ca11b
@@ -2027,19 +2027,19 @@
 	anim_1gfx ANIM_GFX_SPEED
 	anim_bgeffect $6, $0, $2, $0
 	anim_bgeffect $8, $0, $4, $0
-	anim_obj $4d, 64, 88, $0
-	anim_obj $4d, 64, 88, $80
-	anim_obj $4d, 64, 88, $88
-	anim_obj $4d, 64, 88, $90
-	anim_obj $4d, 64, 88, $98
-	anim_obj $4d, 64, 88, $a0
-	anim_obj $4d, 64, 88, $a8
-	anim_obj $4d, 64, 88, $b0
-	anim_obj $4d, 64, 88, $b8
+	anim_obj ANIM_OBJ_4D, 64, 88, $0
+	anim_obj ANIM_OBJ_4D, 64, 88, $80
+	anim_obj ANIM_OBJ_4D, 64, 88, $88
+	anim_obj ANIM_OBJ_4D, 64, 88, $90
+	anim_obj ANIM_OBJ_4D, 64, 88, $98
+	anim_obj ANIM_OBJ_4D, 64, 88, $a0
+	anim_obj ANIM_OBJ_4D, 64, 88, $a8
+	anim_obj ANIM_OBJ_4D, 64, 88, $b0
+	anim_obj ANIM_OBJ_4D, 64, 88, $b8
 BattleAnim_ConfuseRay_branch_ca154: ; ca154
-	anim_sound $1a, SFX_WHIRLWIND
+	anim_sound 6, 2, SFX_WHIRLWIND
 	anim_wait 16
-	anim_loop $8, BattleAnim_ConfuseRay_branch_ca154
+	anim_loop 8, BattleAnim_ConfuseRay_branch_ca154
 	anim_wait 32
 	anim_ret
 ; ca15e
@@ -2056,12 +2056,12 @@
 	anim_1gfx ANIM_GFX_REFLECT
 	anim_bgeffect $6, $0, $2, $0
 	anim_bgeffect ANIM_BG_FLASH_INVERTED, $0, $4, $2
-	anim_sound $0, SFX_SHINE
-	anim_obj $50, 72, 80, $0
+	anim_sound 0, 0, SFX_SHINE
+	anim_obj ANIM_OBJ_50, 72, 80, $0
 	anim_wait 24
 	anim_bgeffect ANIM_BG_FLASH_INVERTED, $0, $4, $2
-	anim_sound $0, SFX_SHINE
-	anim_obj $50, 72, 80, $0
+	anim_sound 0, 0, SFX_SHINE
+	anim_obj ANIM_OBJ_50, 72, 80, $0
 	anim_wait 64
 	anim_ret
 ; ca18e
@@ -2069,25 +2069,25 @@
 BattleAnim_LightScreen: ; ca18e
 	anim_2gfx ANIM_GFX_SPEED, ANIM_GFX_REFLECT
 	anim_bgeffect $6, $0, $2, $0
-	anim_sound $0, SFX_FLASH
-	anim_obj $50, 72, 80, $0
+	anim_sound 0, 0, SFX_FLASH
+	anim_obj ANIM_OBJ_50, 72, 80, $0
 	anim_wait 4
-	anim_obj $6d, 72, 80, $0
+	anim_obj ANIM_OBJ_6D, 72, 80, $0
 	anim_wait 4
-	anim_obj $6d, 72, 80, $8
+	anim_obj ANIM_OBJ_6D, 72, 80, $8
 	anim_wait 4
-	anim_obj $6d, 72, 80, $10
+	anim_obj ANIM_OBJ_6D, 72, 80, $10
 	anim_wait 4
-	anim_obj $6d, 72, 80, $18
+	anim_obj ANIM_OBJ_6D, 72, 80, $18
 	anim_wait 4
-	anim_obj $50, 72, 80, $0
-	anim_obj $6d, 72, 80, $20
+	anim_obj ANIM_OBJ_50, 72, 80, $0
+	anim_obj ANIM_OBJ_6D, 72, 80, $20
 	anim_wait 4
-	anim_obj $6d, 72, 80, $28
+	anim_obj ANIM_OBJ_6D, 72, 80, $28
 	anim_wait 4
-	anim_obj $6d, 72, 80, $30
+	anim_obj ANIM_OBJ_6D, 72, 80, $30
 	anim_wait 4
-	anim_obj $6d, 72, 80, $38
+	anim_obj ANIM_OBJ_6D, 72, 80, $38
 	anim_wait 64
 	anim_ret
 ; ca1d5
@@ -2094,12 +2094,12 @@
 
 BattleAnim_Amnesia: ; ca1d5
 	anim_1gfx ANIM_GFX_STATUS
-	anim_sound $0, SFX_LICK
-	anim_obj $53, 64, 80, $2
+	anim_sound 0, 0, SFX_LICK
+	anim_obj ANIM_OBJ_53, 64, 80, $2
 	anim_wait 16
-	anim_obj $53, 68, 80, $1
+	anim_obj ANIM_OBJ_53, 68, 80, $1
 	anim_wait 16
-	anim_obj $53, 72, 80, $0
+	anim_obj ANIM_OBJ_53, 72, 80, $0
 	anim_wait 64
 	anim_ret
 ; ca1ed
@@ -2106,11 +2106,11 @@
 
 BattleAnim_DizzyPunch: ; ca1ed
 	anim_2gfx ANIM_GFX_STATUS, ANIM_GFX_HIT
-	anim_sound $1, SFX_MEGA_PUNCH
-	anim_obj $0, 136, 40, $0
-	anim_obj $2, 136, 64, $0
+	anim_sound 0, 1, SFX_MEGA_PUNCH
+	anim_obj ANIM_OBJ_00, 136, 40, $0
+	anim_obj ANIM_OBJ_02, 136, 64, $0
 	anim_wait 16
-	anim_sound $1, SFX_KINESIS
+	anim_sound 0, 1, SFX_KINESIS
 	anim_obj ANIM_OBJ_CHICK, 136, 24, $15
 	anim_obj ANIM_OBJ_CHICK, 136, 24, $aa
 	anim_obj ANIM_OBJ_CHICK, 136, 24, $bf
@@ -2120,11 +2120,11 @@
 
 BattleAnim_Rest: ; ca212
 	anim_1gfx ANIM_GFX_STATUS
-	anim_sound $0, SFX_TAIL_WHIP
+	anim_sound 0, 0, SFX_TAIL_WHIP
 BattleAnim_Rest_branch_ca217: ; ca217
-	anim_obj $54, 64, 80, $0
+	anim_obj ANIM_OBJ_54, 64, 80, $0
 	anim_wait 40
-	anim_loop $3, BattleAnim_Rest_branch_ca217
+	anim_loop 3, BattleAnim_Rest_branch_ca217
 	anim_wait 32
 	anim_ret
 ; ca223
@@ -2133,7 +2133,7 @@
 	anim_1gfx ANIM_GFX_HIT
 	anim_call BattleAnim_AcidArmor_branch_cbcaf
 	anim_bgeffect ANIM_BG_ACID_ARMOR, $0, $1, $8
-	anim_sound $0, SFX_MEGA_PUNCH
+	anim_sound 0, 0, SFX_MEGA_PUNCH
 	anim_wait 64
 	anim_incbgeffect ANIM_BG_ACID_ARMOR
 	anim_call BattleAnim_AcidArmor_branch_cbcb7
@@ -2142,7 +2142,7 @@
 
 BattleAnim_Splash: ; ca237
 	anim_1gfx ANIM_GFX_HIT
-	anim_sound $0, SFX_VICEGRIP
+	anim_sound 0, 0, SFX_VICEGRIP
 	anim_call BattleAnim_Splash_branch_cbcaf
 	anim_bgeffect $22, $0, $1, $0
 	anim_wait 96
@@ -2157,12 +2157,12 @@
 	anim_jumpif $2, BattleAnim_Dig_branch_ca286
 	anim_call BattleAnim_Dig_branch_cbcaf
 	anim_bgeffect $23, $0, $1, $1
-	anim_obj $57, 72, 104, $0
+	anim_obj ANIM_OBJ_57, 72, 104, $0
 BattleAnim_Dig_branch_ca263: ; ca263
-	anim_sound $0, SFX_RAZOR_WIND
-	anim_obj $56, 56, 104, $0
+	anim_sound 0, 0, SFX_RAZOR_WIND
+	anim_obj ANIM_OBJ_56, 56, 104, $0
 	anim_wait 16
-	anim_loop $6, BattleAnim_Dig_branch_ca263
+	anim_loop 6, BattleAnim_Dig_branch_ca263
 	anim_wait 32
 	anim_bgeffect ANIM_BG_HIDE_MON, $0, $1, $0
 	anim_wait 8
@@ -2172,8 +2172,8 @@
 ; ca27d
 
 BattleAnim_Dig_branch_ca27d: ; ca27d
-	anim_sound $1, SFX_MEGA_PUNCH
-	anim_obj $1, 136, 56, $0
+	anim_sound 0, 1, SFX_MEGA_PUNCH
+	anim_obj ANIM_OBJ_01, 136, 56, $0
 	anim_wait 32
 BattleAnim_Dig_branch_ca286: ; ca286
 	anim_bgeffect ANIM_BG_ENTER_MON, $0, $1, $0
@@ -2190,23 +2190,23 @@
 BattleAnim_StringShot: ; ca293
 	anim_1gfx ANIM_GFX_WEB
 	anim_bgeffect $7, $0, $2, $0
-	anim_sound $1a, SFX_MENU
-	anim_obj $5a, 64, 80, $0
+	anim_sound 6, 2, SFX_MENU
+	anim_obj ANIM_OBJ_5A, 64, 80, $0
 	anim_wait 4
-	anim_sound $1, SFX_MENU
-	anim_obj $5a, 132, 48, $1
+	anim_sound 0, 1, SFX_MENU
+	anim_obj ANIM_OBJ_5A, 132, 48, $1
 	anim_wait 4
-	anim_sound $1a, SFX_MENU
-	anim_obj $5a, 64, 88, $0
+	anim_sound 6, 2, SFX_MENU
+	anim_obj ANIM_OBJ_5A, 64, 88, $0
 	anim_wait 4
-	anim_sound $1, SFX_MENU
-	anim_obj $5a, 132, 64, $1
+	anim_sound 0, 1, SFX_MENU
+	anim_obj ANIM_OBJ_5A, 132, 64, $1
 	anim_wait 4
-	anim_sound $1a, SFX_MENU
-	anim_obj $5a, 64, 84, $0
+	anim_sound 6, 2, SFX_MENU
+	anim_obj ANIM_OBJ_5A, 64, 84, $0
 	anim_wait 4
-	anim_sound $1, SFX_MENU
-	anim_obj $5a, 132, 56, $2
+	anim_sound 0, 1, SFX_MENU
+	anim_obj ANIM_OBJ_5A, 132, 56, $2
 	anim_wait 64
 	anim_ret
 ; ca2d1
@@ -2218,8 +2218,8 @@
 	anim_call BattleAnim_Headbutt_branch_cbca7
 	anim_bgeffect ANIM_BG_TACKLE, $0, $1, $0
 	anim_wait 4
-	anim_sound $1, SFX_HEADBUTT
-	anim_obj $1, 136, 56, $0
+	anim_sound 0, 1, SFX_HEADBUTT
+	anim_obj ANIM_OBJ_01, 136, 56, $0
 	anim_wait 8
 	anim_call BattleAnim_Headbutt_branch_cbcb7
 	anim_ret
@@ -2230,8 +2230,8 @@
 	anim_call BattleAnim_Tackle_branch_cbcaf
 	anim_bgeffect ANIM_BG_TACKLE, $0, $1, $0
 	anim_wait 4
-	anim_sound $1, SFX_TACKLE
-	anim_obj $0, 136, 48, $0
+	anim_sound 0, 1, SFX_TACKLE
+	anim_obj ANIM_OBJ_00, 136, 48, $0
 	anim_wait 8
 	anim_call BattleAnim_Tackle_branch_cbcb7
 	anim_ret
@@ -2246,11 +2246,11 @@
 	anim_wait 4
 	anim_bgeffect $25, $0, $1, $0
 	anim_wait 3
-	anim_sound $1, SFX_TACKLE
-	anim_obj $1, 136, 48, $0
+	anim_sound 0, 1, SFX_TACKLE
+	anim_obj ANIM_OBJ_01, 136, 48, $0
 	anim_wait 6
-	anim_sound $1, SFX_TACKLE
-	anim_obj $1, 144, 48, $0
+	anim_sound 0, 1, SFX_TACKLE
+	anim_obj ANIM_OBJ_01, 144, 48, $0
 	anim_wait 3
 	anim_call BattleAnim_BodySlam_branch_cbcb7
 	anim_ret
@@ -2261,13 +2261,13 @@
 	anim_call BattleAnim_TakeDown_branch_cbca7
 	anim_bgeffect ANIM_BG_TACKLE, $0, $1, $0
 	anim_wait 3
-	anim_sound $1, SFX_TACKLE
+	anim_sound 0, 1, SFX_TACKLE
 	anim_bgeffect ANIM_BG_FLASH_INVERTED, $0, $4, $2
-	anim_obj $1, 128, 56, $0
+	anim_obj ANIM_OBJ_01, 128, 56, $0
 	anim_wait 6
-	anim_sound $1, SFX_TACKLE
+	anim_sound 0, 1, SFX_TACKLE
 	anim_bgeffect ANIM_BG_FLASH_INVERTED, $0, $4, $2
-	anim_obj $1, 144, 48, $0
+	anim_obj ANIM_OBJ_01, 144, 48, $0
 	anim_wait 3
 	anim_call BattleAnim_TakeDown_branch_cbcb7
 	anim_ret
@@ -2279,11 +2279,11 @@
 	anim_bgeffect ANIM_BG_FLASH_INVERTED, $0, $4, $10
 	anim_bgeffect ANIM_BG_TACKLE, $0, $1, $0
 	anim_wait 3
-	anim_sound $1, SFX_TACKLE
-	anim_obj $0, 128, 48, $0
+	anim_sound 0, 1, SFX_TACKLE
+	anim_obj ANIM_OBJ_00, 128, 48, $0
 	anim_wait 6
-	anim_sound $1, SFX_TACKLE
-	anim_obj $0, 144, 48, $0
+	anim_sound 0, 1, SFX_TACKLE
+	anim_obj ANIM_OBJ_00, 144, 48, $0
 	anim_wait 3
 	anim_call BattleAnim_DoubleEdge_branch_cbcb7
 	anim_ret
@@ -2293,13 +2293,13 @@
 	anim_1gfx ANIM_GFX_HIT
 	anim_call BattleAnim_Submission_branch_cbcc2
 	anim_bgeffect $26, $0, $0, $0
-	anim_sound $1, SFX_SUBMISSION
+	anim_sound 0, 1, SFX_SUBMISSION
 	anim_wait 32
-	anim_obj $1, 120, 48, $0
+	anim_obj ANIM_OBJ_01, 120, 48, $0
 	anim_wait 32
-	anim_obj $1, 152, 56, $0
+	anim_obj ANIM_OBJ_01, 152, 56, $0
 	anim_wait 32
-	anim_obj $1, 136, 52, $0
+	anim_obj ANIM_OBJ_01, 136, 52, $0
 	anim_wait 32
 	anim_incbgeffect $26
 	anim_call BattleAnim_Submission_branch_cbcd2
@@ -2309,20 +2309,20 @@
 BattleAnim_Whirlwind: ; ca3a8
 	anim_1gfx ANIM_GFX_WIND
 BattleAnim_Whirlwind_branch_ca3aa: ; ca3aa
-	anim_sound $0, SFX_RAZOR_WIND
+	anim_sound 0, 0, SFX_RAZOR_WIND
 	anim_obj ANIM_OBJ_GUST, 64, 112, $0
 	anim_wait 6
-	anim_loop $9, BattleAnim_Whirlwind_branch_ca3aa
-	anim_incobj $1
-	anim_incobj $2
-	anim_incobj $3
-	anim_incobj $4
-	anim_incobj $5
-	anim_incobj $6
-	anim_incobj $7
-	anim_incobj $8
-	anim_incobj $9
-	anim_sound $42, SFX_WHIRLWIND
+	anim_loop 9, BattleAnim_Whirlwind_branch_ca3aa
+	anim_incobj  1
+	anim_incobj  2
+	anim_incobj  3
+	anim_incobj  4
+	anim_incobj  5
+	anim_incobj  6
+	anim_incobj  7
+	anim_incobj  8
+	anim_incobj  9
+	anim_sound 16, 2, SFX_WHIRLWIND
 	anim_wait 128
 	anim_jumpif $0, BattleAnim_Whirlwind_branch_ca3d7
 	anim_bgeffect $27, $0, $0, $0
@@ -2334,11 +2334,11 @@
 BattleAnim_Hypnosis: ; ca3d8
 	anim_1gfx ANIM_GFX_PSYCHIC
 BattleAnim_Hypnosis_branch_ca3da: ; ca3da
-	anim_sound $1a, SFX_SUPERSONIC
-	anim_obj $4c, 64, 88, $2
-	anim_obj $4c, 56, 80, $2
+	anim_sound 6, 2, SFX_SUPERSONIC
+	anim_obj ANIM_OBJ_4C, 64, 88, $2
+	anim_obj ANIM_OBJ_4C, 56, 80, $2
 	anim_wait 8
-	anim_loop $3, BattleAnim_Hypnosis_branch_ca3da
+	anim_loop 3, BattleAnim_Hypnosis_branch_ca3da
 	anim_wait 56
 	anim_ret
 ; ca3ee
@@ -2345,12 +2345,12 @@
 
 BattleAnim_Haze: ; ca3ee
 	anim_1gfx ANIM_GFX_HAZE
-	anim_sound $1, SFX_SURF
+	anim_sound 0, 1, SFX_SURF
 BattleAnim_Haze_branch_ca3f3: ; ca3f3
-	anim_obj $5b, 48, 56, $0
-	anim_obj $5b, 132, 16, $0
+	anim_obj ANIM_OBJ_5B, 48, 56, $0
+	anim_obj ANIM_OBJ_5B, 132, 16, $0
 	anim_wait 12
-	anim_loop $5, BattleAnim_Haze_branch_ca3f3
+	anim_loop 5, BattleAnim_Haze_branch_ca3f3
 	anim_wait 96
 	anim_ret
 ; ca404
@@ -2358,11 +2358,11 @@
 BattleAnim_Mist: ; ca404
 	anim_obp0 $54
 	anim_1gfx ANIM_GFX_HAZE
-	anim_sound $0, SFX_SURF
+	anim_sound 0, 0, SFX_SURF
 BattleAnim_Mist_branch_ca40b: ; ca40b
-	anim_obj $5c, 48, 56, $0
+	anim_obj ANIM_OBJ_5C, 48, 56, $0
 	anim_wait 8
-	anim_loop $a, BattleAnim_Mist_branch_ca40b
+	anim_loop 10, BattleAnim_Mist_branch_ca40b
 	anim_wait 96
 	anim_ret
 ; ca417
@@ -2369,11 +2369,11 @@
 
 BattleAnim_Smog: ; ca417
 	anim_1gfx ANIM_GFX_HAZE
-	anim_sound $1, SFX_BUBBLEBEAM
+	anim_sound 0, 1, SFX_BUBBLEBEAM
 BattleAnim_Smog_branch_ca41c: ; ca41c
-	anim_obj $5d, 132, 16, $0
+	anim_obj ANIM_OBJ_5D, 132, 16, $0
 	anim_wait 8
-	anim_loop $a, BattleAnim_Smog_branch_ca41c
+	anim_loop 10, BattleAnim_Smog_branch_ca41c
 	anim_wait 96
 	anim_ret
 ; ca428
@@ -2380,11 +2380,11 @@
 
 BattleAnim_PoisonGas: ; ca428
 	anim_1gfx ANIM_GFX_HAZE
-	anim_sound $42, SFX_BUBBLEBEAM
+	anim_sound 16, 2, SFX_BUBBLEBEAM
 BattleAnim_PoisonGas_branch_ca42d: ; ca42d
-	anim_obj $5e, 44, 80, $2
+	anim_obj ANIM_OBJ_5E, 44, 80, $2
 	anim_wait 8
-	anim_loop $a, BattleAnim_PoisonGas_branch_ca42d
+	anim_loop 10, BattleAnim_PoisonGas_branch_ca42d
 	anim_wait 128
 	anim_ret
 ; ca439
@@ -2391,10 +2391,10 @@
 
 BattleAnim_HornAttack: ; ca439
 	anim_2gfx ANIM_GFX_HORN, ANIM_GFX_HIT
-	anim_obj $5f, 72, 80, $1
+	anim_obj ANIM_OBJ_5F, 72, 80, $1
 	anim_wait 16
-	anim_sound $1, SFX_HORN_ATTACK
-	anim_obj $1, 136, 56, $0
+	anim_sound 0, 1, SFX_HORN_ATTACK
+	anim_obj ANIM_OBJ_01, 136, 56, $0
 	anim_wait 16
 	anim_ret
 ; ca44c
@@ -2401,20 +2401,20 @@
 
 BattleAnim_FuryAttack: ; ca44c
 	anim_2gfx ANIM_GFX_HORN, ANIM_GFX_HIT
-	anim_obj $5f, 72, 72, $2
+	anim_obj ANIM_OBJ_5F, 72, 72, $2
 	anim_wait 8
-	anim_sound $1, SFX_HORN_ATTACK
-	anim_obj $4, 128, 40, $0
+	anim_sound 0, 1, SFX_HORN_ATTACK
+	anim_obj ANIM_OBJ_04, 128, 40, $0
 	anim_wait 8
-	anim_obj $5f, 80, 88, $2
+	anim_obj ANIM_OBJ_5F, 80, 88, $2
 	anim_wait 8
-	anim_sound $1, SFX_HORN_ATTACK
-	anim_obj $4, 136, 56, $0
+	anim_sound 0, 1, SFX_HORN_ATTACK
+	anim_obj ANIM_OBJ_04, 136, 56, $0
 	anim_wait 8
-	anim_obj $5f, 76, 80, $2
+	anim_obj ANIM_OBJ_5F, 76, 80, $2
 	anim_wait 8
-	anim_sound $1, SFX_HORN_ATTACK
-	anim_obj $4, 132, 48, $0
+	anim_sound 0, 1, SFX_HORN_ATTACK
+	anim_obj ANIM_OBJ_04, 132, 48, $0
 	anim_wait 8
 	anim_ret
 ; ca47d
@@ -2422,31 +2422,31 @@
 BattleAnim_HornDrill: ; ca47d
 	anim_2gfx ANIM_GFX_HORN, ANIM_GFX_HIT
 	anim_bgeffect ANIM_BG_FLASH_INVERTED, $0, $8, $40
-	anim_obj $5f, 72, 80, $3
+	anim_obj ANIM_OBJ_5F, 72, 80, $3
 	anim_wait 8
 BattleAnim_HornDrill_branch_ca48b: ; ca48b
-	anim_sound $1, SFX_HORN_ATTACK
-	anim_obj $0, 132, 40, $0
+	anim_sound 0, 1, SFX_HORN_ATTACK
+	anim_obj ANIM_OBJ_00, 132, 40, $0
 	anim_wait 8
-	anim_sound $1, SFX_HORN_ATTACK
-	anim_obj $0, 140, 48, $0
+	anim_sound 0, 1, SFX_HORN_ATTACK
+	anim_obj ANIM_OBJ_00, 140, 48, $0
 	anim_wait 8
-	anim_sound $1, SFX_HORN_ATTACK
-	anim_obj $0, 132, 56, $0
+	anim_sound 0, 1, SFX_HORN_ATTACK
+	anim_obj ANIM_OBJ_00, 132, 56, $0
 	anim_wait 8
-	anim_sound $1, SFX_HORN_ATTACK
-	anim_obj $0, 124, 48, $0
+	anim_sound 0, 1, SFX_HORN_ATTACK
+	anim_obj ANIM_OBJ_00, 124, 48, $0
 	anim_wait 8
-	anim_loop $3, BattleAnim_HornDrill_branch_ca48b
+	anim_loop 3, BattleAnim_HornDrill_branch_ca48b
 	anim_ret
 ; ca4b4
 
 BattleAnim_PoisonSting: ; ca4b4
 	anim_2gfx ANIM_GFX_HORN, ANIM_GFX_HIT
-	anim_obj $60, 64, 92, $14
+	anim_obj ANIM_OBJ_60, 64, 92, $14
 	anim_wait 16
-	anim_sound $1, SFX_POISON_STING
-	anim_obj $5, 136, 56, $0
+	anim_sound 0, 1, SFX_POISON_STING
+	anim_obj ANIM_OBJ_05, 136, 56, $0
 	anim_wait 16
 	anim_ret
 ; ca4c7
@@ -2453,13 +2453,13 @@
 
 BattleAnim_Twineedle: ; ca4c7
 	anim_2gfx ANIM_GFX_HORN, ANIM_GFX_HIT
-	anim_sound $1, SFX_POISON_STING
-	anim_obj $60, 64, 92, $14
-	anim_obj $60, 56, 84, $14
+	anim_sound 0, 1, SFX_POISON_STING
+	anim_obj ANIM_OBJ_60, 64, 92, $14
+	anim_obj ANIM_OBJ_60, 56, 84, $14
 	anim_wait 16
-	anim_sound $1, SFX_POISON_STING
-	anim_obj $5, 136, 56, $0
-	anim_obj $5, 128, 48, $0
+	anim_sound 0, 1, SFX_POISON_STING
+	anim_obj ANIM_OBJ_05, 136, 56, $0
+	anim_obj ANIM_OBJ_05, 128, 48, $0
 	anim_wait 16
 	anim_ret
 ; ca4e7
@@ -2467,19 +2467,19 @@
 BattleAnim_PinMissile: ; ca4e7
 	anim_2gfx ANIM_GFX_HORN, ANIM_GFX_HIT
 BattleAnim_PinMissile_branch_ca4ea: ; ca4ea
-	anim_obj $60, 64, 92, $28
+	anim_obj ANIM_OBJ_60, 64, 92, $28
 	anim_wait 8
-	anim_obj $60, 56, 84, $28
-	anim_sound $1, SFX_POISON_STING
-	anim_obj $5, 136, 56, $0
+	anim_obj ANIM_OBJ_60, 56, 84, $28
+	anim_sound 0, 1, SFX_POISON_STING
+	anim_obj ANIM_OBJ_05, 136, 56, $0
 	anim_wait 8
-	anim_obj $60, 52, 88, $28
-	anim_sound $1, SFX_POISON_STING
-	anim_obj $5, 128, 48, $0
+	anim_obj ANIM_OBJ_60, 52, 88, $28
+	anim_sound 0, 1, SFX_POISON_STING
+	anim_obj ANIM_OBJ_05, 128, 48, $0
 	anim_wait 8
-	anim_sound $1, SFX_POISON_STING
-	anim_obj $5, 132, 52, $0
-	anim_loop $3, BattleAnim_PinMissile_branch_ca4ea
+	anim_sound 0, 1, SFX_POISON_STING
+	anim_obj ANIM_OBJ_05, 132, 52, $0
+	anim_loop 3, BattleAnim_PinMissile_branch_ca4ea
 	anim_wait 16
 	anim_ret
 ; ca51a
@@ -2487,19 +2487,19 @@
 BattleAnim_SpikeCannon: ; ca51a
 	anim_2gfx ANIM_GFX_HORN, ANIM_GFX_HIT
 BattleAnim_SpikeCannon_branch_ca51d: ; ca51d
-	anim_obj $60, 64, 92, $18
+	anim_obj ANIM_OBJ_60, 64, 92, $18
 	anim_wait 8
-	anim_obj $60, 56, 84, $18
-	anim_sound $1, SFX_POISON_STING
-	anim_obj $5, 136, 56, $0
+	anim_obj ANIM_OBJ_60, 56, 84, $18
+	anim_sound 0, 1, SFX_POISON_STING
+	anim_obj ANIM_OBJ_05, 136, 56, $0
 	anim_wait 8
-	anim_obj $60, 52, 88, $18
-	anim_sound $1, SFX_POISON_STING
-	anim_obj $5, 128, 48, $0
+	anim_obj ANIM_OBJ_60, 52, 88, $18
+	anim_sound 0, 1, SFX_POISON_STING
+	anim_obj ANIM_OBJ_05, 128, 48, $0
 	anim_wait 8
-	anim_sound $1, SFX_POISON_STING
-	anim_obj $5, 132, 52, $0
-	anim_loop $3, BattleAnim_SpikeCannon_branch_ca51d
+	anim_sound 0, 1, SFX_POISON_STING
+	anim_obj ANIM_OBJ_05, 132, 52, $0
+	anim_loop 3, BattleAnim_SpikeCannon_branch_ca51d
 	anim_wait 16
 	anim_ret
 ; ca54d
@@ -2508,7 +2508,7 @@
 	anim_1gfx ANIM_GFX_HIT
 	anim_call BattleAnim_Transform_branch_cbcaf
 	anim_transform
-	anim_sound $0, SFX_PSYBEAM
+	anim_sound 0, 0, SFX_PSYBEAM
 	anim_bgeffect $28, $0, $1, $0
 	anim_wait 48
 	anim_updateactorpic
@@ -2519,16 +2519,16 @@
 ; ca564
 
 BattleAnim_PetalDance: ; ca564
-	anim_sound $0, SFX_MENU
+	anim_sound 0, 0, SFX_MENU
 	anim_2gfx ANIM_GFX_FLOWER, ANIM_GFX_HIT
 BattleAnim_PetalDance_branch_ca56a: ; ca56a
-	anim_obj $61, 48, 56, $0
+	anim_obj ANIM_OBJ_61, 48, 56, $0
 	anim_wait 11
-	anim_loop $8, BattleAnim_PetalDance_branch_ca56a
+	anim_loop 8, BattleAnim_PetalDance_branch_ca56a
 	anim_wait 128
 	anim_wait 64
-	anim_sound $1, SFX_COMET_PUNCH
-	anim_obj $0, 136, 56, $0
+	anim_sound 0, 1, SFX_COMET_PUNCH
+	anim_obj ANIM_OBJ_00, 136, 56, $0
 	anim_wait 16
 	anim_ret
 ; ca580
@@ -2535,11 +2535,11 @@
 
 BattleAnim_Barrage: ; ca580
 	anim_2gfx ANIM_GFX_EGG, ANIM_GFX_EXPLOSION
-	anim_sound $1a, SFX_THROW_BALL
-	anim_obj $62, 64, 92, $10
+	anim_sound 6, 2, SFX_THROW_BALL
+	anim_obj ANIM_OBJ_62, 64, 92, $10
 	anim_wait 36
-	anim_sound $1, SFX_EGG_BOMB
-	anim_obj $18, 136, 56, $0
+	anim_sound 0, 1, SFX_EGG_BOMB
+	anim_obj ANIM_OBJ_18, 136, 56, $0
 	anim_wait 16
 	anim_ret
 ; ca596
@@ -2546,11 +2546,11 @@
 
 BattleAnim_PayDay: ; ca596
 	anim_2gfx ANIM_GFX_HIT, ANIM_GFX_STATUS
-	anim_sound $1, SFX_POUND
-	anim_obj $1, 128, 56, $0
+	anim_sound 0, 1, SFX_POUND
+	anim_obj ANIM_OBJ_01, 128, 56, $0
 	anim_wait 16
-	anim_sound $1, SFX_PAY_DAY
-	anim_obj $63, 120, 76, $1
+	anim_sound 0, 1, SFX_PAY_DAY
+	anim_obj ANIM_OBJ_63, 120, 76, $1
 	anim_wait 64
 	anim_ret
 ; ca5ac
@@ -2558,15 +2558,15 @@
 BattleAnim_Mimic: ; ca5ac
 	anim_1gfx ANIM_GFX_SPEED
 	anim_obp0 $fc
-	anim_sound $ff, SFX_LICK
-	anim_obj $65, 132, 44, $0
-	anim_obj $65, 132, 44, $8
-	anim_obj $65, 132, 44, $10
-	anim_obj $65, 132, 44, $18
-	anim_obj $65, 132, 44, $20
-	anim_obj $65, 132, 44, $28
-	anim_obj $65, 132, 44, $30
-	anim_obj $65, 132, 44, $38
+	anim_sound 63, 3, SFX_LICK
+	anim_obj ANIM_OBJ_65, 132, 44, $0
+	anim_obj ANIM_OBJ_65, 132, 44, $8
+	anim_obj ANIM_OBJ_65, 132, 44, $10
+	anim_obj ANIM_OBJ_65, 132, 44, $18
+	anim_obj ANIM_OBJ_65, 132, 44, $20
+	anim_obj ANIM_OBJ_65, 132, 44, $28
+	anim_obj ANIM_OBJ_65, 132, 44, $30
+	anim_obj ANIM_OBJ_65, 132, 44, $38
 	anim_wait 128
 	anim_wait 48
 	anim_ret
@@ -2575,9 +2575,9 @@
 BattleAnim_LovelyKiss: ; ca5de
 	anim_2gfx ANIM_GFX_OBJECTS, ANIM_GFX_ANGELS
 	anim_bgeffect $7, $0, $2, $0
-	anim_obj $96, 152, 40, $0
+	anim_obj ANIM_OBJ_96, 152, 40, $0
 	anim_wait 32
-	anim_sound $1, SFX_LICK
+	anim_sound 0, 1, SFX_LICK
 	anim_obj ANIM_OBJ_HEART, 128, 40, $0
 	anim_wait 40
 	anim_ret
@@ -2585,11 +2585,11 @@
 
 BattleAnim_Bonemerang: ; ca5f6
 	anim_2gfx ANIM_GFX_MISC, ANIM_GFX_HIT
-	anim_sound $1a, SFX_HYDRO_PUMP
-	anim_obj $67, 88, 56, $1c
+	anim_sound 6, 2, SFX_HYDRO_PUMP
+	anim_obj ANIM_OBJ_67, 88, 56, $1c
 	anim_wait 24
-	anim_sound $1, SFX_MOVE_PUZZLE_PIECE
-	anim_obj $1, 136, 56, $0
+	anim_sound 0, 1, SFX_MOVE_PUZZLE_PIECE
+	anim_obj ANIM_OBJ_01, 136, 56, $0
 	anim_wait 24
 	anim_ret
 ; ca60c
@@ -2596,12 +2596,12 @@
 
 BattleAnim_Swift: ; ca60c
 	anim_1gfx ANIM_GFX_OBJECTS
-	anim_sound $1a, SFX_METRONOME
-	anim_obj $6a, 64, 88, $4
+	anim_sound 6, 2, SFX_METRONOME
+	anim_obj ANIM_OBJ_6A, 64, 88, $4
 	anim_wait 4
-	anim_obj $6a, 64, 72, $4
+	anim_obj ANIM_OBJ_6A, 64, 72, $4
 	anim_wait 4
-	anim_obj $6a, 64, 76, $4
+	anim_obj ANIM_OBJ_6A, 64, 76, $4
 	anim_wait 64
 	anim_ret
 ; ca624
@@ -2612,10 +2612,10 @@
 	anim_wait 48
 	anim_bgeffect ANIM_BG_FLASH_INVERTED, $0, $8, $3
 BattleAnim_Crabhammer_branch_ca631: ; ca631
-	anim_sound $1, SFX_MEGA_PUNCH
-	anim_obj $0, 136, 56, $0
+	anim_sound 0, 1, SFX_MEGA_PUNCH
+	anim_obj ANIM_OBJ_00, 136, 56, $0
 	anim_wait 12
-	anim_loop $3, BattleAnim_Crabhammer_branch_ca631
+	anim_loop 3, BattleAnim_Crabhammer_branch_ca631
 	anim_ret
 ; ca63f
 
@@ -2629,10 +2629,10 @@
 	anim_bgeffect ANIM_BG_TACKLE, $0, $1, $0
 	anim_wait 4
 BattleAnim_SkullBash_branch_ca659: ; ca659
-	anim_sound $1, SFX_HEADBUTT
-	anim_obj $1, 136, 56, $0
+	anim_sound 0, 1, SFX_HEADBUTT
+	anim_obj ANIM_OBJ_01, 136, 56, $0
 	anim_wait 8
-	anim_loop $3, BattleAnim_SkullBash_branch_ca659
+	anim_loop 3, BattleAnim_SkullBash_branch_ca659
 	anim_call BattleAnim_SkullBash_branch_cbcb7
 	anim_ret
 ; ca66a
@@ -2640,15 +2640,15 @@
 BattleAnim_Kinesis: ; ca66a
 	anim_2gfx ANIM_GFX_MISC, ANIM_GFX_NOISE
 	anim_bgeffect $6, $0, $2, $0
-	anim_obj $6b, 80, 76, $0
+	anim_obj ANIM_OBJ_6B, 80, 76, $0
 	anim_wait 32
 BattleAnim_Kinesis_branch_ca678: ; ca678
-	anim_sound $0, SFX_KINESIS
-	anim_obj $4b, 64, 88, $0
+	anim_sound 0, 0, SFX_KINESIS
+	anim_obj ANIM_OBJ_4B, 64, 88, $0
 	anim_wait 32
-	anim_loop $3, BattleAnim_Kinesis_branch_ca678
+	anim_loop 3, BattleAnim_Kinesis_branch_ca678
 	anim_wait 32
-	anim_sound $0, SFX_KINESIS_2
+	anim_sound 0, 0, SFX_KINESIS_2
 	anim_wait 32
 	anim_ret
 ; ca68b
@@ -2655,11 +2655,11 @@
 
 BattleAnim_Peck: ; ca68b
 	anim_1gfx ANIM_GFX_HIT
-	anim_sound $1, SFX_PECK
-	anim_obj $2, 128, 48, $0
+	anim_sound 0, 1, SFX_PECK
+	anim_obj ANIM_OBJ_02, 128, 48, $0
 	anim_wait 8
-	anim_sound $1, SFX_PECK
-	anim_obj $2, 136, 56, $0
+	anim_sound 0, 1, SFX_PECK
+	anim_obj ANIM_OBJ_02, 136, 56, $0
 	anim_wait 16
 	anim_ret
 ; ca6a0
@@ -2667,19 +2667,19 @@
 BattleAnim_DrillPeck: ; ca6a0
 	anim_1gfx ANIM_GFX_HIT
 BattleAnim_DrillPeck_branch_ca6a2: ; ca6a2
-	anim_sound $1, SFX_PECK
-	anim_obj $2, 124, 56, $0
+	anim_sound 0, 1, SFX_PECK
+	anim_obj ANIM_OBJ_02, 124, 56, $0
 	anim_wait 4
-	anim_sound $1, SFX_PECK
-	anim_obj $2, 132, 48, $0
+	anim_sound 0, 1, SFX_PECK
+	anim_obj ANIM_OBJ_02, 132, 48, $0
 	anim_wait 4
-	anim_sound $1, SFX_PECK
-	anim_obj $2, 140, 56, $0
+	anim_sound 0, 1, SFX_PECK
+	anim_obj ANIM_OBJ_02, 140, 56, $0
 	anim_wait 4
-	anim_sound $1, SFX_PECK
-	anim_obj $2, 132, 64, $0
+	anim_sound 0, 1, SFX_PECK
+	anim_obj ANIM_OBJ_02, 132, 64, $0
 	anim_wait 4
-	anim_loop $5, BattleAnim_DrillPeck_branch_ca6a2
+	anim_loop 5, BattleAnim_DrillPeck_branch_ca6a2
 	anim_wait 16
 	anim_ret
 ; ca6cc
@@ -2688,14 +2688,14 @@
 	anim_1gfx ANIM_GFX_CUT
 	anim_bgeffect ANIM_BG_FLASH_INVERTED, $0, $8, $10
 	anim_bgeffect $1f, $40, $2, $0
-	anim_sound $1, SFX_VICEGRIP
-	anim_obj $37, 156, 44, $0
-	anim_obj $37, 152, 40, $0
-	anim_obj $37, 148, 36, $0
-	anim_obj $39, 124, 76, $0
-	anim_obj $39, 120, 72, $0
-	anim_obj $39, 116, 68, $0
-	anim_obj $39, 120, 72, $0
+	anim_sound 0, 1, SFX_VICEGRIP
+	anim_obj ANIM_OBJ_37, 156, 44, $0
+	anim_obj ANIM_OBJ_37, 152, 40, $0
+	anim_obj ANIM_OBJ_37, 148, 36, $0
+	anim_obj ANIM_OBJ_39, 124, 76, $0
+	anim_obj ANIM_OBJ_39, 120, 72, $0
+	anim_obj ANIM_OBJ_39, 116, 68, $0
+	anim_obj ANIM_OBJ_39, 120, 72, $0
 	anim_wait 32
 	anim_ret
 ; ca700
@@ -2702,30 +2702,30 @@
 
 BattleAnim_Flash: ; ca700
 	anim_1gfx ANIM_GFX_SPEED
-	anim_sound $1, SFX_FLASH
+	anim_sound 0, 1, SFX_FLASH
 	anim_bgeffect ANIM_BG_FLASH_INVERTED, $0, $6, $20
 	anim_wait 4
-	anim_obj $6c, 136, 56, $0
+	anim_obj ANIM_OBJ_6C, 136, 56, $0
 	anim_wait 4
-	anim_obj $6c, 136, 56, $8
+	anim_obj ANIM_OBJ_6C, 136, 56, $8
 	anim_wait 4
-	anim_obj $6c, 136, 56, $10
+	anim_obj ANIM_OBJ_6C, 136, 56, $10
 	anim_wait 4
-	anim_obj $6c, 136, 56, $18
+	anim_obj ANIM_OBJ_6C, 136, 56, $18
 	anim_wait 4
-	anim_obj $6c, 136, 56, $20
+	anim_obj ANIM_OBJ_6C, 136, 56, $20
 	anim_wait 4
-	anim_obj $6c, 136, 56, $28
+	anim_obj ANIM_OBJ_6C, 136, 56, $28
 	anim_wait 4
-	anim_obj $6c, 136, 56, $30
+	anim_obj ANIM_OBJ_6C, 136, 56, $30
 	anim_wait 4
-	anim_obj $6c, 136, 56, $38
+	anim_obj ANIM_OBJ_6C, 136, 56, $38
 	anim_wait 32
 	anim_ret
 ; ca73c
 
 BattleAnim_Substitute: ; ca73c
-	anim_sound $0, SFX_SURF
+	anim_sound 0, 0, SFX_SURF
 	anim_jumpif $3, BattleAnim_Substitute_branch_ca77c
 	anim_jumpif $2, BattleAnim_Substitute_branch_ca76e
 	anim_jumpif $1, BattleAnim_Substitute_branch_ca760
@@ -2733,7 +2733,7 @@
 	anim_bgeffect $27, $0, $1, $0
 	anim_wait 48
 	anim_raisesub
-	anim_obj $1c, 48, 96, $0
+	anim_obj ANIM_OBJ_1C, 48, 96, $0
 	anim_bgeffect ANIM_BG_ENTER_MON, $0, $1, $0
 	anim_wait 32
 	anim_ret
@@ -2767,7 +2767,7 @@
 ; ca78a
 
 BattleAnim_Minimize: ; ca78a
-	anim_sound $0, SFX_SURF
+	anim_sound 0, 0, SFX_SURF
 	anim_1gfx ANIM_GFX_HIT
 	anim_call BattleAnim_Minimize_branch_cbcaf
 	anim_minimize
@@ -2785,15 +2785,15 @@
 	anim_1gfx ANIM_GFX_SKY_ATTACK
 	anim_bgeffect $27, $0, $1, $0
 	anim_wait 32
-	anim_sound $0, SFX_HYPER_BEAM
-	anim_obj $6e, 48, 88, $40
+	anim_sound 0, 0, SFX_HYPER_BEAM
+	anim_obj ANIM_OBJ_6E, 48, 88, $40
 	anim_wait 64
-	anim_incobj $1
+	anim_incobj  1
 	anim_wait 21
-	anim_sound $1, SFX_HYPER_BEAM
+	anim_sound 0, 1, SFX_HYPER_BEAM
 	anim_bgeffect ANIM_BG_ALTERNATE_HUES, $0, $2, $0
 	anim_wait 64
-	anim_incobj $1
+	anim_incobj  1
 	anim_wait 32
 	anim_bgeffect ANIM_BG_SHOW_MON, $0, $1, $0
 	anim_wait 16
@@ -2807,7 +2807,7 @@
 	anim_wait 32
 	anim_call BattleAnim_NightShade_branch_cbcca
 	anim_bgeffect ANIM_BG_NIGHT_SHADE, $0, $0, $8
-	anim_sound $1, SFX_PSYCHIC
+	anim_sound 0, 1, SFX_PSYCHIC
 	anim_wait 96
 	anim_incbgeffect ANIM_BG_NIGHT_SHADE
 	anim_call BattleAnim_NightShade_branch_cbcd2
@@ -2816,8 +2816,8 @@
 
 BattleAnim_Lick: ; ca7e5
 	anim_1gfx ANIM_GFX_WATER
-	anim_sound $1, SFX_LICK
-	anim_obj $6f, 136, 56, $0
+	anim_sound 0, 1, SFX_LICK
+	anim_obj ANIM_OBJ_6F, 136, 56, $0
 	anim_wait 64
 	anim_ret
 ; ca7f1
@@ -2829,8 +2829,8 @@
 	anim_call BattleAnim_TriAttack_branch_cbbdf
 	anim_wait 16
 	anim_bgeffect ANIM_BG_FLASH_INVERTED, $0, $4, $4
-	anim_sound $1, SFX_THUNDER
-	anim_obj $2f, 152, 68, $0
+	anim_sound 0, 1, SFX_THUNDER
+	anim_obj ANIM_OBJ_2F, 152, 68, $0
 	anim_wait 16
 	anim_ret
 ; ca80c
@@ -2840,10 +2840,10 @@
 	anim_call BattleAnim_Withdraw_branch_cbcaf
 	anim_bgeffect $21, $0, $1, $50
 	anim_wait 48
-	anim_sound $0, SFX_SHINE
-	anim_obj $70, 48, 88, $0
+	anim_sound 0, 0, SFX_SHINE
+	anim_obj ANIM_OBJ_70, 48, 88, $0
 	anim_wait 64
-	anim_incobj $2
+	anim_incobj  2
 	anim_wait 1
 	anim_incbgeffect $21
 	anim_call BattleAnim_Withdraw_branch_cbcb7
@@ -2855,10 +2855,10 @@
 	anim_bgeffect $6, $0, $2, $0
 	anim_bgeffect $8, $0, $4, $0
 BattleAnim_Psybeam_branch_ca835: ; ca835
-	anim_sound $1a, SFX_PSYBEAM
-	anim_obj $4c, 64, 88, $4
+	anim_sound 6, 2, SFX_PSYBEAM
+	anim_obj ANIM_OBJ_4C, 64, 88, $4
 	anim_wait 4
-	anim_loop $a, BattleAnim_Psybeam_branch_ca835
+	anim_loop 10, BattleAnim_Psybeam_branch_ca835
 	anim_wait 48
 	anim_ret
 ; ca844
@@ -2867,7 +2867,7 @@
 	anim_1gfx ANIM_GFX_BUBBLE
 	anim_bgp $1b
 	anim_obp0 $27
-	anim_sound $1b, SFX_WATER_GUN
+	anim_sound 6, 3, SFX_WATER_GUN
 	anim_call BattleAnim_DreamEater_branch_cbab3
 	anim_wait 128
 	anim_wait 48
@@ -2876,7 +2876,7 @@
 
 BattleAnim_LeechLife: ; ca853
 	anim_1gfx ANIM_GFX_BUBBLE
-	anim_sound $1b, SFX_WATER_GUN
+	anim_sound 6, 3, SFX_WATER_GUN
 	anim_call BattleAnim_LeechLife_branch_cbab3
 	anim_wait 128
 	anim_wait 48
@@ -2896,16 +2896,16 @@
 	anim_1gfx ANIM_GFX_PSYCHIC
 	anim_bgeffect ANIM_BG_PSYCHIC, $0, $0, $0
 BattleAnim_Psywave_branch_ca873: ; ca873
-	anim_sound $1a, SFX_PSYCHIC
-	anim_obj $4c, 64, 80, $2
+	anim_sound 6, 2, SFX_PSYCHIC
+	anim_obj ANIM_OBJ_4C, 64, 80, $2
 	anim_wait 8
-	anim_sound $1a, SFX_PSYCHIC
-	anim_obj $4c, 64, 88, $3
+	anim_sound 6, 2, SFX_PSYCHIC
+	anim_obj ANIM_OBJ_4C, 64, 88, $3
 	anim_wait 8
-	anim_sound $1a, SFX_PSYCHIC
-	anim_obj $4c, 64, 96, $4
+	anim_sound 6, 2, SFX_PSYCHIC
+	anim_obj ANIM_OBJ_4C, 64, 96, $4
 	anim_wait 8
-	anim_loop $3, BattleAnim_Psywave_branch_ca873
+	anim_loop 3, BattleAnim_Psywave_branch_ca873
 	anim_wait 32
 	anim_incbgeffect ANIM_BG_PSYCHIC
 	anim_wait 4
@@ -2923,17 +2923,17 @@
 
 BattleAnim_Thrash: ; ca8a8
 	anim_1gfx ANIM_GFX_HIT
-	anim_sound $1, SFX_POUND
-	anim_obj $8, 120, 72, $0
-	anim_obj $0, 120, 72, $0
+	anim_sound 0, 1, SFX_POUND
+	anim_obj ANIM_OBJ_08, 120, 72, $0
+	anim_obj ANIM_OBJ_00, 120, 72, $0
 	anim_wait 6
-	anim_sound $1, SFX_MOVE_PUZZLE_PIECE
-	anim_obj $6, 136, 56, $0
-	anim_obj $0, 136, 56, $0
+	anim_sound 0, 1, SFX_MOVE_PUZZLE_PIECE
+	anim_obj ANIM_OBJ_06, 136, 56, $0
+	anim_obj ANIM_OBJ_00, 136, 56, $0
 	anim_wait 6
-	anim_sound $1, SFX_DOUBLE_KICK
-	anim_obj $7, 152, 40, $0
-	anim_obj $0, 152, 40, $0
+	anim_sound 0, 1, SFX_DOUBLE_KICK
+	anim_obj ANIM_OBJ_07, 152, 40, $0
+	anim_obj ANIM_OBJ_00, 152, 40, $0
 	anim_wait 16
 	anim_ret
 ; ca8d5
@@ -2941,15 +2941,15 @@
 BattleAnim_Growth: ; ca8d5
 	anim_bgeffect ANIM_BG_WHITE_HUES, $0, $8, $0
 	anim_1gfx ANIM_GFX_CHARGE
-	anim_sound $0, SFX_SWORDS_DANCE
-	anim_obj $72, 48, 108, $0
-	anim_obj $72, 48, 108, $8
-	anim_obj $72, 48, 108, $10
-	anim_obj $72, 48, 108, $18
-	anim_obj $72, 48, 108, $20
-	anim_obj $72, 48, 108, $28
-	anim_obj $72, 48, 108, $30
-	anim_obj $72, 48, 108, $38
+	anim_sound 0, 0, SFX_SWORDS_DANCE
+	anim_obj ANIM_OBJ_72, 48, 108, $0
+	anim_obj ANIM_OBJ_72, 48, 108, $8
+	anim_obj ANIM_OBJ_72, 48, 108, $10
+	anim_obj ANIM_OBJ_72, 48, 108, $18
+	anim_obj ANIM_OBJ_72, 48, 108, $20
+	anim_obj ANIM_OBJ_72, 48, 108, $28
+	anim_obj ANIM_OBJ_72, 48, 108, $30
+	anim_obj ANIM_OBJ_72, 48, 108, $38
 	anim_wait 64
 	anim_ret
 ; ca909
@@ -2956,15 +2956,15 @@
 
 BattleAnim_Conversion2: ; ca909
 	anim_1gfx ANIM_GFX_EXPLOSION
-	anim_sound $ff, SFX_SHARPEN
-	anim_obj $73, 132, 44, $0
-	anim_obj $73, 132, 44, $8
-	anim_obj $73, 132, 44, $10
-	anim_obj $73, 132, 44, $18
-	anim_obj $73, 132, 44, $20
-	anim_obj $73, 132, 44, $28
-	anim_obj $73, 132, 44, $30
-	anim_obj $73, 132, 44, $38
+	anim_sound 63, 3, SFX_SHARPEN
+	anim_obj ANIM_OBJ_73, 132, 44, $0
+	anim_obj ANIM_OBJ_73, 132, 44, $8
+	anim_obj ANIM_OBJ_73, 132, 44, $10
+	anim_obj ANIM_OBJ_73, 132, 44, $18
+	anim_obj ANIM_OBJ_73, 132, 44, $20
+	anim_obj ANIM_OBJ_73, 132, 44, $28
+	anim_obj ANIM_OBJ_73, 132, 44, $30
+	anim_obj ANIM_OBJ_73, 132, 44, $38
 	anim_wait 128
 	anim_wait 48
 	anim_ret
@@ -2972,18 +2972,18 @@
 
 BattleAnim_Smokescreen: ; ca939
 	anim_3gfx ANIM_GFX_HAZE, ANIM_GFX_EGG, ANIM_GFX_SMOKE
-	anim_sound $1a, SFX_THROW_BALL
-	anim_obj $75, 64, 92, $6c
+	anim_sound 6, 2, SFX_THROW_BALL
+	anim_obj ANIM_OBJ_75, 64, 92, $6c
 	anim_wait 24
-	anim_incobj $1
-	anim_sound $1, SFX_BALL_POOF
-	anim_obj $1c, 108, 70, $10
+	anim_incobj  1
+	anim_sound 0, 1, SFX_BALL_POOF
+	anim_obj ANIM_OBJ_1C, 108, 70, $10
 	anim_wait 8
 BattleAnim_Smokescreen_branch_ca951: ; ca951
-	anim_sound $1, SFX_MENU
-	anim_obj $74, 132, 60, $20
+	anim_sound 0, 1, SFX_MENU
+	anim_obj ANIM_OBJ_74, 132, 60, $20
 	anim_wait 8
-	anim_loop $5, BattleAnim_Smokescreen_branch_ca951
+	anim_loop 5, BattleAnim_Smokescreen_branch_ca951
 	anim_wait 128
 	anim_ret
 ; ca960
@@ -2991,13 +2991,13 @@
 BattleAnim_Strength: ; ca960
 	anim_2gfx ANIM_GFX_ROCKS, ANIM_GFX_HIT
 	anim_bgeffect $20, $10, $1, $20
-	anim_sound $0, SFX_STRENGTH
-	anim_obj $1f, 64, 104, $1
+	anim_sound 0, 0, SFX_STRENGTH
+	anim_obj ANIM_OBJ_1F, 64, 104, $1
 	anim_wait 128
-	anim_incobj $1
+	anim_incobj  1
 	anim_wait 20
-	anim_sound $1, SFX_MEGA_PUNCH
-	anim_obj $0, 132, 40, $0
+	anim_sound 0, 1, SFX_MEGA_PUNCH
+	anim_obj ANIM_OBJ_00, 132, 40, $0
 	anim_wait 16
 	anim_ret
 ; ca97e
@@ -3004,12 +3004,12 @@
 
 BattleAnim_SwordsDance: ; ca97e
 	anim_1gfx ANIM_GFX_WHIP
-	anim_sound $0, SFX_SWORDS_DANCE
-	anim_obj $76, 48, 108, $0
-	anim_obj $76, 48, 108, $d
-	anim_obj $76, 48, 108, $1a
-	anim_obj $76, 48, 108, $27
-	anim_obj $76, 48, 108, $34
+	anim_sound 0, 0, SFX_SWORDS_DANCE
+	anim_obj ANIM_OBJ_76, 48, 108, $0
+	anim_obj ANIM_OBJ_76, 48, 108, $d
+	anim_obj ANIM_OBJ_76, 48, 108, $1a
+	anim_obj ANIM_OBJ_76, 48, 108, $27
+	anim_obj ANIM_OBJ_76, 48, 108, $34
 	anim_wait 56
 	anim_ret
 ; ca99e
@@ -3016,17 +3016,17 @@
 
 BattleAnim_QuickAttack: ; ca99e
 	anim_2gfx ANIM_GFX_SPEED, ANIM_GFX_HIT
-	anim_sound $0, SFX_MENU
+	anim_sound 0, 0, SFX_MENU
 	anim_bgeffect ANIM_BG_HIDE_MON, $0, $1, $0
-	anim_obj $77, 24, 88, $2
-	anim_obj $77, 32, 88, $1
-	anim_obj $77, 40, 88, $0
-	anim_obj $77, 48, 88, $80
-	anim_obj $77, 56, 88, $81
-	anim_obj $77, 64, 88, $82
+	anim_obj ANIM_OBJ_77, 24, 88, $2
+	anim_obj ANIM_OBJ_77, 32, 88, $1
+	anim_obj ANIM_OBJ_77, 40, 88, $0
+	anim_obj ANIM_OBJ_77, 48, 88, $80
+	anim_obj ANIM_OBJ_77, 56, 88, $81
+	anim_obj ANIM_OBJ_77, 64, 88, $82
 	anim_wait 12
-	anim_sound $1, SFX_COMET_PUNCH
-	anim_obj $1, 136, 56, $0
+	anim_sound 0, 1, SFX_COMET_PUNCH
+	anim_obj ANIM_OBJ_01, 136, 56, $0
 	anim_wait 8
 	anim_bgeffect ANIM_BG_SHOW_MON, $0, $1, $0
 	anim_wait 16
@@ -3036,7 +3036,7 @@
 BattleAnim_Meditate: ; ca9d8
 	anim_1gfx ANIM_GFX_HIT
 	anim_call BattleAnim_Meditate_branch_cbca7
-	anim_sound $0, SFX_PSYBEAM
+	anim_sound 0, 0, SFX_PSYBEAM
 	anim_bgeffect $28, $0, $1, $0
 	anim_wait 48
 	anim_incbgeffect $28
@@ -3049,11 +3049,11 @@
 	anim_1gfx ANIM_GFX_SHAPES
 	anim_obp0 $e4
 	anim_call BattleAnim_Sharpen_branch_cbca7
-	anim_sound $0, SFX_SHARPEN
+	anim_sound 0, 0, SFX_SHARPEN
 	anim_bgeffect $18, $0, $1, $40
-	anim_obj $78, 48, 88, $0
+	anim_obj ANIM_OBJ_78, 48, 88, $0
 	anim_wait 96
-	anim_incobj $2
+	anim_incobj  2
 	anim_incbgeffect $18
 	anim_call BattleAnim_Sharpen_branch_cbcb7
 	anim_ret
@@ -3063,11 +3063,11 @@
 	anim_1gfx ANIM_GFX_SHAPES
 	anim_obp0 $e4
 	anim_call BattleAnim_DefenseCurl_branch_cbca7
-	anim_sound $0, SFX_SHARPEN
+	anim_sound 0, 0, SFX_SHARPEN
 	anim_bgeffect $18, $0, $1, $40
-	anim_obj $79, 48, 88, $0
+	anim_obj ANIM_OBJ_79, 48, 88, $0
 	anim_wait 96
-	anim_incobj $2
+	anim_incobj  2
 	anim_incbgeffect $18
 	anim_call BattleAnim_DefenseCurl_branch_cbcb7
 	anim_ret
@@ -3076,13 +3076,13 @@
 BattleAnim_SeismicToss: ; caa27
 	anim_2gfx ANIM_GFX_GLOBE, ANIM_GFX_HIT
 	anim_bgeffect $20, $10, $1, $20
-	anim_sound $0, SFX_STRENGTH
-	anim_obj $20, 64, 104, $1
+	anim_sound 0, 0, SFX_STRENGTH
+	anim_obj ANIM_OBJ_20, 64, 104, $1
 	anim_wait 128
-	anim_incobj $1
+	anim_incobj  1
 	anim_wait 20
-	anim_sound $1, SFX_MEGA_PUNCH
-	anim_obj $0, 132, 40, $0
+	anim_sound 0, 1, SFX_MEGA_PUNCH
+	anim_obj ANIM_OBJ_00, 132, 40, $0
 	anim_wait 16
 	anim_ret
 ; caa45
@@ -3091,18 +3091,18 @@
 	anim_1gfx ANIM_GFX_HIT
 	anim_call BattleAnim_Rage_branch_cbca7
 	anim_bgeffect $1a, $0, $1, $20
-	anim_sound $0, SFX_RAGE
+	anim_sound 0, 0, SFX_RAGE
 	anim_wait 72
 	anim_incbgeffect $1a
 	anim_call BattleAnim_Rage_branch_cbcb7
-	anim_sound $1, SFX_MOVE_PUZZLE_PIECE
-	anim_obj $0, 120, 72, $0
+	anim_sound 0, 1, SFX_MOVE_PUZZLE_PIECE
+	anim_obj ANIM_OBJ_00, 120, 72, $0
 	anim_wait 6
-	anim_sound $1, SFX_COMET_PUNCH
-	anim_obj $0, 136, 56, $0
+	anim_sound 0, 1, SFX_COMET_PUNCH
+	anim_obj ANIM_OBJ_00, 136, 56, $0
 	anim_wait 6
-	anim_sound $1, SFX_MEGA_PUNCH
-	anim_obj $0, 152, 40, $0
+	anim_sound 0, 1, SFX_MEGA_PUNCH
+	anim_obj ANIM_OBJ_00, 152, 40, $0
 	anim_wait 16
 	anim_ret
 ; caa74
@@ -3112,18 +3112,18 @@
 	anim_obp0 $fc
 	anim_call BattleAnim_Agility_branch_cbca7
 	anim_bgeffect $18, $0, $1, $40
-	anim_obj $7d, 8, 24, $10
-	anim_obj $7d, 8, 48, $2
-	anim_obj $7d, 8, 88, $8
+	anim_obj ANIM_OBJ_7D, 8, 24, $10
+	anim_obj ANIM_OBJ_7D, 8, 48, $2
+	anim_obj ANIM_OBJ_7D, 8, 88, $8
 	anim_wait 4
-	anim_obj $7d, 8, 32, $6
-	anim_obj $7d, 8, 56, $c
-	anim_obj $7d, 8, 80, $4
-	anim_obj $7d, 8, 104, $e
+	anim_obj ANIM_OBJ_7D, 8, 32, $6
+	anim_obj ANIM_OBJ_7D, 8, 56, $c
+	anim_obj ANIM_OBJ_7D, 8, 80, $4
+	anim_obj ANIM_OBJ_7D, 8, 104, $e
 BattleAnim_Agility_branch_caaa4: ; caaa4
-	anim_sound $0, SFX_RAZOR_WIND
+	anim_sound 0, 0, SFX_RAZOR_WIND
 	anim_wait 4
-	anim_loop $12, BattleAnim_Agility_branch_caaa4
+	anim_loop 18, BattleAnim_Agility_branch_caaa4
 	anim_incbgeffect $18
 	anim_call BattleAnim_Agility_branch_cbcb7
 	anim_ret
@@ -3131,10 +3131,10 @@
 
 BattleAnim_BoneClub: ; caab2
 	anim_2gfx ANIM_GFX_HIT, ANIM_GFX_MISC
-	anim_obj $68, 64, 88, $2
+	anim_obj ANIM_OBJ_68, 64, 88, $2
 	anim_wait 32
-	anim_sound $1, SFX_BONE_CLUB
-	anim_obj $1, 136, 56, $0
+	anim_sound 0, 1, SFX_BONE_CLUB
+	anim_obj ANIM_OBJ_01, 136, 56, $0
 	anim_wait 16
 	anim_ret
 ; caac5
@@ -3144,11 +3144,11 @@
 	anim_enemyfeetobj
 	anim_bgeffect $6, $0, $2, $0
 	anim_wait 8
-	anim_sound $0, SFX_SHINE
-	anim_obj $50, 72, 80, $0
+	anim_sound 0, 0, SFX_SHINE
+	anim_obj ANIM_OBJ_50, 72, 80, $0
 	anim_wait 32
-	anim_sound $0, SFX_SHINE
-	anim_obj $50, 72, 80, $0
+	anim_sound 0, 0, SFX_SHINE
+	anim_obj ANIM_OBJ_50, 72, 80, $0
 	anim_wait 32
 	anim_ret
 ; caae1
@@ -3159,20 +3159,20 @@
 	anim_bgeffect $25, $0, $1, $0
 	anim_wait 16
 	anim_call BattleAnim_Waterfall_branch_cbcb7
-	anim_sound $1, SFX_LICK
-	anim_obj $1, 136, 56, $0
+	anim_sound 0, 1, SFX_LICK
+	anim_obj ANIM_OBJ_01, 136, 56, $0
 	anim_wait 3
-	anim_sound $1, SFX_LICK
-	anim_obj $1, 136, 48, $0
+	anim_sound 0, 1, SFX_LICK
+	anim_obj ANIM_OBJ_01, 136, 48, $0
 	anim_wait 3
-	anim_sound $1, SFX_LICK
-	anim_obj $1, 136, 40, $0
+	anim_sound 0, 1, SFX_LICK
+	anim_obj ANIM_OBJ_01, 136, 40, $0
 	anim_wait 3
-	anim_sound $1, SFX_LICK
-	anim_obj $1, 136, 32, $0
+	anim_sound 0, 1, SFX_LICK
+	anim_obj ANIM_OBJ_01, 136, 32, $0
 	anim_wait 3
-	anim_sound $1, SFX_LICK
-	anim_obj $1, 136, 24, $0
+	anim_sound 0, 1, SFX_LICK
+	anim_obj ANIM_OBJ_01, 136, 24, $0
 	anim_wait 8
 	anim_ret
 ; cab1d
@@ -3182,10 +3182,10 @@
 	anim_bgeffect ANIM_BG_ALTERNATE_HUES, $0, $2, $0
 	anim_bgeffect ANIM_BG_PSYCHIC, $0, $0, $0
 BattleAnim_PsychicM_branch_cab29: ; cab29
-	anim_sound $1a, SFX_PSYCHIC
-	anim_obj $4c, 64, 88, $2
+	anim_sound 6, 2, SFX_PSYCHIC
+	anim_obj ANIM_OBJ_4C, 64, 88, $2
 	anim_wait 8
-	anim_loop $8, BattleAnim_PsychicM_branch_cab29
+	anim_loop 8, BattleAnim_PsychicM_branch_cab29
 	anim_wait 96
 	anim_incbgeffect ANIM_BG_PSYCHIC
 	anim_wait 4
@@ -3211,12 +3211,12 @@
 
 BattleAnim_Metronome: ; cab52
 	anim_2gfx ANIM_GFX_MISC, ANIM_GFX_SPEED
-	anim_sound $0, SFX_METRONOME
-	anim_obj $7a, 72, 88, $0
+	anim_sound 0, 0, SFX_METRONOME
+	anim_obj ANIM_OBJ_7A, 72, 88, $0
 BattleAnim_Metronome_branch_cab5d: ; cab5d
-	anim_obj $7b, 72, 80, $0
+	anim_obj ANIM_OBJ_7B, 72, 80, $0
 	anim_wait 8
-	anim_loop $5, BattleAnim_Metronome_branch_cab5d
+	anim_loop 5, BattleAnim_Metronome_branch_cab5d
 	anim_wait 48
 	anim_ret
 ; cab69
@@ -3225,21 +3225,21 @@
 	anim_1gfx ANIM_GFX_HIT
 BattleAnim_Counter_branch_cab6b: ; cab6b
 	anim_bgeffect ANIM_BG_FLASH_INVERTED, $0, $6, $2
-	anim_sound $1, SFX_POUND
-	anim_obj $8, 120, 72, $0
-	anim_obj $0, 120, 72, $0
+	anim_sound 0, 1, SFX_POUND
+	anim_obj ANIM_OBJ_08, 120, 72, $0
+	anim_obj ANIM_OBJ_00, 120, 72, $0
 	anim_wait 6
 	anim_bgeffect ANIM_BG_FLASH_INVERTED, $0, $6, $2
-	anim_sound $1, SFX_COMET_PUNCH
-	anim_obj $6, 136, 40, $0
-	anim_obj $0, 136, 40, $0
+	anim_sound 0, 1, SFX_COMET_PUNCH
+	anim_obj ANIM_OBJ_06, 136, 40, $0
+	anim_obj ANIM_OBJ_00, 136, 40, $0
 	anim_wait 6
 	anim_bgeffect ANIM_BG_FLASH_INVERTED, $0, $6, $2
-	anim_sound $1, SFX_MEGA_KICK
-	anim_obj $7, 152, 56, $0
-	anim_obj $0, 152, 56, $0
+	anim_sound 0, 1, SFX_MEGA_KICK
+	anim_obj ANIM_OBJ_07, 152, 56, $0
+	anim_obj ANIM_OBJ_00, 152, 56, $0
 	anim_wait 6
-	anim_loop $3, BattleAnim_Counter_branch_cab6b
+	anim_loop 3, BattleAnim_Counter_branch_cab6b
 	anim_wait 16
 	anim_ret
 ; cabaa
@@ -3247,19 +3247,19 @@
 BattleAnim_LowKick: ; cabaa
 	anim_1gfx ANIM_GFX_HIT
 	anim_bgeffect ANIM_BG_FLASH_INVERTED, $0, $4, $2
-	anim_sound $1, SFX_DOUBLE_KICK
-	anim_obj $7, 124, 64, $0
-	anim_obj $0, 124, 64, $0
+	anim_sound 0, 1, SFX_DOUBLE_KICK
+	anim_obj ANIM_OBJ_07, 124, 64, $0
+	anim_obj ANIM_OBJ_00, 124, 64, $0
 	anim_wait 6
 	anim_bgeffect ANIM_BG_FLASH_INVERTED, $0, $4, $2
-	anim_sound $1, SFX_DOUBLE_KICK
-	anim_obj $7, 132, 64, $0
-	anim_obj $0, 132, 64, $0
+	anim_sound 0, 1, SFX_DOUBLE_KICK
+	anim_obj ANIM_OBJ_07, 132, 64, $0
+	anim_obj ANIM_OBJ_00, 132, 64, $0
 	anim_wait 6
 	anim_bgeffect ANIM_BG_FLASH_INVERTED, $0, $4, $2
-	anim_sound $1, SFX_DOUBLE_KICK
-	anim_obj $7, 140, 64, $0
-	anim_obj $0, 140, 64, $0
+	anim_sound 0, 1, SFX_DOUBLE_KICK
+	anim_obj ANIM_OBJ_07, 140, 64, $0
+	anim_obj ANIM_OBJ_00, 140, 64, $0
 	anim_wait 16
 	anim_ret
 ; cabe6
@@ -3266,17 +3266,17 @@
 
 BattleAnim_WingAttack: ; cabe6
 	anim_1gfx ANIM_GFX_HIT
-	anim_sound $1, SFX_WING_ATTACK
-	anim_obj $1, 148, 56, $0
-	anim_obj $1, 116, 56, $0
+	anim_sound 0, 1, SFX_WING_ATTACK
+	anim_obj ANIM_OBJ_01, 148, 56, $0
+	anim_obj ANIM_OBJ_01, 116, 56, $0
 	anim_wait 6
-	anim_sound $1, SFX_WING_ATTACK
-	anim_obj $1, 144, 56, $0
-	anim_obj $1, 120, 56, $0
+	anim_sound 0, 1, SFX_WING_ATTACK
+	anim_obj ANIM_OBJ_01, 144, 56, $0
+	anim_obj ANIM_OBJ_01, 120, 56, $0
 	anim_wait 6
-	anim_sound $1, SFX_WING_ATTACK
-	anim_obj $1, 140, 56, $0
-	anim_obj $1, 124, 56, $0
+	anim_sound 0, 1, SFX_WING_ATTACK
+	anim_obj ANIM_OBJ_01, 140, 56, $0
+	anim_obj ANIM_OBJ_01, 124, 56, $0
 	anim_wait 16
 	anim_ret
 ; cac13
@@ -3283,9 +3283,9 @@
 
 BattleAnim_Slam: ; cac13
 	anim_1gfx ANIM_GFX_HIT
-	anim_sound $1, SFX_WING_ATTACK
+	anim_sound 0, 1, SFX_WING_ATTACK
 	anim_bgeffect ANIM_BG_FLASH_INVERTED, $0, $8, $2
-	anim_obj $1, 124, 40, $0
+	anim_obj ANIM_OBJ_01, 124, 40, $0
 	anim_wait 16
 	anim_ret
 ; cac24
@@ -3293,9 +3293,9 @@
 BattleAnim_Disable: ; cac24
 	anim_2gfx ANIM_GFX_LIGHTNING, ANIM_GFX_STATUS
 	anim_bgeffect $6, $0, $2, $0
-	anim_obj $7c, 132, 56, $0
+	anim_obj ANIM_OBJ_7C, 132, 56, $0
 	anim_wait 16
-	anim_sound $1, SFX_BIND
+	anim_sound 0, 1, SFX_BIND
 	anim_obj ANIM_OBJ_PARALYZED, 104, 56, $42
 	anim_obj ANIM_OBJ_PARALYZED, 160, 56, $c2
 	anim_wait 96
@@ -3305,7 +3305,7 @@
 BattleAnim_TailWhip: ; cac41
 	anim_1gfx ANIM_GFX_HIT
 	anim_call BattleAnim_TailWhip_branch_cbcaf
-	anim_sound $0, SFX_TAIL_WHIP
+	anim_sound 0, 0, SFX_TAIL_WHIP
 	anim_bgeffect $26, $0, $1, $0
 	anim_wait 32
 	anim_incbgeffect $26
@@ -3315,8 +3315,8 @@
 
 BattleAnim_Struggle: ; cac55
 	anim_1gfx ANIM_GFX_HIT
-	anim_sound $1, SFX_POUND
-	anim_obj $1, 136, 56, $0
+	anim_sound 0, 1, SFX_POUND
+	anim_obj ANIM_OBJ_01, 136, 56, $0
 	anim_wait 16
 	anim_ret
 ; cac61
@@ -3325,8 +3325,8 @@
 	anim_1gfx ANIM_GFX_OBJECTS
 	anim_call BattleAnim_Sketch_branch_cbca7
 	anim_bgeffect $1a, $0, $1, $20
-	anim_sound $0, SFX_SKETCH
-	anim_obj $98, 72, 80, $0
+	anim_sound 0, 0, SFX_SKETCH
+	anim_obj ANIM_OBJ_98, 72, 80, $0
 	anim_wait 80
 	anim_incbgeffect $1a
 	anim_call BattleAnim_Sketch_branch_cbcb7
@@ -3338,28 +3338,28 @@
 	anim_1gfx ANIM_GFX_HIT
 	anim_jumpif $1, BattleAnim_TripleKick_branch_cac95
 	anim_jumpif $2, BattleAnim_TripleKick_branch_caca5
-	anim_sound $1, SFX_MEGA_KICK
-	anim_obj $7, 144, 48, $0
+	anim_sound 0, 1, SFX_MEGA_KICK
+	anim_obj ANIM_OBJ_07, 144, 48, $0
 	anim_wait 6
-	anim_obj $1, 144, 48, $0
+	anim_obj ANIM_OBJ_01, 144, 48, $0
 	anim_wait 8
 	anim_ret
 ; cac95
 
 BattleAnim_TripleKick_branch_cac95: ; cac95
-	anim_sound $1, SFX_DOUBLE_KICK
-	anim_obj $7, 120, 64, $0
+	anim_sound 0, 1, SFX_DOUBLE_KICK
+	anim_obj ANIM_OBJ_07, 120, 64, $0
 	anim_wait 6
-	anim_obj $1, 120, 64, $0
+	anim_obj ANIM_OBJ_01, 120, 64, $0
 	anim_wait 8
 	anim_ret
 ; caca5
 
 BattleAnim_TripleKick_branch_caca5: ; caca5
-	anim_sound $1, SFX_DOUBLE_KICK
-	anim_obj $7, 132, 32, $0
+	anim_sound 0, 1, SFX_DOUBLE_KICK
+	anim_obj ANIM_OBJ_07, 132, 32, $0
 	anim_wait 6
-	anim_obj $1, 132, 32, $0
+	anim_obj ANIM_OBJ_01, 132, 32, $0
 	anim_wait 8
 	anim_ret
 ; cacb5
@@ -3369,14 +3369,14 @@
 	anim_call BattleAnim_Thief_branch_cbca7
 	anim_bgeffect ANIM_BG_TACKLE, $0, $1, $0
 	anim_wait 16
-	anim_sound $1, SFX_THIEF
-	anim_obj $1, 128, 48, $0
+	anim_sound 0, 1, SFX_THIEF
+	anim_obj ANIM_OBJ_01, 128, 48, $0
 	anim_wait 16
 	anim_call BattleAnim_Thief_branch_cbcb7
 	anim_wait 1
 	anim_1gfx ANIM_GFX_STATUS
-	anim_sound $1, SFX_THIEF_2
-	anim_obj $8b, 120, 76, $1
+	anim_sound 0, 1, SFX_THIEF_2
+	anim_obj ANIM_OBJ_8B, 120, 76, $1
 	anim_wait 64
 	anim_ret
 ; cacd9
@@ -3384,13 +3384,13 @@
 BattleAnim_SpiderWeb: ; cacd9
 	anim_1gfx ANIM_GFX_WEB
 	anim_bgeffect $7, $0, $2, $0
-	anim_obj $92, 132, 48, $0
-	anim_sound $1a, SFX_SPIDER_WEB
-	anim_obj $5a, 64, 80, $0
+	anim_obj ANIM_OBJ_92, 132, 48, $0
+	anim_sound 6, 2, SFX_SPIDER_WEB
+	anim_obj ANIM_OBJ_5A, 64, 80, $0
 	anim_wait 4
-	anim_obj $5a, 64, 88, $0
+	anim_obj ANIM_OBJ_5A, 64, 88, $0
 	anim_wait 4
-	anim_obj $5a, 64, 84, $0
+	anim_obj ANIM_OBJ_5A, 64, 84, $0
 	anim_wait 64
 	anim_ret
 ; cacfb
@@ -3397,14 +3397,14 @@
 
 BattleAnim_MindReader: ; cacfb
 	anim_1gfx ANIM_GFX_MISC
-	anim_sound $1, SFX_MIND_READER
+	anim_sound 0, 1, SFX_MIND_READER
 BattleAnim_MindReader_branch_cad00: ; cad00
-	anim_obj $88, 132, 48, $3
-	anim_obj $88, 132, 48, $12
-	anim_obj $88, 132, 48, $20
-	anim_obj $88, 132, 48, $31
+	anim_obj ANIM_OBJ_88, 132, 48, $3
+	anim_obj ANIM_OBJ_88, 132, 48, $12
+	anim_obj ANIM_OBJ_88, 132, 48, $20
+	anim_obj ANIM_OBJ_88, 132, 48, $31
 	anim_wait 16
-	anim_loop $2, BattleAnim_MindReader_branch_cad00
+	anim_loop 2, BattleAnim_MindReader_branch_cad00
 	anim_wait 32
 	anim_ret
 ; cad1b
@@ -3413,9 +3413,9 @@
 	anim_1gfx ANIM_GFX_ANGELS
 	anim_bgp $1b
 	anim_obp0 $f
-	anim_obj $94, 132, 40, $0
-	anim_obj $94, 132, 40, $a0
-	anim_sound $1, SFX_NIGHTMARE
+	anim_obj ANIM_OBJ_94, 132, 40, $0
+	anim_obj ANIM_OBJ_94, 132, 40, $a0
+	anim_sound 0, 1, SFX_NIGHTMARE
 	anim_wait 96
 	anim_ret
 ; cad30
@@ -3423,23 +3423,23 @@
 BattleAnim_FlameWheel: ; cad30
 	anim_1gfx ANIM_GFX_FIRE
 BattleAnim_FlameWheel_branch_cad32: ; cad32
-	anim_sound $0, SFX_EMBER
-	anim_obj $7f, 48, 96, $0
+	anim_sound 0, 0, SFX_EMBER
+	anim_obj ANIM_OBJ_7F, 48, 96, $0
 	anim_wait 6
-	anim_loop $8, BattleAnim_FlameWheel_branch_cad32
+	anim_loop 8, BattleAnim_FlameWheel_branch_cad32
 	anim_wait 96
 	anim_call BattleAnim_FlameWheel_branch_cbca7
 	anim_bgeffect ANIM_BG_TACKLE, $0, $1, $0
 	anim_wait 4
 	anim_bgeffect ANIM_BG_FLASH_INVERTED, $0, $4, $3
-	anim_sound $1, SFX_EMBER
-	anim_obj $f, 136, 48, $1
-	anim_obj $f, 136, 48, $4
-	anim_obj $f, 136, 48, $5
+	anim_sound 0, 1, SFX_EMBER
+	anim_obj ANIM_OBJ_0F, 136, 48, $1
+	anim_obj ANIM_OBJ_0F, 136, 48, $4
+	anim_obj ANIM_OBJ_0F, 136, 48, $5
 	anim_wait 8
 	anim_bgeffect ANIM_BG_SHOW_MON, $0, $0, $0
 	anim_wait 4
-	anim_incobj $9
+	anim_incobj  9
 	anim_wait 8
 	anim_ret
 ; cad6b
@@ -3446,14 +3446,14 @@
 
 BattleAnim_Snore: ; cad6b
 	anim_2gfx ANIM_GFX_STATUS, ANIM_GFX_NOISE
-	anim_obj $54, 64, 80, $0
+	anim_obj ANIM_OBJ_54, 64, 80, $0
 	anim_wait 32
 	anim_bgeffect $1f, $60, $2, $0
-	anim_sound $0, SFX_SNORE
+	anim_sound 0, 0, SFX_SNORE
 BattleAnim_Snore_branch_cad7c: ; cad7c
 	anim_call BattleAnim_Snore_branch_cbbbc
 	anim_wait 16
-	anim_loop $2, BattleAnim_Snore_branch_cad7c
+	anim_loop 2, BattleAnim_Snore_branch_cad7c
 	anim_wait 8
 	anim_ret
 ; cad86
@@ -3461,13 +3461,13 @@
 BattleAnim_Curse: ; cad86
 	anim_jumpif $1, BattleAnim_Curse_branch_cada3
 	anim_2gfx ANIM_GFX_HIT, ANIM_GFX_OBJECTS
-	anim_obj $a5, 68, 72, $0
-	anim_sound $0, SFX_CURSE
+	anim_obj ANIM_OBJ_A5, 68, 72, $0
+	anim_sound 0, 0, SFX_CURSE
 	anim_wait 32
-	anim_incobj $1
+	anim_incobj  1
 	anim_wait 12
-	anim_sound $0, SFX_POISON_STING
-	anim_obj $4, 44, 96, $0
+	anim_sound 0, 0, SFX_POISON_STING
+	anim_obj ANIM_OBJ_04, 44, 96, $0
 	anim_wait 16
 	anim_ret
 ; cada3
@@ -3476,28 +3476,28 @@
 	anim_1gfx ANIM_GFX_SPEED
 	anim_call BattleAnim_Curse_branch_cbca7
 	anim_bgeffect $19, $0, $1, $40
-	anim_sound $0, SFX_SHARPEN
+	anim_sound 0, 0, SFX_SHARPEN
 	anim_wait 64
 	anim_incbgeffect $19
 	anim_wait 1
 	anim_bgeffect $16, $0, $1, $40
 BattleAnim_Curse_branch_cadb9: ; cadb9
-	anim_sound $0, SFX_SWORDS_DANCE
-	anim_obj $47, 44, 108, $6
+	anim_sound 0, 0, SFX_SWORDS_DANCE
+	anim_obj ANIM_OBJ_47, 44, 108, $6
 	anim_wait 2
-	anim_obj $47, 36, 108, $6
+	anim_obj ANIM_OBJ_47, 36, 108, $6
 	anim_wait 2
-	anim_obj $47, 52, 108, $8
+	anim_obj ANIM_OBJ_47, 52, 108, $8
 	anim_wait 2
-	anim_obj $47, 28, 108, $8
+	anim_obj ANIM_OBJ_47, 28, 108, $8
 	anim_wait 2
-	anim_obj $47, 60, 108, $6
+	anim_obj ANIM_OBJ_47, 60, 108, $6
 	anim_wait 2
-	anim_obj $47, 20, 108, $8
+	anim_obj ANIM_OBJ_47, 20, 108, $8
 	anim_wait 2
-	anim_obj $47, 68, 108, $8
+	anim_obj ANIM_OBJ_47, 68, 108, $8
 	anim_wait 2
-	anim_loop $3, BattleAnim_Curse_branch_cadb9
+	anim_loop 3, BattleAnim_Curse_branch_cadb9
 	anim_wait 8
 	anim_incbgeffect $16
 	anim_call BattleAnim_Curse_branch_cbcb7
@@ -3507,14 +3507,14 @@
 BattleAnim_Flail: ; cadf1
 	anim_1gfx ANIM_GFX_HIT
 	anim_call BattleAnim_Flail_branch_cbca7
-	anim_sound $0, SFX_SUBMISSION
+	anim_sound 0, 0, SFX_SUBMISSION
 	anim_bgeffect $2c, $0, $1, $0
 	anim_wait 8
-	anim_obj $1, 120, 48, $0
+	anim_obj ANIM_OBJ_01, 120, 48, $0
 	anim_wait 8
-	anim_obj $1, 152, 48, $0
+	anim_obj ANIM_OBJ_01, 152, 48, $0
 	anim_wait 8
-	anim_obj $1, 136, 48, $0
+	anim_obj ANIM_OBJ_01, 136, 48, $0
 	anim_wait 8
 	anim_incbgeffect $2c
 	anim_call BattleAnim_Flail_branch_cbcb7
@@ -3524,15 +3524,15 @@
 BattleAnim_Conversion: ; cae17
 	anim_1gfx ANIM_GFX_EXPLOSION
 	anim_bgeffect ANIM_BG_ALTERNATE_HUES, $0, $2, $0
-	anim_sound $ff, SFX_SHARPEN
-	anim_obj $91, 48, 88, $0
-	anim_obj $91, 48, 88, $8
-	anim_obj $91, 48, 88, $10
-	anim_obj $91, 48, 88, $18
-	anim_obj $91, 48, 88, $20
-	anim_obj $91, 48, 88, $28
-	anim_obj $91, 48, 88, $30
-	anim_obj $91, 48, 88, $38
+	anim_sound 63, 3, SFX_SHARPEN
+	anim_obj ANIM_OBJ_91, 48, 88, $0
+	anim_obj ANIM_OBJ_91, 48, 88, $8
+	anim_obj ANIM_OBJ_91, 48, 88, $10
+	anim_obj ANIM_OBJ_91, 48, 88, $18
+	anim_obj ANIM_OBJ_91, 48, 88, $20
+	anim_obj ANIM_OBJ_91, 48, 88, $28
+	anim_obj ANIM_OBJ_91, 48, 88, $30
+	anim_obj ANIM_OBJ_91, 48, 88, $38
 	anim_wait 128
 	anim_ret
 ; cae4b
@@ -3542,18 +3542,18 @@
 	anim_bgp $1b
 	anim_bgeffect $1f, $50, $4, $10
 	anim_bgeffect $6, $0, $2, $0
-	anim_sound $0, SFX_AEROBLAST
-	anim_obj $b3, 72, 88, $0
+	anim_sound 0, 0, SFX_AEROBLAST
+	anim_obj ANIM_OBJ_B3, 72, 88, $0
 	anim_wait 32
-	anim_sound $0, SFX_HYPER_BEAM
-	anim_obj $27, 80, 84, $0
+	anim_sound 0, 0, SFX_HYPER_BEAM
+	anim_obj ANIM_OBJ_27, 80, 84, $0
 	anim_wait 2
-	anim_sound $1, SFX_HYPER_BEAM
-	anim_obj $27, 96, 76, $0
+	anim_sound 0, 1, SFX_HYPER_BEAM
+	anim_obj ANIM_OBJ_27, 96, 76, $0
 	anim_wait 2
-	anim_sound $1, SFX_HYPER_BEAM
-	anim_obj $27, 112, 68, $0
-	anim_obj $28, 126, 62, $0
+	anim_sound 0, 1, SFX_HYPER_BEAM
+	anim_obj ANIM_OBJ_27, 112, 68, $0
+	anim_obj ANIM_OBJ_28, 126, 62, $0
 	anim_wait 48
 	anim_ret
 ; cae84
@@ -3561,11 +3561,11 @@
 BattleAnim_CottonSpore: ; cae84
 	anim_obp0 $54
 	anim_1gfx ANIM_GFX_MISC
-	anim_sound $1, SFX_POWDER
+	anim_sound 0, 1, SFX_POWDER
 BattleAnim_CottonSpore_branch_cae8b: ; cae8b
-	anim_obj $81, 132, 32, $0
+	anim_obj ANIM_OBJ_81, 132, 32, $0
 	anim_wait 8
-	anim_loop $5, BattleAnim_CottonSpore_branch_cae8b
+	anim_loop 5, BattleAnim_CottonSpore_branch_cae8b
 	anim_wait 96
 	anim_ret
 ; cae97
@@ -3573,23 +3573,23 @@
 BattleAnim_Reversal: ; cae97
 	anim_2gfx ANIM_GFX_SHINE, ANIM_GFX_HIT
 	anim_bgeffect $7, $0, $0, $0
-	anim_sound $1, SFX_MEGA_PUNCH
-	anim_obj $4, 112, 64, $0
+	anim_sound 0, 1, SFX_MEGA_PUNCH
+	anim_obj ANIM_OBJ_04, 112, 64, $0
 	anim_wait 2
-	anim_sound $1, SFX_SHINE
-	anim_obj $a7, 120, 56, $0
+	anim_sound 0, 1, SFX_SHINE
+	anim_obj ANIM_OBJ_A7, 120, 56, $0
 	anim_wait 2
-	anim_sound $1, SFX_MEGA_PUNCH
-	anim_obj $4, 128, 56, $0
+	anim_sound 0, 1, SFX_MEGA_PUNCH
+	anim_obj ANIM_OBJ_04, 128, 56, $0
 	anim_wait 2
-	anim_sound $1, SFX_SHINE
-	anim_obj $a7, 136, 48, $0
+	anim_sound 0, 1, SFX_SHINE
+	anim_obj ANIM_OBJ_A7, 136, 48, $0
 	anim_wait 2
-	anim_sound $1, SFX_MEGA_PUNCH
-	anim_obj $4, 144, 48, $0
+	anim_sound 0, 1, SFX_MEGA_PUNCH
+	anim_obj ANIM_OBJ_04, 144, 48, $0
 	anim_wait 2
-	anim_sound $1, SFX_SHINE
-	anim_obj $a7, 152, 40, $0
+	anim_sound 0, 1, SFX_SHINE
+	anim_obj ANIM_OBJ_A7, 152, 40, $0
 	anim_wait 24
 	anim_ret
 ; caed6
@@ -3596,8 +3596,8 @@
 
 BattleAnim_Spite: ; caed6
 	anim_1gfx ANIM_GFX_ANGELS
-	anim_obj $a4, 132, 16, $0
-	anim_sound $1, SFX_SPITE
+	anim_obj ANIM_OBJ_A4, 132, 16, $0
+	anim_sound 0, 1, SFX_SPITE
 	anim_wait 96
 	anim_ret
 ; caee2
@@ -3605,16 +3605,16 @@
 BattleAnim_PowderSnow: ; caee2
 	anim_1gfx ANIM_GFX_ICE
 BattleAnim_PowderSnow_branch_caee4: ; caee4
-	anim_sound $1a, SFX_SHINE
-	anim_obj $8f, 64, 88, $23
+	anim_sound 6, 2, SFX_SHINE
+	anim_obj ANIM_OBJ_8F, 64, 88, $23
 	anim_wait 2
-	anim_sound $1a, SFX_SHINE
-	anim_obj $8f, 64, 80, $24
+	anim_sound 6, 2, SFX_SHINE
+	anim_obj ANIM_OBJ_8F, 64, 80, $24
 	anim_wait 2
-	anim_sound $1a, SFX_SHINE
-	anim_obj $8f, 64, 96, $23
+	anim_sound 6, 2, SFX_SHINE
+	anim_obj ANIM_OBJ_8F, 64, 96, $23
 	anim_wait 2
-	anim_loop $2, BattleAnim_PowderSnow_branch_caee4
+	anim_loop 2, BattleAnim_PowderSnow_branch_caee4
 	anim_bgeffect ANIM_BG_WHITE_HUES, $0, $8, $0
 	anim_wait 40
 	anim_call BattleAnim_PowderSnow_branch_cbbdf
@@ -3625,12 +3625,12 @@
 BattleAnim_Protect: ; caf0e
 	anim_1gfx ANIM_GFX_OBJECTS
 	anim_bgeffect $7, $0, $2, $0
-	anim_obj $8a, 80, 80, $0
-	anim_obj $8a, 80, 80, $d
-	anim_obj $8a, 80, 80, $1a
-	anim_obj $8a, 80, 80, $27
-	anim_obj $8a, 80, 80, $34
-	anim_sound $0, SFX_PROTECT
+	anim_obj ANIM_OBJ_8A, 80, 80, $0
+	anim_obj ANIM_OBJ_8A, 80, 80, $d
+	anim_obj ANIM_OBJ_8A, 80, 80, $1a
+	anim_obj ANIM_OBJ_8A, 80, 80, $27
+	anim_obj ANIM_OBJ_8A, 80, 80, $34
+	anim_sound 0, 0, SFX_PROTECT
 	anim_wait 96
 	anim_ret
 ; caf33
@@ -3638,18 +3638,18 @@
 BattleAnim_MachPunch: ; caf33
 	anim_2gfx ANIM_GFX_SPEED, ANIM_GFX_HIT
 	anim_bgeffect ANIM_BG_HIDE_MON, $0, $1, $0
-	anim_sound $0, SFX_MENU
-	anim_obj $77, 24, 88, $2
-	anim_obj $77, 32, 88, $1
-	anim_obj $77, 40, 88, $0
-	anim_obj $77, 48, 88, $80
-	anim_obj $77, 56, 88, $81
-	anim_obj $77, 64, 88, $82
+	anim_sound 0, 0, SFX_MENU
+	anim_obj ANIM_OBJ_77, 24, 88, $2
+	anim_obj ANIM_OBJ_77, 32, 88, $1
+	anim_obj ANIM_OBJ_77, 40, 88, $0
+	anim_obj ANIM_OBJ_77, 48, 88, $80
+	anim_obj ANIM_OBJ_77, 56, 88, $81
+	anim_obj ANIM_OBJ_77, 64, 88, $82
 	anim_wait 12
-	anim_sound $1, SFX_MEGA_PUNCH
-	anim_obj $6, 136, 56, $0
+	anim_sound 0, 1, SFX_MEGA_PUNCH
+	anim_obj ANIM_OBJ_06, 136, 56, $0
 	anim_wait 6
-	anim_obj $1, 136, 56, $0
+	anim_obj ANIM_OBJ_01, 136, 56, $0
 	anim_wait 8
 	anim_bgeffect ANIM_BG_SHOW_MON, $0, $1, $0
 	anim_wait 16
@@ -3667,18 +3667,18 @@
 
 BattleAnim_FaintAttack: ; caf84
 	anim_1gfx ANIM_GFX_HIT
-	anim_sound $0, SFX_CURSE
+	anim_sound 0, 0, SFX_CURSE
 	anim_call BattleAnim_FaintAttack_branch_cbca7
 	anim_bgeffect $1d, $0, $1, $80
 	anim_wait 96
-	anim_sound $1, SFX_COMET_PUNCH
-	anim_obj $4, 120, 32, $0
+	anim_sound 0, 1, SFX_COMET_PUNCH
+	anim_obj ANIM_OBJ_04, 120, 32, $0
 	anim_wait 8
-	anim_sound $1, SFX_COMET_PUNCH
-	anim_obj $4, 152, 40, $0
+	anim_sound 0, 1, SFX_COMET_PUNCH
+	anim_obj ANIM_OBJ_04, 152, 40, $0
 	anim_wait 8
-	anim_sound $1, SFX_COMET_PUNCH
-	anim_obj $4, 136, 48, $0
+	anim_sound 0, 1, SFX_COMET_PUNCH
+	anim_obj ANIM_OBJ_04, 136, 48, $0
 	anim_wait 32
 	anim_incbgeffect $1d
 	anim_call BattleAnim_FaintAttack_branch_cbcb7
@@ -3689,10 +3689,10 @@
 BattleAnim_SweetKiss: ; cafb4
 	anim_2gfx ANIM_GFX_OBJECTS, ANIM_GFX_ANGELS
 	anim_bgeffect $7, $0, $2, $0
-	anim_obj $97, 96, 40, $0
-	anim_sound $1, SFX_SWEET_KISS
+	anim_obj ANIM_OBJ_97, 96, 40, $0
+	anim_sound 0, 1, SFX_SWEET_KISS
 	anim_wait 32
-	anim_sound $1, SFX_SWEET_KISS_2
+	anim_sound 0, 1, SFX_SWEET_KISS_2
 	anim_obj ANIM_OBJ_HEART, 120, 40, $0
 	anim_wait 40
 	anim_ret
@@ -3700,41 +3700,41 @@
 
 BattleAnim_BellyDrum: ; cafcf
 	anim_2gfx ANIM_GFX_HIT, ANIM_GFX_NOISE
-	anim_sound $0, SFX_BELLY_DRUM
-	anim_obj $aa, 64, 104, $0
-	anim_obj $ab, 64, 92, $f8
+	anim_sound 0, 0, SFX_BELLY_DRUM
+	anim_obj ANIM_OBJ_AA, 64, 104, $0
+	anim_obj ANIM_OBJ_AB, 64, 92, $f8
 	anim_wait 24
-	anim_sound $0, SFX_BELLY_DRUM
-	anim_obj $aa, 64, 104, $0
-	anim_obj $ab, 64, 92, $f8
+	anim_sound 0, 0, SFX_BELLY_DRUM
+	anim_obj ANIM_OBJ_AA, 64, 104, $0
+	anim_obj ANIM_OBJ_AB, 64, 92, $f8
 	anim_wait 24
-	anim_sound $0, SFX_BELLY_DRUM
-	anim_obj $aa, 64, 104, $0
-	anim_obj $ab, 64, 92, $f8
+	anim_sound 0, 0, SFX_BELLY_DRUM
+	anim_obj ANIM_OBJ_AA, 64, 104, $0
+	anim_obj ANIM_OBJ_AB, 64, 92, $f8
 	anim_wait 12
-	anim_sound $0, SFX_BELLY_DRUM
-	anim_obj $aa, 64, 104, $0
-	anim_obj $ab, 64, 92, $f8
+	anim_sound 0, 0, SFX_BELLY_DRUM
+	anim_obj ANIM_OBJ_AA, 64, 104, $0
+	anim_obj ANIM_OBJ_AB, 64, 92, $f8
 	anim_wait 12
-	anim_sound $0, SFX_BELLY_DRUM
-	anim_obj $aa, 64, 104, $0
-	anim_obj $ab, 64, 92, $f8
+	anim_sound 0, 0, SFX_BELLY_DRUM
+	anim_obj ANIM_OBJ_AA, 64, 104, $0
+	anim_obj ANIM_OBJ_AB, 64, 92, $f8
 	anim_wait 24
-	anim_sound $0, SFX_BELLY_DRUM
-	anim_obj $aa, 64, 104, $0
-	anim_obj $ab, 64, 92, $f8
+	anim_sound 0, 0, SFX_BELLY_DRUM
+	anim_obj ANIM_OBJ_AA, 64, 104, $0
+	anim_obj ANIM_OBJ_AB, 64, 92, $f8
 	anim_wait 12
-	anim_sound $0, SFX_BELLY_DRUM
-	anim_obj $aa, 64, 104, $0
-	anim_obj $ab, 64, 92, $f8
+	anim_sound 0, 0, SFX_BELLY_DRUM
+	anim_obj ANIM_OBJ_AA, 64, 104, $0
+	anim_obj ANIM_OBJ_AB, 64, 92, $f8
 	anim_wait 12
-	anim_sound $0, SFX_BELLY_DRUM
-	anim_obj $aa, 64, 104, $0
-	anim_obj $ab, 64, 92, $f8
+	anim_sound 0, 0, SFX_BELLY_DRUM
+	anim_obj ANIM_OBJ_AA, 64, 104, $0
+	anim_obj ANIM_OBJ_AB, 64, 92, $f8
 	anim_wait 12
-	anim_sound $0, SFX_BELLY_DRUM
-	anim_obj $aa, 64, 104, $0
-	anim_obj $ab, 64, 92, $f8
+	anim_sound 0, 0, SFX_BELLY_DRUM
+	anim_obj ANIM_OBJ_AA, 64, 104, $0
+	anim_obj ANIM_OBJ_AB, 64, 92, $f8
 	anim_wait 12
 	anim_ret
 ; cb051
@@ -3742,8 +3742,8 @@
 BattleAnim_SludgeBomb: ; cb051
 	anim_2gfx ANIM_GFX_EGG, ANIM_GFX_POISON
 	anim_bgeffect ANIM_BG_BLACK_HUES, $0, $8, $0
-	anim_sound $1a, SFX_SLUDGE_BOMB
-	anim_obj $62, 64, 92, $10
+	anim_sound 6, 2, SFX_SLUDGE_BOMB
+	anim_obj ANIM_OBJ_62, 64, 92, $10
 	anim_wait 36
 	anim_call BattleAnim_SludgeBomb_branch_cbc15
 	anim_wait 64
@@ -3759,16 +3759,16 @@
 
 BattleAnim_Octazooka: ; cb06f
 	anim_3gfx ANIM_GFX_HAZE, ANIM_GFX_EGG, ANIM_GFX_SMOKE
-	anim_sound $1a, SFX_SLUDGE_BOMB
-	anim_obj $8c, 64, 92, $4
+	anim_sound 6, 2, SFX_SLUDGE_BOMB
+	anim_obj ANIM_OBJ_8C, 64, 92, $4
 	anim_wait 16
-	anim_obj $1c, 132, 56, $10
+	anim_obj ANIM_OBJ_1C, 132, 56, $10
 	anim_wait 8
 	anim_jumpif $0, BattleAnim_Octazooka_branch_cb091
 BattleAnim_Octazooka_branch_cb086: ; cb086
-	anim_obj $74, 132, 60, $20
+	anim_obj ANIM_OBJ_74, 132, 60, $20
 	anim_wait 8
-	anim_loop $5, BattleAnim_Octazooka_branch_cb086
+	anim_loop 5, BattleAnim_Octazooka_branch_cb086
 	anim_wait 128
 BattleAnim_Octazooka_branch_cb091: ; cb091
 	anim_ret
@@ -3776,14 +3776,14 @@
 
 BattleAnim_Spikes: ; cb092
 	anim_1gfx ANIM_GFX_MISC
-	anim_sound $1a, SFX_MENU
-	anim_obj $8e, 48, 88, $20
+	anim_sound 6, 2, SFX_MENU
+	anim_obj ANIM_OBJ_8E, 48, 88, $20
 	anim_wait 8
-	anim_sound $1a, SFX_MENU
-	anim_obj $8e, 48, 88, $30
+	anim_sound 6, 2, SFX_MENU
+	anim_obj ANIM_OBJ_8E, 48, 88, $30
 	anim_wait 8
-	anim_sound $1a, SFX_MENU
-	anim_obj $8e, 48, 88, $28
+	anim_sound 6, 2, SFX_MENU
+	anim_obj ANIM_OBJ_8E, 48, 88, $28
 	anim_wait 64
 	anim_ret
 ; cb0b0
@@ -3792,13 +3792,13 @@
 	anim_2gfx ANIM_GFX_LIGHTNING, ANIM_GFX_EXPLOSION
 	anim_bgp $1b
 	anim_obp0 $30
-	anim_sound $1a, SFX_ZAP_CANNON
-	anim_obj $a3, 64, 92, $2
+	anim_sound 6, 2, SFX_ZAP_CANNON
+	anim_obj ANIM_OBJ_A3, 64, 92, $2
 	anim_wait 40
-	anim_sound $1, SFX_THUNDERSHOCK
-	anim_obj $32, 136, 56, $2
+	anim_sound 0, 1, SFX_THUNDERSHOCK
+	anim_obj ANIM_OBJ_32, 136, 56, $2
 	anim_wait 16
-	anim_obj $31, 136, 56, $0
+	anim_obj ANIM_OBJ_31, 136, 56, $0
 	anim_wait 128
 	anim_ret
 ; cb0d0
@@ -3807,8 +3807,8 @@
 	anim_1gfx ANIM_GFX_SHINE
 	anim_call BattleAnim_Foresight_branch_cbcc2
 	anim_bgeffect $7, $0, $0, $0
-	anim_sound $1, SFX_FORESIGHT
-	anim_obj $a7, 132, 40, $0
+	anim_sound 0, 1, SFX_FORESIGHT
+	anim_obj ANIM_OBJ_A7, 132, 40, $0
 	anim_wait 24
 	anim_bgeffect $19, $0, $0, $40
 	anim_wait 64
@@ -3823,15 +3823,15 @@
 	anim_bgp $1b
 	anim_obp0 $0
 	anim_jumpif $1, BattleAnim_DestinyBond_branch_cb104
-	anim_sound $1a, SFX_WHIRLWIND
-	anim_obj $9b, 44, 120, $2
+	anim_sound 6, 2, SFX_WHIRLWIND
+	anim_obj ANIM_OBJ_9B, 44, 120, $2
 	anim_wait 128
 	anim_ret
 ; cb104
 
 BattleAnim_DestinyBond_branch_cb104: ; cb104
-	anim_obj $9b, 132, 76, $0
-	anim_sound $1, SFX_KINESIS
+	anim_obj ANIM_OBJ_9B, 132, 76, $0
+	anim_sound 0, 1, SFX_KINESIS
 	anim_bgeffect ANIM_BG_RETURN_MON, $0, $0, $0
 	anim_wait 32
 	anim_ret
@@ -3841,15 +3841,15 @@
 	anim_1gfx ANIM_GFX_NOISE
 	anim_bgeffect $6, $0, $2, $0
 	anim_bgeffect ANIM_BG_ALTERNATE_HUES, $0, $2, $0
-	anim_sound $2, SFX_PERISH_SONG
-	anim_obj $a6, 88, 0, $0
-	anim_obj $a6, 88, 0, $8
-	anim_obj $a6, 88, 0, $10
-	anim_obj $a6, 88, 0, $18
-	anim_obj $a6, 88, 0, $20
-	anim_obj $a6, 88, 0, $28
-	anim_obj $a6, 88, 0, $30
-	anim_obj $a6, 88, 0, $38
+	anim_sound 0, 2, SFX_PERISH_SONG
+	anim_obj ANIM_OBJ_A6, 88, 0, $0
+	anim_obj ANIM_OBJ_A6, 88, 0, $8
+	anim_obj ANIM_OBJ_A6, 88, 0, $10
+	anim_obj ANIM_OBJ_A6, 88, 0, $18
+	anim_obj ANIM_OBJ_A6, 88, 0, $20
+	anim_obj ANIM_OBJ_A6, 88, 0, $28
+	anim_obj ANIM_OBJ_A6, 88, 0, $30
+	anim_obj ANIM_OBJ_A6, 88, 0, $38
 	anim_wait 112
 	anim_ret
 ; cb14c
@@ -3859,16 +3859,16 @@
 	anim_bgeffect $6, $0, $2, $0
 	anim_bgeffect ANIM_BG_ALTERNATE_HUES, $0, $2, $0
 	anim_playerheadobj
-	anim_sound $0, SFX_PSYCHIC
+	anim_sound 0, 0, SFX_PSYCHIC
 BattleAnim_IcyWind_branch_cb15c: ; cb15c
 	anim_wait 8
-	anim_obj $ae, 64, 88, $4
+	anim_obj ANIM_OBJ_AE, 64, 88, $4
 	anim_wait 8
-	anim_obj $ae, 64, 80, $4
+	anim_obj ANIM_OBJ_AE, 64, 80, $4
 	anim_wait 8
-	anim_obj $ae, 64, 96, $4
+	anim_obj ANIM_OBJ_AE, 64, 96, $4
 	anim_wait 8
-	anim_loop $2, BattleAnim_IcyWind_branch_cb15c
+	anim_loop 2, BattleAnim_IcyWind_branch_cb15c
 	anim_wait 16
 	anim_bgeffect ANIM_BG_HEAD_FOLLOW, $0, $1, $0
 	anim_wait 6
@@ -3877,7 +3877,7 @@
 	anim_incbgeffect ANIM_BG_NIGHT_SHADE
 	anim_bgeffect ANIM_BG_SHOW_MON, $0, $1, $0
 	anim_wait 4
-	anim_incobj $7
+	anim_incobj  7
 	anim_wait 1
 	anim_ret
 ; cb18c
@@ -3885,8 +3885,8 @@
 BattleAnim_Detect: ; cb18c
 	anim_1gfx ANIM_GFX_SHINE
 	anim_bgeffect $7, $0, $0, $0
-	anim_sound $0, SFX_FORESIGHT
-	anim_obj $a7, 64, 88, $0
+	anim_sound 0, 0, SFX_FORESIGHT
+	anim_obj ANIM_OBJ_A7, 64, 88, $0
 	anim_wait 24
 	anim_ret
 ; cb19d
@@ -3893,14 +3893,14 @@
 
 BattleAnim_BoneRush: ; cb19d
 	anim_2gfx ANIM_GFX_HIT, ANIM_GFX_MISC
-	anim_sound $1, SFX_BONE_CLUB
-	anim_obj $69, 132, 56, $2
+	anim_sound 0, 1, SFX_BONE_CLUB
+	anim_obj ANIM_OBJ_69, 132, 56, $2
 	anim_wait 16
-	anim_sound $1, SFX_COMET_PUNCH
-	anim_obj $1, 120, 48, $0
+	anim_sound 0, 1, SFX_COMET_PUNCH
+	anim_obj ANIM_OBJ_01, 120, 48, $0
 	anim_wait 16
-	anim_sound $1, SFX_COMET_PUNCH
-	anim_obj $1, 144, 64, $0
+	anim_sound 0, 1, SFX_COMET_PUNCH
+	anim_obj ANIM_OBJ_01, 144, 64, $0
 	anim_wait 16
 	anim_ret
 ; cb1bc
@@ -3907,14 +3907,14 @@
 
 BattleAnim_LockOn: ; cb1bc
 	anim_1gfx ANIM_GFX_MISC
-	anim_sound $1, SFX_MIND_READER
+	anim_sound 0, 1, SFX_MIND_READER
 BattleAnim_LockOn_branch_cb1c1: ; cb1c1
-	anim_obj $87, 132, 48, $3
-	anim_obj $87, 132, 48, $12
-	anim_obj $87, 132, 48, $20
-	anim_obj $87, 132, 48, $31
+	anim_obj ANIM_OBJ_87, 132, 48, $3
+	anim_obj ANIM_OBJ_87, 132, 48, $12
+	anim_obj ANIM_OBJ_87, 132, 48, $20
+	anim_obj ANIM_OBJ_87, 132, 48, $31
 	anim_wait 16
-	anim_loop $2, BattleAnim_LockOn_branch_cb1c1
+	anim_loop 2, BattleAnim_LockOn_branch_cb1c1
 	anim_wait 32
 	anim_ret
 ; cb1dc
@@ -3923,19 +3923,19 @@
 	anim_1gfx ANIM_GFX_HIT
 	anim_call BattleAnim_Outrage_branch_cbca7
 	anim_bgeffect $1a, $0, $1, $20
-	anim_sound $0, SFX_OUTRAGE
+	anim_sound 0, 0, SFX_OUTRAGE
 	anim_wait 72
 	anim_incbgeffect $1a
 	anim_call BattleAnim_Outrage_branch_cbcb7
 	anim_bgeffect ANIM_BG_FLASH_INVERTED, $0, $4, $3
-	anim_sound $1, SFX_MOVE_PUZZLE_PIECE
-	anim_obj $0, 120, 72, $0
+	anim_sound 0, 1, SFX_MOVE_PUZZLE_PIECE
+	anim_obj ANIM_OBJ_00, 120, 72, $0
 	anim_wait 6
-	anim_sound $1, SFX_COMET_PUNCH
-	anim_obj $0, 136, 56, $0
+	anim_sound 0, 1, SFX_COMET_PUNCH
+	anim_obj ANIM_OBJ_00, 136, 56, $0
 	anim_wait 6
-	anim_sound $1, SFX_MEGA_PUNCH
-	anim_obj $0, 152, 40, $0
+	anim_sound 0, 1, SFX_MEGA_PUNCH
+	anim_obj ANIM_OBJ_00, 152, 40, $0
 	anim_wait 16
 	anim_ret
 ; cb210
@@ -3942,15 +3942,15 @@
 
 BattleAnim_Sandstorm: ; cb210
 	anim_1gfx ANIM_GFX_POWDER
-	anim_obj $a2, 88, 0, $0
+	anim_obj ANIM_OBJ_A2, 88, 0, $0
 	anim_wait 8
-	anim_obj $a2, 72, 0, $1
+	anim_obj ANIM_OBJ_A2, 72, 0, $1
 	anim_wait 8
-	anim_obj $a2, 56, 0, $2
+	anim_obj ANIM_OBJ_A2, 56, 0, $2
 BattleAnim_Sandstorm_branch_cb223: ; cb223
-	anim_sound $1, SFX_MENU
+	anim_sound 0, 1, SFX_MENU
 	anim_wait 8
-	anim_loop $10, BattleAnim_Sandstorm_branch_cb223
+	anim_loop 16, BattleAnim_Sandstorm_branch_cb223
 	anim_wait 8
 	anim_ret
 ; cb22d
@@ -3959,7 +3959,7 @@
 	anim_2gfx ANIM_GFX_BUBBLE, ANIM_GFX_CHARGE
 	anim_call BattleAnim_GigaDrain_branch_cbca7
 	anim_bgeffect $1c, $0, $0, $10
-	anim_sound $1b, SFX_GIGA_DRAIN
+	anim_sound 6, 3, SFX_GIGA_DRAIN
 	anim_call BattleAnim_GigaDrain_branch_cbab3
 	anim_wait 48
 	anim_wait 128
@@ -3969,18 +3969,18 @@
 	anim_1gfx ANIM_GFX_SHINE
 	anim_bgeffect $7, $0, $0, $0
 BattleAnim_GigaDrain_branch_cb24d: ; cb24d
-	anim_sound $0, SFX_METRONOME
-	anim_obj $9d, 24, 64, $0
+	anim_sound 0, 0, SFX_METRONOME
+	anim_obj ANIM_OBJ_9D, 24, 64, $0
 	anim_wait 5
-	anim_obj $9d, 56, 104, $0
+	anim_obj ANIM_OBJ_9D, 56, 104, $0
 	anim_wait 5
-	anim_obj $9d, 24, 104, $0
+	anim_obj ANIM_OBJ_9D, 24, 104, $0
 	anim_wait 5
-	anim_obj $9d, 56, 64, $0
+	anim_obj ANIM_OBJ_9D, 56, 64, $0
 	anim_wait 5
-	anim_obj $9d, 40, 84, $0
+	anim_obj ANIM_OBJ_9D, 40, 84, $0
 	anim_wait 5
-	anim_loop $2, BattleAnim_GigaDrain_branch_cb24d
+	anim_loop 2, BattleAnim_GigaDrain_branch_cb24d
 	anim_wait 32
 	anim_ret
 ; cb274
@@ -3991,22 +3991,22 @@
 	anim_bgeffect $1a, $0, $1, $20
 	anim_bgeffect $7, $0, $2, $0
 BattleAnim_Endure_branch_cb283: ; cb283
-	anim_sound $0, SFX_SWORDS_DANCE
-	anim_obj $47, 44, 108, $6
+	anim_sound 0, 0, SFX_SWORDS_DANCE
+	anim_obj ANIM_OBJ_47, 44, 108, $6
 	anim_wait 2
-	anim_obj $47, 36, 108, $6
+	anim_obj ANIM_OBJ_47, 36, 108, $6
 	anim_wait 2
-	anim_obj $47, 52, 108, $8
+	anim_obj ANIM_OBJ_47, 52, 108, $8
 	anim_wait 2
-	anim_obj $47, 28, 108, $8
+	anim_obj ANIM_OBJ_47, 28, 108, $8
 	anim_wait 2
-	anim_obj $47, 60, 108, $6
+	anim_obj ANIM_OBJ_47, 60, 108, $6
 	anim_wait 2
-	anim_obj $47, 20, 108, $8
+	anim_obj ANIM_OBJ_47, 20, 108, $8
 	anim_wait 2
-	anim_obj $47, 68, 108, $8
+	anim_obj ANIM_OBJ_47, 68, 108, $8
 	anim_wait 2
-	anim_loop $5, BattleAnim_Endure_branch_cb283
+	anim_loop 5, BattleAnim_Endure_branch_cb283
 	anim_wait 8
 	anim_incbgeffect $1a
 	anim_call BattleAnim_Endure_branch_cbcb7
@@ -4017,7 +4017,7 @@
 	anim_1gfx ANIM_GFX_OBJECTS
 	anim_call BattleAnim_Charm_branch_cbca7
 	anim_bgeffect $26, $0, $1, $0
-	anim_sound $0, SFX_ATTRACT
+	anim_sound 0, 0, SFX_ATTRACT
 	anim_obj ANIM_OBJ_HEART, 64, 80, $0
 	anim_wait 32
 	anim_incbgeffect $26
@@ -4028,13 +4028,13 @@
 
 BattleAnim_Rollout: ; cb2d5
 	anim_1gfx ANIM_GFX_HIT
-	anim_sound $0, SFX_SPARK
+	anim_sound 0, 0, SFX_SPARK
 	anim_call BattleAnim_Rollout_branch_cbcaf
 	anim_bgeffect $2e, $60, $1, $1
 	anim_bgeffect $25, $0, $1, $0
 	anim_wait 4
-	anim_sound $1, SFX_MEGA_PUNCH
-	anim_obj $3, 136, 40, $0
+	anim_sound 0, 1, SFX_MEGA_PUNCH
+	anim_obj ANIM_OBJ_03, 136, 40, $0
 	anim_wait 8
 	anim_call BattleAnim_Rollout_branch_cbcb7
 	anim_ret
@@ -4043,10 +4043,10 @@
 BattleAnim_FalseSwipe: ; cb2f5
 	anim_2gfx ANIM_GFX_SHINE, ANIM_GFX_CUT
 	anim_bgeffect $7, $0, $0, $0
-	anim_sound $1, SFX_CUT
-	anim_obj $3a, 152, 40, $0
+	anim_sound 0, 1, SFX_CUT
+	anim_obj ANIM_OBJ_3A, 152, 40, $0
 	anim_wait 4
-	anim_obj $9d, 136, 40, $0
+	anim_obj ANIM_OBJ_9D, 136, 40, $0
 	anim_wait 32
 	anim_ret
 ; cb30d
@@ -4054,13 +4054,13 @@
 BattleAnim_Swagger: ; cb30d
 	anim_2gfx ANIM_GFX_MISC, ANIM_GFX_WIND
 BattleAnim_Swagger_branch_cb310: ; cb310
-	anim_sound $0, SFX_MENU
-	anim_obj $a9, 72, 88, $44
+	anim_sound 0, 0, SFX_MENU
+	anim_obj ANIM_OBJ_A9, 72, 88, $44
 	anim_wait 32
-	anim_loop $2, BattleAnim_Swagger_branch_cb310
+	anim_loop 2, BattleAnim_Swagger_branch_cb310
 	anim_wait 32
-	anim_sound $1, SFX_KINESIS_2
-	anim_obj $83, 104, 40, $0
+	anim_sound 0, 1, SFX_KINESIS_2
+	anim_obj ANIM_OBJ_83, 104, 40, $0
 	anim_wait 40
 	anim_ret
 ; cb328
@@ -4068,14 +4068,14 @@
 BattleAnim_MilkDrink: ; cb328
 	anim_2gfx ANIM_GFX_MISC, ANIM_GFX_BUBBLE
 	anim_call BattleAnim_MilkDrink_branch_cbca7
-	anim_obj $82, 74, 104, $0
+	anim_obj ANIM_OBJ_82, 74, 104, $0
 	anim_wait 16
 	anim_bgeffect $18, $0, $1, $40
-	anim_sound $0, SFX_MILK_DRINK
+	anim_sound 0, 0, SFX_MILK_DRINK
 BattleAnim_MilkDrink_branch_cb33c: ; cb33c
-	anim_obj $2c, 44, 88, $20
+	anim_obj ANIM_OBJ_2C, 44, 88, $20
 	anim_wait 8
-	anim_loop $8, BattleAnim_MilkDrink_branch_cb33c
+	anim_loop 8, BattleAnim_MilkDrink_branch_cb33c
 	anim_wait 128
 	anim_incbgeffect $18
 	anim_call BattleAnim_MilkDrink_branch_cbcb7
@@ -4084,23 +4084,23 @@
 
 BattleAnim_Spark: ; cb34d
 	anim_2gfx ANIM_GFX_LIGHTNING, ANIM_GFX_EXPLOSION
-	anim_sound $0, SFX_ZAP_CANNON
+	anim_sound 0, 0, SFX_ZAP_CANNON
 	anim_bgeffect ANIM_BG_FLASH_INVERTED, $0, $4, $3
-	anim_obj $30, 48, 92, $0
+	anim_obj ANIM_OBJ_30, 48, 92, $0
 	anim_wait 24
 	anim_setobj $1, $3
 	anim_wait 1
 	anim_call BattleAnim_Spark_branch_cbca7
 	anim_bgeffect ANIM_BG_TACKLE, $0, $1, $0
-	anim_sound $0, SFX_SPARK
+	anim_sound 0, 0, SFX_SPARK
 	anim_wait 16
 	anim_bgeffect ANIM_BG_SHOW_MON, $0, $0, $0
 	anim_wait 4
-	anim_incobj $2
+	anim_incobj  2
 	anim_wait 1
-	anim_sound $1, SFX_THUNDERSHOCK
-	anim_obj $32, 136, 56, $2
-	anim_obj $33, 136, 56, $0
+	anim_sound 0, 1, SFX_THUNDERSHOCK
+	anim_obj ANIM_OBJ_32, 136, 56, $2
+	anim_obj ANIM_OBJ_33, 136, 56, $0
 	anim_wait 32
 	anim_ret
 ; cb386
@@ -4108,14 +4108,14 @@
 BattleAnim_FuryCutter: ; cb386
 	anim_1gfx ANIM_GFX_CUT
 BattleAnim_FuryCutter_branch_cb388: ; cb388
-	anim_sound $1, SFX_CUT
+	anim_sound 0, 1, SFX_CUT
 	anim_jumpand $1, BattleAnim_FuryCutter_branch_cb397
-	anim_obj $3a, 152, 40, $0
+	anim_obj ANIM_OBJ_3A, 152, 40, $0
 	anim_jump BattleAnim_FuryCutter_branch_cb39c
 ; cb397
 
 BattleAnim_FuryCutter_branch_cb397: ; cb397
-	anim_obj $3b, 112, 40, $0
+	anim_obj ANIM_OBJ_3B, 112, 40, $0
 BattleAnim_FuryCutter_branch_cb39c: ; cb39c
 	anim_wait 16
 	anim_jumpuntil BattleAnim_FuryCutter_branch_cb388
@@ -4125,23 +4125,23 @@
 BattleAnim_SteelWing: ; cb3a1
 	anim_1gfx ANIM_GFX_REFLECT
 	anim_obp0 $0
-	anim_sound $0, SFX_RAGE
+	anim_sound 0, 0, SFX_RAGE
 	anim_call BattleAnim_SteelWing_branch_cbca7
 	anim_call BattleAnim_SteelWing_branch_cbc43
 	anim_call BattleAnim_SteelWing_branch_cbcb7
 	anim_1gfx ANIM_GFX_HIT
 	anim_resetobp0
-	anim_sound $1, SFX_WING_ATTACK
-	anim_obj $1, 148, 56, $0
-	anim_obj $1, 116, 56, $0
+	anim_sound 0, 1, SFX_WING_ATTACK
+	anim_obj ANIM_OBJ_01, 148, 56, $0
+	anim_obj ANIM_OBJ_01, 116, 56, $0
 	anim_wait 6
-	anim_sound $1, SFX_WING_ATTACK
-	anim_obj $1, 144, 56, $0
-	anim_obj $1, 120, 56, $0
+	anim_sound 0, 1, SFX_WING_ATTACK
+	anim_obj ANIM_OBJ_01, 144, 56, $0
+	anim_obj ANIM_OBJ_01, 120, 56, $0
 	anim_wait 6
-	anim_sound $1, SFX_WING_ATTACK
-	anim_obj $1, 140, 56, $0
-	anim_obj $1, 124, 56, $0
+	anim_sound 0, 1, SFX_WING_ATTACK
+	anim_obj ANIM_OBJ_01, 140, 56, $0
+	anim_obj ANIM_OBJ_01, 124, 56, $0
 	anim_wait 16
 	anim_ret
 ; cb3df
@@ -4149,16 +4149,16 @@
 BattleAnim_MeanLook: ; cb3df
 	anim_1gfx ANIM_GFX_PSYCHIC
 	anim_obp0 $e0
-	anim_sound $1, SFX_MEAN_LOOK
-	anim_obj $ac, 148, 32, $0
+	anim_sound 0, 1, SFX_MEAN_LOOK
+	anim_obj ANIM_OBJ_AC, 148, 32, $0
 	anim_wait 5
-	anim_obj $ac, 116, 64, $0
+	anim_obj ANIM_OBJ_AC, 116, 64, $0
 	anim_wait 5
-	anim_obj $ac, 148, 64, $0
+	anim_obj ANIM_OBJ_AC, 148, 64, $0
 	anim_wait 5
-	anim_obj $ac, 116, 32, $0
+	anim_obj ANIM_OBJ_AC, 116, 32, $0
 	anim_wait 5
-	anim_obj $ac, 132, 48, $0
+	anim_obj ANIM_OBJ_AC, 132, 48, $0
 	anim_wait 128
 	anim_ret
 ; cb405
@@ -4166,10 +4166,10 @@
 BattleAnim_Attract: ; cb405
 	anim_1gfx ANIM_GFX_OBJECTS
 BattleAnim_Attract_branch_cb407: ; cb407
-	anim_sound $0, SFX_ATTRACT
-	anim_obj $66, 44, 80, $2
+	anim_sound 0, 0, SFX_ATTRACT
+	anim_obj ANIM_OBJ_66, 44, 80, $2
 	anim_wait 8
-	anim_loop $5, BattleAnim_Attract_branch_cb407
+	anim_loop 5, BattleAnim_Attract_branch_cb407
 	anim_wait 128
 	anim_wait 64
 	anim_ret
@@ -4178,10 +4178,10 @@
 BattleAnim_SleepTalk: ; cb417
 	anim_1gfx ANIM_GFX_STATUS
 BattleAnim_SleepTalk_branch_cb419: ; cb419
-	anim_sound $0, SFX_STRENGTH
-	anim_obj $54, 64, 80, $0
+	anim_sound 0, 0, SFX_STRENGTH
+	anim_obj ANIM_OBJ_54, 64, 80, $0
 	anim_wait 40
-	anim_loop $2, BattleAnim_SleepTalk_branch_cb419
+	anim_loop 2, BattleAnim_SleepTalk_branch_cb419
 	anim_wait 32
 	anim_ret
 ; cb428
@@ -4188,25 +4188,25 @@
 
 BattleAnim_HealBell: ; cb428
 	anim_2gfx ANIM_GFX_MISC, ANIM_GFX_NOISE
-	anim_obj $84, 72, 56, $0
+	anim_obj ANIM_OBJ_84, 72, 56, $0
 	anim_wait 32
 BattleAnim_HealBell_branch_cb431: ; cb431
-	anim_sound $0, SFX_HEAL_BELL
-	anim_obj $85, 72, 52, $0
+	anim_sound 0, 0, SFX_HEAL_BELL
+	anim_obj ANIM_OBJ_85, 72, 52, $0
 	anim_wait 8
-	anim_sound $0, SFX_HEAL_BELL
-	anim_obj $85, 72, 52, $1
+	anim_sound 0, 0, SFX_HEAL_BELL
+	anim_obj ANIM_OBJ_85, 72, 52, $1
 	anim_wait 8
-	anim_sound $0, SFX_HEAL_BELL
-	anim_obj $85, 72, 52, $2
+	anim_sound 0, 0, SFX_HEAL_BELL
+	anim_obj ANIM_OBJ_85, 72, 52, $2
 	anim_wait 8
-	anim_sound $0, SFX_HEAL_BELL
-	anim_obj $85, 72, 52, $0
+	anim_sound 0, 0, SFX_HEAL_BELL
+	anim_obj ANIM_OBJ_85, 72, 52, $0
 	anim_wait 8
-	anim_sound $0, SFX_HEAL_BELL
-	anim_obj $85, 72, 52, $2
+	anim_sound 0, 0, SFX_HEAL_BELL
+	anim_obj ANIM_OBJ_85, 72, 52, $2
 	anim_wait 8
-	anim_loop $4, BattleAnim_HealBell_branch_cb431
+	anim_loop 4, BattleAnim_HealBell_branch_cb431
 	anim_wait 64
 	anim_ret
 ; cb464
@@ -4215,14 +4215,14 @@
 	anim_1gfx ANIM_GFX_HIT
 	anim_call BattleAnim_Return_branch_cbcaf
 	anim_bgeffect $22, $0, $1, $0
-	anim_sound $0, SFX_RETURN
+	anim_sound 0, 0, SFX_RETURN
 	anim_wait 64
 	anim_incbgeffect $22
 	anim_wait 32
 	anim_bgeffect $25, $0, $1, $0
 	anim_wait 4
-	anim_sound $1, SFX_COMET_PUNCH
-	anim_obj $3, 136, 40, $0
+	anim_sound 0, 1, SFX_COMET_PUNCH
+	anim_obj ANIM_OBJ_03, 136, 40, $0
 	anim_wait 8
 	anim_call BattleAnim_Return_branch_cbcb7
 	anim_ret
@@ -4230,14 +4230,14 @@
 
 BattleAnim_Present: ; cb488
 	anim_2gfx ANIM_GFX_STATUS, ANIM_GFX_BUBBLE
-	anim_sound $1, SFX_PRESENT
-	anim_obj $8d, 64, 88, $6c
+	anim_sound 0, 1, SFX_PRESENT
+	anim_obj ANIM_OBJ_8D, 64, 88, $6c
 	anim_wait 56
-	anim_obj $53, 104, 48, $0
+	anim_obj ANIM_OBJ_53, 104, 48, $0
 	anim_wait 48
-	anim_incobj $2
+	anim_incobj  2
 	anim_jumpif $3, BattleAnim_Present_branch_cb4b2
-	anim_incobj $1
+	anim_incobj  1
 	anim_wait 1
 	anim_1gfx ANIM_GFX_EXPLOSION
 	anim_bgeffect ANIM_BG_FLASH_INVERTED, $0, $8, $12
@@ -4249,11 +4249,11 @@
 ; cb4b2
 
 BattleAnim_Present_branch_cb4b2: ; cb4b2
-	anim_sound $1, SFX_METRONOME
+	anim_sound 0, 1, SFX_METRONOME
 BattleAnim_Present_branch_cb4b5: ; cb4b5
-	anim_obj $2c, 132, 48, $24
+	anim_obj ANIM_OBJ_2C, 132, 48, $24
 	anim_wait 8
-	anim_loop $8, BattleAnim_Present_branch_cb4b5
+	anim_loop 8, BattleAnim_Present_branch_cb4b5
 	anim_wait 128
 	anim_ret
 ; cb4c1
@@ -4260,21 +4260,21 @@
 
 BattleAnim_Frustration: ; cb4c1
 	anim_1gfx ANIM_GFX_MISC
-	anim_sound $0, SFX_KINESIS_2
-	anim_obj $83, 72, 80, $0
+	anim_sound 0, 0, SFX_KINESIS_2
+	anim_obj ANIM_OBJ_83, 72, 80, $0
 	anim_wait 40
 	anim_1gfx ANIM_GFX_HIT
 	anim_call BattleAnim_Frustration_branch_cbca7
 	anim_bgeffect $26, $0, $1, $0
 	anim_wait 8
-	anim_sound $1, SFX_COMET_PUNCH
-	anim_obj $1, 120, 48, $0
+	anim_sound 0, 1, SFX_COMET_PUNCH
+	anim_obj ANIM_OBJ_01, 120, 48, $0
 	anim_wait 8
-	anim_sound $1, SFX_COMET_PUNCH
-	anim_obj $1, 152, 48, $0
+	anim_sound 0, 1, SFX_COMET_PUNCH
+	anim_obj ANIM_OBJ_01, 152, 48, $0
 	anim_wait 8
-	anim_sound $1, SFX_COMET_PUNCH
-	anim_obj $1, 136, 48, $0
+	anim_sound 0, 1, SFX_COMET_PUNCH
+	anim_obj ANIM_OBJ_01, 136, 48, $0
 	anim_wait 8
 	anim_incbgeffect $26
 	anim_wait 1
@@ -4285,12 +4285,12 @@
 BattleAnim_Safeguard: ; cb4f9
 	anim_1gfx ANIM_GFX_MISC
 	anim_bgeffect $6, $0, $2, $0
-	anim_obj $89, 80, 80, $0
-	anim_obj $89, 80, 80, $d
-	anim_obj $89, 80, 80, $1a
-	anim_obj $89, 80, 80, $27
-	anim_obj $89, 80, 80, $34
-	anim_sound $0, SFX_PROTECT
+	anim_obj ANIM_OBJ_89, 80, 80, $0
+	anim_obj ANIM_OBJ_89, 80, 80, $d
+	anim_obj ANIM_OBJ_89, 80, 80, $1a
+	anim_obj ANIM_OBJ_89, 80, 80, $27
+	anim_obj ANIM_OBJ_89, 80, 80, $34
+	anim_sound 0, 0, SFX_PROTECT
 	anim_wait 96
 	anim_ret
 ; cb51e
@@ -4300,9 +4300,9 @@
 	anim_call BattleAnim_PainSplit_branch_cbcaf
 	anim_bgeffect $25, $0, $1, $0
 	anim_wait 4
-	anim_sound $1, SFX_TACKLE
-	anim_obj $4, 112, 48, $0
-	anim_obj $4, 76, 96, $0
+	anim_sound 0, 1, SFX_TACKLE
+	anim_obj ANIM_OBJ_04, 112, 48, $0
+	anim_obj ANIM_OBJ_04, 76, 96, $0
 	anim_wait 8
 	anim_call BattleAnim_PainSplit_branch_cbcb7
 	anim_wait 1
@@ -4314,22 +4314,22 @@
 	anim_bgeffect $6, $0, $2, $0
 	anim_bgeffect ANIM_BG_ALTERNATE_HUES, $0, $2, $0
 BattleAnim_SacredFire_branch_cb549: ; cb549
-	anim_sound $0, SFX_EMBER
-	anim_obj $80, 48, 104, $0
+	anim_sound 0, 0, SFX_EMBER
+	anim_obj ANIM_OBJ_80, 48, 104, $0
 	anim_wait 8
-	anim_loop $8, BattleAnim_SacredFire_branch_cb549
+	anim_loop 8, BattleAnim_SacredFire_branch_cb549
 	anim_wait 96
 	anim_call BattleAnim_SacredFire_branch_cbca7
 	anim_bgeffect ANIM_BG_TACKLE, $0, $1, $0
 	anim_wait 4
-	anim_sound $1, SFX_EMBER
-	anim_obj $f, 136, 48, $1
-	anim_obj $f, 136, 48, $4
-	anim_obj $f, 136, 48, $5
+	anim_sound 0, 1, SFX_EMBER
+	anim_obj ANIM_OBJ_0F, 136, 48, $1
+	anim_obj ANIM_OBJ_0F, 136, 48, $4
+	anim_obj ANIM_OBJ_0F, 136, 48, $5
 	anim_wait 8
 	anim_bgeffect ANIM_BG_SHOW_MON, $0, $0, $0
 	anim_wait 4
-	anim_incobj $9
+	anim_incobj  9
 	anim_wait 8
 	anim_ret
 ; cb57d
@@ -4338,16 +4338,16 @@
 	anim_1gfx ANIM_GFX_ROCKS
 BattleAnim_Magnitude_branch_cb57f: ; cb57f
 	anim_bgeffect $1f, $e, $4, $0
-	anim_sound $1, SFX_STRENGTH
-	anim_obj $1e, 128, 64, $40
+	anim_sound 0, 1, SFX_STRENGTH
+	anim_obj ANIM_OBJ_1E, 128, 64, $40
 	anim_wait 2
-	anim_obj $1e, 120, 68, $30
+	anim_obj ANIM_OBJ_1E, 120, 68, $30
 	anim_wait 2
-	anim_obj $1e, 152, 68, $30
+	anim_obj ANIM_OBJ_1E, 152, 68, $30
 	anim_wait 2
-	anim_obj $1e, 144, 64, $40
+	anim_obj ANIM_OBJ_1E, 144, 64, $40
 	anim_wait 2
-	anim_obj $1e, 136, 68, $30
+	anim_obj ANIM_OBJ_1E, 136, 68, $30
 	anim_wait 2
 	anim_jumpuntil BattleAnim_Magnitude_branch_cb57f
 	anim_wait 96
@@ -4356,8 +4356,8 @@
 
 BattleAnim_Dynamicpunch: ; cb5aa
 	anim_2gfx ANIM_GFX_HIT, ANIM_GFX_EXPLOSION
-	anim_sound $1, SFX_COMET_PUNCH
-	anim_obj $a, 136, 56, $43
+	anim_sound 0, 1, SFX_COMET_PUNCH
+	anim_obj ANIM_OBJ_0A, 136, 56, $43
 	anim_wait 16
 	anim_bgeffect ANIM_BG_FLASH_INVERTED, $0, $8, $12
 	anim_call BattleAnim_Dynamicpunch_branch_cbb8f
@@ -4370,10 +4370,10 @@
 	anim_bgeffect $1f, $40, $2, $0
 	anim_wait 48
 	anim_bgeffect ANIM_BG_FLASH_INVERTED, $0, $8, $3
-	anim_obj $5f, 72, 80, $1
-	anim_sound $1, SFX_HORN_ATTACK
+	anim_obj ANIM_OBJ_5F, 72, 80, $1
+	anim_sound 0, 1, SFX_HORN_ATTACK
 	anim_wait 16
-	anim_obj $0, 136, 56, $0
+	anim_obj ANIM_OBJ_00, 136, 56, $0
 	anim_wait 16
 	anim_ret
 ; cb5de
@@ -4380,11 +4380,11 @@
 
 BattleAnim_Dragonbreath: ; cb5de
 	anim_1gfx ANIM_GFX_FIRE
-	anim_sound $1a, SFX_EMBER
+	anim_sound 6, 2, SFX_EMBER
 BattleAnim_Dragonbreath_branch_cb5e3: ; cb5e3
-	anim_obj $90, 64, 92, $4
+	anim_obj ANIM_OBJ_90, 64, 92, $4
 	anim_wait 4
-	anim_loop $a, BattleAnim_Dragonbreath_branch_cb5e3
+	anim_loop 10, BattleAnim_Dragonbreath_branch_cb5e3
 	anim_wait 64
 	anim_ret
 ; cb5ef
@@ -4391,8 +4391,8 @@
 
 BattleAnim_BatonPass: ; cb5ef
 	anim_1gfx ANIM_GFX_MISC
-	anim_obj $86, 44, 104, $20
-	anim_sound $0, SFX_BATON_PASS
+	anim_obj ANIM_OBJ_86, 44, 104, $20
+	anim_sound 0, 0, SFX_BATON_PASS
 	anim_call BattleAnim_BatonPass_branch_c9486
 	anim_wait 64
 	anim_ret
@@ -4400,13 +4400,13 @@
 
 BattleAnim_Encore: ; cb5fe
 	anim_1gfx ANIM_GFX_OBJECTS
-	anim_obj $99, 64, 80, $90
-	anim_obj $99, 64, 80, $10
-	anim_sound $0, SFX_ENCORE
+	anim_obj ANIM_OBJ_99, 64, 80, $90
+	anim_obj ANIM_OBJ_99, 64, 80, $10
+	anim_sound 0, 0, SFX_ENCORE
 	anim_wait 16
-	anim_obj $9a, 64, 72, $2c
+	anim_obj ANIM_OBJ_9A, 64, 72, $2c
 	anim_wait 32
-	anim_obj $9a, 64, 72, $34
+	anim_obj ANIM_OBJ_9A, 64, 72, $34
 	anim_wait 16
 	anim_ret
 ; cb61b
@@ -4414,8 +4414,8 @@
 BattleAnim_Pursuit: ; cb61b
 	anim_1gfx ANIM_GFX_HIT
 	anim_jumpif $1, BattleAnim_Pursuit_branch_cb62b
-	anim_sound $1, SFX_COMET_PUNCH
-	anim_obj $1, 136, 56, $0
+	anim_sound 0, 1, SFX_COMET_PUNCH
+	anim_obj ANIM_OBJ_01, 136, 56, $0
 	anim_wait 16
 	anim_ret
 ; cb62b
@@ -4424,16 +4424,16 @@
 	anim_bgeffect ANIM_BG_HIDE_MON, $0, $0, $0
 	anim_wait 4
 	anim_call BattleAnim_Pursuit_branch_cbcc2
-	anim_obj $ad, 132, 64, $0
+	anim_obj ANIM_OBJ_AD, 132, 64, $0
 	anim_wait 64
-	anim_obj $ad, 132, 64, $1
-	anim_sound $1, SFX_BALL_POOF
+	anim_obj ANIM_OBJ_AD, 132, 64, $1
+	anim_sound 0, 1, SFX_BALL_POOF
 	anim_bgeffect ANIM_BG_ENTER_MON, $0, $0, $0
 	anim_wait 64
-	anim_incobj $3
+	anim_incobj  3
 	anim_wait 16
-	anim_sound $1, SFX_MEGA_PUNCH
-	anim_obj $0, 120, 56, $0
+	anim_sound 0, 1, SFX_MEGA_PUNCH
+	anim_obj ANIM_OBJ_00, 120, 56, $0
 	anim_bgeffect $2d, $0, $0, $0
 	anim_wait 16
 	anim_call BattleAnim_Pursuit_branch_cbcd2
@@ -4445,21 +4445,21 @@
 	anim_2gfx ANIM_GFX_WIND, ANIM_GFX_HIT
 	anim_obp0 $e4
 BattleAnim_RapidSpin_branch_cb663: ; cb663
-	anim_sound $0, SFX_MENU
-	anim_obj $a8, 44, 112, $0
+	anim_sound 0, 0, SFX_MENU
+	anim_obj ANIM_OBJ_A8, 44, 112, $0
 	anim_wait 2
-	anim_loop $5, BattleAnim_RapidSpin_branch_cb663
+	anim_loop 5, BattleAnim_RapidSpin_branch_cb663
 	anim_wait 24
 	anim_call BattleAnim_RapidSpin_branch_cbcaf
 	anim_bgeffect $25, $0, $1, $0
 	anim_wait 4
 	anim_resetobp0
-	anim_sound $1, SFX_MEGA_KICK
-	anim_obj $4, 136, 40, $0
+	anim_sound 0, 1, SFX_MEGA_KICK
+	anim_obj ANIM_OBJ_04, 136, 40, $0
 	anim_wait 8
 	anim_bgeffect ANIM_BG_SHOW_MON, $0, $0, $0
 	anim_wait 4
-	anim_incobj $6
+	anim_incobj  6
 	anim_wait 1
 	anim_ret
 ; cb68e
@@ -4466,13 +4466,13 @@
 
 BattleAnim_SweetScent: ; cb68e
 	anim_2gfx ANIM_GFX_FLOWER, ANIM_GFX_MISC
-	anim_sound $0, SFX_SWEET_SCENT
+	anim_sound 0, 0, SFX_SWEET_SCENT
 	anim_obj ANIM_OBJ_FLOWER, 64, 96, $2
 	anim_wait 2
 	anim_obj ANIM_OBJ_FLOWER, 64, 80, $2
 	anim_wait 96
 	anim_obp0 $54
-	anim_sound $1, SFX_SWEET_SCENT_2
+	anim_sound 0, 1, SFX_SWEET_SCENT_2
 	anim_obj ANIM_OBJ_COTTON, 136, 40, $15
 	anim_obj ANIM_OBJ_COTTON, 136, 40, $2a
 	anim_obj ANIM_OBJ_COTTON, 136, 40, $3f
@@ -4483,7 +4483,7 @@
 BattleAnim_IronTail: ; cb6b6
 	anim_1gfx ANIM_GFX_REFLECT
 	anim_obp0 $0
-	anim_sound $0, SFX_RAGE
+	anim_sound 0, 0, SFX_RAGE
 	anim_call BattleAnim_IronTail_branch_cbca7
 	anim_call BattleAnim_IronTail_branch_cbc43
 	anim_wait 4
@@ -4491,8 +4491,8 @@
 	anim_resetobp0
 	anim_bgeffect $26, $0, $1, $0
 	anim_wait 16
-	anim_sound $1, SFX_MEGA_KICK
-	anim_obj $0, 136, 48, $0
+	anim_sound 0, 1, SFX_MEGA_KICK
+	anim_obj ANIM_OBJ_00, 136, 48, $0
 	anim_wait 16
 	anim_incbgeffect $26
 	anim_call BattleAnim_IronTail_branch_cbcb7
@@ -4502,16 +4502,16 @@
 BattleAnim_MetalClaw: ; cb6dc
 	anim_1gfx ANIM_GFX_REFLECT
 	anim_obp0 $0
-	anim_sound $0, SFX_RAGE
+	anim_sound 0, 0, SFX_RAGE
 	anim_call BattleAnim_MetalClaw_branch_cbca7
 	anim_call BattleAnim_MetalClaw_branch_cbc43
 	anim_call BattleAnim_MetalClaw_branch_cbcb7
 	anim_1gfx ANIM_GFX_CUT
 	anim_resetobp0
-	anim_sound $1, SFX_SCRATCH
-	anim_obj $37, 144, 48, $0
-	anim_obj $37, 140, 44, $0
-	anim_obj $37, 136, 40, $0
+	anim_sound 0, 1, SFX_SCRATCH
+	anim_obj ANIM_OBJ_37, 144, 48, $0
+	anim_obj ANIM_OBJ_37, 140, 44, $0
+	anim_obj ANIM_OBJ_37, 136, 40, $0
 	anim_wait 32
 	anim_ret
 ; cb703
@@ -4521,20 +4521,20 @@
 	anim_call BattleAnim_VitalThrow_branch_cbca7
 	anim_bgeffect $2f, $0, $1, $0
 	anim_wait 16
-	anim_sound $0, SFX_MENU
-	anim_obj $4, 64, 96, $0
+	anim_sound 0, 0, SFX_MENU
+	anim_obj ANIM_OBJ_04, 64, 96, $0
 	anim_wait 8
-	anim_sound $0, SFX_MENU
-	anim_obj $4, 56, 88, $0
+	anim_sound 0, 0, SFX_MENU
+	anim_obj ANIM_OBJ_04, 56, 88, $0
 	anim_wait 8
-	anim_sound $0, SFX_MENU
-	anim_obj $4, 68, 104, $0
+	anim_sound 0, 0, SFX_MENU
+	anim_obj ANIM_OBJ_04, 68, 104, $0
 	anim_wait 8
 	anim_incbgeffect $2f
 	anim_wait 16
 	anim_call BattleAnim_VitalThrow_branch_cbcb7
-	anim_sound $1, SFX_MEGA_PUNCH
-	anim_obj $3, 132, 56, $0
+	anim_sound 0, 1, SFX_MEGA_PUNCH
+	anim_obj ANIM_OBJ_03, 132, 56, $0
 	anim_wait 16
 	anim_ret
 ; cb739
@@ -4542,11 +4542,11 @@
 BattleAnim_MorningSun: ; cb739
 	anim_1gfx ANIM_GFX_SHINE
 	anim_bgeffect $7, $0, $0, $0
-	anim_sound $0, SFX_MORNING_SUN
+	anim_sound 0, 0, SFX_MORNING_SUN
 BattleAnim_MorningSun_branch_cb743: ; cb743
-	anim_obj $9c, 16, 48, $88
+	anim_obj ANIM_OBJ_9C, 16, 48, $88
 	anim_wait 6
-	anim_loop $5, BattleAnim_MorningSun_branch_cb743
+	anim_loop 5, BattleAnim_MorningSun_branch_cb743
 	anim_wait 32
 	anim_jumpif $0, BattleAnim_MorningSun_branch_cb756
 	anim_call BattleAnim_MorningSun_branch_cbc6a
@@ -4563,7 +4563,7 @@
 	anim_call BattleAnim_Synthesis_branch_cbca7
 	anim_bgeffect $18, $0, $1, $40
 	anim_bgeffect $7, $0, $0, $0
-	anim_sound $0, SFX_OUTRAGE
+	anim_sound 0, 0, SFX_OUTRAGE
 	anim_wait 72
 	anim_incbgeffect $18
 	anim_call BattleAnim_Synthesis_branch_cbcb7
@@ -4582,14 +4582,14 @@
 	anim_bgp $1b
 	anim_obp0 $c0
 	anim_bgeffect $1f, $20, $2, $0
-	anim_obj $36, 136, 56, $a8
-	anim_obj $36, 136, 56, $28
+	anim_obj ANIM_OBJ_36, 136, 56, $a8
+	anim_obj ANIM_OBJ_36, 136, 56, $28
 	anim_wait 8
-	anim_sound $1, SFX_BITE
-	anim_obj $0, 144, 48, $18
+	anim_sound 0, 1, SFX_BITE
+	anim_obj ANIM_OBJ_00, 144, 48, $18
 	anim_wait 16
-	anim_sound $1, SFX_BITE
-	anim_obj $0, 128, 64, $18
+	anim_sound 0, 1, SFX_BITE
+	anim_obj ANIM_OBJ_00, 128, 64, $18
 	anim_wait 8
 	anim_ret
 ; cb7a8
@@ -4598,13 +4598,13 @@
 	anim_1gfx ANIM_GFX_SHINE
 	anim_bgp $1b
 	anim_bgeffect $7, $0, $0, $0
-	anim_obj $9e, 0, 40, $0
-	anim_obj $9e, 16, 56, $0
-	anim_obj $9e, 32, 72, $0
-	anim_obj $9e, 48, 88, $0
-	anim_obj $9e, 64, 104, $0
+	anim_obj ANIM_OBJ_9E, 0, 40, $0
+	anim_obj ANIM_OBJ_9E, 16, 56, $0
+	anim_obj ANIM_OBJ_9E, 32, 72, $0
+	anim_obj ANIM_OBJ_9E, 48, 88, $0
+	anim_obj ANIM_OBJ_9E, 64, 104, $0
 	anim_wait 1
-	anim_sound $0, SFX_MOONLIGHT
+	anim_sound 0, 0, SFX_MOONLIGHT
 	anim_wait 63
 	anim_jumpif $3, BattleAnim_Moonlight_branch_cb7d7
 	anim_call BattleAnim_Moonlight_branch_cbc6a
@@ -4621,32 +4621,32 @@
 	anim_call BattleAnim_HiddenPower_branch_cbca7
 	anim_bgeffect $1a, $0, $1, $20
 	anim_bgeffect $7, $0, $2, $0
-	anim_obj $9f, 44, 88, $0
-	anim_obj $9f, 44, 88, $8
-	anim_obj $9f, 44, 88, $10
-	anim_obj $9f, 44, 88, $18
-	anim_obj $9f, 44, 88, $20
-	anim_obj $9f, 44, 88, $28
-	anim_obj $9f, 44, 88, $30
-	anim_obj $9f, 44, 88, $38
+	anim_obj ANIM_OBJ_9F, 44, 88, $0
+	anim_obj ANIM_OBJ_9F, 44, 88, $8
+	anim_obj ANIM_OBJ_9F, 44, 88, $10
+	anim_obj ANIM_OBJ_9F, 44, 88, $18
+	anim_obj ANIM_OBJ_9F, 44, 88, $20
+	anim_obj ANIM_OBJ_9F, 44, 88, $28
+	anim_obj ANIM_OBJ_9F, 44, 88, $30
+	anim_obj ANIM_OBJ_9F, 44, 88, $38
 BattleAnim_HiddenPower_branch_cb812: ; cb812
-	anim_sound $0, SFX_SWORDS_DANCE
+	anim_sound 0, 0, SFX_SWORDS_DANCE
 	anim_wait 8
-	anim_loop $c, BattleAnim_HiddenPower_branch_cb812
+	anim_loop 12, BattleAnim_HiddenPower_branch_cb812
 	anim_incbgeffect $1a
 	anim_call BattleAnim_HiddenPower_branch_cbcb7
 	anim_wait 1
-	anim_incobj $2
-	anim_incobj $3
-	anim_incobj $4
-	anim_incobj $5
-	anim_incobj $6
-	anim_incobj $7
-	anim_incobj $8
-	anim_incobj $9
+	anim_incobj  2
+	anim_incobj  3
+	anim_incobj  4
+	anim_incobj  5
+	anim_incobj  6
+	anim_incobj  7
+	anim_incobj  8
+	anim_incobj  9
 	anim_wait 16
 	anim_1gfx ANIM_GFX_HIT
-	anim_obj $0, 136, 56, $0
+	anim_obj ANIM_OBJ_00, 136, 56, $0
 	anim_wait 32
 	anim_ret
 ; cb83a
@@ -4653,13 +4653,13 @@
 
 BattleAnim_CrossChop: ; cb83a
 	anim_1gfx ANIM_GFX_CUT
-	anim_sound $1, SFX_CUT
-	anim_obj $a0, 152, 40, $0
-	anim_obj $a1, 120, 72, $0
+	anim_sound 0, 1, SFX_CUT
+	anim_obj ANIM_OBJ_A0, 152, 40, $0
+	anim_obj ANIM_OBJ_A1, 120, 72, $0
 	anim_wait 8
 	anim_bgeffect $1f, $58, $2, $0
 	anim_wait 92
-	anim_sound $1, SFX_VICEGRIP
+	anim_sound 0, 1, SFX_VICEGRIP
 	anim_bgeffect ANIM_BG_FLASH_INVERTED, $0, $8, $10
 	anim_wait 16
 	anim_ret
@@ -4668,43 +4668,43 @@
 BattleAnim_Twister: ; cb85a
 	anim_2gfx ANIM_GFX_WIND, ANIM_GFX_HIT
 BattleAnim_Twister_branch_cb85d: ; cb85d
-	anim_sound $0, SFX_RAZOR_WIND
+	anim_sound 0, 0, SFX_RAZOR_WIND
 	anim_obj ANIM_OBJ_GUST, 64, 112, $0
 	anim_wait 6
-	anim_loop $9, BattleAnim_Twister_branch_cb85d
+	anim_loop 9, BattleAnim_Twister_branch_cb85d
 BattleAnim_Twister_branch_cb86a: ; cb86a
-	anim_sound $0, SFX_RAZOR_WIND
+	anim_sound 0, 0, SFX_RAZOR_WIND
 	anim_wait 8
-	anim_loop $8, BattleAnim_Twister_branch_cb86a
-	anim_incobj $1
-	anim_incobj $2
-	anim_incobj $3
-	anim_incobj $4
-	anim_incobj $5
-	anim_incobj $6
-	anim_incobj $7
-	anim_incobj $8
-	anim_incobj $9
+	anim_loop 8, BattleAnim_Twister_branch_cb86a
+	anim_incobj  1
+	anim_incobj  2
+	anim_incobj  3
+	anim_incobj  4
+	anim_incobj  5
+	anim_incobj  6
+	anim_incobj  7
+	anim_incobj  8
+	anim_incobj  9
 	anim_wait 64
-	anim_obj $1, 144, 64, $18
+	anim_obj ANIM_OBJ_01, 144, 64, $18
 BattleAnim_Twister_branch_cb88a: ; cb88a
-	anim_sound $1, SFX_RAZOR_WIND
+	anim_sound 0, 1, SFX_RAZOR_WIND
 	anim_wait 8
-	anim_loop $4, BattleAnim_Twister_branch_cb88a
-	anim_obj $1, 128, 32, $18
+	anim_loop 4, BattleAnim_Twister_branch_cb88a
+	anim_obj ANIM_OBJ_01, 128, 32, $18
 BattleAnim_Twister_branch_cb897: ; cb897
-	anim_sound $1, SFX_RAZOR_WIND
+	anim_sound 0, 1, SFX_RAZOR_WIND
 	anim_wait 8
-	anim_loop $4, BattleAnim_Twister_branch_cb897
-	anim_incobj $1
-	anim_incobj $2
-	anim_incobj $3
-	anim_incobj $4
-	anim_incobj $5
-	anim_incobj $6
-	anim_incobj $7
-	anim_incobj $8
-	anim_incobj $9
+	anim_loop 4, BattleAnim_Twister_branch_cb897
+	anim_incobj  1
+	anim_incobj  2
+	anim_incobj  3
+	anim_incobj  4
+	anim_incobj  5
+	anim_incobj  6
+	anim_incobj  7
+	anim_incobj  8
+	anim_incobj  9
 	anim_wait 32
 	anim_ret
 ; cb8b3
@@ -4713,12 +4713,12 @@
 	anim_1gfx ANIM_GFX_WATER
 	anim_bgp $f8
 	anim_obp0 $7c
-	anim_sound $1, SFX_RAIN_DANCE
-	anim_obj $af, 88, 0, $0
+	anim_sound 0, 1, SFX_RAIN_DANCE
+	anim_obj ANIM_OBJ_AF, 88, 0, $0
 	anim_wait 8
-	anim_obj $af, 88, 0, $1
+	anim_obj ANIM_OBJ_AF, 88, 0, $1
 	anim_wait 8
-	anim_obj $af, 88, 0, $2
+	anim_obj ANIM_OBJ_AF, 88, 0, $2
 	anim_wait 128
 	anim_ret
 ; cb8cf
@@ -4726,12 +4726,12 @@
 BattleAnim_SunnyDay: ; cb8cf
 	anim_1gfx ANIM_GFX_WATER
 	anim_bgp $90
-	anim_sound $1, SFX_MORNING_SUN
-	anim_obj $af, 88, 0, $2
+	anim_sound 0, 1, SFX_MORNING_SUN
+	anim_obj ANIM_OBJ_AF, 88, 0, $2
 	anim_wait 8
-	anim_obj $af, 88, 0, $2
+	anim_obj ANIM_OBJ_AF, 88, 0, $2
 	anim_wait 8
-	anim_obj $af, 88, 0, $2
+	anim_obj ANIM_OBJ_AF, 88, 0, $2
 	anim_wait 128
 	anim_ret
 ; cb8e9
@@ -4740,17 +4740,17 @@
 	anim_2gfx ANIM_GFX_REFLECT, ANIM_GFX_SPEED
 	anim_bgeffect $6, $0, $2, $0
 BattleAnim_MirrorCoat_branch_cb8f1: ; cb8f1
-	anim_sound $0, SFX_SHINE
-	anim_obj $50, 72, 80, $0
-	anim_obj $ae, 64, 72, $4
+	anim_sound 0, 0, SFX_SHINE
+	anim_obj ANIM_OBJ_50, 72, 80, $0
+	anim_obj ANIM_OBJ_AE, 64, 72, $4
 	anim_wait 8
-	anim_obj $ae, 64, 88, $4
+	anim_obj ANIM_OBJ_AE, 64, 88, $4
 	anim_wait 8
-	anim_obj $ae, 64, 80, $4
+	anim_obj ANIM_OBJ_AE, 64, 80, $4
 	anim_wait 8
-	anim_obj $ae, 64, 96, $4
+	anim_obj ANIM_OBJ_AE, 64, 96, $4
 	anim_wait 8
-	anim_loop $3, BattleAnim_MirrorCoat_branch_cb8f1
+	anim_loop 3, BattleAnim_MirrorCoat_branch_cb8f1
 	anim_wait 32
 	anim_ret
 ; cb917
@@ -4759,11 +4759,11 @@
 	anim_1gfx ANIM_GFX_STATUS
 	anim_call BattleAnim_PsychUp_branch_cbca7
 	anim_bgeffect $1a, $0, $1, $20
-	anim_sound $0, SFX_PSYBEAM
-	anim_obj $b1, 44, 88, $0
-	anim_obj $b1, 44, 88, $10
-	anim_obj $b1, 44, 88, $20
-	anim_obj $b1, 44, 88, $30
+	anim_sound 0, 0, SFX_PSYBEAM
+	anim_obj ANIM_OBJ_B1, 44, 88, $0
+	anim_obj ANIM_OBJ_B1, 44, 88, $10
+	anim_obj ANIM_OBJ_B1, 44, 88, $20
+	anim_obj ANIM_OBJ_B1, 44, 88, $30
 	anim_wait 64
 	anim_incbgeffect $1a
 	anim_call BattleAnim_PsychUp_branch_cbcb7
@@ -4774,16 +4774,16 @@
 BattleAnim_Extremespeed: ; cb940
 	anim_2gfx ANIM_GFX_SPEED, ANIM_GFX_CUT
 	anim_bgeffect ANIM_BG_HIDE_MON, $0, $1, $0
-	anim_sound $0, SFX_MENU
-	anim_obj $77, 24, 88, $2
-	anim_obj $77, 32, 88, $1
-	anim_obj $77, 40, 88, $0
-	anim_obj $77, 48, 88, $80
-	anim_obj $77, 56, 88, $81
-	anim_obj $77, 64, 88, $82
+	anim_sound 0, 0, SFX_MENU
+	anim_obj ANIM_OBJ_77, 24, 88, $2
+	anim_obj ANIM_OBJ_77, 32, 88, $1
+	anim_obj ANIM_OBJ_77, 40, 88, $0
+	anim_obj ANIM_OBJ_77, 48, 88, $80
+	anim_obj ANIM_OBJ_77, 56, 88, $81
+	anim_obj ANIM_OBJ_77, 64, 88, $82
 	anim_wait 12
-	anim_sound $1, SFX_CUT
-	anim_obj $3a, 152, 40, $0
+	anim_sound 0, 1, SFX_CUT
+	anim_obj ANIM_OBJ_3A, 152, 40, $0
 	anim_wait 32
 	anim_bgeffect ANIM_BG_SHOW_MON, $0, $1, $0
 	anim_wait 16
@@ -4792,29 +4792,29 @@
 
 BattleAnim_Ancientpower: ; cb97a
 	anim_2gfx ANIM_GFX_ROCKS, ANIM_GFX_HIT
-	anim_sound $0, SFX_SPARK
-	anim_obj $b2, 64, 108, $20
+	anim_sound 0, 0, SFX_SPARK
+	anim_obj ANIM_OBJ_B2, 64, 108, $20
 	anim_wait 8
-	anim_sound $0, SFX_SPARK
-	anim_obj $b2, 75, 102, $20
+	anim_sound 0, 0, SFX_SPARK
+	anim_obj ANIM_OBJ_B2, 75, 102, $20
 	anim_wait 8
-	anim_sound $0, SFX_SPARK
-	anim_obj $b2, 85, 97, $20
+	anim_sound 0, 0, SFX_SPARK
+	anim_obj ANIM_OBJ_B2, 85, 97, $20
 	anim_wait 8
-	anim_sound $0, SFX_SPARK
-	anim_obj $b2, 96, 92, $20
+	anim_sound 0, 0, SFX_SPARK
+	anim_obj ANIM_OBJ_B2, 96, 92, $20
 	anim_wait 8
-	anim_sound $1, SFX_SPARK
-	anim_obj $b2, 106, 87, $20
+	anim_sound 0, 1, SFX_SPARK
+	anim_obj ANIM_OBJ_B2, 106, 87, $20
 	anim_wait 8
-	anim_sound $1, SFX_SPARK
-	anim_obj $b2, 116, 82, $20
+	anim_sound 0, 1, SFX_SPARK
+	anim_obj ANIM_OBJ_B2, 116, 82, $20
 	anim_wait 8
-	anim_sound $1, SFX_SPARK
-	anim_obj $b2, 126, 77, $20
+	anim_sound 0, 1, SFX_SPARK
+	anim_obj ANIM_OBJ_B2, 126, 77, $20
 	anim_wait 8
-	anim_sound $1, SFX_SPARK
-	anim_obj $0, 136, 56, $0
+	anim_sound 0, 1, SFX_SPARK
+	anim_obj ANIM_OBJ_00, 136, 56, $0
 	anim_wait 6
 	anim_ret
 ; cb9c6
@@ -4822,10 +4822,10 @@
 BattleAnim_ShadowBall: ; cb9c6
 	anim_2gfx ANIM_GFX_EGG, ANIM_GFX_SMOKE
 	anim_bgp $1b
-	anim_sound $1a, SFX_SLUDGE_BOMB
-	anim_obj $b4, 64, 92, $2
+	anim_sound 6, 2, SFX_SLUDGE_BOMB
+	anim_obj ANIM_OBJ_B4, 64, 92, $2
 	anim_wait 32
-	anim_obj $1c, 132, 56, $10
+	anim_obj ANIM_OBJ_1C, 132, 56, $10
 	anim_wait 24
 	anim_ret
 ; cb9db
@@ -4835,18 +4835,18 @@
 	anim_bgeffect $6, $0, $2, $0
 	anim_bgeffect ANIM_BG_ALTERNATE_HUES, $0, $2, $0
 	anim_bgeffect ANIM_BG_PSYCHIC, $0, $0, $0
-	anim_obj $7d, 8, 24, $10
-	anim_obj $7d, 8, 48, $2
-	anim_obj $7d, 8, 88, $8
+	anim_obj ANIM_OBJ_7D, 8, 24, $10
+	anim_obj ANIM_OBJ_7D, 8, 48, $2
+	anim_obj ANIM_OBJ_7D, 8, 88, $8
 	anim_wait 4
-	anim_obj $7d, 8, 32, $6
-	anim_obj $7d, 8, 56, $c
-	anim_obj $7d, 8, 80, $4
-	anim_obj $7d, 8, 104, $e
+	anim_obj ANIM_OBJ_7D, 8, 32, $6
+	anim_obj ANIM_OBJ_7D, 8, 56, $c
+	anim_obj ANIM_OBJ_7D, 8, 80, $4
+	anim_obj ANIM_OBJ_7D, 8, 104, $e
 BattleAnim_FutureSight_branch_cba10: ; cba10
-	anim_sound $0, SFX_THROW_BALL
+	anim_sound 0, 0, SFX_THROW_BALL
 	anim_wait 16
-	anim_loop $4, BattleAnim_FutureSight_branch_cba10
+	anim_loop 4, BattleAnim_FutureSight_branch_cba10
 	anim_incbgeffect ANIM_BG_PSYCHIC
 	anim_ret
 ; cba1b
@@ -4853,24 +4853,24 @@
 
 BattleAnim_RockSmash: ; cba1b
 	anim_2gfx ANIM_GFX_ROCKS, ANIM_GFX_HIT
-	anim_sound $1, SFX_SPARK
-	anim_obj $1, 128, 56, $0
-	anim_sound $1, SFX_SPARK
-	anim_obj $b5, 128, 64, $28
-	anim_obj $b5, 128, 64, $5c
-	anim_sound $1, SFX_SPARK
-	anim_obj $b5, 128, 64, $10
-	anim_obj $b5, 128, 64, $e8
-	anim_sound $1, SFX_SPARK
-	anim_obj $b5, 128, 64, $9c
-	anim_obj $b5, 128, 64, $d0
+	anim_sound 0, 1, SFX_SPARK
+	anim_obj ANIM_OBJ_01, 128, 56, $0
+	anim_sound 0, 1, SFX_SPARK
+	anim_obj ANIM_OBJ_B5, 128, 64, $28
+	anim_obj ANIM_OBJ_B5, 128, 64, $5c
+	anim_sound 0, 1, SFX_SPARK
+	anim_obj ANIM_OBJ_B5, 128, 64, $10
+	anim_obj ANIM_OBJ_B5, 128, 64, $e8
+	anim_sound 0, 1, SFX_SPARK
+	anim_obj ANIM_OBJ_B5, 128, 64, $9c
+	anim_obj ANIM_OBJ_B5, 128, 64, $d0
 	anim_wait 6
-	anim_sound $1, SFX_SPARK
-	anim_obj $b5, 128, 64, $1c
-	anim_obj $b5, 128, 64, $50
-	anim_sound $1, SFX_SPARK
-	anim_obj $b5, 128, 64, $dc
-	anim_obj $b5, 128, 64, $90
+	anim_sound 0, 1, SFX_SPARK
+	anim_obj ANIM_OBJ_B5, 128, 64, $1c
+	anim_obj ANIM_OBJ_B5, 128, 64, $50
+	anim_sound 0, 1, SFX_SPARK
+	anim_obj ANIM_OBJ_B5, 128, 64, $dc
+	anim_obj ANIM_OBJ_B5, 128, 64, $90
 	anim_wait 32
 	anim_ret
 ; cba6a
@@ -4878,12 +4878,12 @@
 BattleAnim_Whirlpool: ; cba6a
 	anim_1gfx ANIM_GFX_WIND
 	anim_bgeffect ANIM_BG_WHIRLPOOL, $0, $0, $0
-	anim_sound $1, SFX_SURF
+	anim_sound 0, 1, SFX_SURF
 	anim_wait 16
 BattleAnim_Whirlpool_branch_cba75: ; cba75
 	anim_obj ANIM_OBJ_GUST, 132, 72, $0
 	anim_wait 6
-	anim_loop $9, BattleAnim_Whirlpool_branch_cba75
+	anim_loop 9, BattleAnim_Whirlpool_branch_cba75
 	anim_wait 64
 	anim_incbgeffect ANIM_BG_WHIRLPOOL
 	anim_wait 1
@@ -4892,11 +4892,11 @@
 
 BattleAnim_BeatUp: ; cba84
 	anim_jumpif $0, BattleAnim_BeatUp_branch_cba9b
-	anim_sound $0, SFX_BALL_POOF
+	anim_sound 0, 0, SFX_BALL_POOF
 	anim_bgeffect ANIM_BG_RETURN_MON, $0, $1, $0
 	anim_wait 16
 	anim_beatup
-	anim_sound $0, SFX_BALL_POOF
+	anim_sound 0, 0, SFX_BALL_POOF
 	anim_bgeffect ANIM_BG_ENTER_MON, $0, $1, $0
 	anim_wait 16
 BattleAnim_BeatUp_branch_cba9b: ; cba9b
@@ -4904,8 +4904,8 @@
 	anim_call BattleAnim_BeatUp_branch_cbca7
 	anim_bgeffect ANIM_BG_TACKLE, $0, $1, $0
 	anim_wait 4
-	anim_sound $1, SFX_BEAT_UP
-	anim_obj $0, 136, 48, $0
+	anim_sound 0, 1, SFX_BEAT_UP
+	anim_obj ANIM_OBJ_00, 136, 48, $0
 	anim_wait 8
 	anim_call BattleAnim_BeatUp_branch_cbcb7
 	anim_ret
@@ -4914,14 +4914,14 @@
 BattleAnim_DreamEater_branch_cbab3: ; cbab3
 BattleAnim_GigaDrain_branch_cbab3: ; cbab3
 BattleAnim_LeechLife_branch_cbab3: ; cbab3
-	anim_obj $71, 132, 44, $0
-	anim_obj $71, 132, 44, $8
-	anim_obj $71, 132, 44, $10
-	anim_obj $71, 132, 44, $18
-	anim_obj $71, 132, 44, $20
-	anim_obj $71, 132, 44, $28
-	anim_obj $71, 132, 44, $30
-	anim_obj $71, 132, 44, $38
+	anim_obj ANIM_OBJ_71, 132, 44, $0
+	anim_obj ANIM_OBJ_71, 132, 44, $8
+	anim_obj ANIM_OBJ_71, 132, 44, $10
+	anim_obj ANIM_OBJ_71, 132, 44, $18
+	anim_obj ANIM_OBJ_71, 132, 44, $20
+	anim_obj ANIM_OBJ_71, 132, 44, $28
+	anim_obj ANIM_OBJ_71, 132, 44, $30
+	anim_obj ANIM_OBJ_71, 132, 44, $38
 	anim_ret
 ; cbadc
 
@@ -4928,30 +4928,30 @@
 BattleAnim_Glare_branch_cbadc: ; cbadc
 BattleAnim_Leer_branch_cbadc: ; cbadc
 BattleAnim_ScaryFace_branch_cbadc: ; cbadc
-	anim_sound $1a, SFX_LEER
-	anim_obj $4e, 72, 84, $0
-	anim_obj $4e, 64, 80, $0
-	anim_obj $4e, 88, 76, $0
-	anim_obj $4e, 80, 72, $0
-	anim_obj $4e, 104, 68, $0
-	anim_obj $4e, 96, 64, $0
-	anim_obj $4e, 120, 60, $0
-	anim_obj $4e, 112, 56, $0
-	anim_obj $4f, 130, 54, $0
-	anim_obj $4f, 122, 50, $0
+	anim_sound 6, 2, SFX_LEER
+	anim_obj ANIM_OBJ_4E, 72, 84, $0
+	anim_obj ANIM_OBJ_4E, 64, 80, $0
+	anim_obj ANIM_OBJ_4E, 88, 76, $0
+	anim_obj ANIM_OBJ_4E, 80, 72, $0
+	anim_obj ANIM_OBJ_4E, 104, 68, $0
+	anim_obj ANIM_OBJ_4E, 96, 64, $0
+	anim_obj ANIM_OBJ_4E, 120, 60, $0
+	anim_obj ANIM_OBJ_4E, 112, 56, $0
+	anim_obj ANIM_OBJ_4F, 130, 54, $0
+	anim_obj ANIM_OBJ_4F, 122, 50, $0
 	anim_ret
 ; cbb12
 
 BattleAnim_Fly_branch_cbb12: ; cbb12
 BattleAnim_Teleport_branch_cbb12: ; cbb12
-	anim_sound $0, SFX_WARP_TO
-	anim_obj $44, 44, 108, $0
-	anim_obj $44, 44, 100, $0
-	anim_obj $44, 44, 92, $0
-	anim_obj $44, 44, 84, $0
-	anim_obj $44, 44, 76, $0
-	anim_obj $44, 44, 68, $0
-	anim_obj $44, 44, 60, $0
+	anim_sound 0, 0, SFX_WARP_TO
+	anim_obj ANIM_OBJ_44, 44, 108, $0
+	anim_obj ANIM_OBJ_44, 44, 100, $0
+	anim_obj ANIM_OBJ_44, 44, 92, $0
+	anim_obj ANIM_OBJ_44, 44, 84, $0
+	anim_obj ANIM_OBJ_44, 44, 76, $0
+	anim_obj ANIM_OBJ_44, 44, 68, $0
+	anim_obj ANIM_OBJ_44, 44, 60, $0
 	anim_ret
 ; cbb39
 
@@ -4958,37 +4958,37 @@
 BattleAnim_AuroraBeam_branch_cbb39: ; cbb39
 BattleAnim_HyperBeam_branch_cbb39: ; cbb39
 BattleAnim_Solarbeam_branch_cbb39: ; cbb39
-	anim_sound $0, SFX_HYPER_BEAM
-	anim_obj $27, 64, 92, $0
+	anim_sound 0, 0, SFX_HYPER_BEAM
+	anim_obj ANIM_OBJ_27, 64, 92, $0
 	anim_wait 4
-	anim_sound $0, SFX_HYPER_BEAM
-	anim_obj $27, 80, 84, $0
+	anim_sound 0, 0, SFX_HYPER_BEAM
+	anim_obj ANIM_OBJ_27, 80, 84, $0
 	anim_wait 4
-	anim_sound $1, SFX_HYPER_BEAM
-	anim_obj $27, 96, 76, $0
+	anim_sound 0, 1, SFX_HYPER_BEAM
+	anim_obj ANIM_OBJ_27, 96, 76, $0
 	anim_wait 4
-	anim_sound $1, SFX_HYPER_BEAM
-	anim_obj $27, 112, 68, $0
-	anim_obj $28, 126, 62, $0
+	anim_sound 0, 1, SFX_HYPER_BEAM
+	anim_obj ANIM_OBJ_27, 112, 68, $0
+	anim_obj ANIM_OBJ_28, 126, 62, $0
 	anim_ret
 ; cbb62
 
 BattleAnim_Explosion_branch_cbb62: ; cbb62
 BattleAnim_Selfdestruct_branch_cbb62: ; cbb62
-	anim_sound $0, SFX_EGG_BOMB
-	anim_obj $17, 24, 64, $0
+	anim_sound 0, 0, SFX_EGG_BOMB
+	anim_obj ANIM_OBJ_17, 24, 64, $0
 	anim_wait 5
-	anim_sound $0, SFX_EGG_BOMB
-	anim_obj $17, 56, 104, $0
+	anim_sound 0, 0, SFX_EGG_BOMB
+	anim_obj ANIM_OBJ_17, 56, 104, $0
 	anim_wait 5
-	anim_sound $0, SFX_EGG_BOMB
-	anim_obj $17, 24, 104, $0
+	anim_sound 0, 0, SFX_EGG_BOMB
+	anim_obj ANIM_OBJ_17, 24, 104, $0
 	anim_wait 5
-	anim_sound $0, SFX_EGG_BOMB
-	anim_obj $17, 56, 64, $0
+	anim_sound 0, 0, SFX_EGG_BOMB
+	anim_obj ANIM_OBJ_17, 56, 64, $0
 	anim_wait 5
-	anim_sound $0, SFX_EGG_BOMB
-	anim_obj $17, 40, 84, $0
+	anim_sound 0, 0, SFX_EGG_BOMB
+	anim_obj ANIM_OBJ_17, 40, 84, $0
 	anim_ret
 ; cbb8f
 
@@ -4996,20 +4996,20 @@
 BattleAnim_Explosion_branch_cbb8f: ; cbb8f
 BattleAnim_Present_branch_cbb8f: ; cbb8f
 BattleAnim_Selfdestruct_branch_cbb8f: ; cbb8f
-	anim_sound $1, SFX_EGG_BOMB
-	anim_obj $17, 148, 32, $0
+	anim_sound 0, 1, SFX_EGG_BOMB
+	anim_obj ANIM_OBJ_17, 148, 32, $0
 	anim_wait 5
-	anim_sound $1, SFX_EGG_BOMB
-	anim_obj $17, 116, 72, $0
+	anim_sound 0, 1, SFX_EGG_BOMB
+	anim_obj ANIM_OBJ_17, 116, 72, $0
 	anim_wait 5
-	anim_sound $1, SFX_EGG_BOMB
-	anim_obj $17, 148, 72, $0
+	anim_sound 0, 1, SFX_EGG_BOMB
+	anim_obj ANIM_OBJ_17, 148, 72, $0
 	anim_wait 5
-	anim_sound $1, SFX_EGG_BOMB
-	anim_obj $17, 116, 32, $0
+	anim_sound 0, 1, SFX_EGG_BOMB
+	anim_obj ANIM_OBJ_17, 116, 32, $0
 	anim_wait 5
-	anim_sound $1, SFX_EGG_BOMB
-	anim_obj $17, 132, 52, $0
+	anim_sound 0, 1, SFX_EGG_BOMB
+	anim_obj ANIM_OBJ_17, 132, 52, $0
 	anim_ret
 ; cbbbc
 
@@ -5016,21 +5016,21 @@
 BattleAnim_Growl_branch_cbbbc: ; cbbbc
 BattleAnim_Roar_branch_cbbbc: ; cbbbc
 BattleAnim_Snore_branch_cbbbc: ; cbbbc
-	anim_obj $4b, 64, 76, $0
-	anim_obj $4b, 64, 88, $1
-	anim_obj $4b, 64, 100, $2
+	anim_obj ANIM_OBJ_4B, 64, 76, $0
+	anim_obj ANIM_OBJ_4B, 64, 88, $1
+	anim_obj ANIM_OBJ_4B, 64, 100, $2
 	anim_ret
 ; cbbcc
 
 BattleAnim_FirePunch_branch_cbbcc: ; cbbcc
 BattleAnim_TriAttack_branch_cbbcc: ; cbbcc
-	anim_sound $1, SFX_EMBER
+	anim_sound 0, 1, SFX_EMBER
 BattleAnim_FirePunch_branch_cbbcf: ; cbbcf
 BattleAnim_TriAttack_branch_cbbcf: ; cbbcf
-	anim_obj $10, 136, 56, $10
-	anim_obj $10, 136, 56, $90
+	anim_obj ANIM_OBJ_BURNED, 136, 56, $10
+	anim_obj ANIM_OBJ_BURNED, 136, 56, $90
 	anim_wait 4
-	anim_loop $4, BattleAnim_FirePunch_branch_cbbcf
+	anim_loop 4, BattleAnim_FirePunch_branch_cbbcf
 	anim_ret
 ; cbbdf
 
@@ -5037,23 +5037,23 @@
 BattleAnim_IcePunch_branch_cbbdf: ; cbbdf
 BattleAnim_PowderSnow_branch_cbbdf: ; cbbdf
 BattleAnim_TriAttack_branch_cbbdf: ; cbbdf
-	anim_sound $1, SFX_SHINE
-	anim_obj $12, 128, 42, $0
+	anim_sound 0, 1, SFX_SHINE
+	anim_obj ANIM_OBJ_12, 128, 42, $0
 	anim_wait 6
-	anim_sound $1, SFX_SHINE
-	anim_obj $12, 144, 70, $0
+	anim_sound 0, 1, SFX_SHINE
+	anim_obj ANIM_OBJ_12, 144, 70, $0
 	anim_wait 6
-	anim_sound $1, SFX_SHINE
-	anim_obj $12, 120, 56, $0
+	anim_sound 0, 1, SFX_SHINE
+	anim_obj ANIM_OBJ_12, 120, 56, $0
 	anim_wait 6
-	anim_sound $1, SFX_SHINE
-	anim_obj $12, 152, 56, $0
+	anim_sound 0, 1, SFX_SHINE
+	anim_obj ANIM_OBJ_12, 152, 56, $0
 	anim_wait 6
-	anim_sound $1, SFX_SHINE
-	anim_obj $12, 144, 42, $0
+	anim_sound 0, 1, SFX_SHINE
+	anim_obj ANIM_OBJ_12, 144, 42, $0
 	anim_wait 6
-	anim_sound $1, SFX_SHINE
-	anim_obj $12, 128, 70, $0
+	anim_sound 0, 1, SFX_SHINE
+	anim_obj ANIM_OBJ_12, 128, 70, $0
 	anim_ret
 ; cbc15
 
@@ -5060,25 +5060,25 @@
 BattleAnim_SludgeBomb_branch_cbc15: ; cbc15
 BattleAnim_Sludge_branch_cbc15: ; cbc15
 BattleAnim_Toxic_branch_cbc15: ; cbc15
-	anim_sound $1, SFX_UNKNOWN_7F
-	anim_obj $1a, 132, 72, $0
+	anim_sound 0, 1, SFX_UNKNOWN_7F
+	anim_obj ANIM_OBJ_1A, 132, 72, $0
 	anim_wait 8
-	anim_sound $1, SFX_UNKNOWN_7F
-	anim_obj $1a, 116, 72, $0
+	anim_sound 0, 1, SFX_UNKNOWN_7F
+	anim_obj ANIM_OBJ_1A, 116, 72, $0
 	anim_wait 8
-	anim_sound $1, SFX_UNKNOWN_7F
-	anim_obj $1a, 148, 72, $0
+	anim_sound 0, 1, SFX_UNKNOWN_7F
+	anim_obj ANIM_OBJ_1A, 148, 72, $0
 	anim_wait 8
-	anim_loop $5, BattleAnim_SludgeBomb_branch_cbc15
+	anim_loop 5, BattleAnim_SludgeBomb_branch_cbc15
 	anim_ret
 ; cbc35
 
 BattleAnim_Acid_branch_cbc35: ; cbc35
 BattleAnim_Toxic_branch_cbc35: ; cbc35
-	anim_sound $1a, SFX_BUBBLEBEAM
-	anim_obj $19, 64, 92, $10
+	anim_sound 6, 2, SFX_BUBBLEBEAM
+	anim_obj ANIM_OBJ_19, 64, 92, $10
 	anim_wait 5
-	anim_loop $8, BattleAnim_Acid_branch_cbc35
+	anim_loop 8, BattleAnim_Acid_branch_cbc35
 	anim_ret
 ; cbc43
 
@@ -5086,12 +5086,12 @@
 BattleAnim_IronTail_branch_cbc43: ; cbc43
 BattleAnim_MetalClaw_branch_cbc43: ; cbc43
 BattleAnim_SteelWing_branch_cbc43: ; cbc43
-	anim_sound $0, SFX_SHINE
+	anim_sound 0, 0, SFX_SHINE
 	anim_bgeffect $17, $0, $1, $40
 	anim_wait 8
-	anim_obj $51, 48, 84, $0
+	anim_obj ANIM_OBJ_51, 48, 84, $0
 	anim_wait 32
-	anim_obj $51, 48, 84, $0
+	anim_obj ANIM_OBJ_51, 48, 84, $0
 	anim_wait 64
 	anim_incbgeffect $17
 	anim_ret
@@ -5099,10 +5099,10 @@
 
 BattleAnim_MudSlap_branch_cbc5b: ; cbc5b
 BattleAnim_SandAttack_branch_cbc5b: ; cbc5b
-	anim_sound $1a, SFX_MENU
-	anim_obj $58, 64, 92, $4
+	anim_sound 6, 2, SFX_MENU
+	anim_obj ANIM_OBJ_58, 64, 92, $4
 	anim_wait 4
-	anim_loop $8, BattleAnim_MudSlap_branch_cbc5b
+	anim_loop 8, BattleAnim_MudSlap_branch_cbc5b
 	anim_wait 32
 	anim_ret
 ; cbc6a
@@ -5110,12 +5110,12 @@
 BattleAnim_Moonlight_branch_cbc6a: ; cbc6a
 BattleAnim_MorningSun_branch_cbc6a: ; cbc6a
 BattleAnim_Synthesis_branch_cbc6a: ; cbc6a
-	anim_sound $0, SFX_METRONOME
-	anim_obj $9d, 44, 64, $0
+	anim_sound 0, 0, SFX_METRONOME
+	anim_obj ANIM_OBJ_9D, 44, 64, $0
 	anim_wait 5
-	anim_obj $9d, 24, 96, $0
+	anim_obj ANIM_OBJ_9D, 24, 96, $0
 	anim_wait 5
-	anim_obj $9d, 56, 104, $0
+	anim_obj ANIM_OBJ_9D, 56, 104, $0
 	anim_wait 21
 	anim_ret
 ; cbc80
@@ -5123,21 +5123,21 @@
 BattleAnim_Moonlight_branch_cbc80: ; cbc80
 BattleAnim_MorningSun_branch_cbc80: ; cbc80
 BattleAnim_Synthesis_branch_cbc80: ; cbc80
-	anim_sound $0, SFX_METRONOME
+	anim_sound 0, 0, SFX_METRONOME
 BattleAnim_Moonlight_branch_cbc83: ; cbc83
 BattleAnim_MorningSun_branch_cbc83: ; cbc83
 BattleAnim_Synthesis_branch_cbc83: ; cbc83
-	anim_obj $9d, 24, 64, $0
+	anim_obj ANIM_OBJ_9D, 24, 64, $0
 	anim_wait 5
-	anim_obj $9d, 56, 104, $0
+	anim_obj ANIM_OBJ_9D, 56, 104, $0
 	anim_wait 5
-	anim_obj $9d, 24, 104, $0
+	anim_obj ANIM_OBJ_9D, 24, 104, $0
 	anim_wait 5
-	anim_obj $9d, 56, 64, $0
+	anim_obj ANIM_OBJ_9D, 56, 64, $0
 	anim_wait 5
-	anim_obj $9d, 40, 84, $0
+	anim_obj ANIM_OBJ_9D, 40, 84, $0
 	anim_wait 5
-	anim_loop $2, BattleAnim_Moonlight_branch_cbc83
+	anim_loop 2, BattleAnim_Moonlight_branch_cbc83
 	anim_wait 16
 	anim_ret
 ; cbca7
@@ -5265,7 +5265,7 @@
 	anim_wait 1
 	anim_bgeffect ANIM_BG_SHOW_MON, $0, $0, $0
 	anim_wait 5
-	anim_incobj $1
+	anim_incobj  1
 	anim_wait 1
 	anim_ret
 ; cbcc2
@@ -5305,7 +5305,7 @@
 	anim_wait 1
 	anim_bgeffect ANIM_BG_SHOW_MON, $0, $1, $0
 	anim_wait 4
-	anim_incobj $1
+	anim_incobj  1
 	anim_wait 1
 	anim_ret
 ; cbcdd
--- /dev/null
+++ b/battle/objects/framesets.asm
@@ -1,0 +1,557 @@
+BattleAnimFrameData: ; ce85e
+	dw Unknown_ce9d0 ; 00
+	dw Unknown_ce9d3 ; 01
+	dw Unknown_ce9d6 ; 02
+	dw Unknown_ce9d9 ; 03
+	dw Unknown_ce9dc ; 04
+	dw Unknown_ce9df ; 05
+	dw Unknown_ce9e2 ; 06
+	dw Unknown_ce9e5 ; 07
+	dw Unknown_cea6b ; 08
+	dw Unknown_cea74 ; 09
+	dw Unknown_cea7d ; 0a
+	dw Unknown_cea80 ; 0b
+	dw Unknown_cea83 ; 0c
+	dw Unknown_cea86 ; 0d
+	dw Unknown_cea91 ; 0e
+	dw Unknown_cea94 ; 0f
+	dw Unknown_cea99 ; 10
+	dw Unknown_cea9e ; 11
+	dw Unknown_ceaaf ; 12
+	dw Unknown_ceabc ; 13
+	dw Unknown_cead3 ; 14
+	dw Unknown_cead6 ; 15
+	dw Unknown_ceadb ; 16
+	dw Unknown_ceade ; 17
+	dw Unknown_ceb06 ; 18
+	dw Unknown_ceb0d ; 19
+	dw Unknown_ceb10 ; 1a
+	dw Unknown_ceb13 ; 1b
+	dw Unknown_ceb16 ; 1c
+	dw Unknown_ceb19 ; 1d
+	dw Unknown_ceb1c ; 1e
+	dw Unknown_ceb1f ; 1f
+	dw Unknown_ceb26 ; 20
+	dw Unknown_ceb2b ; 21
+	dw Unknown_ceb2e ; 22
+	dw Unknown_ceb37 ; 23
+	dw Unknown_ceb3a ; 24
+	dw Unknown_ceb3d ; 25
+	dw Unknown_ceb40 ; 26
+	dw Unknown_ceb43 ; 27
+	dw Unknown_ceb46 ; 28
+	dw Unknown_ceb4b ; 29
+	dw Unknown_ceb50 ; 2a
+	dw Unknown_ceb63 ; 2b
+	dw Unknown_ceb68 ; 2c
+	dw Unknown_ceb6d ; 2d
+	dw Unknown_ceb70 ; 2e
+	dw Unknown_ceb78 ; 2f
+	dw Unknown_ceb89 ; 30
+	dw Unknown_ceb8e ; 31
+	dw Unknown_ceb97 ; 32
+	dw Unknown_ceba0 ; 33
+	dw Unknown_ceba9 ; 34
+	dw Unknown_cebb0 ; 35
+	dw Unknown_cebc1 ; 36
+	dw Unknown_cebca ; 37
+	dw Unknown_cebcf ; 38
+	dw Unknown_cebd4 ; 39
+	dw Unknown_cebd9 ; 3a
+	dw Unknown_cebdc ; 3b
+	dw Unknown_cebdf ; 3c
+	dw Unknown_cebe2 ; 3d
+	dw Unknown_ce9f6 ; 3e
+	dw Unknown_cea0b ; 3f
+	dw Unknown_cea20 ; 40
+	dw Unknown_cea35 ; 41
+	dw Unknown_cea50 ; 42
+	dw Unknown_cebe5 ; 43
+	dw Unknown_cebf3 ; 44
+	dw Unknown_cec0f ; 45
+	dw Unknown_cec20 ; 46
+	dw Unknown_cec25 ; 47
+	dw Unknown_cec2a ; 48
+	dw Unknown_cec37 ; 49
+	dw Unknown_cec44 ; 4a
+	dw Unknown_cec4d ; 4b
+	dw Unknown_cebec ; 4c
+	dw Unknown_cec56 ; 4d
+	dw Unknown_cec67 ; 4e
+	dw Unknown_cec72 ; 4f
+	dw Unknown_cec77 ; 50
+	dw Unknown_cec7c ; 51
+	dw Unknown_cec7f ; 52
+	dw Unknown_cec86 ; 53
+	dw Unknown_cec8b ; 54
+	dw Unknown_cec92 ; 55
+	dw Unknown_ceaf3 ; 56
+	dw Unknown_ceaf6 ; 57
+	dw Unknown_ceb01 ; 58
+	dw Unknown_cec97 ; 59
+	dw Unknown_cec9a ; 5a
+	dw Unknown_cec9d ; 5b
+	dw Unknown_ceca0 ; 5c
+	dw Unknown_cecab ; 5d
+	dw Unknown_cecb0 ; 5e
+	dw Unknown_cecc9 ; 5f
+	dw Unknown_ceccc ; 60
+	dw Unknown_cece7 ; 61
+	dw Unknown_cecec ; 62
+	dw Unknown_cecf1 ; 63
+	dw Unknown_cecf4 ; 64
+	dw Unknown_cecf7 ; 65
+	dw Unknown_cecfa ; 66
+	dw Unknown_ced09 ; 67
+	dw Unknown_ced0c ; 68
+	dw Unknown_ced19 ; 69
+	dw Unknown_ced22 ; 6a
+	dw Unknown_ced2b ; 6b
+	dw Unknown_ced32 ; 6c
+	dw Unknown_ced39 ; 6d
+	dw Unknown_ced3c ; 6e
+	dw Unknown_ced3f ; 6f
+	dw Unknown_ced44 ; 70
+	dw Unknown_ced49 ; 71
+	dw Unknown_ced4c ; 72
+	dw Unknown_ced4f ; 73
+	dw Unknown_ced54 ; 74
+	dw Unknown_ced57 ; 75
+	dw Unknown_ced5a ; 76
+	dw Unknown_ced5d ; 77
+	dw Unknown_ced62 ; 78
+	dw Unknown_ced65 ; 79
+	dw Unknown_cecb3 ; 7a
+	dw Unknown_ced72 ; 7b
+	dw Unknown_ced75 ; 7c
+	dw Unknown_ced88 ; 7d
+	dw Unknown_cec08 ; 7e
+	dw Unknown_ced8b ; 7f
+	dw Unknown_ced8e ; 80
+	dw Unknown_ced91 ; 81
+	dw Unknown_ced93 ; 82
+	dw Unknown_ced95 ; 83
+	dw Unknown_ced98 ; 84
+	dw Unknown_ced9b ; 85
+	dw Unknown_ceda8 ; 86
+	dw Unknown_cedb5 ; 87
+	dw Unknown_cedb8 ; 88
+	dw Unknown_cedbb ; 89
+	dw Unknown_cedbe ; 8a
+	dw Unknown_cedc1 ; 8b
+	dw Unknown_cedc4 ; 8c
+	dw Unknown_cedc7 ; 8d
+	dw Unknown_cedcc ; 8e
+	dw Unknown_cedcf ; 8f
+	dw Unknown_cedd2 ; 90
+	dw Unknown_cedd5 ; 91
+	dw Unknown_cedd8 ; 92
+	dw Unknown_ceddb ; 93
+	dw Unknown_cedde ; 94
+	dw Unknown_cede1 ; 95
+	dw Unknown_cede4 ; 96
+	dw Unknown_cede7 ; 97
+	dw Unknown_cedea ; 98
+	dw Unknown_ceded ; 99
+	dw Unknown_cedf0 ; 9a
+	dw Unknown_cedf3 ; 9b
+	dw Unknown_cedf6 ; 9c
+	dw Unknown_cedf9 ; 9d
+	dw Unknown_cedfc ; 9e
+	dw Unknown_cedff ; 9f
+	dw Unknown_cee02 ; a0
+	dw Unknown_cee05 ; a1
+	dw Unknown_cee08 ; a2
+	dw Unknown_cee0b ; a3
+	dw Unknown_cee12 ; a4
+	dw Unknown_cee19 ; a5
+	dw Unknown_cee1e ; a6
+	dw Unknown_cee3d ; a7
+	dw Unknown_cee5c ; a8
+	dw Unknown_cee61 ; a9
+	dw Unknown_cee64 ; aa
+	dw Unknown_cee6b ; ab
+	dw Unknown_cee70 ; ac
+	dw Unknown_cee75 ; ad
+	dw Unknown_cee7e ; ae
+	dw Unknown_cecbe ; af
+	dw Unknown_cee81 ; b0
+	dw Unknown_cee84 ; b1
+	dw Unknown_cee8d ; b2
+	dw Unknown_cee96 ; b3
+	dw Unknown_cee9f ; b4
+	dw Unknown_ceea2 ; b5
+	dw Unknown_ceea5 ; b6
+	dw Unknown_ceea8 ; b7
+	dw Unknown_ceeab ; b8
+; ce9d0
+
+                ; OAM index (see battle/objects/oam.asm), flip flags / duration
+Unknown_ce9d0:	db $00,$06
+				db -4
+Unknown_ce9d3:	db $01,$06
+				db -4
+Unknown_ce9d6:	db $02,$06
+				db -4
+Unknown_ce9d9:	db $03,$06
+				db -4
+Unknown_ce9dc:	db $04,$06
+				db -4
+Unknown_ce9df:	db $05,$06
+				db -4
+Unknown_ce9e2:	db $06,$06
+				db -4
+Unknown_ce9e5:	db $03,$04, $01,$01, $03,$04, $01,$01, $03,$04, $01,$01, $03,$04, $01,$01
+				db -4
+Unknown_ce9f6:	db $4b,$02, $4c,$02, $4d,$04, $4e,$02, $fd,$02, $4e,$02, $fd,$02, $4e,$02, $fd,$02, $4e,$02
+				db -4
+Unknown_cea0b:	db $4b,$42, $4c,$42, $4d,$44, $4e,$42, $fd,$02, $4e,$42, $fd,$02, $4e,$42, $fd,$02, $4e,$42
+				db -4
+Unknown_cea20:	db $4b,$c2, $4c,$c2, $4d,$c4, $4e,$c2, $fd,$02, $4e,$c2, $fd,$02, $4e,$c2, $fd,$02, $4e,$c2
+				db -4
+Unknown_cea35:	db $4b,$01, $4c,$01, $4d,$01, $4f,$01, $50,$01, $51,$01, $52,$02, $fd,$02, $52,$02, $fd,$02, $52,$02, $fd,$02, $52,$02
+				db -4
+Unknown_cea50:	db $4b,$41, $4c,$41, $4d,$41, $4f,$41, $50,$41, $51,$41, $52,$42, $fd,$02, $52,$42, $fd,$02, $52,$42, $fd,$02, $52,$42
+				db -4
+Unknown_cea6b:	db $00,$03, $07,$03, $08,$03, $09,$03
+				db -4
+Unknown_cea74:	db $0a,$07, $0b,$07, $0a,$07, $0b,$47
+				db -2
+Unknown_cea7d:	db $0c,$08
+				db -1
+Unknown_cea80:	db $0d,$08
+				db -1
+Unknown_cea83:	db $0a,$08
+				db -1
+Unknown_cea86:	db $0a,$07, $0b,$07, $0a,$07, $0b,$47, $0a,$07
+				db -1
+Unknown_cea91:	db $0a,$08
+				db -1
+Unknown_cea94:	db $0a,$04, $0e,$04
+				db -2
+Unknown_cea99:	db $0f,$04, $10,$04
+				db -2
+Unknown_cea9e:	db $10,$04, $0f,$04, $0e,$04, $0a,$04, $0e,$04, $0a,$04, $0e,$04, $0a,$04
+				db -4
+Unknown_ceaaf:	db $10,$01, $0f,$01, $12,$01, $11,$01, $12,$01, $0f,$01
+				db -2
+Unknown_ceabc:	db $10,$03, $0f,$03, $12,$01, $fd,$01, $12,$01, $fd,$01, $12,$01, $fd,$01, $12,$01, $fd,$01, $12,$03
+				db -4
+Unknown_cead3:	db $13,$14
+				db -4
+Unknown_cead6:	db $10,$01, $0f,$01
+				db -2
+Unknown_ceadb:	db $14,$08
+				db -1
+Unknown_ceade:	db $17,$04, $16,$08, $15,$08, $16,$08, $17,$04, $17,$04, $16,$48, $15,$48, $16,$48, $17,$04
+				db -2
+Unknown_ceaf3:	db $69,$08
+				db -1
+Unknown_ceaf6:	db $69,$20, $6a,$04, $6b,$04, $6d,$04, $6c,$04
+				db -1
+Unknown_ceb01:	db $6c,$08, $6d,$08
+				db -2
+Unknown_ceb06:	db $18,$04, $19,$04, $1a,$04
+				db -4
+Unknown_ceb0d:	db $1b,$08
+				db -1
+Unknown_ceb10:	db $0f,$08
+				db -1
+Unknown_ceb13:	db $1c,$08
+				db -1
+Unknown_ceb16:	db $0a,$08
+				db -4
+Unknown_ceb19:	db $1d,$08
+				db -1
+Unknown_ceb1c:	db $17,$08
+				db -1
+Unknown_ceb1f:	db $0f,$03, $10,$03, $1e,$03
+				db -1
+Unknown_ceb26:	db $1f,$10, $20,$03
+				db -4
+Unknown_ceb2b:	db $20,$08
+				db -1
+Unknown_ceb2e:	db $20,$08, $21,$08, $1b,$08, $21,$08
+				db -2
+Unknown_ceb37:	db $22,$08
+				db -1
+Unknown_ceb3a:	db $1b,$08
+				db -1
+Unknown_ceb3d:	db $23,$08
+				db -1
+Unknown_ceb40:	db $24,$08
+				db -1
+Unknown_ceb43:	db $25,$08
+				db -1
+Unknown_ceb46:	db $26,$08, $27,$08
+				db -1
+Unknown_ceb4b:	db $28,$08, $29,$08
+				db -4
+Unknown_ceb50:	db $2a,$01, $2b,$01, $2c,$01, $2d,$01, $2e,$01, $2d,$01, $2c,$01, $2b,$01, $2a,$01
+				db -4
+Unknown_ceb63:	db $14,$01, $15,$01
+				db -2
+Unknown_ceb68:	db $2f,$04, $30,$28
+				db -4
+Unknown_ceb6d:	db $31,$08
+				db -1
+Unknown_ceb70:	db $32,$20, $33,$20, $34,$20, $35,$20 ; fallthrough
+Unknown_ceb78:	db $fd,$02, $35,$04, $fd,$02, $35,$04, $fd,$02, $35,$04, $fd,$02, $35,$04
+				db -4
+Unknown_ceb89:	db $14,$04, $15,$04
+				db -2
+Unknown_ceb8e:	db $36,$02, $37,$02, $38,$02, $39,$20
+				db -4
+Unknown_ceb97:	db $3a,$02, $3b,$02, $3c,$02, $3d,$20
+				db -4
+Unknown_ceba0:	db $3a,$42, $3b,$42, $3c,$42, $3d,$60
+				db -4
+Unknown_ceba9:	db $3e,$08, $3f,$08, $40,$08
+				db -1
+Unknown_cebb0:	db $40,$02, $fd,$02, $40,$02, $fd,$02, $41,$02, $fd,$02, $41,$02, $fd,$02
+				db -2
+Unknown_cebc1:	db $42,$02, $43,$02, $44,$02, $45,$02
+				db -2
+Unknown_cebca:	db $19,$02, $fd,$02
+				db -2
+Unknown_cebcf:	db $46,$04, $47,$04
+				db -2
+Unknown_cebd4:	db $18,$02, $fd,$02
+				db -2
+Unknown_cebd9:	db $48,$08
+				db -1
+Unknown_cebdc:	db $48,$48
+				db -1
+Unknown_cebdf:	db $49,$08
+				db -1
+Unknown_cebe2:	db $4a,$08
+				db -1
+Unknown_cebe5:	db $20,$10, $1f,$10, $1e,$10
+				db -1
+Unknown_cebec:	db $20,$08, $1f,$08, $1e,$08
+				db -1
+Unknown_cebf3:	db $fd,$14, $55,$28, $54,$28, $53,$14, $fd,$04, $53,$04, $fd,$04, $53,$04, $fd,$04, $53,$04
+				db -4
+Unknown_cec08:	db $1e,$08, $1f,$08, $20,$08
+				db -4
+Unknown_cec0f:	db $fd,$00, $14,$00, $15,$00, $14,$40, $fd,$00, $16,$40, $15,$00, $16,$00
+				db -2
+Unknown_cec20:	db $56,$02, $57,$04
+				db -4
+Unknown_cec25:	db $56,$c2, $57,$c4
+				db -4
+Unknown_cec2a:	db $56,$01, $57,$01, $58,$01, $57,$c1, $58,$c1, $57,$02
+				db -4
+Unknown_cec37:	db $56,$c1, $57,$c1, $58,$c1, $57,$01, $58,$01, $57,$c2
+				db -4
+Unknown_cec44:	db $57,$c1, $58,$c1, $57,$01, $58,$01
+				db -2
+Unknown_cec4d:	db $59,$01, $5a,$01, $5b,$01, $5c,$02
+				db -4
+Unknown_cec56:	db $0a,$0a, $0b,$43, $5d,$43, $0b,$c3, $0a,$82, $0b,$81, $5d,$01, $0b,$01
+				db -2
+Unknown_cec67:	db $0a,$03, $0b,$47, $0a,$07, $0b,$07, $0a,$03
+				db -2
+Unknown_cec72:	db $5e,$20, $5e,$20
+				db -4
+Unknown_cec77:	db $5f,$20, $5f,$20
+				db -4
+Unknown_cec7c:	db $60,$08
+				db -1
+Unknown_cec7f:	db $61,$01, $62,$01, $63,$01
+				db -1
+Unknown_cec86:	db $63,$07, $64,$07
+				db -2
+Unknown_cec8b:	db $65,$01, $66,$01, $67,$01
+				db -1
+Unknown_cec92:	db $67,$07, $68,$07
+				db -2
+Unknown_cec97:	db $6e,$08
+				db -1
+Unknown_cec9a:	db $6f,$08
+				db -1
+Unknown_cec9d:	db $6e,$88
+				db -1
+Unknown_ceca0:	db $18,$04, $70,$04, $71,$04, $72,$04, $73,$04
+				db -4
+Unknown_cecab:	db $74,$04, $75,$04
+				db -2
+Unknown_cecb0:	db $14,$08
+				db -1
+Unknown_cecb3:	db $74,$03, $14,$03, $15,$03, $14,$03, $15,$03
+				db -4
+Unknown_cecbe:	db $14,$00, $15,$00, $14,$00, $15,$00, $74,$0c
+				db -4
+Unknown_cecc9:	db $76,$08
+				db -1
+Unknown_ceccc:	db $77,$01, $78,$01, $79,$01, $7a,$01, $7b,$01, $7c,$01, $7d,$01, $7c,$c1, $7b,$c1, $7a,$c1, $79,$c1, $78,$c1, $77,$c1
+				db -4
+Unknown_cece7:	db $1b,$04, $7e,$04
+				db -2
+Unknown_cecec:	db $1b,$44, $7e,$44
+				db -2
+Unknown_cecf1:	db $7f,$08
+				db -1
+Unknown_cecf4:	db $25,$08
+				db -1
+Unknown_cecf7:	db $80,$08
+				db -1
+Unknown_cecfa:	db $83,$07, $82,$07, $81,$07, $82,$07, $83,$07, $82,$07, $81,$07
+				db -4
+Unknown_ced09:	db $1b,$10
+				db -4
+Unknown_ced0c:	db $fd,$0f, $84,$0f, $85,$0f, $29,$0f, $28,$0f, $86,$20
+				db -4
+Unknown_ced19:	db $1b,$03, $87,$03, $88,$03, $89,$03
+				db -4
+Unknown_ced22:	db $8a,$02, $8b,$02, $8c,$02, $8d,$02
+				db -4
+Unknown_ced2b:	db $61,$02, $62,$02, $63,$02
+				db -1
+Unknown_ced32:	db $65,$02, $66,$02, $67,$02
+				db -1
+Unknown_ced39:	db $8e,$08
+				db -1
+Unknown_ced3c:	db $8e,$48
+				db -1
+Unknown_ced3f:	db $8f,$10, $90,$10
+				db -2
+Unknown_ced44:	db $91,$10, $92,$10
+				db -2
+Unknown_ced49:	db $93,$08
+				db -1
+Unknown_ced4c:	db $1e,$08
+				db -1
+Unknown_ced4f:	db $1b,$07, $94,$07
+				db -2
+Unknown_ced54:	db $95,$08
+				db -1
+Unknown_ced57:	db $96,$08
+				db -1
+Unknown_ced5a:	db $95,$08
+				db -1
+Unknown_ced5d:	db $97,$01, $97,$41
+				db -2
+Unknown_ced62:	db $98,$08
+				db -1
+Unknown_ced65:	db $99,$20, $99,$20, $99,$20, $99,$20, $99,$20, $9a,$08
+				db -1
+Unknown_ced72:	db $9b,$08
+				db -1
+Unknown_ced75:	db $9c,$02, $9d,$02, $9e,$08, $fd,$02, $9e,$02, $fd,$02, $9e,$02, $fd,$02, $9e,$02
+				db -4
+Unknown_ced88:	db $9f,$08
+				db -1
+Unknown_ced8b:	db $0f,$08
+				db -1
+Unknown_ced8e:	db $6b,$18
+				db -4
+Unknown_ced91:	db $a0,$01 ; fallthrough
+Unknown_ced93:	db $a1,$01 ; fallthrough
+Unknown_ced95:	db $a2,$01
+				db -4
+Unknown_ced98:	db $a3,$08
+				db -1
+Unknown_ced9b:	db $a4,$04, $a5,$04, $a6,$04, $a7,$04, $a6,$44, $a5,$44
+				db -2
+Unknown_ceda8:	db $a8,$04, $a9,$04, $aa,$04, $ab,$04, $aa,$44, $a9,$44
+				db -2
+Unknown_cedb5:	db $1b,$08
+				db -1
+Unknown_cedb8:	db $ac,$08
+				db -1
+Unknown_cedbb:	db $ad,$08
+				db -1
+Unknown_cedbe:	db $ae,$08
+				db -1
+Unknown_cedc1:	db $af,$08
+				db -1
+Unknown_cedc4:	db $b0,$20
+				db -4
+Unknown_cedc7:	db $b1,$07, $b1,$47
+				db -2
+Unknown_cedcc:	db $b2,$08
+				db -1
+Unknown_cedcf:	db $b3,$08
+				db -1
+Unknown_cedd2:	db $b3,$48
+				db -1
+Unknown_cedd5:	db $b3,$88
+				db -1
+Unknown_cedd8:	db $b3,$c8
+				db -1
+Unknown_ceddb:	db $b5,$08
+				db -1
+Unknown_cedde:	db $b5,$48
+				db -1
+Unknown_cede1:	db $b5,$88
+				db -1
+Unknown_cede4:	db $b5,$c8
+				db -1
+Unknown_cede7:	db $b4,$08
+				db -1
+Unknown_cedea:	db $6b,$08
+				db -1
+Unknown_ceded:	db $b6,$08
+				db -1
+Unknown_cedf0:	db $b7,$20
+				db -1
+Unknown_cedf3:	db $1b,$20
+				db -1
+Unknown_cedf6:	db $b8,$20
+				db -1
+Unknown_cedf9:	db $b8,$60
+				db -1
+Unknown_cedfc:	db $b9,$20
+				db -1
+Unknown_cedff:	db $ba,$20
+				db -1
+Unknown_cee02:	db $bb,$60
+				db -1
+Unknown_cee05:	db $bb,$20
+				db -1
+Unknown_cee08:	db $bc,$20
+				db -1
+Unknown_cee0b:	db $bd,$0b, $be,$0b, $1b,$0b
+				db -4
+Unknown_cee12:	db $bf,$04, $c0,$04, $c1,$04
+				db -4
+Unknown_cee19:	db $c2,$20, $c2,$20
+				db -4
+Unknown_cee1e:	db $4b,$02, $4c,$02, $4d,$20, $4d,$20, $4d,$20, $4f,$01, $50,$01, $51,$01, $52,$02, $fd,$02, $52,$02, $fd,$02, $52,$02, $fd,$02, $52,$02
+				db -4
+Unknown_cee3d:	db $4b,$c2, $4c,$c2, $4d,$e0, $4d,$e0, $4d,$e0, $4f,$c1, $50,$c1, $51,$c1, $52,$c2, $fd,$02, $52,$c2, $fd,$02, $52,$c2, $fd,$02, $52,$c2
+				db -4
+Unknown_cee5c:	db $c3,$01, $c3,$c1
+				db -2
+Unknown_cee61:	db $c4,$20
+				db -1
+Unknown_cee64:	db $c5,$04, $c6,$04, $c7,$04
+				db -4
+Unknown_cee6b:	db $c8,$01, $c8,$41
+				db -2
+Unknown_cee70:	db $c9,$03, $05,$03
+				db -4
+Unknown_cee75:	db $ca,$20, $cb,$03, $ca,$03, $cb,$03
+				db -2
+Unknown_cee7e:	db $03,$a0
+				db -1
+Unknown_cee81:	db $cc,$20
+				db -1
+Unknown_cee84:	db $7f,$02, $25,$02, $80,$02, $25,$02
+				db -2
+Unknown_cee8d:	db $cd,$04, $ce,$04, $cd,$c4, $ce,$c4
+				db -2
+Unknown_cee96:	db $cf,$04, $d0,$04, $d1,$04, $d2,$04
+				db -4
+Unknown_cee9f:	db $d3,$20
+				db -1
+Unknown_ceea2:	db $d4,$08
+				db -1
+Unknown_ceea5:	db $d5,$08
+				db -1
+Unknown_ceea8:	db $d6,$08
+				db -1
+Unknown_ceeab:	db $d7,$08
+				db -1
+; ceeae
--- /dev/null
+++ b/battle/objects/functions.asm
@@ -1,0 +1,4260 @@
+DoBattleAnimFrame: ; ccfbe
+	ld hl, BATTLEANIMSTRUCT_FUNCTION
+	add hl, bc
+	ld e, [hl]
+	ld d, 0
+	ld hl, .Jumptable
+	add hl, de
+	add hl, de
+	ld a, [hli]
+	ld h, [hl]
+	ld l, a
+	jp [hl]
+; ccfce
+
+.Jumptable: ; ccfce (33:4fce)
+	dw BattleAnimFunction_00 ; 00
+	dw BattleAnimFunction_01 ; 01
+	dw BattleAnimFunction_02 ; 02
+	dw BattleAnimFunction_03 ; 03
+	dw BattleAnimFunction_04 ; 04
+	dw BattleAnimFunction_05 ; 05
+	dw BattleAnimFunction_06 ; 06
+	dw BattleAnimFunction_07 ; 07
+	dw BattleAnimFunction_08 ; 08
+	dw BattleAnimFunction_09 ; 09
+	dw BattleAnimFunction_0A ; 0a
+	dw BattleAnimFunction_0B ; 0b
+	dw BattleAnimFunction_0C ; 0c
+	dw BattleAnimFunction_0D ; 0d
+	dw BattleAnimFunction_0E ; 0e
+	dw BattleAnimFunction_0F ; 0f
+	dw BattleAnimFunction_10 ; 10
+	dw BattleAnimFunction_11 ; 11
+	dw BattleAnimFunction_12 ; 12
+	dw BattleAnimFunction_13 ; 13
+	dw BattleAnimFunction_14 ; 14
+	dw BattleAnimFunction_15 ; 15
+	dw BattleAnimFunction_16 ; 16
+	dw BattleAnimFunction_17 ; 17
+	dw BattleAnimFunction_18 ; 18
+	dw BattleAnimFunction_19 ; 19
+	dw BattleAnimFunction_1A ; 1a
+	dw BattleAnimFunction_1B ; 1b
+	dw BattleAnimFunction_1C ; 1c
+	dw BattleAnimFunction_1D ; 1d
+	dw BattleAnimFunction_1E ; 1e
+	dw BattleAnimFunction_1F ; 1f
+	dw BattleAnimFunction_20 ; 20
+	dw BattleAnimFunction_21 ; 21
+	dw BattleAnimFunction_22 ; 22
+	dw BattleAnimFunction_23 ; 23
+	dw BattleAnimFunction_24 ; 24
+	dw BattleAnimFunction_25 ; 25
+	dw BattleAnimFunction_26 ; 26
+	dw BattleAnimFunction_27 ; 27
+	dw BattleAnimFunction_28 ; 28
+	dw BattleAnimFunction_29 ; 29
+	dw BattleAnimFunction_2A ; 2a
+	dw BattleAnimFunction_2B ; 2b
+	dw BattleAnimFunction_2C ; 2c
+	dw BattleAnimFunction_2D ; 2d
+	dw BattleAnimFunction_2E ; 2e
+	dw BattleAnimFunction_2F ; 2f
+	dw BattleAnimFunction_30 ; 30
+	dw BattleAnimFunction_31 ; 31
+	dw BattleAnimFunction_32 ; 32
+	dw BattleAnimFunction_33 ; 33
+	dw BattleAnimFunction_34 ; 34
+	dw BattleAnimFunction_35 ; 35
+	dw BattleAnimFunction_36 ; 36
+	dw BattleAnimFunction_37 ; 37
+	dw BattleAnimFunction_38 ; 38
+	dw BattleAnimFunction_39 ; 39
+	dw BattleAnimFunction_3A ; 3a
+	dw BattleAnimFunction_3B ; 3b
+	dw BattleAnimFunction_3C ; 3c
+	dw BattleAnimFunction_3D ; 3d
+	dw BattleAnimFunction_3E ; 3e
+	dw BattleAnimFunction_3F ; 3f
+	dw BattleAnimFunction_40 ; 40
+	dw BattleAnimFunction_41 ; 41
+	dw BattleAnimFunction_42 ; 42
+	dw BattleAnimFunction_43 ; 43
+	dw BattleAnimFunction_44 ; 44
+	dw BattleAnimFunction_45 ; 45
+	dw BattleAnimFunction_46 ; 46
+	dw BattleAnimFunction_47 ; 47
+	dw BattleAnimFunction_48 ; 48
+	dw BattleAnimFunction_49 ; 49
+	dw BattleAnimFunction_4A ; 4a
+	dw BattleAnimFunction_4B ; 4b
+	dw BattleAnimFunction_4C ; 4c
+	dw BattleAnimFunction_4D ; 4d
+	dw BattleAnimFunction_4E ; 4e
+	dw BattleAnimFunction_4F ; 4f
+
+BattleAnimFunction_00: ; cd06e (33:506e)
+	call BattleAnim_AnonJumptable
+.anon_jumptable
+	dw .zero
+	dw .one
+
+.one: ; cd075 (33:5075)
+	call DeinitBattleAnimation
+
+.zero: ; cd078 (33:5078)
+	ret
+
+BattleAnimFunction_06: ; cd079 (33:5079)
+	call BattleAnimFunction_05
+	ret c
+	call DeinitBattleAnimation
+	ret
+
+BattleAnimFunction_05: ; cd081 (33:5081)
+	ld hl, BATTLEANIMSTRUCT_07
+	add hl, bc
+	ld a, [hl]
+	cp $88
+	ret nc
+	add $2
+	ld [hl], a
+	ld hl, BATTLEANIMSTRUCT_08
+	add hl, bc
+	dec [hl]
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	ld a, [hl]
+	dec [hl]
+	ld hl, BATTLEANIMSTRUCT_0B
+	add hl, bc
+	ld d, [hl]
+	call BattleAnim_Sine
+	ld hl, BATTLEANIMSTRUCT_0A
+	add hl, bc
+	ld [hl], a
+	scf
+	ret
+
+BattleAnimFunction_04: ; cd0a6 (33:50a6)
+	ld hl, BATTLEANIMSTRUCT_07
+	add hl, bc
+	ld a, [hl]
+	cp $88
+	jr c, .asm_cd0b3
+	call DeinitBattleAnimation
+	ret
+
+.asm_cd0b3
+	add $2
+	ld [hl], a
+	ld hl, BATTLEANIMSTRUCT_08
+	add hl, bc
+	dec [hl]
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	ld a, [hl]
+rept 4
+	inc [hl]
+endr
+	ld d, $10
+	push af
+	push de
+	call BattleAnim_Sine
+	ld hl, BATTLEANIMSTRUCT_0A
+	add hl, bc
+	ld [hl], a
+	pop de
+	pop af
+	call BattleAnim_Cosine
+	ld hl, BATTLEANIMSTRUCT_09
+	add hl, bc
+	sra a
+	sra a
+	sra a
+	sra a
+	ld [hl], a
+	ret
+
+BattleAnimFunction_03: ; cd0e3 (33:50e3)
+	call BattleAnim_AnonJumptable
+.anon_jumptable
+	dw .zero
+	dw .one
+
+.zero: ; cd0ea (33:50ea)
+	call BattleAnim_IncAnonJumptableIndex
+	ld hl, BATTLEANIMSTRUCT_0B
+	add hl, bc
+	bit 7, [hl]
+	ld a, $0
+	jr z, .asm_cd0f9
+	ld a, $20
+.asm_cd0f9
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	ld [hl], a
+	ld hl, BATTLEANIMSTRUCT_0B
+	add hl, bc
+	ld a, [hl]
+	and $7f
+	ld [hl], a
+
+.one: ; cd106 (33:5106)
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	ld a, [hl]
+	ld hl, BATTLEANIMSTRUCT_0B
+	add hl, bc
+	ld d, [hl]
+	push af
+	push de
+	call BattleAnim_Sine
+	ld hl, BATTLEANIMSTRUCT_0A
+	add hl, bc
+	ld [hl], a
+	pop de
+	pop af
+	call BattleAnim_Cosine
+	ld hl, BATTLEANIMSTRUCT_09
+	add hl, bc
+	ld [hl], a
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	inc [hl]
+	ret
+
+BattleAnimFunction_01: ; cd12a (33:512a)
+	call BattleAnim_AnonJumptable
+.anon_jumptable
+	dw .zero
+	dw .one
+
+.one: ; cd131 (33:5131)
+	call DeinitBattleAnimation
+	ret
+
+.zero: ; cd135 (33:5135)
+	ld hl, BATTLEANIMSTRUCT_07
+	add hl, bc
+	ld a, [hl]
+	cp $84
+	ret nc
+	ld hl, BATTLEANIMSTRUCT_0B
+	add hl, bc
+	ld a, [hl]
+	call Functionce70a
+	ret
+
+BattleAnimFunction_02: ; cd146 (33:5146)
+	ld hl, BATTLEANIMSTRUCT_07
+	add hl, bc
+	ld a, [hl]
+	cp $84
+	jr nc, .asm_cd158
+	ld hl, BATTLEANIMSTRUCT_0B
+	add hl, bc
+	ld a, [hl]
+	call Functionce70a
+	ret
+
+.asm_cd158
+	call DeinitBattleAnimation
+	ret
+
+BattleAnimFunction_12: ; cd15c (33:515c)
+	call BattleAnim_AnonJumptable
+.anon_jumptable
+	dw .zero
+	dw .one
+	dw .two
+	dw .three
+	dw .four
+	dw .five
+	dw .six
+	dw .seven
+	dw .eight
+	dw .nine
+	dw .ten
+	dw .eleven
+
+.zero: ; cd177 (33:5177)
+	call GetBallAnimFunction
+	call BattleAnim_IncAnonJumptableIndex
+	ret
+
+.one: ; cd17e (33:517e)
+	call BattleAnimFunction_05
+	ret c
+	ld hl, BATTLEANIMSTRUCT_0A
+	add hl, bc
+	ld a, [hl]
+	ld hl, BATTLEANIMSTRUCT_08
+	add hl, bc
+	add [hl]
+	ld [hl], a
+	ld a, $b
+	call ReinitBattleAnimFrameset
+	call BattleAnim_IncAnonJumptableIndex
+	ret
+
+.three: ; cd196 (33:5196)
+	call BattleAnim_IncAnonJumptableIndex
+	ld a, $9
+	call ReinitBattleAnimFrameset
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	ld [hl], $0
+	inc hl
+	ld [hl], $10
+
+.four: ; cd1a7 (33:51a7)
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	ld a, [hli]
+	ld d, [hl]
+	call BattleAnim_Sine
+	ld hl, BATTLEANIMSTRUCT_0A
+	add hl, bc
+	ld [hl], a
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	ld a, [hl]
+	dec a
+	ld [hl], a
+	and $1f
+	ret nz
+	ld [hl], a
+	ld hl, BATTLEANIMSTRUCT_10
+	ADD HL, BC
+	ld a, [hl]
+	sub $4
+	ld [hl], a
+	ret nz
+	ld a, $c
+	call ReinitBattleAnimFrameset
+	call BattleAnim_IncAnonJumptableIndex
+	ret
+
+.six: ; cd1d2 (33:51d2)
+	ld a, $d
+	call ReinitBattleAnimFrameset
+	ld hl, BATTLEANIMSTRUCT_ANON_JT_INDEX
+	add hl, bc
+	dec [hl]
+.two
+.five
+.nine
+	ret
+
+.seven: ; cd1dd (33:51dd)
+	call GetBallAnimFunction
+	ld a, $a
+	call ReinitBattleAnimFrameset
+	call BattleAnim_IncAnonJumptableIndex
+	ld hl, BATTLEANIMSTRUCT_10
+	ADD HL, BC
+	ld [hl], $20
+.eight
+.ten
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	ld a, [hli]
+	ld d, [hl]
+	call BattleAnim_Sine
+	ld hl, BATTLEANIMSTRUCT_0A
+	add hl, bc
+	ld [hl], a
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	ld a, [hl]
+	dec a
+	ld [hl], a
+	and $1f
+	jr z, .eleven
+	and $f
+	ret nz
+	call BattleAnim_IncAnonJumptableIndex
+	ret
+
+.eleven: ; cd20e (33:520e)
+	call DeinitBattleAnimation
+	ret
+
+BattleAnimFunction_13: ; cd212 (33:5212)
+	call BattleAnim_AnonJumptable
+.anon_jumptable
+	dw .zero
+	dw .one
+	dw .two
+
+.zero: ; cd21b (33:521b)
+	call GetBallAnimFunction
+	call BattleAnim_IncAnonJumptableIndex
+	ret
+
+.one: ; cd222 (33:5222)
+	ld hl, BATTLEANIMSTRUCT_07
+	add hl, bc
+	ld a, [hl]
+	cp $70
+	jr nc, .next
+	call BattleAnimFunction_05
+	ret
+
+.next
+	call BattleAnim_IncAnonJumptableIndex
+.two: ; cd232 (33:5232)
+	ld hl, BATTLEANIMSTRUCT_08
+	add hl, bc
+	ld a, [hl]
+	cp $80
+	jr nc, .done
+	add $4
+	ld [hl], a
+	ld hl, BATTLEANIMSTRUCT_07
+	add hl, bc
+	dec [hl]
+	dec [hl]
+	ret
+
+.done
+	call DeinitBattleAnimation
+	ret
+
+GetBallAnimFunction: ; cd249 (33:5249)
+	ld hl, .balls
+	ld a, [rSVBK]
+	push af
+	ld a, $1
+	ld [rSVBK], a
+	ld a, [CurItem] ; CurItem
+	ld e, a
+	pop af
+	ld [rSVBK], a
+.IsInArray
+	ld a, [hli]
+	cp -1
+	jr z, .load
+	cp e
+	jr z, .load
+	inc hl
+	jr .IsInArray
+
+.load
+	ld a, [hl]
+	ld hl, BATTLEANIMSTRUCT_05
+	add hl, bc
+	ld [hl], a
+	ret
+; cd26c (33:526c)
+
+.balls: ; cd26c
+	db MASTER_BALL, 5
+	db ULTRA_BALL,  3
+	db GREAT_BALL,  6
+	db POKE_BALL,   4
+	db HEAVY_BALL,  2
+	db LEVEL_BALL,  7
+	db LURE_BALL,   6
+	db FAST_BALL,   6
+	db FRIEND_BALL, 3
+	db MOON_BALL,   2
+	db LOVE_BALL,   4
+	db -1,          2
+; cd284
+
+BattleAnimFunction_10: ; cd284 (33:5284)
+	call BattleAnim_AnonJumptable
+.anon_jumptable
+	dw Functioncd291
+	dw Functioncd2a0
+	dw Functioncd2b1
+	dw Functioncd2b5
+	dw Functioncd2bd
+
+Functioncd291: ; cd291 (33:5291)
+	ld hl, BATTLEANIMSTRUCT_0B
+	add hl, bc
+	ld a, [hl]
+	swap a
+	and $f
+	ld hl, BATTLEANIMSTRUCT_ANON_JT_INDEX
+	add hl, bc
+	ld [hl], a
+	ret
+
+Functioncd2a0: ; cd2a0 (33:52a0)
+	ld hl, BATTLEANIMSTRUCT_07
+	add hl, bc
+	ld a, [hl]
+	cp $88
+	ret nc
+	ld hl, BATTLEANIMSTRUCT_0B
+	add hl, bc
+	ld a, [hl]
+	call Functionce70a
+	ret
+
+Functioncd2b1: ; cd2b1 (33:52b1)
+	call DeinitBattleAnimation
+	ret
+
+Functioncd2b5: ; cd2b5 (33:52b5)
+	call BattleAnim_IncAnonJumptableIndex
+	ld a, $f
+	call ReinitBattleAnimFrameset
+
+Functioncd2bd: ; cd2bd (33:52bd)
+	ret
+
+BattleAnimFunction_07: ; cd2be (33:52be)
+	call BattleAnim_AnonJumptable
+.anon_jumptable
+	dw Functioncd2c5
+	dw Functioncd2d1
+
+Functioncd2c5: ; cd2c5 (33:52c5)
+	call BattleAnim_IncAnonJumptableIndex
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	ld [hl], $30
+	inc hl
+	ld [hl], $48
+
+Functioncd2d1: ; cd2d1 (33:52d1)
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	ld a, [hli]
+	ld d, [hl]
+	call BattleAnim_Sine
+	ld hl, BATTLEANIMSTRUCT_0A
+	add hl, bc
+	ld [hl], a
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	inc [hl]
+	ld a, [hl]
+	and $3f
+	ret nz
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	ld [hl], $20
+	ld hl, BATTLEANIMSTRUCT_10
+	ADD HL, BC
+	ld a, [hl]
+	ld hl, BATTLEANIMSTRUCT_0B
+	add hl, bc
+	sub [hl]
+	jr z, .asm_cd302
+	jr c, .asm_cd302
+	ld hl, BATTLEANIMSTRUCT_10
+	ADD HL, BC
+	ld [hl], a
+	ret
+
+.asm_cd302
+	call DeinitBattleAnimation
+	ret
+
+BattleAnimFunction_08: ; cd306 (33:5306)
+	call BattleAnim_AnonJumptable
+.anon_jumptable
+	dw Functioncd311
+	dw Functioncd321
+	dw Functioncd32a
+	dw Functioncd37d
+
+Functioncd311: ; cd311 (33:5311)
+	ld hl, BATTLEANIMSTRUCT_07
+	add hl, bc
+	ld a, [hl]
+	cp $80
+	jr nc, .asm_cd31e
+	call Functioncd38e
+	ret
+
+.asm_cd31e
+	call BattleAnim_IncAnonJumptableIndex
+
+Functioncd321: ; cd321 (33:5321)
+	call BattleAnim_IncAnonJumptableIndex
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	ld [hl], $0
+
+Functioncd32a: ; cd32a (33:532a)
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	ld a, [hl]
+	cp $40
+	jr nc, .asm_cd363
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	ld a, [hl]
+	ld d, $18
+	call BattleAnim_Cosine
+	sub $18
+	sra a
+	ld hl, BATTLEANIMSTRUCT_0A
+	add hl, bc
+	ld [hl], a
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	ld a, [hl]
+	ld d, $18
+	call BattleAnim_Sine
+	ld hl, BATTLEANIMSTRUCT_09
+	add hl, bc
+	ld [hl], a
+	ld hl, BATTLEANIMSTRUCT_0B
+	add hl, bc
+	ld a, [hl]
+	and $f
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	add [hl]
+	ld [hl], a
+	ret
+
+.asm_cd363
+	ld hl, BATTLEANIMSTRUCT_0B
+	add hl, bc
+	ld a, [hl]
+	and $f0
+	jr z, .asm_cd37a
+	sub $10
+	ld d, a
+	ld a, [hl]
+	and $f
+	or d
+	ld [hl], a
+	ld hl, BATTLEANIMSTRUCT_ANON_JT_INDEX
+	add hl, bc
+	dec [hl]
+	ret
+
+.asm_cd37a
+	call BattleAnim_IncAnonJumptableIndex
+
+Functioncd37d: ; cd37d (33:537d)
+	ld hl, BATTLEANIMSTRUCT_07
+	add hl, bc
+	ld a, [hl]
+	cp $b0
+	jr c, .asm_cd38a
+	call DeinitBattleAnimation
+	ret
+
+.asm_cd38a
+	call Functioncd38e
+	ret
+
+Functioncd38e: ; cd38e (33:538e)
+	ld hl, BATTLEANIMSTRUCT_0B
+	add hl, bc
+	ld a, [hl]
+	and $f
+	ld hl, BATTLEANIMSTRUCT_07
+	add hl, bc
+	add [hl]
+	ld [hl], a
+	ld hl, BATTLEANIMSTRUCT_0B
+	add hl, bc
+	ld a, [hl]
+	and $f
+	ld e, a
+	srl e
+	ld hl, BATTLEANIMSTRUCT_08
+	add hl, bc
+.asm_cd3a9
+	dec [hl]
+	dec e
+	jr nz, .asm_cd3a9
+	ret
+
+BattleAnimFunction_09: ; cd3ae (33:53ae)
+	call BattleAnim_AnonJumptable
+.anon_jumptable
+	dw Functioncd3b7
+	dw Functioncd3cc
+	dw Functioncd3ee
+
+Functioncd3b7: ; cd3b7 (33:53b7)
+	call BattleAnim_IncAnonJumptableIndex
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	ld [hl], $0
+	ld hl, BATTLEANIMSTRUCT_0B
+	add hl, bc
+	ld a, [hl]
+	and $f
+	ld hl, BATTLEANIMSTRUCT_09
+	add hl, bc
+	ld [hl], a
+
+Functioncd3cc: ; cd3cc (33:53cc)
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	ld a, [hl]
+	and a
+	jr z, .asm_cd3d6
+	dec [hl]
+	ret
+
+.asm_cd3d6
+	ld hl, BATTLEANIMSTRUCT_0B
+	add hl, bc
+	ld a, [hl]
+	swap a
+	and $f
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	ld [hl], a
+	ld hl, BATTLEANIMSTRUCT_09
+	add hl, bc
+	ld a, [hl]
+	xor $ff
+	inc a
+	ld [hl], a
+	ret
+
+Functioncd3ee: ; cd3ee (33:53ee)
+	call DeinitBattleAnimation
+	ret
+
+BattleAnimFunction_0A: ; cd3f2 (33:53f2)
+	call BattleAnim_AnonJumptable
+.anon_jumptable
+	dw Functioncd409
+	dw Functioncd45c
+	dw Functioncd467
+	dw Functioncd472
+	dw Functioncd462
+	dw Functioncd46d
+	dw Functioncd477
+	dw Functioncd41d
+	dw Functioncd437
+	dw Functioncd458
+
+Functioncd409: ; cd409 (33:5409)
+	ld hl, BATTLEANIMSTRUCT_0B
+	add hl, bc
+	ld a, [hl]
+	ld hl, BATTLEANIMSTRUCT_ANON_JT_INDEX
+	add hl, bc
+	ld [hl], a
+	cp $7
+	jr z, Functioncd41d
+	ld a, $11
+	call ReinitBattleAnimFrameset
+	ret
+
+Functioncd41d: ; cd41d (33:541d)
+	ld hl, BATTLEANIMSTRUCT_07
+	add hl, bc
+	ld a, [hl]
+	cp $88
+	jr nc, .asm_cd42f
+	add $2
+	ld [hl], a
+	ld hl, BATTLEANIMSTRUCT_08
+	add hl, bc
+	dec [hl]
+	ret
+
+.asm_cd42f
+	call BattleAnim_IncAnonJumptableIndex
+	ld a, $10
+	call ReinitBattleAnimFrameset
+
+Functioncd437: ; cd437 (33:5437)
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	ld a, [hl]
+	ld d, $10
+	push af
+	push de
+	call BattleAnim_Sine
+	ld hl, BATTLEANIMSTRUCT_0A
+	add hl, bc
+	ld [hl], a
+	pop de
+	pop af
+	call BattleAnim_Cosine
+	ld hl, BATTLEANIMSTRUCT_09
+	add hl, bc
+	ld [hl], a
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	inc [hl]
+	ret
+
+Functioncd458: ; cd458 (33:5458)
+	call DeinitBattleAnimation
+	ret
+
+Functioncd45c: ; cd45c (33:545c)
+	ld hl, BATTLEANIMSTRUCT_0A
+	add hl, bc
+	dec [hl]
+	ret
+
+Functioncd462: ; cd462 (33:5462)
+	ld hl, BATTLEANIMSTRUCT_0A
+	add hl, bc
+	inc [hl]
+
+Functioncd467: ; cd467 (33:5467)
+	ld hl, BATTLEANIMSTRUCT_09
+	add hl, bc
+	dec [hl]
+	ret
+
+Functioncd46d: ; cd46d (33:546d)
+	ld hl, BATTLEANIMSTRUCT_0A
+	add hl, bc
+	inc [hl]
+
+Functioncd472: ; cd472 (33:5472)
+	ld hl, BATTLEANIMSTRUCT_09
+	add hl, bc
+	inc [hl]
+
+Functioncd477: ; cd477 (33:5477)
+	ret
+
+BattleAnimFunction_0B: ; cd478 (33:5478)
+	call BattleAnim_AnonJumptable
+.anon_jumptable
+	dw Functioncd48d
+	dw Functioncd496
+	dw Functioncd4ee
+	dw Functioncd53a
+	dw Functioncd545
+	dw Functioncd545
+	dw Functioncd545
+	dw Functioncd545
+	dw Functioncd549
+
+Functioncd48d: ; cd48d (33:548d)
+	call BattleAnim_IncAnonJumptableIndex
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	ld [hl], $40
+
+Functioncd496: ; cd496 (33:5496)
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	ld a, [hl]
+	cp $30
+	jr nc, .asm_cd4bc
+	call BattleAnim_IncAnonJumptableIndex
+	xor a
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	ld [hli], a
+	ld [hl], a
+	ld a, $17
+	call ReinitBattleAnimFrameset
+	ld hl, BATTLEANIMSTRUCT_0B
+	add hl, bc
+	bit 6, [hl]
+	ret z
+	ld hl, BATTLEANIMSTRUCT_FRAME
+	add hl, bc
+	ld [hl], $5
+	ret
+
+.asm_cd4bc
+	ld hl, BATTLEANIMSTRUCT_0B
+	add hl, bc
+	ld a, [hl]
+	and $3f
+	ld d, a
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	ld a, [hl]
+	dec [hl]
+	call BattleAnim_Sine
+	ld hl, BATTLEANIMSTRUCT_0A
+	add hl, bc
+	ld [hl], a
+	call Functioncd557
+	ld hl, BATTLEANIMSTRUCT_10
+	ADD HL, BC
+	ld a, [hl]
+	ld hl, BATTLEANIMSTRUCT_07
+	add hl, bc
+	ld h, [hl]
+	ld l, a
+	add hl, de
+	ld e, l
+	ld d, h
+	ld hl, BATTLEANIMSTRUCT_07
+	add hl, bc
+	ld [hl], d
+	ld hl, BATTLEANIMSTRUCT_10
+	ADD HL, BC
+	ld [hl], e
+	ret
+
+Functioncd4ee: ; cd4ee (33:54ee)
+	ld hl, BATTLEANIMSTRUCT_0A
+	add hl, bc
+	ld a, [hl]
+	cp $20
+	jr nz, .asm_cd4fb
+	call DeinitBattleAnimation
+	ret
+
+.asm_cd4fb
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	ld a, [hl]
+	ld d, $10
+	call BattleAnim_Sine
+	ld hl, BATTLEANIMSTRUCT_09
+	add hl, bc
+	ld [hl], a
+	ld hl, BATTLEANIMSTRUCT_0B
+	add hl, bc
+	bit 6, [hl]
+	jr nz, .asm_cd519
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	inc [hl]
+	jr .asm_cd51e
+
+.asm_cd519
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	dec [hl]
+.asm_cd51e
+	ld de, $80
+	ld hl, BATTLEANIMSTRUCT_10
+	ADD HL, BC
+	ld a, [hl]
+	ld hl, BATTLEANIMSTRUCT_0A
+	add hl, bc
+	ld h, [hl]
+	ld l, a
+	add hl, de
+	ld e, l
+	ld d, h
+	ld hl, BATTLEANIMSTRUCT_0A
+	add hl, bc
+	ld [hl], d
+	ld hl, BATTLEANIMSTRUCT_10
+	ADD HL, BC
+	ld [hl], e
+	ret
+
+Functioncd53a: ; cd53a (33:553a)
+	ld a, $16
+	call ReinitBattleAnimFrameset
+	ld hl, BATTLEANIMSTRUCT_01
+	add hl, bc
+	res 5, [hl]
+
+Functioncd545: ; cd545 (33:5545)
+	call BattleAnim_IncAnonJumptableIndex
+	ret
+
+Functioncd549: ; cd549 (33:5549)
+	ld hl, BATTLEANIMSTRUCT_07
+	add hl, bc
+	ld a, [hl]
+	cp $c0
+	ret nc
+	ld a, $8
+	call Functionce70a
+	ret
+
+Functioncd557: ; cd557 (33:5557)
+	ld hl, BATTLEANIMSTRUCT_0B
+	add hl, bc
+	ld a, [hl]
+	bit 7, a
+	jr nz, .negative
+	cp $20
+	jr nc, .plus_256
+	cp $18
+	jr nc, .plus_384
+	ld de, $200
+	ret
+
+.plus_384
+	ld de, $180
+	ret
+
+.plus_256
+	ld de, $100
+	ret
+
+.negative
+	and $3f
+	cp $20
+	jr nc, .minus_256
+	cp $18
+	jr nc, .minus_384
+	ld de, -$200
+	ret
+
+.minus_384
+	ld de, -$180
+	ret
+
+.minus_256
+	ld de, -$100
+	ret
+
+BattleAnimFunction_4E: ; cd58a (33:558a)
+	call BattleAnim_AnonJumptable
+.anon_jumptable
+	dw Functioncd591
+	dw Functioncd5aa
+
+Functioncd591: ; cd591 (33:5591)
+	ld hl, BATTLEANIMSTRUCT_0B
+	add hl, bc
+	ld a, [hl]
+	and $40
+	rlca
+	rlca
+	add $19
+	ld hl, BATTLEANIMSTRUCT_FRAMESET_ID
+	add hl, bc
+	ld [hl], a
+	call BattleAnim_IncAnonJumptableIndex
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	ld [hl], $40
+Functioncd5aa: ; cd5aa (33:55aa)
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	ld a, [hl]
+	cp $30
+	jr nc, .asm_cd5b7
+	call DeinitBattleAnimation
+	ret
+
+.asm_cd5b7
+	ld hl, BATTLEANIMSTRUCT_0B
+	add hl, bc
+	ld a, [hl]
+	and $3f
+	ld d, a
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	ld a, [hl]
+	dec [hl]
+	call BattleAnim_Sine
+	ld hl, BATTLEANIMSTRUCT_0A
+	add hl, bc
+	ld [hl], a
+	call Functioncd557
+	ld hl, BATTLEANIMSTRUCT_10
+	ADD HL, BC
+	ld a, [hl]
+	ld hl, BATTLEANIMSTRUCT_07
+	add hl, bc
+	ld h, [hl]
+	ld l, a
+	add hl, de
+	ld e, l
+	ld d, h
+	ld hl, BATTLEANIMSTRUCT_07
+	add hl, bc
+	ld [hl], d
+	ld hl, BATTLEANIMSTRUCT_10
+	ADD HL, BC
+	ld [hl], e
+	ret
+
+BattleAnimFunction_0C: ; cd5e9 (33:55e9)
+	call BattleAnim_AnonJumptable
+.anon_jumptable
+	dw Functioncd5f2
+	dw Functioncd5fb
+	dw Functioncd61b
+
+Functioncd5f2: ; cd5f2 (33:55f2)
+	call BattleAnim_IncAnonJumptableIndex
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	ld [hl], $c
+
+Functioncd5fb: ; cd5fb (33:55fb)
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	ld a, [hl]
+	and a
+	jr z, .asm_cd60d
+	dec [hl]
+	ld hl, BATTLEANIMSTRUCT_0B
+	add hl, bc
+	ld a, [hl]
+	call Functionce70a
+	ret
+
+.asm_cd60d
+	call BattleAnim_IncAnonJumptableIndex
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	ld [hl], $0
+	ld a, $22
+	call ReinitBattleAnimFrameset
+
+Functioncd61b: ; cd61b (33:561b)
+	ld hl, BATTLEANIMSTRUCT_07
+	add hl, bc
+	ld a, [hl]
+	cp $98
+	jr nc, .asm_cd63f
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	ld a, [hl]
+	ld hl, BATTLEANIMSTRUCT_07
+	add hl, bc
+	ld h, [hl]
+	ld l, a
+	ld de, $60
+	add hl, de
+	ld e, l
+	ld d, h
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	ld [hl], e
+	ld hl, BATTLEANIMSTRUCT_07
+	add hl, bc
+	ld [hl], d
+.asm_cd63f
+	ld hl, BATTLEANIMSTRUCT_08
+	add hl, bc
+	ld a, [hl]
+	cp $20
+	ret c
+	ld hl, BATTLEANIMSTRUCT_0B
+	add hl, bc
+	ld a, [hl]
+	and $f0
+	ld e, a
+	ld d, $ff
+	ld hl, BATTLEANIMSTRUCT_10
+	ADD HL, BC
+	ld a, [hl]
+	ld hl, BATTLEANIMSTRUCT_08
+	add hl, bc
+	ld h, [hl]
+	ld l, a
+	add hl, de
+	ld e, l
+	ld d, h
+	ld hl, BATTLEANIMSTRUCT_10
+	ADD HL, BC
+	ld [hl], e
+	ld hl, BATTLEANIMSTRUCT_08
+	add hl, bc
+	ld [hl], d
+	ret
+
+BattleAnimFunction_0D: ; cd66a (33:566a)
+	call BattleAnim_AnonJumptable
+.anon_jumptable
+	dw Functioncd677
+	dw Functioncd687
+	dw Functioncd6c5
+	dw Functioncd6c6
+	dw Functioncd6d6
+
+Functioncd677: ; cd677 (33:5677)
+	call BattleAnim_IncAnonJumptableIndex
+	ld a, $42
+	ld [hLCDStatCustom], a
+	ld a, $58
+	ld [hLCDStatCustom + 1], a
+	ld a, $5e
+	ld [hLCDStatCustom + 2], a
+	ret
+
+Functioncd687: ; cd687 (33:5687)
+	ld hl, BATTLEANIMSTRUCT_0B
+	add hl, bc
+	ld e, [hl]
+	ld hl, BATTLEANIMSTRUCT_08
+	add hl, bc
+	ld a, [hl]
+	cp e
+	jr nc, .asm_cd69b
+	call BattleAnim_IncAnonJumptableIndex
+	xor a
+	ld [hLCDStatCustom + 1], a
+	ret
+
+.asm_cd69b
+	dec a
+	ld [hl], a
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	ld a, [hl]
+	ld d, $10
+	call BattleAnim_Sine
+	ld hl, BATTLEANIMSTRUCT_0A
+	add hl, bc
+	ld [hl], a
+	ld hl, BATTLEANIMSTRUCT_08
+	add hl, bc
+	add [hl]
+	sub $10
+	ret c
+	ld [hLCDStatCustom + 1], a
+	ld hl, BATTLEANIMSTRUCT_09
+	add hl, bc
+	ld a, [hl]
+	inc a
+	and $7
+	ld [hl], a
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	inc [hl]
+	inc [hl]
+Functioncd6c5: ; cd6c5 (33:56c5)
+	ret
+
+Functioncd6c6: ; cd6c6 (33:56c6)
+	ld hl, BATTLEANIMSTRUCT_08
+	add hl, bc
+	ld a, [hl]
+	cp $70
+	jr c, asm_cd6da
+	xor a
+	ld [hLCDStatCustom], a
+	ld [hLCDStatCustom + 1], a
+	ld [hLCDStatCustom + 2], a
+
+Functioncd6d6: ; cd6d6 (33:56d6)
+	call DeinitBattleAnimation
+	ret
+
+asm_cd6da: ; cd6da (33:56da)
+	inc a
+	inc a
+	ld [hl], a
+	sub $10
+	ret c
+	ld [hLCDStatCustom + 1], a
+	ret
+
+BattleAnimFunction_0E: ; cd6e3 (33:56e3)
+	call BattleAnim_AnonJumptable
+.anon_jumptable
+	dw Functioncd6ea
+	dw Functioncd6f7
+
+Functioncd6ea: ; cd6ea (33:56ea)
+	call BattleAnim_IncAnonJumptableIndex
+	ld hl, BATTLEANIMSTRUCT_0B
+	add hl, bc
+	ld a, $24
+	add [hl]
+	call ReinitBattleAnimFrameset
+
+Functioncd6f7: ; cd6f7 (33:56f7)
+	ld hl, BATTLEANIMSTRUCT_07
+	add hl, bc
+	ld a, [hl]
+	cp $b8
+	jr c, .asm_cd704
+	call DeinitBattleAnimation
+	ret
+
+.asm_cd704
+	ld a, $2
+	call Functionce70a
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	ld a, [hl]
+	dec [hl]
+	ld d, $8
+	call BattleAnim_Sine
+	ld hl, BATTLEANIMSTRUCT_0A
+	add hl, bc
+	ld [hl], a
+	ret
+
+BattleAnimFunction_0F: ; cd71a (33:571a)
+	call BattleAnim_AnonJumptable
+.anon_jumptable
+	dw Functioncd725
+	dw Functioncd728
+	dw Functioncd763
+	dw Functioncd776
+
+Functioncd725: ; cd725 (33:5725)
+	call BattleAnim_IncAnonJumptableIndex
+
+Functioncd728: ; cd728 (33:5728)
+	ld hl, BATTLEANIMSTRUCT_08
+	add hl, bc
+	ld a, [hl]
+	cp $30
+	jr c, .asm_cd747
+	ld a, $2
+	call Functionce70a
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	ld a, [hl]
+	dec [hl]
+	ld d, $8
+	call BattleAnim_Sine
+	ld hl, BATTLEANIMSTRUCT_0A
+	add hl, bc
+	ld [hl], a
+	ret
+
+.asm_cd747
+	call BattleAnim_IncAnonJumptableIndex
+	ld a, $28
+	call ReinitBattleAnimFrameset
+	ld hl, BATTLEANIMSTRUCT_0A
+	add hl, bc
+	ld [hl], $0
+	ld hl, BATTLEANIMSTRUCT_08
+	add hl, bc
+	ld [hl], $30
+	ld hl, BATTLEANIMSTRUCT_01
+	add hl, bc
+	ld a, [hl]
+	and $1
+	ld [hl], a
+
+Functioncd763: ; cd763 (33:5763)
+	ld hl, BATTLEANIMSTRUCT_0A
+	add hl, bc
+	ld a, [hl]
+	cp $18
+	jr nc, .asm_cd76e
+	inc [hl]
+	ret
+
+.asm_cd76e
+	call BattleAnim_IncAnonJumptableIndex
+	ld a, $29
+	call ReinitBattleAnimFrameset
+
+Functioncd776: ; cd776 (33:5776)
+	ret
+
+BattleAnimFunction_11: ; cd777 (33:5777)
+	ld hl, BATTLEANIMSTRUCT_0A
+	add hl, bc
+	ld a, [hl]
+	cp $38
+	jr c, .asm_cd784
+	call DeinitBattleAnimation
+	ret
+
+.asm_cd784
+	ld a, [hl]
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	ld l, [hl]
+	ld h, a
+	ld de, $80
+	add hl, de
+	ld e, l
+	ld d, h
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	ld [hl], e
+	ld hl, BATTLEANIMSTRUCT_0A
+	add hl, bc
+	ld [hl], d
+	ld hl, BATTLEANIMSTRUCT_09
+	add hl, bc
+	ld a, [hl]
+	xor $10
+	ld [hl], a
+	ret
+
+BattleAnimFunction_14: ; cd7a4 (33:57a4)
+	call BattleAnim_AnonJumptable
+.anon_jumptable
+	dw Functioncd7ab
+	dw Functioncd7d2
+
+Functioncd7ab: ; cd7ab (33:57ab)
+	call BattleAnim_IncAnonJumptableIndex
+	ld hl, BATTLEANIMSTRUCT_0B
+	add hl, bc
+	ld a, [hl]
+	and $f0
+	ld hl, BATTLEANIMSTRUCT_10
+	ADD HL, BC
+	ld [hl], a
+	ld hl, BATTLEANIMSTRUCT_0B
+	add hl, bc
+	ld a, [hl]
+	and $f
+	sla a
+	sla a
+	sla a
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	ld [hl], a
+	ld hl, BATTLEANIMSTRUCT_0B
+	add hl, bc
+	ld [hl], $1
+
+Functioncd7d2: ; cd7d2 (33:57d2)
+	ld hl, BATTLEANIMSTRUCT_10
+	ADD HL, BC
+	ld a, [hl]
+	and a
+	jr nz, .asm_cd7de
+	call DeinitBattleAnimation
+	ret
+
+.asm_cd7de
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	ld a, [hl]
+	inc [hl]
+	ld hl, BATTLEANIMSTRUCT_10
+	ADD HL, BC
+	ld d, [hl]
+	push af
+	push de
+	call BattleAnim_Sine
+	ld hl, BATTLEANIMSTRUCT_0A
+	add hl, bc
+	ld [hl], a
+	pop de
+	pop af
+	call BattleAnim_Cosine
+	ld hl, BATTLEANIMSTRUCT_09
+	add hl, bc
+	ld [hl], a
+	ld hl, BATTLEANIMSTRUCT_0B
+	add hl, bc
+	ld a, [hl]
+	xor $1
+	ld [hl], a
+	ret z
+	ld hl, BATTLEANIMSTRUCT_10
+	ADD HL, BC
+	dec [hl]
+	ret
+
+BattleAnimFunction_15: ; cd80c (33:580c)
+	call BattleAnim_AnonJumptable
+.anon_jumptable
+	dw Functioncd81f
+	dw Functioncd817
+	dw Functioncd81f
+	dw Functioncd820
+
+Functioncd817: ; cd817 (33:5817)
+	call BattleAnim_IncAnonJumptableIndex
+	ld a, $35
+	call ReinitBattleAnimFrameset
+
+Functioncd81f: ; cd81f (33:581f)
+	ret
+
+Functioncd820: ; cd820 (33:5820)
+	call DeinitBattleAnimation
+	ret
+
+BattleAnimFunction_16: ; cd824 (33:5824)
+	call BattleAnim_AnonJumptable
+.anon_jumptable
+	dw Functioncd835
+	dw Functioncd860
+	dw Functioncd88f
+	dw Functioncd88f
+	dw Functioncd88f
+	dw Functioncd88f
+	dw Functioncd893
+
+Functioncd835: ; cd835 (33:5835)
+	call BattleAnim_IncAnonJumptableIndex
+	ld hl, BATTLEANIMSTRUCT_FRAMESET_ID
+	add hl, bc
+	ld a, [hl]
+	ld hl, BATTLEANIMSTRUCT_10
+	ADD HL, BC
+	ld [hl], a
+	ld hl, BATTLEANIMSTRUCT_0B
+	add hl, bc
+	bit 7, [hl]
+	jr nz, .asm_cd852
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	ld [hl], $10
+	jr .asm_cd858
+
+.asm_cd852
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	ld [hl], $30
+.asm_cd858
+	ld hl, BATTLEANIMSTRUCT_0B
+	add hl, bc
+	ld a, [hl]
+	and $7f
+	ld [hl], a
+
+Functioncd860: ; cd860 (33:5860)
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	ld a, [hl]
+	ld hl, BATTLEANIMSTRUCT_0B
+	add hl, bc
+	ld d, [hl]
+	call BattleAnim_Sine
+	ld hl, BATTLEANIMSTRUCT_09
+	add hl, bc
+	ld [hl], a
+	bit 7, a
+	jr nz, .asm_cd87e
+	ld hl, BATTLEANIMSTRUCT_10
+	ADD HL, BC
+	ld a, [hl]
+	inc a
+	jr .asm_cd883
+
+.asm_cd87e
+	ld hl, BATTLEANIMSTRUCT_10
+	ADD HL, BC
+	ld a, [hl]
+.asm_cd883
+	call ReinitBattleAnimFrameset
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	inc [hl]
+	ld a, [hl]
+	and $1f
+	ret nz
+
+Functioncd88f: ; cd88f (33:588f)
+	call BattleAnim_IncAnonJumptableIndex
+	ret
+
+Functioncd893: ; cd893 (33:5893)
+	ld hl, BATTLEANIMSTRUCT_ANON_JT_INDEX
+	add hl, bc
+	ld [hl], $1
+	ret
+
+BattleAnimFunction_17: ; cd89a (33:589a)
+	call BattleAnim_AnonJumptable
+.anon_jumptable
+	dw Functioncd8ab
+	dw Functioncd8cc
+	dw Functioncd8f5
+	dw Functioncd8f5
+	dw Functioncd8f5
+	dw Functioncd8f5
+	dw Functioncd8f9
+
+Functioncd8ab: ; cd8ab (33:58ab)
+	call BattleAnim_IncAnonJumptableIndex
+	ld hl, BATTLEANIMSTRUCT_0B
+	add hl, bc
+	bit 7, [hl]
+	jr nz, .asm_cd8be
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	ld [hl], $10
+	jr .asm_cd8c4
+
+.asm_cd8be
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	ld [hl], $30
+.asm_cd8c4
+	ld hl, BATTLEANIMSTRUCT_0B
+	add hl, bc
+	ld a, [hl]
+	and $7f
+	ld [hl], a
+
+Functioncd8cc: ; cd8cc (33:58cc)
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	ld a, [hl]
+	ld hl, BATTLEANIMSTRUCT_0B
+	add hl, bc
+	ld d, [hl]
+	call BattleAnim_Sine
+	ld hl, BATTLEANIMSTRUCT_0A
+	add hl, bc
+	ld [hl], a
+	bit 7, a
+	jr nz, .asm_cd8e6
+	ld a, $3d
+	jr .asm_cd8e8
+
+.asm_cd8e6
+	ld a, $3c
+.asm_cd8e8
+	call ReinitBattleAnimFrameset
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	inc [hl]
+	inc [hl]
+	ld a, [hl]
+	and $1f
+	ret nz
+
+Functioncd8f5: ; cd8f5 (33:58f5)
+	call BattleAnim_IncAnonJumptableIndex
+	ret
+
+Functioncd8f9: ; cd8f9 (33:58f9)
+	ld hl, BATTLEANIMSTRUCT_ANON_JT_INDEX
+	add hl, bc
+	ld [hl], $1
+	ret
+
+BattleAnimFunction_18: ; cd900 (33:5900)
+	call BattleAnim_AnonJumptable
+.anon_jumptable
+	dw Functioncd907
+	dw Functioncd913
+
+Functioncd907: ; cd907 (33:5907)
+	call BattleAnim_IncAnonJumptableIndex
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	ld [hl], $28
+	inc hl
+	ld [hl], $0
+
+Functioncd913: ; cd913 (33:5913)
+	ld hl, BATTLEANIMSTRUCT_0B
+	add hl, bc
+	ld a, [hl]
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	ld d, [hl]
+	push af
+	push de
+	call BattleAnim_Sine
+	ld hl, BATTLEANIMSTRUCT_0A
+	add hl, bc
+	ld [hl], a
+	pop de
+	pop af
+	call BattleAnim_Cosine
+	ld hl, BATTLEANIMSTRUCT_09
+	add hl, bc
+	ld [hl], a
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	ld a, [hl]
+	and a
+	jr z, .asm_cd950
+	ld d, a
+	ld hl, BATTLEANIMSTRUCT_10
+	ADD HL, BC
+	ld e, [hl]
+	ld hl, hPushOAM ; $ff80
+	add hl, de
+	ld e, l
+	ld d, h
+	ld hl, BATTLEANIMSTRUCT_10
+	ADD HL, BC
+	ld [hl], e
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	ld [hl], d
+	ret
+
+.asm_cd950
+	call DeinitBattleAnimation
+	ret
+
+BattleAnimFunction_19: ; cd954 (33:5954)
+	call BattleAnim_AnonJumptable
+.anon_jumptable
+	dw Functioncd961
+	dw Functioncd96a
+	dw Functioncd96e
+	dw Functioncd96a
+	dw Functioncd97b
+
+Functioncd961: ; cd961 (33:5961)
+	call BattleAnim_IncAnonJumptableIndex
+	ld hl, BATTLEANIMSTRUCT_0B
+	add hl, bc
+	ld [hl], $0
+
+Functioncd96a: ; cd96a (33:596a)
+	call Functioncd99a
+	ret
+
+Functioncd96e: ; cd96e (33:596e)
+	ld hl, BATTLEANIMSTRUCT_07
+	add hl, bc
+	ld a, [hl]
+	cp $88
+	jr c, asm_cd988
+	call BattleAnim_IncAnonJumptableIndex
+	ret
+
+Functioncd97b: ; cd97b (33:597b)
+	ld hl, BATTLEANIMSTRUCT_07
+	add hl, bc
+	ld a, [hl]
+	cp $b8
+	jr c, asm_cd988
+	call DeinitBattleAnimation
+	ret
+
+asm_cd988: ; cd988 (33:5988)
+	call Functioncd99a
+	ld hl, BATTLEANIMSTRUCT_07
+	add hl, bc
+	inc [hl]
+	ld a, [hl]
+	and $1
+	ret nz
+	ld hl, BATTLEANIMSTRUCT_08
+	add hl, bc
+	dec [hl]
+	ret
+
+Functioncd99a: ; cd99a (33:599a)
+	call Functioncd9f4
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	ld a, [hl]
+	push af
+	push de
+	call BattleAnim_Sine
+	sra a
+	sra a
+	sra a
+	sra a
+	ld hl, BATTLEANIMSTRUCT_0B
+	add hl, bc
+	add [hl]
+	ld hl, BATTLEANIMSTRUCT_0A
+	add hl, bc
+	ld [hl], a
+	pop de
+	pop af
+	call BattleAnim_Cosine
+	ld hl, BATTLEANIMSTRUCT_09
+	add hl, bc
+	ld [hl], a
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	ld a, [hl]
+	sub $8
+	ld [hl], a
+	ld hl, BATTLEANIMSTRUCT_0B
+	add hl, bc
+	ld a, [hl]
+	and a
+	jr z, .asm_cd9d7
+	cp $c2
+	jr c, .asm_cd9e2
+.asm_cd9d7
+	dec a
+	ld [hl], a
+	and $7
+	ret nz
+	ld hl, BATTLEANIMSTRUCT_10
+	ADD HL, BC
+	inc [hl]
+	ret
+
+.asm_cd9e2
+	xor a
+	ld hl, BATTLEANIMSTRUCT_10
+	ADD HL, BC
+	ld [hl], a
+	ld hl, BATTLEANIMSTRUCT_0B
+	add hl, bc
+	ld [hl], a
+	ld hl, BATTLEANIMSTRUCT_09
+	add hl, bc
+	ld [hli], a
+	ld [hl], a
+	ret
+
+Functioncd9f4: ; cd9f4 (33:59f4)
+	ld hl, BATTLEANIMSTRUCT_10
+	ADD HL, BC
+	ld e, [hl]
+	ld d, 0
+	ld hl, Unknown_cda01
+	add hl, de
+	ld d, [hl]
+	ret
+; cda01 (33:5a01)
+
+Unknown_cda01: ; cda01
+	db 8, 6, 5, 4, 5, 6, 8, 12, 16
+; cda0a
+
+BattleAnimFunction_1C: ; cda0a (33:5a0a)
+	ld hl, BATTLEANIMSTRUCT_07
+	add hl, bc
+	ld a, [hl]
+	cp $30
+	jr nc, .asm_cda17
+	call DeinitBattleAnimation
+	ret
+
+.asm_cda17
+	ld hl, BATTLEANIMSTRUCT_0B
+	add hl, bc
+	ld a, [hl]
+	and $f
+	ld e, a
+	ld hl, BATTLEANIMSTRUCT_07
+	add hl, bc
+	ld a, [hl]
+	sub e
+	ld [hl], a
+	srl e
+	ld hl, BATTLEANIMSTRUCT_08
+	add hl, bc
+.asm_cda2c
+	inc [hl]
+	dec e
+	jr nz, .asm_cda2c
+	ret
+
+BattleAnimFunction_1F: ; cda31 (33:5a31)
+	call BattleAnim_AnonJumptable
+.anon_jumptable
+	dw Functioncda4c
+	dw Functioncda3a
+	dw Functioncda4c
+
+Functioncda3a: ; cda3a (33:5a3a)
+	ld hl, BATTLEANIMSTRUCT_FRAMESET_ID
+	add hl, bc
+	ld a, [hl]
+	inc a
+	call ReinitBattleAnimFrameset
+	call BattleAnim_IncAnonJumptableIndex
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	ld [hl], $8
+
+Functioncda4c: ; cda4c (33:5a4c)
+	ret
+
+BattleAnimFunction_20: ; cda4d (33:5a4d)
+	call BattleAnim_AnonJumptable
+.anon_jumptable
+	dw Functioncda58
+	dw Functioncda62
+	dw Functioncda7a
+	dw Functioncda8c
+
+Functioncda58: ; cda58 (33:5a58)
+	call BattleAnim_IncAnonJumptableIndex
+	ld hl, BATTLEANIMSTRUCT_10
+	ADD HL, BC
+	ld [hl], $40
+	ret
+
+Functioncda62: ; cda62 (33:5a62)
+	ld hl, BATTLEANIMSTRUCT_10
+	ADD HL, BC
+	ld a, [hl]
+	cp $20
+	jr c, .asm_cda6f
+	call Functioncda8d
+	ret
+
+.asm_cda6f
+	ld [hl], $40
+	ld a, $57
+	call ReinitBattleAnimFrameset
+	call BattleAnim_IncAnonJumptableIndex
+	ret
+
+Functioncda7a: ; cda7a (33:5a7a)
+	ld hl, BATTLEANIMSTRUCT_10
+	ADD HL, BC
+	ld a, [hl]
+	and a
+	jr z, .asm_cda84
+	dec [hl]
+	ret
+
+.asm_cda84
+	call BattleAnim_IncAnonJumptableIndex
+	ld a, $58
+	call ReinitBattleAnimFrameset
+
+Functioncda8c: ; cda8c (33:5a8c)
+	ret
+
+Functioncda8d: ; cda8d (33:5a8d)
+	dec [hl]
+	ld d, $20
+	call BattleAnim_Sine
+	ld hl, BATTLEANIMSTRUCT_0A
+	add hl, bc
+	ld [hl], a
+	ld hl, BATTLEANIMSTRUCT_02
+	add hl, bc
+	ld a, [hl]
+	add $2
+	ld [hl], a
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	ld e, [hl]
+	ld hl, BATTLEANIMSTRUCT_07
+	add hl, bc
+	ld d, [hl]
+	ld hl, BATTLEANIMSTRUCT_0B
+	add hl, bc
+	ld h, [hl]
+	ld a, h
+	and $f
+	swap a
+	ld l, a
+	ld a, h
+	and $f0
+	swap a
+	ld h, a
+	add hl, de
+	ld e, l
+	ld d, h
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	ld [hl], e
+	ld hl, BATTLEANIMSTRUCT_07
+	add hl, bc
+	ld [hl], d
+	ld hl, BATTLEANIMSTRUCT_10
+	ADD HL, BC
+	ld a, [hl]
+	and $1
+	ret nz
+	ld hl, BATTLEANIMSTRUCT_08
+	add hl, bc
+	dec [hl]
+	ret
+
+BattleAnimFunction_3F: ; cdad6 (33:5ad6)
+	call BattleAnim_AnonJumptable
+.anon_jumptable
+	dw Functioncdadf
+	dw Functioncdae9
+	dw Functioncdaf9
+
+Functioncdadf: ; cdadf (33:5adf)
+	call BattleAnim_IncAnonJumptableIndex
+	ld hl, BATTLEANIMSTRUCT_10
+	ADD HL, BC
+	ld [hl], $40
+	ret
+
+Functioncdae9: ; cdae9 (33:5ae9)
+	ld hl, BATTLEANIMSTRUCT_10
+	ADD HL, BC
+	ld a, [hl]
+	cp $20
+	jr c, .asm_cdaf6
+	call Functioncda8d
+	ret
+
+.asm_cdaf6
+	call BattleAnim_IncAnonJumptableIndex
+
+Functioncdaf9: ; cdaf9 (33:5af9)
+	ret
+
+BattleAnimFunction_1A: ; cdafa (33:5afa)
+	call BattleAnimFunction_03
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	ld a, [hl]
+	add $f
+	ld [hl], a
+	ret
+
+BattleAnimFunction_1B: ; cdb06 (33:5b06)
+	call BattleAnim_AnonJumptable
+.anon_jumptable
+	dw Functioncdb13
+	dw Functioncdb14
+	dw Functioncdb28
+	dw Functioncdb50
+	dw Functioncdb65
+
+Functioncdb13: ; cdb13 (33:5b13)
+	ret
+
+Functioncdb14: ; cdb14 (33:5b14)
+	ld hl, BATTLEANIMSTRUCT_08
+	add hl, bc
+	ld a, [hl]
+	cp $30
+	jr c, .asm_cdb24
+	ld hl, BATTLEANIMSTRUCT_ANON_JT_INDEX
+	add hl, bc
+	ld [hl], $0
+	ret
+
+.asm_cdb24
+	add $4
+	ld [hl], a
+	ret
+
+Functioncdb28: ; cdb28 (33:5b28)
+	ld hl, BATTLEANIMSTRUCT_07
+	add hl, bc
+	ld a, [hl]
+	cp $98
+	ret nc
+	inc [hl]
+	inc [hl]
+	ld hl, BATTLEANIMSTRUCT_01
+	add hl, bc
+	set 0, [hl]
+	ld hl, BATTLEANIMSTRUCT_02
+	add hl, bc
+	ld [hl], $90
+	ld hl, BATTLEANIMSTRUCT_FRAME
+	add hl, bc
+	ld [hl], $0
+	ld hl, BATTLEANIMSTRUCT_DURATION
+	add hl, bc
+	ld [hl], $2
+	ld hl, BATTLEANIMSTRUCT_08
+	add hl, bc
+	dec [hl]
+	ret
+
+Functioncdb50: ; cdb50 (33:5b50)
+	call BattleAnim_IncAnonJumptableIndex
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	ld [hl], $2c
+	ld hl, BATTLEANIMSTRUCT_FRAME
+	add hl, bc
+	ld [hl], $0
+	ld hl, BATTLEANIMSTRUCT_DURATION
+	add hl, bc
+	ld [hl], $80
+
+Functioncdb65: ; cdb65 (33:5b65)
+	ld hl, BATTLEANIMSTRUCT_07
+	add hl, bc
+	ld a, [hl]
+	cp $98
+	ret nc
+	inc [hl]
+	inc [hl]
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	ld a, [hl]
+	inc [hl]
+	ld d, $8
+	call BattleAnim_Sine
+	ld hl, BATTLEANIMSTRUCT_0A
+	add hl, bc
+	ld [hl], a
+	ret
+
+BattleAnimFunction_1D: ; cdb80 (33:5b80)
+	call BattleAnim_AnonJumptable
+.anon_jumptable
+	dw Functioncdb9f
+	dw Functioncdbb3
+	dw Functioncdbcf
+	dw Functioncdbeb
+	dw Functioncdc74
+	dw Functioncdc1a
+	dw Functioncdbc1
+	dw Functioncdc1e
+	dw Functioncdc27
+	dw Functioncdc39
+	dw Functioncdc74
+	dw Functioncdc48
+	dw Functioncdc57
+	dw Functioncdc74
+
+Functioncdb9f: ; cdb9f (33:5b9f)
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	ld [hl], $28
+	inc hl
+	ld [hl], $10
+	ld hl, BATTLEANIMSTRUCT_0B
+	add hl, bc
+	ld a, [hl]
+	ld hl, BATTLEANIMSTRUCT_ANON_JT_INDEX
+	add hl, bc
+	ld [hl], a
+	ret
+
+Functioncdbb3: ; cdbb3 (33:5bb3)
+	ld hl, BATTLEANIMSTRUCT_07
+	add hl, bc
+	ld a, [hl]
+	cp $40
+	jr nc, .asm_cdbbd
+	inc [hl]
+.asm_cdbbd
+	call Functioncdc75
+	ret
+
+Functioncdbc1: ; cdbc1 (33:5bc1)
+	ld hl, BATTLEANIMSTRUCT_07
+	add hl, bc
+	ld a, [hl]
+	cp $4b
+	jr nc, .asm_cdbcb
+	inc [hl]
+.asm_cdbcb
+	call Functioncdc75
+	ret
+
+Functioncdbcf: ; cdbcf (33:5bcf)
+	ld hl, BATTLEANIMSTRUCT_07
+	add hl, bc
+	ld a, [hl]
+	cp $88
+	jr nc, .asm_cdbe6
+	and $f
+	jr nz, asm_cdbfa
+	ld hl, BATTLEANIMSTRUCT_10
+	ADD HL, BC
+	ld [hl], $10
+	call BattleAnim_IncAnonJumptableIndex
+	ret
+
+.asm_cdbe6
+	call BattleAnim_IncAnonJumptableIndex
+	inc [hl]
+	ret
+
+Functioncdbeb: ; cdbeb (33:5beb)
+	ld hl, BATTLEANIMSTRUCT_10
+	ADD HL, BC
+	ld a, [hl]
+	and a
+	jr z, .asm_cdbf5
+	dec [hl]
+	ret
+
+.asm_cdbf5
+	ld hl, BATTLEANIMSTRUCT_ANON_JT_INDEX
+	add hl, bc
+	dec [hl]
+asm_cdbfa: ; cdbfa (33:5bfa)
+	ld hl, BATTLEANIMSTRUCT_07
+	add hl, bc
+	inc [hl]
+	ld hl, BATTLEANIMSTRUCT_08
+	add hl, bc
+	ld d, [hl]
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	ld e, [hl]
+	ld hl, hPushOAM ; $ff80
+	add hl, de
+	ld e, l
+	ld d, h
+	ld hl, BATTLEANIMSTRUCT_08
+	add hl, bc
+	ld [hl], d
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	ld [hl], e
+	ret
+
+Functioncdc1a: ; cdc1a (33:5c1a)
+	call DeinitBattleAnimation
+	ret
+
+Functioncdc1e: ; cdc1e (33:5c1e)
+	ld a, $4e
+	call ReinitBattleAnimFrameset
+	call BattleAnim_IncAnonJumptableIndex
+	ret
+
+Functioncdc27: ; cdc27 (33:5c27)
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	ld a, [hl]
+	inc [hl]
+	inc [hl]
+	ld d, $2
+	call BattleAnim_Sine
+	ld hl, BATTLEANIMSTRUCT_09
+	add hl, bc
+	ld [hl], a
+	ret
+
+Functioncdc39: ; cdc39 (33:5c39)
+	ld a, $50
+	call ReinitBattleAnimFrameset
+	ld hl, BATTLEANIMSTRUCT_0A
+	add hl, bc
+	ld [hl], $4
+	call BattleAnim_IncAnonJumptableIndex
+	ret
+
+Functioncdc48: ; cdc48 (33:5c48)
+	ld a, $4f
+	call ReinitBattleAnimFrameset
+	call BattleAnim_IncAnonJumptableIndex
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	ld [hl], $40
+	ret
+
+Functioncdc57: ; cdc57 (33:5c57)
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	ld a, [hl]
+	ld d, $20
+	call BattleAnim_Sine
+	ld hl, BATTLEANIMSTRUCT_0A
+	add hl, bc
+	ld [hl], a
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	ld a, [hl]
+	cp $30
+	jr c, .asm_cdc71
+	dec [hl]
+	ret
+
+.asm_cdc71
+	call BattleAnim_IncAnonJumptableIndex
+
+Functioncdc74: ; cdc74 (33:5c74)
+	ret
+
+Functioncdc75: ; cdc75 (33:5c75)
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	ld a, [hli]
+	ld d, [hl]
+	call BattleAnim_Sine
+	ld hl, BATTLEANIMSTRUCT_0A
+	add hl, bc
+	ld [hl], a
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	inc [hl]
+	ld a, [hl]
+	and $3f
+	ret nz
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	ld [hl], $20
+	ld hl, BATTLEANIMSTRUCT_10
+	ADD HL, BC
+	ld a, [hl]
+	sub $8
+	ld [hl], a
+	ret nz
+	xor a
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	ld [hli], a
+	ld [hl], a
+	call BattleAnim_IncAnonJumptableIndex
+	ret
+
+BattleAnimFunction_1E: ; cdca6 (33:5ca6)
+	ld hl, BATTLEANIMSTRUCT_0A
+	add hl, bc
+	ld a, [hl]
+	and a
+	jr z, .asm_cdcb6
+	cp $d8
+	jr nc, .asm_cdcb6
+	call DeinitBattleAnimation
+	ret
+
+.asm_cdcb6
+	ld hl, BATTLEANIMSTRUCT_0B
+	add hl, bc
+	ld d, [hl]
+	ld hl, BATTLEANIMSTRUCT_0A
+	add hl, bc
+	ld a, [hl]
+	sub d
+	ld [hl], a
+	ret
+
+BattleAnimFunction_21: ; cdcc3 (33:5cc3)
+	call BattleAnim_AnonJumptable
+.anon_jumptable
+	dw Functioncdcca
+	dw Functioncdced
+
+Functioncdcca: ; cdcca (33:5cca)
+	ld a, [hBattleTurn]
+	and a
+	jr z, .asm_cdcd9
+	ld hl, BATTLEANIMSTRUCT_0B
+	add hl, bc
+	ld a, [hl]
+	xor $ff
+	add $3
+	ld [hl], a
+.asm_cdcd9
+	call BattleAnim_IncAnonJumptableIndex
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	ld [hl], $8
+	ld hl, BATTLEANIMSTRUCT_0B
+	add hl, bc
+	ld a, $59
+	add [hl]
+	call ReinitBattleAnimFrameset
+	ret
+
+Functioncdced: ; cdced (33:5ced)
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	ld a, [hl]
+	and a
+	jr z, .asm_cdcfa
+	dec [hl]
+	call Functioncdcfe
+	ret
+
+.asm_cdcfa
+	call DeinitBattleAnimation
+	ret
+
+Functioncdcfe: ; cdcfe (33:5cfe)
+	ld hl, BATTLEANIMSTRUCT_10
+	ADD HL, BC
+	ld a, [hl]
+	inc [hl]
+	inc [hl]
+	ld d, $10
+	call BattleAnim_Sine
+	ld d, a
+	ld hl, BATTLEANIMSTRUCT_09
+	add hl, bc
+	ld [hl], a
+	ld hl, BATTLEANIMSTRUCT_0B
+	add hl, bc
+	ld a, [hl]
+	and a
+	jr z, .asm_cdd20
+	dec a
+	ret z
+	ld hl, BATTLEANIMSTRUCT_0A
+	add hl, bc
+	ld [hl], d
+	ret
+
+.asm_cdd20
+	ld hl, BATTLEANIMSTRUCT_0A
+	add hl, bc
+	ld a, d
+	xor $ff
+	inc a
+	ld [hl], a
+	ret
+
+BattleAnimFunction_22: ; cdd2a (33:5d2a)
+	call BattleAnim_AnonJumptable
+.anon_jumptable
+	dw Functioncdd31
+	dw Functioncdd4f
+
+Functioncdd31: ; cdd31 (33:5d31)
+	call BattleAnim_IncAnonJumptableIndex
+	ld hl, BATTLEANIMSTRUCT_0B
+	add hl, bc
+	ld a, [hl]
+	and $3f
+	ld hl, BATTLEANIMSTRUCT_10
+	ADD HL, BC
+	ld [hl], a
+	ld hl, BATTLEANIMSTRUCT_0B
+	add hl, bc
+	ld a, [hl]
+	and $80
+	rlca
+	ld [hl], a
+	add $5d
+	call ReinitBattleAnimFrameset
+	ret
+
+Functioncdd4f: ; cdd4f (33:5d4f)
+	ld hl, BATTLEANIMSTRUCT_0B
+	add hl, bc
+	ld a, [hl]
+	swap a
+	ld d, a
+	ld hl, BATTLEANIMSTRUCT_10
+	ADD HL, BC
+	ld a, [hl]
+	inc [hl]
+	push af
+	push de
+	call BattleAnim_Sine
+	ld hl, BATTLEANIMSTRUCT_0A
+	add hl, bc
+	ld [hl], a
+	pop de
+	pop af
+	call BattleAnim_Cosine
+	ld hl, BATTLEANIMSTRUCT_09
+	add hl, bc
+	ld [hl], a
+	ld hl, BATTLEANIMSTRUCT_07
+	add hl, bc
+	ld a, [hl]
+	cp $80
+	ret nc
+	ld hl, BATTLEANIMSTRUCT_10
+	ADD HL, BC
+	ld a, [hl]
+	and $3
+	jr nz, .asm_cdd87
+	ld hl, BATTLEANIMSTRUCT_08
+	add hl, bc
+	dec [hl]
+.asm_cdd87
+	and $1
+	ret nz
+	ld hl, BATTLEANIMSTRUCT_07
+	add hl, bc
+	inc [hl]
+	ret
+
+BattleAnimFunction_23: ; cdd90 (33:5d90)
+	call BattleAnim_AnonJumptable
+.anon_jumptable
+	dw Functioncdd97
+	dw Functioncddbc
+
+Functioncdd97: ; cdd97 (33:5d97)
+	call BattleAnim_IncAnonJumptableIndex
+	ld hl, BATTLEANIMSTRUCT_FRAMESET_ID
+	add hl, bc
+	ld a, [hl]
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	ld [hl], a
+	ld hl, BATTLEANIMSTRUCT_0B
+	add hl, bc
+	ld a, [hl]
+	and $80
+	rlca
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	add [hl]
+	call ReinitBattleAnimFrameset
+	ld hl, BATTLEANIMSTRUCT_0B
+	add hl, bc
+	ld a, [hl]
+	and $7f
+	ld [hl], a
+
+Functioncddbc: ; cddbc (33:5dbc)
+	ld hl, BATTLEANIMSTRUCT_0B
+	add hl, bc
+	ld a, [hl]
+	ld d, $10
+	push af
+	push de
+	call BattleAnim_Sine
+	sra a
+	sra a
+	ld hl, BATTLEANIMSTRUCT_0A
+	add hl, bc
+	ld [hl], a
+	pop de
+	pop af
+	call BattleAnim_Cosine
+	ld hl, BATTLEANIMSTRUCT_09
+	add hl, bc
+	ld [hl], a
+	ld hl, BATTLEANIMSTRUCT_0B
+	add hl, bc
+	ld a, [hl]
+	inc [hl]
+	and $3f
+	jr z, .asm_cddf0
+	and $1f
+	ret nz
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	ld a, [hl]
+	inc a
+	jr .asm_cddf5
+
+.asm_cddf0
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	ld a, [hl]
+.asm_cddf5
+	call ReinitBattleAnimFrameset
+	ret
+
+BattleAnimFunction_24: ; cddf9 (33:5df9)
+	call BattleAnim_AnonJumptable
+.anon_jumptable
+	dw Functioncde02
+	dw Functioncde20
+	dw Functioncde21
+
+Functioncde02: ; cde02 (33:5e02)
+	call BattleAnim_IncAnonJumptableIndex
+	ld hl, BATTLEANIMSTRUCT_0B
+	add hl, bc
+	ld a, [hl]
+	add $63
+	call ReinitBattleAnimFrameset
+	ld hl, BATTLEANIMSTRUCT_0B
+	add hl, bc
+	ld e, [hl]
+	ld d, 0
+	ld hl, Unknown_cde25
+	add hl, de
+	ld a, [hl]
+	ld hl, BATTLEANIMSTRUCT_0A
+	add hl, bc
+	ld [hl], a
+
+Functioncde20: ; cde20 (33:5e20)
+	ret
+
+Functioncde21: ; cde21 (33:5e21)
+	call DeinitBattleAnimation
+	ret
+; cde25 (33:5e25)
+
+Unknown_cde25: ; cde25
+	db $ec, $f8, $00
+; cde28
+
+BattleAnimFunction_25: ; cde28 (33:5e28)
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	ld a, [hl]
+	inc [hl]
+	inc [hl]
+	ld d, $4
+	call BattleAnim_Sine
+	ld hl, BATTLEANIMSTRUCT_09
+	add hl, bc
+	ld [hl], a
+	ld hl, BATTLEANIMSTRUCT_0A
+	add hl, bc
+	ld d, [hl]
+	ld hl, BATTLEANIMSTRUCT_10
+	ADD HL, BC
+	ld e, [hl]
+	ld hl, $ffa0
+	add hl, de
+	ld e, l
+	ld d, h
+	ld hl, BATTLEANIMSTRUCT_0A
+	add hl, bc
+	ld [hl], d
+	ld hl, BATTLEANIMSTRUCT_10
+	ADD HL, BC
+	ld [hl], e
+	ret
+
+BattleAnimFunction_26: ; cde54 (33:5e54)
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	ld a, [hl]
+	dec [hl]
+	dec [hl]
+	ld d, $10
+	call BattleAnim_Sine
+	ld hl, BATTLEANIMSTRUCT_0A
+	add hl, bc
+	ld [hl], a
+	ld hl, BATTLEANIMSTRUCT_07
+	add hl, bc
+	inc [hl]
+	ret
+
+BattleAnimFunction_27: ; cde6b (33:5e6b)
+	call BattleAnim_AnonJumptable
+.anon_jumptable
+	dw Functioncde72
+	dw Functioncde88
+
+Functioncde72: ; cde72 (33:5e72)
+	call BattleAnim_IncAnonJumptableIndex
+	ld hl, BATTLEANIMSTRUCT_0B
+	add hl, bc
+	ld a, [hl]
+	and a
+	jr nz, .asm_cde83
+	ld hl, BATTLEANIMSTRUCT_01
+	add hl, bc
+	set 6, [hl]
+.asm_cde83
+	add $6a
+	call ReinitBattleAnimFrameset
+
+Functioncde88: ; cde88 (33:5e88)
+	ret
+
+BattleAnimFunction_28: ; cde89 (33:5e89)
+	call BattleAnim_AnonJumptable
+.anon_jumptable
+	dw Functioncde90
+	dw Functioncdebf
+
+Functioncde90: ; cde90 (33:5e90)
+	call BattleAnim_IncAnonJumptableIndex
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	ld [hl], $0
+	ld hl, BATTLEANIMSTRUCT_0B
+	add hl, bc
+	ld e, [hl]
+	ld a, e
+	and $70
+	swap a
+	ld [hl], a
+	ld hl, BATTLEANIMSTRUCT_09
+	add hl, bc
+	ld a, e
+	and $80
+	jr nz, .asm_cdeb2
+	ld a, e
+	and $f
+	ld [hl], a
+	ret
+
+.asm_cdeb2
+	ld a, e
+	and $f
+	xor $ff
+	inc a
+	ld [hl], a
+	ld a, $6e
+	call ReinitBattleAnimFrameset
+	ret
+
+Functioncdebf: ; cdebf (33:5ebf)
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	ld a, [hl]
+	and a
+	jr z, .asm_cdec9
+	dec [hl]
+	ret
+
+.asm_cdec9
+	ld hl, BATTLEANIMSTRUCT_0B
+	add hl, bc
+	ld a, [hl]
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	ld [hl], a
+	ld hl, BATTLEANIMSTRUCT_09
+	add hl, bc
+	ld a, [hl]
+	xor $ff
+	inc a
+	ld [hl], a
+	ret
+
+BattleAnimFunction_29: ; cdedd (33:5edd)
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	ld a, [hl]
+	ld d, $18
+	push af
+	push de
+	call BattleAnim_Sine
+	sra a
+	sra a
+	sra a
+	ld hl, BATTLEANIMSTRUCT_10
+	ADD HL, BC
+	add [hl]
+	ld hl, BATTLEANIMSTRUCT_0A
+	add hl, bc
+	ld [hl], a
+	pop de
+	pop af
+	call BattleAnim_Cosine
+	ld hl, BATTLEANIMSTRUCT_09
+	add hl, bc
+	ld [hl], a
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	inc [hl]
+	ld a, [hl]
+	and $7
+	ret nz
+	ld hl, BATTLEANIMSTRUCT_10
+	ADD HL, BC
+	ld a, [hl]
+	cp $28
+	jr nc, .asm_cdf17
+	inc [hl]
+	ret
+
+.asm_cdf17
+	call DeinitBattleAnimation
+	ret
+
+BattleAnimFunction_2D: ; cdf1b (33:5f1b)
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	ld a, [hl]
+	ld d, $18
+	push af
+	push de
+	call BattleAnim_Sine
+	sra a
+	sra a
+	sra a
+	ld hl, BATTLEANIMSTRUCT_10
+	ADD HL, BC
+	add [hl]
+	ld hl, BATTLEANIMSTRUCT_0A
+	add hl, bc
+	ld [hl], a
+	pop de
+	pop af
+	call BattleAnim_Cosine
+	ld hl, BATTLEANIMSTRUCT_09
+	add hl, bc
+	ld [hl], a
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	inc [hl]
+	ld a, [hl]
+	and $3
+	ret nz
+	ld hl, BATTLEANIMSTRUCT_10
+	ADD HL, BC
+	ld a, [hl]
+	cp $28
+	jr nc, .asm_cdf55
+	inc [hl]
+	ret
+
+.asm_cdf55
+	call DeinitBattleAnimation
+	ret
+
+BattleAnimFunction_2A: ; cdf59 (33:5f59)
+	call BattleAnim_AnonJumptable
+.anon_jumptable
+	dw Functioncdf60
+	dw BattleAnimFunction_29
+
+Functioncdf60: ; cdf60 (33:5f60)
+	ld hl, BATTLEANIMSTRUCT_07
+	add hl, bc
+	ld a, [hl]
+	cp $84
+	jr nc, .asm_cdf88
+	inc [hl]
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	ld a, [hl]
+	inc [hl]
+	ld d, $18
+	call BattleAnim_Cosine
+	ld hl, BATTLEANIMSTRUCT_09
+	add hl, bc
+	ld [hl], a
+	ld hl, BATTLEANIMSTRUCT_07
+	add hl, bc
+	ld a, [hl]
+	and $1
+	ret nz
+	ld hl, BATTLEANIMSTRUCT_08
+	add hl, bc
+	dec [hl]
+	ret
+
+.asm_cdf88
+	call BattleAnim_IncAnonJumptableIndex
+	ret
+
+BattleAnimFunction_34: ; cdf8c (33:5f8c)
+	ld hl, BATTLEANIMSTRUCT_0B
+	add hl, bc
+	ld a, [hl]
+	ld d, $18
+	push af
+	push de
+	call BattleAnim_Sine
+	sra a
+	sra a
+	sra a
+	ld hl, BATTLEANIMSTRUCT_10
+	ADD HL, BC
+	add [hl]
+	ld hl, BATTLEANIMSTRUCT_0A
+	add hl, bc
+	ld [hl], a
+	pop de
+	pop af
+	call BattleAnim_Cosine
+	ld hl, BATTLEANIMSTRUCT_09
+	add hl, bc
+	ld [hl], a
+	ld hl, BATTLEANIMSTRUCT_0B
+	add hl, bc
+	inc [hl]
+	inc [hl]
+	ld a, [hl]
+	and $7
+	ret nz
+	ld hl, BATTLEANIMSTRUCT_10
+	ADD HL, BC
+	ld a, [hl]
+	cp $e8
+	jr z, .asm_cdfc7
+	dec [hl]
+	ret
+
+.asm_cdfc7
+	call DeinitBattleAnimation
+	ret
+
+BattleAnimFunction_3C: ; cdfcb (33:5fcb)
+	ld hl, BATTLEANIMSTRUCT_0B
+	add hl, bc
+	ld a, [hl]
+	ld d, $18
+	push af
+	push de
+	call BattleAnim_Sine
+	sra a
+	sra a
+	sra a
+	ld hl, BATTLEANIMSTRUCT_10
+	ADD HL, BC
+	add [hl]
+	ld hl, BATTLEANIMSTRUCT_0A
+	add hl, bc
+	ld [hl], a
+	pop de
+	pop af
+	call BattleAnim_Cosine
+	ld hl, BATTLEANIMSTRUCT_09
+	add hl, bc
+	ld [hl], a
+	ld hl, BATTLEANIMSTRUCT_0B
+	add hl, bc
+	inc [hl]
+	inc [hl]
+	ld a, [hl]
+	and $3
+	ret nz
+	ld hl, BATTLEANIMSTRUCT_10
+	ADD HL, BC
+	ld a, [hl]
+	cp $d0
+	jr z, .asm_ce007
+	dec [hl]
+	dec [hl]
+	ret
+
+.asm_ce007
+	call DeinitBattleAnimation
+	ret
+
+BattleAnimFunction_35: ; ce00b (33:600b)
+	call BattleAnim_AnonJumptable
+.anon_jumptable
+	dw Functionce014
+	dw Functionce023
+	dw Functionce05f
+
+Functionce014: ; ce014 (33:6014)
+	call BattleAnim_IncAnonJumptableIndex
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	ld [hl], $34
+	ld hl, BATTLEANIMSTRUCT_10
+	ADD HL, BC
+	ld [hl], $10
+
+Functionce023: ; ce023 (33:6023)
+	ld hl, BATTLEANIMSTRUCT_07
+	add hl, bc
+	ld a, [hl]
+	cp $6c
+	jr c, .asm_ce02d
+	ret
+
+.asm_ce02d
+	ld a, $2
+	call Functionce70a
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	ld a, [hl]
+	ld hl, BATTLEANIMSTRUCT_10
+	ADD HL, BC
+	ld d, [hl]
+	call BattleAnim_Sine
+	bit 7, a
+	jr nz, .asm_ce046
+	xor $ff
+	inc a
+.asm_ce046
+	ld hl, BATTLEANIMSTRUCT_0A
+	add hl, bc
+	ld [hl], a
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	ld a, [hl]
+	sub $4
+	ld [hl], a
+	and $1f
+	cp $20
+	ret nz
+	ld hl, BATTLEANIMSTRUCT_10
+	ADD HL, BC
+	srl [hl]
+	ret
+
+Functionce05f: ; ce05f (33:605f)
+	call DeinitBattleAnimation
+	ret
+
+BattleAnimFunction_2B: ; ce063 (33:6063)
+	call BattleAnim_AnonJumptable
+.anon_jumptable
+	dw Functionce06e
+	dw Functionce083
+	dw Functionce091
+	dw Functionce09e
+
+Functionce06e: ; ce06e (33:606e)
+	ld hl, BATTLEANIMSTRUCT_0B
+	add hl, bc
+	ld a, [hl]
+	ld hl, BATTLEANIMSTRUCT_ANON_JT_INDEX
+	add hl, bc
+	ld [hl], a
+	ld hl, BATTLEANIMSTRUCT_08
+	add hl, bc
+	ld a, [hl]
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	ld [hl], a
+	ret
+
+Functionce083: ; ce083 (33:6083)
+	ld hl, BATTLEANIMSTRUCT_07
+	add hl, bc
+	ld a, [hl]
+	cp $58
+	ret nc
+	ld a, $2
+	call Functionce70a
+	ret
+
+Functionce091: ; ce091 (33:6091)
+	ld hl, BATTLEANIMSTRUCT_10
+	ADD HL, BC
+	ld a, [hl]
+	cp $20
+	jr c, Functionce09e
+	call DeinitBattleAnimation
+	ret
+
+Functionce09e: ; ce09e (33:609e)
+	ld hl, BATTLEANIMSTRUCT_10
+	ADD HL, BC
+	ld a, [hl]
+	ld d, $8
+	call BattleAnim_Sine
+	ld hl, BATTLEANIMSTRUCT_09
+	add hl, bc
+	ld [hl], a
+	sra a
+	xor $ff
+	inc a
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	add [hl]
+	ld hl, BATTLEANIMSTRUCT_08
+	add hl, bc
+	ld [hl], a
+	ld hl, BATTLEANIMSTRUCT_10
+	ADD HL, BC
+	ld a, [hl]
+	add $8
+	ld [hl], a
+	ret
+
+BattleAnimFunction_2C: ; ce0c5 (33:60c5)
+	call BattleAnim_AnonJumptable
+.anon_jumptable
+	dw Functionce0ce
+	dw Functionce0f8
+	dw Functionce0dd
+
+Functionce0ce: ; ce0ce (33:60ce)
+	ld hl, BATTLEANIMSTRUCT_0B
+	add hl, bc
+	ld a, [hl]
+	and $f0
+	swap a
+	ld hl, BATTLEANIMSTRUCT_ANON_JT_INDEX
+	add hl, bc
+	ld [hl], a
+	ret
+
+Functionce0dd: ; ce0dd (33:60dd)
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	ld a, [hl]
+	ld d, $10
+	call BattleAnim_Sine
+	ld hl, BATTLEANIMSTRUCT_0A
+	add hl, bc
+	bit 7, a
+	jr z, .asm_ce0f0
+	ld [hl], a
+.asm_ce0f0
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	ld a, [hl]
+	sub $4
+	ld [hl], a
+
+Functionce0f8: ; ce0f8 (33:60f8)
+	ld hl, BATTLEANIMSTRUCT_07
+	add hl, bc
+	ld a, [hl]
+	cp $84
+	jr c, .asm_ce105
+	call DeinitBattleAnimation
+	ret
+
+.asm_ce105
+	ld hl, BATTLEANIMSTRUCT_0B
+	add hl, bc
+	ld a, [hl]
+	call Functionce70a
+	ret
+
+BattleAnimFunction_2E: ; ce10e (33:610e)
+	call BattleAnim_AnonJumptable
+.anon_jumptable
+	dw Functionce115
+	dw Functionce12a
+
+Functionce115: ; ce115 (33:6115)
+	call BattleAnim_IncAnonJumptableIndex
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	ld [hl], $28
+	ld hl, BATTLEANIMSTRUCT_08
+	add hl, bc
+	ld a, [hl]
+	sub $28
+	ld hl, BATTLEANIMSTRUCT_10
+	ADD HL, BC
+	ld [hl], a
+
+Functionce12a: ; ce12a (33:612a)
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	ld a, [hli]
+	ld d, [hl]
+	call BattleAnim_Sine
+	ld hl, BATTLEANIMSTRUCT_0A
+	add hl, bc
+	ld [hl], a
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	ld a, [hl]
+	ld hl, BATTLEANIMSTRUCT_0B
+	add hl, bc
+	and [hl]
+	jr nz, .asm_ce149
+	ld hl, BATTLEANIMSTRUCT_07
+	add hl, bc
+	dec [hl]
+.asm_ce149
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	inc [hl]
+	ld a, [hl]
+	and $3f
+	ret nz
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	ld [hl], $20
+	inc hl
+	srl [hl]
+	ret
+
+BattleAnimFunction_2F: ; ce15c (33:615c)
+	ld hl, BATTLEANIMSTRUCT_0B
+	add hl, bc
+	ld a, [hl]
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	ld d, [hl]
+	push af
+	push de
+	call BattleAnim_Sine
+	ld hl, BATTLEANIMSTRUCT_0A
+	add hl, bc
+	ld [hl], a
+	pop de
+	pop af
+	call BattleAnim_Cosine
+	ld hl, BATTLEANIMSTRUCT_09
+	add hl, bc
+	ld [hl], a
+	ld hl, BATTLEANIMSTRUCT_0B
+	add hl, bc
+	inc [hl]
+	ld a, [hl]
+	and $1
+	jr nz, .asm_ce189
+	ld hl, BATTLEANIMSTRUCT_07
+	add hl, bc
+	dec [hl]
+.asm_ce189
+	ld hl, BATTLEANIMSTRUCT_0B
+	add hl, bc
+	ld a, [hl]
+	and $3
+	jr nz, .asm_ce197
+	ld hl, BATTLEANIMSTRUCT_08
+	add hl, bc
+	inc [hl]
+.asm_ce197
+	ld hl, BATTLEANIMSTRUCT_07
+	add hl, bc
+	ld a, [hl]
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	cp $5a
+	jr nc, .asm_ce1aa
+	ld a, [hl]
+	and a
+	jr z, .asm_ce1ac
+	dec [hl]
+	ret
+
+.asm_ce1aa
+	inc [hl]
+	ret
+
+.asm_ce1ac
+	call DeinitBattleAnimation
+	ret
+
+BattleAnimFunction_42: ; ce1b0 (33:61b0)
+	ld hl, BATTLEANIMSTRUCT_0B
+	add hl, bc
+	ld a, [hl]
+	inc [hl]
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	ld d, [hl]
+	push af
+	push de
+	call BattleAnim_Sine
+	ld hl, BATTLEANIMSTRUCT_0A
+	add hl, bc
+	ld [hl], a
+	pop de
+	pop af
+	call BattleAnim_Cosine
+	ld hl, BATTLEANIMSTRUCT_09
+	add hl, bc
+	ld [hl], a
+	ld hl, BATTLEANIMSTRUCT_10
+	ADD HL, BC
+	ld a, [hl]
+	inc [hl]
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	cp $40
+	jr nc, .asm_ce1df
+	inc [hl]
+	ret
+
+.asm_ce1df
+	ld a, [hl]
+	dec [hl]
+	and a
+	ret nz
+	call DeinitBattleAnimation
+	ret
+
+BattleAnimFunction_30: ; ce1e7 (33:61e7)
+	call BattleAnim_AnonJumptable
+.anon_jumptable
+	dw Functionce1ee
+	dw Functionce1fb
+
+Functionce1ee: ; ce1ee (33:61ee)
+	call BattleAnim_IncAnonJumptableIndex
+	ld hl, BATTLEANIMSTRUCT_08
+	add hl, bc
+	ld a, [hl]
+	ld hl, BATTLEANIMSTRUCT_10
+	ADD HL, BC
+	ld [hl], a
+
+Functionce1fb: ; ce1fb (33:61fb)
+	ld hl, BATTLEANIMSTRUCT_0B
+	add hl, bc
+	ld a, [hl]
+	ld d, $30
+	call BattleAnim_Sine
+	ld hl, BATTLEANIMSTRUCT_10
+	ADD HL, BC
+	add [hl]
+	ld hl, BATTLEANIMSTRUCT_08
+	add hl, bc
+	ld [hl], a
+	ld hl, BATTLEANIMSTRUCT_0B
+	add hl, bc
+	ld a, [hl]
+	add $8
+	ld d, $30
+	call BattleAnim_Cosine
+	ld hl, BATTLEANIMSTRUCT_09
+	add hl, bc
+	ld [hl], a
+	ld hl, BATTLEANIMSTRUCT_0B
+	add hl, bc
+	inc [hl]
+	ret
+
+BattleAnimFunction_31: ; ce226 (33:6226)
+	call BattleAnim_AnonJumptable
+.anon_jumptable
+	dw Functionce22d
+	dw Functionce254
+
+Functionce22d: ; ce22d (33:622d)
+	call BattleAnim_IncAnonJumptableIndex
+	ld hl, BATTLEANIMSTRUCT_0B
+	add hl, bc
+	ld a, [hl]
+	ld d, $10
+	call BattleAnim_Sine
+	ld hl, BATTLEANIMSTRUCT_0A
+	add hl, bc
+	ld [hl], a
+	ld hl, BATTLEANIMSTRUCT_0B
+	add hl, bc
+	ld a, [hl]
+	ld d, $10
+	call BattleAnim_Cosine
+	ld hl, BATTLEANIMSTRUCT_09
+	add hl, bc
+	ld [hl], a
+	ld hl, BATTLEANIMSTRUCT_10
+	ADD HL, BC
+	ld [hl], $f
+
+Functionce254: ; ce254 (33:6254)
+	ret
+
+BattleAnimFunction_32: ; ce255 (33:6255)
+	call BattleAnim_AnonJumptable
+.anon_jumptable
+	dw Functionce260
+	dw Functionce274
+	dw Functionce278
+	dw Functionce289
+
+Functionce260: ; ce260 (33:6260)
+	call BattleAnim_IncAnonJumptableIndex
+	ld a, [hBattleTurn]
+	and a
+	jr nz, .asm_ce26c
+	ld a, $f0
+	jr .asm_ce26e
+
+.asm_ce26c
+	ld a, $cc
+.asm_ce26e
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	ld [hl], a
+	ret
+
+Functionce274: ; ce274 (33:6274)
+	call Functionce29f
+	ret
+
+Functionce278: ; ce278 (33:6278)
+	call Functionce29f
+	ld hl, BATTLEANIMSTRUCT_07
+	add hl, bc
+	ld a, [hl]
+	cp $84
+	ret nc
+	ld a, $4
+	call Functionce70a
+	ret
+
+Functionce289: ; ce289 (33:6289)
+	call Functionce29f
+	ld hl, BATTLEANIMSTRUCT_07
+	add hl, bc
+	ld a, [hl]
+	cp $d0
+	jr nc, .asm_ce29b
+	ld a, $4
+	call Functionce70a
+	ret
+
+.asm_ce29b
+	call DeinitBattleAnimation
+	ret
+
+Functionce29f: ; ce29f (33:629f)
+	ld hl, BATTLEANIMSTRUCT_10
+	ADD HL, BC
+	ld a, [hl]
+	and $7
+	inc [hl]
+	srl a
+	ld e, a
+	ld d, $0
+	ld a, [hSGB]
+	and a
+	jr nz, .asm_ce2b6
+	ld hl, Unknown_ce2c4
+	jr .asm_ce2b9
+
+.asm_ce2b6
+	ld hl, Unknown_ce2c8
+.asm_ce2b9
+	add hl, de
+	ld a, [hl]
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	and [hl]
+	ld [wOBP0], a
+	ret
+; ce2c4 (33:62c4)
+
+Unknown_ce2c4: ; ce2c4
+	db $ff, $aa, $55, $aa
+Unknown_ce2c8: ; ce2c8
+	db $ff, $ff, $00, $00
+; ce2cc
+
+BattleAnimFunction_33: ; ce2cc (33:62cc)
+	ld hl, BATTLEANIMSTRUCT_0B
+	add hl, bc
+	ld a, [hl]
+	ld d, $18
+	call BattleAnim_Sine
+	sra a
+	sra a
+	sra a
+	ld hl, BATTLEANIMSTRUCT_10
+	ADD HL, BC
+	add [hl]
+	ld hl, BATTLEANIMSTRUCT_0A
+	add hl, bc
+	ld [hl], a
+	ld hl, BATTLEANIMSTRUCT_0B
+	add hl, bc
+	ld a, [hl]
+	inc [hl]
+	ld d, $18
+	call BattleAnim_Cosine
+	ld hl, BATTLEANIMSTRUCT_09
+	add hl, bc
+	ld [hl], a
+	ld hl, BATTLEANIMSTRUCT_10
+	ADD HL, BC
+	dec [hl]
+	dec [hl]
+	ret
+
+BattleAnimFunction_36: ; ce2fd (33:62fd)
+	call BattleAnim_AnonJumptable
+.anon_jumptable
+	dw Functionce306
+	dw Functionce330
+	dw Functionce34c
+
+Functionce306: ; ce306 (33:6306)
+	ld hl, BATTLEANIMSTRUCT_0A
+	add hl, bc
+	ld a, [hl]
+	cp $e0
+	jr nz, .asm_ce319
+	call BattleAnim_IncAnonJumptableIndex
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	ld [hl], $2
+	ret
+
+.asm_ce319
+	ld d, a
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	ld e, [hl]
+	ld hl, hPushOAM ; $ff80
+	add hl, de
+	ld e, l
+	ld d, h
+	ld hl, BATTLEANIMSTRUCT_0A
+	add hl, bc
+	ld [hl], d
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	ld [hl], e
+	ret
+
+Functionce330: ; ce330 (33:6330)
+	ld hl, BATTLEANIMSTRUCT_10
+	ADD HL, BC
+	ld a, [hl]
+	and a
+	jr z, .asm_ce33a
+	dec [hl]
+	ret
+
+.asm_ce33a
+	ld [hl], $4
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	ld a, [hl]
+	xor $ff
+	inc a
+	ld [hl], a
+	ld hl, BATTLEANIMSTRUCT_0A
+	add hl, bc
+	add [hl]
+	ld [hl], a
+	ret
+
+Functionce34c: ; ce34c (33:634c)
+	ld hl, BATTLEANIMSTRUCT_07
+	add hl, bc
+	ld a, [hl]
+	cp $84
+	jr nc, .asm_ce35b
+	ld a, $4
+	call Functionce70a
+	ret
+
+.asm_ce35b
+	call DeinitBattleAnimation
+	ret
+
+BattleAnimFunction_37: ; ce35f (33:635f)
+	call BattleAnim_AnonJumptable
+.anon_jumptable
+	dw Functionce366
+	dw Functionce375
+
+Functionce366: ; ce366 (33:6366)
+	call BattleAnim_IncAnonJumptableIndex
+	ld hl, BATTLEANIMSTRUCT_0B
+	add hl, bc
+	ld a, [hl]
+	and $7f
+	add $81
+	call ReinitBattleAnimFrameset
+
+Functionce375: ; ce375 (33:6375)
+	ld hl, BATTLEANIMSTRUCT_0B
+	add hl, bc
+	bit 7, [hl]
+	jr nz, .asm_ce383
+	ld hl, BATTLEANIMSTRUCT_09
+	add hl, bc
+	inc [hl]
+	ret
+
+.asm_ce383
+	ld hl, BATTLEANIMSTRUCT_09
+	add hl, bc
+	dec [hl]
+	ret
+
+BattleAnimFunction_38: ; ce389 (33:6389)
+	call BattleAnim_AnonJumptable
+.anon_jumptable
+	dw Functionce392
+	dw Functionce39c
+	dw Functionce3ae
+
+Functionce392: ; ce392 (33:6392)
+	call BattleAnim_IncAnonJumptableIndex
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	ld [hl], $c
+	ret
+
+Functionce39c: ; ce39c (33:639c)
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	ld a, [hl]
+	and a
+	jr z, .asm_ce3a6
+	dec [hl]
+	ret
+
+.asm_ce3a6
+	call BattleAnim_IncAnonJumptableIndex
+	ld a, $20
+	call ReinitBattleAnimFrameset
+
+Functionce3ae: ; ce3ae (33:63ae)
+	ld hl, BATTLEANIMSTRUCT_0A
+	add hl, bc
+	dec [hl]
+	ret
+
+BattleAnimFunction_39: ; ce3b4 (33:63b4)
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	ld a, [hl]
+	inc [hl]
+	inc [hl]
+	push af
+	ld d, $2
+	call BattleAnim_Sine
+	ld hl, BATTLEANIMSTRUCT_0A
+	add hl, bc
+	ld [hl], a
+	pop af
+	ld d, $8
+	call BattleAnim_Cosine
+	ld hl, BATTLEANIMSTRUCT_09
+	add hl, bc
+	ld [hl], a
+	ret
+
+BattleAnimFunction_3A: ; ce3d2 (33:63d2)
+	ld hl, BATTLEANIMSTRUCT_0A
+	add hl, bc
+	ld a, [hl]
+	cp $20
+	jr c, .asm_ce3df
+	call DeinitBattleAnimation
+	ret
+
+.asm_ce3df
+	ld hl, BATTLEANIMSTRUCT_0B
+	add hl, bc
+	ld a, [hl]
+	ld d, $8
+	call BattleAnim_Cosine
+	ld hl, BATTLEANIMSTRUCT_09
+	add hl, bc
+	ld [hl], a
+	ld hl, BATTLEANIMSTRUCT_0B
+	add hl, bc
+	ld a, [hl]
+	add $2
+	ld [hl], a
+	and $7
+	ret nz
+	ld hl, BATTLEANIMSTRUCT_0A
+	add hl, bc
+	inc [hl]
+	ret
+
+BattleAnimFunction_3B: ; ce3ff (33:63ff)
+	call BattleAnim_AnonJumptable
+.anon_jumptable
+	dw Functionce406
+	dw Functionce412
+
+Functionce406: ; ce406 (33:6406)
+	ld hl, BATTLEANIMSTRUCT_0B
+	add hl, bc
+	ld a, [hl]
+	ld hl, BATTLEANIMSTRUCT_07
+	add hl, bc
+	add [hl]
+	ld [hl], a
+	ret
+
+Functionce412: ; ce412 (33:6412)
+	call DeinitBattleAnimation
+	ret
+
+BattleAnimFunction_3D: ; ce416 (33:6416)
+	ld hl, BATTLEANIMSTRUCT_0B
+	add hl, bc
+	ld a, [hl]
+	ld d, $18
+	push af
+	push de
+	call BattleAnim_Sine
+	ld hl, BATTLEANIMSTRUCT_0A
+	add hl, bc
+	ld [hl], a
+	pop de
+	pop af
+	call BattleAnim_Cosine
+	ld hl, BATTLEANIMSTRUCT_09
+	add hl, bc
+	sra a
+	ld [hl], a
+	ld hl, BATTLEANIMSTRUCT_0B
+	add hl, bc
+	ld a, [hl]
+	inc [hl]
+	ret
+
+BattleAnimFunction_3E: ; ce43a (33:643a)
+	call BattleAnim_AnonJumptable
+.anon_jumptable
+	dw Functionce443
+	dw Functionce465
+	dw Functionce490
+
+Functionce443: ; ce443 (33:6443)
+	call BattleAnim_IncAnonJumptableIndex
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	ld [hl], $28
+	ld hl, BATTLEANIMSTRUCT_0B
+	add hl, bc
+	ld a, [hl]
+	and $f
+	ld hl, BATTLEANIMSTRUCT_FRAMESET_ID
+	add hl, bc
+	add [hl]
+	call ReinitBattleAnimFrameset
+	ld hl, BATTLEANIMSTRUCT_0B
+	add hl, bc
+	ld a, [hl]
+	and $f0
+	or $8
+	ld [hl], a
+
+Functionce465: ; ce465 (33:6465)
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	ld a, [hl]
+	and a
+	jr z, .asm_ce48b
+	dec [hl]
+	add $8
+	ld d, a
+	ld hl, BATTLEANIMSTRUCT_0B
+	add hl, bc
+	ld a, [hl]
+	push af
+	push de
+	call BattleAnim_Sine
+	ld hl, BATTLEANIMSTRUCT_0A
+	add hl, bc
+	ld [hl], a
+	pop de
+	pop af
+	call BattleAnim_Cosine
+	ld hl, BATTLEANIMSTRUCT_09
+	add hl, bc
+	ld [hl], a
+	ret
+
+.asm_ce48b
+	ld [hl], $10
+	call BattleAnim_IncAnonJumptableIndex
+
+Functionce490: ; ce490 (33:6490)
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	ld a, [hl]
+	dec [hl]
+	and a
+	ret nz
+	call DeinitBattleAnimation
+	ret
+
+BattleAnimFunction_40: ; ce49c (33:649c)
+	call BattleAnim_AnonJumptable
+.anon_jumptable
+	dw Functionce4a3
+	dw Functionce4b0
+
+Functionce4a3: ; ce4a3 (33:64a3)
+	call BattleAnim_IncAnonJumptableIndex
+	ld hl, BATTLEANIMSTRUCT_0B
+	add hl, bc
+	ld a, $24
+	add [hl]
+	call ReinitBattleAnimFrameset
+
+Functionce4b0: ; ce4b0 (33:64b0)
+	ld hl, BATTLEANIMSTRUCT_0A
+	add hl, bc
+	ld a, [hl]
+	cp $38
+	jr nc, .asm_ce4d8
+	inc [hl]
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	ld a, [hl]
+	inc [hl]
+	ld d, $18
+	call BattleAnim_Cosine
+	ld hl, BATTLEANIMSTRUCT_09
+	add hl, bc
+	ld [hl], a
+	ld hl, BATTLEANIMSTRUCT_08
+	add hl, bc
+	ld a, [hl]
+	and $1
+	ret nz
+	ld hl, BATTLEANIMSTRUCT_07
+	add hl, bc
+	dec [hl]
+	ret
+
+.asm_ce4d8
+	call DeinitBattleAnimation
+	ret
+
+BattleAnimFunction_41: ; ce4dc (33:64dc)
+	ld hl, BATTLEANIMSTRUCT_0B
+	add hl, bc
+	ld a, [hl]
+	and a
+	ret z
+	ld d, a
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	ld a, [hl]
+	inc [hl]
+	call BattleAnim_Sine
+	bit 7, a
+	jr nz, .asm_ce4f4
+	xor $ff
+	inc a
+.asm_ce4f4
+	ld hl, BATTLEANIMSTRUCT_0A
+	add hl, bc
+	ld [hl], a
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	ld a, [hl]
+	and $1f
+	ret nz
+	ld hl, BATTLEANIMSTRUCT_0B
+	add hl, bc
+	srl [hl]
+	ret
+
+BattleAnimFunction_43: ; ce508 (33:6508)
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	ld a, [hl]
+	cp $10
+	jr nc, .asm_ce52e
+	inc [hl]
+	inc [hl]
+	ld d, a
+	ld hl, BATTLEANIMSTRUCT_0B
+	add hl, bc
+	ld a, [hl]
+	push af
+	push de
+	call BattleAnim_Sine
+	ld hl, BATTLEANIMSTRUCT_0A
+	add hl, bc
+	ld [hl], a
+	pop de
+	pop af
+	call BattleAnim_Cosine
+	ld hl, BATTLEANIMSTRUCT_09
+	add hl, bc
+	ld [hl], a
+	ret
+
+.asm_ce52e
+	call DeinitBattleAnimation
+	ret
+
+BattleAnimFunction_44: ; ce532 (33:6532)
+	ld hl, BATTLEANIMSTRUCT_0B
+	add hl, bc
+	ld e, [hl]
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	ld d, [hl]
+	ld a, e
+	and $c0
+	rlca
+	rlca
+	add [hl]
+	ld [hl], a
+	ld a, e
+	and $3f
+	push af
+	push de
+	call BattleAnim_Sine
+	ld hl, BATTLEANIMSTRUCT_0A
+	add hl, bc
+	ld [hl], a
+	pop de
+	pop af
+	call BattleAnim_Cosine
+	ld hl, BATTLEANIMSTRUCT_09
+	add hl, bc
+	ld [hl], a
+	ret
+
+BattleAnimFunction_45: ; ce55b (33:655b)
+	call BattleAnim_AnonJumptable
+.anon_jumptable
+	dw Functionce564
+	dw Functionce56e
+	dw Functionce577
+
+Functionce564: ; ce564 (33:6564)
+	ld d, $18
+	ld hl, BATTLEANIMSTRUCT_0B
+	add hl, bc
+	ld a, [hl]
+	inc [hl]
+	jr asm_ce58f
+
+Functionce56e: ; ce56e (33:656e)
+	call BattleAnim_IncAnonJumptableIndex
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	ld [hl], $18
+
+Functionce577: ; ce577 (33:6577)
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	ld a, [hl]
+	cp $80
+	jr nc, .asm_ce58b
+	ld d, a
+	add $8
+	ld [hl], a
+	ld hl, BATTLEANIMSTRUCT_0B
+	add hl, bc
+	ld a, [hl]
+	jr asm_ce58f
+
+.asm_ce58b
+	call DeinitBattleAnimation
+	ret
+
+asm_ce58f: ; ce58f (33:658f)
+	call Functionce6f1
+	ret
+
+BattleAnimFunction_46: ; ce593 (33:6593)
+	call BattleAnim_AnonJumptable
+.anon_jumptable
+	dw Functionce5b3
+	dw Functionce59a
+
+Functionce59a: ; ce59a (33:659a)
+	ld hl, BATTLEANIMSTRUCT_07
+	add hl, bc
+	ld a, [hl]
+	cp $30
+	jr c, .asm_ce5b0
+	ld hl, BATTLEANIMSTRUCT_07
+	add hl, bc
+	dec [hl]
+	dec [hl]
+	ld hl, BATTLEANIMSTRUCT_08
+	add hl, bc
+	inc [hl]
+	inc [hl]
+	ret
+
+.asm_ce5b0
+	call DeinitBattleAnimation
+
+Functionce5b3: ; ce5b3 (33:65b3)
+	ret
+
+BattleAnimFunction_47: ; ce5b4 (33:65b4)
+	ld d, $50
+	ld hl, BATTLEANIMSTRUCT_0B
+	add hl, bc
+	ld a, [hl]
+	inc [hl]
+	inc [hl]
+	push af
+	push de
+	call BattleAnim_Sine
+	sra a
+	sra a
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	add [hl]
+	inc [hl]
+	ld hl, BATTLEANIMSTRUCT_0A
+	add hl, bc
+	ld [hl], a
+	pop de
+	pop af
+	call BattleAnim_Cosine
+	ld hl, BATTLEANIMSTRUCT_09
+	add hl, bc
+	ld [hl], a
+	ret
+
+BattleAnimFunction_48: ; ce5dc (33:65dc)
+	ld hl, BATTLEANIMSTRUCT_0A
+	add hl, bc
+	ld a, [hl]
+	cp $d0
+	jr z, .asm_ce5ea
+rept 4
+	dec [hl]
+endr
+	ret
+
+.asm_ce5ea
+	call DeinitBattleAnimation
+	ret
+
+BattleAnimFunction_49: ; ce5ee (33:65ee)
+	call BattleAnim_AnonJumptable
+.anon_jumptable
+	dw Functionce5f9
+	dw Functionce60a
+	dw Functionce622
+	dw Functionce618
+
+Functionce5f9: ; ce5f9 (33:65f9)
+	ld hl, BATTLEANIMSTRUCT_0B
+	add hl, bc
+	ld a, [hl]
+	and a
+	jr nz, asm_ce61c
+	call BattleAnim_IncAnonJumptableIndex
+	ld hl, BATTLEANIMSTRUCT_0A
+	add hl, bc
+	ld [hl], $ec
+
+Functionce60a: ; ce60a (33:660a)
+	ld hl, BATTLEANIMSTRUCT_0A
+	add hl, bc
+	ld a, [hl]
+	cp $4
+	jr z, Functionce618
+rept 4
+	inc [hl]
+endr
+	ret
+
+Functionce618: ; ce618 (33:6618)
+	call DeinitBattleAnimation
+	ret
+
+asm_ce61c: ; ce61c (33:661c)
+	call BattleAnim_IncAnonJumptableIndex
+	call BattleAnim_IncAnonJumptableIndex
+
+Functionce622: ; ce622 (33:6622)
+	ld hl, BATTLEANIMSTRUCT_0A
+	add hl, bc
+	ld a, [hl]
+	cp $d8
+	ret z
+rept 4
+	dec [hl]
+endr
+	ret
+
+BattleAnimFunction_4A: ; ce62f (33:662f)
+	call BattleAnim_AnonJumptable
+.anon_jumptable
+	dw Functionce63a
+	dw Functionce648
+	dw Functionce65c
+	dw Functionce672
+
+Functionce63a: ; ce63a (33:663a)
+	ld hl, BATTLEANIMSTRUCT_0B
+	add hl, bc
+	ld a, [hl]
+	ld hl, BATTLEANIMSTRUCT_ANON_JT_INDEX
+	add hl, bc
+	ld [hl], a
+	call BattleAnim_IncAnonJumptableIndex
+	ret
+
+Functionce648: ; ce648 (33:6648)
+	ld hl, BATTLEANIMSTRUCT_0A
+	add hl, bc
+	ld a, [hl]
+	add $4
+	cp $70
+	jr c, .asm_ce654
+	xor a
+.asm_ce654
+	ld [hl], a
+	ld hl, BATTLEANIMSTRUCT_09
+	add hl, bc
+	inc [hl]
+	inc [hl]
+	ret
+
+Functionce65c: ; ce65c (33:665c)
+	ld hl, BATTLEANIMSTRUCT_0A
+	add hl, bc
+	ld a, [hl]
+	add $4
+	cp $70
+	jr c, .asm_ce668
+	xor a
+.asm_ce668
+	ld [hl], a
+	ld hl, BATTLEANIMSTRUCT_09
+	add hl, bc
+	ld a, [hl]
+	add $8
+	ld [hl], a
+	ret
+
+Functionce672: ; ce672 (33:6672)
+	ld hl, BATTLEANIMSTRUCT_0A
+	add hl, bc
+	ld a, [hl]
+	add $4
+	cp $70
+	jr c, .asm_ce67e
+	xor a
+.asm_ce67e
+	ld [hl], a
+	ld hl, BATTLEANIMSTRUCT_09
+	add hl, bc
+	ld a, [hl]
+	add $4
+	ld [hl], a
+	ret
+
+BattleAnimFunction_4B: ; ce688 (33:6688)
+	ld hl, BATTLEANIMSTRUCT_07
+	add hl, bc
+	ld d, [hl]
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	ld e, [hl]
+	ld hl, BATTLEANIMSTRUCT_0B
+	add hl, bc
+	ld a, [hl]
+	ld l, a
+	and $f0
+	ld h, a
+	swap a
+	or h
+	ld h, a
+	ld a, l
+	and $f
+	swap a
+	ld l, a
+	add hl, de
+	ld e, l
+	ld d, h
+	ld hl, BATTLEANIMSTRUCT_07
+	add hl, bc
+	ld [hl], d
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	ld [hl], e
+	ret
+
+BattleAnimFunction_4C: ; ce6b3 (33:66b3)
+	ld d, $18
+	ld hl, BATTLEANIMSTRUCT_0B
+	add hl, bc
+	ld a, [hl]
+	inc [hl]
+	call Functionce6f1
+	ret
+
+BattleAnimFunction_4F: ; ce6bf (33:66bf)
+	ld d, $18
+	ld hl, BATTLEANIMSTRUCT_10
+	ADD HL, BC
+	ld a, [hl]
+	inc [hl]
+	srl a
+	ld hl, BATTLEANIMSTRUCT_0B
+	add hl, bc
+	add [hl]
+	call Functionce6f1
+	ret
+
+BattleAnimFunction_4D: ; ce6d2 (33:66d2)
+	ld hl, BATTLEANIMSTRUCT_0F
+	add hl, bc
+	ld a, [hl]
+	cp $20
+	jr nc, .asm_ce6ed
+	inc [hl]
+	ld hl, BATTLEANIMSTRUCT_0B
+	add hl, bc
+	ld d, [hl]
+	call BattleAnim_Sine
+	xor $ff
+	inc a
+	ld hl, BATTLEANIMSTRUCT_0A
+	add hl, bc
+	ld [hl], a
+	ret
+
+.asm_ce6ed
+	call DeinitBattleAnimation
+	ret
+
+Functionce6f1: ; ce6f1 (33:66f1)
+	push af
+	push de
+	call BattleAnim_Sine
+	sra a
+	sra a
+	ld hl, BATTLEANIMSTRUCT_0A
+	add hl, bc
+	ld [hl], a
+	pop de
+	pop af
+	call BattleAnim_Cosine
+	ld hl, BATTLEANIMSTRUCT_09
+	add hl, bc
+	ld [hl], a
+	ret
+
+Functionce70a: ; ce70a (33:670a)
+	and $f
+	ld e, a
+	ld hl, BATTLEANIMSTRUCT_07
+	add hl, bc
+	add [hl]
+	ld [hl], a
+	srl e
+	ld hl, BATTLEANIMSTRUCT_08
+	add hl, bc
+.asm_ce719
+	dec [hl]
+	dec e
+	jr nz, .asm_ce719
+	ret
+
+BattleAnim_AnonJumptable: ; ce71e (33:671e)
+	pop de
+	ld hl, BATTLEANIMSTRUCT_ANON_JT_INDEX
+	add hl, bc
+	ld l, [hl]
+	ld h, $0
+	add hl, hl
+	add hl, de
+	ld a, [hli]
+	ld h, [hl]
+	ld l, a
+	jp [hl]
+
+BattleAnim_IncAnonJumptableIndex: ; ce72c (33:672c)
+	ld hl, BATTLEANIMSTRUCT_ANON_JT_INDEX
+	add hl, bc
+	inc [hl]
+	ret
+
+BattleAnim_Cosine: ; ce732 (33:6732)
+	add $10
+BattleAnim_Sine: ; ce734 (33:6734)
+	and $3f
+	cp $20
+	jr nc, .negative
+	call .ApplySineWave
+	ld a, h
+	ret
+
+.negative
+	and $1f
+	call .ApplySineWave
+	ld a, h
+	xor $ff
+	inc a
+	ret
+
+.ApplySineWave: ; ce749 (33:6749)
+	ld e, a
+	ld a, d
+	ld d, 0
+	ld hl, BattleAnimSineWave
+	add hl, de
+	add hl, de
+	ld e, [hl]
+	inc hl
+	ld d, [hl]
+	ld hl, $0
+.multiply
+	srl a
+	jr nc, .even
+	add hl, de
+.even
+	sla e
+	rl d
+	and a
+	jr nz, .multiply
+	ret
+
+BattleAnim_Sine_e: ; ce765 (33:6765)
+	ld a, e
+	call BattleAnim_Sine
+	ld e, a
+	ret
+
+BattleAnim_Cosine_e: ; ce76b (33:676b)
+	ld a, e
+	call BattleAnim_Cosine
+	ld e, a
+	ret
+; ce771 (33:6771)
+
+BattleAnim_AbsSinePrecise: ; ce771
+	ld a, e
+	call BattleAnim_Sine
+	ld e, l
+	ld d, h
+	ret
+; ce778
+
+BattleAnim_AbsCosinePrecise: ; ce778
+	ld a, e
+	call BattleAnim_Cosine
+	ld e, l
+	ld d, h
+	ret
+; ce77f
+
+BattleAnimSineWave: ; ce77f
+	sine_wave $100
+; ce7bf
--- /dev/null
+++ b/battle/objects/gfx_headers.asm
@@ -1,0 +1,53 @@
+
+AnimObjGFX: ; cfcf6
+
+object_gfx: MACRO
+; label, # tiles
+	db \2
+	db BANK(\1)
+	dw \1
+ENDM
+
+	object_gfx AnimObj00GFX, 0
+	object_gfx AnimObj01GFX, 21
+	object_gfx AnimObj02GFX, 6
+	object_gfx AnimObj03GFX, 6
+	object_gfx AnimObj04GFX, 20
+	object_gfx AnimObj05GFX, 26
+	object_gfx AnimObj06GFX, 18
+	object_gfx AnimObj07GFX, 12
+	object_gfx AnimObj08GFX, 9
+	object_gfx AnimObj09GFX, 17
+	object_gfx AnimObj10GFX, 6
+	object_gfx AnimObj11GFX, 10
+	object_gfx AnimObj12GFX, 9
+	object_gfx AnimObj13GFX, 13
+	object_gfx AnimObj14GFX, 16
+	object_gfx AnimObj15GFX, 2
+	object_gfx AnimObj16GFX, 11
+	object_gfx AnimObj17GFX, 9
+	object_gfx AnimObj18GFX, 9
+	object_gfx AnimObj19GFX, 19
+	object_gfx AnimObj20GFX, 10
+	object_gfx AnimObj21GFX, 12
+	object_gfx AnimObj22GFX, 18
+	object_gfx AnimObj23GFX, 13
+	object_gfx AnimObj24GFX, 10
+	object_gfx AnimObj25GFX, 27
+	object_gfx AnimObj26GFX, 12
+	object_gfx AnimObj27GFX, 14
+	object_gfx AnimObj28GFX, 16
+	object_gfx AnimObj29GFX, 7
+	object_gfx AnimObj30GFX, 8
+	object_gfx AnimObj31GFX, 40
+	object_gfx AnimObj32GFX, 36
+	object_gfx AnimObj33GFX, 16
+	object_gfx AnimObj34GFX, 48
+	object_gfx AnimObj35GFX, 18
+	object_gfx AnimObj36GFX, 38
+	object_gfx AnimObj37GFX, 35
+	object_gfx AnimObj38GFX, 18
+	object_gfx AnimObj39GFX, 24
+	object_gfx NULL, 1
+	object_gfx NULL, 1
+; cfd9e
--- /dev/null
+++ b/battle/objects/oam.asm
@@ -1,0 +1,1087 @@
+
+BattleAnimOAMData: ; ceeae
+; vtile offset (?), length, address
+	dbbw $00, $10, Unknown_cf2f6 ; 00
+	dbbw $04, $09, Unknown_cf262 ; 01
+	dbbw $08, $04, Unknown_cf22e ; 02
+	dbbw $09, $04, Unknown_cf21e ; 03
+	dbbw $0d, $04, Unknown_cf386 ; 04
+	dbbw $0f, $04, Unknown_cf21e ; 05
+	dbbw $13, $04, Unknown_cf386 ; 06
+	dbbw $04, $10, Unknown_cf2f6 ; 07
+	dbbw $08, $10, Unknown_cf2f6 ; 08
+	dbbw $08, $10, Unknown_cf336 ; 09
+	dbbw $00, $04, Unknown_cf386 ; 0a
+	dbbw $02, $04, Unknown_cf21e ; 0b
+	dbbw $06, $02, Unknown_cf376 ; 0c
+	dbbw $07, $02, Unknown_cf376 ; 0d
+	dbbw $02, $04, Unknown_cf386 ; 0e
+	dbbw $04, $01, Unknown_cf736 ; 0f
+	dbbw $05, $01, Unknown_cf736 ; 10
+	dbbw $00, $02, Unknown_cf20e ; 11
+	dbbw $02, $02, Unknown_cf20e ; 12
+	dbbw $00, $04, Unknown_cf3a6 ; 13
+	dbbw $00, $01, Unknown_cf736 ; 14
+	dbbw $01, $01, Unknown_cf736 ; 15
+	dbbw $02, $01, Unknown_cf736 ; 16
+	dbbw $03, $01, Unknown_cf736 ; 17
+	dbbw $00, $04, Unknown_cf22e ; 18
+	dbbw $01, $10, Unknown_cf2f6 ; 19
+	dbbw $05, $10, Unknown_cf2f6 ; 1a
+	dbbw $00, $04, Unknown_cf21e ; 1b
+	dbbw $05, $0c, Unknown_cf2b6 ; 1c
+	dbbw $02, $04, Unknown_cf22e ; 1d
+	dbbw $06, $01, Unknown_cf736 ; 1e
+	dbbw $07, $01, Unknown_cf736 ; 1f
+	dbbw $08, $01, Unknown_cf736 ; 20
+	dbbw $04, $04, Unknown_cf21e ; 21
+	dbbw $09, $16, Unknown_cf3b6 ; 22
+	dbbw $04, $02, Unknown_cf20e ; 23
+	dbbw $06, $02, Unknown_cf20e ; 24
+	dbbw $0c, $01, Unknown_cf736 ; 25
+	dbbw $0a, $01, Unknown_cf736 ; 26
+	dbbw $0b, $04, Unknown_cf22e ; 27
+	dbbw $08, $04, Unknown_cf386 ; 28
+	dbbw $06, $04, Unknown_cf386 ; 29
+	dbbw $00, $05, Unknown_cf40e ; 2a
+	dbbw $03, $06, Unknown_cf422 ; 2b
+	dbbw $00, $07, Unknown_cf43a ; 2c
+	dbbw $03, $08, Unknown_cf456 ; 2d
+	dbbw $00, $09, Unknown_cf476 ; 2e
+	dbbw $00, $04, Unknown_cf49a ; 2f
+	dbbw $02, $04, Unknown_cf4aa ; 30
+	dbbw $04, $06, Unknown_cf4ba ; 31
+	dbbw $00, $02, Unknown_cf4da ; 32
+	dbbw $00, $07, Unknown_cf512 ; 33
+	dbbw $00, $0e, Unknown_cf4da ; 34
+	dbbw $00, $15, Unknown_cf512 ; 35
+	dbbw $00, $02, Unknown_cf566 ; 36
+	dbbw $00, $06, Unknown_cf566 ; 37
+	dbbw $00, $0a, Unknown_cf566 ; 38
+	dbbw $00, $0e, Unknown_cf566 ; 39
+	dbbw $00, $02, Unknown_cf59e ; 3a
+	dbbw $00, $06, Unknown_cf59e ; 3b
+	dbbw $00, $0a, Unknown_cf59e ; 3c
+	dbbw $00, $0e, Unknown_cf59e ; 3d
+	dbbw $00, $04, Unknown_cf5d6 ; 3e
+	dbbw $00, $10, Unknown_cf5d6 ; 3f
+	dbbw $00, $1a, Unknown_cf5d6 ; 40
+	dbbw $00, $1a, Unknown_cf63e ; 41
+	dbbw $0e, $04, Unknown_cf6a6 ; 42
+	dbbw $0e, $08, Unknown_cf6a6 ; 43
+	dbbw $0e, $04, Unknown_cf6c6 ; 44
+	dbbw $0e, $08, Unknown_cf6c6 ; 45
+	dbbw $0e, $04, Unknown_cf6e6 ; 46
+	dbbw $0e, $04, Unknown_cf6f6 ; 47
+	dbbw $00, $06, Unknown_cf706 ; 48
+	dbbw $03, $04, Unknown_cf71e ; 49
+	dbbw $03, $02, Unknown_cf72e ; 4a
+	dbbw $01, $05, Unknown_cf736 ; 4b
+	dbbw $01, $06, Unknown_cf74a ; 4c
+	dbbw $01, $07, Unknown_cf762 ; 4d
+	dbbw $01, $03, Unknown_cf762 ; 4e
+	dbbw $01, $08, Unknown_cf77e ; 4f
+	dbbw $01, $09, Unknown_cf79e ; 50
+	dbbw $01, $0a, Unknown_cf7c2 ; 51
+	dbbw $01, $06, Unknown_cf7c2 ; 52
+	dbbw $00, $09, Unknown_cf262 ; 53
+	dbbw $04, $04, Unknown_cf22e ; 54
+	dbbw $05, $04, Unknown_cf22e ; 55
+	dbbw $00, $02, Unknown_cf216 ; 56
+	dbbw $02, $02, Unknown_cf216 ; 57
+	dbbw $04, $02, Unknown_cf216 ; 58
+	dbbw $02, $04, Unknown_cf7ea ; 59
+	dbbw $02, $04, Unknown_cf7fa ; 5a
+	dbbw $02, $02, Unknown_cf376 ; 5b
+	dbbw $04, $02, Unknown_cf376 ; 5c
+	dbbw $06, $04, Unknown_cf396 ; 5d
+	dbbw $08, $02, Unknown_cf376 ; 5e
+	dbbw $09, $02, Unknown_cf376 ; 5f
+	dbbw $05, $02, Unknown_cf80a ; 60
+	dbbw $00, $02, Unknown_cf812 ; 61
+	dbbw $00, $05, Unknown_cf812 ; 62
+	dbbw $00, $09, Unknown_cf812 ; 63
+	dbbw $09, $09, Unknown_cf812 ; 64
+	dbbw $00, $04, Unknown_cf836 ; 65
+	dbbw $00, $07, Unknown_cf836 ; 66
+	dbbw $00, $09, Unknown_cf836 ; 67
+	dbbw $09, $09, Unknown_cf836 ; 68
+	dbbw $04, $01, Unknown_cf80e ; 69
+	dbbw $05, $02, Unknown_cf37e ; 6a
+	dbbw $06, $04, Unknown_cf21e ; 6b
+	dbbw $0a, $04, Unknown_cf21e ; 6c
+	dbbw $0e, $04, Unknown_cf21e ; 6d
+	dbbw $08, $05, Unknown_cf8f6 ; 6e
+	dbbw $0d, $03, Unknown_cf90a ; 6f
+	dbbw $01, $08, Unknown_cfa06 ; 70
+	dbbw $03, $08, Unknown_cfa06 ; 71
+	dbbw $05, $08, Unknown_cfa06 ; 72
+	dbbw $07, $08, Unknown_cfa06 ; 73
+	dbbw $06, $04, Unknown_cf22e ; 74
+	dbbw $07, $04, Unknown_cf22e ; 75
+	dbbw $0a, $02, Unknown_cf4d2 ; 76
+	dbbw $00, $01, Unknown_cf916 ; 77
+	dbbw $00, $03, Unknown_cf91a ; 78
+	dbbw $00, $06, Unknown_cf926 ; 79
+	dbbw $00, $09, Unknown_cf93e ; 7a
+	dbbw $00, $0c, Unknown_cf962 ; 7b
+	dbbw $00, $0e, Unknown_cf992 ; 7c
+	dbbw $00, $0f, Unknown_cf9ca ; 7d
+	dbbw $04, $04, Unknown_cf21e ; 7e
+	dbbw $08, $04, Unknown_cf21e ; 7f
+	dbbw $0d, $01, Unknown_cf736 ; 80
+	dbbw $0e, $04, Unknown_cfa26 ; 81
+	dbbw $10, $01, Unknown_cf736 ; 82
+	dbbw $11, $01, Unknown_cf736 ; 83
+	dbbw $04, $02, Unknown_cf37e ; 84
+	dbbw $05, $02, Unknown_cf37e ; 85
+	dbbw $0a, $04, Unknown_cf386 ; 86
+	dbbw $00, $08, Unknown_cfa36 ; 87
+	dbbw $00, $0c, Unknown_cfa76 ; 88
+	dbbw $00, $10, Unknown_cfa36 ; 89
+	dbbw $09, $02, Unknown_cfaa6 ; 8a
+	dbbw $09, $04, Unknown_cfaa6 ; 8b
+	dbbw $09, $06, Unknown_cfaa6 ; 8c
+	dbbw $09, $08, Unknown_cfaa6 ; 8d
+	dbbw $12, $05, Unknown_cfac6 ; 8e
+	dbbw $00, $04, Unknown_cfada ; 8f
+	dbbw $04, $04, Unknown_cfada ; 90
+	dbbw $08, $04, Unknown_cfada ; 91
+	dbbw $0c, $04, Unknown_cfada ; 92
+	dbbw $00, $06, Unknown_cfaea ; 93
+	dbbw $04, $04, Unknown_cf21e ; 94
+	dbbw $0a, $04, Unknown_cf386 ; 95
+	dbbw $15, $04, Unknown_cf4aa ; 96
+	dbbw $04, $04, Unknown_cf4aa ; 97
+	dbbw $0c, $04, Unknown_cf386 ; 98
+	dbbw $0a, $04, Unknown_cfb02 ; 99
+	dbbw $0c, $04, Unknown_cf21e ; 9a
+	dbbw $00, $24, Unknown_cfb12 ; 9b
+	dbbw $0d, $02, Unknown_cfba2 ; 9c
+	dbbw $0d, $04, Unknown_cfba2 ; 9d
+	dbbw $0d, $06, Unknown_cfba2 ; 9e
+	dbbw $02, $08, Unknown_cfbba ; 9f
+	dbbw $08, $07, Unknown_cfbda ; a0
+	dbbw $08, $05, Unknown_cfbda ; a1
+	dbbw $08, $03, Unknown_cfbda ; a2
+	dbbw $00, $10, Unknown_cf2b6 ; a3
+	dbbw $00, $09, Unknown_cfbf6 ; a4
+	dbbw $06, $09, Unknown_cfbf6 ; a5
+	dbbw $0c, $09, Unknown_cfbf6 ; a6
+	dbbw $12, $09, Unknown_cfbf6 ; a7
+	dbbw $18, $09, Unknown_cfbf6 ; a8
+	dbbw $1e, $09, Unknown_cfbf6 ; a9
+	dbbw $24, $09, Unknown_cfbf6 ; aa
+	dbbw $2a, $09, Unknown_cfbf6 ; ab
+	dbbw $03, $04, Unknown_cfc1a ; ac
+	dbbw $12, $04, Unknown_cf21e ; ad
+	dbbw $10, $04, Unknown_cf386 ; ae
+	dbbw $16, $01, Unknown_cf736 ; af
+	dbbw $17, $04, Unknown_cf22e ; b0
+	dbbw $18, $04, Unknown_cf21e ; b1
+	dbbw $1c, $04, Unknown_cf21e ; b2
+	dbbw $20, $03, Unknown_cf21e ; b3
+	dbbw $23, $04, Unknown_cf386 ; b4
+	dbbw $25, $03, Unknown_cf21e ; b5
+	dbbw $17, $04, Unknown_cf21e ; b6
+	dbbw $0a, $10, Unknown_cf2f6 ; b7
+	dbbw $10, $10, Unknown_cf2b6 ; b8
+	dbbw $00, $10, Unknown_cf2b6 ; b9
+	dbbw $04, $04, Unknown_cf21e ; ba
+	dbbw $08, $02, Unknown_cf20e ; bb
+	dbbw $20, $06, Unknown_cfc2a ; bc
+	dbbw $08, $01, Unknown_cf736 ; bd
+	dbbw $04, $04, Unknown_cf21e ; be
+	dbbw $1a, $04, Unknown_cf4aa ; bf
+	dbbw $16, $09, Unknown_cf262 ; c0
+	dbbw $10, $10, Unknown_cfc42 ; c1
+	dbbw $09, $06, Unknown_cfc82 ; c2
+	dbbw $11, $09, Unknown_cf23e ; c3
+	dbbw $0e, $04, Unknown_cf21e ; c4
+	dbbw $0b, $04, Unknown_cf4aa ; c5
+	dbbw $1c, $06, Unknown_cf22e ; c6
+	dbbw $20, $10, Unknown_cfc42 ; c7
+	dbbw $05, $06, Unknown_cfc9a ; c8
+	dbbw $0b, $04, Unknown_cf21e ; c9
+	dbbw $09, $04, Unknown_cfcb2 ; ca
+	dbbw $0b, $04, Unknown_cf386 ; cb
+	dbbw $11, $0d, Unknown_cfcc2 ; cc
+	dbbw $00, $09, Unknown_cf23e ; cd
+	dbbw $09, $09, Unknown_cf23e ; ce
+	dbbw $00, $0c, Unknown_cf286 ; cf
+	dbbw $06, $0c, Unknown_cf286 ; d0
+	dbbw $0c, $0c, Unknown_cf286 ; d1
+	dbbw $12, $0c, Unknown_cf286 ; d2
+	dbbw $00, $0d, Unknown_cfcc2 ; d3
+	dbbw $00, $07, Unknown_cf85a ; d4
+	dbbw $00, $06, Unknown_cf8ae ; d5
+	dbbw $00, $0e, Unknown_cf876 ; d6
+	dbbw $00, $0c, Unknown_cf8c6 ; d7
+; cf20e
+
+Unknown_cf20e:
+	dsprite  -1, 0,  -1, 4, $00, $00
+	dsprite   0, 0,  -1, 4, $01, $00
+
+Unknown_cf216:
+	dsprite  -1, 4,  -1, 0, $00, $00
+	dsprite  -1, 4,   0, 0, $01, $00
+
+Unknown_cf21e:
+	dsprite  -1, 0,  -1, 0, $00, $00
+	dsprite  -1, 0,   0, 0, $01, $00
+	dsprite   0, 0,  -1, 0, $02, $00
+	dsprite   0, 0,   0, 0, $03, $00
+
+Unknown_cf22e:
+	dsprite  -1, 0,  -1, 0, $00, $00
+	dsprite  -1, 0,   0, 0, $00, $20
+	dsprite   0, 0,  -1, 0, $00, $40
+	dsprite   0, 0,   0, 0, $00, $60
+
+Unknown_cf23e:
+	dsprite  -2, 4,  -2, 4, $00, $00
+	dsprite  -2, 4,  -1, 4, $01, $00
+	dsprite  -2, 4,   0, 4, $02, $00
+	dsprite  -1, 4,  -2, 4, $03, $00
+	dsprite  -1, 4,  -1, 4, $04, $00
+	dsprite  -1, 4,   0, 4, $05, $00
+	dsprite   0, 4,  -2, 4, $06, $00
+	dsprite   0, 4,  -1, 4, $07, $00
+	dsprite   0, 4,   0, 4, $08, $00
+
+Unknown_cf262:
+	dsprite  -2, 4,  -2, 4, $00, $00
+	dsprite  -2, 4,  -1, 4, $01, $00
+	dsprite  -2, 4,   0, 4, $00, $20
+	dsprite  -1, 4,  -2, 4, $02, $00
+	dsprite  -1, 4,  -1, 4, $03, $00
+	dsprite  -1, 4,   0, 4, $02, $60
+	dsprite   0, 4,  -2, 4, $00, $40
+	dsprite   0, 4,  -1, 4, $01, $60
+	dsprite   0, 4,   0, 4, $00, $60
+
+Unknown_cf286:
+	dsprite  -2, 0,  -2, 4, $00, $00
+	dsprite  -2, 0,  -1, 4, $01, $00
+	dsprite  -2, 0,   0, 4, $02, $00
+	dsprite  -1, 0,  -2, 4, $03, $00
+	dsprite  -1, 0,  -1, 4, $04, $00
+	dsprite  -1, 0,   0, 4, $05, $00
+	dsprite   0, 0,  -2, 4, $05, $60
+	dsprite   0, 0,  -1, 4, $04, $60
+	dsprite   0, 0,   0, 4, $03, $60
+	dsprite   1, 0,  -2, 4, $02, $60
+	dsprite   1, 0,  -1, 4, $01, $60
+	dsprite   1, 0,   0, 4, $00, $60
+
+Unknown_cf2b6:
+	dsprite  -2, 0,  -2, 0, $00, $00
+	dsprite  -2, 0,  -1, 0, $01, $00
+	dsprite  -2, 0,   0, 0, $02, $00
+	dsprite  -2, 0,   1, 0, $03, $00
+	dsprite  -1, 0,  -2, 0, $04, $00
+	dsprite  -1, 0,  -1, 0, $05, $00
+	dsprite  -1, 0,   0, 0, $06, $00
+	dsprite  -1, 0,   1, 0, $07, $00
+	dsprite   0, 0,  -2, 0, $08, $00
+	dsprite   0, 0,  -1, 0, $09, $00
+	dsprite   0, 0,   0, 0, $0a, $00
+	dsprite   0, 0,   1, 0, $0b, $00
+	dsprite   1, 0,  -2, 0, $0c, $00
+	dsprite   1, 0,  -1, 0, $0d, $00
+	dsprite   1, 0,   0, 0, $0e, $00
+	dsprite   1, 0,   1, 0, $0f, $00
+
+Unknown_cf2f6:
+	dsprite  -2, 0,  -2, 0, $00, $00
+	dsprite  -2, 0,  -1, 0, $01, $00
+	dsprite  -1, 0,  -2, 0, $02, $00
+	dsprite  -1, 0,  -1, 0, $03, $00
+	dsprite  -2, 0,   0, 0, $01, $20
+	dsprite  -2, 0,   1, 0, $00, $20
+	dsprite  -1, 0,   0, 0, $03, $20
+	dsprite  -1, 0,   1, 0, $02, $20
+	dsprite   0, 0,  -2, 0, $02, $40
+	dsprite   0, 0,  -1, 0, $03, $40
+	dsprite   1, 0,  -2, 0, $00, $40
+	dsprite   1, 0,  -1, 0, $01, $40
+	dsprite   0, 0,   0, 0, $03, $60
+	dsprite   0, 0,   1, 0, $02, $60
+	dsprite   1, 0,   0, 0, $01, $60
+	dsprite   1, 0,   1, 0, $00, $60
+
+Unknown_cf336:
+	dsprite  -3, 4,  -3, 4, $00, $00
+	dsprite  -3, 4,  -2, 4, $01, $00
+	dsprite  -2, 4,  -3, 4, $02, $00
+	dsprite  -2, 4,  -2, 4, $03, $00
+	dsprite  -3, 4,   0, 4, $01, $20
+	dsprite  -3, 4,   1, 4, $00, $20
+	dsprite  -2, 4,   0, 4, $03, $20
+	dsprite  -2, 4,   1, 4, $02, $20
+	dsprite   0, 4,  -3, 4, $02, $40
+	dsprite   0, 4,  -2, 4, $03, $40
+	dsprite   1, 4,  -3, 4, $00, $40
+	dsprite   1, 4,  -2, 4, $01, $40
+	dsprite   0, 4,   0, 4, $03, $60
+	dsprite   0, 4,   1, 4, $02, $60
+	dsprite   1, 4,   0, 4, $01, $60
+	dsprite   1, 4,   1, 4, $00, $60
+
+Unknown_cf376:
+	dsprite  -1, 4,  -1, 0, $00, $00
+	dsprite  -1, 4,   0, 0, $00, $20
+
+Unknown_cf37e:
+	dsprite   0, 0,  -1, 0, $00, $00
+	dsprite   0, 0,   0, 0, $00, $20
+
+Unknown_cf386:
+	dsprite  -1, 0,  -1, 0, $00, $00
+	dsprite  -1, 0,   0, 0, $00, $20
+	dsprite   0, 0,  -1, 0, $01, $00
+	dsprite   0, 0,   0, 0, $01, $20
+
+Unknown_cf396:
+	dsprite  -1, 0,  -1, 0, $00, $00
+	dsprite  -1, 0,   0, 0, $01, $00
+	dsprite   0, 0,  -1, 0, $00, $40
+	dsprite   0, 0,   0, 0, $01, $40
+
+Unknown_cf3a6:
+	dsprite  -1, 2,  -1, 0, $02, $00
+	dsprite   0, 2,  -1, 0, $03, $00
+	dsprite  -2, 6,   0, 0, $02, $00
+	dsprite  -1, 6,   0, 0, $03, $00
+
+Unknown_cf3b6:
+	dsprite   1, 0, -11, 0, $01, $00
+	dsprite   0, 0, -10, 0, $02, $00
+	dsprite   0, 0,  -9, 0, $03, $00
+	dsprite   0, 0,  -8, 0, $00, $00
+	dsprite   0, 0,  -7, 0, $03, $00
+	dsprite   0, 0,  -6, 0, $00, $00
+	dsprite   0, 0,  -5, 0, $03, $00
+	dsprite   0, 0,  -4, 0, $00, $00
+	dsprite   0, 0,  -3, 0, $03, $00
+	dsprite   0, 0,  -2, 0, $00, $00
+	dsprite   0, 0,  -1, 0, $01, $00
+	dsprite  -1, 0,   0, 0, $02, $00
+	dsprite  -1, 0,   1, 0, $03, $00
+	dsprite  -1, 0,   2, 0, $00, $00
+	dsprite  -1, 0,   3, 0, $03, $00
+	dsprite  -1, 0,   4, 0, $00, $00
+	dsprite  -1, 0,   5, 0, $03, $00
+	dsprite  -1, 0,   6, 0, $00, $00
+	dsprite  -1, 0,   7, 0, $03, $00
+	dsprite  -1, 0,   8, 0, $00, $00
+	dsprite  -1, 0,   9, 0, $01, $00
+	dsprite  -2, 0,  10, 0, $02, $00
+
+Unknown_cf40e:
+	dsprite  -3, 4,  -1, 0, $00, $00
+	dsprite  -3, 4,   0, 0, $00, $20
+	dsprite  -2, 4,  -1, 0, $01, $00
+	dsprite  -2, 4,   0, 0, $01, $20
+	dsprite  -1, 4,  -1, 4, $02, $00
+
+Unknown_cf422:
+	dsprite  -4, 4,  -1, 0, $00, $00
+	dsprite  -4, 4,   0, 0, $00, $20
+	dsprite  -3, 4,  -1, 0, $01, $00
+	dsprite  -3, 4,   0, 0, $01, $20
+	dsprite  -2, 4,  -1, 4, $02, $00
+	dsprite  -1, 4,  -1, 4, $02, $00
+
+Unknown_cf43a:
+	dsprite  -5, 4,  -1, 0, $00, $00
+	dsprite  -5, 4,   0, 0, $00, $20
+	dsprite  -4, 4,  -1, 0, $01, $00
+	dsprite  -4, 4,   0, 0, $01, $20
+	dsprite  -3, 4,  -1, 4, $02, $00
+	dsprite  -2, 4,  -1, 4, $02, $00
+	dsprite  -1, 4,  -1, 4, $02, $00
+
+Unknown_cf456:
+	dsprite  -6, 4,  -1, 0, $00, $00
+	dsprite  -6, 4,   0, 0, $00, $20
+	dsprite  -5, 4,  -1, 0, $01, $00
+	dsprite  -5, 4,   0, 0, $01, $20
+	dsprite  -4, 4,  -1, 4, $02, $00
+	dsprite  -3, 4,  -1, 4, $02, $00
+	dsprite  -2, 4,  -1, 4, $02, $00
+	dsprite  -1, 4,  -1, 4, $02, $00
+
+Unknown_cf476:
+	dsprite  -7, 4,  -1, 0, $00, $00
+	dsprite  -7, 4,   0, 0, $00, $20
+	dsprite  -6, 4,  -1, 0, $01, $00
+	dsprite  -6, 4,   0, 0, $01, $20
+	dsprite  -5, 4,  -1, 4, $02, $00
+	dsprite  -4, 4,  -1, 4, $02, $00
+	dsprite  -3, 4,  -1, 4, $02, $00
+	dsprite  -2, 4,  -1, 4, $02, $00
+	dsprite  -1, 4,  -1, 4, $02, $00
+
+Unknown_cf49a:
+	dsprite  -1, 0,  -1, 0, $00, $00
+	dsprite  -1, 0,   0, 0, $00, $20
+	dsprite   0, 0,  -1, 0, $01, $00
+	dsprite   0, 0,   0, 0, $00, $60
+
+Unknown_cf4aa:
+	dsprite  -1, 0,  -1, 0, $00, $00
+	dsprite  -1, 0,   0, 0, $01, $00
+	dsprite   0, 0,  -1, 0, $01, $60
+	dsprite   0, 0,   0, 0, $00, $60
+
+Unknown_cf4ba:
+	dsprite  -2, 4,  -1, 0, $00, $00
+	dsprite  -2, 4,   0, 0, $01, $00
+	dsprite  -1, 4,  -1, 0, $02, $00
+	dsprite  -1, 4,   0, 0, $03, $00
+	dsprite   0, 4,  -1, 0, $04, $00
+	dsprite   0, 4,   0, 0, $05, $00
+
+Unknown_cf4d2:
+	dsprite  -1, 5,  -1, 0, $00, $00
+	dsprite  -1, 1,   0, 0, $00, $00
+
+Unknown_cf4da:
+	dsprite  -1, 0,  -2, 4, $00, $00
+	dsprite  -1, 0,   0, 4, $00, $00
+	dsprite  -3, 0,  -2, 4, $00, $00
+	dsprite  -3, 0,   0, 4, $00, $00
+	dsprite  -2, 0,  -3, 4, $00, $00
+	dsprite  -2, 0,  -2, 4, $01, $00
+	dsprite  -2, 0,  -1, 4, $00, $00
+	dsprite  -2, 0,   0, 4, $01, $00
+	dsprite  -2, 0,   1, 4, $00, $00
+	dsprite  -1, 0,  -4, 4, $00, $00
+	dsprite  -1, 0,  -3, 4, $01, $00
+	dsprite  -1, 0,  -1, 4, $01, $00
+	dsprite  -1, 0,   1, 4, $01, $00
+	dsprite  -1, 0,   2, 4, $00, $00
+
+Unknown_cf512:
+	dsprite  -2, 0,  -2, 4, $00, $00
+	dsprite  -2, 0,   0, 4, $00, $00
+	dsprite  -1, 0,  -3, 4, $00, $00
+	dsprite  -1, 0,  -2, 4, $01, $00
+	dsprite  -1, 0,  -1, 4, $00, $00
+	dsprite  -1, 0,   0, 4, $01, $00
+	dsprite  -1, 0,   1, 4, $00, $00
+	dsprite  -4, 0,  -2, 4, $00, $00
+	dsprite  -4, 0,   0, 4, $00, $00
+	dsprite  -3, 0,  -3, 4, $00, $00
+	dsprite  -3, 0,  -2, 4, $01, $00
+	dsprite  -3, 0,  -1, 4, $00, $00
+	dsprite  -3, 0,   0, 4, $01, $00
+	dsprite  -3, 0,   1, 4, $00, $00
+	dsprite  -2, 0,  -4, 4, $00, $00
+	dsprite  -2, 0,  -3, 4, $01, $00
+	dsprite  -2, 0,  -1, 4, $01, $00
+	dsprite  -2, 0,   1, 4, $01, $00
+	dsprite  -2, 0,   2, 4, $00, $00
+	dsprite  -1, 0,  -4, 4, $01, $00
+	dsprite  -1, 0,   2, 4, $01, $00
+
+Unknown_cf566:
+	dsprite  -7, 4,  -1, 0, $00, $00
+	dsprite  -7, 4,   0, 0, $01, $00
+	dsprite  -6, 4,  -1, 0, $02, $00
+	dsprite  -6, 4,   0, 0, $03, $00
+	dsprite  -5, 4,  -1, 0, $04, $00
+	dsprite  -5, 4,   0, 0, $05, $00
+	dsprite  -4, 4,  -1, 0, $06, $00
+	dsprite  -4, 4,   0, 0, $07, $00
+	dsprite  -3, 4,  -1, 0, $08, $00
+	dsprite  -3, 4,   0, 0, $09, $00
+	dsprite  -2, 4,  -1, 0, $0a, $00
+	dsprite  -2, 4,   0, 0, $0b, $00
+	dsprite  -1, 4,  -1, 0, $0c, $00
+	dsprite  -1, 4,   0, 0, $0d, $00
+
+Unknown_cf59e:
+	dsprite  -7, 4,  -1, 0, $0c, $00
+	dsprite  -7, 4,   0, 0, $0d, $00
+	dsprite  -6, 4,  -1, 0, $08, $00
+	dsprite  -6, 4,   0, 0, $09, $00
+	dsprite  -5, 4,  -1, 0, $04, $00
+	dsprite  -5, 4,   0, 0, $05, $00
+	dsprite  -4, 4,  -1, 0, $00, $00
+	dsprite  -4, 4,   0, 0, $01, $00
+	dsprite  -3, 4,  -1, 0, $02, $00
+	dsprite  -3, 4,   0, 0, $03, $00
+	dsprite  -2, 4,   0, 0, $02, $00
+	dsprite  -2, 4,   1, 0, $03, $00
+	dsprite  -1, 4,   0, 0, $0a, $00
+	dsprite  -1, 4,   1, 0, $0b, $00
+
+Unknown_cf5d6:
+	dsprite   1, 4,  -2, 0, $00, $40
+	dsprite   1, 4,  -1, 0, $02, $40
+	dsprite   1, 4,   0, 0, $02, $60
+	dsprite   1, 4,   1, 0, $00, $60
+	dsprite  -1, 4,  -3, 0, $09, $20
+	dsprite  -1, 4,  -2, 0, $08, $20
+	dsprite  -1, 4,  -1, 0, $06, $00
+	dsprite  -1, 4,   0, 0, $07, $00
+	dsprite  -1, 4,   1, 0, $08, $00
+	dsprite  -1, 4,   2, 0, $09, $00
+	dsprite   0, 4,  -3, 0, $01, $20
+	dsprite   0, 4,  -2, 0, $00, $20
+	dsprite   0, 4,  -1, 0, $0c, $00
+	dsprite   0, 4,   0, 0, $0d, $00
+	dsprite   0, 4,   1, 0, $00, $00
+	dsprite   0, 4,   2, 0, $01, $00
+	dsprite  -3, 4,  -2, 0, $00, $00
+	dsprite  -3, 4,  -1, 0, $02, $00
+	dsprite  -3, 4,   0, 0, $02, $20
+	dsprite  -3, 4,   1, 0, $00, $20
+	dsprite  -2, 4,  -3, 0, $03, $20
+	dsprite  -2, 4,  -2, 0, $02, $20
+	dsprite  -2, 4,  -1, 0, $04, $00
+	dsprite  -2, 4,   0, 0, $05, $00
+	dsprite  -2, 4,   1, 0, $02, $00
+	dsprite  -2, 4,   2, 0, $03, $00
+
+Unknown_cf63e:
+	dsprite  -3, 4,  -2, 0, $00, $00
+	dsprite  -3, 4,  -1, 0, $02, $00
+	dsprite  -3, 4,   0, 0, $02, $20
+	dsprite  -3, 4,   1, 0, $00, $20
+	dsprite  -2, 4,  -3, 4, $00, $00
+	dsprite  -2, 4,  -2, 4, $01, $00
+	dsprite  -2, 4,  -1, 0, $05, $20
+	dsprite  -2, 4,   0, 0, $04, $20
+	dsprite  -2, 4,   0, 4, $01, $20
+	dsprite  -2, 4,   1, 4, $00, $20
+	dsprite  -1, 4,  -3, 4, $02, $00
+	dsprite  -1, 4,  -2, 4, $03, $00
+	dsprite  -1, 4,  -1, 0, $07, $20
+	dsprite  -1, 4,   0, 0, $06, $20
+	dsprite  -1, 4,   0, 4, $03, $20
+	dsprite  -1, 4,   1, 4, $02, $20
+	dsprite   0, 4,  -3, 4, $04, $00
+	dsprite   0, 4,  -2, 4, $05, $00
+	dsprite   0, 4,  -1, 0, $0d, $20
+	dsprite   0, 4,   0, 0, $0c, $20
+	dsprite   0, 4,   0, 4, $05, $20
+	dsprite   0, 4,   1, 4, $04, $20
+	dsprite   1, 4,  -2, 0, $00, $40
+	dsprite   1, 4,  -1, 0, $02, $40
+	dsprite   1, 4,   0, 0, $02, $60
+	dsprite   1, 4,   1, 0, $00, $60
+
+Unknown_cf6a6:
+	dsprite  -3, 0,  -1, 4, $02, $00
+	dsprite   2, 0,  -1, 4, $02, $60
+	dsprite  -1, 4,  -3, 0, $01, $00
+	dsprite  -1, 4,   2, 0, $01, $60
+	dsprite  -4, 0,  -1, 4, $02, $00
+	dsprite   3, 0,  -1, 4, $02, $60
+	dsprite  -1, 4,  -4, 0, $01, $00
+	dsprite  -1, 4,   3, 0, $01, $60
+
+Unknown_cf6c6:
+	dsprite  -3, 5,  -3, 5, $00, $20
+	dsprite  -3, 5,   1, 3, $00, $00
+	dsprite   1, 3,  -3, 5, $00, $60
+	dsprite   1, 3,   1, 3, $00, $40
+	dsprite  -4, 5,  -4, 5, $00, $20
+	dsprite  -4, 5,   2, 3, $00, $00
+	dsprite   2, 3,  -4, 5, $00, $60
+	dsprite   2, 3,   2, 3, $00, $40
+
+Unknown_cf6e6:
+	dsprite  -3, 4,  -1, 4, $02, $00
+	dsprite   1, 4,  -1, 4, $02, $60
+	dsprite  -1, 4,  -3, 4, $01, $00
+	dsprite  -1, 4,   1, 4, $01, $60
+
+Unknown_cf6f6:
+	dsprite  -2, 0,  -2, 0, $00, $20
+	dsprite  -2, 0,   1, 0, $00, $00
+	dsprite   1, 0,  -2, 0, $00, $60
+	dsprite   1, 0,   1, 0, $00, $40
+
+Unknown_cf706:
+	dsprite  -3, 0,  -1, 4, $00, $00
+	dsprite  -2, 0,  -1, 2, $00, $00
+	dsprite  -1, 0,  -1, 0, $00, $00
+	dsprite   0, 0,  -1, 0, $00, $00
+	dsprite   1, 0,  -1, 2, $00, $00
+	dsprite   2, 0,  -1, 4, $00, $00
+
+Unknown_cf71e:
+	dsprite  -1, 4,  -2, 0, $00, $20
+	dsprite  -1, 2,  -1, 0, $00, $20
+	dsprite  -1, 2,   0, 0, $00, $00
+	dsprite  -1, 4,   1, 0, $00, $00
+
+Unknown_cf72e:
+	dsprite  -1, 4,  -1, 0, $00, $60
+	dsprite  -1, 4,   0, 0, $00, $40
+
+Unknown_cf736:
+	dsprite  -1, 4,  -1, 4, $00, $00
+	dsprite  -1, 4,  -2, 4, $01, $00
+	dsprite  -1, 4,  -1, 4, $01, $20
+	dsprite   0, 4,  -2, 4, $01, $40
+	dsprite   0, 4,  -1, 4, $01, $60
+
+Unknown_cf74a:
+	dsprite  -1, 4,  -1, 4, $00, $00
+	dsprite   0, 2,  -2, 6, $00, $00
+	dsprite   0, 2,  -3, 6, $01, $00
+	dsprite   0, 2,  -2, 6, $01, $20
+	dsprite   1, 2,  -3, 6, $01, $40
+	dsprite   1, 2,  -2, 6, $01, $60
+
+Unknown_cf762:
+	dsprite  -1, 4,  -1, 4, $00, $00
+	dsprite   0, 2,  -2, 6, $00, $00
+	dsprite   1, 0,  -2, 0, $00, $00
+	dsprite   1, 0,  -3, 0, $01, $00
+	dsprite   1, 0,  -2, 0, $01, $20
+	dsprite   2, 0,  -3, 0, $01, $40
+	dsprite   2, 0,  -2, 0, $01, $60
+
+Unknown_cf77e:
+	dsprite  -1, 4,  -1, 4, $00, $00
+	dsprite   0, 2,  -2, 6, $00, $00
+	dsprite   1, 0,  -2, 0, $00, $00
+	dsprite   1, 6,  -3, 2, $00, $00
+	dsprite   1, 6,  -4, 2, $01, $00
+	dsprite   1, 6,  -3, 2, $01, $20
+	dsprite   2, 6,  -4, 2, $01, $40
+	dsprite   2, 6,  -3, 2, $01, $60
+
+Unknown_cf79e:
+	dsprite  -1, 4,  -1, 4, $00, $00
+	dsprite   0, 2,  -2, 6, $00, $00
+	dsprite   1, 0,  -2, 0, $00, $00
+	dsprite   1, 6,  -3, 2, $00, $00
+	dsprite   2, 4,  -4, 4, $00, $00
+	dsprite   2, 4,  -5, 4, $01, $00
+	dsprite   2, 4,  -4, 4, $01, $20
+	dsprite   3, 4,  -5, 4, $01, $40
+	dsprite   3, 4,  -4, 4, $01, $60
+
+Unknown_cf7c2:
+	dsprite  -1, 4,  -1, 4, $00, $00
+	dsprite   0, 2,  -2, 6, $00, $00
+	dsprite   1, 0,  -2, 0, $00, $00
+	dsprite   1, 6,  -3, 2, $00, $00
+	dsprite   2, 4,  -4, 4, $00, $00
+	dsprite   3, 2,  -5, 6, $00, $00
+	dsprite   3, 2,  -6, 6, $01, $00
+	dsprite   3, 2,  -5, 6, $01, $20
+	dsprite   4, 2,  -6, 6, $01, $40
+	dsprite   4, 2,  -5, 6, $01, $60
+
+Unknown_cf7ea:
+	dsprite  -1, 4,  -2, 0, $00, $00
+	dsprite  -1, 4,  -1, 0, $01, $00
+	dsprite  -1, 4,   0, 0, $01, $20
+	dsprite  -1, 4,   1, 0, $00, $20
+
+Unknown_cf7fa:
+	dsprite  -1, 4,  -2, 0, $02, $00
+	dsprite  -1, 4,  -1, 0, $01, $00
+	dsprite  -1, 4,   0, 0, $01, $20
+	dsprite  -1, 4,   1, 0, $02, $20
+
+Unknown_cf80a:
+	dsprite  -1, 0,  -1, 4, $00, $00
+
+Unknown_cf80e:
+	dsprite   0, 0,  -1, 4, $00, $00
+
+Unknown_cf812:
+	dsprite  -1, 4,  -4, 4, $00, $00
+	dsprite  -1, 4,  -3, 4, $01, $00
+	dsprite  -1, 4,  -2, 4, $02, $00
+	dsprite  -1, 4,  -1, 4, $03, $00
+	dsprite  -1, 4,   0, 4, $04, $00
+	dsprite  -1, 4,   1, 4, $05, $00
+	dsprite  -1, 4,   2, 4, $06, $00
+	dsprite  -2, 4,   1, 4, $07, $00
+	dsprite  -2, 4,   2, 4, $08, $00
+
+Unknown_cf836:
+	dsprite  -2, 4,  -4, 4, $08, $20
+	dsprite  -2, 4,  -3, 4, $07, $20
+	dsprite  -1, 4,  -4, 4, $06, $20
+	dsprite  -1, 4,  -3, 4, $05, $20
+	dsprite  -1, 4,  -2, 4, $04, $20
+	dsprite  -1, 4,  -1, 4, $03, $20
+	dsprite  -1, 4,   0, 4, $02, $20
+	dsprite  -1, 4,   1, 4, $01, $20
+	dsprite  -1, 4,   2, 4, $00, $20
+
+Unknown_cf85a:
+	dsprite   0, 0,  -4, 4, $00, $10
+	dsprite   0, 0,  -3, 4, $01, $10
+	dsprite   0, 0,  -2, 4, $02, $10
+	dsprite   0, 0,  -1, 4, $03, $10
+	dsprite   0, 0,   0, 4, $04, $10
+	dsprite   0, 0,   1, 4, $05, $10
+	dsprite   0, 0,   2, 4, $06, $10
+
+Unknown_cf876:
+	dsprite  -1, 0,  -4, 4, $00, $10
+	dsprite   0, 0,  -4, 4, $01, $10
+	dsprite  -1, 0,  -3, 4, $02, $10
+	dsprite   0, 0,  -3, 4, $03, $10
+	dsprite  -1, 0,  -2, 4, $04, $10
+	dsprite   0, 0,  -2, 4, $05, $10
+	dsprite  -1, 0,  -1, 4, $06, $10
+	dsprite   0, 0,  -1, 4, $07, $10
+	dsprite  -1, 0,   0, 4, $08, $10
+	dsprite   0, 0,   0, 4, $09, $10
+	dsprite  -1, 0,   1, 4, $0a, $10
+	dsprite   0, 0,   1, 4, $0b, $10
+	dsprite  -1, 0,   2, 4, $0c, $10
+	dsprite   0, 0,   2, 4, $0d, $10
+
+Unknown_cf8ae:
+	dsprite   0, 0,  -3, 0, $00, $11
+	dsprite   0, 0,  -2, 0, $01, $11
+	dsprite   0, 0,  -1, 0, $02, $11
+	dsprite   0, 0,   0, 0, $03, $11
+	dsprite   0, 0,   1, 0, $04, $11
+	dsprite   0, 0,   2, 0, $05, $11
+
+Unknown_cf8c6:
+	dsprite   0, 0,  -3, 0, $00, $11
+	dsprite   1, 0,  -3, 0, $01, $11
+	dsprite   0, 0,  -2, 0, $02, $11
+	dsprite   1, 0,  -2, 0, $03, $11
+	dsprite   0, 0,  -1, 0, $04, $11
+	dsprite   1, 0,  -1, 0, $05, $11
+	dsprite   0, 0,   0, 0, $06, $11
+	dsprite   1, 0,   0, 0, $07, $11
+	dsprite   0, 0,   1, 0, $08, $11
+	dsprite   1, 0,   1, 0, $09, $11
+	dsprite   0, 0,   2, 0, $0a, $11
+	dsprite   1, 0,   2, 0, $0b, $11
+
+Unknown_cf8f6:
+	dsprite  -2, 4,   0, 4, $00, $00
+	dsprite  -1, 4,  -2, 4, $01, $00
+	dsprite  -1, 4,  -1, 4, $02, $00
+	dsprite  -1, 4,   0, 4, $03, $00
+	dsprite   0, 4,  -2, 4, $04, $00
+
+Unknown_cf90a:
+	dsprite  -1, 4,  -2, 4, $00, $00
+	dsprite  -1, 4,  -1, 4, $01, $00
+	dsprite  -1, 4,   0, 4, $02, $00
+
+Unknown_cf916:
+	dsprite  -4, 4,   1, 4, $01, $60
+
+Unknown_cf91a:
+	dsprite  -4, 4,   1, 4, $00, $00
+	dsprite  -4, 4,   0, 4, $01, $60
+	dsprite  -3, 4,   1, 4, $01, $60
+
+Unknown_cf926:
+	dsprite  -4, 4,   1, 4, $01, $00
+	dsprite  -4, 4,   0, 4, $00, $00
+	dsprite  -4, 4,  -1, 4, $01, $60
+	dsprite  -3, 4,   1, 4, $00, $00
+	dsprite  -3, 4,   0, 4, $01, $60
+	dsprite  -2, 4,   1, 4, $01, $60
+
+Unknown_cf93e:
+	dsprite  -4, 4,  -2, 4, $01, $60
+	dsprite  -4, 4,  -1, 4, $00, $00
+	dsprite  -4, 4,   0, 4, $01, $00
+	dsprite  -3, 4,  -1, 4, $01, $60
+	dsprite  -3, 4,   0, 4, $00, $00
+	dsprite  -3, 4,   1, 4, $01, $00
+	dsprite  -2, 4,   0, 4, $01, $60
+	dsprite  -2, 4,   1, 4, $00, $00
+	dsprite  -1, 4,   1, 4, $01, $60
+
+Unknown_cf962:
+	dsprite  -4, 4,  -3, 4, $01, $60
+	dsprite  -4, 4,  -2, 4, $00, $00
+	dsprite  -4, 4,  -1, 4, $01, $00
+	dsprite  -3, 4,  -2, 4, $01, $60
+	dsprite  -3, 4,  -1, 4, $00, $00
+	dsprite  -3, 4,   0, 4, $01, $00
+	dsprite  -2, 4,  -1, 4, $01, $60
+	dsprite  -2, 4,   0, 4, $00, $00
+	dsprite  -2, 4,   1, 4, $01, $00
+	dsprite  -1, 4,   0, 4, $01, $60
+	dsprite  -1, 4,   1, 4, $00, $00
+	dsprite   0, 4,   1, 4, $01, $60
+
+Unknown_cf992:
+	dsprite  -4, 4,  -3, 4, $00, $00
+	dsprite  -4, 4,  -2, 4, $01, $00
+	dsprite  -3, 4,  -3, 4, $01, $60
+	dsprite  -3, 4,  -2, 4, $00, $00
+	dsprite  -3, 4,  -1, 4, $01, $00
+	dsprite  -2, 4,  -2, 4, $01, $60
+	dsprite  -2, 4,  -1, 4, $00, $00
+	dsprite  -2, 4,   0, 4, $01, $00
+	dsprite  -1, 4,  -1, 4, $01, $60
+	dsprite  -1, 4,   0, 4, $00, $00
+	dsprite  -1, 4,   1, 4, $01, $00
+	dsprite   0, 4,   0, 4, $01, $60
+	dsprite   0, 4,   1, 4, $00, $00
+	dsprite   1, 4,   1, 4, $01, $60
+
+Unknown_cf9ca:
+	dsprite  -4, 4,  -3, 4, $01, $00
+	dsprite  -3, 4,  -3, 4, $00, $00
+	dsprite  -3, 4,  -2, 4, $01, $00
+	dsprite  -2, 4,  -3, 4, $01, $60
+	dsprite  -2, 4,  -2, 4, $00, $00
+	dsprite  -2, 4,  -1, 4, $01, $00
+	dsprite  -1, 4,  -2, 4, $01, $60
+	dsprite  -1, 4,  -1, 4, $00, $00
+	dsprite  -1, 4,   0, 4, $01, $00
+	dsprite   0, 4,  -1, 4, $01, $60
+	dsprite   0, 4,   0, 4, $00, $00
+	dsprite   0, 4,   1, 4, $01, $00
+	dsprite   1, 4,   0, 4, $01, $60
+	dsprite   1, 4,   1, 4, $00, $00
+	dsprite   2, 4,   1, 4, $01, $60
+
+Unknown_cfa06:
+	dsprite  -2, 0,  -1, 0, $00, $00
+	dsprite  -1, 0,  -1, 0, $01, $00
+	dsprite  -2, 0,   0, 0, $00, $20
+	dsprite  -1, 0,   0, 0, $01, $20
+	dsprite   0, 0,  -1, 0, $01, $40
+	dsprite   1, 0,  -1, 0, $00, $40
+	dsprite   0, 0,   0, 0, $01, $60
+	dsprite   1, 0,   0, 0, $00, $60
+
+Unknown_cfa26:
+	dsprite  -1, 0,  -1, 0, $00, $00
+	dsprite  -1, 0,   0, 0, $01, $00
+	dsprite   0, 0,  -1, 0, $01, $60
+	dsprite   0, 0,   0, 0, $00, $60
+
+Unknown_cfa36:
+	dsprite  -2, 4,  -1, 0, $00, $00
+	dsprite  -2, 4,   0, 0, $01, $00
+	dsprite  -1, 4,  -1, 0, $02, $00
+	dsprite  -1, 4,   0, 0, $03, $00
+	dsprite  -1, 4,  -1, 0, $00, $00
+	dsprite  -1, 4,   0, 0, $01, $00
+	dsprite   0, 4,  -1, 0, $02, $00
+	dsprite   0, 4,   0, 0, $03, $00
+	dsprite  -3, 4,  -1, 0, $00, $00
+	dsprite  -3, 4,   0, 0, $01, $00
+	dsprite  -2, 4,  -1, 0, $02, $00
+	dsprite  -2, 4,   0, 0, $03, $00
+	dsprite   0, 4,  -1, 0, $00, $00
+	dsprite   0, 4,   0, 0, $01, $00
+	dsprite   1, 4,  -1, 0, $02, $00
+	dsprite   1, 4,   0, 0, $03, $00
+
+Unknown_cfa76:
+	dsprite  -2, 0,  -1, 0, $00, $00
+	dsprite  -2, 0,   0, 0, $01, $00
+	dsprite  -1, 0,  -1, 0, $02, $00
+	dsprite  -1, 0,   0, 0, $03, $00
+	dsprite  -1, 0,  -1, 0, $00, $00
+	dsprite  -1, 0,   0, 0, $01, $00
+	dsprite   0, 0,  -1, 0, $02, $00
+	dsprite   0, 0,   0, 0, $03, $00
+	dsprite   0, 0,  -1, 0, $00, $00
+	dsprite   0, 0,   0, 0, $01, $00
+	dsprite   1, 0,  -1, 0, $02, $00
+	dsprite   1, 0,   0, 0, $03, $00
+
+Unknown_cfaa6:
+	dsprite  -1, 4,  -1, 4, $00, $00
+	dsprite  -1, 0,   0, 4, $00, $00
+	dsprite  -2, 4,   1, 4, $00, $00
+	dsprite  -2, 0,   2, 4, $00, $00
+	dsprite  -3, 4,   3, 4, $00, $00
+	dsprite  -3, 0,   4, 4, $00, $00
+	dsprite  -4, 0,   5, 4, $00, $00
+	dsprite  -5, 4,   6, 4, $00, $00
+
+Unknown_cfac6:
+	dsprite  -3, 4,  -1, 4, $00, $00
+	dsprite  -2, 4,  -1, 4, $01, $00
+	dsprite  -1, 4,  -1, 4, $02, $00
+	dsprite   0, 4,  -1, 4, $01, $40
+	dsprite   1, 4,  -1, 4, $00, $40
+
+Unknown_cfada:
+	dsprite  -1, 4,  -2, 0, $00, $00
+	dsprite  -1, 4,  -1, 0, $01, $00
+	dsprite  -1, 4,   0, 0, $02, $00
+	dsprite  -1, 4,   1, 0, $03, $00
+
+Unknown_cfaea:
+	dsprite  -1, 0,  -2, 4, $00, $00
+	dsprite  -1, 0,  -1, 4, $01, $00
+	dsprite  -1, 0,   0, 4, $02, $00
+	dsprite   0, 0,  -2, 4, $03, $00
+	dsprite   0, 0,  -1, 4, $04, $00
+	dsprite   0, 0,   0, 4, $05, $00
+
+Unknown_cfb02:
+	dsprite  -1, 0,  -1, 0, $00, $00
+	dsprite  -1, 0,   0, 0, $05, $00
+	dsprite   0, 0,  -1, 0, $01, $00
+	dsprite   0, 0,   0, 0, $05, $00
+
+Unknown_cfb12:
+	dsprite  -4, 4,   1, 0, $00, $00
+	dsprite  -4, 4,   2, 0, $01, $00
+	dsprite  -3, 4,  -1, 0, $02, $00
+	dsprite  -3, 4,   0, 0, $03, $00
+	dsprite  -3, 4,   1, 0, $04, $00
+	dsprite  -3, 4,   2, 0, $05, $00
+	dsprite  -3, 4,   3, 0, $06, $00
+	dsprite  -2, 4,  -2, 0, $07, $00
+	dsprite  -2, 4,  -1, 0, $08, $00
+	dsprite  -2, 4,   0, 0, $09, $00
+	dsprite  -2, 4,   1, 0, $0a, $00
+	dsprite  -2, 4,   2, 0, $0b, $00
+	dsprite  -2, 4,   3, 0, $0c, $00
+	dsprite  -2, 4,   4, 0, $0d, $00
+	dsprite  -1, 4,  -3, 0, $0e, $00
+	dsprite  -1, 4,  -2, 0, $0f, $00
+	dsprite  -1, 4,  -1, 0, $10, $00
+	dsprite  -1, 4,   0, 0, $11, $00
+	dsprite  -1, 4,   1, 0, $12, $00
+	dsprite  -1, 4,   2, 0, $13, $00
+	dsprite   0, 4,  -5, 0, $14, $00
+	dsprite   0, 4,  -4, 0, $15, $00
+	dsprite   0, 4,  -3, 0, $16, $00
+	dsprite   0, 4,  -2, 0, $17, $00
+	dsprite   0, 4,  -1, 0, $18, $00
+	dsprite   0, 4,   0, 0, $19, $00
+	dsprite   0, 4,   1, 0, $1a, $00
+	dsprite   0, 4,   2, 0, $1b, $00
+	dsprite   0, 4,   3, 0, $1c, $00
+	dsprite   1, 4,  -5, 0, $1d, $00
+	dsprite   1, 4,  -4, 0, $1e, $00
+	dsprite   1, 4,  -2, 0, $1f, $00
+	dsprite   1, 4,  -1, 0, $20, $00
+	dsprite   1, 4,   0, 0, $21, $00
+	dsprite   1, 4,   1, 0, $22, $00
+	dsprite   2, 4,   0, 0, $23, $00
+
+Unknown_cfba2:
+	dsprite   0, 4,  -1, 0, $02, $00
+	dsprite   0, 4,   0, 0, $03, $00
+	dsprite  -1, 4,  -1, 0, $01, $00
+	dsprite  -1, 4,   0, 0, $01, $20
+	dsprite  -2, 4,  -1, 0, $00, $00
+	dsprite  -2, 4,   0, 0, $00, $20
+
+Unknown_cfbba:
+	dsprite  -1, 0,  -2, 0, $00, $00
+	dsprite  -1, 0,  -1, 0, $01, $00
+	dsprite  -1, 0,   0, 0, $02, $00
+	dsprite  -1, 0,   1, 0, $03, $00
+	dsprite   0, 0,  -2, 0, $04, $00
+	dsprite   0, 0,  -1, 0, $05, $00
+	dsprite   0, 0,   0, 0, $06, $00
+	dsprite   0, 0,   1, 0, $07, $00
+
+Unknown_cfbda:
+	dsprite  -2, 4,  -1, 4, $00, $00
+	dsprite  -1, 4,  -1, 4, $00, $00
+	dsprite   0, 4,  -1, 4, $00, $00
+	dsprite  -3, 4,  -1, 4, $00, $00
+	dsprite   1, 4,  -1, 4, $00, $00
+	dsprite  -4, 4,  -1, 4, $00, $00
+	dsprite   2, 4,  -1, 4, $00, $00
+
+Unknown_cfbf6:
+	dsprite  -2, 4,  -2, 4, $00, $00
+	dsprite  -2, 4,  -1, 4, $01, $00
+	dsprite  -2, 4,   0, 4, $02, $00
+	dsprite  -1, 4,  -2, 4, $03, $00
+	dsprite  -1, 4,  -1, 4, $04, $00
+	dsprite  -1, 4,   0, 4, $05, $00
+	dsprite   0, 4,  -2, 4, $00, $40
+	dsprite   0, 4,  -1, 4, $01, $40
+	dsprite   0, 4,   0, 4, $02, $40
+
+Unknown_cfc1a:
+	dsprite  -1, 4,  -2, 0, $00, $00
+	dsprite  -1, 4,  -1, 0, $01, $00
+	dsprite  -1, 4,   0, 0, $01, $20
+	dsprite  -1, 4,   1, 0, $00, $20
+
+Unknown_cfc2a:
+	dsprite  -1, 4,  -3, 0, $00, $00
+	dsprite  -1, 4,  -2, 0, $01, $00
+	dsprite  -1, 4,  -1, 0, $02, $00
+	dsprite  -1, 4,   0, 0, $02, $20
+	dsprite  -1, 4,   1, 0, $01, $20
+	dsprite  -1, 4,   2, 0, $00, $20
+
+Unknown_cfc42:
+	dsprite  -2, 0,  -2, 0, $00, $00
+	dsprite  -2, 0,  -1, 0, $01, $00
+	dsprite  -2, 0,   0, 0, $02, $00
+	dsprite  -2, 0,   1, 0, $00, $20
+	dsprite  -1, 0,  -2, 0, $03, $00
+	dsprite  -1, 0,  -1, 0, $04, $00
+	dsprite  -1, 0,   0, 0, $04, $20
+	dsprite  -1, 0,   1, 0, $05, $00
+	dsprite   0, 0,  -2, 0, $05, $60
+	dsprite   0, 0,  -1, 0, $04, $40
+	dsprite   0, 0,   0, 0, $04, $60
+	dsprite   0, 0,   1, 0, $03, $60
+	dsprite   1, 0,  -2, 0, $00, $40
+	dsprite   1, 0,  -1, 0, $02, $60
+	dsprite   1, 0,   0, 0, $01, $60
+	dsprite   1, 0,   1, 0, $00, $60
+
+Unknown_cfc82:
+	dsprite  -1, 0,  -2, 0, $00, $00
+	dsprite  -1, 0,  -1, 0, $01, $00
+	dsprite  -1, 0,   0, 0, $00, $60
+	dsprite   0, 0,  -1, 0, $00, $00
+	dsprite   0, 0,   0, 0, $01, $00
+	dsprite   0, 0,   1, 0, $00, $60
+
+Unknown_cfc9a:
+	dsprite  -1, 0,   1, 4, $00, $00
+	dsprite  -1, 0,   2, 4, $01, $00
+	dsprite   0, 0,  -1, 4, $02, $00
+	dsprite   0, 0,   0, 4, $03, $00
+	dsprite   0, 0,   1, 4, $04, $00
+	dsprite   0, 0,   2, 4, $05, $00
+
+Unknown_cfcb2:
+	dsprite  -1, 0,  -1, 0, $00, $00
+	dsprite  -1, 0,   0, 0, $01, $60
+	dsprite   0, 0,  -1, 0, $01, $00
+	dsprite   0, 0,   0, 0, $01, $20
+
+Unknown_cfcc2:
+	dsprite  -2, 0, -13, 4, $00, $00
+	dsprite  -4, 0, -11, 4, $00, $00
+	dsprite  -1, 0,  -9, 4, $00, $00
+	dsprite  -5, 0,  -7, 4, $00, $00
+	dsprite  -3, 0,  -5, 4, $00, $00
+	dsprite  -5, 0,  -3, 4, $00, $00
+	dsprite  -3, 0,  -1, 4, $00, $00
+	dsprite  -3, 0,   0, 4, $00, $00
+	dsprite  -5, 0,   2, 4, $00, $00
+	dsprite   0, 0,   4, 4, $00, $00
+	dsprite  -2, 0,   6, 4, $00, $00
+	dsprite  -4, 0,   8, 4, $00, $00
+	dsprite  -2, 0,  10, 4, $00, $00
+; cfcf6
--- a/constants/animation_constants.asm
+++ b/constants/animation_constants.asm
@@ -1,13 +1,303 @@
+	const_def
+	const BATTLEANIMSTRUCT_INDEX
+	const BATTLEANIMSTRUCT_01
+	const BATTLEANIMSTRUCT_02
+	const BATTLEANIMSTRUCT_FRAMESET_ID
+	const BATTLEANIMSTRUCT_FUNCTION
+	const BATTLEANIMSTRUCT_05
+    const BATTLEANIMSTRUCT_TILEID
+    const BATTLEANIMSTRUCT_07
+    const BATTLEANIMSTRUCT_08
+    const BATTLEANIMSTRUCT_09
+    const BATTLEANIMSTRUCT_0A
+    const BATTLEANIMSTRUCT_0B
+    const BATTLEANIMSTRUCT_DURATION
+    const BATTLEANIMSTRUCT_FRAME
+    const BATTLEANIMSTRUCT_ANON_JT_INDEX
+    const BATTLEANIMSTRUCT_0F
+    const BATTLEANIMSTRUCT_10
+    const BATTLEANIMSTRUCT_11
+    const BATTLEANIMSTRUCT_12
+    const BATTLEANIMSTRUCT_13
+    const BATTLEANIMSTRUCT_14
+    const BATTLEANIMSTRUCT_15
+    const BATTLEANIMSTRUCT_16
+    const BATTLEANIMSTRUCT_17
+BATTLEANIMSTRUCT_LENGTH EQU const_value
 
-ANIM_OBJ_BURNED EQU $10
-ANIM_OBJ_FROZEN EQU $2a
-ANIM_OBJ_GUST EQU $3e
-ANIM_OBJ_CHICK EQU $52
-ANIM_OBJ_SKULL EQU $55
-ANIM_OBJ_PARALYZED EQU $59
-ANIM_OBJ_HEART EQU $7e
-ANIM_OBJ_FLOWER EQU $b6
-ANIM_OBJ_COTTON EQU $b7
+	const_def
+	const ANIM_OBJ_00
+    const ANIM_OBJ_01
+    const ANIM_OBJ_02
+    const ANIM_OBJ_03
+    const ANIM_OBJ_04
+    const ANIM_OBJ_05
+    const ANIM_OBJ_06
+    const ANIM_OBJ_07
+    const ANIM_OBJ_08
+    const ANIM_OBJ_09
+    const ANIM_OBJ_0A
+    const ANIM_OBJ_0B
+    const ANIM_OBJ_0C
+    const ANIM_OBJ_0D
+    const ANIM_OBJ_0E
+    const ANIM_OBJ_0F
+    const ANIM_OBJ_BURNED
+    const ANIM_OBJ_11
+    const ANIM_OBJ_12
+    const ANIM_OBJ_13
+    const ANIM_OBJ_14
+    const ANIM_OBJ_15
+    const ANIM_OBJ_16
+    const ANIM_OBJ_17
+    const ANIM_OBJ_18
+    const ANIM_OBJ_19
+    const ANIM_OBJ_1A
+    const ANIM_OBJ_1B
+    const ANIM_OBJ_1C
+    const ANIM_OBJ_1D
+    const ANIM_OBJ_1E
+    const ANIM_OBJ_1F
+    const ANIM_OBJ_20
+    const ANIM_OBJ_21
+    const ANIM_OBJ_22
+    const ANIM_OBJ_23
+    const ANIM_OBJ_24
+    const ANIM_OBJ_25
+    const ANIM_OBJ_26
+    const ANIM_OBJ_27
+    const ANIM_OBJ_28
+    const ANIM_OBJ_29
+    const ANIM_OBJ_FROZEN
+    const ANIM_OBJ_2B
+    const ANIM_OBJ_2C
+    const ANIM_OBJ_2D
+    const ANIM_OBJ_2E
+    const ANIM_OBJ_2F
+    const ANIM_OBJ_30
+    const ANIM_OBJ_31
+    const ANIM_OBJ_32
+    const ANIM_OBJ_33
+    const ANIM_OBJ_34
+    const ANIM_OBJ_35
+    const ANIM_OBJ_36
+    const ANIM_OBJ_37
+    const ANIM_OBJ_38
+    const ANIM_OBJ_39
+    const ANIM_OBJ_3A
+    const ANIM_OBJ_3B
+    const ANIM_OBJ_3C
+    const ANIM_OBJ_3D
+    const ANIM_OBJ_GUST
+    const ANIM_OBJ_3F
+    const ANIM_OBJ_40
+    const ANIM_OBJ_41
+    const ANIM_OBJ_42
+    const ANIM_OBJ_43
+    const ANIM_OBJ_44
+    const ANIM_OBJ_45
+    const ANIM_OBJ_46
+    const ANIM_OBJ_47
+    const ANIM_OBJ_48
+    const ANIM_OBJ_49
+    const ANIM_OBJ_4A
+    const ANIM_OBJ_4B
+    const ANIM_OBJ_4C
+    const ANIM_OBJ_4D
+    const ANIM_OBJ_4E
+    const ANIM_OBJ_4F
+    const ANIM_OBJ_50
+    const ANIM_OBJ_51
+    const ANIM_OBJ_CHICK
+    const ANIM_OBJ_53
+    const ANIM_OBJ_54
+    const ANIM_OBJ_SKULL
+    const ANIM_OBJ_56
+    const ANIM_OBJ_57
+    const ANIM_OBJ_58
+    const ANIM_OBJ_PARALYZED
+    const ANIM_OBJ_5A
+    const ANIM_OBJ_5B
+    const ANIM_OBJ_5C
+    const ANIM_OBJ_5D
+    const ANIM_OBJ_5E
+    const ANIM_OBJ_5F
+    const ANIM_OBJ_60
+    const ANIM_OBJ_61
+    const ANIM_OBJ_62
+    const ANIM_OBJ_63
+    const ANIM_OBJ_64
+    const ANIM_OBJ_65
+    const ANIM_OBJ_66
+    const ANIM_OBJ_67
+    const ANIM_OBJ_68
+    const ANIM_OBJ_69
+    const ANIM_OBJ_6A
+    const ANIM_OBJ_6B
+    const ANIM_OBJ_6C
+    const ANIM_OBJ_6D
+    const ANIM_OBJ_6E
+    const ANIM_OBJ_6F
+    const ANIM_OBJ_70
+    const ANIM_OBJ_71
+    const ANIM_OBJ_72
+    const ANIM_OBJ_73
+    const ANIM_OBJ_74
+    const ANIM_OBJ_75
+    const ANIM_OBJ_76
+    const ANIM_OBJ_77
+    const ANIM_OBJ_78
+    const ANIM_OBJ_79
+    const ANIM_OBJ_7A
+    const ANIM_OBJ_7B
+    const ANIM_OBJ_7C
+    const ANIM_OBJ_7D
+    const ANIM_OBJ_HEART
+    const ANIM_OBJ_7F
+    const ANIM_OBJ_80
+    const ANIM_OBJ_81
+    const ANIM_OBJ_82
+    const ANIM_OBJ_83
+    const ANIM_OBJ_84
+    const ANIM_OBJ_85
+    const ANIM_OBJ_86
+    const ANIM_OBJ_87
+    const ANIM_OBJ_88
+    const ANIM_OBJ_89
+    const ANIM_OBJ_8A
+    const ANIM_OBJ_8B
+    const ANIM_OBJ_8C
+    const ANIM_OBJ_8D
+    const ANIM_OBJ_8E
+    const ANIM_OBJ_8F
+    const ANIM_OBJ_90
+    const ANIM_OBJ_91
+    const ANIM_OBJ_92
+    const ANIM_OBJ_93
+    const ANIM_OBJ_94
+    const ANIM_OBJ_95
+    const ANIM_OBJ_96
+    const ANIM_OBJ_97
+    const ANIM_OBJ_98
+    const ANIM_OBJ_99
+    const ANIM_OBJ_9A
+    const ANIM_OBJ_9B
+    const ANIM_OBJ_9C
+    const ANIM_OBJ_9D
+    const ANIM_OBJ_9E
+    const ANIM_OBJ_9F
+    const ANIM_OBJ_A0
+    const ANIM_OBJ_A1
+    const ANIM_OBJ_A2
+    const ANIM_OBJ_A3
+    const ANIM_OBJ_A4
+    const ANIM_OBJ_A5
+    const ANIM_OBJ_A6
+    const ANIM_OBJ_A7
+    const ANIM_OBJ_A8
+    const ANIM_OBJ_A9
+    const ANIM_OBJ_AA
+    const ANIM_OBJ_AB
+    const ANIM_OBJ_AC
+    const ANIM_OBJ_AD
+    const ANIM_OBJ_AE
+    const ANIM_OBJ_AF
+    const ANIM_OBJ_B0
+    const ANIM_OBJ_B1
+    const ANIM_OBJ_B2
+    const ANIM_OBJ_B3
+    const ANIM_OBJ_B4
+    const ANIM_OBJ_B5
+    const ANIM_OBJ_FLOWER
+    const ANIM_OBJ_COTTON
+    const ANIM_OBJ_B8
+    const ANIM_OBJ_B9
+    const ANIM_OBJ_BA
+    const ANIM_OBJ_BB
+
+	const_def
+	const BATTLEANIMFUNC_00
+    const BATTLEANIMFUNC_01
+    const BATTLEANIMFUNC_02
+    const BATTLEANIMFUNC_03
+    const BATTLEANIMFUNC_04
+    const BATTLEANIMFUNC_05
+    const BATTLEANIMFUNC_06
+    const BATTLEANIMFUNC_07
+    const BATTLEANIMFUNC_08
+    const BATTLEANIMFUNC_09
+    const BATTLEANIMFUNC_0A
+    const BATTLEANIMFUNC_0B
+    const BATTLEANIMFUNC_0C
+    const BATTLEANIMFUNC_0D
+    const BATTLEANIMFUNC_0E
+    const BATTLEANIMFUNC_0F
+    const BATTLEANIMFUNC_10
+    const BATTLEANIMFUNC_11
+    const BATTLEANIMFUNC_12
+    const BATTLEANIMFUNC_13
+    const BATTLEANIMFUNC_14
+    const BATTLEANIMFUNC_15
+    const BATTLEANIMFUNC_16
+    const BATTLEANIMFUNC_17
+    const BATTLEANIMFUNC_18
+    const BATTLEANIMFUNC_19
+    const BATTLEANIMFUNC_1A
+    const BATTLEANIMFUNC_1B
+    const BATTLEANIMFUNC_1C
+    const BATTLEANIMFUNC_1D
+    const BATTLEANIMFUNC_1E
+    const BATTLEANIMFUNC_1F
+    const BATTLEANIMFUNC_20
+    const BATTLEANIMFUNC_21
+    const BATTLEANIMFUNC_22
+    const BATTLEANIMFUNC_23
+    const BATTLEANIMFUNC_24
+    const BATTLEANIMFUNC_25
+    const BATTLEANIMFUNC_26
+    const BATTLEANIMFUNC_27
+    const BATTLEANIMFUNC_28
+    const BATTLEANIMFUNC_29
+    const BATTLEANIMFUNC_2A
+    const BATTLEANIMFUNC_2B
+    const BATTLEANIMFUNC_2C
+    const BATTLEANIMFUNC_2D
+    const BATTLEANIMFUNC_2E
+    const BATTLEANIMFUNC_2F
+    const BATTLEANIMFUNC_30
+    const BATTLEANIMFUNC_31
+    const BATTLEANIMFUNC_32
+    const BATTLEANIMFUNC_33
+    const BATTLEANIMFUNC_34
+    const BATTLEANIMFUNC_35
+    const BATTLEANIMFUNC_36
+    const BATTLEANIMFUNC_37
+    const BATTLEANIMFUNC_38
+    const BATTLEANIMFUNC_39
+    const BATTLEANIMFUNC_3A
+    const BATTLEANIMFUNC_3B
+    const BATTLEANIMFUNC_3C
+    const BATTLEANIMFUNC_3D
+    const BATTLEANIMFUNC_3E
+    const BATTLEANIMFUNC_3F
+    const BATTLEANIMFUNC_40
+    const BATTLEANIMFUNC_41
+    const BATTLEANIMFUNC_42
+    const BATTLEANIMFUNC_43
+    const BATTLEANIMFUNC_44
+    const BATTLEANIMFUNC_45
+    const BATTLEANIMFUNC_46
+    const BATTLEANIMFUNC_47
+    const BATTLEANIMFUNC_48
+    const BATTLEANIMFUNC_49
+    const BATTLEANIMFUNC_4A
+    const BATTLEANIMFUNC_4B
+    const BATTLEANIMFUNC_4C
+    const BATTLEANIMFUNC_4D
+    const BATTLEANIMFUNC_4E
+    const BATTLEANIMFUNC_4F
+
+
 
 ANIM_BG_FLASH_INVERTED EQU $01
 ANIM_BG_FLASH_WHITE EQU $02
--- a/constants/battle_constants.asm
+++ b/constants/battle_constants.asm
@@ -374,30 +374,3 @@
 	const WIN
 	const LOSE
 	const DRAW
-
-	const_def
-	const BATTLEANIMSTRUCT_INDEX
-	const BATTLEANIMSTRUCT_01
-	const BATTLEANIMSTRUCT_02
-	const BATTLEANIMSTRUCT_03
-	const BATTLEANIMSTRUCT_04
-	const BATTLEANIMSTRUCT_05
-    const BATTLEANIMSTRUCT_06
-    const BATTLEANIMSTRUCT_07
-    const BATTLEANIMSTRUCT_08
-    const BATTLEANIMSTRUCT_09
-    const BATTLEANIMSTRUCT_0A
-    const BATTLEANIMSTRUCT_0B
-    const BATTLEANIMSTRUCT_0C
-    const BATTLEANIMSTRUCT_0D
-    const BATTLEANIMSTRUCT_0E
-    const BATTLEANIMSTRUCT_0F
-    const BATTLEANIMSTRUCT_10
-    const BATTLEANIMSTRUCT_11
-    const BATTLEANIMSTRUCT_12
-    const BATTLEANIMSTRUCT_13
-    const BATTLEANIMSTRUCT_14
-    const BATTLEANIMSTRUCT_15
-    const BATTLEANIMSTRUCT_16
-    const BATTLEANIMSTRUCT_17
-BATTLEANIMSTRUCT_LENGTH EQU const_value
--- a/data/sprite_engine.asm
+++ b/data/sprite_engine.asm
@@ -238,7 +238,7 @@
                 db $58, $09
                 db $5a, $0a
                 db  -2
-Unknown_8d890: 	db $50, $02 ; center
+Unknown_8d890: 	db $50, $02
                 db $5b, $02
                 db $50, $02
                 db $5b, $42
--- a/engine/sprites.asm
+++ b/engine/sprites.asm
@@ -436,7 +436,7 @@
 	and a
 	jr z, .next_frame ; finished the current sequence
 	dec [hl]
-	call GetSpriteFrameDataPointer ; load pointer from SpriteAnimFrameData
+	call .GetPointer ; load pointer from SpriteAnimFrameData
 	ld a, [hli]
 	push af
 	jr .okay
@@ -445,7 +445,7 @@
 	ld hl, SPRITEANIMSTRUCT_FRAME
 	add hl, bc
 	inc [hl]
-	call GetSpriteFrameDataPointer ; load pointer from SpriteAnimFrameData
+	call .GetPointer ; load pointer from SpriteAnimFrameData
 	ld a, [hli]
 	cp -2
 	jr z, .restart
@@ -497,7 +497,7 @@
 	jr .loop
 ; 8d189
 
-GetSpriteFrameDataPointer: ; 8d189
+.GetPointer: ; 8d189
 	; Get the data for the current frame for the current animation sequence
 
 	; SpriteAnimFrameData[SpriteAnim[SPRITEANIMSTRUCT_FRAMESET_ID]][SpriteAnim[SPRITEANIMSTRUCT_FRAME]]
--- a/home/cry.asm
+++ b/home/cry.asm
@@ -1,7 +1,7 @@
 PlayStereoCry:: ; 37b6
 	push af
 	ld a, 1
-	ld [wc2bc], a
+	ld [wStereoPanningMask], a
 	pop af
 	call _PlayCry
 	call WaitSFX
@@ -13,7 +13,7 @@
 ; Used during pic animations.
 	push af
 	ld a, 1
-	ld [wc2bc], a
+	ld [wStereoPanningMask], a
 	pop af
 	jp _PlayCry
 ; 37ce
@@ -28,7 +28,7 @@
 ; Don't wait for the cry to end.
 	push af
 	xor a
-	ld [wc2bc], a
+	ld [wStereoPanningMask], a
 	ld [CryTracks], a
 	pop af
 	call _PlayCry
--- a/macros/move_anim.asm
+++ b/macros/move_anim.asm
@@ -113,8 +113,8 @@
 	enum anim_sound_command ; e0
 anim_sound: macro
 	db anim_sound_command
-	db \1 ; tracks
-	db \2 ; id
+	db (\1 << 2) | \2 ; duration, tracks
+	db \3 ; id
 	endm
 
 	enum anim_cry_command ; e1
--- a/wram.asm
+++ b/wram.asm
@@ -330,12 +330,12 @@
 Channel2JumpCondition:: ds 1
 Channel3JumpCondition:: ds 1
 Channel4JumpCondition:: ds 1
-wc2bc:: ds 1
+wStereoPanningMask:: ds 1
 CryTracks:: ; c2bd
 ; plays only in left or right track depending on what side the monster is on
 ; both tracks active outside of battle
 	ds 1
-wc2be:: ds 1
+wSFXDuration:: ds 1
 CurSFX:: ; c2bf
 ; id of sfx currently playing
 	ds 1
@@ -3282,9 +3282,9 @@
 \1Anim01:: ds 1
 \1Anim02:: ds 1
 \1Anim03:: ds 1
-\1Anim04:: ds 1
+\1AnimFunctionIndex:: ds 1
 \1Anim05:: ds 1
-\1Anim06:: ds 1
+\1AnimTileID:: ds 1
 \1Anim07:: ds 1
 \1Anim08:: ds 1
 \1Anim09:: ds 1
@@ -3292,7 +3292,7 @@
 \1Anim0b:: ds 1
 \1Anim0c:: ds 1
 \1Anim0d:: ds 1
-\1Anim0e:: ds 1
+\1AnimAnonJumptableIndex:: ds 1
 \1Anim0f:: ds 1
 \1Anim10:: ds 1
 \1Anim11:: ds 1