summaryrefslogtreecommitdiff
path: root/home/misc_3c43.asm
diff options
context:
space:
mode:
Diffstat (limited to 'home/misc_3c43.asm')
-rw-r--r--home/misc_3c43.asm91
1 files changed, 91 insertions, 0 deletions
diff --git a/home/misc_3c43.asm b/home/misc_3c43.asm
new file mode 100644
index 0000000..0abbd79
--- /dev/null
+++ b/home/misc_3c43.asm
@@ -0,0 +1,91 @@
+INCLUDE "constants.asm"
+
+SECTION "home/misc_3c43.asm", ROM0
+
+GetPartyParamLocation:: ; 3c43 (00:3c43)
+; Get the location of parameter a from wCurPartyMon in hl
+ push bc
+ ld hl, wPartyMons
+ ld c, a
+ ld b, 0
+ add hl, bc
+ ld bc, PARTYMON_STRUCT_LENGTH
+ ld a, [wWhichPokemon]
+ call AddNTimes
+ pop bc
+ ret
+
+UseItem:: ; 3c56 (00:3c56)
+ jpba _UseItem
+
+CheckTossableItem:: ; 3c5e (00:3c5e)
+ push hl
+ push de
+ push bc
+ callab _CheckTossableItem
+ pop bc
+ pop de
+ pop hl
+ ret
+
+GetBattleAnimPointer:: ; 3c6d (00:3c6d)
+ ld a, BANK(BattleAnimationsBankRef)
+ ld [MBC3RomBank], a
+ ldh [hROMBank], a
+
+ ld a, [hli]
+ ld [wBattleAnimAddress], a
+ ld a, [hl]
+ ld [wBattleAnimAddress + 1], a
+
+ ld a, BANK(PlayBattleAnim)
+ ld [MBC3RomBank], a
+ ldh [hROMBank], a
+
+ ret
+
+GetBattleAnimByte:: ; 3c84 (00:3c84)
+ push hl
+ push de
+
+ ld hl, wBattleAnimAddress
+ ld e, [hl]
+ inc hl
+ ld d, [hl]
+
+ ld a, BANK(BattleAnimationsBankRef)
+ ld [MBC3RomBank], a
+ ldh [hROMBank], a
+
+ ld a, [de]
+ ld [wBattleAnimByte], a
+ inc de
+
+ ld a, BANK(PlayBattleAnim)
+ ld [MBC3RomBank], a
+ ldh [hROMBank], a
+
+ ld [hl], d
+ dec hl
+ ld [hl], e
+
+ pop de
+ pop hl
+
+ ld a, [wBattleAnimByte]
+ ret
+
+InitSpriteAnimStruct:: ; 3ca8 (00:3ca8)
+ ld [wSpriteAnimIDBuffer], a
+ ldh a, [hROMBank]
+ push af
+ ld a, BANK(_InitSpriteAnimStruct)
+ call Bankswitch
+ ld a, [wSpriteAnimIDBuffer]
+ call _InitSpriteAnimStruct
+ pop af
+ call Bankswitch
+ ret
+
+EmptyFunction3cbe:: ; 3cbe (00:3cbe)
+ ret \ No newline at end of file