diff options
author | yenatch <yenatch@gmail.com> | 2013-12-17 23:54:25 -0500 |
---|---|---|
committer | yenatch <yenatch@gmail.com> | 2013-12-17 23:54:25 -0500 |
commit | fa2e0108b9c1def3bede35cb6c59442d6ceb92e8 (patch) | |
tree | 3a80805b4902d5ec6457e0ca76f9902f14e2c685 | |
parent | 48be8d206c32377ec15538e9b8b6c0a60713ac81 (diff) |
split out battle animation asm (bg effects, objects, commands)
-rw-r--r-- | battle/anim_commands.asm | 1549 | ||||
-rw-r--r-- | battle/anim_objects.asm | 5037 | ||||
-rw-r--r-- | battle/anims.asm | 3 | ||||
-rw-r--r-- | battle/bg_effects.asm | 2938 | ||||
-rw-r--r-- | main.asm | 9519 |
5 files changed, 9531 insertions, 9515 deletions
diff --git a/battle/anim_commands.asm b/battle/anim_commands.asm new file mode 100644 index 000000000..c8077b710 --- /dev/null +++ b/battle/anim_commands.asm @@ -0,0 +1,1549 @@ +; Battle animation command interpreter. + + +PlayBattleAnim: ; cc0d6 + + ld a, [rSVBK] + push af + + ld a, 5 + ld [rSVBK], a + + call _PlayBattleAnim + + pop af + ld [rSVBK], a + ret +; cc0e4 + +_PlayBattleAnim: ; cc0e4 + + ld c, 6 +.wait + call BattleAnimDelayFrame + dec c + jr nz, .wait + + call BattleAnimAssignPals + call BattleAnimRequestPals + call BattleAnimDelayFrame + + ld c, 1 + ld a, [rKEY1] + bit 7, a + jr nz, .asm_cc0ff + ld c, 3 + +.asm_cc0ff + ld hl, $ff9e + ld a, [hl] + push af + + ld [hl], c + call Functioncc11c + + pop af + ld [$ff9e], a + + ld a, $1 + ld [hBGMapMode], a + + call BattleAnimDelayFrame + call BattleAnimDelayFrame + call BattleAnimDelayFrame + call WaitSFX + ret +; cc11c + +Functioncc11c: ; cc11c + + ld a, [FXAnimIDHi] + and a + jr nz, .asm_cc156 + + callba CheckBattleScene + jr c, .asm_cc141 + + call BattleAnimClearHud + call Functioncc163 + + call BattleAnimAssignPals + call BattleAnimRequestPals + + xor a + ld [hSCX], a + ld [hSCY], a + call BattleAnimDelayFrame + call BattleAnimRestoreHuds + +.asm_cc141 + ld a, [$cfca] + and a + jr z, .asm_cc15f + + ld l, a + ld h, 0 + ld de, $10e + add hl, de + ld a, l + ld [FXAnimIDLo], a + ld a, h + ld [FXAnimIDHi], a + +.asm_cc156 + call WaitSFX + call Functioncc881 + call Functioncc163 + +.asm_cc15f + call Functioncc8f6 + ret +; cc163 + +Functioncc163: ; cc163 + + call Functioncc8d3 + +.playframe + call Functioncc25f + call Functionccb48 + call Functioncc96e + call Function3b0c + call BattleAnimRequestPals + +; Speed up Rollout's animation. + ld a, [FXAnimIDHi] + or a + jr nz, .asm_cc193 + + ld a, [FXAnimIDLo] + cp ROLLOUT + jr nz, .asm_cc193 + + ld a, $2e + ld b, 5 + ld de, 4 + ld hl, ActiveBGEffects +.asm_cc18c + cp [hl] + jr z, .asm_cc196 + add hl, de + dec b + jr nz, .asm_cc18c + +.asm_cc193 + call BattleAnimDelayFrame + +.asm_cc196 + ld a, [$d40f] + bit 0, a + jr z, .playframe + + call Functioncc23d + ret +; cc1a1 + +BattleAnimClearHud: ; cc1a1 + + call BattleAnimDelayFrame + call WaitTop + call ClearActorHud + ld a, $1 + ld [hBGMapMode], a + call BattleAnimDelayFrame + call BattleAnimDelayFrame + call BattleAnimDelayFrame + call WaitTop + ret +; cc1bb + +BattleAnimRestoreHuds: ; cc1bb + + call BattleAnimDelayFrame + call WaitTop + + ld a, [rSVBK] + push af + ld a, $1 + ld [rSVBK], a + + ld hl, UpdateBattleHuds + ld a, $f + rst FarCall + + pop af + ld [rSVBK], a + + ld a, $1 + ld [hBGMapMode], a + call BattleAnimDelayFrame + call BattleAnimDelayFrame + call BattleAnimDelayFrame + call WaitTop + ret +; cc1e2 + +BattleAnimRequestPals: ; cc1e2 + + ld a, [hCGB] + and a + ret z + + ld a, [rBGP] + ld b, a + ld a, [$cfc7] + cp b + call nz, Functioncc91a + + ld a, [rOBP0] + ld b, a + ld a, [$cfc8] + cp b + call nz, Functioncc94b + ret +; cc1fb + +BattleAnimDelayFrame: ; cc1fb +; Like DelayFrame but wastes battery life. + + ld a, 1 + ld [VBlankOccurred], a +.wait + ld a, [VBlankOccurred] + and a + jr nz, .wait + ret +; cc207 + +ClearActorHud: ; cc207 + + ld a, [hBattleTurn] + and a + jr z, .player + + hlcoord 1, 0 + lb bc, 4, 10 + call ClearBox + ret + +.player + hlcoord 9, 7 + lb bc, 5, 11 + call ClearBox + ret +; cc220 + +INCBIN "baserom.gbc",$cc220,$cc23d - $cc220 + + +Functioncc23d: ; cc23d + + ld a, [$d40f] + bit 3, a + jr z, .asm_cc254 + + ld hl, Sprites + 3 + ld c, (SpritesEnd - Sprites) / 4 +.asm_cc249 + ld a, [hl] + and $f0 + ld [hli], a + inc hl + inc hl + inc hl + dec c + jr nz, .asm_cc249 + ret + +.asm_cc254 + ld hl, Sprites + ld c, SpritesEnd - Sprites + xor a +.asm_cc25a + ld [hli], a + dec c + jr nz, .asm_cc25a + ret +; cc25f + +Functioncc25f: ; cc25f + call Functioncc267 + ret nc + call Functioncc275 + ret +; cc267 + +Functioncc267: ; cc267 + ld a, [$d412] + and a + jr z, .asm_cc273 + + dec a + ld [$d412], a + and a + ret + +.asm_cc273 + scf + ret +; cc275 + +Functioncc275: ; cc275 + + call GetBattleAnimByte + + cp $ff + jr nz, .asm_cc286 + +; Return from a subroutine. + ld hl, $d40f + bit 1, [hl] + jr nz, .asm_cc28e + + set 0, [hl] + ret + +.asm_cc286 + cp $d0 + jr nc, .asm_cc28e + + ld [$d412], a + ret + +.asm_cc28e + call Functioncc293 + + jr Functioncc275 +; cc293 + +Functioncc293: ; cc293 +; Execute battle animation command in [$d417]. + ld a, [$d417] + sub $d0 + + ld e, a + ld d, 0 + ld hl, BattleAnimCommands + add hl, de + add hl, de + + ld a, [hli] + ld h, [hl] + ld l, a + jp [hl] +; cc2a4 + + +; no known jump sources +BattleAnimCommands: ; cc2a4 (33:42a4) + dw BattleAnimCmd_D0 + dw BattleAnimCmd_D1 + dw BattleAnimCmd_D2 + dw BattleAnimCmd_D3 + dw BattleAnimCmd_D4 + dw BattleAnimCmd_D5 + dw BattleAnimCmd_D6 + dw BattleAnimCmd_D7 + dw BattleAnimCmd_D8 + dw BattleAnimCmd_D9 + dw BattleAnimCmd_DA + dw BattleAnimCmd_DB + dw BattleAnimCmd_DC + dw BattleAnimCmd_DD + dw BattleAnimCmd_DE + dw BattleAnimCmd_DF + dw BattleAnimCmd_E0 + dw BattleAnimCmd_E1 + dw BattleAnimCmd_E2 + dw BattleAnimCmd_E3 + dw BattleAnimCmd_E4 + dw BattleAnimCmd_E5 + dw BattleAnimCmd_E6 + dw BattleAnimCmd_E7 + dw BattleAnimCmd_E8 + dw BattleAnimCmd_E9 + dw BattleAnimCmd_EA + dw BattleAnimCmd_EB + dw BattleAnimCmd_EC + dw BattleAnimCmd_ED + dw BattleAnimCmd_EE + dw BattleAnimCmd_EF + dw BattleAnimCmd_F0 + dw BattleAnimCmd_F1 + dw BattleAnimCmd_F2 + dw BattleAnimCmd_F3 + dw BattleAnimCmd_F4 + dw BattleAnimCmd_F5 + dw BattleAnimCmd_F6 + dw BattleAnimCmd_F7 + dw BattleAnimCmd_F8 + dw BattleAnimCmd_F9 + dw BattleAnimCmd_FA + dw BattleAnimCmd_FB + dw BattleAnimCmd_FC + dw BattleAnimCmd_FD + dw BattleAnimCmd_FE + dw BattleAnimCmd_FF + + +; no known jump sources +BattleAnimCmd_EA: +BattleAnimCmd_EB: +BattleAnimCmd_EC: +BattleAnimCmd_ED: ; cc304 (33:4304) + ret + +; no known jump sources +BattleAnimCmd_FF: ; cc305 (33:4305) + ld hl, $d40f + res 1, [hl] + ld hl, $d413 + ld e, [hl] + inc hl + ld d, [hl] + ld hl, $d410 + ld [hl], e + inc hl + ld [hl], d + ret + +; no known jump sources +BattleAnimCmd_FE: ; cc317 (33:4317) + call GetBattleAnimByte + ld e, a + call GetBattleAnimByte + ld d, a + push de + ld hl, $d410 + ld e, [hl] + inc hl + ld d, [hl] + ld hl, $d413 + ld [hl], e + inc hl + ld [hl], d + pop de + ld hl, $d410 + ld [hl], e + inc hl + ld [hl], d + ld hl, $d40f + set 1, [hl] + ret + +; no known jump sources +BattleAnimCmd_FC: ; cc339 (33:4339) + call GetBattleAnimByte + ld e, a + call GetBattleAnimByte + ld d, a + ld hl, $d410 + ld [hl], e + inc hl + ld [hl], d + ret + +; no known jump sources +BattleAnimCmd_FD: ; cc348 (33:4348) + call GetBattleAnimByte + ld hl, $d40f + bit 2, [hl] + jr nz, .asm_cc35b + and a + jr z, .asm_cc363 + dec a + set 2, [hl] + ld [$d415], a +.asm_cc35b + ld hl, $d415 + ld a, [hl] + and a + jr z, .asm_cc372 + dec [hl] +.asm_cc363 + call GetBattleAnimByte + ld e, a + call GetBattleAnimByte + ld d, a + ld hl, $d410 + ld [hl], e + inc hl + ld [hl], d + ret +.asm_cc372 + ld hl, $d40f + res 2, [hl] + ld hl, $d410 + ld e, [hl] + inc hl + ld d, [hl] + inc de + inc de + ld [hl], d + dec hl + ld [hl], e + ret + +; no known jump sources +BattleAnimCmd_EF: ; cc383 (33:4383) + ld hl, $c689 + ld a, [hl] + and a + jr z, .asm_cc39a + + dec [hl] + call GetBattleAnimByte + ld e, a + call GetBattleAnimByte + ld d, a + ld hl, $d410 + ld [hl], e + inc hl + ld [hl], d + ret + +.asm_cc39a + ld hl, $d410 + ld e, [hl] + inc hl + ld d, [hl] + inc de + inc de + ld [hl], d + dec hl + ld [hl], e + ret + +; no known jump sources +BattleAnimCmd_F9: ; cc3a6 (33:43a6) + call GetBattleAnimByte + ld [$d416], a + ret + +; no known jump sources +BattleAnimCmd_FA: ; cc3ad (33:43ad) + ld hl, $d416 + inc [hl] + ret + +; no known jump sources +BattleAnimCmd_FB: ; cc3b2 (33:43b2) + call GetBattleAnimByte + ld hl, $d416 + cp [hl] + jr z, .jump + + ld hl, $d410 + ld e, [hl] + inc hl + ld d, [hl] + inc de + inc de + ld [hl], d + dec hl + ld [hl], e + ret + +.jump + call GetBattleAnimByte + ld e, a + call GetBattleAnimByte + ld d, a + ld hl, $d410 + ld [hl], e + inc hl + ld [hl], d + ret + +; no known jump sources +BattleAnimCmd_F8: ; cc3d6 (33:43d6) + call GetBattleAnimByte + ld hl, $c689 + cp [hl] + jr z, .jump + + ld hl, $d410 + ld e, [hl] + inc hl + ld d, [hl] + inc de + inc de + ld [hl], d + dec hl + ld [hl], e + ret + +.jump + call GetBattleAnimByte + ld e, a + call GetBattleAnimByte + ld d, a + ld hl, $d410 + ld [hl], e + inc hl + ld [hl], d + ret + +; no known jump sources +BattleAnimCmd_EE: ; cc3fa (33:43fa) + call GetBattleAnimByte + ld e, a + ld a, [$c689] + and e + jr nz, .jump + + ld hl, $d410 + ld e, [hl] + inc hl + ld d, [hl] + inc de + inc de + ld [hl], d + dec hl + ld [hl], e + ret +.jump + call GetBattleAnimByte + ld e, a + call GetBattleAnimByte + ld d, a + ld hl, $d410 + ld [hl], e + inc hl + ld [hl], d + ret + +; no known jump sources +BattleAnimCmd_D0: ; cc41f (33:441f) + call GetBattleAnimByte + ld [$d419], a + call GetBattleAnimByte + ld [$d41a], a + call GetBattleAnimByte + ld [$d41b], a + call GetBattleAnimByte + ld [$d41c], a + call Functioncc9a1 + ret + +; no known jump sources +BattleAnimCmd_F0: ; cc43b (33:443b) + call GetBattleAnimByte + ld [$d419], a + call GetBattleAnimByte + ld [$d41a], a + call GetBattleAnimByte + ld [$d41b], a + call GetBattleAnimByte + ld [$d41c], a + call Functionccb4f + ret + +; no known jump sources +BattleAnimCmd_F1: ; cc457 (33:4457) + call GetBattleAnimByte + ld [$cfc7], a + ret + +; no known jump sources +BattleAnimCmd_F2: ; cc45e (33:445e) + call GetBattleAnimByte + ld [$cfc8], a + ret + +; no known jump sources +BattleAnimCmd_F3: ; cc465 (33:4465) + call GetBattleAnimByte + ld [$cfc9], a + ret + +; no known jump sources +BattleAnimCmd_DF: ; cc46c (33:446c) + ld a, [hSGB] ; $ff00+$e7 + and a + ld a, $e0 + jr z, .asm_cc475 + ld a, $f0 +.asm_cc475 + ld [$cfc8], a + ret + +; no known jump sources +BattleAnimCmd_E5: ; cc479 (33:4479) + ld hl, $d30a + ld a, $a0 +.asm_cc47e + ld [hl], $0 + inc hl + dec a + jr nz, .asm_cc47e + ret + +; no known jump sources +BattleAnimCmd_D1: +BattleAnimCmd_D2: +BattleAnimCmd_D3: +BattleAnimCmd_D4: +BattleAnimCmd_D5: ; cc485 (33:4485) + ld a, [$d417] + and $f + ld c, a + ld hl, $d300 + xor a + ld [$d419], a +.asm_cc492 + ld a, [$d419] + cp $4f + ret nc + call GetBattleAnimByte + ld [hli], a + ld a, [$d419] + ld [hli], a + push bc + push hl + ld l, a + ld h, $0 + add hl, hl + add hl, hl + add hl, hl + add hl, hl + ld de, $8310 + add hl, de + ld a, [$d417] + call Functionce846 + ld a, [$d419] + add c + ld [$d419], a + pop hl + pop bc + dec c + jr nz, .asm_cc492 + ret + +; no known jump sources +BattleAnimCmd_D6: ; cc4c0 (33:44c0) + call GetBattleAnimByte + ld e, $a + ld bc, $d30a +.asm_cc4c8 + ld hl, $0 + add hl, bc + ld d, [hl] + ld a, [$d417] + cp d + jr z, .asm_cc4dd + ld hl, $18 + add hl, bc + ld c, l + ld b, h + dec e + jr nz, .asm_cc4c8 + ret +.asm_cc4dd + ld hl, $e + add hl, bc + inc [hl] + ret + +; no known jump sources +BattleAnimCmd_D8: ; cc4e3 (33:44e3) + call GetBattleAnimByte + ld e, $5 + ld bc, $d3fa +.asm_cc4eb + ld hl, $0 + add hl, bc + ld d, [hl] + ld a, [$d417] + cp d + jr z, .asm_cc500 + ld hl, $4 + add hl, bc + ld c, l + ld b, h + dec e + jr nz, .asm_cc4eb + ret +.asm_cc500 + ld hl, $1 + add hl, bc + inc [hl] + ret + +; no known jump sources +BattleAnimCmd_D7: ; cc506 (33:4506) + call GetBattleAnimByte + ld e, $a + ld bc, $d30a +.asm_cc50e + ld hl, $0 + add hl, bc + ld d, [hl] + ld a, [$d417] + cp d + jr z, .asm_cc523 + ld hl, $18 + add hl, bc + ld c, l + ld b, h + dec e + jr nz, .asm_cc50e + ret +.asm_cc523 + call GetBattleAnimByte + ld hl, $e + add hl, bc + ld [hl], a + ret + +; no known jump sources +BattleAnimCmd_D9: ; cc52c (33:452c) + + ld hl, $d300 +.asm_cc52f + ld a, [hl] + and a + jr z, .asm_cc537 + inc hl + inc hl + jr .asm_cc52f + +.asm_cc537 + ld a, $28 + ld [hli], a + ld a, $42 + ld [hli], a + ld a, $29 + ld [hli], a + ld a, $49 + ld [hl], a + + ld hl, $8730 + ld de, $9060 + ld a, $70 + ld [$d419], a + ld a, $7 + call Functioncc561 + ld de, $9310 + ld a, $60 + ld [$d419], a + ld a, $6 + call Functioncc561 + ret + +; known jump sources: cc550 (33:4550), cc55d (33:455d), cc57b (33:457b) +Functioncc561: ; cc561 (33:4561) + push af + push hl + push de + ld bc, $3301 + call Request2bpp + pop de + ld a, [$d419] + ld l, a + ld h, $0 + add hl, de + ld e, l + ld d, h + pop hl + ld bc, $10 + add hl, bc + pop af + dec a + jr nz, Functioncc561 + ret + +; no known jump sources +BattleAnimCmd_DA: ; cc57e (33:457e) + + ld hl, $d300 +.asm_cc581 + ld a, [hl] + and a + jr z, .asm_cc589 + inc hl + inc hl + jr .asm_cc581 + +.asm_cc589 + ld a, $28 + ld [hli], a + ld a, $35 + ld [hli], a + ld a, $29 + ld [hli], a + ld a, $43 + ld [hl], a + + ld hl, $8660 + ld de, $9050 + ld a, $70 + ld [$d419], a + ld a, $7 + call Functioncc5b3 + ld de, $9310 + ld a, $60 + ld [$d419], a + ld a, $6 + call Functioncc5b3 + ret + +; known jump sources: cc5a2 (33:45a2), cc5af (33:45af), cc5cd (33:45cd) +Functioncc5b3: ; cc5b3 (33:45b3) + push af + push hl + push de + ld bc, $3302 + call Request2bpp + pop de + ld a, [$d419] + ld l, a + ld h, $0 + add hl, de + ld e, l + ld d, h + pop hl + ld bc, $20 + add hl, bc + pop af + dec a + jr nz, Functioncc5b3 + ret + +; no known jump sources +BattleAnimCmd_DB: ; cc5d0 (33:45d0) + callab GetPokeBallWobble + ld a, c + ld [$d416], a + ret + +; no known jump sources +BattleAnimCmd_E7: ; cc5db (33:45db) + ret + +; no known jump sources +BattleAnimCmd_DC: ; cc5dc (33:45dc) + ld a, [rSVBK] ; $ff00+$70 + push af + ld a, 1 + ld [rSVBK], a ; $ff00+$70 + ld a, [CurPartySpecies] ; $d108 + push af + + ld a, [hBattleTurn] ; $ff00+$e4 + and a + jr z, .player + + ld a, [TempBattleMonSpecies] ; $d205 + ld [CurPartySpecies], a ; $d108 + ld hl, BattleMonDVs ; $c632 + ld a, PREDEF_GET_UNOWN_LETTER + call Predef + ld de, $8000 + ld a, $3c + call Predef + jr .done + +.player + ld a, [TempEnemyMonSpecies] ; $d204 + ld [CurPartySpecies], a ; $d108 + ld hl, EnemyMonDVs ; $d20c + ld a, PREDEF_GET_UNOWN_LETTER + call Predef + ld de, $8000 + ld a, $3d + call Predef + +.done + pop af + ld [CurPartySpecies], a ; $d108 + pop af + ld [rSVBK], a ; $ff00+$70 + ret + +; no known jump sources +BattleAnimCmd_E8: ; cc622 (33:4622) + + ld de, $8000 + ld a, [hBattleTurn] ; $ff00+$e4 + and a + jr z, .player + + ld hl, $9000 + ld b, 0 + ld c, $31 + call Request2bpp + ret + +.player + ld hl, $9310 + ld b, 0 + ld c, $24 + call Request2bpp + ret + +; no known jump sources +BattleAnimCmd_DD: ; cc640 (33:4640) + + ld a, [rSVBK] ; $ff00+$70 + push af + ld a, 1 + ld [rSVBK], a ; $ff00+$70 + xor a + call GetSRAMBank + +GetSubstitutePic: ; cc64c + + ld hl, $a000 + ld bc, $310 +.loop + xor a + ld [hli], a + dec bc + ld a, c + or b + jr nz, .loop + + ld a, [hBattleTurn] ; $ff00+$e4 + and a + jr z, .player + + ld hl, MonsterSpriteGFX + ld de, $a000 + $130 + call CopyMonsterSpriteTile + ld hl, MonsterSpriteGFX + $10 + ld de, $a000 + $1a0 + call CopyMonsterSpriteTile + ld hl, MonsterSpriteGFX + $20 + ld de, $a000 + $140 + call CopyMonsterSpriteTile + ld hl, MonsterSpriteGFX + $30 + ld de, $a000 + $1b0 + call CopyMonsterSpriteTile + + ld hl, $9000 + ld de, $a000 + lb bc, BANK(GetSubstitutePic), 7 * 7 + call Request2bpp + jr .done + +.player + ld hl, MonsterSpriteGFX + $40 + ld de, $a000 + $100 + call CopyMonsterSpriteTile + ld hl, MonsterSpriteGFX + $50 + ld de, $a000 + $160 + call CopyMonsterSpriteTile + ld hl, MonsterSpriteGFX + $60 + ld de, $a000 + $110 + call CopyMonsterSpriteTile + ld hl, MonsterSpriteGFX + $70 + ld de, $a000 + $170 + call CopyMonsterSpriteTile + + ld hl, $9310 + ld de, $a000 + lb bc, BANK(GetSubstitutePic), 6 * 6 + call Request2bpp + +.done + call CloseSRAM + pop af + ld [rSVBK], a ; $ff00+$70 + ret + +; known jump sources: cc663 (33:4663), cc66c (33:466c), cc675 (33:4675), cc67e (33:467e), cc695 (33:4695), cc69e (33:469e), cc6a7 (33:46a7), cc6b0 (33:46b0) +CopyMonsterSpriteTile: ; cc6c6 (33:46c6) + ld bc, $10 + ld a, BANK(MonsterSpriteGFX) + call FarCopyBytes + ret + +; no known jump sources +BattleAnimCmd_E2: ; cc6cf (33:46cf) + ld a, [rSVBK] ; $ff00+$70 + push af + ld a, $1 + ld [rSVBK], a ; $ff00+$70 + xor a + call GetSRAMBank + call GetMinimizePic + call Request2bpp + call CloseSRAM + pop af + ld [rSVBK], a ; $ff00+$70 + ret + +; known jump sources: cc6da (33:46da), cc740 (33:4740) +GetMinimizePic: ; cc6e7 (33:46e7) + ld hl, $a000 + ld bc, $310 +.loop + xor a + ld [hli], a + dec bc + ld a, c + or b + jr nz, .loop + + ld a, [hBattleTurn] ; $ff00+$e4 + and a + jr z, .player + + ld de, $a1a0 + call CopyMinimizePic + ld hl, $9000 + ld de, $a000 + lb bc, BANK(GetMinimizePic), $31 + ret + +.player + ld de, $a160 + call CopyMinimizePic + ld hl, $9310 + ld de, $a000 + lb bc, BANK(GetMinimizePic), $24 + ret + +; known jump sources: cc6fc (33:46fc), cc70c (33:470c) +CopyMinimizePic: ; cc719 (33:4719) + ld hl, MinimizePic + ld bc, $10 + ld a, BANK(MinimizePic) + call FarCopyBytes + ret +; cc725 (33:4725) + +MinimizePic: ; cc725 +INCBIN "gfx/battle/minimize.2bpp" +; cc735 + +; no known jump sources +BattleAnimCmd_E9: ; cc735 (33:4735) + ld a, [rSVBK] ; $ff00+$70 + push af + ld a, $1 + ld [rSVBK], a ; $ff00+$70 + xor a + call GetSRAMBank + call GetMinimizePic + ld hl, $8000 + call Request2bpp + call CloseSRAM + pop af + ld [rSVBK], a ; $ff00+$70 + ret + +; no known jump sources +BattleAnimCmd_DE: ; cc750 (33:4750) + ld a, [rSVBK] ; $ff00+$70 + push af + ld a, $1 + ld [rSVBK], a ; $ff00+$70 + + ld a, [CurPartySpecies] ; $d108 + push af + ld a, [hBattleTurn] ; $ff00+$e4 + and a + jr z, .player + + callab Function3f486 + jr .done + +.player + callab Function3f447 + +.done + pop af + ld [CurPartySpecies], a ; $d108 + pop af + ld [rSVBK], a ; $ff00+$70 + ret + +; no known jump sources +BattleAnimCmd_E6: ; cc776 (33:4776) + ld a, [rSVBK] ; $ff00+$70 + push af + ld a, $1 + ld [rSVBK], a ; $ff00+$70 + ld a, [CurPartySpecies] ; $d108 + push af + + ld a, [$c689] + ld [CurPartySpecies], a ; $d108 + + ld a, [hBattleTurn] ; $ff00+$e4 + and a + jr z, .player + + ld hl, BattleMonDVs ; $c632 + ld a, PREDEF_GET_UNOWN_LETTER + call Predef + ld de, $9000 + ld a, $3c + call Predef + jr .done + +.player + ld hl, EnemyMonDVs ; $d20c + ld a, PREDEF_GET_UNOWN_LETTER + call Predef + ld de, $9310 + ld a, $3d + call Predef + +.done + pop af + ld [CurPartySpecies], a ; $d108 + ld b, $1 + call GetSGBLayout + pop af + ld [rSVBK], a ; $ff00+$70 + ret + +; no known jump sources +BattleAnimCmd_E3: ; cc7bb (33:47bb) + xor a + ld [hOAMUpdate], a ; $ff00+$d8 + ret + +; no known jump sources +BattleAnimCmd_E4: ; cc7bf (33:47bf) + ld a, $1 + ld [hOAMUpdate], a ; $ff00+$d8 + ret + +; no known jump sources +BattleAnimCmd_F4: ; cc7c4 (33:47c4) + ld hl, $d40f + set 3, [hl] + ret + +; no known jump sources +BattleAnimCmd_F5: ; cc7ca (33:47ca) + ret + +; no known jump sources +BattleAnimCmd_F6: ; cc7cb (33:47cb) + ret + +; no known jump sources +BattleAnimCmd_F7: ; cc7cc (33:47cc) + ret + +; no known jump sources +BattleAnimCmd_E0: ; cc7cd (33:47cd) + call GetBattleAnimByte + ld e, a + srl a + srl a + ld [$c2be], a + call Functioncc7fc + and 3 + ld [CryTracks], a ; $c2bd + + ld e, a + ld d, 0 + ld hl, Datacc7f8 + add hl, de + ld a, [hl] + ld [$c2bc], a + + call GetBattleAnimByte + ld e, a + ld d, 0 + callab PlayStereoSFX + + ret +; cc7f8 (33:47f8) + +Datacc7f8: ; cc7f8 + db $f0, $0f, $f0, $0f +; cc7fc + +; known jump sources: cc7d8 (33:47d8) +Functioncc7fc: ; cc7fc (33:47fc) + ld a, [hBattleTurn] ; $ff00+$e4 + and a + jr nz, .enemy + + ld a, e + ret + +.enemy + ld a, e + xor 1 + ret + +; no known jump sources +BattleAnimCmd_E1: ; cc807 (33:4807) + call GetBattleAnimByte + and 3 + ld e, a + ld d, 0 + ld hl, Datacc871 + add hl, de + add hl, de + add hl, de + add hl, de + + ld a, [rSVBK] ; $ff00+$70 + push af + ld a, 1 + ld [rSVBK], a ; $ff00+$70 + + ld a, [hBattleTurn] ; $ff00+$e4 + and a + jr nz, .enemy + + ld a, $f0 + ld [CryTracks], a ; $c2bd + ld a, [BattleMonSpecies] ; $c62c + jr .asm_cc834 + +.enemy + ld a, $0f + ld [CryTracks], a ; $c2bd + ld a, [EnemyMonSpecies] ; $d206 + +.asm_cc834 + push hl + call Function37f3 + pop hl + jr c, .done + + ld a, [hli] + ld c, a + ld a, [hli] + ld b, a + + push hl + ld hl, CryPitch ; $c2b0 + ld a, [hli] + ld h, [hl] + ld l, a + add hl, bc + ld a, l + ld [CryPitch], a ; $c2b0 + ld a, h + ld [CryEcho], a ; $c2b1 + pop hl + + ld a, [hli] + ld c, a + ld b, [hl] + ld hl, CryLength ; $c2b2 + ld a, [hli] + ld h, [hl] + ld l, a + add hl, bc + + ld a, l + ld [CryLength], a ; $c2b2 + ld a, h + ld [CryLength + 1], a + ld a, 1 + ld [$c2bc], a + + callab PlayCry + +.done + pop af + ld [rSVBK], a ; $ff00+$70 + ret +; cc871 (33:4871) + +Datacc871: ; cc871 +; +pitch, +echo, +length + db $00, $00, $c0, $00 + db $00, $00, $40, $00 + db $00, $00, $00, $00 + db $00, $00, $00, $00 +; cc881 + + +Functioncc881: ; cc881 + ld a, [$cfca] + cp $1 + jr z, .asm_cc88b + cp $4 + ret nz + +.asm_cc88b + ld a, [TypeModifier] + and $7f + ret z + + cp 10 + ld de, SFX_DAMAGE + jr z, .play + + ld de, SFX_SUPER_EFFECTIVE + jr nc, .play + + ld de, SFX_NOT_VERY_EFFECTIVE + +.play + call PlaySFX + ret +; cc8a4 + +BattleAnimAssignPals: ; cc8a4 + ld a, [hCGB] + and a + jr nz, .asm_cc8be + ld a, [hSGB] + and a + ld a, $e0 + jr z, .asm_cc8b2 + ld a, $f0 + +.asm_cc8b2 + ld [$cfc8], a + ld a, $e4 + ld [$cfc7], a + ld [$cfc9], a + ret + +.asm_cc8be + ld a, $e4 + ld [$cfc7], a + ld [$cfc8], a + ld [$cfc9], a + call DmgToCgbBGPals + ld de, $e4e4 + call DmgToCgbObjPals + ret +; cc8d3 + +Functioncc8d3: ; cc8d3 + ld hl, LYOverrides + ld bc, $0354 +.asm_cc8d9 + ld [hl], $0 + inc hl + dec bc + ld a, c + or b + jr nz, .asm_cc8d9 + ld hl, FXAnimIDLo + ld e, [hl] + inc hl + ld d, [hl] + ld hl, $506f + add hl, de + add hl, de + call Function3ae1 + call BattleAnimAssignPals + call BattleAnimDelayFrame + ret +; cc8f6 + +Functioncc8f6: ; cc8f6 + call WaitTop + ld a, $e4 + ld [$cfc7], a + ld [$cfc8], a + ld [$cfc9], a + call DmgToCgbBGPals + ld de, $e4e4 + call DmgToCgbObjPals + xor a + ld [hSCX], a + ld [hSCY], a + call BattleAnimDelayFrame + ld a, $1 + ld [hBGMapMode], a + ret +; cc91a + +Functioncc91a: ; cc91a + ld [rBGP], a + ld a, [hCGB] + and a + ret z + ld a, [rSVBK] + push af + ld a, $5 + ld [rSVBK], a + ld hl, $d080 + ld de, $d000 + ld a, [rBGP] + ld b, a + ld c, $7 + call CopyPals + ld hl, $d0c0 + ld de, MartPointer + ld a, [rBGP] + ld b, a + ld c, $2 + call CopyPals + pop af + ld [rSVBK], a + ld a, $1 + ld [hCGBPalUpdate], a + ret +; cc94b + +Functioncc94b: ; cc94b + ld [rOBP0], a + ld a, [hCGB] + and a + ret z + ld a, [rSVBK] + push af + ld a, $5 + ld [rSVBK], a + ld hl, $d0d0 + ld de, $d050 + ld a, [rOBP0] + ld b, a + ld c, $2 + call CopyPals + pop af + ld [rSVBK], a + ld a, $1 + ld [hCGBPalUpdate], a + ret +; cc96e + +Functioncc96e: ; cc96e + ld a, $0 + ld [$d418], a + ld hl, $d30a + ld e, $a +.asm_cc978 + ld a, [hl] + and a + jr z, .asm_cc98a + ld c, l + ld b, h + push hl + push de + call Functionccfbe + call Functioncca09 + pop de + pop hl + jr c, .asm_cc9a0 + +.asm_cc98a + ld bc, $0018 + add hl, bc + dec e + jr nz, .asm_cc978 + ld a, [$d418] + ld l, a + ld h, $c4 +.asm_cc997 + ld a, l + cp $a0 + jr nc, .asm_cc9a0 + xor a + ld [hli], a + jr .asm_cc997 + +.asm_cc9a0 + ret +; cc9a1 + + diff --git a/battle/anim_objects.asm b/battle/anim_objects.asm new file mode 100644 index 000000000..09cfb0102 --- /dev/null +++ b/battle/anim_objects.asm @@ -0,0 +1,5037 @@ +; Objects used in battle animations. + + +; known jump sources: cc437 (33:4437) +Functioncc9a1: ; cc9a1 (33:49a1) + ld hl, $d30a + ld e, $a +.asm_cc9a6 + ld a, [hl] + and a + jr z, .asm_cc9b3 + ld bc, $18 + add hl, bc + dec e + jr nz, .asm_cc9a6 + scf + ret +.asm_cc9b3 + ld c, l + ld b, h + ld hl, $d40e + inc [hl] + call Functioncc9c4 + ret + + +Functioncc9bd: ; cc9bd + ld hl, $0000 + add hl, bc + ld [hl], $0 + ret +; cc9c4 + + +; known jump sources: cc9b9 (33:49b9) +Functioncc9c4: ; cc9c4 (33:49c4) + ld a, [$d419] + ld e, a + ld d, $0 + ld hl, $4b56 + add hl, de + add hl, de + add hl, de + add hl, de + add hl, de + add hl, de + ld e, l + ld d, h + ld hl, $0 + add hl, bc + ld a, [$d40e] + ld [hli], a + ld a, [de] + inc de + ld [hli], a + ld a, [de] + inc de + ld [hli], a + ld a, [de] + inc de + ld [hli], a + ld a, [de] + inc de + ld [hli], a + ld a, [de] + inc de + ld [hli], a + ld a, [de] + call Functionccb31 + ld [hli], a + ld a, [$d41a] + ld [hli], a + ld a, [$d41b] + ld [hli], a + xor a + ld [hli], a + ld [hli], a + ld a, [$d41c] + ld [hli], a + xor a + ld [hli], a + dec a + ld [hli], a + xor a + ld [hli], a + ld [hli], a + ld [hl], a + ret + + +Functioncca09: ; cca09 + call Functionccaaa + call Functionce7d1 + cp EGG + jp z, .asm_ccaa5 + cp NUM_POKEMON + 1 + jp z, .asm_ccaa2 + push af + ld hl, $d419 + ld a, [$d420] + xor [hl] + and $e0 + ld [hl], a + pop af + push bc + call Functionce83c + ld a, [$d41b] + add [hl] + ld [$d41b], a + inc hl + ld a, [hli] + ld c, a + ld a, [hli] + ld h, [hl] + ld l, a + ld a, [$d418] + ld e, a + ld d, $c4 +.asm_cca3c + ld a, [$d41d] + ld b, a + ld a, [$d41f] + add b + ld b, a + push hl + ld a, [hl] + ld hl, $d419 + bit 6, [hl] + jr z, .asm_cca53 + add $8 + xor $ff + inc a + +.asm_cca53 + pop hl + add b + ld [de], a + inc hl + inc de + ld a, [$d41c] + ld b, a + ld a, [$d41e] + add b + ld b, a + push hl + ld a, [hl] + ld hl, $d419 + bit 5, [hl] + jr z, .asm_cca6f + add $8 + xor $ff + inc a + +.asm_cca6f + pop hl + add b + ld [de], a + inc hl + inc de + ld a, [$d41b] + add $31 + add [hl] + ld [de], a + inc hl + inc de + ld a, [$d419] + ld b, a + ld a, [hl] + xor b + and $e0 + ld b, a + ld a, [hl] + and $10 + or b + ld b, a + ld a, [OTPartyMon6Nickname] + and $f + or b + ld [de], a + inc hl + inc de + ld a, e + ld [$d418], a + cp $a0 + jr nc, .asm_ccaa7 + dec c + jr nz, .asm_cca3c + pop bc + jr .asm_ccaa5 + +.asm_ccaa2 + call Functioncc9bd + +.asm_ccaa5 + and a + ret + +.asm_ccaa7 + pop bc + scf + ret +; ccaaa + +Functionccaaa: ; ccaaa + ld hl, $0001 + add hl, bc + ld a, [hl] + and $80 + ld [$d419], a + xor a + ld [$d420], a + ld hl, $0005 + add hl, bc + ld a, [hl] + ld [OTPartyMon6Nickname], a + ld hl, $0002 + add hl, bc + ld a, [hl] + ld [$d41a], a + ld hl, $0006 + add hl, bc + ld a, [hli] + ld [$d41b], a + ld a, [hli] + ld [$d41c], a + ld a, [hli] + ld [$d41d], a + ld a, [hli] + ld [$d41e], a + ld a, [hli] + ld [$d41f], a + ld a, [hBattleTurn] + and a + ret z + ld hl, $0001 + add hl, bc + ld a, [hl] + ld [$d419], a + bit 0, [hl] + ret z + ld hl, $0007 + add hl, bc + ld a, [hli] + ld d, a + ld a, $b4 + sub d + ld [$d41c], a + ld a, [hli] + ld d, a + ld a, [$d41a] + cp $ff + jr nz, .asm_ccb09 + ld a, $28 + add d + jr .asm_ccb26 + +.asm_ccb09 + sub d + push af + ld a, [FXAnimIDHi] + or a + jr nz, .asm_ccb25 + ld a, [FXAnimIDLo] + cp $86 + jr z, .asm_ccb20 + cp $87 + jr z, .asm_ccb20 + cp $d0 + jr nz, .asm_ccb25 + +.asm_ccb20 + pop af + sub $8 + jr .asm_ccb26 + +.asm_ccb25 + pop af + +.asm_ccb26 + ld [$d41d], a + ld a, [hli] + xor $ff + inc a + ld [$d41e], a + ret +; ccb31 + + +; known jump sources: cc9ed (33:49ed) +Functionccb31: ; ccb31 (33:4b31) + push hl + push bc + ld hl, $d300 + ld b, a + ld c, $5 +.asm_ccb39 + ld a, [hli] + cp b + jr z, .asm_ccb44 + inc hl + dec c + jr nz, .asm_ccb39 + xor a + jr .asm_ccb45 +.asm_ccb44 + ld a, [hl] +.asm_ccb45 + pop bc + pop hl + ret + + +Functionccb48: ; ccb48 + callab Functionc8000 + ret +; ccb4f + + +; known jump sources: cc453 (33:4453) +Functionccb4f: ; ccb4f (33:4b4f) + callab Functionc801a + ret +; ccb56 (33:4b56) + +INCBIN "baserom.gbc",$ccb56,$ccfbe - $ccb56 + + +Functionccfbe: ; ccfbe + ld hl, $0004 + add hl, bc + ld e, [hl] + ld d, $0 + ld hl, $4fce + add hl, de + add hl, de + ld a, [hli] + ld h, [hl] + ld l, a + jp [hl] +; ccfce + + +; no known jump sources +Jumptable_ccfce: ; ccfce (33:4fce) + dw Functioncd06e + dw Functioncd12a + dw Functioncd146 + dw Functioncd0e3 + dw Functioncd0a6 + dw Functioncd081 + dw Functioncd079 + dw Functioncd2be + dw Functioncd306 + dw Functioncd3ae + dw Functioncd3f2 + dw Functioncd478 + dw Functioncd5e9 + dw Functioncd66a + dw Functioncd6e3 + dw Functioncd71a + dw Functioncd284 + dw Functioncd777 + dw Functioncd15c + dw Functioncd212 + dw Functioncd7a4 + dw Functioncd80c + dw Functioncd824 + dw Functioncd89a + dw Functioncd900 + dw Functioncd954 + dw Functioncdafa + dw Functioncdb06 + dw Functioncda0a + dw Functioncdb80 + dw Functioncdca6 + dw Functioncda31 + dw Functioncda4d + dw Functioncdcc3 + dw Functioncdd2a + dw Functioncdd90 + dw Functioncddf9 + dw Functioncde28 + dw Functioncde54 + dw Functioncde6b + dw Functioncde89 + dw Functioncdedd + dw Functioncdf59 + dw Functionce063 + dw Functionce0c5 + dw Functioncdf1b + dw Functionce10e + dw Functionce15c + dw Functionce1e7 + dw Functionce226 + dw Functionce255 + dw Functionce2cc + dw Functioncdf8c + dw Functionce00b + dw Functionce2fd + dw Functionce35f + dw Functionce389 + dw Functionce3b4 + dw Functionce3d2 + dw Functionce3ff + dw Functioncdfcb + dw Functionce416 + dw Functionce43a + dw Functioncdad6 + dw Functionce49c + dw Functionce4dc + dw Functionce1b0 + dw Functionce508 + dw Functionce532 + dw Functionce55b + dw Functionce593 + dw Functionce5b4 + dw Functionce5dc + dw Functionce5ee + dw Functionce62f + dw Functionce688 + dw Functionce6b3 + dw Functionce6d2 + dw Functioncd58a + dw Functionce6bf + + +; no known jump sources +Functioncd06e: ; cd06e (33:506e) + call Functionce71e ; ; ; call does not return + +; no known jump sources +Jumptable_cd071: ; cd071 (33:5071) + dw Functioncd078 + dw Functioncd075 + + +; no known jump sources +Functioncd075: ; cd075 (33:5075) + call Functioncc9bd + +; no known jump sources +Functioncd078: ; cd078 (33:5078) + ret + +; no known jump sources +Functioncd079: ; cd079 (33:5079) + call Functioncd081 + ret c + call Functioncc9bd + ret + +; known jump sources: cd079 (33:5079), cd17e (33:517e), cd22b (33:522b) +Functioncd081: ; cd081 (33:5081) + ld hl, $7 + add hl, bc + ld a, [hl] + cp $88 + ret nc + add $2 + ld [hl], a + ld hl, $8 + add hl, bc + dec [hl] + ld hl, $f + add hl, bc + ld a, [hl] + dec [hl] + ld hl, $b + add hl, bc + ld d, [hl] + call Functionce734 + ld hl, $a + add hl, bc + ld [hl], a + scf + ret + +; no known jump sources +Functioncd0a6: ; cd0a6 (33:50a6) + ld hl, $7 + add hl, bc + ld a, [hl] + cp $88 + jr c, .asm_cd0b3 + call Functioncc9bd + ret +.asm_cd0b3 + add $2 + ld [hl], a + ld hl, $8 + add hl, bc + dec [hl] + ld hl, $f + add hl, bc + ld a, [hl] + inc [hl] + inc [hl] + inc [hl] + inc [hl] + ld d, $10 + push af + push de + call Functionce734 + ld hl, $a + add hl, bc + ld [hl], a + pop de + pop af + call Functionce732 + ld hl, $9 + add hl, bc + sra a + sra a + sra a + sra a + ld [hl], a + ret + +; known jump sources: cdafa (33:5afa) +Functioncd0e3: ; cd0e3 (33:50e3) + call Functionce71e ; ; ; call does not return + +; no known jump sources +Jumptable_cd0e6: ; cd0e6 (33:50e6) + dw Functioncd0ea + dw Functioncd106 + + +; no known jump sources +Functioncd0ea: ; cd0ea (33:50ea) + call Functionce72c + ld hl, $b + add hl, bc + bit 7, [hl] + ld a, $0 + jr z, .asm_cd0f9 + ld a, $20 +.asm_cd0f9 + ld hl, $f + add hl, bc + ld [hl], a + ld hl, $b + add hl, bc + ld a, [hl] + and $7f + ld [hl], a + +; no known jump sources +Functioncd106: ; cd106 (33:5106) + ld hl, $f + add hl, bc + ld a, [hl] + ld hl, $b + add hl, bc + ld d, [hl] + push af + push de + call Functionce734 + ld hl, $a + add hl, bc + ld [hl], a + pop de + pop af + call Functionce732 + ld hl, $9 + add hl, bc + ld [hl], a + ld hl, $f + add hl, bc + inc [hl] + ret + +; no known jump sources +Functioncd12a: ; cd12a (33:512a) + call Functionce71e ; ; ; call does not return + +; no known jump sources +Jumptable_cd12d: ; cd12d (33:512d) + dw Functioncd135 + dw Functioncd131 + + +; no known jump sources +Functioncd131: ; cd131 (33:5131) + call Functioncc9bd + ret + +; no known jump sources +Functioncd135: ; cd135 (33:5135) + ld hl, $7 + add hl, bc + ld a, [hl] + cp $84 + ret nc + ld hl, $b + add hl, bc + ld a, [hl] + call Functionce70a + ret + +; no known jump sources +Functioncd146: ; cd146 (33:5146) + ld hl, $7 + add hl, bc + ld a, [hl] + cp $84 + jr nc, .asm_cd158 + ld hl, $b + add hl, bc + ld a, [hl] + call Functionce70a + ret +.asm_cd158 + call Functioncc9bd + ret + +; no known jump sources +Functioncd15c: ; cd15c (33:515c) + call Functionce71e ; ; ; call does not return + +; no known jump sources +Jumptable_cd15f: ; cd15f (33:515f) + dw Functioncd177 + dw Functioncd17e + dw Functioncd1dc + dw Functioncd196 + dw Functioncd1a7 + dw Functioncd1dc + dw Functioncd1d2 + dw Functioncd1dd + dw Functioncd1ee + dw Functioncd1dc + dw Functioncd1ee + dw Functioncd20e + + +; no known jump sources +Functioncd177: ; cd177 (33:5177) + call Functioncd249 + call Functionce72c + ret + +; no known jump sources +Functioncd17e: ; cd17e (33:517e) + call Functioncd081 + ret c + ld hl, $a + add hl, bc + ld a, [hl] + ld hl, $8 + add hl, bc + add [hl] + ld [hl], a + ld a, $b + call Functionce7bf + call Functionce72c + ret + +; no known jump sources +Functioncd196: ; cd196 (33:5196) + call Functionce72c + ld a, $9 + call Functionce7bf + ld hl, $f + add hl, bc + ld [hl], $0 + inc hl + ld [hl], $10 + +; no known jump sources +Functioncd1a7: ; cd1a7 (33:51a7) + ld hl, $f + add hl, bc + ld a, [hli] + ld d, [hl] + call Functionce734 + ld hl, $a + add hl, bc + ld [hl], a + ld hl, $f + add hl, bc + ld a, [hl] + dec a + ld [hl], a + and $1f + ret nz + ld [hl], a + ld hl, $10 + add hl, bc + ld a, [hl] + sub $4 + ld [hl], a + ret nz + ld a, $c + call Functionce7bf + call Functionce72c + ret + +; no known jump sources +Functioncd1d2: ; cd1d2 (33:51d2) + ld a, $d + call Functionce7bf + ld hl, $e + add hl, bc + dec [hl] + +; no known jump sources +Functioncd1dc: ; cd1dc (33:51dc) + ret + +; no known jump sources +Functioncd1dd: ; cd1dd (33:51dd) + call Functioncd249 + ld a, $a + call Functionce7bf + call Functionce72c + ld hl, $10 + add hl, bc + ld [hl], $20 + +; no known jump sources +Functioncd1ee: ; cd1ee (33:51ee) + ld hl, $f + add hl, bc + ld a, [hli] + ld d, [hl] + call Functionce734 + ld hl, $a + add hl, bc + ld [hl], a + ld hl, $f + add hl, bc + ld a, [hl] + dec a + ld [hl], a + and $1f + jr z, Functioncd20e + and $f + ret nz + call Functionce72c + ret + +; known jump sources: cd205 (33:5205) +Functioncd20e: ; cd20e (33:520e) + call Functioncc9bd + ret + +; no known jump sources +Functioncd212: ; cd212 (33:5212) + call Functionce71e ; ; ; call does not return + +; no known jump sources +Jumptable_cd215: ; cd215 (33:5215) + dw Functioncd21b + dw Functioncd222 + dw Functioncd232 + + +; no known jump sources +Functioncd21b: ; cd21b (33:521b) + call Functioncd249 + call Functionce72c + ret + +; no known jump sources +Functioncd222: ; cd222 (33:5222) + ld hl, $7 + add hl, bc + ld a, [hl] + cp $70 + jr nc, .asm_cd22f + call Functioncd081 + ret +.asm_cd22f + call Functionce72c + +; no known jump sources +Functioncd232: ; cd232 (33:5232) + ld hl, $8 + add hl, bc + ld a, [hl] + cp $80 + jr nc, .asm_cd245 + add $4 + ld [hl], a + ld hl, $7 + add hl, bc + dec [hl] + dec [hl] + ret +.asm_cd245 + call Functioncc9bd + ret + +; known jump sources: cd177 (33:5177), cd1dd (33:51dd), cd21b (33:521b) +Functioncd249: ; cd249 (33:5249) + ld hl, $526c + ld a, [rSVBK] ; $ff00+$70 + push af + ld a, $1 + ld [rSVBK], a ; $ff00+$70 + ld a, [CurItem] ; $d106 + ld e, a + pop af + ld [rSVBK], a ; $ff00+$70 +.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, $5 + add hl, bc + ld [hl], a + ret +; cd26c (33:526c) + +INCBIN "baserom.gbc",$cd26c,$cd284 - $cd26c + +; no known jump sources +Functioncd284: ; cd284 (33:5284) + call Functionce71e ; ; ; call does not return + +; no known jump sources +Jumptable_cd287: ; cd287 (33:5287) + dw Functioncd291 + dw Functioncd2a0 + dw Functioncd2b1 + dw Functioncd2b5 + dw Functioncd2bd + + +; no known jump sources +Functioncd291: ; cd291 (33:5291) + ld hl, $b + add hl, bc + ld a, [hl] + swap a + and $f + ld hl, $e + add hl, bc + ld [hl], a + ret + +; no known jump sources +Functioncd2a0: ; cd2a0 (33:52a0) + ld hl, $7 + add hl, bc + ld a, [hl] + cp $88 + ret nc + ld hl, $b + add hl, bc + ld a, [hl] + call Functionce70a + ret + +; no known jump sources +Functioncd2b1: ; cd2b1 (33:52b1) + call Functioncc9bd + ret + +; no known jump sources +Functioncd2b5: ; cd2b5 (33:52b5) + call Functionce72c + ld a, $f + call Functionce7bf + +; no known jump sources +Functioncd2bd: ; cd2bd (33:52bd) + ret + +; no known jump sources +Functioncd2be: ; cd2be (33:52be) + call Functionce71e ; ; ; call does not return + +; no known jump sources +Jumptable_cd2c1: ; cd2c1 (33:52c1) + dw Functioncd2c5 + dw Functioncd2d1 + + +; no known jump sources +Functioncd2c5: ; cd2c5 (33:52c5) + call Functionce72c + ld hl, $f + add hl, bc + ld [hl], $30 + inc hl + ld [hl], $48 + +; no known jump sources +Functioncd2d1: ; cd2d1 (33:52d1) + ld hl, $f + add hl, bc + ld a, [hli] + ld d, [hl] + call Functionce734 + ld hl, $a + add hl, bc + ld [hl], a + ld hl, $f + add hl, bc + inc [hl] + ld a, [hl] + and $3f + ret nz + ld hl, $f + add hl, bc + ld [hl], $20 + ld hl, $10 + add hl, bc + ld a, [hl] + ld hl, $b + add hl, bc + sub [hl] + jr z, .asm_cd302 + jr c, .asm_cd302 + ld hl, $10 + add hl, bc + ld [hl], a + ret +.asm_cd302 + call Functioncc9bd + ret + +; no known jump sources +Functioncd306: ; cd306 (33:5306) + call Functionce71e ; ; ; call does not return + +; no known jump sources +Jumptable_cd309: ; cd309 (33:5309) + dw Functioncd311 + dw Functioncd321 + dw Functioncd32a + dw Functioncd37d + + +; no known jump sources +Functioncd311: ; cd311 (33:5311) + ld hl, $7 + add hl, bc + ld a, [hl] + cp $80 + jr nc, .asm_cd31e + call Functioncd38e + ret +.asm_cd31e + call Functionce72c + +; no known jump sources +Functioncd321: ; cd321 (33:5321) + call Functionce72c + ld hl, $f + add hl, bc + ld [hl], $0 + +; no known jump sources +Functioncd32a: ; cd32a (33:532a) + ld hl, $f + add hl, bc + ld a, [hl] + cp $40 + jr nc, .asm_cd363 + ld hl, $f + add hl, bc + ld a, [hl] + ld d, $18 + call Functionce732 + sub $18 + sra a + ld hl, $a + add hl, bc + ld [hl], a + ld hl, $f + add hl, bc + ld a, [hl] + ld d, $18 + call Functionce734 + ld hl, $9 + add hl, bc + ld [hl], a + ld hl, $b + add hl, bc + ld a, [hl] + and $f + ld hl, $f + add hl, bc + add [hl] + ld [hl], a + ret +.asm_cd363 + ld hl, $b + 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, $e + add hl, bc + dec [hl] + ret +.asm_cd37a + call Functionce72c + +; no known jump sources +Functioncd37d: ; cd37d (33:537d) + ld hl, $7 + add hl, bc + ld a, [hl] + cp $b0 + jr c, .asm_cd38a + call Functioncc9bd + ret +.asm_cd38a + call Functioncd38e + ret + +; known jump sources: cd31a (33:531a), cd38a (33:538a) +Functioncd38e: ; cd38e (33:538e) + ld hl, $b + add hl, bc + ld a, [hl] + and $f + ld hl, $7 + add hl, bc + add [hl] + ld [hl], a + ld hl, $b + add hl, bc + ld a, [hl] + and $f + ld e, a + srl e + ld hl, $8 + add hl, bc +.asm_cd3a9 + dec [hl] + dec e + jr nz, .asm_cd3a9 + ret + +; no known jump sources +Functioncd3ae: ; cd3ae (33:53ae) + call Functionce71e ; ; ; call does not return + +; no known jump sources +Jumptable_cd3b1: ; cd3b1 (33:53b1) + dw Functioncd3b7 + dw Functioncd3cc + dw Functioncd3ee + + +; no known jump sources +Functioncd3b7: ; cd3b7 (33:53b7) + call Functionce72c + ld hl, $f + add hl, bc + ld [hl], $0 + ld hl, $b + add hl, bc + ld a, [hl] + and $f + ld hl, $9 + add hl, bc + ld [hl], a + +; no known jump sources +Functioncd3cc: ; cd3cc (33:53cc) + ld hl, $f + add hl, bc + ld a, [hl] + and a + jr z, .asm_cd3d6 + dec [hl] + ret +.asm_cd3d6 + ld hl, $b + add hl, bc + ld a, [hl] + swap a + and $f + ld hl, $f + add hl, bc + ld [hl], a + ld hl, $9 + add hl, bc + ld a, [hl] + xor $ff + inc a + ld [hl], a + ret + +; no known jump sources +Functioncd3ee: ; cd3ee (33:53ee) + call Functioncc9bd + ret + +; no known jump sources +Functioncd3f2: ; cd3f2 (33:53f2) + call Functionce71e ; ; ; call does not return + +; no known jump sources +Jumptable_cd3f5: ; cd3f5 (33:53f5) + dw Functioncd409 + dw Functioncd45c + dw Functioncd467 + dw Functioncd472 + dw Functioncd462 + dw Functioncd46d + dw Functioncd477 + dw Functioncd41d + dw Functioncd437 + dw Functioncd458 + + +; no known jump sources +Functioncd409: ; cd409 (33:5409) + ld hl, $b + add hl, bc + ld a, [hl] + ld hl, $e + add hl, bc + ld [hl], a + cp $7 + jr z, Functioncd41d + ld a, $11 + call Functionce7bf + ret + +; known jump sources: cd415 (33:5415) +Functioncd41d: ; cd41d (33:541d) + ld hl, $7 + add hl, bc + ld a, [hl] + cp $88 + jr nc, .asm_cd42f + add $2 + ld [hl], a + ld hl, $8 + add hl, bc + dec [hl] + ret +.asm_cd42f + call Functionce72c + ld a, $10 + call Functionce7bf + +; no known jump sources +Functioncd437: ; cd437 (33:5437) + ld hl, $f + add hl, bc + ld a, [hl] + ld d, $10 + push af + push de + call Functionce734 + ld hl, $a + add hl, bc + ld [hl], a + pop de + pop af + call Functionce732 + ld hl, $9 + add hl, bc + ld [hl], a + ld hl, $f + add hl, bc + inc [hl] + ret + +; no known jump sources +Functioncd458: ; cd458 (33:5458) + call Functioncc9bd + ret + +; no known jump sources +Functioncd45c: ; cd45c (33:545c) + ld hl, $a + add hl, bc + dec [hl] + ret + +; no known jump sources +Functioncd462: ; cd462 (33:5462) + ld hl, $a + add hl, bc + inc [hl] + +; no known jump sources +Functioncd467: ; cd467 (33:5467) + ld hl, $9 + add hl, bc + dec [hl] + ret + +; no known jump sources +Functioncd46d: ; cd46d (33:546d) + ld hl, $a + add hl, bc + inc [hl] + +; no known jump sources +Functioncd472: ; cd472 (33:5472) + ld hl, $9 + add hl, bc + inc [hl] + +; no known jump sources +Functioncd477: ; cd477 (33:5477) + ret + +; no known jump sources +Functioncd478: ; cd478 (33:5478) + call Functionce71e ; ; ; call does not return + +; no known jump sources +Jumptable_cd47b: ; cd47b (33:547b) + dw Functioncd48d + dw Functioncd496 + dw Functioncd4ee + dw Functioncd53a + dw Functioncd545 + dw Functioncd545 + dw Functioncd545 + dw Functioncd545 + dw Functioncd549 + + +; no known jump sources +Functioncd48d: ; cd48d (33:548d) + call Functionce72c + ld hl, $f + add hl, bc + ld [hl], $40 + +; no known jump sources +Functioncd496: ; cd496 (33:5496) + ld hl, $f + add hl, bc + ld a, [hl] + cp $30 + jr nc, .asm_cd4bc + call Functionce72c + xor a + ld hl, $f + add hl, bc + ld [hli], a + ld [hl], a + ld a, $17 + call Functionce7bf + ld hl, $b + add hl, bc + bit 6, [hl] + ret z + ld hl, $d + add hl, bc + ld [hl], $5 + ret +.asm_cd4bc + ld hl, $b + add hl, bc + ld a, [hl] + and $3f + ld d, a + ld hl, $f + add hl, bc + ld a, [hl] + dec [hl] + call Functionce734 + ld hl, $a + add hl, bc + ld [hl], a + call Functioncd557 + ld hl, $10 + add hl, bc + ld a, [hl] + ld hl, $7 + add hl, bc + ld h, [hl] + ld l, a + add hl, de + ld e, l + ld d, h + ld hl, $7 + add hl, bc + ld [hl], d + ld hl, $10 + add hl, bc + ld [hl], e + ret + +; no known jump sources +Functioncd4ee: ; cd4ee (33:54ee) + ld hl, $a + add hl, bc + ld a, [hl] + cp $20 + jr nz, .asm_cd4fb + call Functioncc9bd + ret +.asm_cd4fb + ld hl, $f + add hl, bc + ld a, [hl] + ld d, $10 + call Functionce734 + ld hl, $9 + add hl, bc + ld [hl], a + ld hl, $b + add hl, bc + bit 6, [hl] + jr nz, .asm_cd519 + ld hl, $f + add hl, bc + inc [hl] + jr .asm_cd51e +.asm_cd519 + ld hl, $f + add hl, bc + dec [hl] +.asm_cd51e + ld de, $80 + ld hl, $10 + add hl, bc + ld a, [hl] + ld hl, $a + add hl, bc + ld h, [hl] + ld l, a + add hl, de + ld e, l + ld d, h + ld hl, $a + add hl, bc + ld [hl], d + ld hl, $10 + add hl, bc + ld [hl], e + ret + +; no known jump sources +Functioncd53a: ; cd53a (33:553a) + ld a, $16 + call Functionce7bf + ld hl, $1 + add hl, bc + res 5, [hl] + +; no known jump sources +Functioncd545: ; cd545 (33:5545) + call Functionce72c + ret + +; no known jump sources +Functioncd549: ; cd549 (33:5549) + ld hl, $7 + add hl, bc + ld a, [hl] + cp $c0 + ret nc + ld a, $8 + call Functionce70a + ret + +; known jump sources: cd4d2 (33:54d2), cd5cd (33:55cd) +Functioncd557: ; cd557 (33:5557) + ld hl, $b + add hl, bc + ld a, [hl] + bit 7, a + jr nz, .asm_cd574 + cp $20 + jr nc, .asm_cd570 + cp $18 + jr nc, .asm_cd56c + ld de, $200 + ret +.asm_cd56c + ld de, $180 + ret +.asm_cd570 + ld de, $100 + ret +.asm_cd574 + and $3f + cp $20 + jr nc, .asm_cd586 + cp $18 + jr nc, .asm_cd582 + ld de, $fe00 + ret +.asm_cd582 + ld de, $fe80 + ret +.asm_cd586 + ld de, rJOYP ; $ff00 + ret + +; no known jump sources +Functioncd58a: ; cd58a (33:558a) + call Functionce71e ; ; ; call does not return + +; no known jump sources +Jumptable_cd58d: ; cd58d (33:558d) + dw Functioncd591 + dw Functioncd5aa + + +; no known jump sources +Functioncd591: ; cd591 (33:5591) + ld hl, $b + add hl, bc + ld a, [hl] + and $40 + rlca + rlca + add $19 + ld hl, $3 + add hl, bc + ld [hl], a + call Functionce72c + ld hl, $f + add hl, bc + ld [hl], $40 + +; no known jump sources +Functioncd5aa: ; cd5aa (33:55aa) + ld hl, $f + add hl, bc + ld a, [hl] + cp $30 + jr nc, .asm_cd5b7 + call Functioncc9bd + ret +.asm_cd5b7 + ld hl, $b + add hl, bc + ld a, [hl] + and $3f + ld d, a + ld hl, $f + add hl, bc + ld a, [hl] + dec [hl] + call Functionce734 + ld hl, $a + add hl, bc + ld [hl], a + call Functioncd557 + ld hl, $10 + add hl, bc + ld a, [hl] + ld hl, $7 + add hl, bc + ld h, [hl] + ld l, a + add hl, de + ld e, l + ld d, h + ld hl, $7 + add hl, bc + ld [hl], d + ld hl, $10 + add hl, bc + ld [hl], e + ret + +; no known jump sources +Functioncd5e9: ; cd5e9 (33:55e9) + call Functionce71e ; ; ; call does not return + +; no known jump sources +Jumptable_cd5ec: ; cd5ec (33:55ec) + dw Functioncd5f2 + dw Functioncd5fb + dw Functioncd61b + + +; no known jump sources +Functioncd5f2: ; cd5f2 (33:55f2) + call Functionce72c + ld hl, $f + add hl, bc + ld [hl], $c + +; no known jump sources +Functioncd5fb: ; cd5fb (33:55fb) + ld hl, $f + add hl, bc + ld a, [hl] + and a + jr z, .asm_cd60d + dec [hl] + ld hl, $b + add hl, bc + ld a, [hl] + call Functionce70a + ret +.asm_cd60d + call Functionce72c + ld hl, $f + add hl, bc + ld [hl], $0 + ld a, $22 + call Functionce7bf + +; no known jump sources +Functioncd61b: ; cd61b (33:561b) + ld hl, $7 + add hl, bc + ld a, [hl] + cp $98 + jr nc, .asm_cd63f + ld hl, $f + add hl, bc + ld a, [hl] + ld hl, $7 + add hl, bc + ld h, [hl] + ld l, a + ld de, $60 + add hl, de + ld e, l + ld d, h + ld hl, $f + add hl, bc + ld [hl], e + ld hl, $7 + add hl, bc + ld [hl], d +.asm_cd63f + ld hl, $8 + add hl, bc + ld a, [hl] + cp $20 + ret c + ld hl, $b + add hl, bc + ld a, [hl] + and $f0 + ld e, a + ld d, $ff + ld hl, $10 + add hl, bc + ld a, [hl] + ld hl, $8 + add hl, bc + ld h, [hl] + ld l, a + add hl, de + ld e, l + ld d, h + ld hl, $10 + add hl, bc + ld [hl], e + ld hl, $8 + add hl, bc + ld [hl], d + ret + +; no known jump sources +Functioncd66a: ; cd66a (33:566a) + call Functionce71e ; ; ; call does not return + +; no known jump sources +Jumptable_cd66d: ; cd66d (33:566d) + dw Functioncd677 + dw Functioncd687 + dw Functioncd6c5 + dw Functioncd6c6 + dw Functioncd6d6 + + +; no known jump sources +Functioncd677: ; cd677 (33:5677) + call Functionce72c + ld a, $42 + ld [hLCDStatCustom], a ; $ff00+$c6 + ld a, $58 + ld [$FF00+$c7], a + ld a, $5e + ld [$FF00+$c8], a + ret + +; no known jump sources +Functioncd687: ; cd687 (33:5687) + ld hl, $b + add hl, bc + ld e, [hl] + ld hl, $8 + add hl, bc + ld a, [hl] + cp e + jr nc, .asm_cd69b + call Functionce72c + xor a + ld [$FF00+$c7], a + ret +.asm_cd69b + dec a + ld [hl], a + ld hl, $f + add hl, bc + ld a, [hl] + ld d, $10 + call Functionce734 + ld hl, $a + add hl, bc + ld [hl], a + ld hl, $8 + add hl, bc + add [hl] + sub $10 + ret c + ld [$FF00+$c7], a + ld hl, $9 + add hl, bc + ld a, [hl] + inc a + and $7 + ld [hl], a + ld hl, $f + add hl, bc + inc [hl] + inc [hl] + +; no known jump sources +Functioncd6c5: ; cd6c5 (33:56c5) + ret + +; no known jump sources +Functioncd6c6: ; cd6c6 (33:56c6) + ld hl, $8 + add hl, bc + ld a, [hl] + cp $70 + jr c, asm_cd6da + xor a + ld [hLCDStatCustom], a ; $ff00+$c6 + ld [$FF00+$c7], a + ld [$FF00+$c8], a + +; no known jump sources +Functioncd6d6: ; cd6d6 (33:56d6) + call Functioncc9bd + ret +asm_cd6da: ; cd6da (33:56da) + inc a + inc a + ld [hl], a + sub $10 + ret c + ld [$FF00+$c7], a + ret + +; no known jump sources +Functioncd6e3: ; cd6e3 (33:56e3) + call Functionce71e ; ; ; call does not return + +; no known jump sources +Jumptable_cd6e6: ; cd6e6 (33:56e6) + dw Functioncd6ea + dw Functioncd6f7 + + +; no known jump sources +Functioncd6ea: ; cd6ea (33:56ea) + call Functionce72c + ld hl, $b + add hl, bc + ld a, $24 + add [hl] + call Functionce7bf + +; no known jump sources +Functioncd6f7: ; cd6f7 (33:56f7) + ld hl, $7 + add hl, bc + ld a, [hl] + cp $b8 + jr c, .asm_cd704 + call Functioncc9bd + ret +.asm_cd704 + ld a, $2 + call Functionce70a + ld hl, $f + add hl, bc + ld a, [hl] + dec [hl] + ld d, $8 + call Functionce734 + ld hl, $a + add hl, bc + ld [hl], a + ret + +; no known jump sources +Functioncd71a: ; cd71a (33:571a) + call Functionce71e ; ; ; call does not return + +; no known jump sources +Jumptable_cd71d: ; cd71d (33:571d) + dw Functioncd725 + dw Functioncd728 + dw Functioncd763 + dw Functioncd776 + + +; no known jump sources +Functioncd725: ; cd725 (33:5725) + call Functionce72c + +; no known jump sources +Functioncd728: ; cd728 (33:5728) + ld hl, $8 + add hl, bc + ld a, [hl] + cp $30 + jr c, .asm_cd747 + ld a, $2 + call Functionce70a + ld hl, $f + add hl, bc + ld a, [hl] + dec [hl] + ld d, $8 + call Functionce734 + ld hl, $a + add hl, bc + ld [hl], a + ret +.asm_cd747 + call Functionce72c + ld a, $28 + call Functionce7bf + ld hl, $a + add hl, bc + ld [hl], $0 + ld hl, $8 + add hl, bc + ld [hl], $30 + ld hl, $1 + add hl, bc + ld a, [hl] + and $1 + ld [hl], a + +; no known jump sources +Functioncd763: ; cd763 (33:5763) + ld hl, $a + add hl, bc + ld a, [hl] + cp $18 + jr nc, .asm_cd76e + inc [hl] + ret +.asm_cd76e + call Functionce72c + ld a, $29 + call Functionce7bf + +; no known jump sources +Functioncd776: ; cd776 (33:5776) + ret + +; no known jump sources +Functioncd777: ; cd777 (33:5777) + ld hl, $a + add hl, bc + ld a, [hl] + cp $38 + jr c, .asm_cd784 + call Functioncc9bd + ret +.asm_cd784 + ld a, [hl] + ld hl, $f + add hl, bc + ld l, [hl] + ld h, a + ld de, $80 + add hl, de + ld e, l + ld d, h + ld hl, $f + add hl, bc + ld [hl], e + ld hl, $a + add hl, bc + ld [hl], d + ld hl, $9 + add hl, bc + ld a, [hl] + xor $10 + ld [hl], a + ret + +; no known jump sources +Functioncd7a4: ; cd7a4 (33:57a4) + call Functionce71e ; ; ; call does not return + +; no known jump sources +Jumptable_cd7a7: ; cd7a7 (33:57a7) + dw Functioncd7ab + dw Functioncd7d2 + + +; no known jump sources +Functioncd7ab: ; cd7ab (33:57ab) + call Functionce72c + ld hl, $b + add hl, bc + ld a, [hl] + and $f0 + ld hl, $10 + add hl, bc + ld [hl], a + ld hl, $b + add hl, bc + ld a, [hl] + and $f + sla a + sla a + sla a + ld hl, $f + add hl, bc + ld [hl], a + ld hl, $b + add hl, bc + ld [hl], $1 + +; no known jump sources +Functioncd7d2: ; cd7d2 (33:57d2) + ld hl, $10 + add hl, bc + ld a, [hl] + and a + jr nz, .asm_cd7de + call Functioncc9bd + ret +.asm_cd7de + ld hl, $f + add hl, bc + ld a, [hl] + inc [hl] + ld hl, $10 + add hl, bc + ld d, [hl] + push af + push de + call Functionce734 + ld hl, $a + add hl, bc + ld [hl], a + pop de + pop af + call Functionce732 + ld hl, $9 + add hl, bc + ld [hl], a + ld hl, $b + add hl, bc + ld a, [hl] + xor $1 + ld [hl], a + ret z + ld hl, $10 + add hl, bc + dec [hl] + ret + +; no known jump sources +Functioncd80c: ; cd80c (33:580c) + call Functionce71e ; ; ; call does not return + +; no known jump sources +Jumptable_cd80f: ; cd80f (33:580f) + dw Functioncd81f + dw Functioncd817 + dw Functioncd81f + dw Functioncd820 + + +; no known jump sources +Functioncd817: ; cd817 (33:5817) + call Functionce72c + ld a, $35 + call Functionce7bf + +; no known jump sources +Functioncd81f: ; cd81f (33:581f) + ret + +; no known jump sources +Functioncd820: ; cd820 (33:5820) + call Functioncc9bd + ret + +; no known jump sources +Functioncd824: ; cd824 (33:5824) + call Functionce71e ; ; ; call does not return + +; no known jump sources +Jumptable_cd827: ; cd827 (33:5827) + dw Functioncd835 + dw Functioncd860 + dw Functioncd88f + dw Functioncd88f + dw Functioncd88f + dw Functioncd88f + dw Functioncd893 + + +; no known jump sources +Functioncd835: ; cd835 (33:5835) + call Functionce72c + ld hl, $3 + add hl, bc + ld a, [hl] + ld hl, $10 + add hl, bc + ld [hl], a + ld hl, $b + add hl, bc + bit 7, [hl] + jr nz, .asm_cd852 + ld hl, $f + add hl, bc + ld [hl], $10 + jr .asm_cd858 +.asm_cd852 + ld hl, $f + add hl, bc + ld [hl], $30 +.asm_cd858 + ld hl, $b + add hl, bc + ld a, [hl] + and $7f + ld [hl], a + +; no known jump sources +Functioncd860: ; cd860 (33:5860) + ld hl, $f + add hl, bc + ld a, [hl] + ld hl, $b + add hl, bc + ld d, [hl] + call Functionce734 + ld hl, $9 + add hl, bc + ld [hl], a + bit 7, a + jr nz, .asm_cd87e + ld hl, $10 + add hl, bc + ld a, [hl] + inc a + jr .asm_cd883 +.asm_cd87e + ld hl, $10 + add hl, bc + ld a, [hl] +.asm_cd883 + call Functionce7bf + ld hl, $f + add hl, bc + inc [hl] + ld a, [hl] + and $1f + ret nz + +; no known jump sources +Functioncd88f: ; cd88f (33:588f) + call Functionce72c + ret + +; no known jump sources +Functioncd893: ; cd893 (33:5893) + ld hl, $e + add hl, bc + ld [hl], $1 + ret + +; no known jump sources +Functioncd89a: ; cd89a (33:589a) + call Functionce71e ; ; ; call does not return + +; no known jump sources +Jumptable_cd89d: ; cd89d (33:589d) + dw Functioncd8ab + dw Functioncd8cc + dw Functioncd8f5 + dw Functioncd8f5 + dw Functioncd8f5 + dw Functioncd8f5 + dw Functioncd8f9 + + +; no known jump sources +Functioncd8ab: ; cd8ab (33:58ab) + call Functionce72c + ld hl, $b + add hl, bc + bit 7, [hl] + jr nz, .asm_cd8be + ld hl, $f + add hl, bc + ld [hl], $10 + jr .asm_cd8c4 +.asm_cd8be + ld hl, $f + add hl, bc + ld [hl], $30 +.asm_cd8c4 + ld hl, $b + add hl, bc + ld a, [hl] + and $7f + ld [hl], a + +; no known jump sources +Functioncd8cc: ; cd8cc (33:58cc) + ld hl, $f + add hl, bc + ld a, [hl] + ld hl, $b + add hl, bc + ld d, [hl] + call Functionce734 + ld hl, $a + 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, $f + add hl, bc + inc [hl] + inc [hl] + ld a, [hl] + and $1f + ret nz + +; no known jump sources +Functioncd8f5: ; cd8f5 (33:58f5) + call Functionce72c + ret + +; no known jump sources +Functioncd8f9: ; cd8f9 (33:58f9) + ld hl, $e + add hl, bc + ld [hl], $1 + ret + +; no known jump sources +Functioncd900: ; cd900 (33:5900) + call Functionce71e ; ; ; call does not return + +; no known jump sources +Jumptable_cd903: ; cd903 (33:5903) + dw Functioncd907 + dw Functioncd913 + + +; no known jump sources +Functioncd907: ; cd907 (33:5907) + call Functionce72c + ld hl, $f + add hl, bc + ld [hl], $28 + inc hl + ld [hl], $0 + +; no known jump sources +Functioncd913: ; cd913 (33:5913) + ld hl, $b + add hl, bc + ld a, [hl] + ld hl, $f + add hl, bc + ld d, [hl] + push af + push de + call Functionce734 + ld hl, $a + add hl, bc + ld [hl], a + pop de + pop af + call Functionce732 + ld hl, $9 + add hl, bc + ld [hl], a + ld hl, $f + add hl, bc + ld a, [hl] + and a + jr z, .asm_cd950 + ld d, a + ld hl, $10 + add hl, bc + ld e, [hl] + ld hl, hPushOAM ; $ff80 + add hl, de + ld e, l + ld d, h + ld hl, $10 + add hl, bc + ld [hl], e + ld hl, $f + add hl, bc + ld [hl], d + ret +.asm_cd950 + call Functioncc9bd + ret + +; no known jump sources +Functioncd954: ; cd954 (33:5954) + call Functionce71e ; ; ; call does not return + +; no known jump sources +Jumptable_cd957: ; cd957 (33:5957) + dw Functioncd961 + dw Functioncd96a + dw Functioncd96e + dw Functioncd96a + dw Functioncd97b + + +; no known jump sources +Functioncd961: ; cd961 (33:5961) + call Functionce72c + ld hl, $b + add hl, bc + ld [hl], $0 + +; no known jump sources +Functioncd96a: ; cd96a (33:596a) + call Functioncd99a + ret + +; no known jump sources +Functioncd96e: ; cd96e (33:596e) + ld hl, $7 + add hl, bc + ld a, [hl] + cp $88 + jr c, asm_cd988 + call Functionce72c + ret + +; no known jump sources +Functioncd97b: ; cd97b (33:597b) + ld hl, $7 + add hl, bc + ld a, [hl] + cp $b8 + jr c, asm_cd988 + call Functioncc9bd + ret + +; known jump sources: cd975 (33:5975), cd982 (33:5982) +asm_cd988: ; cd988 (33:5988) + call Functioncd99a + ld hl, $7 + add hl, bc + inc [hl] + ld a, [hl] + and $1 + ret nz + ld hl, $8 + add hl, bc + dec [hl] + ret + +; known jump sources: cd96a (33:596a), cd988 (33:5988) +Functioncd99a: ; cd99a (33:599a) + call Functioncd9f4 + ld hl, $f + add hl, bc + ld a, [hl] + push af + push de + call Functionce734 + sra a + sra a + sra a + sra a + ld hl, $b + add hl, bc + add [hl] + ld hl, $a + add hl, bc + ld [hl], a + pop de + pop af + call Functionce732 + ld hl, $9 + add hl, bc + ld [hl], a + ld hl, $f + add hl, bc + ld a, [hl] + sub $8 + ld [hl], a + ld hl, $b + 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, $10 + add hl, bc + inc [hl] + ret +.asm_cd9e2 + xor a + ld hl, $10 + add hl, bc + ld [hl], a + ld hl, $b + add hl, bc + ld [hl], a + ld hl, $9 + add hl, bc + ld [hli], a + ld [hl], a + ret + +; known jump sources: cd99a (33:599a) +Functioncd9f4: ; cd9f4 (33:59f4) + ld hl, $10 + add hl, bc + ld e, [hl] + ld d, $0 + ld hl, $5a01 + add hl, de + ld d, [hl] + ret +; cda01 (33:5a01) + +INCBIN "baserom.gbc",$cda01,$cda0a - $cda01 + +; no known jump sources +Functioncda0a: ; cda0a (33:5a0a) + ld hl, $7 + add hl, bc + ld a, [hl] + cp $30 + jr nc, .asm_cda17 + call Functioncc9bd + ret +.asm_cda17 + ld hl, $b + add hl, bc + ld a, [hl] + and $f + ld e, a + ld hl, $7 + add hl, bc + ld a, [hl] + sub e + ld [hl], a + srl e + ld hl, $8 + add hl, bc +.asm_cda2c + inc [hl] + dec e + jr nz, .asm_cda2c + ret + +; no known jump sources +Functioncda31: ; cda31 (33:5a31) + call Functionce71e ; ; ; call does not return + +; no known jump sources +Jumptable_cda34: ; cda34 (33:5a34) + dw Functioncda4c + dw Functioncda3a + dw Functioncda4c + + +; no known jump sources +Functioncda3a: ; cda3a (33:5a3a) + ld hl, $3 + add hl, bc + ld a, [hl] + inc a + call Functionce7bf + call Functionce72c + ld hl, $f + add hl, bc + ld [hl], $8 + +; no known jump sources +Functioncda4c: ; cda4c (33:5a4c) + ret + +; no known jump sources +Functioncda4d: ; cda4d (33:5a4d) + call Functionce71e ; ; ; call does not return + +; no known jump sources +Jumptable_cda50: ; cda50 (33:5a50) + dw Functioncda58 + dw Functioncda62 + dw Functioncda7a + dw Functioncda8c + + +; no known jump sources +Functioncda58: ; cda58 (33:5a58) + call Functionce72c + ld hl, $10 + add hl, bc + ld [hl], $40 + ret + +; no known jump sources +Functioncda62: ; cda62 (33:5a62) + ld hl, $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 + +; no known jump sources +Functioncda7a: ; cda7a (33:5a7a) + ld hl, $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 + +; no known jump sources +Functioncda8c: ; cda8c (33:5a8c) + ret + +; known jump sources: cda6b (33:5a6b), cdaf2 (33:5af2) +Functioncda8d: ; cda8d (33:5a8d) + dec [hl] + ld d, $20 + call Functionce734 + ld hl, $a + add hl, bc + ld [hl], a + ld hl, $2 + add hl, bc + ld a, [hl] + add $2 + ld [hl], a + ld hl, $f + add hl, bc + ld e, [hl] + ld hl, $7 + add hl, bc + ld d, [hl] + ld hl, $b + 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, $f + add hl, bc + ld [hl], e + ld hl, $7 + add hl, bc + ld [hl], d + ld hl, $10 + add hl, bc + ld a, [hl] + and $1 + ret nz + ld hl, $8 + add hl, bc + dec [hl] + ret + +; no known jump sources +Functioncdad6: ; cdad6 (33:5ad6) + call Functionce71e ; ; ; call does not return + +; no known jump sources +Jumptable_cdad9: ; cdad9 (33:5ad9) + dw Functioncdadf + dw Functioncdae9 + dw Functioncdaf9 + + +; no known jump sources +Functioncdadf: ; cdadf (33:5adf) + call Functionce72c + ld hl, $10 + add hl, bc + ld [hl], $40 + ret + +; no known jump sources +Functioncdae9: ; cdae9 (33:5ae9) + ld hl, $10 + add hl, bc + ld a, [hl] + cp $20 + jr c, .asm_cdaf6 + call Functioncda8d + ret +.asm_cdaf6 + call Functionce72c + +; no known jump sources +Functioncdaf9: ; cdaf9 (33:5af9) + ret + +; no known jump sources +Functioncdafa: ; cdafa (33:5afa) + call Functioncd0e3 + ld hl, $f + add hl, bc + ld a, [hl] + add $f + ld [hl], a + ret + +; no known jump sources +Functioncdb06: ; cdb06 (33:5b06) + call Functionce71e ; ; ; call does not return + +; no known jump sources +Jumptable_cdb09: ; cdb09 (33:5b09) + dw Functioncdb13 + dw Functioncdb14 + dw Functioncdb28 + dw Functioncdb50 + dw Functioncdb65 + + +; no known jump sources +Functioncdb13: ; cdb13 (33:5b13) + ret + +; no known jump sources +Functioncdb14: ; cdb14 (33:5b14) + ld hl, $8 + add hl, bc + ld a, [hl] + cp $30 + jr c, .asm_cdb24 + ld hl, $e + add hl, bc + ld [hl], $0 + ret +.asm_cdb24 + add $4 + ld [hl], a + ret + +; no known jump sources +Functioncdb28: ; cdb28 (33:5b28) + ld hl, $7 + add hl, bc + ld a, [hl] + cp $98 + ret nc + inc [hl] + inc [hl] + ld hl, $1 + add hl, bc + set 0, [hl] + ld hl, $2 + add hl, bc + ld [hl], $90 + ld hl, $d + add hl, bc + ld [hl], $0 + ld hl, $c + add hl, bc + ld [hl], $2 + ld hl, $8 + add hl, bc + dec [hl] + ret + +; no known jump sources +Functioncdb50: ; cdb50 (33:5b50) + call Functionce72c + ld hl, $f + add hl, bc + ld [hl], $2c + ld hl, $d + add hl, bc + ld [hl], $0 + ld hl, $c + add hl, bc + ld [hl], $80 + +; no known jump sources +Functioncdb65: ; cdb65 (33:5b65) + ld hl, $7 + add hl, bc + ld a, [hl] + cp $98 + ret nc + inc [hl] + inc [hl] + ld hl, $f + add hl, bc + ld a, [hl] + inc [hl] + ld d, $8 + call Functionce734 + ld hl, $a + add hl, bc + ld [hl], a + ret + +; no known jump sources +Functioncdb80: ; cdb80 (33:5b80) + call Functionce71e ; ; ; call does not return + +; no known jump sources +Jumptable_cdb83: ; cdb83 (33:5b83) + 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 + + +; no known jump sources +Functioncdb9f: ; cdb9f (33:5b9f) + ld hl, $f + add hl, bc + ld [hl], $28 + inc hl + ld [hl], $10 + ld hl, $b + add hl, bc + ld a, [hl] + ld hl, $e + add hl, bc + ld [hl], a + ret + +; no known jump sources +Functioncdbb3: ; cdbb3 (33:5bb3) + ld hl, $7 + add hl, bc + ld a, [hl] + cp $40 + jr nc, .asm_cdbbd + inc [hl] +.asm_cdbbd + call Functioncdc75 + ret + +; no known jump sources +Functioncdbc1: ; cdbc1 (33:5bc1) + ld hl, $7 + add hl, bc + ld a, [hl] + cp $4b + jr nc, .asm_cdbcb + inc [hl] +.asm_cdbcb + call Functioncdc75 + ret + +; no known jump sources +Functioncdbcf: ; cdbcf (33:5bcf) + ld hl, $7 + add hl, bc + ld a, [hl] + cp $88 + jr nc, .asm_cdbe6 + and $f + jr nz, asm_cdbfa + ld hl, $10 + add hl, bc + ld [hl], $10 + call Functionce72c + ret +.asm_cdbe6 + call Functionce72c + inc [hl] + ret + +; no known jump sources +Functioncdbeb: ; cdbeb (33:5beb) + ld hl, $10 + add hl, bc + ld a, [hl] + and a + jr z, .asm_cdbf5 + dec [hl] + ret +.asm_cdbf5 + ld hl, $e + add hl, bc + dec [hl] +asm_cdbfa: ; cdbfa (33:5bfa) + ld hl, $7 + add hl, bc + inc [hl] + ld hl, $8 + add hl, bc + ld d, [hl] + ld hl, $f + add hl, bc + ld e, [hl] + ld hl, hPushOAM ; $ff80 + add hl, de + ld e, l + ld d, h + ld hl, $8 + add hl, bc + ld [hl], d + ld hl, $f + add hl, bc + ld [hl], e + ret + +; no known jump sources +Functioncdc1a: ; cdc1a (33:5c1a) + call Functioncc9bd + ret + +; no known jump sources +Functioncdc1e: ; cdc1e (33:5c1e) + ld a, $4e + call Functionce7bf + call Functionce72c + ret + +; no known jump sources +Functioncdc27: ; cdc27 (33:5c27) + ld hl, $f + add hl, bc + ld a, [hl] + inc [hl] + inc [hl] + ld d, $2 + call Functionce734 + ld hl, $9 + add hl, bc + ld [hl], a + ret + +; no known jump sources +Functioncdc39: ; cdc39 (33:5c39) + ld a, $50 + call Functionce7bf + ld hl, $a + add hl, bc + ld [hl], $4 + call Functionce72c + ret + +; no known jump sources +Functioncdc48: ; cdc48 (33:5c48) + ld a, $4f + call Functionce7bf + call Functionce72c + ld hl, $f + add hl, bc + ld [hl], $40 + ret + +; no known jump sources +Functioncdc57: ; cdc57 (33:5c57) + ld hl, $f + add hl, bc + ld a, [hl] + ld d, $20 + call Functionce734 + ld hl, $a + add hl, bc + ld [hl], a + ld hl, $f + add hl, bc + ld a, [hl] + cp $30 + jr c, .asm_cdc71 + dec [hl] + ret +.asm_cdc71 + call Functionce72c + +; no known jump sources +Functioncdc74: ; cdc74 (33:5c74) + ret + +; known jump sources: cdbbd (33:5bbd), cdbcb (33:5bcb) +Functioncdc75: ; cdc75 (33:5c75) + ld hl, $f + add hl, bc + ld a, [hli] + ld d, [hl] + call Functionce734 + ld hl, $a + add hl, bc + ld [hl], a + ld hl, $f + add hl, bc + inc [hl] + ld a, [hl] + and $3f + ret nz + ld hl, $f + add hl, bc + ld [hl], $20 + ld hl, $10 + add hl, bc + ld a, [hl] + sub $8 + ld [hl], a + ret nz + xor a + ld hl, $f + add hl, bc + ld [hli], a + ld [hl], a + call Functionce72c + ret + +; no known jump sources +Functioncdca6: ; cdca6 (33:5ca6) + ld hl, $a + add hl, bc + ld a, [hl] + and a + jr z, .asm_cdcb6 + cp $d8 + jr nc, .asm_cdcb6 + call Functioncc9bd + ret +.asm_cdcb6 + ld hl, $b + add hl, bc + ld d, [hl] + ld hl, $a + add hl, bc + ld a, [hl] + sub d + ld [hl], a + ret + +; no known jump sources +Functioncdcc3: ; cdcc3 (33:5cc3) + call Functionce71e ; ; ; call does not return + +; no known jump sources +Jumptable_cdcc6: ; cdcc6 (33:5cc6) + dw Functioncdcca + dw Functioncdced + + +; no known jump sources +Functioncdcca: ; cdcca (33:5cca) + ld a, [hBattleTurn] ; $ff00+$e4 + and a + jr z, .asm_cdcd9 + ld hl, $b + add hl, bc + ld a, [hl] + xor $ff + add $3 + ld [hl], a +.asm_cdcd9 + call Functionce72c + ld hl, $f + add hl, bc + ld [hl], $8 + ld hl, $b + add hl, bc + ld a, $59 + add [hl] + call Functionce7bf + ret + +; no known jump sources +Functioncdced: ; cdced (33:5ced) + ld hl, $f + add hl, bc + ld a, [hl] + and a + jr z, .asm_cdcfa + dec [hl] + call Functioncdcfe + ret +.asm_cdcfa + call Functioncc9bd + ret + +; known jump sources: cdcf6 (33:5cf6) +Functioncdcfe: ; cdcfe (33:5cfe) + ld hl, $10 + add hl, bc + ld a, [hl] + inc [hl] + inc [hl] + ld d, $10 + call Functionce734 + ld d, a + ld hl, $9 + add hl, bc + ld [hl], a + ld hl, $b + add hl, bc + ld a, [hl] + and a + jr z, .asm_cdd20 + dec a + ret z + ld hl, $a + add hl, bc + ld [hl], d + ret +.asm_cdd20 + ld hl, $a + add hl, bc + ld a, d + xor $ff + inc a + ld [hl], a + ret + +; no known jump sources +Functioncdd2a: ; cdd2a (33:5d2a) + call Functionce71e ; ; ; call does not return + +; no known jump sources +Jumptable_cdd2d: ; cdd2d (33:5d2d) + dw Functioncdd31 + dw Functioncdd4f + + +; no known jump sources +Functioncdd31: ; cdd31 (33:5d31) + call Functionce72c + ld hl, $b + add hl, bc + ld a, [hl] + and $3f + ld hl, $10 + add hl, bc + ld [hl], a + ld hl, $b + add hl, bc + ld a, [hl] + and $80 + rlca + ld [hl], a + add $5d + call Functionce7bf + ret + +; no known jump sources +Functioncdd4f: ; cdd4f (33:5d4f) + ld hl, $b + add hl, bc + ld a, [hl] + swap a + ld d, a + ld hl, $10 + add hl, bc + ld a, [hl] + inc [hl] + push af + push de + call Functionce734 + ld hl, $a + add hl, bc + ld [hl], a + pop de + pop af + call Functionce732 + ld hl, $9 + add hl, bc + ld [hl], a + ld hl, $7 + add hl, bc + ld a, [hl] + cp $80 + ret nc + ld hl, $10 + add hl, bc + ld a, [hl] + and $3 + jr nz, .asm_cdd87 + ld hl, $8 + add hl, bc + dec [hl] +.asm_cdd87 + and $1 + ret nz + ld hl, $7 + add hl, bc + inc [hl] + ret + +; no known jump sources +Functioncdd90: ; cdd90 (33:5d90) + call Functionce71e ; ; ; call does not return + +; no known jump sources +Jumptable_cdd93: ; cdd93 (33:5d93) + dw Functioncdd97 + dw Functioncddbc + + +; no known jump sources +Functioncdd97: ; cdd97 (33:5d97) + call Functionce72c + ld hl, $3 + add hl, bc + ld a, [hl] + ld hl, $f + add hl, bc + ld [hl], a + ld hl, $b + add hl, bc + ld a, [hl] + and $80 + rlca + ld hl, $f + add hl, bc + add [hl] + call Functionce7bf + ld hl, $b + add hl, bc + ld a, [hl] + and $7f + ld [hl], a + +; no known jump sources +Functioncddbc: ; cddbc (33:5dbc) + ld hl, $b + add hl, bc + ld a, [hl] + ld d, $10 + push af + push de + call Functionce734 + sra a + sra a + ld hl, $a + add hl, bc + ld [hl], a + pop de + pop af + call Functionce732 + ld hl, $9 + add hl, bc + ld [hl], a + ld hl, $b + add hl, bc + ld a, [hl] + inc [hl] + and $3f + jr z, .asm_cddf0 + and $1f + ret nz + ld hl, $f + add hl, bc + ld a, [hl] + inc a + jr .asm_cddf5 +.asm_cddf0 + ld hl, $f + add hl, bc + ld a, [hl] +.asm_cddf5 + call Functionce7bf + ret + +; no known jump sources +Functioncddf9: ; cddf9 (33:5df9) + call Functionce71e ; ; ; call does not return + +; no known jump sources +Jumptable_cddfc: ; cddfc (33:5dfc) + dw Functioncde02 + dw Functioncde20 + dw Functioncde21 + + +; no known jump sources +Functioncde02: ; cde02 (33:5e02) + call Functionce72c + ld hl, $b + add hl, bc + ld a, [hl] + add $63 + call Functionce7bf + ld hl, $b + add hl, bc + ld e, [hl] + ld d, $0 + ld hl, $5e25 + add hl, de + ld a, [hl] + ld hl, $a + add hl, bc + ld [hl], a + +; no known jump sources +Functioncde20: ; cde20 (33:5e20) + ret + +; no known jump sources +Functioncde21: ; cde21 (33:5e21) + call Functioncc9bd + ret +; cde25 (33:5e25) + +INCBIN "baserom.gbc",$cde25,$cde28 - $cde25 + +; no known jump sources +Functioncde28: ; cde28 (33:5e28) + ld hl, $f + add hl, bc + ld a, [hl] + inc [hl] + inc [hl] + ld d, $4 + call Functionce734 + ld hl, $9 + add hl, bc + ld [hl], a + ld hl, $a + add hl, bc + ld d, [hl] + ld hl, $10 + add hl, bc + ld e, [hl] + ld hl, $ffa0 + add hl, de + ld e, l + ld d, h + ld hl, $a + add hl, bc + ld [hl], d + ld hl, $10 + add hl, bc + ld [hl], e + ret + +; no known jump sources +Functioncde54: ; cde54 (33:5e54) + ld hl, $f + add hl, bc + ld a, [hl] + dec [hl] + dec [hl] + ld d, $10 + call Functionce734 + ld hl, $a + add hl, bc + ld [hl], a + ld hl, $7 + add hl, bc + inc [hl] + ret + +; no known jump sources +Functioncde6b: ; cde6b (33:5e6b) + call Functionce71e ; ; ; call does not return + +; no known jump sources +Jumptable_cde6e: ; cde6e (33:5e6e) + dw Functioncde72 + dw Functioncde88 + + +; no known jump sources +Functioncde72: ; cde72 (33:5e72) + call Functionce72c + ld hl, $b + add hl, bc + ld a, [hl] + and a + jr nz, .asm_cde83 + ld hl, $1 + add hl, bc + set 6, [hl] +.asm_cde83 + add $6a + call Functionce7bf + +; no known jump sources +Functioncde88: ; cde88 (33:5e88) + ret + +; no known jump sources +Functioncde89: ; cde89 (33:5e89) + call Functionce71e ; ; ; call does not return + +; no known jump sources +Jumptable_cde8c: ; cde8c (33:5e8c) + dw Functioncde90 + dw Functioncdebf + + +; no known jump sources +Functioncde90: ; cde90 (33:5e90) + call Functionce72c + ld hl, $f + add hl, bc + ld [hl], $0 + ld hl, $b + add hl, bc + ld e, [hl] + ld a, e + and $70 + swap a + ld [hl], a + ld hl, $9 + 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 + +; no known jump sources +Functioncdebf: ; cdebf (33:5ebf) + ld hl, $f + add hl, bc + ld a, [hl] + and a + jr z, .asm_cdec9 + dec [hl] + ret +.asm_cdec9 + ld hl, $b + add hl, bc + ld a, [hl] + ld hl, $f + add hl, bc + ld [hl], a + ld hl, $9 + add hl, bc + ld a, [hl] + xor $ff + inc a + ld [hl], a + ret + +; no known jump sources +Functioncdedd: ; cdedd (33:5edd) + ld hl, $f + add hl, bc + ld a, [hl] + ld d, $18 + push af + push de + call Functionce734 + sra a + sra a + sra a + ld hl, $10 + add hl, bc + add [hl] + ld hl, $a + add hl, bc + ld [hl], a + pop de + pop af + call Functionce732 + ld hl, $9 + add hl, bc + ld [hl], a + ld hl, $f + add hl, bc + inc [hl] + ld a, [hl] + and $7 + ret nz + ld hl, $10 + add hl, bc + ld a, [hl] + cp $28 + jr nc, .asm_cdf17 + inc [hl] + ret +.asm_cdf17 + call Functioncc9bd + ret + +; no known jump sources +Functioncdf1b: ; cdf1b (33:5f1b) + ld hl, $f + add hl, bc + ld a, [hl] + ld d, $18 + push af + push de + call Functionce734 + sra a + sra a + sra a + ld hl, $10 + add hl, bc + add [hl] + ld hl, $a + add hl, bc + ld [hl], a + pop de + pop af + call Functionce732 + ld hl, $9 + add hl, bc + ld [hl], a + ld hl, $f + add hl, bc + inc [hl] + ld a, [hl] + and $3 + ret nz + ld hl, $10 + add hl, bc + ld a, [hl] + cp $28 + jr nc, .asm_cdf55 + inc [hl] + ret +.asm_cdf55 + call Functioncc9bd + ret + +; no known jump sources +Functioncdf59: ; cdf59 (33:5f59) + call Functionce71e ; ; ; call does not return + +; no known jump sources +Jumptable_cdf5c: ; cdf5c (33:5f5c) + dw Functioncdf60 + dw Functioncdedd + + +; no known jump sources +Functioncdf60: ; cdf60 (33:5f60) + ld hl, $7 + add hl, bc + ld a, [hl] + cp $84 + jr nc, .asm_cdf88 + inc [hl] + ld hl, $f + add hl, bc + ld a, [hl] + inc [hl] + ld d, $18 + call Functionce732 + ld hl, $9 + add hl, bc + ld [hl], a + ld hl, $7 + add hl, bc + ld a, [hl] + and $1 + ret nz + ld hl, $8 + add hl, bc + dec [hl] + ret +.asm_cdf88 + call Functionce72c + ret + +; no known jump sources +Functioncdf8c: ; cdf8c (33:5f8c) + ld hl, $b + add hl, bc + ld a, [hl] + ld d, $18 + push af + push de + call Functionce734 + sra a + sra a + sra a + ld hl, $10 + add hl, bc + add [hl] + ld hl, $a + add hl, bc + ld [hl], a + pop de + pop af + call Functionce732 + ld hl, $9 + add hl, bc + ld [hl], a + ld hl, $b + add hl, bc + inc [hl] + inc [hl] + ld a, [hl] + and $7 + ret nz + ld hl, $10 + add hl, bc + ld a, [hl] + cp $e8 + jr z, .asm_cdfc7 + dec [hl] + ret +.asm_cdfc7 + call Functioncc9bd + ret + +; no known jump sources +Functioncdfcb: ; cdfcb (33:5fcb) + ld hl, $b + add hl, bc + ld a, [hl] + ld d, $18 + push af + push de + call Functionce734 + sra a + sra a + sra a + ld hl, $10 + add hl, bc + add [hl] + ld hl, $a + add hl, bc + ld [hl], a + pop de + pop af + call Functionce732 + ld hl, $9 + add hl, bc + ld [hl], a + ld hl, $b + add hl, bc + inc [hl] + inc [hl] + ld a, [hl] + and $3 + ret nz + ld hl, $10 + add hl, bc + ld a, [hl] + cp $d0 + jr z, .asm_ce007 + dec [hl] + dec [hl] + ret +.asm_ce007 + call Functioncc9bd + ret + +; no known jump sources +Functionce00b: ; ce00b (33:600b) + call Functionce71e ; ; ; call does not return + +; no known jump sources +Jumptable_ce00e: ; ce00e (33:600e) + dw Functionce014 + dw Functionce023 + dw Functionce05f + + +; no known jump sources +Functionce014: ; ce014 (33:6014) + call Functionce72c + ld hl, $f + add hl, bc + ld [hl], $34 + ld hl, $10 + add hl, bc + ld [hl], $10 + +; no known jump sources +Functionce023: ; ce023 (33:6023) + ld hl, $7 + add hl, bc + ld a, [hl] + cp $6c + jr c, .asm_ce02d + ret +.asm_ce02d + ld a, $2 + call Functionce70a + ld hl, $f + add hl, bc + ld a, [hl] + ld hl, $10 + add hl, bc + ld d, [hl] + call Functionce734 + bit 7, a + jr nz, .asm_ce046 + xor $ff + inc a +.asm_ce046 + ld hl, $a + add hl, bc + ld [hl], a + ld hl, $f + add hl, bc + ld a, [hl] + sub $4 + ld [hl], a + and $1f + cp $20 + ret nz + ld hl, $10 + add hl, bc + srl [hl] + ret + +; no known jump sources +Functionce05f: ; ce05f (33:605f) + call Functioncc9bd + ret + +; no known jump sources +Functionce063: ; ce063 (33:6063) + call Functionce71e ; ; ; call does not return + +; no known jump sources +Jumptable_ce066: ; ce066 (33:6066) + dw Functionce06e + dw Functionce083 + dw Functionce091 + dw Functionce09e + + +; no known jump sources +Functionce06e: ; ce06e (33:606e) + ld hl, $b + add hl, bc + ld a, [hl] + ld hl, $e + add hl, bc + ld [hl], a + ld hl, $8 + add hl, bc + ld a, [hl] + ld hl, $f + add hl, bc + ld [hl], a + ret + +; no known jump sources +Functionce083: ; ce083 (33:6083) + ld hl, $7 + add hl, bc + ld a, [hl] + cp $58 + ret nc + ld a, $2 + call Functionce70a + ret + +; no known jump sources +Functionce091: ; ce091 (33:6091) + ld hl, $10 + add hl, bc + ld a, [hl] + cp $20 + jr c, Functionce09e + call Functioncc9bd + ret + +; known jump sources: ce098 (33:6098) +Functionce09e: ; ce09e (33:609e) + ld hl, $10 + add hl, bc + ld a, [hl] + ld d, $8 + call Functionce734 + ld hl, $9 + add hl, bc + ld [hl], a + sra a + xor $ff + inc a + ld hl, $f + add hl, bc + add [hl] + ld hl, $8 + add hl, bc + ld [hl], a + ld hl, $10 + add hl, bc + ld a, [hl] + add $8 + ld [hl], a + ret + +; no known jump sources +Functionce0c5: ; ce0c5 (33:60c5) + call Functionce71e ; ; ; call does not return + +; no known jump sources +Jumptable_ce0c8: ; ce0c8 (33:60c8) + dw Functionce0ce + dw Functionce0f8 + dw Functionce0dd + + +; no known jump sources +Functionce0ce: ; ce0ce (33:60ce) + ld hl, $b + add hl, bc + ld a, [hl] + and $f0 + swap a + ld hl, $e + add hl, bc + ld [hl], a + ret + +; no known jump sources +Functionce0dd: ; ce0dd (33:60dd) + ld hl, $f + add hl, bc + ld a, [hl] + ld d, $10 + call Functionce734 + ld hl, $a + add hl, bc + bit 7, a + jr z, .asm_ce0f0 + ld [hl], a +.asm_ce0f0 + ld hl, $f + add hl, bc + ld a, [hl] + sub $4 + ld [hl], a + +; no known jump sources +Functionce0f8: ; ce0f8 (33:60f8) + ld hl, $7 + add hl, bc + ld a, [hl] + cp $84 + jr c, .asm_ce105 + call Functioncc9bd + ret +.asm_ce105 + ld hl, $b + add hl, bc + ld a, [hl] + call Functionce70a + ret + +; no known jump sources +Functionce10e: ; ce10e (33:610e) + call Functionce71e ; ; ; call does not return + +; no known jump sources +Jumptable_ce111: ; ce111 (33:6111) + dw Functionce115 + dw Functionce12a + + +; no known jump sources +Functionce115: ; ce115 (33:6115) + call Functionce72c + ld hl, $f + add hl, bc + ld [hl], $28 + ld hl, $8 + add hl, bc + ld a, [hl] + sub $28 + ld hl, $10 + add hl, bc + ld [hl], a + +; no known jump sources +Functionce12a: ; ce12a (33:612a) + ld hl, $f + add hl, bc + ld a, [hli] + ld d, [hl] + call Functionce734 + ld hl, $a + add hl, bc + ld [hl], a + ld hl, $f + add hl, bc + ld a, [hl] + ld hl, $b + add hl, bc + and [hl] + jr nz, .asm_ce149 + ld hl, $7 + add hl, bc + dec [hl] +.asm_ce149 + ld hl, $f + add hl, bc + inc [hl] + ld a, [hl] + and $3f + ret nz + ld hl, $f + add hl, bc + ld [hl], $20 + inc hl + srl [hl] + ret + +; no known jump sources +Functionce15c: ; ce15c (33:615c) + ld hl, $b + add hl, bc + ld a, [hl] + ld hl, $f + add hl, bc + ld d, [hl] + push af + push de + call Functionce734 + ld hl, $a + add hl, bc + ld [hl], a + pop de + pop af + call Functionce732 + ld hl, $9 + add hl, bc + ld [hl], a + ld hl, $b + add hl, bc + inc [hl] + ld a, [hl] + and $1 + jr nz, .asm_ce189 + ld hl, $7 + add hl, bc + dec [hl] +.asm_ce189 + ld hl, $b + add hl, bc + ld a, [hl] + and $3 + jr nz, .asm_ce197 + ld hl, $8 + add hl, bc + inc [hl] +.asm_ce197 + ld hl, $7 + add hl, bc + ld a, [hl] + ld hl, $f + 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 Functioncc9bd + ret + +; no known jump sources +Functionce1b0: ; ce1b0 (33:61b0) + ld hl, $b + add hl, bc + ld a, [hl] + inc [hl] + ld hl, $f + add hl, bc + ld d, [hl] + push af + push de + call Functionce734 + ld hl, $a + add hl, bc + ld [hl], a + pop de + pop af + call Functionce732 + ld hl, $9 + add hl, bc + ld [hl], a + ld hl, $10 + add hl, bc + ld a, [hl] + inc [hl] + ld hl, $f + add hl, bc + cp $40 + jr nc, .asm_ce1df + inc [hl] + ret +.asm_ce1df + ld a, [hl] + dec [hl] + and a + ret nz + call Functioncc9bd + ret + +; no known jump sources +Functionce1e7: ; ce1e7 (33:61e7) + call Functionce71e ; ; ; call does not return + +; no known jump sources +Jumptable_ce1ea: ; ce1ea (33:61ea) + dw Functionce1ee + dw Functionce1fb + + +; no known jump sources +Functionce1ee: ; ce1ee (33:61ee) + call Functionce72c + ld hl, $8 + add hl, bc + ld a, [hl] + ld hl, $10 + add hl, bc + ld [hl], a + +; no known jump sources +Functionce1fb: ; ce1fb (33:61fb) + ld hl, $b + add hl, bc + ld a, [hl] + ld d, $30 + call Functionce734 + ld hl, $10 + add hl, bc + add [hl] + ld hl, $8 + add hl, bc + ld [hl], a + ld hl, $b + add hl, bc + ld a, [hl] + add $8 + ld d, $30 + call Functionce732 + ld hl, $9 + add hl, bc + ld [hl], a + ld hl, $b + add hl, bc + inc [hl] + ret + +; no known jump sources +Functionce226: ; ce226 (33:6226) + call Functionce71e ; ; ; call does not return + +; no known jump sources +Jumptable_ce229: ; ce229 (33:6229) + dw Functionce22d + dw Functionce254 + + +; no known jump sources +Functionce22d: ; ce22d (33:622d) + call Functionce72c + ld hl, $b + add hl, bc + ld a, [hl] + ld d, $10 + call Functionce734 + ld hl, $a + add hl, bc + ld [hl], a + ld hl, $b + add hl, bc + ld a, [hl] + ld d, $10 + call Functionce732 + ld hl, $9 + add hl, bc + ld [hl], a + ld hl, $10 + add hl, bc + ld [hl], $f + +; no known jump sources +Functionce254: ; ce254 (33:6254) + ret + +; no known jump sources +Functionce255: ; ce255 (33:6255) + call Functionce71e ; ; ; call does not return + +; no known jump sources +Jumptable_ce258: ; ce258 (33:6258) + dw Functionce260 + dw Functionce274 + dw Functionce278 + dw Functionce289 + + +; no known jump sources +Functionce260: ; ce260 (33:6260) + call Functionce72c + ld a, [hBattleTurn] ; $ff00+$e4 + and a + jr nz, .asm_ce26c + ld a, $f0 + jr .asm_ce26e +.asm_ce26c + ld a, $cc +.asm_ce26e + ld hl, $f + add hl, bc + ld [hl], a + ret + +; no known jump sources +Functionce274: ; ce274 (33:6274) + call Functionce29f + ret + +; no known jump sources +Functionce278: ; ce278 (33:6278) + call Functionce29f + ld hl, $7 + add hl, bc + ld a, [hl] + cp $84 + ret nc + ld a, $4 + call Functionce70a + ret + +; no known jump sources +Functionce289: ; ce289 (33:6289) + call Functionce29f + ld hl, $7 + add hl, bc + ld a, [hl] + cp $d0 + jr nc, .asm_ce29b + ld a, $4 + call Functionce70a + ret +.asm_ce29b + call Functioncc9bd + ret + +; known jump sources: ce274 (33:6274), ce278 (33:6278), ce289 (33:6289) +Functionce29f: ; ce29f (33:629f) + ld hl, $10 + add hl, bc + ld a, [hl] + and $7 + inc [hl] + srl a + ld e, a + ld d, $0 + ld a, [hSGB] ; $ff00+$e7 + and a + jr nz, .asm_ce2b6 + ld hl, $62c4 + jr .asm_ce2b9 +.asm_ce2b6 + ld hl, $62c8 +.asm_ce2b9 + add hl, de + ld a, [hl] + ld hl, $f + add hl, bc + and [hl] + ld [$cfc8], a + ret +; ce2c4 (33:62c4) + +INCBIN "baserom.gbc",$ce2c4,$ce2cc - $ce2c4 + +; no known jump sources +Functionce2cc: ; ce2cc (33:62cc) + ld hl, $b + add hl, bc + ld a, [hl] + ld d, $18 + call Functionce734 + sra a + sra a + sra a + ld hl, $10 + add hl, bc + add [hl] + ld hl, $a + add hl, bc + ld [hl], a + ld hl, $b + add hl, bc + ld a, [hl] + inc [hl] + ld d, $18 + call Functionce732 + ld hl, $9 + add hl, bc + ld [hl], a + ld hl, $10 + add hl, bc + dec [hl] + dec [hl] + ret + +; no known jump sources +Functionce2fd: ; ce2fd (33:62fd) + call Functionce71e ; ; ; call does not return + +; no known jump sources +Jumptable_ce300: ; ce300 (33:6300) + dw Functionce306 + dw Functionce330 + dw Functionce34c + + +; no known jump sources +Functionce306: ; ce306 (33:6306) + ld hl, $a + add hl, bc + ld a, [hl] + cp $e0 + jr nz, .asm_ce319 + call Functionce72c + ld hl, $f + add hl, bc + ld [hl], $2 + ret +.asm_ce319 + ld d, a + ld hl, $f + add hl, bc + ld e, [hl] + ld hl, hPushOAM ; $ff80 + add hl, de + ld e, l + ld d, h + ld hl, $a + add hl, bc + ld [hl], d + ld hl, $f + add hl, bc + ld [hl], e + ret + +; no known jump sources +Functionce330: ; ce330 (33:6330) + ld hl, $10 + add hl, bc + ld a, [hl] + and a + jr z, .asm_ce33a + dec [hl] + ret +.asm_ce33a + ld [hl], $4 + ld hl, $f + add hl, bc + ld a, [hl] + xor $ff + inc a + ld [hl], a + ld hl, $a + add hl, bc + add [hl] + ld [hl], a + ret + +; no known jump sources +Functionce34c: ; ce34c (33:634c) + ld hl, $7 + add hl, bc + ld a, [hl] + cp $84 + jr nc, .asm_ce35b + ld a, $4 + call Functionce70a + ret +.asm_ce35b + call Functioncc9bd + ret + +; no known jump sources +Functionce35f: ; ce35f (33:635f) + call Functionce71e ; ; ; call does not return + +; no known jump sources +Jumptable_ce362: ; ce362 (33:6362) + dw Functionce366 + dw Functionce375 + + +; no known jump sources +Functionce366: ; ce366 (33:6366) + call Functionce72c + ld hl, $b + add hl, bc + ld a, [hl] + and $7f + add $81 + call Functionce7bf + +; no known jump sources +Functionce375: ; ce375 (33:6375) + ld hl, $b + add hl, bc + bit 7, [hl] + jr nz, .asm_ce383 + ld hl, $9 + add hl, bc + inc [hl] + ret +.asm_ce383 + ld hl, $9 + add hl, bc + dec [hl] + ret + +; no known jump sources +Functionce389: ; ce389 (33:6389) + call Functionce71e ; ; ; call does not return + +; no known jump sources +Jumptable_ce38c: ; ce38c (33:638c) + dw Functionce392 + dw Functionce39c + dw Functionce3ae + + +; no known jump sources +Functionce392: ; ce392 (33:6392) + call Functionce72c + ld hl, $f + add hl, bc + ld [hl], $c + ret + +; no known jump sources +Functionce39c: ; ce39c (33:639c) + ld hl, $f + add hl, bc + ld a, [hl] + and a + jr z, .asm_ce3a6 + dec [hl] + ret +.asm_ce3a6 + call Functionce72c + ld a, $20 + call Functionce7bf + +; no known jump sources +Functionce3ae: ; ce3ae (33:63ae) + ld hl, $a + add hl, bc + dec [hl] + ret + +; no known jump sources +Functionce3b4: ; ce3b4 (33:63b4) + ld hl, $f + add hl, bc + ld a, [hl] + inc [hl] + inc [hl] + push af + ld d, $2 + call Functionce734 + ld hl, $a + add hl, bc + ld [hl], a + pop af + ld d, $8 + call Functionce732 + ld hl, $9 + add hl, bc + ld [hl], a + ret + +; no known jump sources +Functionce3d2: ; ce3d2 (33:63d2) + ld hl, $a + add hl, bc + ld a, [hl] + cp $20 + jr c, .asm_ce3df + call Functioncc9bd + ret +.asm_ce3df + ld hl, $b + add hl, bc + ld a, [hl] + ld d, $8 + call Functionce732 + ld hl, $9 + add hl, bc + ld [hl], a + ld hl, $b + add hl, bc + ld a, [hl] + add $2 + ld [hl], a + and $7 + ret nz + ld hl, $a + add hl, bc + inc [hl] + ret + +; no known jump sources +Functionce3ff: ; ce3ff (33:63ff) + call Functionce71e ; ; ; call does not return + +; no known jump sources +Jumptable_ce402: ; ce402 (33:6402) + dw Functionce406 + dw Functionce412 + + +; no known jump sources +Functionce406: ; ce406 (33:6406) + ld hl, $b + add hl, bc + ld a, [hl] + ld hl, $7 + add hl, bc + add [hl] + ld [hl], a + ret + +; no known jump sources +Functionce412: ; ce412 (33:6412) + call Functioncc9bd + ret + +; no known jump sources +Functionce416: ; ce416 (33:6416) + ld hl, $b + add hl, bc + ld a, [hl] + ld d, $18 + push af + push de + call Functionce734 + ld hl, $a + add hl, bc + ld [hl], a + pop de + pop af + call Functionce732 + ld hl, $9 + add hl, bc + sra a + ld [hl], a + ld hl, $b + add hl, bc + ld a, [hl] + inc [hl] + ret + +; no known jump sources +Functionce43a: ; ce43a (33:643a) + call Functionce71e ; ; ; call does not return + +; no known jump sources +Jumptable_ce43d: ; ce43d (33:643d) + dw Functionce443 + dw Functionce465 + dw Functionce490 + + +; no known jump sources +Functionce443: ; ce443 (33:6443) + call Functionce72c + ld hl, $f + add hl, bc + ld [hl], $28 + ld hl, $b + add hl, bc + ld a, [hl] + and $f + ld hl, $3 + add hl, bc + add [hl] + call Functionce7bf + ld hl, $b + add hl, bc + ld a, [hl] + and $f0 + or $8 + ld [hl], a + +; no known jump sources +Functionce465: ; ce465 (33:6465) + ld hl, $f + add hl, bc + ld a, [hl] + and a + jr z, .asm_ce48b + dec [hl] + add $8 + ld d, a + ld hl, $b + add hl, bc + ld a, [hl] + push af + push de + call Functionce734 + ld hl, $a + add hl, bc + ld [hl], a + pop de + pop af + call Functionce732 + ld hl, $9 + add hl, bc + ld [hl], a + ret +.asm_ce48b + ld [hl], $10 + call Functionce72c + +; no known jump sources +Functionce490: ; ce490 (33:6490) + ld hl, $f + add hl, bc + ld a, [hl] + dec [hl] + and a + ret nz + call Functioncc9bd + ret + +; no known jump sources +Functionce49c: ; ce49c (33:649c) + call Functionce71e ; ; ; call does not return + +; no known jump sources +Jumptable_ce49f: ; ce49f (33:649f) + dw Functionce4a3 + dw Functionce4b0 + + +; no known jump sources +Functionce4a3: ; ce4a3 (33:64a3) + call Functionce72c + ld hl, $b + add hl, bc + ld a, $24 + add [hl] + call Functionce7bf + +; no known jump sources +Functionce4b0: ; ce4b0 (33:64b0) + ld hl, $a + add hl, bc + ld a, [hl] + cp $38 + jr nc, .asm_ce4d8 + inc [hl] + ld hl, $f + add hl, bc + ld a, [hl] + inc [hl] + ld d, $18 + call Functionce732 + ld hl, $9 + add hl, bc + ld [hl], a + ld hl, $8 + add hl, bc + ld a, [hl] + and $1 + ret nz + ld hl, $7 + add hl, bc + dec [hl] + ret +.asm_ce4d8 + call Functioncc9bd + ret + +; no known jump sources +Functionce4dc: ; ce4dc (33:64dc) + ld hl, $b + add hl, bc + ld a, [hl] + and a + ret z + ld d, a + ld hl, $f + add hl, bc + ld a, [hl] + inc [hl] + call Functionce734 + bit 7, a + jr nz, .asm_ce4f4 + xor $ff + inc a +.asm_ce4f4 + ld hl, $a + add hl, bc + ld [hl], a + ld hl, $f + add hl, bc + ld a, [hl] + and $1f + ret nz + ld hl, $b + add hl, bc + srl [hl] + ret + +; no known jump sources +Functionce508: ; ce508 (33:6508) + ld hl, $f + add hl, bc + ld a, [hl] + cp $10 + jr nc, .asm_ce52e + inc [hl] + inc [hl] + ld d, a + ld hl, $b + add hl, bc + ld a, [hl] + push af + push de + call Functionce734 + ld hl, $a + add hl, bc + ld [hl], a + pop de + pop af + call Functionce732 + ld hl, $9 + add hl, bc + ld [hl], a + ret +.asm_ce52e + call Functioncc9bd + ret + +; no known jump sources +Functionce532: ; ce532 (33:6532) + ld hl, $b + add hl, bc + ld e, [hl] + ld hl, $f + 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 Functionce734 + ld hl, $a + add hl, bc + ld [hl], a + pop de + pop af + call Functionce732 + ld hl, $9 + add hl, bc + ld [hl], a + ret + +; no known jump sources +Functionce55b: ; ce55b (33:655b) + call Functionce71e ; ; ; call does not return + +; no known jump sources +Jumptable_ce55e: ; ce55e (33:655e) + dw Functionce564 + dw Functionce56e + dw Functionce577 + + +; no known jump sources +Functionce564: ; ce564 (33:6564) + ld d, $18 + ld hl, $b + add hl, bc + ld a, [hl] + inc [hl] + jr asm_ce58f + +; no known jump sources +Functionce56e: ; ce56e (33:656e) + call Functionce72c + ld hl, $f + add hl, bc + ld [hl], $18 + +; no known jump sources +Functionce577: ; ce577 (33:6577) + ld hl, $f + add hl, bc + ld a, [hl] + cp $80 + jr nc, .asm_ce58b + ld d, a + add $8 + ld [hl], a + ld hl, $b + add hl, bc + ld a, [hl] + jr asm_ce58f +.asm_ce58b + call Functioncc9bd + ret +asm_ce58f: ; ce58f (33:658f) + call Functionce6f1 + ret + +; no known jump sources +Functionce593: ; ce593 (33:6593) + call Functionce71e ; ; ; call does not return + +; no known jump sources +Jumptable_ce596: ; ce596 (33:6596) + dw Functionce5b3 + dw Functionce59a + + +; no known jump sources +Functionce59a: ; ce59a (33:659a) + ld hl, $7 + add hl, bc + ld a, [hl] + cp $30 + jr c, .asm_ce5b0 + ld hl, $7 + add hl, bc + dec [hl] + dec [hl] + ld hl, $8 + add hl, bc + inc [hl] + inc [hl] + ret +.asm_ce5b0 + call Functioncc9bd + +; no known jump sources +Functionce5b3: ; ce5b3 (33:65b3) + ret + +; no known jump sources +Functionce5b4: ; ce5b4 (33:65b4) + ld d, $50 + ld hl, $b + add hl, bc + ld a, [hl] + inc [hl] + inc [hl] + push af + push de + call Functionce734 + sra a + sra a + ld hl, $f + add hl, bc + add [hl] + inc [hl] + ld hl, $a + add hl, bc + ld [hl], a + pop de + pop af + call Functionce732 + ld hl, $9 + add hl, bc + ld [hl], a + ret + +; no known jump sources +Functionce5dc: ; ce5dc (33:65dc) + ld hl, $a + add hl, bc + ld a, [hl] + cp $d0 + jr z, .asm_ce5ea + dec [hl] + dec [hl] + dec [hl] + dec [hl] + ret +.asm_ce5ea + call Functioncc9bd + ret + +; no known jump sources +Functionce5ee: ; ce5ee (33:65ee) + call Functionce71e ; ; ; call does not return + +; no known jump sources +Jumptable_ce5f1: ; ce5f1 (33:65f1) + dw Functionce5f9 + dw Functionce60a + dw Functionce622 + dw Functionce618 + + +; no known jump sources +Functionce5f9: ; ce5f9 (33:65f9) + ld hl, $b + add hl, bc + ld a, [hl] + and a + jr nz, asm_ce61c + call Functionce72c + ld hl, $a + add hl, bc + ld [hl], $ec + +; no known jump sources +Functionce60a: ; ce60a (33:660a) + ld hl, $a + add hl, bc + ld a, [hl] + cp $4 + jr z, Functionce618 + inc [hl] + inc [hl] + inc [hl] + inc [hl] + ret + +; known jump sources: ce611 (33:6611) +Functionce618: ; ce618 (33:6618) + call Functioncc9bd + ret +asm_ce61c: ; ce61c (33:661c) + call Functionce72c + call Functionce72c + +; no known jump sources +Functionce622: ; ce622 (33:6622) + ld hl, $a + add hl, bc + ld a, [hl] + cp $d8 + ret z + dec [hl] + dec [hl] + dec [hl] + dec [hl] + ret + +; no known jump sources +Functionce62f: ; ce62f (33:662f) + call Functionce71e ; ; ; call does not return + +; no known jump sources +Jumptable_ce632: ; ce632 (33:6632) + dw Functionce63a + dw Functionce648 + dw Functionce65c + dw Functionce672 + + +; no known jump sources +Functionce63a: ; ce63a (33:663a) + ld hl, $b + add hl, bc + ld a, [hl] + ld hl, $e + add hl, bc + ld [hl], a + call Functionce72c + ret + +; no known jump sources +Functionce648: ; ce648 (33:6648) + ld hl, $a + add hl, bc + ld a, [hl] + add $4 + cp $70 + jr c, .asm_ce654 + xor a +.asm_ce654 + ld [hl], a + ld hl, $9 + add hl, bc + inc [hl] + inc [hl] + ret + +; no known jump sources +Functionce65c: ; ce65c (33:665c) + ld hl, $a + add hl, bc + ld a, [hl] + add $4 + cp $70 + jr c, .asm_ce668 + xor a +.asm_ce668 + ld [hl], a + ld hl, $9 + add hl, bc + ld a, [hl] + add $8 + ld [hl], a + ret + +; no known jump sources +Functionce672: ; ce672 (33:6672) + ld hl, $a + add hl, bc + ld a, [hl] + add $4 + cp $70 + jr c, .asm_ce67e + xor a +.asm_ce67e + ld [hl], a + ld hl, $9 + add hl, bc + ld a, [hl] + add $4 + ld [hl], a + ret + +; no known jump sources +Functionce688: ; ce688 (33:6688) + ld hl, $7 + add hl, bc + ld d, [hl] + ld hl, $f + add hl, bc + ld e, [hl] + ld hl, $b + 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, $7 + add hl, bc + ld [hl], d + ld hl, $f + add hl, bc + ld [hl], e + ret + +; no known jump sources +Functionce6b3: ; ce6b3 (33:66b3) + ld d, $18 + ld hl, $b + add hl, bc + ld a, [hl] + inc [hl] + call Functionce6f1 + ret + +; no known jump sources +Functionce6bf: ; ce6bf (33:66bf) + ld d, $18 + ld hl, $10 + add hl, bc + ld a, [hl] + inc [hl] + srl a + ld hl, $b + add hl, bc + add [hl] + call Functionce6f1 + ret + +; no known jump sources +Functionce6d2: ; ce6d2 (33:66d2) + ld hl, $f + add hl, bc + ld a, [hl] + cp $20 + jr nc, .asm_ce6ed + inc [hl] + ld hl, $b + add hl, bc + ld d, [hl] + call Functionce734 + xor $ff + inc a + ld hl, $a + add hl, bc + ld [hl], a + ret +.asm_ce6ed + call Functioncc9bd + ret + +; known jump sources: ce58f (33:658f), ce6bb (33:66bb), ce6ce (33:66ce) +Functionce6f1: ; ce6f1 (33:66f1) + push af + push de + call Functionce734 + sra a + sra a + ld hl, $a + add hl, bc + ld [hl], a + pop de + pop af + call Functionce732 + ld hl, $9 + add hl, bc + ld [hl], a + ret + +; known jump sources: cd142 (33:5142), cd154 (33:5154), cd2ad (33:52ad), cd553 (33:5553), cd609 (33:5609), cd706 (33:5706), cd733 (33:5733), ce02f (33:602f), ce08d (33:608d), ce10a (33:610a), ce285 (33:6285), ce297 (33:6297), ce357 (33:6357) +Functionce70a: ; ce70a (33:670a) + and $f + ld e, a + ld hl, $7 + add hl, bc + add [hl] + ld [hl], a + srl e + ld hl, $8 + add hl, bc +.asm_ce719 + dec [hl] + dec e + jr nz, .asm_ce719 + ret + +; known jump sources: cd06e (33:506e), cd0e3 (33:50e3), cd12a (33:512a), cd15c (33:515c), cd212 (33:5212), cd284 (33:5284), cd2be (33:52be), cd306 (33:5306), cd3ae (33:53ae), cd3f2 (33:53f2), cd478 (33:5478), cd58a (33:558a), cd5e9 (33:55e9), cd66a (33:566a), cd6e3 (33:56e3), cd71a (33:571a), cd7a4 (33:57a4), cd80c (33:580c), cd824 (33:5824), cd89a (33:589a), cd900 (33:5900), cd954 (33:5954), cda31 (33:5a31), cda4d (33:5a4d), cdad6 (33:5ad6), cdb06 (33:5b06), cdb80 (33:5b80), cdcc3 (33:5cc3), cdd2a (33:5d2a), cdd90 (33:5d90), cddf9 (33:5df9), cde6b (33:5e6b), cde89 (33:5e89), cdf59 (33:5f59), ce00b (33:600b), ce063 (33:6063), ce0c5 (33:60c5), ce10e (33:610e), ce1e7 (33:61e7), ce226 (33:6226), ce255 (33:6255), ce2fd (33:62fd), ce35f (33:635f), ce389 (33:6389), ce3ff (33:63ff), ce43a (33:643a), ce49c (33:649c), ce55b (33:655b), ce593 (33:6593), ce5ee (33:65ee), ce62f (33:662f) +Functionce71e: ; ce71e (33:671e) + pop de + ld hl, $e + 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] + +; known jump sources: cd0ea (33:50ea), cd17a (33:517a), cd192 (33:5192), cd196 (33:5196), cd1ce (33:51ce), cd1e5 (33:51e5), cd20a (33:520a), cd21e (33:521e), cd22f (33:522f), cd2b5 (33:52b5), cd2c5 (33:52c5), cd31e (33:531e), cd321 (33:5321), cd37a (33:537a), cd3b7 (33:53b7), cd42f (33:542f), cd48d (33:548d), cd49f (33:549f), cd545 (33:5545), cd5a1 (33:55a1), cd5f2 (33:55f2), cd60d (33:560d), cd677 (33:5677), cd694 (33:5694), cd6ea (33:56ea), cd725 (33:5725), cd747 (33:5747), cd76e (33:576e), cd7ab (33:57ab), cd817 (33:5817), cd835 (33:5835), cd88f (33:588f), cd8ab (33:58ab), cd8f5 (33:58f5), cd907 (33:5907), cd961 (33:5961), cd977 (33:5977), cda43 (33:5a43), cda58 (33:5a58), cda76 (33:5a76), cda84 (33:5a84), cdadf (33:5adf), cdaf6 (33:5af6), cdb50 (33:5b50), cdbe2 (33:5be2), cdbe6 (33:5be6), cdc23 (33:5c23), cdc44 (33:5c44), cdc4d (33:5c4d), cdc71 (33:5c71), cdca2 (33:5ca2), cdcd9 (33:5cd9), cdd31 (33:5d31), cdd97 (33:5d97), cde02 (33:5e02), cde72 (33:5e72), cde90 (33:5e90), cdf88 (33:5f88), ce014 (33:6014), ce115 (33:6115), ce1ee (33:61ee), ce22d (33:622d), ce260 (33:6260), ce30f (33:630f), ce366 (33:6366), ce392 (33:6392), ce3a6 (33:63a6), ce443 (33:6443), ce48d (33:648d), ce4a3 (33:64a3), ce56e (33:656e), ce601 (33:6601), ce61c (33:661c), ce61f (33:661f), ce644 (33:6644) +Functionce72c: ; ce72c (33:672c) + ld hl, $e + add hl, bc + inc [hl] + ret + +; known jump sources: cd0d2 (33:50d2), cd11c (33:511c), cd33a (33:533a), cd44a (33:544a), cd7f5 (33:57f5), cd929 (33:5929), cd9bb (33:59bb), cdd69 (33:5d69), cddd3 (33:5dd3), cdefb (33:5efb), cdf39 (33:5f39), cdf72 (33:5f72), cdfaa (33:5faa), cdfe9 (33:5fe9), ce172 (33:6172), ce1c7 (33:61c7), ce218 (33:6218), ce246 (33:6246), ce2ee (33:62ee), ce3c9 (33:63c9), ce3e6 (33:63e6), ce429 (33:6429), ce482 (33:6482), ce4c2 (33:64c2), ce525 (33:6525), ce552 (33:6552), ce5d3 (33:65d3), ce701 (33:6701), ce76c (33:676c) +Functionce732: ; ce732 (33:6732) + add $10 + +; known jump sources: cd09c (33:509c), cd0c8 (33:50c8), cd112 (33:5112), cd1ad (33:51ad), cd1f4 (33:51f4), cd2d7 (33:52d7), cd34d (33:534d), cd440 (33:5440), cd4ca (33:54ca), cd502 (33:5502), cd5c5 (33:55c5), cd6a4 (33:56a4), cd711 (33:5711), cd73e (33:573e), cd7eb (33:57eb), cd86a (33:586a), cd8d6 (33:58d6), cd91f (33:591f), cd9a4 (33:59a4), cda90 (33:5a90), cdb77 (33:5b77), cdc30 (33:5c30), cdc5e (33:5c5e), cdc7b (33:5c7b), cdd07 (33:5d07), cdd5f (33:5d5f), cddc5 (33:5dc5), cde31 (33:5e31), cde5d (33:5e5d), cdee6 (33:5ee6), cdf24 (33:5f24), cdf95 (33:5f95), cdfd4 (33:5fd4), ce03c (33:603c), ce0a5 (33:60a5), ce0e4 (33:60e4), ce130 (33:6130), ce168 (33:6168), ce1bd (33:61bd), ce202 (33:6202), ce237 (33:6237), ce2d3 (33:62d3), ce3be (33:63be), ce41f (33:641f), ce478 (33:6478), ce4ea (33:64ea), ce51b (33:651b), ce548 (33:6548), ce5bf (33:65bf), ce6e1 (33:66e1), ce6f3 (33:66f3), ce766 (33:6766) +Functionce734: ; ce734 (33:6734) + and $3f + cp $20 + jr nc, .asm_ce73f + call Functionce749 + ld a, h + ret +.asm_ce73f + and $1f + call Functionce749 + ld a, h + xor $ff + inc a + ret + +; known jump sources: ce73a (33:673a), ce741 (33:6741) +Functionce749: ; ce749 (33:6749) + ld e, a + ld a, d + ld d, $0 + ld hl, $677f + add hl, de + add hl, de + ld e, [hl] + inc hl + ld d, [hl] + ld hl, $0 +.asm_ce758 + srl a + jr nc, .asm_ce75d + add hl, de +.asm_ce75d + sla e + rl d + and a + jr nz, .asm_ce758 + ret + +; no known jump sources +Functionce765: ; ce765 (33:6765) + ld a, e + call Functionce734 + ld e, a + ret + +; no known jump sources +Functionce76b: ; ce76b (33:676b) + ld a, e + call Functionce732 + ld e, a + ret +; ce771 (33:6771) + +INCBIN "baserom.gbc",$ce771,$ce7bf - $ce771 + +; known jump sources: cd18f (33:518f), cd19b (33:519b), cd1cb (33:51cb), cd1d4 (33:51d4), cd1e2 (33:51e2), cd2ba (33:52ba), cd419 (33:5419), cd434 (33:5434), cd4ab (33:54ab), cd53c (33:553c), cd618 (33:5618), cd6f4 (33:56f4), cd74c (33:574c), cd773 (33:5773), cd81c (33:581c), cd883 (33:5883), cd8e8 (33:58e8), cda40 (33:5a40), cda73 (33:5a73), cda89 (33:5a89), cdc20 (33:5c20), cdc3b (33:5c3b), cdc4a (33:5c4a), cdce9 (33:5ce9), cdd4b (33:5d4b), cddb1 (33:5db1), cddf5 (33:5df5), cde0c (33:5e0c), cde85 (33:5e85), cdebb (33:5ebb), ce372 (33:6372), ce3ab (33:63ab), ce458 (33:6458), ce4ad (33:64ad) +Functionce7bf: ; ce7bf (33:67bf) + ld hl, $3 + add hl, bc + ld [hl], a + ld hl, $c + add hl, bc + ld [hl], $0 + ld hl, $d + add hl, bc + ld [hl], $ff + ret + + +Functionce7d1: ; ce7d1 +.asm_ce7d1 + ld hl, $000c + 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, $000d + 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, $000c + add hl, bc + ld [hl], a + pop hl + +.asm_ce7fd + ld a, [hl] + and $c0 + srl a + ld [$d420], a + pop af + ret + +.asm_ce807 + xor a + ld hl, $000c + add hl, bc + ld [hl], a + ld hl, $000d + add hl, bc + dec [hl] + dec [hl] + jr .asm_ce7d1 + +.asm_ce815 + xor a + ld hl, $000c + add hl, bc + ld [hl], a + dec a + ld hl, $000d + add hl, bc + ld [hl], a + jr .asm_ce7d1 +; ce823 + +Functionce823: ; ce823 + ld hl, $0003 + add hl, bc + ld e, [hl] + ld d, $0 + ld hl, $685e + add hl, de + add hl, de + ld e, [hl] + inc hl + ld d, [hl] + ld hl, $000d + add hl, bc + ld l, [hl] + ld h, $0 + add hl, hl + add hl, de + ret +; ce83c + +Functionce83c: ; ce83c + ld l, a + ld h, $0 + ld de, $6eae + add hl, hl + add hl, hl + add hl, de + ret +; ce846 + + +; known jump sources: cc4b0 (33:44b0) +Functionce846: ; ce846 (33:6846) + push hl + ld l, a + ld h, $0 + add hl, hl + add hl, hl + ld de, $7cf6 + add hl, de + ld c, [hl] + inc hl + ld b, [hl] + inc hl + ld a, [hli] + ld h, [hl] + ld l, a + pop de + push bc + call Functione73 + pop bc + ret +; ce85e (33:685e) + +INCBIN "baserom.gbc",$ce85e,$cfd9e - $ce85e + diff --git a/battle/anims.asm b/battle/anims.asm new file mode 100644 index 000000000..1a5e28d40 --- /dev/null +++ b/battle/anims.asm @@ -0,0 +1,3 @@ +BattleAnimations: ; c906f +INCBIN "baserom.gbc",$c906f,$cbcdd - $c906f + diff --git a/battle/bg_effects.asm b/battle/bg_effects.asm new file mode 100644 index 000000000..d2af6af6b --- /dev/null +++ b/battle/bg_effects.asm @@ -0,0 +1,2938 @@ +; BG effects for use in battle animations. + +; no known jump sources +Functionc8000: ; c8000 (32:4000) + ld hl, $d3fa + ld e, $5 +.asm_c8005 + ld a, [hl] + and a + jr z, .asm_c8012 + ld c, l + ld b, h + push hl + push de + call Functionc804a + pop de + pop hl +.asm_c8012 + ld bc, $4 + add hl, bc + dec e + jr nz, .asm_c8005 + ret + +; no known jump sources +Functionc801a: ; c801a (32:401a) + ld hl, $d3fa + ld e, $5 +.asm_c801f + ld a, [hl] + and a + jr z, .asm_c802c + ld bc, $4 + add hl, bc + dec e + jr nz, .asm_c801f + scf + ret +.asm_c802c + ld c, l + ld b, h + ld hl, $0 + add hl, bc + ld a, [$d419] + ld [hli], a + ld a, [$d41a] + ld [hli], a + ld a, [$d41b] + ld [hli], a + ld a, [$d41c] + ld [hl], a + ret + +; known jump sources: c80c6 (32:40c6), c811c (32:411c), c8139 (32:4139), c814d (32:414d), c8164 (32:4164), c81e6 (32:41e6), c81ef (32:41ef), c822c (32:422c), c827d (32:427d), c8299 (32:4299), c82ea (32:42ea), c8377 (32:4377), c8437 (32:4437), c85ca (32:45ca), c85ff (32:45ff), c8d13 (32:4d13), c8dd0 (32:4dd0), c8e26 (32:4e26), c8e4e (32:4e4e), c8f15 (32:4f15) +EndBattleBGEffect: ; c8043 (32:4043) + ld hl, 0 + add hl, bc + ld [hl], 0 + ret + +; known jump sources: c800d (32:400d) +Functionc804a: ; c804a (32:404a) + ld hl, 0 + add hl, bc + ld e, [hl] + ld d, 0 + ld hl, BattleBGEffects + add hl, de + add hl, de + ld a, [hli] + ld h, [hl] + ld l, a + jp [hl] + +; no known jump sources +BattleBGEffects: ; c805a (32:405a) + dw BattleBGEffect_0 + dw Functionc80eb + dw Functionc80f3 + dw Functionc812d + dw Functionc8141 + dw Functionc8155 + dw Functionc8171 + dw Functionc818b + dw Functionc81a5 + dw Functionc81b3 + dw Functionc81ea + dw Functionc837b + dw Functionc83a8 + dw Functionc8545 + dw Functionc8599 + dw Functionc863f + dw Functionc8662 + dw Functionc8214 + dw Functionc8281 + dw Functionc8689 + dw Functionc8709 + dw Functionc8be8 + dw Functionc8bf2 + dw Functionc8bfd + dw Functionc8c08 + dw Functionc8c14 + dw Functionc8c20 + dw Functionc8c30 + dw Functionc8b00 + dw Functionc8c3c + dw Functionc8c55 + dw Functionc8cf9 + dw Functionc8d02 + dw Functionc8761 + dw Functionc89ee + dw Functionc87a7 + dw Functionc8805 + dw Functionc8837 + dw Functionc892a + dw Functionc82f5 + dw Functionc89b5 + dw Functionc8607 + dw Functionc8a3a + dw Functionc8acc + dw Functionc8964 + dw Functionc88e7 + dw Functionc8ce1 + dw Functionc8919 + dw Functionc85c2 + dw Functionc85ce + dw Functionc8603 + dw Functionc8c61 + dw Functionc8ca2 + dw Functionc8d3a + + +; no known jump sources +BattleBGEffect_0: ; c80c6 (32:40c6) + call EndBattleBGEffect + ret + +; known jump sources: c8b7d (32:4b7d), c8d80 (32:4d80), c8dd8 (32:4dd8) +Functionc80ca: ; c80ca (32:40ca) + ld hl, $1 + add hl, bc + ld l, [hl] + ld h, $0 + add hl, hl + add hl, de + ld a, [hli] + ld h, [hl] + ld l, a + ret + +; known jump sources: c81b3 (32:41b3), c8214 (32:4214), c8281 (32:4281), c82f5 (32:42f5), c83ed (32:43ed), c8545 (32:4545), c8599 (32:4599), c8607 (32:4607), c863f (32:463f), c8662 (32:4662), c8689 (32:4689), c8709 (32:4709), c8761 (32:4761), c87a7 (32:47a7), c8805 (32:4805), c8837 (32:4837), c88e7 (32:48e7), c8919 (32:4919), c892a (32:492a), c8964 (32:4964), c89b5 (32:49b5), c89ee (32:49ee), c8a3a (32:4a3a), c8acc (32:4acc), c8b05 (32:4b05), c8c61 (32:4c61), c8ca2 (32:4ca2) +Functionc80d7: ; c80d7 (32:40d7) + pop de + ld hl, $1 + 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] + +; known jump sources: c81c0 (32:41c0), c8230 (32:4230), c825a (32:425a), c829d (32:429d), c82c7 (32:42c7), c8302 (32:4302), c835c (32:435c), c841d (32:441d), c854e (32:454e), c85a2 (32:45a2), c8610 (32:4610), c8648 (32:4648), c866b (32:466b), c8698 (32:4698), c86cb (32:46cb), c8712 (32:4712), c876a (32:476a), c87b2 (32:47b2), c87db (32:47db), c8810 (32:4810), c8842 (32:4842), c8876 (32:4876), c8890 (32:4890), c88f6 (32:48f6), c8933 (32:4933), c896d (32:496d), c89be (32:49be), c89f7 (32:49f7), c8a49 (32:4a49), c8a84 (32:4a84), c8a96 (32:4a96), c8ad3 (32:4ad3), c8b0e (32:4b0e), c8c68 (32:4c68), c8cab (32:4cab), c8d8b (32:4d8b), c8dec (32:4dec), c8def (32:4def), c8df2 (32:4df2) +Functionc80e5: ; c80e5 (32:40e5) + ld hl, $1 + add hl, bc + inc [hl] + ret + +; no known jump sources +Functionc80eb: ; c80eb (32:40eb) + ld de, .inverted + jp Functionc80fb +; c80f1 (32:40f1) + +.inverted + db %11100100 ; 3210 + db %00011011 ; 0123 +; c80f3 + +; no known jump sources +Functionc80f3: ; c80f3 (32:40f3) + ld de, .white + jp Functionc80fb +; c80f9 (32:40f9) + +.white + db %11100100 ; 3210 + db %00000000 ; 0000 +; c80fb + +; known jump sources: c80ee (32:40ee), c80f6 (32:40f6) +Functionc80fb: ; c80fb (32:40fb) + ld a, $1 + ld [$d419], a + ld hl, $1 + add hl, bc + ld a, [hl] + and a + jr z, .asm_c810a + dec [hl] + ret + +.asm_c810a + ld hl, $2 + add hl, bc + ld a, [hl] + ld hl, $1 + add hl, bc + ld [hl], a + ld hl, $3 + add hl, bc + ld a, [hl] + and a + jr nz, .asm_c8120 + call EndBattleBGEffect + ret + +.asm_c8120 + dec a + ld [hl], a + and 1 + ld l, a + ld h, 0 + add hl, de + ld a, [hl] + ld [$cfc7], a + ret + +; no known jump sources +Functionc812d: ; c812d (32:412d) + ld de, $413d + call Functionc8d57 + jr c, .asm_c8139 + ld [$cfc7], a + ret +.asm_c8139 + call EndBattleBGEffect + ret +; c813d (32:413d) + +INCBIN "baserom.gbc",$c813d,$c8141 - $c813d + +; no known jump sources +Functionc8141: ; c8141 (32:4141) + ld de, $4151 + call Functionc8d57 + jr c, .asm_c814d + ld [$cfc7], a + ret +.asm_c814d + call EndBattleBGEffect + ret +; c8151 (32:4151) + +INCBIN "baserom.gbc",$c8151,$c8155 - $c8151 + +; no known jump sources +Functionc8155: ; c8155 (32:4155) + ld de, $4168 + call Functionc8d57 + jr c, .asm_c8164 + ld [$cfc7], a + ld [$cfc9], a + ret +.asm_c8164 + call EndBattleBGEffect + ret +; c8168 (32:4168) + +INCBIN "baserom.gbc",$c8168,$c8171 - $c8168 + +; no known jump sources +Functionc8171: ; c8171 (32:4171) + call Functionc9059 + jr nz, .asm_c817b + ld de, $4185 + jr .asm_c817e +.asm_c817b + ld de, $4188 +.asm_c817e + call Functionc8d57 + ld [$cfc8], a + ret +; c8185 (32:4185) + +INCBIN "baserom.gbc",$c8185,$c818b - $c8185 + +; no known jump sources +Functionc818b: ; c818b (32:418b) + call Functionc9059 + jr nz, .asm_c8195 + ld de, $419f + jr .asm_c8198 +.asm_c8195 + ld de, $41a2 +.asm_c8198 + call Functionc8d57 + ld [$cfc8], a + ret +; c819f (32:419f) + +INCBIN "baserom.gbc",$c819f,$c81a5 - $c819f + +; no known jump sources +Functionc81a5: ; c81a5 (32:41a5) + ld de, $41af + call Functionc8d57 + ld [$cfc7], a + ret +; c81af (32:41af) + +INCBIN "baserom.gbc",$c81af,$c81b3 - $c81af + +; no known jump sources +Functionc81b3: ; c81b3 (32:41b3) + call Functionc80d7 ; ; ; call does not return + +; no known jump sources +Jumptable_c81b6: ; c81b6 (32:41b6) + dw Functionc81c0 + dw Functionc80e5 + dw Functionc80e5 + dw Functionc80e5 + dw Functionc81e3 + + +; no known jump sources +Functionc81c0: ; c81c0 (32:41c0) + call Functionc80e5 + push bc + call Functionc9038 + jr nz, .asm_c81d1 + ld hl, $c4ac + ld bc, $707 + jr .asm_c81d7 +.asm_c81d1 + ld hl, $c51a + ld bc, $606 +.asm_c81d7 + call ClearBox + pop bc + xor a + ld [hBGMapThird], a ; $ff00+$d5 + ld a, $1 + ld [hBGMapMode], a ; $ff00+$d4 + ret + +; no known jump sources +Functionc81e3: ; c81e3 (32:41e3) + xor a + ld [hBGMapMode], a ; $ff00+$d4 + call EndBattleBGEffect + ret + +; no known jump sources +Functionc81ea: ; c81ea (32:41ea) + call Functionc9042 + jr z, .asm_c81f3 + call EndBattleBGEffect + ret +.asm_c81f3 + call Functionc9038 + jr nz, .asm_c81fd + ld de, $4210 + jr .asm_c8200 +.asm_c81fd + ld de, $420c +.asm_c8200 + ld a, e + ld [$d41a], a + ld a, d + ld [$d41b], a + call Functionc83ed + ret +; c820c (32:420c) + +INCBIN "baserom.gbc",$c820c,$c8214 - $c820c + +; no known jump sources +Functionc8214: ; c8214 (32:4214) + call Functionc80d7 ; ; ; call does not return + +; no known jump sources +Jumptable_c8217: ; c8217 (32:4217) + dw Functionc8223 + dw Functionc825a + dw Functionc80e5 + dw Functionc80e5 + dw Functionc80e5 + dw Functionc827a + + +; no known jump sources +Functionc8223: ; c8223 (32:4223) + call Functionc9042 + jr z, .asm_c8230 + ld hl, $d40e + inc [hl] + call EndBattleBGEffect + ret +.asm_c8230 + call Functionc80e5 + push bc + call Functionc9038 + jr nz, .asm_c8242 + ld a, $b8 + ld [$d419], a + ld a, $84 + jr .asm_c8249 +.asm_c8242 + ld a, $b9 + ld [$d419], a + ld a, $30 +.asm_c8249 + ld [$d41a], a + ld a, $40 + ld [$d41b], a + xor a + ld [$d41c], a + call Functionc82ee + pop bc + ret + +; no known jump sources +Functionc825a: ; c825a (32:425a) + call Functionc80e5 + push bc + call Functionc9038 + jr nz, .asm_c826b + ld hl, $c524 + ld bc, $107 + jr .asm_c8271 +.asm_c826b + ld hl, $c51a + ld bc, $106 +.asm_c8271 + call ClearBox + ld a, $1 + ld [hBGMapMode], a ; $ff00+$d4 + pop bc + ret + +; no known jump sources +Functionc827a: ; c827a (32:427a) + xor a + ld [hBGMapMode], a ; $ff00+$d4 + call EndBattleBGEffect + ret + +; no known jump sources +Functionc8281: ; c8281 (32:4281) + call Functionc80d7 ; ; ; call does not return + +; no known jump sources +Jumptable_c8284: ; c8284 (32:4284) + dw Functionc8290 + dw Functionc82c7 + dw Functionc80e5 + dw Functionc80e5 + dw Functionc80e5 + dw Functionc82e7 + + +; no known jump sources +Functionc8290: ; c8290 (32:4290) + call Functionc9042 + jr z, .asm_c829d + ld hl, $d40e + inc [hl] + call EndBattleBGEffect + ret +.asm_c829d + call Functionc80e5 + push bc + call Functionc9038 + jr nz, .asm_c82af + ld a, $ba + ld [$d419], a + ld a, $84 + jr .asm_c82b6 +.asm_c82af + ld a, $bb + ld [$d419], a + ld a, $30 +.asm_c82b6 + ld [$d41a], a + ld a, $40 + ld [$d41b], a + xor a + ld [$d41c], a + call Functionc82ee + pop bc + ret + +; no known jump sources +Functionc82c7: ; c82c7 (32:42c7) + call Functionc80e5 + push bc + call Functionc9038 + jr nz, .asm_c82d8 + ld hl, $c510 + ld bc, $207 + jr .asm_c82de +.asm_c82d8 + ld hl, $c51a + ld bc, $206 +.asm_c82de + call ClearBox + ld a, $1 + ld [hBGMapMode], a ; $ff00+$d4 + pop bc + ret + +; no known jump sources +Functionc82e7: ; c82e7 (32:42e7) + xor a + ld [hBGMapMode], a ; $ff00+$d4 + call EndBattleBGEffect + ret + +; known jump sources: c8255 (32:4255), c82c2 (32:42c2) +Functionc82ee: ; c82ee (32:42ee) + callab Functioncc9a1 + ret + +; no known jump sources +Functionc82f5: ; c82f5 (32:42f5) + call Functionc80d7 ; ; ; call does not return + +; no known jump sources +Jumptable_c82f8: ; c82f8 (32:42f8) + dw Functionc8302 + dw Functionc831d + dw Functionc80e5 + dw Functionc80e5 + dw Functionc8365 + + +; no known jump sources +Functionc8302: ; c8302 (32:4302) + call Functionc80e5 + call Functionc9038 + ld [hl], a + ld hl, $2 + add hl, bc + ld a, [hl] + and a + jr z, .asm_c8315 + ld a, $9 + jr .asm_c8317 +.asm_c8315 + ld a, $8 +.asm_c8317 + ld hl, $3 + add hl, bc + ld [hl], a + ret + +; no known jump sources +Functionc831d: ; c831d (32:431d) + ld hl, $2 + add hl, bc + ld a, [hl] + and a + jr z, .asm_c833e + ld hl, $c518 + ld de, $806 +.asm_c832b + push de + push hl +.asm_c832d + inc hl + ld a, [hld] + ld [hli], a + dec d + jr nz, .asm_c832d + pop hl + ld de, $14 + add hl, de + pop de + dec e + jr nz, .asm_c832b + jr .asm_c8355 +.asm_c833e + ld hl, $c4b3 + ld de, $807 +.asm_c8344 + push de + push hl +.asm_c8346 + dec hl + ld a, [hli] + ld [hld], a + dec d + jr nz, .asm_c8346 + pop hl + ld de, $14 + add hl, de + pop de + dec e + jr nz, .asm_c8344 +.asm_c8355 + xor a + ld [hBGMapThird], a ; $ff00+$d5 + ld a, $1 + ld [hBGMapMode], a ; $ff00+$d4 + call Functionc80e5 + ld hl, $3 + add hl, bc + dec [hl] + ret + +; no known jump sources +Functionc8365: ; c8365 (32:4365) + xor a + ld [hBGMapMode], a ; $ff00+$d4 + ld hl, $3 + add hl, bc + ld a, [hl] + and a + jr z, .asm_c8377 + ld hl, $1 + add hl, bc + ld [hl], $1 + ret +.asm_c8377 + call EndBattleBGEffect + ret + +; no known jump sources +Functionc837b: ; c837b (32:437b) + call Functionc9038 + jr nz, .asm_c8385 + ld de, $439e + jr .asm_c8388 +.asm_c8385 + ld de, $4394 +.asm_c8388 + ld a, e + ld [$d41a], a + ld a, d + ld [$d41b], a + call Functionc83ed + ret +; c8394 (32:4394) + +INCBIN "baserom.gbc",$c8394,$c83a8 - $c8394 + +; no known jump sources +Functionc83a8: ; c83a8 (32:43a8) + call Functionc9038 + jr nz, .asm_c83b2 + ld de, $43d7 + jr .asm_c83b5 +.asm_c83b2 + ld de, $43c1 +.asm_c83b5 + ld a, e + ld [$d41a], a + ld a, d + ld [$d41b], a + call Functionc83ed + ret +; c83c1 (32:43c1) + +INCBIN "baserom.gbc",$c83c1,$c83ed - $c83c1 + +; known jump sources: c8208 (32:4208), c8390 (32:4390), c83bd (32:43bd) +Functionc83ed: ; c83ed (32:43ed) + call Functionc80d7 ; ; ; call does not return + +; no known jump sources +Jumptable_c83f0: ; c83f0 (32:43f0) + dw Functionc83fa + dw Functionc80e5 + dw Functionc80e5 + dw Functionc842a + dw Functionc8434 + + +; known jump sources: c8428 (32:4428) +Functionc83fa: ; c83fa (32:43fa) + ld hl, $3 + add hl, bc + ld e, [hl] + ld d, $0 + inc [hl] + ld a, [$d41a] + ld l, a + ld a, [$d41b] + ld h, a + add hl, de + add hl, de + add hl, de + ld a, [hl] + cp $ff + jr z, Functionc8434 + cp $fe + jr z, .asm_c8425 + cp $fd + jr z, .asm_c841d + call Functionc8458 +.asm_c841d + call Functionc80e5 + ld a, $1 + ld [hBGMapMode], a ; $ff00+$d4 + ret +.asm_c8425 + call Functionc843b + jr Functionc83fa + +; no known jump sources +Functionc842a: ; c842a (32:442a) + xor a + ld [hBGMapMode], a ; $ff00+$d4 + ld hl, $1 + add hl, bc + ld [hl], $0 + ret + +; known jump sources: c8410 (32:4410) +Functionc8434: ; c8434 (32:4434) + xor a + ld [hBGMapMode], a ; $ff00+$d4 + call EndBattleBGEffect + ret + +; known jump sources: c8425 (32:4425) +Functionc843b: ; c843b (32:443b) + push bc + inc hl + ld a, [hli] + ld b, a + and $f + ld c, a + ld a, b + swap a + and $f + ld b, a + ld e, [hl] + ld d, $0 + ld hl, $449c + add hl, de + add hl, de + ld a, [hli] + ld h, [hl] + ld l, a + call ClearBox + pop bc + ret + +; known jump sources: c841a (32:441a) +Functionc8458: ; c8458 (32:4458) + push bc + push hl + ld e, [hl] + ld d, $0 + ld hl, $44a8 + add hl, de + add hl, de + add hl, de + ld a, [hli] + ld b, a + and $f + ld c, a + ld a, b + swap a + and $f + ld b, a + ld e, [hl] + inc hl + ld d, [hl] + pop hl + inc hl + ld a, [hli] + ld [$d419], a + push de + ld e, [hl] + ld d, $0 + ld hl, $449c + add hl, de + add hl, de + ld a, [hli] + ld h, [hl] + ld l, a + pop de +.asm_c8484 + push bc + push hl + ld a, [$d419] + ld b, a +.asm_c848a + ld a, [de] + add b + ld [hli], a + inc de + dec c + jr nz, .asm_c848a + pop hl + ld bc, $14 + add hl, bc + pop bc + dec b + jr nz, .asm_c8484 + pop bc + ret +; c849c (32:449c) + +INCBIN "baserom.gbc",$c849c,$c8545 - $c849c + +; no known jump sources +Functionc8545: ; c8545 (32:4545) + call Functionc80d7 ; ; ; call does not return + +; no known jump sources +Jumptable_c8548: ; c8548 (32:4548) + dw Functionc854e + dw Functionc8557 + dw Functionc8561 + + +; no known jump sources +Functionc854e: ; c854e (32:454e) + call Functionc80e5 + ld de, $202 + call Functionc8f69 + +; no known jump sources +Functionc8557: ; c8557 (32:4557) + ld a, [hLCDStatCustom] ; $ff00+$c6 + and a + ret z + push bc + call Functionc8565 + pop bc + ret + +; no known jump sources +Functionc8561: ; c8561 (32:4561) + call Functionc8f0a + ret + +; known jump sources: c855c (32:455c) +Functionc8565: ; c8565 (32:4565) + ld hl, $d422 + ld de, $d423 + ld c, $3f + ld a, [hl] + push af +.asm_c856f + ld a, [de] + inc de + ld [hli], a + dec c + jr nz, .asm_c856f + pop af + ld [hl], a + ld de, $d200 + ld hl, $d422 + ld bc, $0 +.asm_c8580 + ld a, [$FF00+$c7] + cp e + jr nc, .asm_c858b + push hl + add hl, bc + ld a, [hl] + pop hl + jr .asm_c858c +.asm_c858b + xor a +.asm_c858c + ld [de], a + ld a, c + inc a + and $3f + ld c, a + inc de + ld a, e + cp $5f + jr c, .asm_c8580 + ret + +; no known jump sources +Functionc8599: ; c8599 (32:4599) + call Functionc80d7 ; ; ; call does not return + +; no known jump sources +Jumptable_c859c: ; c859c (32:459c) + dw Functionc85a2 + dw Functionc85ba + dw Functionc85be + + +; no known jump sources +Functionc85a2: ; c85a2 (32:45a2) + call Functionc80e5 + call Functionc8eca + ld a, $42 + ld [hLCDStatCustom], a ; $ff00+$c6 + xor a + ld [$FF00+$c7], a + ld a, $5e + ld [$FF00+$c8], a + ld de, $202 + call Functionc8f2e + ret + +; no known jump sources +Functionc85ba: ; c85ba (32:45ba) + call Functionc8fef + ret + +; no known jump sources +Functionc85be: ; c85be (32:45be) + call Functionc8f0a + ret + +; no known jump sources +Functionc85c2: ; c85c2 (32:45c2) + call Functionc8eca + ld a, $42 + call Functionc8ede + call EndBattleBGEffect + ret + +; no known jump sources +Functionc85ce: ; c85ce (32:45ce) + ld hl, $3 + add hl, bc + ld a, [hl] + ld e, a + add $4 + ld [hl], a + ld hl, $2 + add hl, bc + ld a, [hl] + and $f0 + swap a + xor $ff + add $4 + ld d, a + ld hl, $1 + add hl, bc + ld a, [hl] + ld [$d419], a + ld hl, $2 + add hl, bc + ld a, [hl] + cp $20 + jr nc, .asm_c85fc + inc [hl] + inc [hl] + call Functionc8f9a + ret +.asm_c85fc + call Functionc8eca + call EndBattleBGEffect + ret + +; no known jump sources +Functionc8603: ; c8603 (32:4603) + call Functionc8f0a + ret + +; no known jump sources +Functionc8607: ; c8607 (32:4607) + call Functionc80d7 ; ; ; call does not return + +; no known jump sources +Jumptable_c860a: ; c860a (32:460a) + dw Functionc8610 + dw Functionc862e + dw Functionc863b + + +; no known jump sources +Functionc8610: ; c8610 (32:4610) + call Functionc80e5 + call Functionc8eca + ld a, $43 + ld [hLCDStatCustom], a ; $ff00+$c6 + xor a + ld [$FF00+$c7], a + ld a, $5f + ld [$FF00+$c8], a + ld de, $605 + call Functionc8f2e + ld hl, $3 + add hl, bc + ld [hl], $0 + ret + +; no known jump sources +Functionc862e: ; c862e (32:462e) + ld hl, $3 + add hl, bc + ld a, [hl] + inc [hl] + and $3 + ret nz + call Functionc8fef + ret + +; no known jump sources +Functionc863b: ; c863b (32:463b) + call Functionc8f0a + ret + +; no known jump sources +Functionc863f: ; c863f (32:463f) + call Functionc80d7 ; ; ; call does not return + +; no known jump sources +Jumptable_c8642: ; c8642 (32:4642) + dw Functionc8648 + dw Functionc865a + dw Functionc865e + + +; no known jump sources +Functionc8648: ; c8648 (32:4648) + call Functionc80e5 + call Functionc8eca + ld a, $43 + call Functionc8ede + ld de, $605 + call Functionc8f2e + ret + +; no known jump sources +Functionc865a: ; c865a (32:465a) + call Functionc8fef + ret + +; no known jump sources +Functionc865e: ; c865e (32:465e) + call Functionc8f0a + ret + +; no known jump sources +Functionc8662: ; c8662 (32:4662) + call Functionc80d7 ; ; ; call does not return + +; no known jump sources +Jumptable_c8665: ; c8665 (32:4665) + dw Functionc866b + dw Functionc8681 + dw Functionc8685 + + +; no known jump sources +Functionc866b: ; c866b (32:466b) + call Functionc80e5 + call Functionc8eca + ld a, $42 + call Functionc8ede + ld hl, $3 + add hl, bc + ld e, [hl] + ld d, $2 + call Functionc8f2e + ret + +; no known jump sources +Functionc8681: ; c8681 (32:4681) + call Functionc8fef + ret + +; no known jump sources +Functionc8685: ; c8685 (32:4685) + call Functionc8f0a + ret + +; no known jump sources +Functionc8689: ; c8689 (32:4689) + call Functionc80d7 ; ; ; call does not return + +; no known jump sources +Jumptable_c868c: ; c868c (32:468c) + dw Functionc8698 + dw Functionc86af + dw Functionc86cf + dw Functionc86bd + dw Functionc86e9 + dw Functionc8705 + + +; no known jump sources +Functionc8698: ; c8698 (32:4698) + call Functionc80e5 + call Functionc8eca + ld a, $43 + call Functionc8ede + ld a, [$FF00+$c8] + inc a + ld [$FF00+$c8], a + ld hl, $2 + add hl, bc + ld [hl], $0 + ret + +; no known jump sources +Functionc86af: ; c86af (32:46af) + ld hl, $3 + add hl, bc + ld a, [hl] + cp $10 + jr nc, asm_c86cb + inc [hl] + call Functionc86ea + ret + +; no known jump sources +Functionc86bd: ; c86bd (32:46bd) + ld hl, $3 + add hl, bc + ld a, [hl] + cp $ff + jr z, asm_c86cb + dec [hl] + call Functionc86ea + ret +asm_c86cb: ; c86cb (32:46cb) + call Functionc80e5 + ret + +; no known jump sources +Functionc86cf: ; c86cf (32:46cf) + ld hl, $2 + add hl, bc + ld a, [hl] + ld d, $2 + call Functionc905d + ld hl, $3 + add hl, bc + add [hl] + call Functionc86ea + ld hl, $2 + add hl, bc + ld a, [hl] + add $4 + ld [hl], a + +; no known jump sources +Functionc86e9: ; c86e9 (32:46e9) + ret + +; known jump sources: c86b9 (32:46b9), c86c7 (32:46c7), c86de (32:46de) +Functionc86ea: ; c86ea (32:46ea) + ld e, a + xor $ff + inc a + ld d, a + ld h, $d2 + ld a, [$FF00+$c7] + ld l, a + ld a, [$FF00+$c8] + sub l + srl a + push af +.asm_c86fa + ld [hl], e + inc hl + ld [hl], d + inc hl + dec a + jr nz, .asm_c86fa + pop af + ret nc + ld [hl], e + ret + +; no known jump sources +Functionc8705: ; c8705 (32:4705) + call Functionc8f0a + ret + +; no known jump sources +Functionc8709: ; c8709 (32:4709) + call Functionc80d7 ; ; ; call does not return + +; no known jump sources +Jumptable_c870c: ; c870c (32:470c) + dw Functionc8712 + dw Functionc8732 + dw Functionc875d + + +; no known jump sources +Functionc8712: ; c8712 (32:4712) + call Functionc80e5 + call Functionc8eca + ld a, $42 + call Functionc8ede + ld hl, $3 + add hl, bc + ld e, [hl] + ld d, $2 + call Functionc8f2e + ld h, $d2 + ld a, [$FF00+$c8] + ld l, a + ld [hl], $0 + dec l + ld [hl], $0 + ret + +; no known jump sources +Functionc8732: ; c8732 (32:4732) + ld a, [$FF00+$c8] + ld l, a + ld h, $d2 + ld e, l + ld d, h + dec de +.asm_c873a + ld a, [de] + dec de + ld [hld], a + ld a, [$FF00+$c7] + cp l + jr nz, .asm_c873a + ld [hl], $90 + ld a, [$FF00+$c8] + ld l, a + ld a, [hl] + cp $1 + jr c, .asm_c8752 + cp $90 + jr z, .asm_c8752 + ld [hl], $0 +.asm_c8752 + dec l + ld a, [hl] + cp $2 + ret c + cp $90 + ret z + ld [hl], $0 + ret + +; no known jump sources +Functionc875d: ; c875d (32:475d) + call Functionc8f0a + ret + +; no known jump sources +Functionc8761: ; c8761 (32:4761) + call Functionc80d7 ; ; ; call does not return + +; no known jump sources +Jumptable_c8764: ; c8764 (32:4764) + dw Functionc876a + dw Functionc8781 + dw Functionc87a3 + + +; no known jump sources +Functionc876a: ; c876a (32:476a) + call Functionc80e5 + call Functionc8eca + ld a, $42 + call Functionc8ede + ld a, [$FF00+$c8] + inc a + ld [$FF00+$c8], a + ld hl, $2 + add hl, bc + ld [hl], $1 + ret + +; no known jump sources +Functionc8781: ; c8781 (32:4781) + ld hl, $3 + add hl, bc + ld a, [hl] + and $3f + ld d, a + ld hl, $2 + add hl, bc + ld a, [hl] + cp d + ret nc + call Functionc901b + ld hl, $3 + add hl, bc + ld a, [hl] + rlca + rlca + and $3 + ld hl, $2 + add hl, bc + add [hl] + ld [hl], a + ret + +; no known jump sources +Functionc87a3: ; c87a3 (32:47a3) + call Functionc8f0a + ret + +; no known jump sources +Functionc87a7: ; c87a7 (32:47a7) + call Functionc80d7 ; ; ; call does not return + +; no known jump sources +Jumptable_c87aa: ; c87aa (32:47aa) + dw Functionc87b2 + dw Functionc87cf + dw Functionc87de + dw Functionc8801 + + +; no known jump sources +Functionc87b2: ; c87b2 (32:47b2) + call Functionc80e5 + call Functionc8eca + ld a, $42 + call Functionc8ede + ld a, [$FF00+$c8] + inc a + ld [$FF00+$c8], a + ld hl, $2 + add hl, bc + ld [hl], $2 + ld hl, $3 + add hl, bc + ld [hl], $0 + ret + +; no known jump sources +Functionc87cf: ; c87cf (32:47cf) + ld hl, $3 + add hl, bc + ld a, [hl] + and a + jr z, .asm_c87d9 + dec [hl] + ret +.asm_c87d9 + ld [hl], $10 + call Functionc80e5 + +; no known jump sources +Functionc87de: ; c87de (32:47de) + ld a, [$FF00+$c7] + ld l, a + ld a, [$FF00+$c8] + sub l + dec a + ld hl, $2 + add hl, bc + cp [hl] + ret c + ld a, [hl] + push af + and $7 + jr nz, .asm_c87f6 + ld hl, $1 + add hl, bc + dec [hl] +.asm_c87f6 + pop af + call Functionc901b + ld hl, $2 + add hl, bc + inc [hl] + inc [hl] + ret + +; no known jump sources +Functionc8801: ; c8801 (32:4801) + call Functionc8f0a + ret + +; no known jump sources +Functionc8805: ; c8805 (32:4805) + call Functionc80d7 ; ; ; call does not return + +; no known jump sources +Jumptable_c8808: ; c8808 (32:4808) + dw Functionc8810 + dw Functionc8869 + dw Functionc8888 + dw Functionc8833 + + +; no known jump sources +Functionc8810: ; c8810 (32:4810) + call Functionc80e5 + call Functionc8eca + ld a, $43 + call Functionc8ede + ld a, [$FF00+$c8] + inc a + ld [$FF00+$c8], a + ld hl, $3 + add hl, bc + ld [hl], $0 + call Functionc9038 + jr nz, .asm_c882f + ld a, $2 + jr .asm_c8831 +.asm_c882f + ld a, $fe +.asm_c8831 + ld [hl], a + ret + +; no known jump sources +Functionc8833: ; c8833 (32:4833) + call Functionc8f0a + ret + +; no known jump sources +Functionc8837: ; c8837 (32:4837) + call Functionc80d7 ; ; ; call does not return + +; no known jump sources +Jumptable_c883a: ; c883a (32:483a) + dw Functionc8842 + dw Functionc8869 + dw Functionc8888 + dw Functionc8865 + + +; no known jump sources +Functionc8842: ; c8842 (32:4842) + call Functionc80e5 + call Functionc8eca + ld a, $43 + call Functionc8ef4 + ld a, [$FF00+$c8] + inc a + ld [$FF00+$c8], a + ld hl, $3 + add hl, bc + ld [hl], $0 + call Functionc9038 + jr nz, .asm_c8861 + ld a, $2 + jr .asm_c8863 +.asm_c8861 + ld a, $fe +.asm_c8863 + ld [hl], a + ret + +; no known jump sources +Functionc8865: ; c8865 (32:4865) + call Functionc8f0a + ret + +; no known jump sources +Functionc8869: ; c8869 (32:4869) + ld hl, $3 + add hl, bc + ld a, [hl] + cp $f8 + jr z, .asm_c8876 + cp $8 + jr nz, .asm_c8879 +.asm_c8876 + call Functionc80e5 +.asm_c8879 + call Functionc88a5 + ld hl, $2 + add hl, bc + ld a, [hl] + ld hl, $3 + add hl, bc + add [hl] + ld [hl], a + ret + +; no known jump sources +Functionc8888: ; c8888 (32:4888) + ld hl, $3 + add hl, bc + ld a, [hl] + and a + jr nz, .asm_c8893 + call Functionc80e5 +.asm_c8893 + call Functionc88a5 + ld hl, $2 + add hl, bc + ld a, [hl] + xor $ff + inc a + ld hl, $3 + add hl, bc + add [hl] + ld [hl], a + ret + +; known jump sources: c8879 (32:4879), c8893 (32:4893) +Functionc88a5: ; c88a5 (32:48a5) + push af + ld a, [FXAnimIDHi] ; $cfc3 + or a + jr nz, .asm_c88b3 + ld a, [FXAnimIDLo] ; $cfc2 + cp $cd + jr z, .asm_c88b7 +.asm_c88b3 + pop af + jp Functionc900b +.asm_c88b7 + ld a, [$FF00+$c7] + ld d, a + ld a, [$FF00+$c8] + sub d + ld d, a + ld h, $d2 + ld a, [hSCY] ; $ff00+$d0 + or a + jr nz, .asm_c88d0 + ld a, [$FF00+$c7] + or a + jr z, .asm_c88d6 + dec a + ld l, a + ld [hl], $0 + jr .asm_c88d6 +.asm_c88d0 + ld a, [$FF00+$c8] + dec a + ld l, a + ld [hl], $0 +.asm_c88d6 + ld a, [hSCY] ; $ff00+$d0 + ld l, a + ld a, [$FF00+$c7] + sub l + jr nc, .asm_c88e0 + xor a + dec d +.asm_c88e0 + ld l, a + pop af +.asm_c88e2 + ld [hli], a + dec d + jr nz, .asm_c88e2 + ret + +; no known jump sources +Functionc88e7: ; c88e7 (32:48e7) + call Functionc80d7 ; ; ; call does not return + +; no known jump sources +Jumptable_c88ea: ; c88ea (32:48ea) + dw Functionc88f6 + dw Functionc8869 + dw Functionc8888 + dw Functionc88f2 + + +; no known jump sources +Functionc88f2: ; c88f2 (32:48f2) + call Functionc8f0a + ret + +; no known jump sources +Functionc88f6: ; c88f6 (32:48f6) + call Functionc80e5 + call Functionc8eca + ld a, $43 + call Functionc8ede + ld a, [$FF00+$c8] + inc a + ld [$FF00+$c8], a + ld hl, $3 + add hl, bc + ld [hl], $0 + call Functionc9038 + jr nz, .asm_c8915 + ld a, $fe + jr .asm_c8917 +.asm_c8915 + ld a, $2 +.asm_c8917 + ld [hl], a + ret + +; no known jump sources +Functionc8919: ; c8919 (32:4919) + call Functionc80d7 ; ; ; call does not return + +; no known jump sources +Jumptable_c891c: ; c891c (32:491c) + dw Functionc88f6 + dw Functionc8869 + dw Functionc8929 + dw Functionc8888 + dw Functionc8926 + + +; no known jump sources +Functionc8926: ; c8926 (32:4926) + call Functionc8f0a + +; no known jump sources +Functionc8929: ; c8929 (32:4929) + ret + +; no known jump sources +Functionc892a: ; c892a (32:492a) + call Functionc80d7 ; ; ; call does not return + +; no known jump sources +Jumptable_c892d: ; c892d (32:492d) + dw Functionc8933 + dw Functionc894a + dw Functionc8960 + + +; no known jump sources +Functionc8933: ; c8933 (32:4933) + call Functionc80e5 + call Functionc8eca + ld a, $43 + call Functionc8ede + ld a, [$FF00+$c8] + inc a + ld [$FF00+$c8], a + ld hl, $3 + add hl, bc + ld [hl], $0 + ret + +; no known jump sources +Functionc894a: ; c894a (32:494a) + ld hl, $3 + add hl, bc + ld a, [hl] + ld d, $8 + call Functionc905d + call Functionc900b + ld hl, $3 + add hl, bc + ld a, [hl] + add $4 + ld [hl], a + ret + +; no known jump sources +Functionc8960: ; c8960 (32:4960) + call Functionc8f0a + ret + +; no known jump sources +Functionc8964: ; c8964 (32:4964) + call Functionc80d7 ; ; ; call does not return + +; no known jump sources +Jumptable_c8967: ; c8967 (32:4967) + dw Functionc896d + dw Functionc8985 + dw Functionc89b1 + + +; no known jump sources +Functionc896d: ; c896d (32:496d) + call Functionc80e5 + call Functionc8eca + ld a, $43 + call Functionc8ede + ld a, [$FF00+$c8] + inc a + ld [$FF00+$c8], a + xor a + ld hl, $2 + add hl, bc + ld [hli], a + ld [hl], a + ret + +; no known jump sources +Functionc8985: ; c8985 (32:4985) + ld hl, $3 + add hl, bc + ld a, [hl] + ld d, $6 + call Functionc905d + push af + ld hl, $2 + add hl, bc + ld a, [hl] + ld d, $2 + call Functionc905d + ld e, a + pop af + add e + call Functionc900b + ld hl, $2 + add hl, bc + ld a, [hl] + add $8 + ld [hl], a + ld hl, $3 + add hl, bc + ld a, [hl] + add $2 + ld [hl], a + ret + +; no known jump sources +Functionc89b1: ; c89b1 (32:49b1) + call Functionc8f0a + ret + +; no known jump sources +Functionc89b5: ; c89b5 (32:49b5) + call Functionc80d7 ; ; ; call does not return + +; no known jump sources +Jumptable_c89b8: ; c89b8 (32:49b8) + dw Functionc89be + dw Functionc89ca + dw Functionc89da + + +; no known jump sources +Functionc89be: ; c89be (32:49be) + call Functionc80e5 + call Functionc8eca + ld a, $43 + call Functionc8ede + ret + +; no known jump sources +Functionc89ca: ; c89ca (32:49ca) + ld hl, $3 + add hl, bc + ld a, [hl] + cp $20 + ret nc + inc [hl] + ld d, a + ld e, $4 + call Functionc8f2e + ret + +; no known jump sources +Functionc89da: ; c89da (32:49da) + ld hl, $3 + add hl, bc + ld a, [hl] + and a + jr z, .asm_c89ea + dec [hl] + ld d, a + ld e, $4 + call Functionc8f2e + ret +.asm_c89ea + call Functionc8f0a + ret + +; no known jump sources +Functionc89ee: ; c89ee (32:49ee) + call Functionc80d7 ; ; ; call does not return + +; no known jump sources +Jumptable_c89f1: ; c89f1 (32:49f1) + dw Functionc89f7 + dw Functionc8a14 + dw Functionc8a36 + + +; no known jump sources +Functionc89f7: ; c89f7 (32:49f7) + call Functionc80e5 + call Functionc8eca + ld a, $42 + call Functionc8ef4 + ld a, [$FF00+$c8] + inc a + ld [$FF00+$c8], a + ld hl, $2 + add hl, bc + ld [hl], $1 + ld hl, $3 + add hl, bc + ld [hl], $20 + ret + +; no known jump sources +Functionc8a14: ; c8a14 (32:4a14) + ld hl, $2 + add hl, bc + ld a, [hl] + cp $38 + ret nc + push af + ld hl, $3 + add hl, bc + ld a, [hl] + ld d, $10 + call Functionc9066 + add $10 + ld d, a + pop af + add d + call Functionc901b + ld hl, $3 + add hl, bc + inc [hl] + inc [hl] + ret + +; no known jump sources +Functionc8a36: ; c8a36 (32:4a36) + call Functionc8f0a + ret + +; no known jump sources +Functionc8a3a: ; c8a3a (32:4a3a) + call Functionc80d7 ; ; ; call does not return + +; no known jump sources +Jumptable_c8a3d: ; c8a3d (32:4a3d) + dw Functionc8a49 + dw Functionc8a6f + dw Functionc8a70 + dw Functionc8a88 + dw Functionc8a6f + dw Functionc8aac + + +; no known jump sources +Functionc8a49: ; c8a49 (32:4a49) + call Functionc80e5 + ld a, $e4 + call Functionc8ecb + ld a, $47 + call Functionc8ede + ld a, [$FF00+$c8] + inc a + ld [$FF00+$c8], a + ld a, [$FF00+$c7] + ld l, a + ld h, $d2 +.asm_c8a60 + ld a, [$FF00+$c8] + cp l + jr z, .asm_c8a69 + xor a + ld [hli], a + jr .asm_c8a60 +.asm_c8a69 + ld hl, $3 + add hl, bc + ld [hl], $0 + +; no known jump sources +Functionc8a6f: ; c8a6f (32:4a6f) + ret + +; no known jump sources +Functionc8a70: ; c8a70 (32:4a70) + call Functionc8ab0 + jr nc, .asm_c8a79 + call Functionc8a9a + ret +.asm_c8a79 + ld hl, $3 + add hl, bc + ld [hl], $0 + ld a, [$FF00+$c7] + inc a + ld [$FF00+$c7], a + call Functionc80e5 + ret + +; no known jump sources +Functionc8a88: ; c8a88 (32:4a88) + call Functionc8ab0 + jr nc, .asm_c8a96 + call Functionc8a9a + ld a, [$FF00+$c8] + dec a + ld l, a + ld [hl], e + ret +.asm_c8a96 + call Functionc80e5 + ret + +; known jump sources: c8a75 (32:4a75), c8a8d (32:4a8d) +Functionc8a9a: ; c8a9a (32:4a9a) + ld e, a + ld a, [$FF00+$c7] + ld l, a + ld a, [$FF00+$c8] + sub l + srl a + ld h, $d2 +.asm_c8aa5 + ld [hl], e + inc hl + inc hl + dec a + jr nz, .asm_c8aa5 + ret + +; no known jump sources +Functionc8aac: ; c8aac (32:4aac) + call Functionc8f19 + ret + +; known jump sources: c8a70 (32:4a70), c8a88 (32:4a88) +Functionc8ab0: ; c8ab0 (32:4ab0) + ld hl, $3 + add hl, bc + ld a, [hl] + inc [hl] + srl a + srl a + srl a + ld e, a + ld d, $0 + ld hl, $4ac7 + add hl, de + ld a, [hl] + cp $ff + ret +; c8ac7 (32:4ac7) + +INCBIN "baserom.gbc",$c8ac7,$c8acc - $c8ac7 + +; no known jump sources +Functionc8acc: ; c8acc (32:4acc) + call Functionc80d7 ; ; ; call does not return + +; no known jump sources +Jumptable_c8acf: ; c8acf (32:4acf) + dw Functionc8ad3 + dw Functionc8ae5 + + +; no known jump sources +Functionc8ad3: ; c8ad3 (32:4ad3) + call Functionc80e5 + call Functionc8eca + ld a, $43 + call Functionc8ede + ld hl, $2 + add hl, bc + ld [hl], $40 + ret + +; no known jump sources +Functionc8ae5: ; c8ae5 (32:4ae5) + ld hl, $2 + add hl, bc + ld a, [hl] + and a + jr z, .asm_c8afc + dec [hl] + srl a + srl a + srl a + and $f + ld d, a + ld e, a + call Functionc8f2e + ret +.asm_c8afc + call Functionc8f0a + ret + +; no known jump sources +Functionc8b00: ; c8b00 (32:4b00) + ld a, [hCGB] ; $ff00+$e6 + and a + jr nz, asm_c8b7a + call Functionc80d7 ; ; ; call does not return + +; no known jump sources +Jumptable_c8b08: ; c8b08 (32:4b08) + dw Functionc8b0e + dw Functionc8b22 + dw Functionc8b60 + + +; no known jump sources +Functionc8b0e: ; c8b0e (32:4b0e) + call Functionc80e5 + ld a, $e4 + call Functionc8ecb + ld a, $47 + ld [hLCDStatCustom], a ; $ff00+$c6 + xor a + ld [$FF00+$c7], a + ld a, $60 + ld [$FF00+$c8], a + ret + +; no known jump sources +Functionc8b22: ; c8b22 (32:4b22) + ld hl, $3 + add hl, bc + ld a, [hl] + inc [hl] + ld e, a + and $7 + ret nz + ld a, e + and $18 + sla a + swap a + sla a + ld e, a + ld d, $0 + push bc + call Functionc9038 + jr nz, .asm_c8b4d + ld hl, $4bd8 + add hl, de + ld a, [hli] + ld [$cfc9], a + ld d, a + ld e, [hl] + ld bc, $2f30 + jr .asm_c8b5b +.asm_c8b4d + ld hl, $4be0 + add hl, de + ld d, [hl] + inc hl + ld a, [hl] + ld [$cfc9], a + ld e, a + ld bc, $3728 +.asm_c8b5b + call Functionc8b6c + pop bc + ret + +; no known jump sources +Functionc8b60: ; c8b60 (32:4b60) + call Functionc8f19 + ld a, $e4 + ld [$cfc7], a + ld [$cfc9], a + ret + +; known jump sources: c8b5b (32:4b5b) +Functionc8b6c: ; c8b6c (32:4b6c) + ld hl, $d200 +.asm_c8b6f + ld [hl], d + inc hl + dec b + jr nz, .asm_c8b6f +.asm_c8b74 + ld [hl], e + inc hl + dec c + jr nz, .asm_c8b74 + ret +asm_c8b7a: ; c8b7a (32:4b7a) + ld de, $4b81 + call Functionc80ca + jp [hl] +; c8b81 (32:4b81) + +INCBIN "baserom.gbc",$c8b81,$c8be8 - $c8b81 + +; no known jump sources +Functionc8be8: ; c8be8 (32:4be8) + ld de, $4bef + call Functionc8d77 + ret +; c8bef (32:4bef) + +INCBIN "baserom.gbc",$c8bef,$c8bf2 - $c8bef + +; no known jump sources +Functionc8bf2: ; c8bf2 (32:4bf2) + ld de, $4bf9 + call Functionc8d77 + ret +; c8bf9 (32:4bf9) + +INCBIN "baserom.gbc",$c8bf9,$c8bfd - $c8bf9 + +; no known jump sources +Functionc8bfd: ; c8bfd (32:4bfd) + ld de, $4c04 + call Functionc8d77 + ret +; c8c04 (32:4c04) + +INCBIN "baserom.gbc",$c8c04,$c8c08 - $c8c04 + +; no known jump sources +Functionc8c08: ; c8c08 (32:4c08) + ld de, $4c0f + call Functionc8d77 + ret +; c8c0f (32:4c0f) + +INCBIN "baserom.gbc",$c8c0f,$c8c14 - $c8c0f + +; no known jump sources +Functionc8c14: ; c8c14 (32:4c14) + ld de, $4c1b + call Functionc8d77 + ret +; c8c1b (32:4c1b) + +INCBIN "baserom.gbc",$c8c1b,$c8c20 - $c8c1b + +; no known jump sources +Functionc8c20: ; c8c20 (32:4c20) + ld de, $4c27 + call Functionc8d77 + ret +; c8c27 (32:4c27) + +INCBIN "baserom.gbc",$c8c27,$c8c30 - $c8c27 + +; no known jump sources +Functionc8c30: ; c8c30 (32:4c30) + ld de, $4c37 + call Functionc8d77 + ret +; c8c37 (32:4c37) + +INCBIN "baserom.gbc",$c8c37,$c8c3c - $c8c37 + +; no known jump sources +Functionc8c3c: ; c8c3c (32:4c3c) + ld de, $4c43 + call Functionc8d77 + ret +; c8c43 (32:4c43) + +INCBIN "baserom.gbc",$c8c43,$c8c55 - $c8c43 + +; no known jump sources +Functionc8c55: ; c8c55 (32:4c55) + ld de, $4c5c + call Functionc8d77 + ret +; c8c5c (32:4c5c) + +INCBIN "baserom.gbc",$c8c5c,$c8c61 - $c8c5c + +; no known jump sources +Functionc8c61: ; c8c61 (32:4c61) + call Functionc80d7 ; ; ; call does not return + +; no known jump sources +Jumptable_c8c64: ; c8c64 (32:4c64) + dw Functionc8c68 + dw Functionc8c85 + + +; no known jump sources +Functionc8c68: ; c8c68 (32:4c68) + call Functionc80e5 + call Functionc8eca + ld a, $43 + call Functionc8ede + ld a, [$FF00+$c8] + inc a + ld [$FF00+$c8], a + ld hl, $2 + add hl, bc + ld [hl], $1 + ld hl, $3 + add hl, bc + ld [hl], $20 + ret + +; no known jump sources +Functionc8c85: ; c8c85 (32:4c85) + ld hl, $3 + add hl, bc + ld a, [hl] + and a + jr z, .asm_c8c9e + dec [hl] + and $1 + ret nz + ld hl, $2 + add hl, bc + ld a, [hl] + xor $ff + inc a + ld [hl], a + call Functionc900b + ret +.asm_c8c9e + call Functionc8f0a + ret + +; no known jump sources +Functionc8ca2: ; c8ca2 (32:4ca2) + call Functionc80d7 ; ; ; call does not return + +; no known jump sources +Jumptable_c8ca5: ; c8ca5 (32:4ca5) + dw Functionc8cab + dw Functionc8cc3 + dw Functionc8cdd + + +; no known jump sources +Functionc8cab: ; c8cab (32:4cab) + call Functionc80e5 + call Functionc8eca + ld a, $43 + ld [hLCDStatCustom], a ; $ff00+$c6 + xor a + ld [$FF00+$c7], a + ld a, $37 + ld [$FF00+$c8], a + ld hl, $3 + add hl, bc + ld [hl], $0 + ret + +; no known jump sources +Functionc8cc3: ; c8cc3 (32:4cc3) + ld hl, $3 + add hl, bc + ld a, [hl] + cp $40 + jr nc, Functionc8cdd + ld d, $6 + call Functionc905d + call Functionc900b + ld hl, $3 + add hl, bc + ld a, [hl] + add $2 + ld [hl], a + ret + +; known jump sources: c8cca (32:4cca) +Functionc8cdd: ; c8cdd (32:4cdd) + call Functionc8f0a + ret + +; no known jump sources +Functionc8ce1: ; c8ce1 (32:4ce1) + call Functionc8d0b + jr c, .asm_c8cea + bit 7, a + jr z, .asm_c8ceb +.asm_c8cea + xor a +.asm_c8ceb + push af + call DelayFrame + pop af + ld [hSCY], a ; $ff00+$d0 + xor $ff + inc a + ld [$d314], a + ret + +; no known jump sources +Functionc8cf9: ; c8cf9 (32:4cf9) + call Functionc8d0b + jr nc, .asm_c8cff + xor a +.asm_c8cff + ld [hSCX], a ; $ff00+$cf + ret + +; no known jump sources +Functionc8d02: ; c8d02 (32:4d02) + call Functionc8d0b + jr nc, .asm_c8d08 + xor a +.asm_c8d08 + ld [hSCY], a ; $ff00+$d0 + ret + +; known jump sources: c8ce1 (32:4ce1), c8cf9 (32:4cf9), c8d02 (32:4d02) +Functionc8d0b: ; c8d0b (32:4d0b) + ld hl, $1 + add hl, bc + ld a, [hl] + and a + jr nz, .asm_c8d18 + call EndBattleBGEffect + scf + ret +.asm_c8d18 + dec [hl] + ld hl, $3 + add hl, bc + ld a, [hl] + and $f + jr z, .asm_c8d2a + dec [hl] + ld hl, $2 + add hl, bc + ld a, [hl] + and a + ret +.asm_c8d2a + ld a, [hl] + swap a + or [hl] + ld [hl], a + ld hl, $2 + add hl, bc + ld a, [hl] + xor $ff + inc a + ld [hl], a + and a + ret + +; no known jump sources +Functionc8d3a: ; c8d3a (32:4d3a) + ld hl, $3 + add hl, bc + ld a, [hl] + cp $40 + jr nc, .asm_c8d53 + ld d, $6 + call Functionc905d + ld [hSCX], a ; $ff00+$cf + ld hl, $3 + add hl, bc + ld a, [hl] + add $2 + ld [hl], a + ret +.asm_c8d53 + xor a + ld [hSCX], a ; $ff00+$cf + ret + +; known jump sources: c8130 (32:4130), c8144 (32:4144), c8158 (32:4158), c817e (32:417e), c8198 (32:4198), c81a8 (32:41a8) +Functionc8d57: ; c8d57 (32:4d57) + ld hl, $1 + add hl, bc + ld a, [hl] + and a + jr z, .asm_c8d69 + + dec [hl] + ld hl, $3 + add hl, bc + ld a, [hl] + call Functionc8eb2 + ret + +.asm_c8d69 + ld hl, $2 + add hl, bc + ld a, [hl] + ld hl, $1 + add hl, bc + ld [hl], a + call Functionc8eac + ret + +; known jump sources: c8beb (32:4beb), c8bf5 (32:4bf5), c8c00 (32:4c00), c8c0b (32:4c0b), c8c17 (32:4c17), c8c23 (32:4c23), c8c33 (32:4c33), c8c3f (32:4c3f), c8c58 (32:4c58) +Functionc8d77: ; c8d77 (32:4d77) + ld a, [hCGB] ; $ff00+$e6 + and a + jr nz, asm_c8dd4 + push de + ld de, Jumptable_c8d85 + call Functionc80ca + pop de + jp [hl] + +; no known jump sources +Jumptable_c8d85: ; c8d85 (32:4d85) + dw Functionc8d8b + dw Functionc8daa + dw Functionc8dc9 + + +; no known jump sources +Functionc8d8b: ; c8d8b (32:4d8b) + call Functionc80e5 + ld a, $e4 + call Functionc8ecb + ld a, $47 + call Functionc8ede + ld a, [$FF00+$c8] + inc a + ld [$FF00+$c8], a + ld hl, $3 + add hl, bc + ld a, [hl] + ld [hl], $0 + ld hl, $2 + add hl, bc + ld [hl], a + ret + +; no known jump sources +Functionc8daa: ; c8daa (32:4daa) + ld hl, $2 + add hl, bc + ld a, [hl] + and $f + jr z, .asm_c8db5 + dec [hl] + ret +.asm_c8db5 + ld a, [hl] + swap a + or [hl] + ld [hl], a + call Functionc8eac + jr c, .asm_c8dc3 + call Functionc900b + ret +.asm_c8dc3 + ld hl, $3 + add hl, bc + dec [hl] + ret + +; no known jump sources +Functionc8dc9: ; c8dc9 (32:4dc9) + call Functionc8f19 + ld a, $e4 + ld [rBGP], a ; $ff00+$47 + call EndBattleBGEffect + ret +asm_c8dd4: ; c8dd4 (32:4dd4) + push de + ld de, Jumptable_c8ddd + call Functionc80ca + pop de + jp [hl] + +; no known jump sources +Jumptable_c8ddd: ; c8ddd (32:4ddd) + dw Functionc8de7 + dw Functionc8e02 + dw Functionc8e21 + dw Functionc8e2a + dw Functionc8e49 + + +; no known jump sources +Functionc8de7: ; c8de7 (32:4de7) + call Functionc9038 + jr nz, .asm_c8df2 + call Functionc80e5 + call Functionc80e5 +.asm_c8df2 + call Functionc80e5 + ld hl, $3 + add hl, bc + ld a, [hl] + ld [hl], $0 + ld hl, $2 + add hl, bc + ld [hl], a + ret + +; no known jump sources +Functionc8e02: ; c8e02 (32:4e02) + ld hl, $2 + add hl, bc + ld a, [hl] + and $f + jr z, .asm_c8e0d + dec [hl] + ret +.asm_c8e0d + ld a, [hl] + swap a + or [hl] + ld [hl], a + call Functionc8eac + jr c, .asm_c8e1b + call Functionc8e52 + ret +.asm_c8e1b + ld hl, $3 + add hl, bc + dec [hl] + ret + +; no known jump sources +Functionc8e21: ; c8e21 (32:4e21) + ld a, $e4 + call Functionc8e52 + call EndBattleBGEffect + ret + +; no known jump sources +Functionc8e2a: ; c8e2a (32:4e2a) + ld hl, $2 + add hl, bc + ld a, [hl] + and $f + jr z, .asm_c8e35 + dec [hl] + ret +.asm_c8e35 + ld a, [hl] + swap a + or [hl] + ld [hl], a + call Functionc8eac + jr c, .asm_c8e43 + call Functionc8e7f + ret +.asm_c8e43 + ld hl, $3 + add hl, bc + dec [hl] + ret + +; no known jump sources +Functionc8e49: ; c8e49 (32:4e49) + ld a, $e4 + call Functionc8e7f + call EndBattleBGEffect + ret + +; known jump sources: c8e17 (32:4e17), c8e23 (32:4e23) +Functionc8e52: ; c8e52 (32:4e52) + ld h, a + ld a, [rSVBK] ; $ff00+$70 + push af + ld a, $5 + ld [rSVBK], a ; $ff00+$70 + ld a, h + push bc + push af + ld hl, BGPals ; $d080 + ld de, Unkn1Pals ; $d000 + ld b, a + ld c, $1 + call CopyPals + ld hl, $d0c8 + ld de, $d048 + pop af + ld b, a + ld c, $1 + call CopyPals + pop bc + pop af + ld [rSVBK], a ; $ff00+$70 + ld a, $1 + ld [hCGBPalUpdate], a ; $ff00+$e5 + ret + +; known jump sources: c8e3f (32:4e3f), c8e4b (32:4e4b) +Functionc8e7f: ; c8e7f (32:4e7f) + ld h, a + ld a, [rSVBK] ; $ff00+$70 + push af + ld a, $5 + ld [rSVBK], a ; $ff00+$70 + ld a, h + push bc + push af + ld hl, $d088 + ld de, $d008 + ld b, a + ld c, $1 + call CopyPals + ld hl, OBPals ; $d0c0 + ld de, MartPointer ; $d040 (aliases: Unkn2Pals) + pop af + ld b, a + ld c, $1 + call CopyPals + pop bc + pop af + ld [rSVBK], a ; $ff00+$70 + ld a, $1 + ld [hCGBPalUpdate], a ; $ff00+$e5 + ret + +; known jump sources: c8d73 (32:4d73), c8dba (32:4dba), c8e12 (32:4e12), c8e3a (32:4e3a) +Functionc8eac: ; c8eac (32:4eac) + ld hl, $3 + add hl, bc + ld a, [hl] + inc [hl] + +; known jump sources: c8d65 (32:4d65) +Functionc8eb2: ; c8eb2 (32:4eb2) + ld l, a + ld h, $0 + add hl, de + ld a, [hl] + cp $ff + jr z, .asm_c8ec8 + cp $fe + jr nz, .asm_c8ec6 + ld a, [de] + ld hl, $3 + add hl, bc + ld [hl], $0 +.asm_c8ec6 + and a + ret +.asm_c8ec8 + scf + ret + +; known jump sources: c85a5 (32:45a5), c85c2 (32:45c2), c85fc (32:45fc), c8613 (32:4613), c864b (32:464b), c866e (32:466e), c869b (32:469b), c8715 (32:4715), c876d (32:476d), c87b5 (32:47b5), c8813 (32:4813), c8845 (32:4845), c88f9 (32:48f9), c8936 (32:4936), c8970 (32:4970), c89c1 (32:49c1), c89fa (32:49fa), c8ad6 (32:4ad6), c8c6b (32:4c6b), c8cae (32:4cae), c8f0f (32:4f0f), c8f2a (32:4f2a) +Functionc8eca: ; c8eca (32:4eca) + xor a + +; known jump sources: c8a4e (32:4a4e), c8b13 (32:4b13), c8d90 (32:4d90) +Functionc8ecb: ; c8ecb (32:4ecb) + ld hl, CurMartEnd ; $d100 (aliases: LYOverrides) + ld e, $99 +.asm_c8ed0 + ld [hli], a + dec e + jr nz, .asm_c8ed0 + ld hl, $d200 + ld e, $91 +.asm_c8ed9 + ld [hli], a + dec e + jr nz, .asm_c8ed9 + ret + +; known jump sources: c85c7 (32:45c7), c8650 (32:4650), c8673 (32:4673), c86a0 (32:46a0), c871a (32:471a), c8772 (32:4772), c87ba (32:47ba), c8818 (32:4818), c88fe (32:48fe), c893b (32:493b), c8975 (32:4975), c89c6 (32:49c6), c8a53 (32:4a53), c8adb (32:4adb), c8c70 (32:4c70), c8d95 (32:4d95) +Functionc8ede: ; c8ede (32:4ede) + ld [hLCDStatCustom], a ; $ff00+$c6 + call Functionc9038 + jr nz, .asm_c8eea + ld de, $36 + jr .asm_c8eed +.asm_c8eea + ld de, $2f5e +.asm_c8eed + ld a, d + ld [$FF00+$c7], a + ld a, e + ld [$FF00+$c8], a + ret + +; known jump sources: c884a (32:484a), c89ff (32:49ff) +Functionc8ef4: ; c8ef4 (32:4ef4) + ld [hLCDStatCustom], a ; $ff00+$c6 + call Functionc9038 + jr nz, .asm_c8f00 + ld de, $36 + jr .asm_c8f03 +.asm_c8f00 + ld de, $2d5e +.asm_c8f03 + ld a, d + ld [$FF00+$c7], a + ld a, e + ld [$FF00+$c8], a + ret + +; known jump sources: c8561 (32:4561), c85be (32:45be), c8603 (32:4603), c863b (32:463b), c865e (32:465e), c8685 (32:4685), c8705 (32:4705), c875d (32:475d), c87a3 (32:47a3), c8801 (32:4801), c8833 (32:4833), c8865 (32:4865), c88f2 (32:48f2), c8926 (32:4926), c8960 (32:4960), c89b1 (32:49b1), c89ea (32:49ea), c8a36 (32:4a36), c8afc (32:4afc), c8c9e (32:4c9e), c8cdd (32:4cdd) +Functionc8f0a: ; c8f0a (32:4f0a) + xor a + ld [$FF00+$c7], a + ld [$FF00+$c8], a + call Functionc8eca + xor a + ld [hLCDStatCustom], a ; $ff00+$c6 + call EndBattleBGEffect + ret + +; known jump sources: c8aac (32:4aac), c8b60 (32:4b60), c8dc9 (32:4dc9) +Functionc8f19: ; c8f19 (32:4f19) + xor a + ld [hLCDStatCustom], a ; $ff00+$c6 + ld a, $e4 + ld [rBGP], a ; $ff00+$47 + ld [$cfc7], a + ld [$cfc9], a + ld [$FF00+$c7], a + ld [$FF00+$c8], a + call Functionc8eca + ret + +; known jump sources: c85b6 (32:45b6), c8624 (32:4624), c8656 (32:4656), c867d (32:467d), c8724 (32:4724), c89d6 (32:49d6), c89e6 (32:49e6), c8af8 (32:4af8) +Functionc8f2e: ; c8f2e (32:4f2e) + push bc + xor a + ld [$d419], a + ld a, e + ld [$d41a], a + ld a, d + ld [$d41b], a + ld a, $80 + ld [$d41c], a + ld bc, $d200 +.asm_c8f43 + ld a, [$FF00+$c7] + cp c + jr nc, .asm_c8f58 + ld a, [$FF00+$c8] + cp c + jr c, .asm_c8f58 + ld a, [$d41b] + ld d, a + ld a, [$d419] + call Functionc905d + ld [bc], a +.asm_c8f58 + inc bc + ld a, [$d41a] + ld hl, $d419 + add [hl] + ld [hl], a + ld hl, $d41c + dec [hl] + jr nz, .asm_c8f43 + pop bc + ret + +; known jump sources: c8554 (32:4554) +Functionc8f69: ; c8f69 (32:4f69) + push bc + xor a + ld [$d419], a + ld a, e + ld [$d41a], a + ld a, d + ld [$d41b], a + ld a, $40 + ld [$d41c], a + ld bc, $d422 +.asm_c8f7e + ld a, [$d41b] + ld d, a + ld a, [$d419] + call Functionc905d + ld [bc], a + inc bc + ld a, [$d41a] + ld hl, $d419 + add [hl] + ld [hl], a + ld hl, $d41c + dec [hl] + jr nz, .asm_c8f7e + pop bc + ret + +; known jump sources: c85f8 (32:45f8) +Functionc8f9a: ; c8f9a (32:4f9a) + push bc + ld [$d41c], a + ld a, e + ld [$d41a], a + ld a, d + ld [$d41b], a + call Functionc8fe4 + ld hl, $d200 + add hl, de + ld c, l + ld b, h +.asm_c8faf + ld a, [$d41c] + and a + jr z, .asm_c8fe1 + dec a + ld [$d41c], a + push af + ld a, [$d41b] + ld d, a + ld a, [$d41a] + push hl + call Functionc905d + ld e, a + pop hl + ld a, [$FF00+$c8] + cp c + jr c, .asm_c8fcf + ld a, e + ld [bc], a + inc bc +.asm_c8fcf + ld a, [$FF00+$c7] + cp l + jr nc, .asm_c8fd6 + ld [hl], e + dec hl +.asm_c8fd6 + ld a, [$d41a] + add $4 + ld [$d41a], a + pop af + jr .asm_c8faf +.asm_c8fe1 + pop bc + and a + ret + +; known jump sources: c8fa6 (32:4fa6) +Functionc8fe4: ; c8fe4 (32:4fe4) + ld a, [$FF00+$c7] + ld e, a + ld a, [$d419] + add e + ld e, a + ld d, $0 + ret + +; known jump sources: c85ba (32:45ba), c8637 (32:4637), c865a (32:465a), c8681 (32:4681) +Functionc8fef: ; c8fef (32:4fef) + push bc + ld a, [$FF00+$c7] + ld l, a + inc a + ld e, a + ld h, $d2 + ld d, h + ld a, [$FF00+$c8] + sub l + and a + jr z, .asm_c9009 + ld c, a + ld a, [hl] + push af +.asm_c9001 + ld a, [de] + inc de + ld [hli], a + dec c + jr nz, .asm_c9001 + pop af + ld [hl], a +.asm_c9009 + pop bc + ret + +; known jump sources: c88b4 (32:48b4), c8954 (32:4954), c899d (32:499d), c8c9a (32:4c9a), c8cd1 (32:4cd1), c8dbf (32:4dbf) +Functionc900b: ; c900b (32:500b) + push af + ld h, $d2 + ld a, [$FF00+$c7] + ld l, a + ld a, [$FF00+$c8] + sub l + ld d, a + pop af +.asm_c9016 + ld [hli], a + dec d + jr nz, .asm_c9016 + ret + +; known jump sources: c8790 (32:4790), c87f7 (32:47f7), c8a2c (32:4a2c) +Functionc901b: ; c901b (32:501b) + push af + ld e, a + ld a, [$FF00+$c7] + ld l, a + ld a, [$FF00+$c8] + sub l + sub e + ld d, a + ld h, $d2 + ld a, [$FF00+$c7] + ld l, a + ld a, $90 +.asm_c902c + ld [hli], a + dec e + jr nz, .asm_c902c + pop af + xor $ff +.asm_c9033 + ld [hli], a + dec d + jr nz, .asm_c9033 + ret + +; known jump sources: c81c4 (32:41c4), c81f3 (32:41f3), c8234 (32:4234), c825e (32:425e), c82a1 (32:42a1), c82cb (32:42cb), c8305 (32:4305), c837b (32:437b), c83a8 (32:43a8), c8826 (32:4826), c8858 (32:4858), c890c (32:490c), c8b39 (32:4b39), c8de7 (32:4de7), c8ee0 (32:4ee0), c8ef6 (32:4ef6) +Functionc9038: ; c9038 (32:5038) + ld hl, $2 + add hl, bc + ld a, [hBattleTurn] ; $ff00+$e4 + and $1 + xor [hl] + ret + +; known jump sources: c81ea (32:41ea), c8223 (32:4223), c8290 (32:4290) +Functionc9042: ; c9042 (32:5042) + ld hl, $2 + add hl, bc + ld a, [hBattleTurn] ; $ff00+$e4 + and $1 + xor [hl] + jr nz, .asm_c9053 + ld a, [EnemySubStatus3] ; $c66f + and $60 + ret +.asm_c9053 + ld a, [PlayerSubStatus3] ; $c66a + and $60 + ret + +; known jump sources: c8171 (32:4171), c818b (32:418b) +Functionc9059: ; c9059 (32:5059) + ld a, [hSGB] ; $ff00+$e7 + and a + ret + +; known jump sources: c86d6 (32:46d6), c8951 (32:4951), c898c (32:498c), c8997 (32:4997), c8cce (32:4cce), c8d45 (32:4d45), c8f54 (32:4f54), c8f85 (32:4f85), c8fc2 (32:4fc2) +Functionc905d: ; c905d (32:505d) + ld e, a + callab Functionce765 + ld a, e + ret + +; known jump sources: c8a24 (32:4a24) +Functionc9066: ; c9066 (32:5066) + ld e, a + callab Functionce76b + ld a, e + ret +; c906f (32:506f) + + @@ -83890,2943 +83890,9 @@ INCLUDE "gfx/overworld/sprites_2.asm" SECTION "bank32", ROMX, BANK[$32] -; no known jump sources -Functionc8000: ; c8000 (32:4000) - ld hl, $d3fa - ld e, $5 -.asm_c8005 - ld a, [hl] - and a - jr z, .asm_c8012 - ld c, l - ld b, h - push hl - push de - call Functionc804a - pop de - pop hl -.asm_c8012 - ld bc, $4 - add hl, bc - dec e - jr nz, .asm_c8005 - ret - -; no known jump sources -Functionc801a: ; c801a (32:401a) - ld hl, $d3fa - ld e, $5 -.asm_c801f - ld a, [hl] - and a - jr z, .asm_c802c - ld bc, $4 - add hl, bc - dec e - jr nz, .asm_c801f - scf - ret -.asm_c802c - ld c, l - ld b, h - ld hl, $0 - add hl, bc - ld a, [$d419] - ld [hli], a - ld a, [$d41a] - ld [hli], a - ld a, [$d41b] - ld [hli], a - ld a, [$d41c] - ld [hl], a - ret - -; known jump sources: c80c6 (32:40c6), c811c (32:411c), c8139 (32:4139), c814d (32:414d), c8164 (32:4164), c81e6 (32:41e6), c81ef (32:41ef), c822c (32:422c), c827d (32:427d), c8299 (32:4299), c82ea (32:42ea), c8377 (32:4377), c8437 (32:4437), c85ca (32:45ca), c85ff (32:45ff), c8d13 (32:4d13), c8dd0 (32:4dd0), c8e26 (32:4e26), c8e4e (32:4e4e), c8f15 (32:4f15) -EndBattleBGEffect: ; c8043 (32:4043) - ld hl, 0 - add hl, bc - ld [hl], 0 - ret - -; known jump sources: c800d (32:400d) -Functionc804a: ; c804a (32:404a) - ld hl, 0 - add hl, bc - ld e, [hl] - ld d, 0 - ld hl, BattleBGEffects - add hl, de - add hl, de - ld a, [hli] - ld h, [hl] - ld l, a - jp [hl] - -; no known jump sources -BattleBGEffects: ; c805a (32:405a) - dw BattleBGEffect_0 - dw Functionc80eb - dw Functionc80f3 - dw Functionc812d - dw Functionc8141 - dw Functionc8155 - dw Functionc8171 - dw Functionc818b - dw Functionc81a5 - dw Functionc81b3 - dw Functionc81ea - dw Functionc837b - dw Functionc83a8 - dw Functionc8545 - dw Functionc8599 - dw Functionc863f - dw Functionc8662 - dw Functionc8214 - dw Functionc8281 - dw Functionc8689 - dw Functionc8709 - dw Functionc8be8 - dw Functionc8bf2 - dw Functionc8bfd - dw Functionc8c08 - dw Functionc8c14 - dw Functionc8c20 - dw Functionc8c30 - dw Functionc8b00 - dw Functionc8c3c - dw Functionc8c55 - dw Functionc8cf9 - dw Functionc8d02 - dw Functionc8761 - dw Functionc89ee - dw Functionc87a7 - dw Functionc8805 - dw Functionc8837 - dw Functionc892a - dw Functionc82f5 - dw Functionc89b5 - dw Functionc8607 - dw Functionc8a3a - dw Functionc8acc - dw Functionc8964 - dw Functionc88e7 - dw Functionc8ce1 - dw Functionc8919 - dw Functionc85c2 - dw Functionc85ce - dw Functionc8603 - dw Functionc8c61 - dw Functionc8ca2 - dw Functionc8d3a - - -; no known jump sources -BattleBGEffect_0: ; c80c6 (32:40c6) - call EndBattleBGEffect - ret - -; known jump sources: c8b7d (32:4b7d), c8d80 (32:4d80), c8dd8 (32:4dd8) -Functionc80ca: ; c80ca (32:40ca) - ld hl, $1 - add hl, bc - ld l, [hl] - ld h, $0 - add hl, hl - add hl, de - ld a, [hli] - ld h, [hl] - ld l, a - ret - -; known jump sources: c81b3 (32:41b3), c8214 (32:4214), c8281 (32:4281), c82f5 (32:42f5), c83ed (32:43ed), c8545 (32:4545), c8599 (32:4599), c8607 (32:4607), c863f (32:463f), c8662 (32:4662), c8689 (32:4689), c8709 (32:4709), c8761 (32:4761), c87a7 (32:47a7), c8805 (32:4805), c8837 (32:4837), c88e7 (32:48e7), c8919 (32:4919), c892a (32:492a), c8964 (32:4964), c89b5 (32:49b5), c89ee (32:49ee), c8a3a (32:4a3a), c8acc (32:4acc), c8b05 (32:4b05), c8c61 (32:4c61), c8ca2 (32:4ca2) -Functionc80d7: ; c80d7 (32:40d7) - pop de - ld hl, $1 - 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] - -; known jump sources: c81c0 (32:41c0), c8230 (32:4230), c825a (32:425a), c829d (32:429d), c82c7 (32:42c7), c8302 (32:4302), c835c (32:435c), c841d (32:441d), c854e (32:454e), c85a2 (32:45a2), c8610 (32:4610), c8648 (32:4648), c866b (32:466b), c8698 (32:4698), c86cb (32:46cb), c8712 (32:4712), c876a (32:476a), c87b2 (32:47b2), c87db (32:47db), c8810 (32:4810), c8842 (32:4842), c8876 (32:4876), c8890 (32:4890), c88f6 (32:48f6), c8933 (32:4933), c896d (32:496d), c89be (32:49be), c89f7 (32:49f7), c8a49 (32:4a49), c8a84 (32:4a84), c8a96 (32:4a96), c8ad3 (32:4ad3), c8b0e (32:4b0e), c8c68 (32:4c68), c8cab (32:4cab), c8d8b (32:4d8b), c8dec (32:4dec), c8def (32:4def), c8df2 (32:4df2) -Functionc80e5: ; c80e5 (32:40e5) - ld hl, $1 - add hl, bc - inc [hl] - ret - -; no known jump sources -Functionc80eb: ; c80eb (32:40eb) - ld de, .inverted - jp Functionc80fb -; c80f1 (32:40f1) - -.inverted - db %11100100 ; 3210 - db %00011011 ; 0123 -; c80f3 - -; no known jump sources -Functionc80f3: ; c80f3 (32:40f3) - ld de, .white - jp Functionc80fb -; c80f9 (32:40f9) - -.white - db %11100100 ; 3210 - db %00000000 ; 0000 -; c80fb - -; known jump sources: c80ee (32:40ee), c80f6 (32:40f6) -Functionc80fb: ; c80fb (32:40fb) - ld a, $1 - ld [$d419], a - ld hl, $1 - add hl, bc - ld a, [hl] - and a - jr z, .asm_c810a - dec [hl] - ret - -.asm_c810a - ld hl, $2 - add hl, bc - ld a, [hl] - ld hl, $1 - add hl, bc - ld [hl], a - ld hl, $3 - add hl, bc - ld a, [hl] - and a - jr nz, .asm_c8120 - call EndBattleBGEffect - ret - -.asm_c8120 - dec a - ld [hl], a - and 1 - ld l, a - ld h, 0 - add hl, de - ld a, [hl] - ld [$cfc7], a - ret - -; no known jump sources -Functionc812d: ; c812d (32:412d) - ld de, $413d - call Functionc8d57 - jr c, .asm_c8139 - ld [$cfc7], a - ret -.asm_c8139 - call EndBattleBGEffect - ret -; c813d (32:413d) - -INCBIN "baserom.gbc",$c813d,$c8141 - $c813d - -; no known jump sources -Functionc8141: ; c8141 (32:4141) - ld de, $4151 - call Functionc8d57 - jr c, .asm_c814d - ld [$cfc7], a - ret -.asm_c814d - call EndBattleBGEffect - ret -; c8151 (32:4151) - -INCBIN "baserom.gbc",$c8151,$c8155 - $c8151 - -; no known jump sources -Functionc8155: ; c8155 (32:4155) - ld de, $4168 - call Functionc8d57 - jr c, .asm_c8164 - ld [$cfc7], a - ld [$cfc9], a - ret -.asm_c8164 - call EndBattleBGEffect - ret -; c8168 (32:4168) - -INCBIN "baserom.gbc",$c8168,$c8171 - $c8168 - -; no known jump sources -Functionc8171: ; c8171 (32:4171) - call Functionc9059 - jr nz, .asm_c817b - ld de, $4185 - jr .asm_c817e -.asm_c817b - ld de, $4188 -.asm_c817e - call Functionc8d57 - ld [$cfc8], a - ret -; c8185 (32:4185) - -INCBIN "baserom.gbc",$c8185,$c818b - $c8185 - -; no known jump sources -Functionc818b: ; c818b (32:418b) - call Functionc9059 - jr nz, .asm_c8195 - ld de, $419f - jr .asm_c8198 -.asm_c8195 - ld de, $41a2 -.asm_c8198 - call Functionc8d57 - ld [$cfc8], a - ret -; c819f (32:419f) - -INCBIN "baserom.gbc",$c819f,$c81a5 - $c819f - -; no known jump sources -Functionc81a5: ; c81a5 (32:41a5) - ld de, $41af - call Functionc8d57 - ld [$cfc7], a - ret -; c81af (32:41af) - -INCBIN "baserom.gbc",$c81af,$c81b3 - $c81af - -; no known jump sources -Functionc81b3: ; c81b3 (32:41b3) - call Functionc80d7 ; ; ; call does not return - -; no known jump sources -Jumptable_c81b6: ; c81b6 (32:41b6) - dw Functionc81c0 - dw Functionc80e5 - dw Functionc80e5 - dw Functionc80e5 - dw Functionc81e3 - - -; no known jump sources -Functionc81c0: ; c81c0 (32:41c0) - call Functionc80e5 - push bc - call Functionc9038 - jr nz, .asm_c81d1 - ld hl, $c4ac - ld bc, $707 - jr .asm_c81d7 -.asm_c81d1 - ld hl, $c51a - ld bc, $606 -.asm_c81d7 - call ClearBox - pop bc - xor a - ld [hBGMapThird], a ; $ff00+$d5 - ld a, $1 - ld [hBGMapMode], a ; $ff00+$d4 - ret - -; no known jump sources -Functionc81e3: ; c81e3 (32:41e3) - xor a - ld [hBGMapMode], a ; $ff00+$d4 - call EndBattleBGEffect - ret - -; no known jump sources -Functionc81ea: ; c81ea (32:41ea) - call Functionc9042 - jr z, .asm_c81f3 - call EndBattleBGEffect - ret -.asm_c81f3 - call Functionc9038 - jr nz, .asm_c81fd - ld de, $4210 - jr .asm_c8200 -.asm_c81fd - ld de, $420c -.asm_c8200 - ld a, e - ld [$d41a], a - ld a, d - ld [$d41b], a - call Functionc83ed - ret -; c820c (32:420c) - -INCBIN "baserom.gbc",$c820c,$c8214 - $c820c - -; no known jump sources -Functionc8214: ; c8214 (32:4214) - call Functionc80d7 ; ; ; call does not return - -; no known jump sources -Jumptable_c8217: ; c8217 (32:4217) - dw Functionc8223 - dw Functionc825a - dw Functionc80e5 - dw Functionc80e5 - dw Functionc80e5 - dw Functionc827a - - -; no known jump sources -Functionc8223: ; c8223 (32:4223) - call Functionc9042 - jr z, .asm_c8230 - ld hl, $d40e - inc [hl] - call EndBattleBGEffect - ret -.asm_c8230 - call Functionc80e5 - push bc - call Functionc9038 - jr nz, .asm_c8242 - ld a, $b8 - ld [$d419], a - ld a, $84 - jr .asm_c8249 -.asm_c8242 - ld a, $b9 - ld [$d419], a - ld a, $30 -.asm_c8249 - ld [$d41a], a - ld a, $40 - ld [$d41b], a - xor a - ld [$d41c], a - call Functionc82ee - pop bc - ret - -; no known jump sources -Functionc825a: ; c825a (32:425a) - call Functionc80e5 - push bc - call Functionc9038 - jr nz, .asm_c826b - ld hl, $c524 - ld bc, $107 - jr .asm_c8271 -.asm_c826b - ld hl, $c51a - ld bc, $106 -.asm_c8271 - call ClearBox - ld a, $1 - ld [hBGMapMode], a ; $ff00+$d4 - pop bc - ret - -; no known jump sources -Functionc827a: ; c827a (32:427a) - xor a - ld [hBGMapMode], a ; $ff00+$d4 - call EndBattleBGEffect - ret - -; no known jump sources -Functionc8281: ; c8281 (32:4281) - call Functionc80d7 ; ; ; call does not return - -; no known jump sources -Jumptable_c8284: ; c8284 (32:4284) - dw Functionc8290 - dw Functionc82c7 - dw Functionc80e5 - dw Functionc80e5 - dw Functionc80e5 - dw Functionc82e7 - - -; no known jump sources -Functionc8290: ; c8290 (32:4290) - call Functionc9042 - jr z, .asm_c829d - ld hl, $d40e - inc [hl] - call EndBattleBGEffect - ret -.asm_c829d - call Functionc80e5 - push bc - call Functionc9038 - jr nz, .asm_c82af - ld a, $ba - ld [$d419], a - ld a, $84 - jr .asm_c82b6 -.asm_c82af - ld a, $bb - ld [$d419], a - ld a, $30 -.asm_c82b6 - ld [$d41a], a - ld a, $40 - ld [$d41b], a - xor a - ld [$d41c], a - call Functionc82ee - pop bc - ret - -; no known jump sources -Functionc82c7: ; c82c7 (32:42c7) - call Functionc80e5 - push bc - call Functionc9038 - jr nz, .asm_c82d8 - ld hl, $c510 - ld bc, $207 - jr .asm_c82de -.asm_c82d8 - ld hl, $c51a - ld bc, $206 -.asm_c82de - call ClearBox - ld a, $1 - ld [hBGMapMode], a ; $ff00+$d4 - pop bc - ret - -; no known jump sources -Functionc82e7: ; c82e7 (32:42e7) - xor a - ld [hBGMapMode], a ; $ff00+$d4 - call EndBattleBGEffect - ret - -; known jump sources: c8255 (32:4255), c82c2 (32:42c2) -Functionc82ee: ; c82ee (32:42ee) - callab Functioncc9a1 - ret - -; no known jump sources -Functionc82f5: ; c82f5 (32:42f5) - call Functionc80d7 ; ; ; call does not return - -; no known jump sources -Jumptable_c82f8: ; c82f8 (32:42f8) - dw Functionc8302 - dw Functionc831d - dw Functionc80e5 - dw Functionc80e5 - dw Functionc8365 - - -; no known jump sources -Functionc8302: ; c8302 (32:4302) - call Functionc80e5 - call Functionc9038 - ld [hl], a - ld hl, $2 - add hl, bc - ld a, [hl] - and a - jr z, .asm_c8315 - ld a, $9 - jr .asm_c8317 -.asm_c8315 - ld a, $8 -.asm_c8317 - ld hl, $3 - add hl, bc - ld [hl], a - ret - -; no known jump sources -Functionc831d: ; c831d (32:431d) - ld hl, $2 - add hl, bc - ld a, [hl] - and a - jr z, .asm_c833e - ld hl, $c518 - ld de, $806 -.asm_c832b - push de - push hl -.asm_c832d - inc hl - ld a, [hld] - ld [hli], a - dec d - jr nz, .asm_c832d - pop hl - ld de, $14 - add hl, de - pop de - dec e - jr nz, .asm_c832b - jr .asm_c8355 -.asm_c833e - ld hl, $c4b3 - ld de, $807 -.asm_c8344 - push de - push hl -.asm_c8346 - dec hl - ld a, [hli] - ld [hld], a - dec d - jr nz, .asm_c8346 - pop hl - ld de, $14 - add hl, de - pop de - dec e - jr nz, .asm_c8344 -.asm_c8355 - xor a - ld [hBGMapThird], a ; $ff00+$d5 - ld a, $1 - ld [hBGMapMode], a ; $ff00+$d4 - call Functionc80e5 - ld hl, $3 - add hl, bc - dec [hl] - ret - -; no known jump sources -Functionc8365: ; c8365 (32:4365) - xor a - ld [hBGMapMode], a ; $ff00+$d4 - ld hl, $3 - add hl, bc - ld a, [hl] - and a - jr z, .asm_c8377 - ld hl, $1 - add hl, bc - ld [hl], $1 - ret -.asm_c8377 - call EndBattleBGEffect - ret - -; no known jump sources -Functionc837b: ; c837b (32:437b) - call Functionc9038 - jr nz, .asm_c8385 - ld de, $439e - jr .asm_c8388 -.asm_c8385 - ld de, $4394 -.asm_c8388 - ld a, e - ld [$d41a], a - ld a, d - ld [$d41b], a - call Functionc83ed - ret -; c8394 (32:4394) - -INCBIN "baserom.gbc",$c8394,$c83a8 - $c8394 - -; no known jump sources -Functionc83a8: ; c83a8 (32:43a8) - call Functionc9038 - jr nz, .asm_c83b2 - ld de, $43d7 - jr .asm_c83b5 -.asm_c83b2 - ld de, $43c1 -.asm_c83b5 - ld a, e - ld [$d41a], a - ld a, d - ld [$d41b], a - call Functionc83ed - ret -; c83c1 (32:43c1) - -INCBIN "baserom.gbc",$c83c1,$c83ed - $c83c1 - -; known jump sources: c8208 (32:4208), c8390 (32:4390), c83bd (32:43bd) -Functionc83ed: ; c83ed (32:43ed) - call Functionc80d7 ; ; ; call does not return - -; no known jump sources -Jumptable_c83f0: ; c83f0 (32:43f0) - dw Functionc83fa - dw Functionc80e5 - dw Functionc80e5 - dw Functionc842a - dw Functionc8434 - - -; known jump sources: c8428 (32:4428) -Functionc83fa: ; c83fa (32:43fa) - ld hl, $3 - add hl, bc - ld e, [hl] - ld d, $0 - inc [hl] - ld a, [$d41a] - ld l, a - ld a, [$d41b] - ld h, a - add hl, de - add hl, de - add hl, de - ld a, [hl] - cp $ff - jr z, Functionc8434 - cp $fe - jr z, .asm_c8425 - cp $fd - jr z, .asm_c841d - call Functionc8458 -.asm_c841d - call Functionc80e5 - ld a, $1 - ld [hBGMapMode], a ; $ff00+$d4 - ret -.asm_c8425 - call Functionc843b - jr Functionc83fa - -; no known jump sources -Functionc842a: ; c842a (32:442a) - xor a - ld [hBGMapMode], a ; $ff00+$d4 - ld hl, $1 - add hl, bc - ld [hl], $0 - ret - -; known jump sources: c8410 (32:4410) -Functionc8434: ; c8434 (32:4434) - xor a - ld [hBGMapMode], a ; $ff00+$d4 - call EndBattleBGEffect - ret - -; known jump sources: c8425 (32:4425) -Functionc843b: ; c843b (32:443b) - push bc - inc hl - ld a, [hli] - ld b, a - and $f - ld c, a - ld a, b - swap a - and $f - ld b, a - ld e, [hl] - ld d, $0 - ld hl, $449c - add hl, de - add hl, de - ld a, [hli] - ld h, [hl] - ld l, a - call ClearBox - pop bc - ret - -; known jump sources: c841a (32:441a) -Functionc8458: ; c8458 (32:4458) - push bc - push hl - ld e, [hl] - ld d, $0 - ld hl, $44a8 - add hl, de - add hl, de - add hl, de - ld a, [hli] - ld b, a - and $f - ld c, a - ld a, b - swap a - and $f - ld b, a - ld e, [hl] - inc hl - ld d, [hl] - pop hl - inc hl - ld a, [hli] - ld [$d419], a - push de - ld e, [hl] - ld d, $0 - ld hl, $449c - add hl, de - add hl, de - ld a, [hli] - ld h, [hl] - ld l, a - pop de -.asm_c8484 - push bc - push hl - ld a, [$d419] - ld b, a -.asm_c848a - ld a, [de] - add b - ld [hli], a - inc de - dec c - jr nz, .asm_c848a - pop hl - ld bc, $14 - add hl, bc - pop bc - dec b - jr nz, .asm_c8484 - pop bc - ret -; c849c (32:449c) - -INCBIN "baserom.gbc",$c849c,$c8545 - $c849c - -; no known jump sources -Functionc8545: ; c8545 (32:4545) - call Functionc80d7 ; ; ; call does not return - -; no known jump sources -Jumptable_c8548: ; c8548 (32:4548) - dw Functionc854e - dw Functionc8557 - dw Functionc8561 - - -; no known jump sources -Functionc854e: ; c854e (32:454e) - call Functionc80e5 - ld de, $202 - call Functionc8f69 - -; no known jump sources -Functionc8557: ; c8557 (32:4557) - ld a, [hLCDStatCustom] ; $ff00+$c6 - and a - ret z - push bc - call Functionc8565 - pop bc - ret - -; no known jump sources -Functionc8561: ; c8561 (32:4561) - call Functionc8f0a - ret - -; known jump sources: c855c (32:455c) -Functionc8565: ; c8565 (32:4565) - ld hl, $d422 - ld de, $d423 - ld c, $3f - ld a, [hl] - push af -.asm_c856f - ld a, [de] - inc de - ld [hli], a - dec c - jr nz, .asm_c856f - pop af - ld [hl], a - ld de, $d200 - ld hl, $d422 - ld bc, $0 -.asm_c8580 - ld a, [$FF00+$c7] - cp e - jr nc, .asm_c858b - push hl - add hl, bc - ld a, [hl] - pop hl - jr .asm_c858c -.asm_c858b - xor a -.asm_c858c - ld [de], a - ld a, c - inc a - and $3f - ld c, a - inc de - ld a, e - cp $5f - jr c, .asm_c8580 - ret - -; no known jump sources -Functionc8599: ; c8599 (32:4599) - call Functionc80d7 ; ; ; call does not return - -; no known jump sources -Jumptable_c859c: ; c859c (32:459c) - dw Functionc85a2 - dw Functionc85ba - dw Functionc85be - - -; no known jump sources -Functionc85a2: ; c85a2 (32:45a2) - call Functionc80e5 - call Functionc8eca - ld a, $42 - ld [hLCDStatCustom], a ; $ff00+$c6 - xor a - ld [$FF00+$c7], a - ld a, $5e - ld [$FF00+$c8], a - ld de, $202 - call Functionc8f2e - ret - -; no known jump sources -Functionc85ba: ; c85ba (32:45ba) - call Functionc8fef - ret - -; no known jump sources -Functionc85be: ; c85be (32:45be) - call Functionc8f0a - ret - -; no known jump sources -Functionc85c2: ; c85c2 (32:45c2) - call Functionc8eca - ld a, $42 - call Functionc8ede - call EndBattleBGEffect - ret - -; no known jump sources -Functionc85ce: ; c85ce (32:45ce) - ld hl, $3 - add hl, bc - ld a, [hl] - ld e, a - add $4 - ld [hl], a - ld hl, $2 - add hl, bc - ld a, [hl] - and $f0 - swap a - xor $ff - add $4 - ld d, a - ld hl, $1 - add hl, bc - ld a, [hl] - ld [$d419], a - ld hl, $2 - add hl, bc - ld a, [hl] - cp $20 - jr nc, .asm_c85fc - inc [hl] - inc [hl] - call Functionc8f9a - ret -.asm_c85fc - call Functionc8eca - call EndBattleBGEffect - ret - -; no known jump sources -Functionc8603: ; c8603 (32:4603) - call Functionc8f0a - ret - -; no known jump sources -Functionc8607: ; c8607 (32:4607) - call Functionc80d7 ; ; ; call does not return - -; no known jump sources -Jumptable_c860a: ; c860a (32:460a) - dw Functionc8610 - dw Functionc862e - dw Functionc863b - - -; no known jump sources -Functionc8610: ; c8610 (32:4610) - call Functionc80e5 - call Functionc8eca - ld a, $43 - ld [hLCDStatCustom], a ; $ff00+$c6 - xor a - ld [$FF00+$c7], a - ld a, $5f - ld [$FF00+$c8], a - ld de, $605 - call Functionc8f2e - ld hl, $3 - add hl, bc - ld [hl], $0 - ret +INCLUDE "battle/bg_effects.asm" -; no known jump sources -Functionc862e: ; c862e (32:462e) - ld hl, $3 - add hl, bc - ld a, [hl] - inc [hl] - and $3 - ret nz - call Functionc8fef - ret - -; no known jump sources -Functionc863b: ; c863b (32:463b) - call Functionc8f0a - ret - -; no known jump sources -Functionc863f: ; c863f (32:463f) - call Functionc80d7 ; ; ; call does not return - -; no known jump sources -Jumptable_c8642: ; c8642 (32:4642) - dw Functionc8648 - dw Functionc865a - dw Functionc865e - - -; no known jump sources -Functionc8648: ; c8648 (32:4648) - call Functionc80e5 - call Functionc8eca - ld a, $43 - call Functionc8ede - ld de, $605 - call Functionc8f2e - ret - -; no known jump sources -Functionc865a: ; c865a (32:465a) - call Functionc8fef - ret - -; no known jump sources -Functionc865e: ; c865e (32:465e) - call Functionc8f0a - ret - -; no known jump sources -Functionc8662: ; c8662 (32:4662) - call Functionc80d7 ; ; ; call does not return - -; no known jump sources -Jumptable_c8665: ; c8665 (32:4665) - dw Functionc866b - dw Functionc8681 - dw Functionc8685 - - -; no known jump sources -Functionc866b: ; c866b (32:466b) - call Functionc80e5 - call Functionc8eca - ld a, $42 - call Functionc8ede - ld hl, $3 - add hl, bc - ld e, [hl] - ld d, $2 - call Functionc8f2e - ret - -; no known jump sources -Functionc8681: ; c8681 (32:4681) - call Functionc8fef - ret - -; no known jump sources -Functionc8685: ; c8685 (32:4685) - call Functionc8f0a - ret - -; no known jump sources -Functionc8689: ; c8689 (32:4689) - call Functionc80d7 ; ; ; call does not return - -; no known jump sources -Jumptable_c868c: ; c868c (32:468c) - dw Functionc8698 - dw Functionc86af - dw Functionc86cf - dw Functionc86bd - dw Functionc86e9 - dw Functionc8705 - - -; no known jump sources -Functionc8698: ; c8698 (32:4698) - call Functionc80e5 - call Functionc8eca - ld a, $43 - call Functionc8ede - ld a, [$FF00+$c8] - inc a - ld [$FF00+$c8], a - ld hl, $2 - add hl, bc - ld [hl], $0 - ret - -; no known jump sources -Functionc86af: ; c86af (32:46af) - ld hl, $3 - add hl, bc - ld a, [hl] - cp $10 - jr nc, asm_c86cb - inc [hl] - call Functionc86ea - ret - -; no known jump sources -Functionc86bd: ; c86bd (32:46bd) - ld hl, $3 - add hl, bc - ld a, [hl] - cp $ff - jr z, asm_c86cb - dec [hl] - call Functionc86ea - ret -asm_c86cb: ; c86cb (32:46cb) - call Functionc80e5 - ret - -; no known jump sources -Functionc86cf: ; c86cf (32:46cf) - ld hl, $2 - add hl, bc - ld a, [hl] - ld d, $2 - call Functionc905d - ld hl, $3 - add hl, bc - add [hl] - call Functionc86ea - ld hl, $2 - add hl, bc - ld a, [hl] - add $4 - ld [hl], a - -; no known jump sources -Functionc86e9: ; c86e9 (32:46e9) - ret - -; known jump sources: c86b9 (32:46b9), c86c7 (32:46c7), c86de (32:46de) -Functionc86ea: ; c86ea (32:46ea) - ld e, a - xor $ff - inc a - ld d, a - ld h, $d2 - ld a, [$FF00+$c7] - ld l, a - ld a, [$FF00+$c8] - sub l - srl a - push af -.asm_c86fa - ld [hl], e - inc hl - ld [hl], d - inc hl - dec a - jr nz, .asm_c86fa - pop af - ret nc - ld [hl], e - ret - -; no known jump sources -Functionc8705: ; c8705 (32:4705) - call Functionc8f0a - ret - -; no known jump sources -Functionc8709: ; c8709 (32:4709) - call Functionc80d7 ; ; ; call does not return - -; no known jump sources -Jumptable_c870c: ; c870c (32:470c) - dw Functionc8712 - dw Functionc8732 - dw Functionc875d - - -; no known jump sources -Functionc8712: ; c8712 (32:4712) - call Functionc80e5 - call Functionc8eca - ld a, $42 - call Functionc8ede - ld hl, $3 - add hl, bc - ld e, [hl] - ld d, $2 - call Functionc8f2e - ld h, $d2 - ld a, [$FF00+$c8] - ld l, a - ld [hl], $0 - dec l - ld [hl], $0 - ret - -; no known jump sources -Functionc8732: ; c8732 (32:4732) - ld a, [$FF00+$c8] - ld l, a - ld h, $d2 - ld e, l - ld d, h - dec de -.asm_c873a - ld a, [de] - dec de - ld [hld], a - ld a, [$FF00+$c7] - cp l - jr nz, .asm_c873a - ld [hl], $90 - ld a, [$FF00+$c8] - ld l, a - ld a, [hl] - cp $1 - jr c, .asm_c8752 - cp $90 - jr z, .asm_c8752 - ld [hl], $0 -.asm_c8752 - dec l - ld a, [hl] - cp $2 - ret c - cp $90 - ret z - ld [hl], $0 - ret - -; no known jump sources -Functionc875d: ; c875d (32:475d) - call Functionc8f0a - ret - -; no known jump sources -Functionc8761: ; c8761 (32:4761) - call Functionc80d7 ; ; ; call does not return - -; no known jump sources -Jumptable_c8764: ; c8764 (32:4764) - dw Functionc876a - dw Functionc8781 - dw Functionc87a3 - - -; no known jump sources -Functionc876a: ; c876a (32:476a) - call Functionc80e5 - call Functionc8eca - ld a, $42 - call Functionc8ede - ld a, [$FF00+$c8] - inc a - ld [$FF00+$c8], a - ld hl, $2 - add hl, bc - ld [hl], $1 - ret - -; no known jump sources -Functionc8781: ; c8781 (32:4781) - ld hl, $3 - add hl, bc - ld a, [hl] - and $3f - ld d, a - ld hl, $2 - add hl, bc - ld a, [hl] - cp d - ret nc - call Functionc901b - ld hl, $3 - add hl, bc - ld a, [hl] - rlca - rlca - and $3 - ld hl, $2 - add hl, bc - add [hl] - ld [hl], a - ret - -; no known jump sources -Functionc87a3: ; c87a3 (32:47a3) - call Functionc8f0a - ret - -; no known jump sources -Functionc87a7: ; c87a7 (32:47a7) - call Functionc80d7 ; ; ; call does not return - -; no known jump sources -Jumptable_c87aa: ; c87aa (32:47aa) - dw Functionc87b2 - dw Functionc87cf - dw Functionc87de - dw Functionc8801 - - -; no known jump sources -Functionc87b2: ; c87b2 (32:47b2) - call Functionc80e5 - call Functionc8eca - ld a, $42 - call Functionc8ede - ld a, [$FF00+$c8] - inc a - ld [$FF00+$c8], a - ld hl, $2 - add hl, bc - ld [hl], $2 - ld hl, $3 - add hl, bc - ld [hl], $0 - ret - -; no known jump sources -Functionc87cf: ; c87cf (32:47cf) - ld hl, $3 - add hl, bc - ld a, [hl] - and a - jr z, .asm_c87d9 - dec [hl] - ret -.asm_c87d9 - ld [hl], $10 - call Functionc80e5 - -; no known jump sources -Functionc87de: ; c87de (32:47de) - ld a, [$FF00+$c7] - ld l, a - ld a, [$FF00+$c8] - sub l - dec a - ld hl, $2 - add hl, bc - cp [hl] - ret c - ld a, [hl] - push af - and $7 - jr nz, .asm_c87f6 - ld hl, $1 - add hl, bc - dec [hl] -.asm_c87f6 - pop af - call Functionc901b - ld hl, $2 - add hl, bc - inc [hl] - inc [hl] - ret - -; no known jump sources -Functionc8801: ; c8801 (32:4801) - call Functionc8f0a - ret - -; no known jump sources -Functionc8805: ; c8805 (32:4805) - call Functionc80d7 ; ; ; call does not return - -; no known jump sources -Jumptable_c8808: ; c8808 (32:4808) - dw Functionc8810 - dw Functionc8869 - dw Functionc8888 - dw Functionc8833 - - -; no known jump sources -Functionc8810: ; c8810 (32:4810) - call Functionc80e5 - call Functionc8eca - ld a, $43 - call Functionc8ede - ld a, [$FF00+$c8] - inc a - ld [$FF00+$c8], a - ld hl, $3 - add hl, bc - ld [hl], $0 - call Functionc9038 - jr nz, .asm_c882f - ld a, $2 - jr .asm_c8831 -.asm_c882f - ld a, $fe -.asm_c8831 - ld [hl], a - ret - -; no known jump sources -Functionc8833: ; c8833 (32:4833) - call Functionc8f0a - ret - -; no known jump sources -Functionc8837: ; c8837 (32:4837) - call Functionc80d7 ; ; ; call does not return - -; no known jump sources -Jumptable_c883a: ; c883a (32:483a) - dw Functionc8842 - dw Functionc8869 - dw Functionc8888 - dw Functionc8865 - - -; no known jump sources -Functionc8842: ; c8842 (32:4842) - call Functionc80e5 - call Functionc8eca - ld a, $43 - call Functionc8ef4 - ld a, [$FF00+$c8] - inc a - ld [$FF00+$c8], a - ld hl, $3 - add hl, bc - ld [hl], $0 - call Functionc9038 - jr nz, .asm_c8861 - ld a, $2 - jr .asm_c8863 -.asm_c8861 - ld a, $fe -.asm_c8863 - ld [hl], a - ret - -; no known jump sources -Functionc8865: ; c8865 (32:4865) - call Functionc8f0a - ret - -; no known jump sources -Functionc8869: ; c8869 (32:4869) - ld hl, $3 - add hl, bc - ld a, [hl] - cp $f8 - jr z, .asm_c8876 - cp $8 - jr nz, .asm_c8879 -.asm_c8876 - call Functionc80e5 -.asm_c8879 - call Functionc88a5 - ld hl, $2 - add hl, bc - ld a, [hl] - ld hl, $3 - add hl, bc - add [hl] - ld [hl], a - ret - -; no known jump sources -Functionc8888: ; c8888 (32:4888) - ld hl, $3 - add hl, bc - ld a, [hl] - and a - jr nz, .asm_c8893 - call Functionc80e5 -.asm_c8893 - call Functionc88a5 - ld hl, $2 - add hl, bc - ld a, [hl] - xor $ff - inc a - ld hl, $3 - add hl, bc - add [hl] - ld [hl], a - ret - -; known jump sources: c8879 (32:4879), c8893 (32:4893) -Functionc88a5: ; c88a5 (32:48a5) - push af - ld a, [FXAnimIDHi] ; $cfc3 - or a - jr nz, .asm_c88b3 - ld a, [FXAnimIDLo] ; $cfc2 - cp $cd - jr z, .asm_c88b7 -.asm_c88b3 - pop af - jp Functionc900b -.asm_c88b7 - ld a, [$FF00+$c7] - ld d, a - ld a, [$FF00+$c8] - sub d - ld d, a - ld h, $d2 - ld a, [hSCY] ; $ff00+$d0 - or a - jr nz, .asm_c88d0 - ld a, [$FF00+$c7] - or a - jr z, .asm_c88d6 - dec a - ld l, a - ld [hl], $0 - jr .asm_c88d6 -.asm_c88d0 - ld a, [$FF00+$c8] - dec a - ld l, a - ld [hl], $0 -.asm_c88d6 - ld a, [hSCY] ; $ff00+$d0 - ld l, a - ld a, [$FF00+$c7] - sub l - jr nc, .asm_c88e0 - xor a - dec d -.asm_c88e0 - ld l, a - pop af -.asm_c88e2 - ld [hli], a - dec d - jr nz, .asm_c88e2 - ret - -; no known jump sources -Functionc88e7: ; c88e7 (32:48e7) - call Functionc80d7 ; ; ; call does not return - -; no known jump sources -Jumptable_c88ea: ; c88ea (32:48ea) - dw Functionc88f6 - dw Functionc8869 - dw Functionc8888 - dw Functionc88f2 - - -; no known jump sources -Functionc88f2: ; c88f2 (32:48f2) - call Functionc8f0a - ret - -; no known jump sources -Functionc88f6: ; c88f6 (32:48f6) - call Functionc80e5 - call Functionc8eca - ld a, $43 - call Functionc8ede - ld a, [$FF00+$c8] - inc a - ld [$FF00+$c8], a - ld hl, $3 - add hl, bc - ld [hl], $0 - call Functionc9038 - jr nz, .asm_c8915 - ld a, $fe - jr .asm_c8917 -.asm_c8915 - ld a, $2 -.asm_c8917 - ld [hl], a - ret - -; no known jump sources -Functionc8919: ; c8919 (32:4919) - call Functionc80d7 ; ; ; call does not return - -; no known jump sources -Jumptable_c891c: ; c891c (32:491c) - dw Functionc88f6 - dw Functionc8869 - dw Functionc8929 - dw Functionc8888 - dw Functionc8926 - - -; no known jump sources -Functionc8926: ; c8926 (32:4926) - call Functionc8f0a - -; no known jump sources -Functionc8929: ; c8929 (32:4929) - ret - -; no known jump sources -Functionc892a: ; c892a (32:492a) - call Functionc80d7 ; ; ; call does not return - -; no known jump sources -Jumptable_c892d: ; c892d (32:492d) - dw Functionc8933 - dw Functionc894a - dw Functionc8960 - - -; no known jump sources -Functionc8933: ; c8933 (32:4933) - call Functionc80e5 - call Functionc8eca - ld a, $43 - call Functionc8ede - ld a, [$FF00+$c8] - inc a - ld [$FF00+$c8], a - ld hl, $3 - add hl, bc - ld [hl], $0 - ret - -; no known jump sources -Functionc894a: ; c894a (32:494a) - ld hl, $3 - add hl, bc - ld a, [hl] - ld d, $8 - call Functionc905d - call Functionc900b - ld hl, $3 - add hl, bc - ld a, [hl] - add $4 - ld [hl], a - ret - -; no known jump sources -Functionc8960: ; c8960 (32:4960) - call Functionc8f0a - ret - -; no known jump sources -Functionc8964: ; c8964 (32:4964) - call Functionc80d7 ; ; ; call does not return - -; no known jump sources -Jumptable_c8967: ; c8967 (32:4967) - dw Functionc896d - dw Functionc8985 - dw Functionc89b1 - - -; no known jump sources -Functionc896d: ; c896d (32:496d) - call Functionc80e5 - call Functionc8eca - ld a, $43 - call Functionc8ede - ld a, [$FF00+$c8] - inc a - ld [$FF00+$c8], a - xor a - ld hl, $2 - add hl, bc - ld [hli], a - ld [hl], a - ret - -; no known jump sources -Functionc8985: ; c8985 (32:4985) - ld hl, $3 - add hl, bc - ld a, [hl] - ld d, $6 - call Functionc905d - push af - ld hl, $2 - add hl, bc - ld a, [hl] - ld d, $2 - call Functionc905d - ld e, a - pop af - add e - call Functionc900b - ld hl, $2 - add hl, bc - ld a, [hl] - add $8 - ld [hl], a - ld hl, $3 - add hl, bc - ld a, [hl] - add $2 - ld [hl], a - ret - -; no known jump sources -Functionc89b1: ; c89b1 (32:49b1) - call Functionc8f0a - ret - -; no known jump sources -Functionc89b5: ; c89b5 (32:49b5) - call Functionc80d7 ; ; ; call does not return - -; no known jump sources -Jumptable_c89b8: ; c89b8 (32:49b8) - dw Functionc89be - dw Functionc89ca - dw Functionc89da - - -; no known jump sources -Functionc89be: ; c89be (32:49be) - call Functionc80e5 - call Functionc8eca - ld a, $43 - call Functionc8ede - ret - -; no known jump sources -Functionc89ca: ; c89ca (32:49ca) - ld hl, $3 - add hl, bc - ld a, [hl] - cp $20 - ret nc - inc [hl] - ld d, a - ld e, $4 - call Functionc8f2e - ret - -; no known jump sources -Functionc89da: ; c89da (32:49da) - ld hl, $3 - add hl, bc - ld a, [hl] - and a - jr z, .asm_c89ea - dec [hl] - ld d, a - ld e, $4 - call Functionc8f2e - ret -.asm_c89ea - call Functionc8f0a - ret - -; no known jump sources -Functionc89ee: ; c89ee (32:49ee) - call Functionc80d7 ; ; ; call does not return - -; no known jump sources -Jumptable_c89f1: ; c89f1 (32:49f1) - dw Functionc89f7 - dw Functionc8a14 - dw Functionc8a36 - - -; no known jump sources -Functionc89f7: ; c89f7 (32:49f7) - call Functionc80e5 - call Functionc8eca - ld a, $42 - call Functionc8ef4 - ld a, [$FF00+$c8] - inc a - ld [$FF00+$c8], a - ld hl, $2 - add hl, bc - ld [hl], $1 - ld hl, $3 - add hl, bc - ld [hl], $20 - ret - -; no known jump sources -Functionc8a14: ; c8a14 (32:4a14) - ld hl, $2 - add hl, bc - ld a, [hl] - cp $38 - ret nc - push af - ld hl, $3 - add hl, bc - ld a, [hl] - ld d, $10 - call Functionc9066 - add $10 - ld d, a - pop af - add d - call Functionc901b - ld hl, $3 - add hl, bc - inc [hl] - inc [hl] - ret - -; no known jump sources -Functionc8a36: ; c8a36 (32:4a36) - call Functionc8f0a - ret - -; no known jump sources -Functionc8a3a: ; c8a3a (32:4a3a) - call Functionc80d7 ; ; ; call does not return - -; no known jump sources -Jumptable_c8a3d: ; c8a3d (32:4a3d) - dw Functionc8a49 - dw Functionc8a6f - dw Functionc8a70 - dw Functionc8a88 - dw Functionc8a6f - dw Functionc8aac - - -; no known jump sources -Functionc8a49: ; c8a49 (32:4a49) - call Functionc80e5 - ld a, $e4 - call Functionc8ecb - ld a, $47 - call Functionc8ede - ld a, [$FF00+$c8] - inc a - ld [$FF00+$c8], a - ld a, [$FF00+$c7] - ld l, a - ld h, $d2 -.asm_c8a60 - ld a, [$FF00+$c8] - cp l - jr z, .asm_c8a69 - xor a - ld [hli], a - jr .asm_c8a60 -.asm_c8a69 - ld hl, $3 - add hl, bc - ld [hl], $0 - -; no known jump sources -Functionc8a6f: ; c8a6f (32:4a6f) - ret - -; no known jump sources -Functionc8a70: ; c8a70 (32:4a70) - call Functionc8ab0 - jr nc, .asm_c8a79 - call Functionc8a9a - ret -.asm_c8a79 - ld hl, $3 - add hl, bc - ld [hl], $0 - ld a, [$FF00+$c7] - inc a - ld [$FF00+$c7], a - call Functionc80e5 - ret - -; no known jump sources -Functionc8a88: ; c8a88 (32:4a88) - call Functionc8ab0 - jr nc, .asm_c8a96 - call Functionc8a9a - ld a, [$FF00+$c8] - dec a - ld l, a - ld [hl], e - ret -.asm_c8a96 - call Functionc80e5 - ret - -; known jump sources: c8a75 (32:4a75), c8a8d (32:4a8d) -Functionc8a9a: ; c8a9a (32:4a9a) - ld e, a - ld a, [$FF00+$c7] - ld l, a - ld a, [$FF00+$c8] - sub l - srl a - ld h, $d2 -.asm_c8aa5 - ld [hl], e - inc hl - inc hl - dec a - jr nz, .asm_c8aa5 - ret - -; no known jump sources -Functionc8aac: ; c8aac (32:4aac) - call Functionc8f19 - ret - -; known jump sources: c8a70 (32:4a70), c8a88 (32:4a88) -Functionc8ab0: ; c8ab0 (32:4ab0) - ld hl, $3 - add hl, bc - ld a, [hl] - inc [hl] - srl a - srl a - srl a - ld e, a - ld d, $0 - ld hl, $4ac7 - add hl, de - ld a, [hl] - cp $ff - ret -; c8ac7 (32:4ac7) - -INCBIN "baserom.gbc",$c8ac7,$c8acc - $c8ac7 - -; no known jump sources -Functionc8acc: ; c8acc (32:4acc) - call Functionc80d7 ; ; ; call does not return - -; no known jump sources -Jumptable_c8acf: ; c8acf (32:4acf) - dw Functionc8ad3 - dw Functionc8ae5 - - -; no known jump sources -Functionc8ad3: ; c8ad3 (32:4ad3) - call Functionc80e5 - call Functionc8eca - ld a, $43 - call Functionc8ede - ld hl, $2 - add hl, bc - ld [hl], $40 - ret - -; no known jump sources -Functionc8ae5: ; c8ae5 (32:4ae5) - ld hl, $2 - add hl, bc - ld a, [hl] - and a - jr z, .asm_c8afc - dec [hl] - srl a - srl a - srl a - and $f - ld d, a - ld e, a - call Functionc8f2e - ret -.asm_c8afc - call Functionc8f0a - ret - -; no known jump sources -Functionc8b00: ; c8b00 (32:4b00) - ld a, [hCGB] ; $ff00+$e6 - and a - jr nz, asm_c8b7a - call Functionc80d7 ; ; ; call does not return - -; no known jump sources -Jumptable_c8b08: ; c8b08 (32:4b08) - dw Functionc8b0e - dw Functionc8b22 - dw Functionc8b60 - - -; no known jump sources -Functionc8b0e: ; c8b0e (32:4b0e) - call Functionc80e5 - ld a, $e4 - call Functionc8ecb - ld a, $47 - ld [hLCDStatCustom], a ; $ff00+$c6 - xor a - ld [$FF00+$c7], a - ld a, $60 - ld [$FF00+$c8], a - ret - -; no known jump sources -Functionc8b22: ; c8b22 (32:4b22) - ld hl, $3 - add hl, bc - ld a, [hl] - inc [hl] - ld e, a - and $7 - ret nz - ld a, e - and $18 - sla a - swap a - sla a - ld e, a - ld d, $0 - push bc - call Functionc9038 - jr nz, .asm_c8b4d - ld hl, $4bd8 - add hl, de - ld a, [hli] - ld [$cfc9], a - ld d, a - ld e, [hl] - ld bc, $2f30 - jr .asm_c8b5b -.asm_c8b4d - ld hl, $4be0 - add hl, de - ld d, [hl] - inc hl - ld a, [hl] - ld [$cfc9], a - ld e, a - ld bc, $3728 -.asm_c8b5b - call Functionc8b6c - pop bc - ret - -; no known jump sources -Functionc8b60: ; c8b60 (32:4b60) - call Functionc8f19 - ld a, $e4 - ld [$cfc7], a - ld [$cfc9], a - ret - -; known jump sources: c8b5b (32:4b5b) -Functionc8b6c: ; c8b6c (32:4b6c) - ld hl, $d200 -.asm_c8b6f - ld [hl], d - inc hl - dec b - jr nz, .asm_c8b6f -.asm_c8b74 - ld [hl], e - inc hl - dec c - jr nz, .asm_c8b74 - ret -asm_c8b7a: ; c8b7a (32:4b7a) - ld de, $4b81 - call Functionc80ca - jp [hl] -; c8b81 (32:4b81) - -INCBIN "baserom.gbc",$c8b81,$c8be8 - $c8b81 - -; no known jump sources -Functionc8be8: ; c8be8 (32:4be8) - ld de, $4bef - call Functionc8d77 - ret -; c8bef (32:4bef) - -INCBIN "baserom.gbc",$c8bef,$c8bf2 - $c8bef - -; no known jump sources -Functionc8bf2: ; c8bf2 (32:4bf2) - ld de, $4bf9 - call Functionc8d77 - ret -; c8bf9 (32:4bf9) - -INCBIN "baserom.gbc",$c8bf9,$c8bfd - $c8bf9 - -; no known jump sources -Functionc8bfd: ; c8bfd (32:4bfd) - ld de, $4c04 - call Functionc8d77 - ret -; c8c04 (32:4c04) - -INCBIN "baserom.gbc",$c8c04,$c8c08 - $c8c04 - -; no known jump sources -Functionc8c08: ; c8c08 (32:4c08) - ld de, $4c0f - call Functionc8d77 - ret -; c8c0f (32:4c0f) - -INCBIN "baserom.gbc",$c8c0f,$c8c14 - $c8c0f - -; no known jump sources -Functionc8c14: ; c8c14 (32:4c14) - ld de, $4c1b - call Functionc8d77 - ret -; c8c1b (32:4c1b) - -INCBIN "baserom.gbc",$c8c1b,$c8c20 - $c8c1b - -; no known jump sources -Functionc8c20: ; c8c20 (32:4c20) - ld de, $4c27 - call Functionc8d77 - ret -; c8c27 (32:4c27) - -INCBIN "baserom.gbc",$c8c27,$c8c30 - $c8c27 - -; no known jump sources -Functionc8c30: ; c8c30 (32:4c30) - ld de, $4c37 - call Functionc8d77 - ret -; c8c37 (32:4c37) - -INCBIN "baserom.gbc",$c8c37,$c8c3c - $c8c37 - -; no known jump sources -Functionc8c3c: ; c8c3c (32:4c3c) - ld de, $4c43 - call Functionc8d77 - ret -; c8c43 (32:4c43) - -INCBIN "baserom.gbc",$c8c43,$c8c55 - $c8c43 - -; no known jump sources -Functionc8c55: ; c8c55 (32:4c55) - ld de, $4c5c - call Functionc8d77 - ret -; c8c5c (32:4c5c) - -INCBIN "baserom.gbc",$c8c5c,$c8c61 - $c8c5c - -; no known jump sources -Functionc8c61: ; c8c61 (32:4c61) - call Functionc80d7 ; ; ; call does not return - -; no known jump sources -Jumptable_c8c64: ; c8c64 (32:4c64) - dw Functionc8c68 - dw Functionc8c85 - - -; no known jump sources -Functionc8c68: ; c8c68 (32:4c68) - call Functionc80e5 - call Functionc8eca - ld a, $43 - call Functionc8ede - ld a, [$FF00+$c8] - inc a - ld [$FF00+$c8], a - ld hl, $2 - add hl, bc - ld [hl], $1 - ld hl, $3 - add hl, bc - ld [hl], $20 - ret - -; no known jump sources -Functionc8c85: ; c8c85 (32:4c85) - ld hl, $3 - add hl, bc - ld a, [hl] - and a - jr z, .asm_c8c9e - dec [hl] - and $1 - ret nz - ld hl, $2 - add hl, bc - ld a, [hl] - xor $ff - inc a - ld [hl], a - call Functionc900b - ret -.asm_c8c9e - call Functionc8f0a - ret - -; no known jump sources -Functionc8ca2: ; c8ca2 (32:4ca2) - call Functionc80d7 ; ; ; call does not return - -; no known jump sources -Jumptable_c8ca5: ; c8ca5 (32:4ca5) - dw Functionc8cab - dw Functionc8cc3 - dw Functionc8cdd - - -; no known jump sources -Functionc8cab: ; c8cab (32:4cab) - call Functionc80e5 - call Functionc8eca - ld a, $43 - ld [hLCDStatCustom], a ; $ff00+$c6 - xor a - ld [$FF00+$c7], a - ld a, $37 - ld [$FF00+$c8], a - ld hl, $3 - add hl, bc - ld [hl], $0 - ret - -; no known jump sources -Functionc8cc3: ; c8cc3 (32:4cc3) - ld hl, $3 - add hl, bc - ld a, [hl] - cp $40 - jr nc, Functionc8cdd - ld d, $6 - call Functionc905d - call Functionc900b - ld hl, $3 - add hl, bc - ld a, [hl] - add $2 - ld [hl], a - ret - -; known jump sources: c8cca (32:4cca) -Functionc8cdd: ; c8cdd (32:4cdd) - call Functionc8f0a - ret - -; no known jump sources -Functionc8ce1: ; c8ce1 (32:4ce1) - call Functionc8d0b - jr c, .asm_c8cea - bit 7, a - jr z, .asm_c8ceb -.asm_c8cea - xor a -.asm_c8ceb - push af - call DelayFrame - pop af - ld [hSCY], a ; $ff00+$d0 - xor $ff - inc a - ld [$d314], a - ret - -; no known jump sources -Functionc8cf9: ; c8cf9 (32:4cf9) - call Functionc8d0b - jr nc, .asm_c8cff - xor a -.asm_c8cff - ld [hSCX], a ; $ff00+$cf - ret - -; no known jump sources -Functionc8d02: ; c8d02 (32:4d02) - call Functionc8d0b - jr nc, .asm_c8d08 - xor a -.asm_c8d08 - ld [hSCY], a ; $ff00+$d0 - ret - -; known jump sources: c8ce1 (32:4ce1), c8cf9 (32:4cf9), c8d02 (32:4d02) -Functionc8d0b: ; c8d0b (32:4d0b) - ld hl, $1 - add hl, bc - ld a, [hl] - and a - jr nz, .asm_c8d18 - call EndBattleBGEffect - scf - ret -.asm_c8d18 - dec [hl] - ld hl, $3 - add hl, bc - ld a, [hl] - and $f - jr z, .asm_c8d2a - dec [hl] - ld hl, $2 - add hl, bc - ld a, [hl] - and a - ret -.asm_c8d2a - ld a, [hl] - swap a - or [hl] - ld [hl], a - ld hl, $2 - add hl, bc - ld a, [hl] - xor $ff - inc a - ld [hl], a - and a - ret - -; no known jump sources -Functionc8d3a: ; c8d3a (32:4d3a) - ld hl, $3 - add hl, bc - ld a, [hl] - cp $40 - jr nc, .asm_c8d53 - ld d, $6 - call Functionc905d - ld [hSCX], a ; $ff00+$cf - ld hl, $3 - add hl, bc - ld a, [hl] - add $2 - ld [hl], a - ret -.asm_c8d53 - xor a - ld [hSCX], a ; $ff00+$cf - ret - -; known jump sources: c8130 (32:4130), c8144 (32:4144), c8158 (32:4158), c817e (32:417e), c8198 (32:4198), c81a8 (32:41a8) -Functionc8d57: ; c8d57 (32:4d57) - ld hl, $1 - add hl, bc - ld a, [hl] - and a - jr z, .asm_c8d69 - - dec [hl] - ld hl, $3 - add hl, bc - ld a, [hl] - call Functionc8eb2 - ret - -.asm_c8d69 - ld hl, $2 - add hl, bc - ld a, [hl] - ld hl, $1 - add hl, bc - ld [hl], a - call Functionc8eac - ret - -; known jump sources: c8beb (32:4beb), c8bf5 (32:4bf5), c8c00 (32:4c00), c8c0b (32:4c0b), c8c17 (32:4c17), c8c23 (32:4c23), c8c33 (32:4c33), c8c3f (32:4c3f), c8c58 (32:4c58) -Functionc8d77: ; c8d77 (32:4d77) - ld a, [hCGB] ; $ff00+$e6 - and a - jr nz, asm_c8dd4 - push de - ld de, Jumptable_c8d85 - call Functionc80ca - pop de - jp [hl] - -; no known jump sources -Jumptable_c8d85: ; c8d85 (32:4d85) - dw Functionc8d8b - dw Functionc8daa - dw Functionc8dc9 - - -; no known jump sources -Functionc8d8b: ; c8d8b (32:4d8b) - call Functionc80e5 - ld a, $e4 - call Functionc8ecb - ld a, $47 - call Functionc8ede - ld a, [$FF00+$c8] - inc a - ld [$FF00+$c8], a - ld hl, $3 - add hl, bc - ld a, [hl] - ld [hl], $0 - ld hl, $2 - add hl, bc - ld [hl], a - ret - -; no known jump sources -Functionc8daa: ; c8daa (32:4daa) - ld hl, $2 - add hl, bc - ld a, [hl] - and $f - jr z, .asm_c8db5 - dec [hl] - ret -.asm_c8db5 - ld a, [hl] - swap a - or [hl] - ld [hl], a - call Functionc8eac - jr c, .asm_c8dc3 - call Functionc900b - ret -.asm_c8dc3 - ld hl, $3 - add hl, bc - dec [hl] - ret - -; no known jump sources -Functionc8dc9: ; c8dc9 (32:4dc9) - call Functionc8f19 - ld a, $e4 - ld [rBGP], a ; $ff00+$47 - call EndBattleBGEffect - ret -asm_c8dd4: ; c8dd4 (32:4dd4) - push de - ld de, Jumptable_c8ddd - call Functionc80ca - pop de - jp [hl] - -; no known jump sources -Jumptable_c8ddd: ; c8ddd (32:4ddd) - dw Functionc8de7 - dw Functionc8e02 - dw Functionc8e21 - dw Functionc8e2a - dw Functionc8e49 - - -; no known jump sources -Functionc8de7: ; c8de7 (32:4de7) - call Functionc9038 - jr nz, .asm_c8df2 - call Functionc80e5 - call Functionc80e5 -.asm_c8df2 - call Functionc80e5 - ld hl, $3 - add hl, bc - ld a, [hl] - ld [hl], $0 - ld hl, $2 - add hl, bc - ld [hl], a - ret - -; no known jump sources -Functionc8e02: ; c8e02 (32:4e02) - ld hl, $2 - add hl, bc - ld a, [hl] - and $f - jr z, .asm_c8e0d - dec [hl] - ret -.asm_c8e0d - ld a, [hl] - swap a - or [hl] - ld [hl], a - call Functionc8eac - jr c, .asm_c8e1b - call Functionc8e52 - ret -.asm_c8e1b - ld hl, $3 - add hl, bc - dec [hl] - ret - -; no known jump sources -Functionc8e21: ; c8e21 (32:4e21) - ld a, $e4 - call Functionc8e52 - call EndBattleBGEffect - ret - -; no known jump sources -Functionc8e2a: ; c8e2a (32:4e2a) - ld hl, $2 - add hl, bc - ld a, [hl] - and $f - jr z, .asm_c8e35 - dec [hl] - ret -.asm_c8e35 - ld a, [hl] - swap a - or [hl] - ld [hl], a - call Functionc8eac - jr c, .asm_c8e43 - call Functionc8e7f - ret -.asm_c8e43 - ld hl, $3 - add hl, bc - dec [hl] - ret - -; no known jump sources -Functionc8e49: ; c8e49 (32:4e49) - ld a, $e4 - call Functionc8e7f - call EndBattleBGEffect - ret - -; known jump sources: c8e17 (32:4e17), c8e23 (32:4e23) -Functionc8e52: ; c8e52 (32:4e52) - ld h, a - ld a, [rSVBK] ; $ff00+$70 - push af - ld a, $5 - ld [rSVBK], a ; $ff00+$70 - ld a, h - push bc - push af - ld hl, BGPals ; $d080 - ld de, Unkn1Pals ; $d000 - ld b, a - ld c, $1 - call CopyPals - ld hl, $d0c8 - ld de, $d048 - pop af - ld b, a - ld c, $1 - call CopyPals - pop bc - pop af - ld [rSVBK], a ; $ff00+$70 - ld a, $1 - ld [hCGBPalUpdate], a ; $ff00+$e5 - ret - -; known jump sources: c8e3f (32:4e3f), c8e4b (32:4e4b) -Functionc8e7f: ; c8e7f (32:4e7f) - ld h, a - ld a, [rSVBK] ; $ff00+$70 - push af - ld a, $5 - ld [rSVBK], a ; $ff00+$70 - ld a, h - push bc - push af - ld hl, $d088 - ld de, $d008 - ld b, a - ld c, $1 - call CopyPals - ld hl, OBPals ; $d0c0 - ld de, MartPointer ; $d040 (aliases: Unkn2Pals) - pop af - ld b, a - ld c, $1 - call CopyPals - pop bc - pop af - ld [rSVBK], a ; $ff00+$70 - ld a, $1 - ld [hCGBPalUpdate], a ; $ff00+$e5 - ret - -; known jump sources: c8d73 (32:4d73), c8dba (32:4dba), c8e12 (32:4e12), c8e3a (32:4e3a) -Functionc8eac: ; c8eac (32:4eac) - ld hl, $3 - add hl, bc - ld a, [hl] - inc [hl] - -; known jump sources: c8d65 (32:4d65) -Functionc8eb2: ; c8eb2 (32:4eb2) - ld l, a - ld h, $0 - add hl, de - ld a, [hl] - cp $ff - jr z, .asm_c8ec8 - cp $fe - jr nz, .asm_c8ec6 - ld a, [de] - ld hl, $3 - add hl, bc - ld [hl], $0 -.asm_c8ec6 - and a - ret -.asm_c8ec8 - scf - ret - -; known jump sources: c85a5 (32:45a5), c85c2 (32:45c2), c85fc (32:45fc), c8613 (32:4613), c864b (32:464b), c866e (32:466e), c869b (32:469b), c8715 (32:4715), c876d (32:476d), c87b5 (32:47b5), c8813 (32:4813), c8845 (32:4845), c88f9 (32:48f9), c8936 (32:4936), c8970 (32:4970), c89c1 (32:49c1), c89fa (32:49fa), c8ad6 (32:4ad6), c8c6b (32:4c6b), c8cae (32:4cae), c8f0f (32:4f0f), c8f2a (32:4f2a) -Functionc8eca: ; c8eca (32:4eca) - xor a - -; known jump sources: c8a4e (32:4a4e), c8b13 (32:4b13), c8d90 (32:4d90) -Functionc8ecb: ; c8ecb (32:4ecb) - ld hl, CurMartEnd ; $d100 (aliases: LYOverrides) - ld e, $99 -.asm_c8ed0 - ld [hli], a - dec e - jr nz, .asm_c8ed0 - ld hl, $d200 - ld e, $91 -.asm_c8ed9 - ld [hli], a - dec e - jr nz, .asm_c8ed9 - ret - -; known jump sources: c85c7 (32:45c7), c8650 (32:4650), c8673 (32:4673), c86a0 (32:46a0), c871a (32:471a), c8772 (32:4772), c87ba (32:47ba), c8818 (32:4818), c88fe (32:48fe), c893b (32:493b), c8975 (32:4975), c89c6 (32:49c6), c8a53 (32:4a53), c8adb (32:4adb), c8c70 (32:4c70), c8d95 (32:4d95) -Functionc8ede: ; c8ede (32:4ede) - ld [hLCDStatCustom], a ; $ff00+$c6 - call Functionc9038 - jr nz, .asm_c8eea - ld de, $36 - jr .asm_c8eed -.asm_c8eea - ld de, $2f5e -.asm_c8eed - ld a, d - ld [$FF00+$c7], a - ld a, e - ld [$FF00+$c8], a - ret - -; known jump sources: c884a (32:484a), c89ff (32:49ff) -Functionc8ef4: ; c8ef4 (32:4ef4) - ld [hLCDStatCustom], a ; $ff00+$c6 - call Functionc9038 - jr nz, .asm_c8f00 - ld de, $36 - jr .asm_c8f03 -.asm_c8f00 - ld de, $2d5e -.asm_c8f03 - ld a, d - ld [$FF00+$c7], a - ld a, e - ld [$FF00+$c8], a - ret - -; known jump sources: c8561 (32:4561), c85be (32:45be), c8603 (32:4603), c863b (32:463b), c865e (32:465e), c8685 (32:4685), c8705 (32:4705), c875d (32:475d), c87a3 (32:47a3), c8801 (32:4801), c8833 (32:4833), c8865 (32:4865), c88f2 (32:48f2), c8926 (32:4926), c8960 (32:4960), c89b1 (32:49b1), c89ea (32:49ea), c8a36 (32:4a36), c8afc (32:4afc), c8c9e (32:4c9e), c8cdd (32:4cdd) -Functionc8f0a: ; c8f0a (32:4f0a) - xor a - ld [$FF00+$c7], a - ld [$FF00+$c8], a - call Functionc8eca - xor a - ld [hLCDStatCustom], a ; $ff00+$c6 - call EndBattleBGEffect - ret - -; known jump sources: c8aac (32:4aac), c8b60 (32:4b60), c8dc9 (32:4dc9) -Functionc8f19: ; c8f19 (32:4f19) - xor a - ld [hLCDStatCustom], a ; $ff00+$c6 - ld a, $e4 - ld [rBGP], a ; $ff00+$47 - ld [$cfc7], a - ld [$cfc9], a - ld [$FF00+$c7], a - ld [$FF00+$c8], a - call Functionc8eca - ret - -; known jump sources: c85b6 (32:45b6), c8624 (32:4624), c8656 (32:4656), c867d (32:467d), c8724 (32:4724), c89d6 (32:49d6), c89e6 (32:49e6), c8af8 (32:4af8) -Functionc8f2e: ; c8f2e (32:4f2e) - push bc - xor a - ld [$d419], a - ld a, e - ld [$d41a], a - ld a, d - ld [$d41b], a - ld a, $80 - ld [$d41c], a - ld bc, $d200 -.asm_c8f43 - ld a, [$FF00+$c7] - cp c - jr nc, .asm_c8f58 - ld a, [$FF00+$c8] - cp c - jr c, .asm_c8f58 - ld a, [$d41b] - ld d, a - ld a, [$d419] - call Functionc905d - ld [bc], a -.asm_c8f58 - inc bc - ld a, [$d41a] - ld hl, $d419 - add [hl] - ld [hl], a - ld hl, $d41c - dec [hl] - jr nz, .asm_c8f43 - pop bc - ret - -; known jump sources: c8554 (32:4554) -Functionc8f69: ; c8f69 (32:4f69) - push bc - xor a - ld [$d419], a - ld a, e - ld [$d41a], a - ld a, d - ld [$d41b], a - ld a, $40 - ld [$d41c], a - ld bc, $d422 -.asm_c8f7e - ld a, [$d41b] - ld d, a - ld a, [$d419] - call Functionc905d - ld [bc], a - inc bc - ld a, [$d41a] - ld hl, $d419 - add [hl] - ld [hl], a - ld hl, $d41c - dec [hl] - jr nz, .asm_c8f7e - pop bc - ret - -; known jump sources: c85f8 (32:45f8) -Functionc8f9a: ; c8f9a (32:4f9a) - push bc - ld [$d41c], a - ld a, e - ld [$d41a], a - ld a, d - ld [$d41b], a - call Functionc8fe4 - ld hl, $d200 - add hl, de - ld c, l - ld b, h -.asm_c8faf - ld a, [$d41c] - and a - jr z, .asm_c8fe1 - dec a - ld [$d41c], a - push af - ld a, [$d41b] - ld d, a - ld a, [$d41a] - push hl - call Functionc905d - ld e, a - pop hl - ld a, [$FF00+$c8] - cp c - jr c, .asm_c8fcf - ld a, e - ld [bc], a - inc bc -.asm_c8fcf - ld a, [$FF00+$c7] - cp l - jr nc, .asm_c8fd6 - ld [hl], e - dec hl -.asm_c8fd6 - ld a, [$d41a] - add $4 - ld [$d41a], a - pop af - jr .asm_c8faf -.asm_c8fe1 - pop bc - and a - ret - -; known jump sources: c8fa6 (32:4fa6) -Functionc8fe4: ; c8fe4 (32:4fe4) - ld a, [$FF00+$c7] - ld e, a - ld a, [$d419] - add e - ld e, a - ld d, $0 - ret - -; known jump sources: c85ba (32:45ba), c8637 (32:4637), c865a (32:465a), c8681 (32:4681) -Functionc8fef: ; c8fef (32:4fef) - push bc - ld a, [$FF00+$c7] - ld l, a - inc a - ld e, a - ld h, $d2 - ld d, h - ld a, [$FF00+$c8] - sub l - and a - jr z, .asm_c9009 - ld c, a - ld a, [hl] - push af -.asm_c9001 - ld a, [de] - inc de - ld [hli], a - dec c - jr nz, .asm_c9001 - pop af - ld [hl], a -.asm_c9009 - pop bc - ret - -; known jump sources: c88b4 (32:48b4), c8954 (32:4954), c899d (32:499d), c8c9a (32:4c9a), c8cd1 (32:4cd1), c8dbf (32:4dbf) -Functionc900b: ; c900b (32:500b) - push af - ld h, $d2 - ld a, [$FF00+$c7] - ld l, a - ld a, [$FF00+$c8] - sub l - ld d, a - pop af -.asm_c9016 - ld [hli], a - dec d - jr nz, .asm_c9016 - ret - -; known jump sources: c8790 (32:4790), c87f7 (32:47f7), c8a2c (32:4a2c) -Functionc901b: ; c901b (32:501b) - push af - ld e, a - ld a, [$FF00+$c7] - ld l, a - ld a, [$FF00+$c8] - sub l - sub e - ld d, a - ld h, $d2 - ld a, [$FF00+$c7] - ld l, a - ld a, $90 -.asm_c902c - ld [hli], a - dec e - jr nz, .asm_c902c - pop af - xor $ff -.asm_c9033 - ld [hli], a - dec d - jr nz, .asm_c9033 - ret - -; known jump sources: c81c4 (32:41c4), c81f3 (32:41f3), c8234 (32:4234), c825e (32:425e), c82a1 (32:42a1), c82cb (32:42cb), c8305 (32:4305), c837b (32:437b), c83a8 (32:43a8), c8826 (32:4826), c8858 (32:4858), c890c (32:490c), c8b39 (32:4b39), c8de7 (32:4de7), c8ee0 (32:4ee0), c8ef6 (32:4ef6) -Functionc9038: ; c9038 (32:5038) - ld hl, $2 - add hl, bc - ld a, [hBattleTurn] ; $ff00+$e4 - and $1 - xor [hl] - ret - -; known jump sources: c81ea (32:41ea), c8223 (32:4223), c8290 (32:4290) -Functionc9042: ; c9042 (32:5042) - ld hl, $2 - add hl, bc - ld a, [hBattleTurn] ; $ff00+$e4 - and $1 - xor [hl] - jr nz, .asm_c9053 - ld a, [EnemySubStatus3] ; $c66f - and $60 - ret -.asm_c9053 - ld a, [PlayerSubStatus3] ; $c66a - and $60 - ret - -; known jump sources: c8171 (32:4171), c818b (32:418b) -Functionc9059: ; c9059 (32:5059) - ld a, [hSGB] ; $ff00+$e7 - and a - ret - -; known jump sources: c86d6 (32:46d6), c8951 (32:4951), c898c (32:498c), c8997 (32:4997), c8cce (32:4cce), c8d45 (32:4d45), c8f54 (32:4f54), c8f85 (32:4f85), c8fc2 (32:4fc2) -Functionc905d: ; c905d (32:505d) - ld e, a - callab Functionce765 - ld a, e - ret - -; known jump sources: c8a24 (32:4a24) -Functionc9066: ; c9066 (32:5066) - ld e, a - callab Functionce76b - ld a, e - ret -; c906f (32:506f) - -BattleAnimations: ; c906f -INCBIN "baserom.gbc",$c906f,$cbcdd - $c906f +INCLUDE "battle/anims.asm" Functioncbcdd: ; cbcdd call Functioncbce5 @@ -87000,6586 +84066,9 @@ Predef39: ; cc0d5 ; cc0d6 -PlayBattleAnim: ; cc0d6 - - ld a, [rSVBK] - push af - - ld a, 5 - ld [rSVBK], a - - call _PlayBattleAnim - - pop af - ld [rSVBK], a - ret -; cc0e4 - -_PlayBattleAnim: ; cc0e4 - - ld c, 6 -.wait - call BattleAnimDelayFrame - dec c - jr nz, .wait - - call BattleAnimAssignPals - call BattleAnimRequestPals - call BattleAnimDelayFrame - - ld c, 1 - ld a, [rKEY1] - bit 7, a - jr nz, .asm_cc0ff - ld c, 3 - -.asm_cc0ff - ld hl, $ff9e - ld a, [hl] - push af - - ld [hl], c - call Functioncc11c - - pop af - ld [$ff9e], a - - ld a, $1 - ld [hBGMapMode], a - - call BattleAnimDelayFrame - call BattleAnimDelayFrame - call BattleAnimDelayFrame - call WaitSFX - ret -; cc11c - -Functioncc11c: ; cc11c - - ld a, [FXAnimIDHi] - and a - jr nz, .asm_cc156 - - callba CheckBattleScene - jr c, .asm_cc141 - - call BattleAnimClearHud - call Functioncc163 - - call BattleAnimAssignPals - call BattleAnimRequestPals - - xor a - ld [hSCX], a - ld [hSCY], a - call BattleAnimDelayFrame - call BattleAnimRestoreHuds - -.asm_cc141 - ld a, [$cfca] - and a - jr z, .asm_cc15f - - ld l, a - ld h, 0 - ld de, $10e - add hl, de - ld a, l - ld [FXAnimIDLo], a - ld a, h - ld [FXAnimIDHi], a - -.asm_cc156 - call WaitSFX - call Functioncc881 - call Functioncc163 - -.asm_cc15f - call Functioncc8f6 - ret -; cc163 - -Functioncc163: ; cc163 - - call Functioncc8d3 - -.playframe - call Functioncc25f - call Functionccb48 - call Functioncc96e - call Function3b0c - call BattleAnimRequestPals - -; Speed up Rollout's animation. - ld a, [FXAnimIDHi] - or a - jr nz, .asm_cc193 - - ld a, [FXAnimIDLo] - cp ROLLOUT - jr nz, .asm_cc193 - - ld a, $2e - ld b, 5 - ld de, 4 - ld hl, ActiveBGEffects -.asm_cc18c - cp [hl] - jr z, .asm_cc196 - add hl, de - dec b - jr nz, .asm_cc18c - -.asm_cc193 - call BattleAnimDelayFrame - -.asm_cc196 - ld a, [$d40f] - bit 0, a - jr z, .playframe - - call Functioncc23d - ret -; cc1a1 - -BattleAnimClearHud: ; cc1a1 - - call BattleAnimDelayFrame - call WaitTop - call ClearActorHud - ld a, $1 - ld [hBGMapMode], a - call BattleAnimDelayFrame - call BattleAnimDelayFrame - call BattleAnimDelayFrame - call WaitTop - ret -; cc1bb - -BattleAnimRestoreHuds: ; cc1bb - - call BattleAnimDelayFrame - call WaitTop - - ld a, [rSVBK] - push af - ld a, $1 - ld [rSVBK], a - - ld hl, UpdateBattleHuds - ld a, $f - rst FarCall - - pop af - ld [rSVBK], a - - ld a, $1 - ld [hBGMapMode], a - call BattleAnimDelayFrame - call BattleAnimDelayFrame - call BattleAnimDelayFrame - call WaitTop - ret -; cc1e2 - -BattleAnimRequestPals: ; cc1e2 - - ld a, [hCGB] - and a - ret z - - ld a, [rBGP] - ld b, a - ld a, [$cfc7] - cp b - call nz, Functioncc91a - - ld a, [rOBP0] - ld b, a - ld a, [$cfc8] - cp b - call nz, Functioncc94b - ret -; cc1fb - -BattleAnimDelayFrame: ; cc1fb -; Like DelayFrame but wastes battery life. - - ld a, 1 - ld [VBlankOccurred], a -.wait - ld a, [VBlankOccurred] - and a - jr nz, .wait - ret -; cc207 - -ClearActorHud: ; cc207 - - ld a, [hBattleTurn] - and a - jr z, .player - - hlcoord 1, 0 - lb bc, 4, 10 - call ClearBox - ret - -.player - hlcoord 9, 7 - lb bc, 5, 11 - call ClearBox - ret -; cc220 - -INCBIN "baserom.gbc",$cc220,$cc23d - $cc220 - - -Functioncc23d: ; cc23d - - ld a, [$d40f] - bit 3, a - jr z, .asm_cc254 - - ld hl, Sprites + 3 - ld c, (SpritesEnd - Sprites) / 4 -.asm_cc249 - ld a, [hl] - and $f0 - ld [hli], a - inc hl - inc hl - inc hl - dec c - jr nz, .asm_cc249 - ret - -.asm_cc254 - ld hl, Sprites - ld c, SpritesEnd - Sprites - xor a -.asm_cc25a - ld [hli], a - dec c - jr nz, .asm_cc25a - ret -; cc25f - -Functioncc25f: ; cc25f - call Functioncc267 - ret nc - call Functioncc275 - ret -; cc267 - -Functioncc267: ; cc267 - ld a, [$d412] - and a - jr z, .asm_cc273 - - dec a - ld [$d412], a - and a - ret - -.asm_cc273 - scf - ret -; cc275 - -Functioncc275: ; cc275 - - call GetBattleAnimByte - - cp $ff - jr nz, .asm_cc286 - -; Return from a subroutine. - ld hl, $d40f - bit 1, [hl] - jr nz, .asm_cc28e - - set 0, [hl] - ret - -.asm_cc286 - cp $d0 - jr nc, .asm_cc28e - - ld [$d412], a - ret - -.asm_cc28e - call Functioncc293 - - jr Functioncc275 -; cc293 - -Functioncc293: ; cc293 -; Execute battle animation command in [$d417]. - ld a, [$d417] - sub $d0 - - ld e, a - ld d, 0 - ld hl, BattleAnimCommands - add hl, de - add hl, de - - ld a, [hli] - ld h, [hl] - ld l, a - jp [hl] -; cc2a4 - - -; no known jump sources -BattleAnimCommands: ; cc2a4 (33:42a4) - dw BattleAnimCmd_D0 - dw BattleAnimCmd_D1 - dw BattleAnimCmd_D2 - dw BattleAnimCmd_D3 - dw BattleAnimCmd_D4 - dw BattleAnimCmd_D5 - dw BattleAnimCmd_D6 - dw BattleAnimCmd_D7 - dw BattleAnimCmd_D8 - dw BattleAnimCmd_D9 - dw BattleAnimCmd_DA - dw BattleAnimCmd_DB - dw BattleAnimCmd_DC - dw BattleAnimCmd_DD - dw BattleAnimCmd_DE - dw BattleAnimCmd_DF - dw BattleAnimCmd_E0 - dw BattleAnimCmd_E1 - dw BattleAnimCmd_E2 - dw BattleAnimCmd_E3 - dw BattleAnimCmd_E4 - dw BattleAnimCmd_E5 - dw BattleAnimCmd_E6 - dw BattleAnimCmd_E7 - dw BattleAnimCmd_E8 - dw BattleAnimCmd_E9 - dw BattleAnimCmd_EA - dw BattleAnimCmd_EB - dw BattleAnimCmd_EC - dw BattleAnimCmd_ED - dw BattleAnimCmd_EE - dw BattleAnimCmd_EF - dw BattleAnimCmd_F0 - dw BattleAnimCmd_F1 - dw BattleAnimCmd_F2 - dw BattleAnimCmd_F3 - dw BattleAnimCmd_F4 - dw BattleAnimCmd_F5 - dw BattleAnimCmd_F6 - dw BattleAnimCmd_F7 - dw BattleAnimCmd_F8 - dw BattleAnimCmd_F9 - dw BattleAnimCmd_FA - dw BattleAnimCmd_FB - dw BattleAnimCmd_FC - dw BattleAnimCmd_FD - dw BattleAnimCmd_FE - dw BattleAnimCmd_FF - - -; no known jump sources -BattleAnimCmd_EA: -BattleAnimCmd_EB: -BattleAnimCmd_EC: -BattleAnimCmd_ED: ; cc304 (33:4304) - ret - -; no known jump sources -BattleAnimCmd_FF: ; cc305 (33:4305) - ld hl, $d40f - res 1, [hl] - ld hl, $d413 - ld e, [hl] - inc hl - ld d, [hl] - ld hl, $d410 - ld [hl], e - inc hl - ld [hl], d - ret - -; no known jump sources -BattleAnimCmd_FE: ; cc317 (33:4317) - call GetBattleAnimByte - ld e, a - call GetBattleAnimByte - ld d, a - push de - ld hl, $d410 - ld e, [hl] - inc hl - ld d, [hl] - ld hl, $d413 - ld [hl], e - inc hl - ld [hl], d - pop de - ld hl, $d410 - ld [hl], e - inc hl - ld [hl], d - ld hl, $d40f - set 1, [hl] - ret - -; no known jump sources -BattleAnimCmd_FC: ; cc339 (33:4339) - call GetBattleAnimByte - ld e, a - call GetBattleAnimByte - ld d, a - ld hl, $d410 - ld [hl], e - inc hl - ld [hl], d - ret - -; no known jump sources -BattleAnimCmd_FD: ; cc348 (33:4348) - call GetBattleAnimByte - ld hl, $d40f - bit 2, [hl] - jr nz, .asm_cc35b - and a - jr z, .asm_cc363 - dec a - set 2, [hl] - ld [$d415], a -.asm_cc35b - ld hl, $d415 - ld a, [hl] - and a - jr z, .asm_cc372 - dec [hl] -.asm_cc363 - call GetBattleAnimByte - ld e, a - call GetBattleAnimByte - ld d, a - ld hl, $d410 - ld [hl], e - inc hl - ld [hl], d - ret -.asm_cc372 - ld hl, $d40f - res 2, [hl] - ld hl, $d410 - ld e, [hl] - inc hl - ld d, [hl] - inc de - inc de - ld [hl], d - dec hl - ld [hl], e - ret - -; no known jump sources -BattleAnimCmd_EF: ; cc383 (33:4383) - ld hl, $c689 - ld a, [hl] - and a - jr z, .asm_cc39a - - dec [hl] - call GetBattleAnimByte - ld e, a - call GetBattleAnimByte - ld d, a - ld hl, $d410 - ld [hl], e - inc hl - ld [hl], d - ret - -.asm_cc39a - ld hl, $d410 - ld e, [hl] - inc hl - ld d, [hl] - inc de - inc de - ld [hl], d - dec hl - ld [hl], e - ret - -; no known jump sources -BattleAnimCmd_F9: ; cc3a6 (33:43a6) - call GetBattleAnimByte - ld [$d416], a - ret - -; no known jump sources -BattleAnimCmd_FA: ; cc3ad (33:43ad) - ld hl, $d416 - inc [hl] - ret - -; no known jump sources -BattleAnimCmd_FB: ; cc3b2 (33:43b2) - call GetBattleAnimByte - ld hl, $d416 - cp [hl] - jr z, .jump - - ld hl, $d410 - ld e, [hl] - inc hl - ld d, [hl] - inc de - inc de - ld [hl], d - dec hl - ld [hl], e - ret - -.jump - call GetBattleAnimByte - ld e, a - call GetBattleAnimByte - ld d, a - ld hl, $d410 - ld [hl], e - inc hl - ld [hl], d - ret - -; no known jump sources -BattleAnimCmd_F8: ; cc3d6 (33:43d6) - call GetBattleAnimByte - ld hl, $c689 - cp [hl] - jr z, .jump - - ld hl, $d410 - ld e, [hl] - inc hl - ld d, [hl] - inc de - inc de - ld [hl], d - dec hl - ld [hl], e - ret - -.jump - call GetBattleAnimByte - ld e, a - call GetBattleAnimByte - ld d, a - ld hl, $d410 - ld [hl], e - inc hl - ld [hl], d - ret - -; no known jump sources -BattleAnimCmd_EE: ; cc3fa (33:43fa) - call GetBattleAnimByte - ld e, a - ld a, [$c689] - and e - jr nz, .jump - - ld hl, $d410 - ld e, [hl] - inc hl - ld d, [hl] - inc de - inc de - ld [hl], d - dec hl - ld [hl], e - ret -.jump - call GetBattleAnimByte - ld e, a - call GetBattleAnimByte - ld d, a - ld hl, $d410 - ld [hl], e - inc hl - ld [hl], d - ret - -; no known jump sources -BattleAnimCmd_D0: ; cc41f (33:441f) - call GetBattleAnimByte - ld [$d419], a - call GetBattleAnimByte - ld [$d41a], a - call GetBattleAnimByte - ld [$d41b], a - call GetBattleAnimByte - ld [$d41c], a - call Functioncc9a1 - ret - -; no known jump sources -BattleAnimCmd_F0: ; cc43b (33:443b) - call GetBattleAnimByte - ld [$d419], a - call GetBattleAnimByte - ld [$d41a], a - call GetBattleAnimByte - ld [$d41b], a - call GetBattleAnimByte - ld [$d41c], a - call Functionccb4f - ret - -; no known jump sources -BattleAnimCmd_F1: ; cc457 (33:4457) - call GetBattleAnimByte - ld [$cfc7], a - ret - -; no known jump sources -BattleAnimCmd_F2: ; cc45e (33:445e) - call GetBattleAnimByte - ld [$cfc8], a - ret - -; no known jump sources -BattleAnimCmd_F3: ; cc465 (33:4465) - call GetBattleAnimByte - ld [$cfc9], a - ret - -; no known jump sources -BattleAnimCmd_DF: ; cc46c (33:446c) - ld a, [hSGB] ; $ff00+$e7 - and a - ld a, $e0 - jr z, .asm_cc475 - ld a, $f0 -.asm_cc475 - ld [$cfc8], a - ret - -; no known jump sources -BattleAnimCmd_E5: ; cc479 (33:4479) - ld hl, $d30a - ld a, $a0 -.asm_cc47e - ld [hl], $0 - inc hl - dec a - jr nz, .asm_cc47e - ret - -; no known jump sources -BattleAnimCmd_D1: -BattleAnimCmd_D2: -BattleAnimCmd_D3: -BattleAnimCmd_D4: -BattleAnimCmd_D5: ; cc485 (33:4485) - ld a, [$d417] - and $f - ld c, a - ld hl, $d300 - xor a - ld [$d419], a -.asm_cc492 - ld a, [$d419] - cp $4f - ret nc - call GetBattleAnimByte - ld [hli], a - ld a, [$d419] - ld [hli], a - push bc - push hl - ld l, a - ld h, $0 - add hl, hl - add hl, hl - add hl, hl - add hl, hl - ld de, $8310 - add hl, de - ld a, [$d417] - call Functionce846 - ld a, [$d419] - add c - ld [$d419], a - pop hl - pop bc - dec c - jr nz, .asm_cc492 - ret - -; no known jump sources -BattleAnimCmd_D6: ; cc4c0 (33:44c0) - call GetBattleAnimByte - ld e, $a - ld bc, $d30a -.asm_cc4c8 - ld hl, $0 - add hl, bc - ld d, [hl] - ld a, [$d417] - cp d - jr z, .asm_cc4dd - ld hl, $18 - add hl, bc - ld c, l - ld b, h - dec e - jr nz, .asm_cc4c8 - ret -.asm_cc4dd - ld hl, $e - add hl, bc - inc [hl] - ret - -; no known jump sources -BattleAnimCmd_D8: ; cc4e3 (33:44e3) - call GetBattleAnimByte - ld e, $5 - ld bc, $d3fa -.asm_cc4eb - ld hl, $0 - add hl, bc - ld d, [hl] - ld a, [$d417] - cp d - jr z, .asm_cc500 - ld hl, $4 - add hl, bc - ld c, l - ld b, h - dec e - jr nz, .asm_cc4eb - ret -.asm_cc500 - ld hl, $1 - add hl, bc - inc [hl] - ret - -; no known jump sources -BattleAnimCmd_D7: ; cc506 (33:4506) - call GetBattleAnimByte - ld e, $a - ld bc, $d30a -.asm_cc50e - ld hl, $0 - add hl, bc - ld d, [hl] - ld a, [$d417] - cp d - jr z, .asm_cc523 - ld hl, $18 - add hl, bc - ld c, l - ld b, h - dec e - jr nz, .asm_cc50e - ret -.asm_cc523 - call GetBattleAnimByte - ld hl, $e - add hl, bc - ld [hl], a - ret - -; no known jump sources -BattleAnimCmd_D9: ; cc52c (33:452c) - - ld hl, $d300 -.asm_cc52f - ld a, [hl] - and a - jr z, .asm_cc537 - inc hl - inc hl - jr .asm_cc52f - -.asm_cc537 - ld a, $28 - ld [hli], a - ld a, $42 - ld [hli], a - ld a, $29 - ld [hli], a - ld a, $49 - ld [hl], a - - ld hl, $8730 - ld de, $9060 - ld a, $70 - ld [$d419], a - ld a, $7 - call Functioncc561 - ld de, $9310 - ld a, $60 - ld [$d419], a - ld a, $6 - call Functioncc561 - ret - -; known jump sources: cc550 (33:4550), cc55d (33:455d), cc57b (33:457b) -Functioncc561: ; cc561 (33:4561) - push af - push hl - push de - ld bc, $3301 - call Request2bpp - pop de - ld a, [$d419] - ld l, a - ld h, $0 - add hl, de - ld e, l - ld d, h - pop hl - ld bc, $10 - add hl, bc - pop af - dec a - jr nz, Functioncc561 - ret - -; no known jump sources -BattleAnimCmd_DA: ; cc57e (33:457e) - - ld hl, $d300 -.asm_cc581 - ld a, [hl] - and a - jr z, .asm_cc589 - inc hl - inc hl - jr .asm_cc581 - -.asm_cc589 - ld a, $28 - ld [hli], a - ld a, $35 - ld [hli], a - ld a, $29 - ld [hli], a - ld a, $43 - ld [hl], a - - ld hl, $8660 - ld de, $9050 - ld a, $70 - ld [$d419], a - ld a, $7 - call Functioncc5b3 - ld de, $9310 - ld a, $60 - ld [$d419], a - ld a, $6 - call Functioncc5b3 - ret - -; known jump sources: cc5a2 (33:45a2), cc5af (33:45af), cc5cd (33:45cd) -Functioncc5b3: ; cc5b3 (33:45b3) - push af - push hl - push de - ld bc, $3302 - call Request2bpp - pop de - ld a, [$d419] - ld l, a - ld h, $0 - add hl, de - ld e, l - ld d, h - pop hl - ld bc, $20 - add hl, bc - pop af - dec a - jr nz, Functioncc5b3 - ret - -; no known jump sources -BattleAnimCmd_DB: ; cc5d0 (33:45d0) - callab GetPokeBallWobble - ld a, c - ld [$d416], a - ret - -; no known jump sources -BattleAnimCmd_E7: ; cc5db (33:45db) - ret - -; no known jump sources -BattleAnimCmd_DC: ; cc5dc (33:45dc) - ld a, [rSVBK] ; $ff00+$70 - push af - ld a, 1 - ld [rSVBK], a ; $ff00+$70 - ld a, [CurPartySpecies] ; $d108 - push af - - ld a, [hBattleTurn] ; $ff00+$e4 - and a - jr z, .player - - ld a, [TempBattleMonSpecies] ; $d205 - ld [CurPartySpecies], a ; $d108 - ld hl, BattleMonDVs ; $c632 - ld a, PREDEF_GET_UNOWN_LETTER - call Predef - ld de, $8000 - ld a, $3c - call Predef - jr .done - -.player - ld a, [TempEnemyMonSpecies] ; $d204 - ld [CurPartySpecies], a ; $d108 - ld hl, EnemyMonDVs ; $d20c - ld a, PREDEF_GET_UNOWN_LETTER - call Predef - ld de, $8000 - ld a, $3d - call Predef - -.done - pop af - ld [CurPartySpecies], a ; $d108 - pop af - ld [rSVBK], a ; $ff00+$70 - ret - -; no known jump sources -BattleAnimCmd_E8: ; cc622 (33:4622) - - ld de, $8000 - ld a, [hBattleTurn] ; $ff00+$e4 - and a - jr z, .player - - ld hl, $9000 - ld b, 0 - ld c, $31 - call Request2bpp - ret - -.player - ld hl, $9310 - ld b, 0 - ld c, $24 - call Request2bpp - ret - -; no known jump sources -BattleAnimCmd_DD: ; cc640 (33:4640) - - ld a, [rSVBK] ; $ff00+$70 - push af - ld a, 1 - ld [rSVBK], a ; $ff00+$70 - xor a - call GetSRAMBank - -GetSubstitutePic: ; cc64c - - ld hl, $a000 - ld bc, $310 -.loop - xor a - ld [hli], a - dec bc - ld a, c - or b - jr nz, .loop - - ld a, [hBattleTurn] ; $ff00+$e4 - and a - jr z, .player - - ld hl, MonsterSpriteGFX - ld de, $a000 + $130 - call CopyMonsterSpriteTile - ld hl, MonsterSpriteGFX + $10 - ld de, $a000 + $1a0 - call CopyMonsterSpriteTile - ld hl, MonsterSpriteGFX + $20 - ld de, $a000 + $140 - call CopyMonsterSpriteTile - ld hl, MonsterSpriteGFX + $30 - ld de, $a000 + $1b0 - call CopyMonsterSpriteTile - - ld hl, $9000 - ld de, $a000 - lb bc, BANK(GetSubstitutePic), 7 * 7 - call Request2bpp - jr .done - -.player - ld hl, MonsterSpriteGFX + $40 - ld de, $a000 + $100 - call CopyMonsterSpriteTile - ld hl, MonsterSpriteGFX + $50 - ld de, $a000 + $160 - call CopyMonsterSpriteTile - ld hl, MonsterSpriteGFX + $60 - ld de, $a000 + $110 - call CopyMonsterSpriteTile - ld hl, MonsterSpriteGFX + $70 - ld de, $a000 + $170 - call CopyMonsterSpriteTile - - ld hl, $9310 - ld de, $a000 - lb bc, BANK(GetSubstitutePic), 6 * 6 - call Request2bpp - -.done - call CloseSRAM - pop af - ld [rSVBK], a ; $ff00+$70 - ret - -; known jump sources: cc663 (33:4663), cc66c (33:466c), cc675 (33:4675), cc67e (33:467e), cc695 (33:4695), cc69e (33:469e), cc6a7 (33:46a7), cc6b0 (33:46b0) -CopyMonsterSpriteTile: ; cc6c6 (33:46c6) - ld bc, $10 - ld a, BANK(MonsterSpriteGFX) - call FarCopyBytes - ret - -; no known jump sources -BattleAnimCmd_E2: ; cc6cf (33:46cf) - ld a, [rSVBK] ; $ff00+$70 - push af - ld a, $1 - ld [rSVBK], a ; $ff00+$70 - xor a - call GetSRAMBank - call GetMinimizePic - call Request2bpp - call CloseSRAM - pop af - ld [rSVBK], a ; $ff00+$70 - ret - -; known jump sources: cc6da (33:46da), cc740 (33:4740) -GetMinimizePic: ; cc6e7 (33:46e7) - ld hl, $a000 - ld bc, $310 -.loop - xor a - ld [hli], a - dec bc - ld a, c - or b - jr nz, .loop - - ld a, [hBattleTurn] ; $ff00+$e4 - and a - jr z, .player - - ld de, $a1a0 - call CopyMinimizePic - ld hl, $9000 - ld de, $a000 - lb bc, BANK(GetMinimizePic), $31 - ret - -.player - ld de, $a160 - call CopyMinimizePic - ld hl, $9310 - ld de, $a000 - lb bc, BANK(GetMinimizePic), $24 - ret - -; known jump sources: cc6fc (33:46fc), cc70c (33:470c) -CopyMinimizePic: ; cc719 (33:4719) - ld hl, MinimizePic - ld bc, $10 - ld a, BANK(MinimizePic) - call FarCopyBytes - ret -; cc725 (33:4725) - -MinimizePic: ; cc725 -INCBIN "gfx/battle/minimize.2bpp" -; cc735 - -; no known jump sources -BattleAnimCmd_E9: ; cc735 (33:4735) - ld a, [rSVBK] ; $ff00+$70 - push af - ld a, $1 - ld [rSVBK], a ; $ff00+$70 - xor a - call GetSRAMBank - call GetMinimizePic - ld hl, $8000 - call Request2bpp - call CloseSRAM - pop af - ld [rSVBK], a ; $ff00+$70 - ret - -; no known jump sources -BattleAnimCmd_DE: ; cc750 (33:4750) - ld a, [rSVBK] ; $ff00+$70 - push af - ld a, $1 - ld [rSVBK], a ; $ff00+$70 - - ld a, [CurPartySpecies] ; $d108 - push af - ld a, [hBattleTurn] ; $ff00+$e4 - and a - jr z, .player - - callab Function3f486 - jr .done - -.player - callab Function3f447 - -.done - pop af - ld [CurPartySpecies], a ; $d108 - pop af - ld [rSVBK], a ; $ff00+$70 - ret - -; no known jump sources -BattleAnimCmd_E6: ; cc776 (33:4776) - ld a, [rSVBK] ; $ff00+$70 - push af - ld a, $1 - ld [rSVBK], a ; $ff00+$70 - ld a, [CurPartySpecies] ; $d108 - push af - - ld a, [$c689] - ld [CurPartySpecies], a ; $d108 - - ld a, [hBattleTurn] ; $ff00+$e4 - and a - jr z, .player - - ld hl, BattleMonDVs ; $c632 - ld a, PREDEF_GET_UNOWN_LETTER - call Predef - ld de, $9000 - ld a, $3c - call Predef - jr .done - -.player - ld hl, EnemyMonDVs ; $d20c - ld a, PREDEF_GET_UNOWN_LETTER - call Predef - ld de, $9310 - ld a, $3d - call Predef - -.done - pop af - ld [CurPartySpecies], a ; $d108 - ld b, $1 - call GetSGBLayout - pop af - ld [rSVBK], a ; $ff00+$70 - ret - -; no known jump sources -BattleAnimCmd_E3: ; cc7bb (33:47bb) - xor a - ld [hOAMUpdate], a ; $ff00+$d8 - ret - -; no known jump sources -BattleAnimCmd_E4: ; cc7bf (33:47bf) - ld a, $1 - ld [hOAMUpdate], a ; $ff00+$d8 - ret - -; no known jump sources -BattleAnimCmd_F4: ; cc7c4 (33:47c4) - ld hl, $d40f - set 3, [hl] - ret - -; no known jump sources -BattleAnimCmd_F5: ; cc7ca (33:47ca) - ret - -; no known jump sources -BattleAnimCmd_F6: ; cc7cb (33:47cb) - ret - -; no known jump sources -BattleAnimCmd_F7: ; cc7cc (33:47cc) - ret - -; no known jump sources -BattleAnimCmd_E0: ; cc7cd (33:47cd) - call GetBattleAnimByte - ld e, a - srl a - srl a - ld [$c2be], a - call Functioncc7fc - and 3 - ld [CryTracks], a ; $c2bd - - ld e, a - ld d, 0 - ld hl, Datacc7f8 - add hl, de - ld a, [hl] - ld [$c2bc], a - - call GetBattleAnimByte - ld e, a - ld d, 0 - callab PlayStereoSFX - - ret -; cc7f8 (33:47f8) - -Datacc7f8: ; cc7f8 - db $f0, $0f, $f0, $0f -; cc7fc - -; known jump sources: cc7d8 (33:47d8) -Functioncc7fc: ; cc7fc (33:47fc) - ld a, [hBattleTurn] ; $ff00+$e4 - and a - jr nz, .enemy - - ld a, e - ret - -.enemy - ld a, e - xor 1 - ret - -; no known jump sources -BattleAnimCmd_E1: ; cc807 (33:4807) - call GetBattleAnimByte - and 3 - ld e, a - ld d, 0 - ld hl, Datacc871 - add hl, de - add hl, de - add hl, de - add hl, de - - ld a, [rSVBK] ; $ff00+$70 - push af - ld a, 1 - ld [rSVBK], a ; $ff00+$70 - - ld a, [hBattleTurn] ; $ff00+$e4 - and a - jr nz, .enemy - - ld a, $f0 - ld [CryTracks], a ; $c2bd - ld a, [BattleMonSpecies] ; $c62c - jr .asm_cc834 - -.enemy - ld a, $0f - ld [CryTracks], a ; $c2bd - ld a, [EnemyMonSpecies] ; $d206 - -.asm_cc834 - push hl - call Function37f3 - pop hl - jr c, .done - - ld a, [hli] - ld c, a - ld a, [hli] - ld b, a - - push hl - ld hl, CryPitch ; $c2b0 - ld a, [hli] - ld h, [hl] - ld l, a - add hl, bc - ld a, l - ld [CryPitch], a ; $c2b0 - ld a, h - ld [CryEcho], a ; $c2b1 - pop hl - - ld a, [hli] - ld c, a - ld b, [hl] - ld hl, CryLength ; $c2b2 - ld a, [hli] - ld h, [hl] - ld l, a - add hl, bc - - ld a, l - ld [CryLength], a ; $c2b2 - ld a, h - ld [CryLength + 1], a - ld a, 1 - ld [$c2bc], a - - callab PlayCry - -.done - pop af - ld [rSVBK], a ; $ff00+$70 - ret -; cc871 (33:4871) - -Datacc871: ; cc871 -; +pitch, +echo, +length - db $00, $00, $c0, $00 - db $00, $00, $40, $00 - db $00, $00, $00, $00 - db $00, $00, $00, $00 -; cc881 - - -Functioncc881: ; cc881 - ld a, [$cfca] - cp $1 - jr z, .asm_cc88b - cp $4 - ret nz - -.asm_cc88b - ld a, [TypeModifier] - and $7f - ret z - - cp 10 - ld de, SFX_DAMAGE - jr z, .play - - ld de, SFX_SUPER_EFFECTIVE - jr nc, .play - - ld de, SFX_NOT_VERY_EFFECTIVE - -.play - call PlaySFX - ret -; cc8a4 - -BattleAnimAssignPals: ; cc8a4 - ld a, [hCGB] - and a - jr nz, .asm_cc8be - ld a, [hSGB] - and a - ld a, $e0 - jr z, .asm_cc8b2 - ld a, $f0 - -.asm_cc8b2 - ld [$cfc8], a - ld a, $e4 - ld [$cfc7], a - ld [$cfc9], a - ret - -.asm_cc8be - ld a, $e4 - ld [$cfc7], a - ld [$cfc8], a - ld [$cfc9], a - call DmgToCgbBGPals - ld de, $e4e4 - call DmgToCgbObjPals - ret -; cc8d3 - -Functioncc8d3: ; cc8d3 - ld hl, LYOverrides - ld bc, $0354 -.asm_cc8d9 - ld [hl], $0 - inc hl - dec bc - ld a, c - or b - jr nz, .asm_cc8d9 - ld hl, FXAnimIDLo - ld e, [hl] - inc hl - ld d, [hl] - ld hl, $506f - add hl, de - add hl, de - call Function3ae1 - call BattleAnimAssignPals - call BattleAnimDelayFrame - ret -; cc8f6 - -Functioncc8f6: ; cc8f6 - call WaitTop - ld a, $e4 - ld [$cfc7], a - ld [$cfc8], a - ld [$cfc9], a - call DmgToCgbBGPals - ld de, $e4e4 - call DmgToCgbObjPals - xor a - ld [hSCX], a - ld [hSCY], a - call BattleAnimDelayFrame - ld a, $1 - ld [hBGMapMode], a - ret -; cc91a - -Functioncc91a: ; cc91a - ld [rBGP], a - ld a, [hCGB] - and a - ret z - ld a, [rSVBK] - push af - ld a, $5 - ld [rSVBK], a - ld hl, $d080 - ld de, $d000 - ld a, [rBGP] - ld b, a - ld c, $7 - call CopyPals - ld hl, $d0c0 - ld de, MartPointer - ld a, [rBGP] - ld b, a - ld c, $2 - call CopyPals - pop af - ld [rSVBK], a - ld a, $1 - ld [hCGBPalUpdate], a - ret -; cc94b - -Functioncc94b: ; cc94b - ld [rOBP0], a - ld a, [hCGB] - and a - ret z - ld a, [rSVBK] - push af - ld a, $5 - ld [rSVBK], a - ld hl, $d0d0 - ld de, $d050 - ld a, [rOBP0] - ld b, a - ld c, $2 - call CopyPals - pop af - ld [rSVBK], a - ld a, $1 - ld [hCGBPalUpdate], a - ret -; cc96e - -Functioncc96e: ; cc96e - ld a, $0 - ld [$d418], a - ld hl, $d30a - ld e, $a -.asm_cc978 - ld a, [hl] - and a - jr z, .asm_cc98a - ld c, l - ld b, h - push hl - push de - call Functionccfbe - call Functioncca09 - pop de - pop hl - jr c, .asm_cc9a0 - -.asm_cc98a - ld bc, $0018 - add hl, bc - dec e - jr nz, .asm_cc978 - ld a, [$d418] - ld l, a - ld h, $c4 -.asm_cc997 - ld a, l - cp $a0 - jr nc, .asm_cc9a0 - xor a - ld [hli], a - jr .asm_cc997 - -.asm_cc9a0 - ret -; cc9a1 - - -; known jump sources: cc437 (33:4437) -Functioncc9a1: ; cc9a1 (33:49a1) - ld hl, $d30a - ld e, $a -.asm_cc9a6 - ld a, [hl] - and a - jr z, .asm_cc9b3 - ld bc, $18 - add hl, bc - dec e - jr nz, .asm_cc9a6 - scf - ret -.asm_cc9b3 - ld c, l - ld b, h - ld hl, $d40e - inc [hl] - call Functioncc9c4 - ret - - -Functioncc9bd: ; cc9bd - ld hl, $0000 - add hl, bc - ld [hl], $0 - ret -; cc9c4 - - -; known jump sources: cc9b9 (33:49b9) -Functioncc9c4: ; cc9c4 (33:49c4) - ld a, [$d419] - ld e, a - ld d, $0 - ld hl, $4b56 - add hl, de - add hl, de - add hl, de - add hl, de - add hl, de - add hl, de - ld e, l - ld d, h - ld hl, $0 - add hl, bc - ld a, [$d40e] - ld [hli], a - ld a, [de] - inc de - ld [hli], a - ld a, [de] - inc de - ld [hli], a - ld a, [de] - inc de - ld [hli], a - ld a, [de] - inc de - ld [hli], a - ld a, [de] - inc de - ld [hli], a - ld a, [de] - call Functionccb31 - ld [hli], a - ld a, [$d41a] - ld [hli], a - ld a, [$d41b] - ld [hli], a - xor a - ld [hli], a - ld [hli], a - ld a, [$d41c] - ld [hli], a - xor a - ld [hli], a - dec a - ld [hli], a - xor a - ld [hli], a - ld [hli], a - ld [hl], a - ret - - -Functioncca09: ; cca09 - call Functionccaaa - call Functionce7d1 - cp EGG - jp z, .asm_ccaa5 - cp NUM_POKEMON + 1 - jp z, .asm_ccaa2 - push af - ld hl, $d419 - ld a, [$d420] - xor [hl] - and $e0 - ld [hl], a - pop af - push bc - call Functionce83c - ld a, [$d41b] - add [hl] - ld [$d41b], a - inc hl - ld a, [hli] - ld c, a - ld a, [hli] - ld h, [hl] - ld l, a - ld a, [$d418] - ld e, a - ld d, $c4 -.asm_cca3c - ld a, [$d41d] - ld b, a - ld a, [$d41f] - add b - ld b, a - push hl - ld a, [hl] - ld hl, $d419 - bit 6, [hl] - jr z, .asm_cca53 - add $8 - xor $ff - inc a - -.asm_cca53 - pop hl - add b - ld [de], a - inc hl - inc de - ld a, [$d41c] - ld b, a - ld a, [$d41e] - add b - ld b, a - push hl - ld a, [hl] - ld hl, $d419 - bit 5, [hl] - jr z, .asm_cca6f - add $8 - xor $ff - inc a - -.asm_cca6f - pop hl - add b - ld [de], a - inc hl - inc de - ld a, [$d41b] - add $31 - add [hl] - ld [de], a - inc hl - inc de - ld a, [$d419] - ld b, a - ld a, [hl] - xor b - and $e0 - ld b, a - ld a, [hl] - and $10 - or b - ld b, a - ld a, [OTPartyMon6Nickname] - and $f - or b - ld [de], a - inc hl - inc de - ld a, e - ld [$d418], a - cp $a0 - jr nc, .asm_ccaa7 - dec c - jr nz, .asm_cca3c - pop bc - jr .asm_ccaa5 - -.asm_ccaa2 - call Functioncc9bd - -.asm_ccaa5 - and a - ret - -.asm_ccaa7 - pop bc - scf - ret -; ccaaa - -Functionccaaa: ; ccaaa - ld hl, $0001 - add hl, bc - ld a, [hl] - and $80 - ld [$d419], a - xor a - ld [$d420], a - ld hl, $0005 - add hl, bc - ld a, [hl] - ld [OTPartyMon6Nickname], a - ld hl, $0002 - add hl, bc - ld a, [hl] - ld [$d41a], a - ld hl, $0006 - add hl, bc - ld a, [hli] - ld [$d41b], a - ld a, [hli] - ld [$d41c], a - ld a, [hli] - ld [$d41d], a - ld a, [hli] - ld [$d41e], a - ld a, [hli] - ld [$d41f], a - ld a, [hBattleTurn] - and a - ret z - ld hl, $0001 - add hl, bc - ld a, [hl] - ld [$d419], a - bit 0, [hl] - ret z - ld hl, $0007 - add hl, bc - ld a, [hli] - ld d, a - ld a, $b4 - sub d - ld [$d41c], a - ld a, [hli] - ld d, a - ld a, [$d41a] - cp $ff - jr nz, .asm_ccb09 - ld a, $28 - add d - jr .asm_ccb26 - -.asm_ccb09 - sub d - push af - ld a, [FXAnimIDHi] - or a - jr nz, .asm_ccb25 - ld a, [FXAnimIDLo] - cp $86 - jr z, .asm_ccb20 - cp $87 - jr z, .asm_ccb20 - cp $d0 - jr nz, .asm_ccb25 - -.asm_ccb20 - pop af - sub $8 - jr .asm_ccb26 - -.asm_ccb25 - pop af - -.asm_ccb26 - ld [$d41d], a - ld a, [hli] - xor $ff - inc a - ld [$d41e], a - ret -; ccb31 - - -; known jump sources: cc9ed (33:49ed) -Functionccb31: ; ccb31 (33:4b31) - push hl - push bc - ld hl, $d300 - ld b, a - ld c, $5 -.asm_ccb39 - ld a, [hli] - cp b - jr z, .asm_ccb44 - inc hl - dec c - jr nz, .asm_ccb39 - xor a - jr .asm_ccb45 -.asm_ccb44 - ld a, [hl] -.asm_ccb45 - pop bc - pop hl - ret - - -Functionccb48: ; ccb48 - callab Functionc8000 - ret -; ccb4f - - -; known jump sources: cc453 (33:4453) -Functionccb4f: ; ccb4f (33:4b4f) - callab Functionc801a - ret -; ccb56 (33:4b56) - -INCBIN "baserom.gbc",$ccb56,$ccfbe - $ccb56 - - -Functionccfbe: ; ccfbe - ld hl, $0004 - add hl, bc - ld e, [hl] - ld d, $0 - ld hl, $4fce - add hl, de - add hl, de - ld a, [hli] - ld h, [hl] - ld l, a - jp [hl] -; ccfce - - -; no known jump sources -Jumptable_ccfce: ; ccfce (33:4fce) - dw Functioncd06e - dw Functioncd12a - dw Functioncd146 - dw Functioncd0e3 - dw Functioncd0a6 - dw Functioncd081 - dw Functioncd079 - dw Functioncd2be - dw Functioncd306 - dw Functioncd3ae - dw Functioncd3f2 - dw Functioncd478 - dw Functioncd5e9 - dw Functioncd66a - dw Functioncd6e3 - dw Functioncd71a - dw Functioncd284 - dw Functioncd777 - dw Functioncd15c - dw Functioncd212 - dw Functioncd7a4 - dw Functioncd80c - dw Functioncd824 - dw Functioncd89a - dw Functioncd900 - dw Functioncd954 - dw Functioncdafa - dw Functioncdb06 - dw Functioncda0a - dw Functioncdb80 - dw Functioncdca6 - dw Functioncda31 - dw Functioncda4d - dw Functioncdcc3 - dw Functioncdd2a - dw Functioncdd90 - dw Functioncddf9 - dw Functioncde28 - dw Functioncde54 - dw Functioncde6b - dw Functioncde89 - dw Functioncdedd - dw Functioncdf59 - dw Functionce063 - dw Functionce0c5 - dw Functioncdf1b - dw Functionce10e - dw Functionce15c - dw Functionce1e7 - dw Functionce226 - dw Functionce255 - dw Functionce2cc - dw Functioncdf8c - dw Functionce00b - dw Functionce2fd - dw Functionce35f - dw Functionce389 - dw Functionce3b4 - dw Functionce3d2 - dw Functionce3ff - dw Functioncdfcb - dw Functionce416 - dw Functionce43a - dw Functioncdad6 - dw Functionce49c - dw Functionce4dc - dw Functionce1b0 - dw Functionce508 - dw Functionce532 - dw Functionce55b - dw Functionce593 - dw Functionce5b4 - dw Functionce5dc - dw Functionce5ee - dw Functionce62f - dw Functionce688 - dw Functionce6b3 - dw Functionce6d2 - dw Functioncd58a - dw Functionce6bf - - -; no known jump sources -Functioncd06e: ; cd06e (33:506e) - call Functionce71e ; ; ; call does not return - -; no known jump sources -Jumptable_cd071: ; cd071 (33:5071) - dw Functioncd078 - dw Functioncd075 - - -; no known jump sources -Functioncd075: ; cd075 (33:5075) - call Functioncc9bd - -; no known jump sources -Functioncd078: ; cd078 (33:5078) - ret - -; no known jump sources -Functioncd079: ; cd079 (33:5079) - call Functioncd081 - ret c - call Functioncc9bd - ret - -; known jump sources: cd079 (33:5079), cd17e (33:517e), cd22b (33:522b) -Functioncd081: ; cd081 (33:5081) - ld hl, $7 - add hl, bc - ld a, [hl] - cp $88 - ret nc - add $2 - ld [hl], a - ld hl, $8 - add hl, bc - dec [hl] - ld hl, $f - add hl, bc - ld a, [hl] - dec [hl] - ld hl, $b - add hl, bc - ld d, [hl] - call Functionce734 - ld hl, $a - add hl, bc - ld [hl], a - scf - ret - -; no known jump sources -Functioncd0a6: ; cd0a6 (33:50a6) - ld hl, $7 - add hl, bc - ld a, [hl] - cp $88 - jr c, .asm_cd0b3 - call Functioncc9bd - ret -.asm_cd0b3 - add $2 - ld [hl], a - ld hl, $8 - add hl, bc - dec [hl] - ld hl, $f - add hl, bc - ld a, [hl] - inc [hl] - inc [hl] - inc [hl] - inc [hl] - ld d, $10 - push af - push de - call Functionce734 - ld hl, $a - add hl, bc - ld [hl], a - pop de - pop af - call Functionce732 - ld hl, $9 - add hl, bc - sra a - sra a - sra a - sra a - ld [hl], a - ret - -; known jump sources: cdafa (33:5afa) -Functioncd0e3: ; cd0e3 (33:50e3) - call Functionce71e ; ; ; call does not return - -; no known jump sources -Jumptable_cd0e6: ; cd0e6 (33:50e6) - dw Functioncd0ea - dw Functioncd106 - - -; no known jump sources -Functioncd0ea: ; cd0ea (33:50ea) - call Functionce72c - ld hl, $b - add hl, bc - bit 7, [hl] - ld a, $0 - jr z, .asm_cd0f9 - ld a, $20 -.asm_cd0f9 - ld hl, $f - add hl, bc - ld [hl], a - ld hl, $b - add hl, bc - ld a, [hl] - and $7f - ld [hl], a - -; no known jump sources -Functioncd106: ; cd106 (33:5106) - ld hl, $f - add hl, bc - ld a, [hl] - ld hl, $b - add hl, bc - ld d, [hl] - push af - push de - call Functionce734 - ld hl, $a - add hl, bc - ld [hl], a - pop de - pop af - call Functionce732 - ld hl, $9 - add hl, bc - ld [hl], a - ld hl, $f - add hl, bc - inc [hl] - ret - -; no known jump sources -Functioncd12a: ; cd12a (33:512a) - call Functionce71e ; ; ; call does not return - -; no known jump sources -Jumptable_cd12d: ; cd12d (33:512d) - dw Functioncd135 - dw Functioncd131 - - -; no known jump sources -Functioncd131: ; cd131 (33:5131) - call Functioncc9bd - ret - -; no known jump sources -Functioncd135: ; cd135 (33:5135) - ld hl, $7 - add hl, bc - ld a, [hl] - cp $84 - ret nc - ld hl, $b - add hl, bc - ld a, [hl] - call Functionce70a - ret - -; no known jump sources -Functioncd146: ; cd146 (33:5146) - ld hl, $7 - add hl, bc - ld a, [hl] - cp $84 - jr nc, .asm_cd158 - ld hl, $b - add hl, bc - ld a, [hl] - call Functionce70a - ret -.asm_cd158 - call Functioncc9bd - ret - -; no known jump sources -Functioncd15c: ; cd15c (33:515c) - call Functionce71e ; ; ; call does not return - -; no known jump sources -Jumptable_cd15f: ; cd15f (33:515f) - dw Functioncd177 - dw Functioncd17e - dw Functioncd1dc - dw Functioncd196 - dw Functioncd1a7 - dw Functioncd1dc - dw Functioncd1d2 - dw Functioncd1dd - dw Functioncd1ee - dw Functioncd1dc - dw Functioncd1ee - dw Functioncd20e - - -; no known jump sources -Functioncd177: ; cd177 (33:5177) - call Functioncd249 - call Functionce72c - ret - -; no known jump sources -Functioncd17e: ; cd17e (33:517e) - call Functioncd081 - ret c - ld hl, $a - add hl, bc - ld a, [hl] - ld hl, $8 - add hl, bc - add [hl] - ld [hl], a - ld a, $b - call Functionce7bf - call Functionce72c - ret - -; no known jump sources -Functioncd196: ; cd196 (33:5196) - call Functionce72c - ld a, $9 - call Functionce7bf - ld hl, $f - add hl, bc - ld [hl], $0 - inc hl - ld [hl], $10 - -; no known jump sources -Functioncd1a7: ; cd1a7 (33:51a7) - ld hl, $f - add hl, bc - ld a, [hli] - ld d, [hl] - call Functionce734 - ld hl, $a - add hl, bc - ld [hl], a - ld hl, $f - add hl, bc - ld a, [hl] - dec a - ld [hl], a - and $1f - ret nz - ld [hl], a - ld hl, $10 - add hl, bc - ld a, [hl] - sub $4 - ld [hl], a - ret nz - ld a, $c - call Functionce7bf - call Functionce72c - ret - -; no known jump sources -Functioncd1d2: ; cd1d2 (33:51d2) - ld a, $d - call Functionce7bf - ld hl, $e - add hl, bc - dec [hl] - -; no known jump sources -Functioncd1dc: ; cd1dc (33:51dc) - ret - -; no known jump sources -Functioncd1dd: ; cd1dd (33:51dd) - call Functioncd249 - ld a, $a - call Functionce7bf - call Functionce72c - ld hl, $10 - add hl, bc - ld [hl], $20 - -; no known jump sources -Functioncd1ee: ; cd1ee (33:51ee) - ld hl, $f - add hl, bc - ld a, [hli] - ld d, [hl] - call Functionce734 - ld hl, $a - add hl, bc - ld [hl], a - ld hl, $f - add hl, bc - ld a, [hl] - dec a - ld [hl], a - and $1f - jr z, Functioncd20e - and $f - ret nz - call Functionce72c - ret - -; known jump sources: cd205 (33:5205) -Functioncd20e: ; cd20e (33:520e) - call Functioncc9bd - ret - -; no known jump sources -Functioncd212: ; cd212 (33:5212) - call Functionce71e ; ; ; call does not return - -; no known jump sources -Jumptable_cd215: ; cd215 (33:5215) - dw Functioncd21b - dw Functioncd222 - dw Functioncd232 - - -; no known jump sources -Functioncd21b: ; cd21b (33:521b) - call Functioncd249 - call Functionce72c - ret - -; no known jump sources -Functioncd222: ; cd222 (33:5222) - ld hl, $7 - add hl, bc - ld a, [hl] - cp $70 - jr nc, .asm_cd22f - call Functioncd081 - ret -.asm_cd22f - call Functionce72c - -; no known jump sources -Functioncd232: ; cd232 (33:5232) - ld hl, $8 - add hl, bc - ld a, [hl] - cp $80 - jr nc, .asm_cd245 - add $4 - ld [hl], a - ld hl, $7 - add hl, bc - dec [hl] - dec [hl] - ret -.asm_cd245 - call Functioncc9bd - ret - -; known jump sources: cd177 (33:5177), cd1dd (33:51dd), cd21b (33:521b) -Functioncd249: ; cd249 (33:5249) - ld hl, $526c - ld a, [rSVBK] ; $ff00+$70 - push af - ld a, $1 - ld [rSVBK], a ; $ff00+$70 - ld a, [CurItem] ; $d106 - ld e, a - pop af - ld [rSVBK], a ; $ff00+$70 -.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, $5 - add hl, bc - ld [hl], a - ret -; cd26c (33:526c) - -INCBIN "baserom.gbc",$cd26c,$cd284 - $cd26c - -; no known jump sources -Functioncd284: ; cd284 (33:5284) - call Functionce71e ; ; ; call does not return - -; no known jump sources -Jumptable_cd287: ; cd287 (33:5287) - dw Functioncd291 - dw Functioncd2a0 - dw Functioncd2b1 - dw Functioncd2b5 - dw Functioncd2bd - - -; no known jump sources -Functioncd291: ; cd291 (33:5291) - ld hl, $b - add hl, bc - ld a, [hl] - swap a - and $f - ld hl, $e - add hl, bc - ld [hl], a - ret - -; no known jump sources -Functioncd2a0: ; cd2a0 (33:52a0) - ld hl, $7 - add hl, bc - ld a, [hl] - cp $88 - ret nc - ld hl, $b - add hl, bc - ld a, [hl] - call Functionce70a - ret - -; no known jump sources -Functioncd2b1: ; cd2b1 (33:52b1) - call Functioncc9bd - ret - -; no known jump sources -Functioncd2b5: ; cd2b5 (33:52b5) - call Functionce72c - ld a, $f - call Functionce7bf - -; no known jump sources -Functioncd2bd: ; cd2bd (33:52bd) - ret - -; no known jump sources -Functioncd2be: ; cd2be (33:52be) - call Functionce71e ; ; ; call does not return - -; no known jump sources -Jumptable_cd2c1: ; cd2c1 (33:52c1) - dw Functioncd2c5 - dw Functioncd2d1 - - -; no known jump sources -Functioncd2c5: ; cd2c5 (33:52c5) - call Functionce72c - ld hl, $f - add hl, bc - ld [hl], $30 - inc hl - ld [hl], $48 - -; no known jump sources -Functioncd2d1: ; cd2d1 (33:52d1) - ld hl, $f - add hl, bc - ld a, [hli] - ld d, [hl] - call Functionce734 - ld hl, $a - add hl, bc - ld [hl], a - ld hl, $f - add hl, bc - inc [hl] - ld a, [hl] - and $3f - ret nz - ld hl, $f - add hl, bc - ld [hl], $20 - ld hl, $10 - add hl, bc - ld a, [hl] - ld hl, $b - add hl, bc - sub [hl] - jr z, .asm_cd302 - jr c, .asm_cd302 - ld hl, $10 - add hl, bc - ld [hl], a - ret -.asm_cd302 - call Functioncc9bd - ret - -; no known jump sources -Functioncd306: ; cd306 (33:5306) - call Functionce71e ; ; ; call does not return - -; no known jump sources -Jumptable_cd309: ; cd309 (33:5309) - dw Functioncd311 - dw Functioncd321 - dw Functioncd32a - dw Functioncd37d - - -; no known jump sources -Functioncd311: ; cd311 (33:5311) - ld hl, $7 - add hl, bc - ld a, [hl] - cp $80 - jr nc, .asm_cd31e - call Functioncd38e - ret -.asm_cd31e - call Functionce72c - -; no known jump sources -Functioncd321: ; cd321 (33:5321) - call Functionce72c - ld hl, $f - add hl, bc - ld [hl], $0 - -; no known jump sources -Functioncd32a: ; cd32a (33:532a) - ld hl, $f - add hl, bc - ld a, [hl] - cp $40 - jr nc, .asm_cd363 - ld hl, $f - add hl, bc - ld a, [hl] - ld d, $18 - call Functionce732 - sub $18 - sra a - ld hl, $a - add hl, bc - ld [hl], a - ld hl, $f - add hl, bc - ld a, [hl] - ld d, $18 - call Functionce734 - ld hl, $9 - add hl, bc - ld [hl], a - ld hl, $b - add hl, bc - ld a, [hl] - and $f - ld hl, $f - add hl, bc - add [hl] - ld [hl], a - ret -.asm_cd363 - ld hl, $b - 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, $e - add hl, bc - dec [hl] - ret -.asm_cd37a - call Functionce72c - -; no known jump sources -Functioncd37d: ; cd37d (33:537d) - ld hl, $7 - add hl, bc - ld a, [hl] - cp $b0 - jr c, .asm_cd38a - call Functioncc9bd - ret -.asm_cd38a - call Functioncd38e - ret - -; known jump sources: cd31a (33:531a), cd38a (33:538a) -Functioncd38e: ; cd38e (33:538e) - ld hl, $b - add hl, bc - ld a, [hl] - and $f - ld hl, $7 - add hl, bc - add [hl] - ld [hl], a - ld hl, $b - add hl, bc - ld a, [hl] - and $f - ld e, a - srl e - ld hl, $8 - add hl, bc -.asm_cd3a9 - dec [hl] - dec e - jr nz, .asm_cd3a9 - ret - -; no known jump sources -Functioncd3ae: ; cd3ae (33:53ae) - call Functionce71e ; ; ; call does not return - -; no known jump sources -Jumptable_cd3b1: ; cd3b1 (33:53b1) - dw Functioncd3b7 - dw Functioncd3cc - dw Functioncd3ee - - -; no known jump sources -Functioncd3b7: ; cd3b7 (33:53b7) - call Functionce72c - ld hl, $f - add hl, bc - ld [hl], $0 - ld hl, $b - add hl, bc - ld a, [hl] - and $f - ld hl, $9 - add hl, bc - ld [hl], a - -; no known jump sources -Functioncd3cc: ; cd3cc (33:53cc) - ld hl, $f - add hl, bc - ld a, [hl] - and a - jr z, .asm_cd3d6 - dec [hl] - ret -.asm_cd3d6 - ld hl, $b - add hl, bc - ld a, [hl] - swap a - and $f - ld hl, $f - add hl, bc - ld [hl], a - ld hl, $9 - add hl, bc - ld a, [hl] - xor $ff - inc a - ld [hl], a - ret - -; no known jump sources -Functioncd3ee: ; cd3ee (33:53ee) - call Functioncc9bd - ret - -; no known jump sources -Functioncd3f2: ; cd3f2 (33:53f2) - call Functionce71e ; ; ; call does not return - -; no known jump sources -Jumptable_cd3f5: ; cd3f5 (33:53f5) - dw Functioncd409 - dw Functioncd45c - dw Functioncd467 - dw Functioncd472 - dw Functioncd462 - dw Functioncd46d - dw Functioncd477 - dw Functioncd41d - dw Functioncd437 - dw Functioncd458 - - -; no known jump sources -Functioncd409: ; cd409 (33:5409) - ld hl, $b - add hl, bc - ld a, [hl] - ld hl, $e - add hl, bc - ld [hl], a - cp $7 - jr z, Functioncd41d - ld a, $11 - call Functionce7bf - ret - -; known jump sources: cd415 (33:5415) -Functioncd41d: ; cd41d (33:541d) - ld hl, $7 - add hl, bc - ld a, [hl] - cp $88 - jr nc, .asm_cd42f - add $2 - ld [hl], a - ld hl, $8 - add hl, bc - dec [hl] - ret -.asm_cd42f - call Functionce72c - ld a, $10 - call Functionce7bf - -; no known jump sources -Functioncd437: ; cd437 (33:5437) - ld hl, $f - add hl, bc - ld a, [hl] - ld d, $10 - push af - push de - call Functionce734 - ld hl, $a - add hl, bc - ld [hl], a - pop de - pop af - call Functionce732 - ld hl, $9 - add hl, bc - ld [hl], a - ld hl, $f - add hl, bc - inc [hl] - ret - -; no known jump sources -Functioncd458: ; cd458 (33:5458) - call Functioncc9bd - ret - -; no known jump sources -Functioncd45c: ; cd45c (33:545c) - ld hl, $a - add hl, bc - dec [hl] - ret - -; no known jump sources -Functioncd462: ; cd462 (33:5462) - ld hl, $a - add hl, bc - inc [hl] - -; no known jump sources -Functioncd467: ; cd467 (33:5467) - ld hl, $9 - add hl, bc - dec [hl] - ret - -; no known jump sources -Functioncd46d: ; cd46d (33:546d) - ld hl, $a - add hl, bc - inc [hl] - -; no known jump sources -Functioncd472: ; cd472 (33:5472) - ld hl, $9 - add hl, bc - inc [hl] - -; no known jump sources -Functioncd477: ; cd477 (33:5477) - ret - -; no known jump sources -Functioncd478: ; cd478 (33:5478) - call Functionce71e ; ; ; call does not return - -; no known jump sources -Jumptable_cd47b: ; cd47b (33:547b) - dw Functioncd48d - dw Functioncd496 - dw Functioncd4ee - dw Functioncd53a - dw Functioncd545 - dw Functioncd545 - dw Functioncd545 - dw Functioncd545 - dw Functioncd549 - - -; no known jump sources -Functioncd48d: ; cd48d (33:548d) - call Functionce72c - ld hl, $f - add hl, bc - ld [hl], $40 - -; no known jump sources -Functioncd496: ; cd496 (33:5496) - ld hl, $f - add hl, bc - ld a, [hl] - cp $30 - jr nc, .asm_cd4bc - call Functionce72c - xor a - ld hl, $f - add hl, bc - ld [hli], a - ld [hl], a - ld a, $17 - call Functionce7bf - ld hl, $b - add hl, bc - bit 6, [hl] - ret z - ld hl, $d - add hl, bc - ld [hl], $5 - ret -.asm_cd4bc - ld hl, $b - add hl, bc - ld a, [hl] - and $3f - ld d, a - ld hl, $f - add hl, bc - ld a, [hl] - dec [hl] - call Functionce734 - ld hl, $a - add hl, bc - ld [hl], a - call Functioncd557 - ld hl, $10 - add hl, bc - ld a, [hl] - ld hl, $7 - add hl, bc - ld h, [hl] - ld l, a - add hl, de - ld e, l - ld d, h - ld hl, $7 - add hl, bc - ld [hl], d - ld hl, $10 - add hl, bc - ld [hl], e - ret - -; no known jump sources -Functioncd4ee: ; cd4ee (33:54ee) - ld hl, $a - add hl, bc - ld a, [hl] - cp $20 - jr nz, .asm_cd4fb - call Functioncc9bd - ret -.asm_cd4fb - ld hl, $f - add hl, bc - ld a, [hl] - ld d, $10 - call Functionce734 - ld hl, $9 - add hl, bc - ld [hl], a - ld hl, $b - add hl, bc - bit 6, [hl] - jr nz, .asm_cd519 - ld hl, $f - add hl, bc - inc [hl] - jr .asm_cd51e -.asm_cd519 - ld hl, $f - add hl, bc - dec [hl] -.asm_cd51e - ld de, $80 - ld hl, $10 - add hl, bc - ld a, [hl] - ld hl, $a - add hl, bc - ld h, [hl] - ld l, a - add hl, de - ld e, l - ld d, h - ld hl, $a - add hl, bc - ld [hl], d - ld hl, $10 - add hl, bc - ld [hl], e - ret - -; no known jump sources -Functioncd53a: ; cd53a (33:553a) - ld a, $16 - call Functionce7bf - ld hl, $1 - add hl, bc - res 5, [hl] - -; no known jump sources -Functioncd545: ; cd545 (33:5545) - call Functionce72c - ret - -; no known jump sources -Functioncd549: ; cd549 (33:5549) - ld hl, $7 - add hl, bc - ld a, [hl] - cp $c0 - ret nc - ld a, $8 - call Functionce70a - ret - -; known jump sources: cd4d2 (33:54d2), cd5cd (33:55cd) -Functioncd557: ; cd557 (33:5557) - ld hl, $b - add hl, bc - ld a, [hl] - bit 7, a - jr nz, .asm_cd574 - cp $20 - jr nc, .asm_cd570 - cp $18 - jr nc, .asm_cd56c - ld de, $200 - ret -.asm_cd56c - ld de, $180 - ret -.asm_cd570 - ld de, $100 - ret -.asm_cd574 - and $3f - cp $20 - jr nc, .asm_cd586 - cp $18 - jr nc, .asm_cd582 - ld de, $fe00 - ret -.asm_cd582 - ld de, $fe80 - ret -.asm_cd586 - ld de, rJOYP ; $ff00 - ret - -; no known jump sources -Functioncd58a: ; cd58a (33:558a) - call Functionce71e ; ; ; call does not return - -; no known jump sources -Jumptable_cd58d: ; cd58d (33:558d) - dw Functioncd591 - dw Functioncd5aa - - -; no known jump sources -Functioncd591: ; cd591 (33:5591) - ld hl, $b - add hl, bc - ld a, [hl] - and $40 - rlca - rlca - add $19 - ld hl, $3 - add hl, bc - ld [hl], a - call Functionce72c - ld hl, $f - add hl, bc - ld [hl], $40 - -; no known jump sources -Functioncd5aa: ; cd5aa (33:55aa) - ld hl, $f - add hl, bc - ld a, [hl] - cp $30 - jr nc, .asm_cd5b7 - call Functioncc9bd - ret -.asm_cd5b7 - ld hl, $b - add hl, bc - ld a, [hl] - and $3f - ld d, a - ld hl, $f - add hl, bc - ld a, [hl] - dec [hl] - call Functionce734 - ld hl, $a - add hl, bc - ld [hl], a - call Functioncd557 - ld hl, $10 - add hl, bc - ld a, [hl] - ld hl, $7 - add hl, bc - ld h, [hl] - ld l, a - add hl, de - ld e, l - ld d, h - ld hl, $7 - add hl, bc - ld [hl], d - ld hl, $10 - add hl, bc - ld [hl], e - ret - -; no known jump sources -Functioncd5e9: ; cd5e9 (33:55e9) - call Functionce71e ; ; ; call does not return - -; no known jump sources -Jumptable_cd5ec: ; cd5ec (33:55ec) - dw Functioncd5f2 - dw Functioncd5fb - dw Functioncd61b - - -; no known jump sources -Functioncd5f2: ; cd5f2 (33:55f2) - call Functionce72c - ld hl, $f - add hl, bc - ld [hl], $c - -; no known jump sources -Functioncd5fb: ; cd5fb (33:55fb) - ld hl, $f - add hl, bc - ld a, [hl] - and a - jr z, .asm_cd60d - dec [hl] - ld hl, $b - add hl, bc - ld a, [hl] - call Functionce70a - ret -.asm_cd60d - call Functionce72c - ld hl, $f - add hl, bc - ld [hl], $0 - ld a, $22 - call Functionce7bf - -; no known jump sources -Functioncd61b: ; cd61b (33:561b) - ld hl, $7 - add hl, bc - ld a, [hl] - cp $98 - jr nc, .asm_cd63f - ld hl, $f - add hl, bc - ld a, [hl] - ld hl, $7 - add hl, bc - ld h, [hl] - ld l, a - ld de, $60 - add hl, de - ld e, l - ld d, h - ld hl, $f - add hl, bc - ld [hl], e - ld hl, $7 - add hl, bc - ld [hl], d -.asm_cd63f - ld hl, $8 - add hl, bc - ld a, [hl] - cp $20 - ret c - ld hl, $b - add hl, bc - ld a, [hl] - and $f0 - ld e, a - ld d, $ff - ld hl, $10 - add hl, bc - ld a, [hl] - ld hl, $8 - add hl, bc - ld h, [hl] - ld l, a - add hl, de - ld e, l - ld d, h - ld hl, $10 - add hl, bc - ld [hl], e - ld hl, $8 - add hl, bc - ld [hl], d - ret - -; no known jump sources -Functioncd66a: ; cd66a (33:566a) - call Functionce71e ; ; ; call does not return - -; no known jump sources -Jumptable_cd66d: ; cd66d (33:566d) - dw Functioncd677 - dw Functioncd687 - dw Functioncd6c5 - dw Functioncd6c6 - dw Functioncd6d6 - - -; no known jump sources -Functioncd677: ; cd677 (33:5677) - call Functionce72c - ld a, $42 - ld [hLCDStatCustom], a ; $ff00+$c6 - ld a, $58 - ld [$FF00+$c7], a - ld a, $5e - ld [$FF00+$c8], a - ret - -; no known jump sources -Functioncd687: ; cd687 (33:5687) - ld hl, $b - add hl, bc - ld e, [hl] - ld hl, $8 - add hl, bc - ld a, [hl] - cp e - jr nc, .asm_cd69b - call Functionce72c - xor a - ld [$FF00+$c7], a - ret -.asm_cd69b - dec a - ld [hl], a - ld hl, $f - add hl, bc - ld a, [hl] - ld d, $10 - call Functionce734 - ld hl, $a - add hl, bc - ld [hl], a - ld hl, $8 - add hl, bc - add [hl] - sub $10 - ret c - ld [$FF00+$c7], a - ld hl, $9 - add hl, bc - ld a, [hl] - inc a - and $7 - ld [hl], a - ld hl, $f - add hl, bc - inc [hl] - inc [hl] - -; no known jump sources -Functioncd6c5: ; cd6c5 (33:56c5) - ret - -; no known jump sources -Functioncd6c6: ; cd6c6 (33:56c6) - ld hl, $8 - add hl, bc - ld a, [hl] - cp $70 - jr c, asm_cd6da - xor a - ld [hLCDStatCustom], a ; $ff00+$c6 - ld [$FF00+$c7], a - ld [$FF00+$c8], a - -; no known jump sources -Functioncd6d6: ; cd6d6 (33:56d6) - call Functioncc9bd - ret -asm_cd6da: ; cd6da (33:56da) - inc a - inc a - ld [hl], a - sub $10 - ret c - ld [$FF00+$c7], a - ret - -; no known jump sources -Functioncd6e3: ; cd6e3 (33:56e3) - call Functionce71e ; ; ; call does not return - -; no known jump sources -Jumptable_cd6e6: ; cd6e6 (33:56e6) - dw Functioncd6ea - dw Functioncd6f7 - - -; no known jump sources -Functioncd6ea: ; cd6ea (33:56ea) - call Functionce72c - ld hl, $b - add hl, bc - ld a, $24 - add [hl] - call Functionce7bf - -; no known jump sources -Functioncd6f7: ; cd6f7 (33:56f7) - ld hl, $7 - add hl, bc - ld a, [hl] - cp $b8 - jr c, .asm_cd704 - call Functioncc9bd - ret -.asm_cd704 - ld a, $2 - call Functionce70a - ld hl, $f - add hl, bc - ld a, [hl] - dec [hl] - ld d, $8 - call Functionce734 - ld hl, $a - add hl, bc - ld [hl], a - ret - -; no known jump sources -Functioncd71a: ; cd71a (33:571a) - call Functionce71e ; ; ; call does not return - -; no known jump sources -Jumptable_cd71d: ; cd71d (33:571d) - dw Functioncd725 - dw Functioncd728 - dw Functioncd763 - dw Functioncd776 - - -; no known jump sources -Functioncd725: ; cd725 (33:5725) - call Functionce72c - -; no known jump sources -Functioncd728: ; cd728 (33:5728) - ld hl, $8 - add hl, bc - ld a, [hl] - cp $30 - jr c, .asm_cd747 - ld a, $2 - call Functionce70a - ld hl, $f - add hl, bc - ld a, [hl] - dec [hl] - ld d, $8 - call Functionce734 - ld hl, $a - add hl, bc - ld [hl], a - ret -.asm_cd747 - call Functionce72c - ld a, $28 - call Functionce7bf - ld hl, $a - add hl, bc - ld [hl], $0 - ld hl, $8 - add hl, bc - ld [hl], $30 - ld hl, $1 - add hl, bc - ld a, [hl] - and $1 - ld [hl], a - -; no known jump sources -Functioncd763: ; cd763 (33:5763) - ld hl, $a - add hl, bc - ld a, [hl] - cp $18 - jr nc, .asm_cd76e - inc [hl] - ret -.asm_cd76e - call Functionce72c - ld a, $29 - call Functionce7bf - -; no known jump sources -Functioncd776: ; cd776 (33:5776) - ret - -; no known jump sources -Functioncd777: ; cd777 (33:5777) - ld hl, $a - add hl, bc - ld a, [hl] - cp $38 - jr c, .asm_cd784 - call Functioncc9bd - ret -.asm_cd784 - ld a, [hl] - ld hl, $f - add hl, bc - ld l, [hl] - ld h, a - ld de, $80 - add hl, de - ld e, l - ld d, h - ld hl, $f - add hl, bc - ld [hl], e - ld hl, $a - add hl, bc - ld [hl], d - ld hl, $9 - add hl, bc - ld a, [hl] - xor $10 - ld [hl], a - ret - -; no known jump sources -Functioncd7a4: ; cd7a4 (33:57a4) - call Functionce71e ; ; ; call does not return - -; no known jump sources -Jumptable_cd7a7: ; cd7a7 (33:57a7) - dw Functioncd7ab - dw Functioncd7d2 - - -; no known jump sources -Functioncd7ab: ; cd7ab (33:57ab) - call Functionce72c - ld hl, $b - add hl, bc - ld a, [hl] - and $f0 - ld hl, $10 - add hl, bc - ld [hl], a - ld hl, $b - add hl, bc - ld a, [hl] - and $f - sla a - sla a - sla a - ld hl, $f - add hl, bc - ld [hl], a - ld hl, $b - add hl, bc - ld [hl], $1 - -; no known jump sources -Functioncd7d2: ; cd7d2 (33:57d2) - ld hl, $10 - add hl, bc - ld a, [hl] - and a - jr nz, .asm_cd7de - call Functioncc9bd - ret -.asm_cd7de - ld hl, $f - add hl, bc - ld a, [hl] - inc [hl] - ld hl, $10 - add hl, bc - ld d, [hl] - push af - push de - call Functionce734 - ld hl, $a - add hl, bc - ld [hl], a - pop de - pop af - call Functionce732 - ld hl, $9 - add hl, bc - ld [hl], a - ld hl, $b - add hl, bc - ld a, [hl] - xor $1 - ld [hl], a - ret z - ld hl, $10 - add hl, bc - dec [hl] - ret - -; no known jump sources -Functioncd80c: ; cd80c (33:580c) - call Functionce71e ; ; ; call does not return - -; no known jump sources -Jumptable_cd80f: ; cd80f (33:580f) - dw Functioncd81f - dw Functioncd817 - dw Functioncd81f - dw Functioncd820 - - -; no known jump sources -Functioncd817: ; cd817 (33:5817) - call Functionce72c - ld a, $35 - call Functionce7bf - -; no known jump sources -Functioncd81f: ; cd81f (33:581f) - ret - -; no known jump sources -Functioncd820: ; cd820 (33:5820) - call Functioncc9bd - ret - -; no known jump sources -Functioncd824: ; cd824 (33:5824) - call Functionce71e ; ; ; call does not return - -; no known jump sources -Jumptable_cd827: ; cd827 (33:5827) - dw Functioncd835 - dw Functioncd860 - dw Functioncd88f - dw Functioncd88f - dw Functioncd88f - dw Functioncd88f - dw Functioncd893 - - -; no known jump sources -Functioncd835: ; cd835 (33:5835) - call Functionce72c - ld hl, $3 - add hl, bc - ld a, [hl] - ld hl, $10 - add hl, bc - ld [hl], a - ld hl, $b - add hl, bc - bit 7, [hl] - jr nz, .asm_cd852 - ld hl, $f - add hl, bc - ld [hl], $10 - jr .asm_cd858 -.asm_cd852 - ld hl, $f - add hl, bc - ld [hl], $30 -.asm_cd858 - ld hl, $b - add hl, bc - ld a, [hl] - and $7f - ld [hl], a - -; no known jump sources -Functioncd860: ; cd860 (33:5860) - ld hl, $f - add hl, bc - ld a, [hl] - ld hl, $b - add hl, bc - ld d, [hl] - call Functionce734 - ld hl, $9 - add hl, bc - ld [hl], a - bit 7, a - jr nz, .asm_cd87e - ld hl, $10 - add hl, bc - ld a, [hl] - inc a - jr .asm_cd883 -.asm_cd87e - ld hl, $10 - add hl, bc - ld a, [hl] -.asm_cd883 - call Functionce7bf - ld hl, $f - add hl, bc - inc [hl] - ld a, [hl] - and $1f - ret nz - -; no known jump sources -Functioncd88f: ; cd88f (33:588f) - call Functionce72c - ret - -; no known jump sources -Functioncd893: ; cd893 (33:5893) - ld hl, $e - add hl, bc - ld [hl], $1 - ret - -; no known jump sources -Functioncd89a: ; cd89a (33:589a) - call Functionce71e ; ; ; call does not return - -; no known jump sources -Jumptable_cd89d: ; cd89d (33:589d) - dw Functioncd8ab - dw Functioncd8cc - dw Functioncd8f5 - dw Functioncd8f5 - dw Functioncd8f5 - dw Functioncd8f5 - dw Functioncd8f9 - - -; no known jump sources -Functioncd8ab: ; cd8ab (33:58ab) - call Functionce72c - ld hl, $b - add hl, bc - bit 7, [hl] - jr nz, .asm_cd8be - ld hl, $f - add hl, bc - ld [hl], $10 - jr .asm_cd8c4 -.asm_cd8be - ld hl, $f - add hl, bc - ld [hl], $30 -.asm_cd8c4 - ld hl, $b - add hl, bc - ld a, [hl] - and $7f - ld [hl], a - -; no known jump sources -Functioncd8cc: ; cd8cc (33:58cc) - ld hl, $f - add hl, bc - ld a, [hl] - ld hl, $b - add hl, bc - ld d, [hl] - call Functionce734 - ld hl, $a - 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, $f - add hl, bc - inc [hl] - inc [hl] - ld a, [hl] - and $1f - ret nz - -; no known jump sources -Functioncd8f5: ; cd8f5 (33:58f5) - call Functionce72c - ret - -; no known jump sources -Functioncd8f9: ; cd8f9 (33:58f9) - ld hl, $e - add hl, bc - ld [hl], $1 - ret - -; no known jump sources -Functioncd900: ; cd900 (33:5900) - call Functionce71e ; ; ; call does not return - -; no known jump sources -Jumptable_cd903: ; cd903 (33:5903) - dw Functioncd907 - dw Functioncd913 - - -; no known jump sources -Functioncd907: ; cd907 (33:5907) - call Functionce72c - ld hl, $f - add hl, bc - ld [hl], $28 - inc hl - ld [hl], $0 - -; no known jump sources -Functioncd913: ; cd913 (33:5913) - ld hl, $b - add hl, bc - ld a, [hl] - ld hl, $f - add hl, bc - ld d, [hl] - push af - push de - call Functionce734 - ld hl, $a - add hl, bc - ld [hl], a - pop de - pop af - call Functionce732 - ld hl, $9 - add hl, bc - ld [hl], a - ld hl, $f - add hl, bc - ld a, [hl] - and a - jr z, .asm_cd950 - ld d, a - ld hl, $10 - add hl, bc - ld e, [hl] - ld hl, hPushOAM ; $ff80 - add hl, de - ld e, l - ld d, h - ld hl, $10 - add hl, bc - ld [hl], e - ld hl, $f - add hl, bc - ld [hl], d - ret -.asm_cd950 - call Functioncc9bd - ret - -; no known jump sources -Functioncd954: ; cd954 (33:5954) - call Functionce71e ; ; ; call does not return - -; no known jump sources -Jumptable_cd957: ; cd957 (33:5957) - dw Functioncd961 - dw Functioncd96a - dw Functioncd96e - dw Functioncd96a - dw Functioncd97b - - -; no known jump sources -Functioncd961: ; cd961 (33:5961) - call Functionce72c - ld hl, $b - add hl, bc - ld [hl], $0 - -; no known jump sources -Functioncd96a: ; cd96a (33:596a) - call Functioncd99a - ret - -; no known jump sources -Functioncd96e: ; cd96e (33:596e) - ld hl, $7 - add hl, bc - ld a, [hl] - cp $88 - jr c, asm_cd988 - call Functionce72c - ret - -; no known jump sources -Functioncd97b: ; cd97b (33:597b) - ld hl, $7 - add hl, bc - ld a, [hl] - cp $b8 - jr c, asm_cd988 - call Functioncc9bd - ret - -; known jump sources: cd975 (33:5975), cd982 (33:5982) -asm_cd988: ; cd988 (33:5988) - call Functioncd99a - ld hl, $7 - add hl, bc - inc [hl] - ld a, [hl] - and $1 - ret nz - ld hl, $8 - add hl, bc - dec [hl] - ret - -; known jump sources: cd96a (33:596a), cd988 (33:5988) -Functioncd99a: ; cd99a (33:599a) - call Functioncd9f4 - ld hl, $f - add hl, bc - ld a, [hl] - push af - push de - call Functionce734 - sra a - sra a - sra a - sra a - ld hl, $b - add hl, bc - add [hl] - ld hl, $a - add hl, bc - ld [hl], a - pop de - pop af - call Functionce732 - ld hl, $9 - add hl, bc - ld [hl], a - ld hl, $f - add hl, bc - ld a, [hl] - sub $8 - ld [hl], a - ld hl, $b - 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, $10 - add hl, bc - inc [hl] - ret -.asm_cd9e2 - xor a - ld hl, $10 - add hl, bc - ld [hl], a - ld hl, $b - add hl, bc - ld [hl], a - ld hl, $9 - add hl, bc - ld [hli], a - ld [hl], a - ret - -; known jump sources: cd99a (33:599a) -Functioncd9f4: ; cd9f4 (33:59f4) - ld hl, $10 - add hl, bc - ld e, [hl] - ld d, $0 - ld hl, $5a01 - add hl, de - ld d, [hl] - ret -; cda01 (33:5a01) - -INCBIN "baserom.gbc",$cda01,$cda0a - $cda01 - -; no known jump sources -Functioncda0a: ; cda0a (33:5a0a) - ld hl, $7 - add hl, bc - ld a, [hl] - cp $30 - jr nc, .asm_cda17 - call Functioncc9bd - ret -.asm_cda17 - ld hl, $b - add hl, bc - ld a, [hl] - and $f - ld e, a - ld hl, $7 - add hl, bc - ld a, [hl] - sub e - ld [hl], a - srl e - ld hl, $8 - add hl, bc -.asm_cda2c - inc [hl] - dec e - jr nz, .asm_cda2c - ret - -; no known jump sources -Functioncda31: ; cda31 (33:5a31) - call Functionce71e ; ; ; call does not return - -; no known jump sources -Jumptable_cda34: ; cda34 (33:5a34) - dw Functioncda4c - dw Functioncda3a - dw Functioncda4c - - -; no known jump sources -Functioncda3a: ; cda3a (33:5a3a) - ld hl, $3 - add hl, bc - ld a, [hl] - inc a - call Functionce7bf - call Functionce72c - ld hl, $f - add hl, bc - ld [hl], $8 - -; no known jump sources -Functioncda4c: ; cda4c (33:5a4c) - ret - -; no known jump sources -Functioncda4d: ; cda4d (33:5a4d) - call Functionce71e ; ; ; call does not return - -; no known jump sources -Jumptable_cda50: ; cda50 (33:5a50) - dw Functioncda58 - dw Functioncda62 - dw Functioncda7a - dw Functioncda8c - - -; no known jump sources -Functioncda58: ; cda58 (33:5a58) - call Functionce72c - ld hl, $10 - add hl, bc - ld [hl], $40 - ret - -; no known jump sources -Functioncda62: ; cda62 (33:5a62) - ld hl, $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 - -; no known jump sources -Functioncda7a: ; cda7a (33:5a7a) - ld hl, $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 - -; no known jump sources -Functioncda8c: ; cda8c (33:5a8c) - ret - -; known jump sources: cda6b (33:5a6b), cdaf2 (33:5af2) -Functioncda8d: ; cda8d (33:5a8d) - dec [hl] - ld d, $20 - call Functionce734 - ld hl, $a - add hl, bc - ld [hl], a - ld hl, $2 - add hl, bc - ld a, [hl] - add $2 - ld [hl], a - ld hl, $f - add hl, bc - ld e, [hl] - ld hl, $7 - add hl, bc - ld d, [hl] - ld hl, $b - 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, $f - add hl, bc - ld [hl], e - ld hl, $7 - add hl, bc - ld [hl], d - ld hl, $10 - add hl, bc - ld a, [hl] - and $1 - ret nz - ld hl, $8 - add hl, bc - dec [hl] - ret - -; no known jump sources -Functioncdad6: ; cdad6 (33:5ad6) - call Functionce71e ; ; ; call does not return - -; no known jump sources -Jumptable_cdad9: ; cdad9 (33:5ad9) - dw Functioncdadf - dw Functioncdae9 - dw Functioncdaf9 - - -; no known jump sources -Functioncdadf: ; cdadf (33:5adf) - call Functionce72c - ld hl, $10 - add hl, bc - ld [hl], $40 - ret - -; no known jump sources -Functioncdae9: ; cdae9 (33:5ae9) - ld hl, $10 - add hl, bc - ld a, [hl] - cp $20 - jr c, .asm_cdaf6 - call Functioncda8d - ret -.asm_cdaf6 - call Functionce72c - -; no known jump sources -Functioncdaf9: ; cdaf9 (33:5af9) - ret - -; no known jump sources -Functioncdafa: ; cdafa (33:5afa) - call Functioncd0e3 - ld hl, $f - add hl, bc - ld a, [hl] - add $f - ld [hl], a - ret - -; no known jump sources -Functioncdb06: ; cdb06 (33:5b06) - call Functionce71e ; ; ; call does not return - -; no known jump sources -Jumptable_cdb09: ; cdb09 (33:5b09) - dw Functioncdb13 - dw Functioncdb14 - dw Functioncdb28 - dw Functioncdb50 - dw Functioncdb65 - - -; no known jump sources -Functioncdb13: ; cdb13 (33:5b13) - ret - -; no known jump sources -Functioncdb14: ; cdb14 (33:5b14) - ld hl, $8 - add hl, bc - ld a, [hl] - cp $30 - jr c, .asm_cdb24 - ld hl, $e - add hl, bc - ld [hl], $0 - ret -.asm_cdb24 - add $4 - ld [hl], a - ret - -; no known jump sources -Functioncdb28: ; cdb28 (33:5b28) - ld hl, $7 - add hl, bc - ld a, [hl] - cp $98 - ret nc - inc [hl] - inc [hl] - ld hl, $1 - add hl, bc - set 0, [hl] - ld hl, $2 - add hl, bc - ld [hl], $90 - ld hl, $d - add hl, bc - ld [hl], $0 - ld hl, $c - add hl, bc - ld [hl], $2 - ld hl, $8 - add hl, bc - dec [hl] - ret - -; no known jump sources -Functioncdb50: ; cdb50 (33:5b50) - call Functionce72c - ld hl, $f - add hl, bc - ld [hl], $2c - ld hl, $d - add hl, bc - ld [hl], $0 - ld hl, $c - add hl, bc - ld [hl], $80 - -; no known jump sources -Functioncdb65: ; cdb65 (33:5b65) - ld hl, $7 - add hl, bc - ld a, [hl] - cp $98 - ret nc - inc [hl] - inc [hl] - ld hl, $f - add hl, bc - ld a, [hl] - inc [hl] - ld d, $8 - call Functionce734 - ld hl, $a - add hl, bc - ld [hl], a - ret - -; no known jump sources -Functioncdb80: ; cdb80 (33:5b80) - call Functionce71e ; ; ; call does not return - -; no known jump sources -Jumptable_cdb83: ; cdb83 (33:5b83) - 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 - - -; no known jump sources -Functioncdb9f: ; cdb9f (33:5b9f) - ld hl, $f - add hl, bc - ld [hl], $28 - inc hl - ld [hl], $10 - ld hl, $b - add hl, bc - ld a, [hl] - ld hl, $e - add hl, bc - ld [hl], a - ret - -; no known jump sources -Functioncdbb3: ; cdbb3 (33:5bb3) - ld hl, $7 - add hl, bc - ld a, [hl] - cp $40 - jr nc, .asm_cdbbd - inc [hl] -.asm_cdbbd - call Functioncdc75 - ret - -; no known jump sources -Functioncdbc1: ; cdbc1 (33:5bc1) - ld hl, $7 - add hl, bc - ld a, [hl] - cp $4b - jr nc, .asm_cdbcb - inc [hl] -.asm_cdbcb - call Functioncdc75 - ret - -; no known jump sources -Functioncdbcf: ; cdbcf (33:5bcf) - ld hl, $7 - add hl, bc - ld a, [hl] - cp $88 - jr nc, .asm_cdbe6 - and $f - jr nz, asm_cdbfa - ld hl, $10 - add hl, bc - ld [hl], $10 - call Functionce72c - ret -.asm_cdbe6 - call Functionce72c - inc [hl] - ret - -; no known jump sources -Functioncdbeb: ; cdbeb (33:5beb) - ld hl, $10 - add hl, bc - ld a, [hl] - and a - jr z, .asm_cdbf5 - dec [hl] - ret -.asm_cdbf5 - ld hl, $e - add hl, bc - dec [hl] -asm_cdbfa: ; cdbfa (33:5bfa) - ld hl, $7 - add hl, bc - inc [hl] - ld hl, $8 - add hl, bc - ld d, [hl] - ld hl, $f - add hl, bc - ld e, [hl] - ld hl, hPushOAM ; $ff80 - add hl, de - ld e, l - ld d, h - ld hl, $8 - add hl, bc - ld [hl], d - ld hl, $f - add hl, bc - ld [hl], e - ret - -; no known jump sources -Functioncdc1a: ; cdc1a (33:5c1a) - call Functioncc9bd - ret - -; no known jump sources -Functioncdc1e: ; cdc1e (33:5c1e) - ld a, $4e - call Functionce7bf - call Functionce72c - ret - -; no known jump sources -Functioncdc27: ; cdc27 (33:5c27) - ld hl, $f - add hl, bc - ld a, [hl] - inc [hl] - inc [hl] - ld d, $2 - call Functionce734 - ld hl, $9 - add hl, bc - ld [hl], a - ret - -; no known jump sources -Functioncdc39: ; cdc39 (33:5c39) - ld a, $50 - call Functionce7bf - ld hl, $a - add hl, bc - ld [hl], $4 - call Functionce72c - ret - -; no known jump sources -Functioncdc48: ; cdc48 (33:5c48) - ld a, $4f - call Functionce7bf - call Functionce72c - ld hl, $f - add hl, bc - ld [hl], $40 - ret - -; no known jump sources -Functioncdc57: ; cdc57 (33:5c57) - ld hl, $f - add hl, bc - ld a, [hl] - ld d, $20 - call Functionce734 - ld hl, $a - add hl, bc - ld [hl], a - ld hl, $f - add hl, bc - ld a, [hl] - cp $30 - jr c, .asm_cdc71 - dec [hl] - ret -.asm_cdc71 - call Functionce72c - -; no known jump sources -Functioncdc74: ; cdc74 (33:5c74) - ret - -; known jump sources: cdbbd (33:5bbd), cdbcb (33:5bcb) -Functioncdc75: ; cdc75 (33:5c75) - ld hl, $f - add hl, bc - ld a, [hli] - ld d, [hl] - call Functionce734 - ld hl, $a - add hl, bc - ld [hl], a - ld hl, $f - add hl, bc - inc [hl] - ld a, [hl] - and $3f - ret nz - ld hl, $f - add hl, bc - ld [hl], $20 - ld hl, $10 - add hl, bc - ld a, [hl] - sub $8 - ld [hl], a - ret nz - xor a - ld hl, $f - add hl, bc - ld [hli], a - ld [hl], a - call Functionce72c - ret - -; no known jump sources -Functioncdca6: ; cdca6 (33:5ca6) - ld hl, $a - add hl, bc - ld a, [hl] - and a - jr z, .asm_cdcb6 - cp $d8 - jr nc, .asm_cdcb6 - call Functioncc9bd - ret -.asm_cdcb6 - ld hl, $b - add hl, bc - ld d, [hl] - ld hl, $a - add hl, bc - ld a, [hl] - sub d - ld [hl], a - ret - -; no known jump sources -Functioncdcc3: ; cdcc3 (33:5cc3) - call Functionce71e ; ; ; call does not return - -; no known jump sources -Jumptable_cdcc6: ; cdcc6 (33:5cc6) - dw Functioncdcca - dw Functioncdced - - -; no known jump sources -Functioncdcca: ; cdcca (33:5cca) - ld a, [hBattleTurn] ; $ff00+$e4 - and a - jr z, .asm_cdcd9 - ld hl, $b - add hl, bc - ld a, [hl] - xor $ff - add $3 - ld [hl], a -.asm_cdcd9 - call Functionce72c - ld hl, $f - add hl, bc - ld [hl], $8 - ld hl, $b - add hl, bc - ld a, $59 - add [hl] - call Functionce7bf - ret - -; no known jump sources -Functioncdced: ; cdced (33:5ced) - ld hl, $f - add hl, bc - ld a, [hl] - and a - jr z, .asm_cdcfa - dec [hl] - call Functioncdcfe - ret -.asm_cdcfa - call Functioncc9bd - ret - -; known jump sources: cdcf6 (33:5cf6) -Functioncdcfe: ; cdcfe (33:5cfe) - ld hl, $10 - add hl, bc - ld a, [hl] - inc [hl] - inc [hl] - ld d, $10 - call Functionce734 - ld d, a - ld hl, $9 - add hl, bc - ld [hl], a - ld hl, $b - add hl, bc - ld a, [hl] - and a - jr z, .asm_cdd20 - dec a - ret z - ld hl, $a - add hl, bc - ld [hl], d - ret -.asm_cdd20 - ld hl, $a - add hl, bc - ld a, d - xor $ff - inc a - ld [hl], a - ret - -; no known jump sources -Functioncdd2a: ; cdd2a (33:5d2a) - call Functionce71e ; ; ; call does not return - -; no known jump sources -Jumptable_cdd2d: ; cdd2d (33:5d2d) - dw Functioncdd31 - dw Functioncdd4f - - -; no known jump sources -Functioncdd31: ; cdd31 (33:5d31) - call Functionce72c - ld hl, $b - add hl, bc - ld a, [hl] - and $3f - ld hl, $10 - add hl, bc - ld [hl], a - ld hl, $b - add hl, bc - ld a, [hl] - and $80 - rlca - ld [hl], a - add $5d - call Functionce7bf - ret - -; no known jump sources -Functioncdd4f: ; cdd4f (33:5d4f) - ld hl, $b - add hl, bc - ld a, [hl] - swap a - ld d, a - ld hl, $10 - add hl, bc - ld a, [hl] - inc [hl] - push af - push de - call Functionce734 - ld hl, $a - add hl, bc - ld [hl], a - pop de - pop af - call Functionce732 - ld hl, $9 - add hl, bc - ld [hl], a - ld hl, $7 - add hl, bc - ld a, [hl] - cp $80 - ret nc - ld hl, $10 - add hl, bc - ld a, [hl] - and $3 - jr nz, .asm_cdd87 - ld hl, $8 - add hl, bc - dec [hl] -.asm_cdd87 - and $1 - ret nz - ld hl, $7 - add hl, bc - inc [hl] - ret - -; no known jump sources -Functioncdd90: ; cdd90 (33:5d90) - call Functionce71e ; ; ; call does not return - -; no known jump sources -Jumptable_cdd93: ; cdd93 (33:5d93) - dw Functioncdd97 - dw Functioncddbc - - -; no known jump sources -Functioncdd97: ; cdd97 (33:5d97) - call Functionce72c - ld hl, $3 - add hl, bc - ld a, [hl] - ld hl, $f - add hl, bc - ld [hl], a - ld hl, $b - add hl, bc - ld a, [hl] - and $80 - rlca - ld hl, $f - add hl, bc - add [hl] - call Functionce7bf - ld hl, $b - add hl, bc - ld a, [hl] - and $7f - ld [hl], a - -; no known jump sources -Functioncddbc: ; cddbc (33:5dbc) - ld hl, $b - add hl, bc - ld a, [hl] - ld d, $10 - push af - push de - call Functionce734 - sra a - sra a - ld hl, $a - add hl, bc - ld [hl], a - pop de - pop af - call Functionce732 - ld hl, $9 - add hl, bc - ld [hl], a - ld hl, $b - add hl, bc - ld a, [hl] - inc [hl] - and $3f - jr z, .asm_cddf0 - and $1f - ret nz - ld hl, $f - add hl, bc - ld a, [hl] - inc a - jr .asm_cddf5 -.asm_cddf0 - ld hl, $f - add hl, bc - ld a, [hl] -.asm_cddf5 - call Functionce7bf - ret - -; no known jump sources -Functioncddf9: ; cddf9 (33:5df9) - call Functionce71e ; ; ; call does not return - -; no known jump sources -Jumptable_cddfc: ; cddfc (33:5dfc) - dw Functioncde02 - dw Functioncde20 - dw Functioncde21 - - -; no known jump sources -Functioncde02: ; cde02 (33:5e02) - call Functionce72c - ld hl, $b - add hl, bc - ld a, [hl] - add $63 - call Functionce7bf - ld hl, $b - add hl, bc - ld e, [hl] - ld d, $0 - ld hl, $5e25 - add hl, de - ld a, [hl] - ld hl, $a - add hl, bc - ld [hl], a - -; no known jump sources -Functioncde20: ; cde20 (33:5e20) - ret - -; no known jump sources -Functioncde21: ; cde21 (33:5e21) - call Functioncc9bd - ret -; cde25 (33:5e25) - -INCBIN "baserom.gbc",$cde25,$cde28 - $cde25 - -; no known jump sources -Functioncde28: ; cde28 (33:5e28) - ld hl, $f - add hl, bc - ld a, [hl] - inc [hl] - inc [hl] - ld d, $4 - call Functionce734 - ld hl, $9 - add hl, bc - ld [hl], a - ld hl, $a - add hl, bc - ld d, [hl] - ld hl, $10 - add hl, bc - ld e, [hl] - ld hl, $ffa0 - add hl, de - ld e, l - ld d, h - ld hl, $a - add hl, bc - ld [hl], d - ld hl, $10 - add hl, bc - ld [hl], e - ret - -; no known jump sources -Functioncde54: ; cde54 (33:5e54) - ld hl, $f - add hl, bc - ld a, [hl] - dec [hl] - dec [hl] - ld d, $10 - call Functionce734 - ld hl, $a - add hl, bc - ld [hl], a - ld hl, $7 - add hl, bc - inc [hl] - ret - -; no known jump sources -Functioncde6b: ; cde6b (33:5e6b) - call Functionce71e ; ; ; call does not return - -; no known jump sources -Jumptable_cde6e: ; cde6e (33:5e6e) - dw Functioncde72 - dw Functioncde88 - - -; no known jump sources -Functioncde72: ; cde72 (33:5e72) - call Functionce72c - ld hl, $b - add hl, bc - ld a, [hl] - and a - jr nz, .asm_cde83 - ld hl, $1 - add hl, bc - set 6, [hl] -.asm_cde83 - add $6a - call Functionce7bf - -; no known jump sources -Functioncde88: ; cde88 (33:5e88) - ret - -; no known jump sources -Functioncde89: ; cde89 (33:5e89) - call Functionce71e ; ; ; call does not return - -; no known jump sources -Jumptable_cde8c: ; cde8c (33:5e8c) - dw Functioncde90 - dw Functioncdebf - - -; no known jump sources -Functioncde90: ; cde90 (33:5e90) - call Functionce72c - ld hl, $f - add hl, bc - ld [hl], $0 - ld hl, $b - add hl, bc - ld e, [hl] - ld a, e - and $70 - swap a - ld [hl], a - ld hl, $9 - 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 - -; no known jump sources -Functioncdebf: ; cdebf (33:5ebf) - ld hl, $f - add hl, bc - ld a, [hl] - and a - jr z, .asm_cdec9 - dec [hl] - ret -.asm_cdec9 - ld hl, $b - add hl, bc - ld a, [hl] - ld hl, $f - add hl, bc - ld [hl], a - ld hl, $9 - add hl, bc - ld a, [hl] - xor $ff - inc a - ld [hl], a - ret - -; no known jump sources -Functioncdedd: ; cdedd (33:5edd) - ld hl, $f - add hl, bc - ld a, [hl] - ld d, $18 - push af - push de - call Functionce734 - sra a - sra a - sra a - ld hl, $10 - add hl, bc - add [hl] - ld hl, $a - add hl, bc - ld [hl], a - pop de - pop af - call Functionce732 - ld hl, $9 - add hl, bc - ld [hl], a - ld hl, $f - add hl, bc - inc [hl] - ld a, [hl] - and $7 - ret nz - ld hl, $10 - add hl, bc - ld a, [hl] - cp $28 - jr nc, .asm_cdf17 - inc [hl] - ret -.asm_cdf17 - call Functioncc9bd - ret - -; no known jump sources -Functioncdf1b: ; cdf1b (33:5f1b) - ld hl, $f - add hl, bc - ld a, [hl] - ld d, $18 - push af - push de - call Functionce734 - sra a - sra a - sra a - ld hl, $10 - add hl, bc - add [hl] - ld hl, $a - add hl, bc - ld [hl], a - pop de - pop af - call Functionce732 - ld hl, $9 - add hl, bc - ld [hl], a - ld hl, $f - add hl, bc - inc [hl] - ld a, [hl] - and $3 - ret nz - ld hl, $10 - add hl, bc - ld a, [hl] - cp $28 - jr nc, .asm_cdf55 - inc [hl] - ret -.asm_cdf55 - call Functioncc9bd - ret - -; no known jump sources -Functioncdf59: ; cdf59 (33:5f59) - call Functionce71e ; ; ; call does not return - -; no known jump sources -Jumptable_cdf5c: ; cdf5c (33:5f5c) - dw Functioncdf60 - dw Functioncdedd - - -; no known jump sources -Functioncdf60: ; cdf60 (33:5f60) - ld hl, $7 - add hl, bc - ld a, [hl] - cp $84 - jr nc, .asm_cdf88 - inc [hl] - ld hl, $f - add hl, bc - ld a, [hl] - inc [hl] - ld d, $18 - call Functionce732 - ld hl, $9 - add hl, bc - ld [hl], a - ld hl, $7 - add hl, bc - ld a, [hl] - and $1 - ret nz - ld hl, $8 - add hl, bc - dec [hl] - ret -.asm_cdf88 - call Functionce72c - ret - -; no known jump sources -Functioncdf8c: ; cdf8c (33:5f8c) - ld hl, $b - add hl, bc - ld a, [hl] - ld d, $18 - push af - push de - call Functionce734 - sra a - sra a - sra a - ld hl, $10 - add hl, bc - add [hl] - ld hl, $a - add hl, bc - ld [hl], a - pop de - pop af - call Functionce732 - ld hl, $9 - add hl, bc - ld [hl], a - ld hl, $b - add hl, bc - inc [hl] - inc [hl] - ld a, [hl] - and $7 - ret nz - ld hl, $10 - add hl, bc - ld a, [hl] - cp $e8 - jr z, .asm_cdfc7 - dec [hl] - ret -.asm_cdfc7 - call Functioncc9bd - ret - -; no known jump sources -Functioncdfcb: ; cdfcb (33:5fcb) - ld hl, $b - add hl, bc - ld a, [hl] - ld d, $18 - push af - push de - call Functionce734 - sra a - sra a - sra a - ld hl, $10 - add hl, bc - add [hl] - ld hl, $a - add hl, bc - ld [hl], a - pop de - pop af - call Functionce732 - ld hl, $9 - add hl, bc - ld [hl], a - ld hl, $b - add hl, bc - inc [hl] - inc [hl] - ld a, [hl] - and $3 - ret nz - ld hl, $10 - add hl, bc - ld a, [hl] - cp $d0 - jr z, .asm_ce007 - dec [hl] - dec [hl] - ret -.asm_ce007 - call Functioncc9bd - ret - -; no known jump sources -Functionce00b: ; ce00b (33:600b) - call Functionce71e ; ; ; call does not return - -; no known jump sources -Jumptable_ce00e: ; ce00e (33:600e) - dw Functionce014 - dw Functionce023 - dw Functionce05f - - -; no known jump sources -Functionce014: ; ce014 (33:6014) - call Functionce72c - ld hl, $f - add hl, bc - ld [hl], $34 - ld hl, $10 - add hl, bc - ld [hl], $10 - -; no known jump sources -Functionce023: ; ce023 (33:6023) - ld hl, $7 - add hl, bc - ld a, [hl] - cp $6c - jr c, .asm_ce02d - ret -.asm_ce02d - ld a, $2 - call Functionce70a - ld hl, $f - add hl, bc - ld a, [hl] - ld hl, $10 - add hl, bc - ld d, [hl] - call Functionce734 - bit 7, a - jr nz, .asm_ce046 - xor $ff - inc a -.asm_ce046 - ld hl, $a - add hl, bc - ld [hl], a - ld hl, $f - add hl, bc - ld a, [hl] - sub $4 - ld [hl], a - and $1f - cp $20 - ret nz - ld hl, $10 - add hl, bc - srl [hl] - ret - -; no known jump sources -Functionce05f: ; ce05f (33:605f) - call Functioncc9bd - ret - -; no known jump sources -Functionce063: ; ce063 (33:6063) - call Functionce71e ; ; ; call does not return - -; no known jump sources -Jumptable_ce066: ; ce066 (33:6066) - dw Functionce06e - dw Functionce083 - dw Functionce091 - dw Functionce09e - - -; no known jump sources -Functionce06e: ; ce06e (33:606e) - ld hl, $b - add hl, bc - ld a, [hl] - ld hl, $e - add hl, bc - ld [hl], a - ld hl, $8 - add hl, bc - ld a, [hl] - ld hl, $f - add hl, bc - ld [hl], a - ret - -; no known jump sources -Functionce083: ; ce083 (33:6083) - ld hl, $7 - add hl, bc - ld a, [hl] - cp $58 - ret nc - ld a, $2 - call Functionce70a - ret - -; no known jump sources -Functionce091: ; ce091 (33:6091) - ld hl, $10 - add hl, bc - ld a, [hl] - cp $20 - jr c, Functionce09e - call Functioncc9bd - ret - -; known jump sources: ce098 (33:6098) -Functionce09e: ; ce09e (33:609e) - ld hl, $10 - add hl, bc - ld a, [hl] - ld d, $8 - call Functionce734 - ld hl, $9 - add hl, bc - ld [hl], a - sra a - xor $ff - inc a - ld hl, $f - add hl, bc - add [hl] - ld hl, $8 - add hl, bc - ld [hl], a - ld hl, $10 - add hl, bc - ld a, [hl] - add $8 - ld [hl], a - ret - -; no known jump sources -Functionce0c5: ; ce0c5 (33:60c5) - call Functionce71e ; ; ; call does not return - -; no known jump sources -Jumptable_ce0c8: ; ce0c8 (33:60c8) - dw Functionce0ce - dw Functionce0f8 - dw Functionce0dd - - -; no known jump sources -Functionce0ce: ; ce0ce (33:60ce) - ld hl, $b - add hl, bc - ld a, [hl] - and $f0 - swap a - ld hl, $e - add hl, bc - ld [hl], a - ret - -; no known jump sources -Functionce0dd: ; ce0dd (33:60dd) - ld hl, $f - add hl, bc - ld a, [hl] - ld d, $10 - call Functionce734 - ld hl, $a - add hl, bc - bit 7, a - jr z, .asm_ce0f0 - ld [hl], a -.asm_ce0f0 - ld hl, $f - add hl, bc - ld a, [hl] - sub $4 - ld [hl], a - -; no known jump sources -Functionce0f8: ; ce0f8 (33:60f8) - ld hl, $7 - add hl, bc - ld a, [hl] - cp $84 - jr c, .asm_ce105 - call Functioncc9bd - ret -.asm_ce105 - ld hl, $b - add hl, bc - ld a, [hl] - call Functionce70a - ret - -; no known jump sources -Functionce10e: ; ce10e (33:610e) - call Functionce71e ; ; ; call does not return - -; no known jump sources -Jumptable_ce111: ; ce111 (33:6111) - dw Functionce115 - dw Functionce12a - - -; no known jump sources -Functionce115: ; ce115 (33:6115) - call Functionce72c - ld hl, $f - add hl, bc - ld [hl], $28 - ld hl, $8 - add hl, bc - ld a, [hl] - sub $28 - ld hl, $10 - add hl, bc - ld [hl], a - -; no known jump sources -Functionce12a: ; ce12a (33:612a) - ld hl, $f - add hl, bc - ld a, [hli] - ld d, [hl] - call Functionce734 - ld hl, $a - add hl, bc - ld [hl], a - ld hl, $f - add hl, bc - ld a, [hl] - ld hl, $b - add hl, bc - and [hl] - jr nz, .asm_ce149 - ld hl, $7 - add hl, bc - dec [hl] -.asm_ce149 - ld hl, $f - add hl, bc - inc [hl] - ld a, [hl] - and $3f - ret nz - ld hl, $f - add hl, bc - ld [hl], $20 - inc hl - srl [hl] - ret - -; no known jump sources -Functionce15c: ; ce15c (33:615c) - ld hl, $b - add hl, bc - ld a, [hl] - ld hl, $f - add hl, bc - ld d, [hl] - push af - push de - call Functionce734 - ld hl, $a - add hl, bc - ld [hl], a - pop de - pop af - call Functionce732 - ld hl, $9 - add hl, bc - ld [hl], a - ld hl, $b - add hl, bc - inc [hl] - ld a, [hl] - and $1 - jr nz, .asm_ce189 - ld hl, $7 - add hl, bc - dec [hl] -.asm_ce189 - ld hl, $b - add hl, bc - ld a, [hl] - and $3 - jr nz, .asm_ce197 - ld hl, $8 - add hl, bc - inc [hl] -.asm_ce197 - ld hl, $7 - add hl, bc - ld a, [hl] - ld hl, $f - 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 Functioncc9bd - ret - -; no known jump sources -Functionce1b0: ; ce1b0 (33:61b0) - ld hl, $b - add hl, bc - ld a, [hl] - inc [hl] - ld hl, $f - add hl, bc - ld d, [hl] - push af - push de - call Functionce734 - ld hl, $a - add hl, bc - ld [hl], a - pop de - pop af - call Functionce732 - ld hl, $9 - add hl, bc - ld [hl], a - ld hl, $10 - add hl, bc - ld a, [hl] - inc [hl] - ld hl, $f - add hl, bc - cp $40 - jr nc, .asm_ce1df - inc [hl] - ret -.asm_ce1df - ld a, [hl] - dec [hl] - and a - ret nz - call Functioncc9bd - ret - -; no known jump sources -Functionce1e7: ; ce1e7 (33:61e7) - call Functionce71e ; ; ; call does not return - -; no known jump sources -Jumptable_ce1ea: ; ce1ea (33:61ea) - dw Functionce1ee - dw Functionce1fb - - -; no known jump sources -Functionce1ee: ; ce1ee (33:61ee) - call Functionce72c - ld hl, $8 - add hl, bc - ld a, [hl] - ld hl, $10 - add hl, bc - ld [hl], a - -; no known jump sources -Functionce1fb: ; ce1fb (33:61fb) - ld hl, $b - add hl, bc - ld a, [hl] - ld d, $30 - call Functionce734 - ld hl, $10 - add hl, bc - add [hl] - ld hl, $8 - add hl, bc - ld [hl], a - ld hl, $b - add hl, bc - ld a, [hl] - add $8 - ld d, $30 - call Functionce732 - ld hl, $9 - add hl, bc - ld [hl], a - ld hl, $b - add hl, bc - inc [hl] - ret - -; no known jump sources -Functionce226: ; ce226 (33:6226) - call Functionce71e ; ; ; call does not return - -; no known jump sources -Jumptable_ce229: ; ce229 (33:6229) - dw Functionce22d - dw Functionce254 - - -; no known jump sources -Functionce22d: ; ce22d (33:622d) - call Functionce72c - ld hl, $b - add hl, bc - ld a, [hl] - ld d, $10 - call Functionce734 - ld hl, $a - add hl, bc - ld [hl], a - ld hl, $b - add hl, bc - ld a, [hl] - ld d, $10 - call Functionce732 - ld hl, $9 - add hl, bc - ld [hl], a - ld hl, $10 - add hl, bc - ld [hl], $f - -; no known jump sources -Functionce254: ; ce254 (33:6254) - ret - -; no known jump sources -Functionce255: ; ce255 (33:6255) - call Functionce71e ; ; ; call does not return - -; no known jump sources -Jumptable_ce258: ; ce258 (33:6258) - dw Functionce260 - dw Functionce274 - dw Functionce278 - dw Functionce289 - - -; no known jump sources -Functionce260: ; ce260 (33:6260) - call Functionce72c - ld a, [hBattleTurn] ; $ff00+$e4 - and a - jr nz, .asm_ce26c - ld a, $f0 - jr .asm_ce26e -.asm_ce26c - ld a, $cc -.asm_ce26e - ld hl, $f - add hl, bc - ld [hl], a - ret - -; no known jump sources -Functionce274: ; ce274 (33:6274) - call Functionce29f - ret - -; no known jump sources -Functionce278: ; ce278 (33:6278) - call Functionce29f - ld hl, $7 - add hl, bc - ld a, [hl] - cp $84 - ret nc - ld a, $4 - call Functionce70a - ret - -; no known jump sources -Functionce289: ; ce289 (33:6289) - call Functionce29f - ld hl, $7 - add hl, bc - ld a, [hl] - cp $d0 - jr nc, .asm_ce29b - ld a, $4 - call Functionce70a - ret -.asm_ce29b - call Functioncc9bd - ret - -; known jump sources: ce274 (33:6274), ce278 (33:6278), ce289 (33:6289) -Functionce29f: ; ce29f (33:629f) - ld hl, $10 - add hl, bc - ld a, [hl] - and $7 - inc [hl] - srl a - ld e, a - ld d, $0 - ld a, [hSGB] ; $ff00+$e7 - and a - jr nz, .asm_ce2b6 - ld hl, $62c4 - jr .asm_ce2b9 -.asm_ce2b6 - ld hl, $62c8 -.asm_ce2b9 - add hl, de - ld a, [hl] - ld hl, $f - add hl, bc - and [hl] - ld [$cfc8], a - ret -; ce2c4 (33:62c4) - -INCBIN "baserom.gbc",$ce2c4,$ce2cc - $ce2c4 - -; no known jump sources -Functionce2cc: ; ce2cc (33:62cc) - ld hl, $b - add hl, bc - ld a, [hl] - ld d, $18 - call Functionce734 - sra a - sra a - sra a - ld hl, $10 - add hl, bc - add [hl] - ld hl, $a - add hl, bc - ld [hl], a - ld hl, $b - add hl, bc - ld a, [hl] - inc [hl] - ld d, $18 - call Functionce732 - ld hl, $9 - add hl, bc - ld [hl], a - ld hl, $10 - add hl, bc - dec [hl] - dec [hl] - ret - -; no known jump sources -Functionce2fd: ; ce2fd (33:62fd) - call Functionce71e ; ; ; call does not return - -; no known jump sources -Jumptable_ce300: ; ce300 (33:6300) - dw Functionce306 - dw Functionce330 - dw Functionce34c - - -; no known jump sources -Functionce306: ; ce306 (33:6306) - ld hl, $a - add hl, bc - ld a, [hl] - cp $e0 - jr nz, .asm_ce319 - call Functionce72c - ld hl, $f - add hl, bc - ld [hl], $2 - ret -.asm_ce319 - ld d, a - ld hl, $f - add hl, bc - ld e, [hl] - ld hl, hPushOAM ; $ff80 - add hl, de - ld e, l - ld d, h - ld hl, $a - add hl, bc - ld [hl], d - ld hl, $f - add hl, bc - ld [hl], e - ret - -; no known jump sources -Functionce330: ; ce330 (33:6330) - ld hl, $10 - add hl, bc - ld a, [hl] - and a - jr z, .asm_ce33a - dec [hl] - ret -.asm_ce33a - ld [hl], $4 - ld hl, $f - add hl, bc - ld a, [hl] - xor $ff - inc a - ld [hl], a - ld hl, $a - add hl, bc - add [hl] - ld [hl], a - ret - -; no known jump sources -Functionce34c: ; ce34c (33:634c) - ld hl, $7 - add hl, bc - ld a, [hl] - cp $84 - jr nc, .asm_ce35b - ld a, $4 - call Functionce70a - ret -.asm_ce35b - call Functioncc9bd - ret - -; no known jump sources -Functionce35f: ; ce35f (33:635f) - call Functionce71e ; ; ; call does not return - -; no known jump sources -Jumptable_ce362: ; ce362 (33:6362) - dw Functionce366 - dw Functionce375 - - -; no known jump sources -Functionce366: ; ce366 (33:6366) - call Functionce72c - ld hl, $b - add hl, bc - ld a, [hl] - and $7f - add $81 - call Functionce7bf - -; no known jump sources -Functionce375: ; ce375 (33:6375) - ld hl, $b - add hl, bc - bit 7, [hl] - jr nz, .asm_ce383 - ld hl, $9 - add hl, bc - inc [hl] - ret -.asm_ce383 - ld hl, $9 - add hl, bc - dec [hl] - ret - -; no known jump sources -Functionce389: ; ce389 (33:6389) - call Functionce71e ; ; ; call does not return - -; no known jump sources -Jumptable_ce38c: ; ce38c (33:638c) - dw Functionce392 - dw Functionce39c - dw Functionce3ae - - -; no known jump sources -Functionce392: ; ce392 (33:6392) - call Functionce72c - ld hl, $f - add hl, bc - ld [hl], $c - ret - -; no known jump sources -Functionce39c: ; ce39c (33:639c) - ld hl, $f - add hl, bc - ld a, [hl] - and a - jr z, .asm_ce3a6 - dec [hl] - ret -.asm_ce3a6 - call Functionce72c - ld a, $20 - call Functionce7bf - -; no known jump sources -Functionce3ae: ; ce3ae (33:63ae) - ld hl, $a - add hl, bc - dec [hl] - ret - -; no known jump sources -Functionce3b4: ; ce3b4 (33:63b4) - ld hl, $f - add hl, bc - ld a, [hl] - inc [hl] - inc [hl] - push af - ld d, $2 - call Functionce734 - ld hl, $a - add hl, bc - ld [hl], a - pop af - ld d, $8 - call Functionce732 - ld hl, $9 - add hl, bc - ld [hl], a - ret - -; no known jump sources -Functionce3d2: ; ce3d2 (33:63d2) - ld hl, $a - add hl, bc - ld a, [hl] - cp $20 - jr c, .asm_ce3df - call Functioncc9bd - ret -.asm_ce3df - ld hl, $b - add hl, bc - ld a, [hl] - ld d, $8 - call Functionce732 - ld hl, $9 - add hl, bc - ld [hl], a - ld hl, $b - add hl, bc - ld a, [hl] - add $2 - ld [hl], a - and $7 - ret nz - ld hl, $a - add hl, bc - inc [hl] - ret - -; no known jump sources -Functionce3ff: ; ce3ff (33:63ff) - call Functionce71e ; ; ; call does not return - -; no known jump sources -Jumptable_ce402: ; ce402 (33:6402) - dw Functionce406 - dw Functionce412 - - -; no known jump sources -Functionce406: ; ce406 (33:6406) - ld hl, $b - add hl, bc - ld a, [hl] - ld hl, $7 - add hl, bc - add [hl] - ld [hl], a - ret - -; no known jump sources -Functionce412: ; ce412 (33:6412) - call Functioncc9bd - ret - -; no known jump sources -Functionce416: ; ce416 (33:6416) - ld hl, $b - add hl, bc - ld a, [hl] - ld d, $18 - push af - push de - call Functionce734 - ld hl, $a - add hl, bc - ld [hl], a - pop de - pop af - call Functionce732 - ld hl, $9 - add hl, bc - sra a - ld [hl], a - ld hl, $b - add hl, bc - ld a, [hl] - inc [hl] - ret - -; no known jump sources -Functionce43a: ; ce43a (33:643a) - call Functionce71e ; ; ; call does not return - -; no known jump sources -Jumptable_ce43d: ; ce43d (33:643d) - dw Functionce443 - dw Functionce465 - dw Functionce490 - - -; no known jump sources -Functionce443: ; ce443 (33:6443) - call Functionce72c - ld hl, $f - add hl, bc - ld [hl], $28 - ld hl, $b - add hl, bc - ld a, [hl] - and $f - ld hl, $3 - add hl, bc - add [hl] - call Functionce7bf - ld hl, $b - add hl, bc - ld a, [hl] - and $f0 - or $8 - ld [hl], a - -; no known jump sources -Functionce465: ; ce465 (33:6465) - ld hl, $f - add hl, bc - ld a, [hl] - and a - jr z, .asm_ce48b - dec [hl] - add $8 - ld d, a - ld hl, $b - add hl, bc - ld a, [hl] - push af - push de - call Functionce734 - ld hl, $a - add hl, bc - ld [hl], a - pop de - pop af - call Functionce732 - ld hl, $9 - add hl, bc - ld [hl], a - ret -.asm_ce48b - ld [hl], $10 - call Functionce72c - -; no known jump sources -Functionce490: ; ce490 (33:6490) - ld hl, $f - add hl, bc - ld a, [hl] - dec [hl] - and a - ret nz - call Functioncc9bd - ret - -; no known jump sources -Functionce49c: ; ce49c (33:649c) - call Functionce71e ; ; ; call does not return - -; no known jump sources -Jumptable_ce49f: ; ce49f (33:649f) - dw Functionce4a3 - dw Functionce4b0 - - -; no known jump sources -Functionce4a3: ; ce4a3 (33:64a3) - call Functionce72c - ld hl, $b - add hl, bc - ld a, $24 - add [hl] - call Functionce7bf - -; no known jump sources -Functionce4b0: ; ce4b0 (33:64b0) - ld hl, $a - add hl, bc - ld a, [hl] - cp $38 - jr nc, .asm_ce4d8 - inc [hl] - ld hl, $f - add hl, bc - ld a, [hl] - inc [hl] - ld d, $18 - call Functionce732 - ld hl, $9 - add hl, bc - ld [hl], a - ld hl, $8 - add hl, bc - ld a, [hl] - and $1 - ret nz - ld hl, $7 - add hl, bc - dec [hl] - ret -.asm_ce4d8 - call Functioncc9bd - ret - -; no known jump sources -Functionce4dc: ; ce4dc (33:64dc) - ld hl, $b - add hl, bc - ld a, [hl] - and a - ret z - ld d, a - ld hl, $f - add hl, bc - ld a, [hl] - inc [hl] - call Functionce734 - bit 7, a - jr nz, .asm_ce4f4 - xor $ff - inc a -.asm_ce4f4 - ld hl, $a - add hl, bc - ld [hl], a - ld hl, $f - add hl, bc - ld a, [hl] - and $1f - ret nz - ld hl, $b - add hl, bc - srl [hl] - ret - -; no known jump sources -Functionce508: ; ce508 (33:6508) - ld hl, $f - add hl, bc - ld a, [hl] - cp $10 - jr nc, .asm_ce52e - inc [hl] - inc [hl] - ld d, a - ld hl, $b - add hl, bc - ld a, [hl] - push af - push de - call Functionce734 - ld hl, $a - add hl, bc - ld [hl], a - pop de - pop af - call Functionce732 - ld hl, $9 - add hl, bc - ld [hl], a - ret -.asm_ce52e - call Functioncc9bd - ret - -; no known jump sources -Functionce532: ; ce532 (33:6532) - ld hl, $b - add hl, bc - ld e, [hl] - ld hl, $f - 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 Functionce734 - ld hl, $a - add hl, bc - ld [hl], a - pop de - pop af - call Functionce732 - ld hl, $9 - add hl, bc - ld [hl], a - ret - -; no known jump sources -Functionce55b: ; ce55b (33:655b) - call Functionce71e ; ; ; call does not return - -; no known jump sources -Jumptable_ce55e: ; ce55e (33:655e) - dw Functionce564 - dw Functionce56e - dw Functionce577 - - -; no known jump sources -Functionce564: ; ce564 (33:6564) - ld d, $18 - ld hl, $b - add hl, bc - ld a, [hl] - inc [hl] - jr asm_ce58f - -; no known jump sources -Functionce56e: ; ce56e (33:656e) - call Functionce72c - ld hl, $f - add hl, bc - ld [hl], $18 - -; no known jump sources -Functionce577: ; ce577 (33:6577) - ld hl, $f - add hl, bc - ld a, [hl] - cp $80 - jr nc, .asm_ce58b - ld d, a - add $8 - ld [hl], a - ld hl, $b - add hl, bc - ld a, [hl] - jr asm_ce58f -.asm_ce58b - call Functioncc9bd - ret -asm_ce58f: ; ce58f (33:658f) - call Functionce6f1 - ret - -; no known jump sources -Functionce593: ; ce593 (33:6593) - call Functionce71e ; ; ; call does not return - -; no known jump sources -Jumptable_ce596: ; ce596 (33:6596) - dw Functionce5b3 - dw Functionce59a - - -; no known jump sources -Functionce59a: ; ce59a (33:659a) - ld hl, $7 - add hl, bc - ld a, [hl] - cp $30 - jr c, .asm_ce5b0 - ld hl, $7 - add hl, bc - dec [hl] - dec [hl] - ld hl, $8 - add hl, bc - inc [hl] - inc [hl] - ret -.asm_ce5b0 - call Functioncc9bd - -; no known jump sources -Functionce5b3: ; ce5b3 (33:65b3) - ret - -; no known jump sources -Functionce5b4: ; ce5b4 (33:65b4) - ld d, $50 - ld hl, $b - add hl, bc - ld a, [hl] - inc [hl] - inc [hl] - push af - push de - call Functionce734 - sra a - sra a - ld hl, $f - add hl, bc - add [hl] - inc [hl] - ld hl, $a - add hl, bc - ld [hl], a - pop de - pop af - call Functionce732 - ld hl, $9 - add hl, bc - ld [hl], a - ret - -; no known jump sources -Functionce5dc: ; ce5dc (33:65dc) - ld hl, $a - add hl, bc - ld a, [hl] - cp $d0 - jr z, .asm_ce5ea - dec [hl] - dec [hl] - dec [hl] - dec [hl] - ret -.asm_ce5ea - call Functioncc9bd - ret - -; no known jump sources -Functionce5ee: ; ce5ee (33:65ee) - call Functionce71e ; ; ; call does not return - -; no known jump sources -Jumptable_ce5f1: ; ce5f1 (33:65f1) - dw Functionce5f9 - dw Functionce60a - dw Functionce622 - dw Functionce618 - - -; no known jump sources -Functionce5f9: ; ce5f9 (33:65f9) - ld hl, $b - add hl, bc - ld a, [hl] - and a - jr nz, asm_ce61c - call Functionce72c - ld hl, $a - add hl, bc - ld [hl], $ec - -; no known jump sources -Functionce60a: ; ce60a (33:660a) - ld hl, $a - add hl, bc - ld a, [hl] - cp $4 - jr z, Functionce618 - inc [hl] - inc [hl] - inc [hl] - inc [hl] - ret - -; known jump sources: ce611 (33:6611) -Functionce618: ; ce618 (33:6618) - call Functioncc9bd - ret -asm_ce61c: ; ce61c (33:661c) - call Functionce72c - call Functionce72c - -; no known jump sources -Functionce622: ; ce622 (33:6622) - ld hl, $a - add hl, bc - ld a, [hl] - cp $d8 - ret z - dec [hl] - dec [hl] - dec [hl] - dec [hl] - ret - -; no known jump sources -Functionce62f: ; ce62f (33:662f) - call Functionce71e ; ; ; call does not return - -; no known jump sources -Jumptable_ce632: ; ce632 (33:6632) - dw Functionce63a - dw Functionce648 - dw Functionce65c - dw Functionce672 - - -; no known jump sources -Functionce63a: ; ce63a (33:663a) - ld hl, $b - add hl, bc - ld a, [hl] - ld hl, $e - add hl, bc - ld [hl], a - call Functionce72c - ret - -; no known jump sources -Functionce648: ; ce648 (33:6648) - ld hl, $a - add hl, bc - ld a, [hl] - add $4 - cp $70 - jr c, .asm_ce654 - xor a -.asm_ce654 - ld [hl], a - ld hl, $9 - add hl, bc - inc [hl] - inc [hl] - ret - -; no known jump sources -Functionce65c: ; ce65c (33:665c) - ld hl, $a - add hl, bc - ld a, [hl] - add $4 - cp $70 - jr c, .asm_ce668 - xor a -.asm_ce668 - ld [hl], a - ld hl, $9 - add hl, bc - ld a, [hl] - add $8 - ld [hl], a - ret - -; no known jump sources -Functionce672: ; ce672 (33:6672) - ld hl, $a - add hl, bc - ld a, [hl] - add $4 - cp $70 - jr c, .asm_ce67e - xor a -.asm_ce67e - ld [hl], a - ld hl, $9 - add hl, bc - ld a, [hl] - add $4 - ld [hl], a - ret - -; no known jump sources -Functionce688: ; ce688 (33:6688) - ld hl, $7 - add hl, bc - ld d, [hl] - ld hl, $f - add hl, bc - ld e, [hl] - ld hl, $b - 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, $7 - add hl, bc - ld [hl], d - ld hl, $f - add hl, bc - ld [hl], e - ret - -; no known jump sources -Functionce6b3: ; ce6b3 (33:66b3) - ld d, $18 - ld hl, $b - add hl, bc - ld a, [hl] - inc [hl] - call Functionce6f1 - ret - -; no known jump sources -Functionce6bf: ; ce6bf (33:66bf) - ld d, $18 - ld hl, $10 - add hl, bc - ld a, [hl] - inc [hl] - srl a - ld hl, $b - add hl, bc - add [hl] - call Functionce6f1 - ret - -; no known jump sources -Functionce6d2: ; ce6d2 (33:66d2) - ld hl, $f - add hl, bc - ld a, [hl] - cp $20 - jr nc, .asm_ce6ed - inc [hl] - ld hl, $b - add hl, bc - ld d, [hl] - call Functionce734 - xor $ff - inc a - ld hl, $a - add hl, bc - ld [hl], a - ret -.asm_ce6ed - call Functioncc9bd - ret - -; known jump sources: ce58f (33:658f), ce6bb (33:66bb), ce6ce (33:66ce) -Functionce6f1: ; ce6f1 (33:66f1) - push af - push de - call Functionce734 - sra a - sra a - ld hl, $a - add hl, bc - ld [hl], a - pop de - pop af - call Functionce732 - ld hl, $9 - add hl, bc - ld [hl], a - ret - -; known jump sources: cd142 (33:5142), cd154 (33:5154), cd2ad (33:52ad), cd553 (33:5553), cd609 (33:5609), cd706 (33:5706), cd733 (33:5733), ce02f (33:602f), ce08d (33:608d), ce10a (33:610a), ce285 (33:6285), ce297 (33:6297), ce357 (33:6357) -Functionce70a: ; ce70a (33:670a) - and $f - ld e, a - ld hl, $7 - add hl, bc - add [hl] - ld [hl], a - srl e - ld hl, $8 - add hl, bc -.asm_ce719 - dec [hl] - dec e - jr nz, .asm_ce719 - ret - -; known jump sources: cd06e (33:506e), cd0e3 (33:50e3), cd12a (33:512a), cd15c (33:515c), cd212 (33:5212), cd284 (33:5284), cd2be (33:52be), cd306 (33:5306), cd3ae (33:53ae), cd3f2 (33:53f2), cd478 (33:5478), cd58a (33:558a), cd5e9 (33:55e9), cd66a (33:566a), cd6e3 (33:56e3), cd71a (33:571a), cd7a4 (33:57a4), cd80c (33:580c), cd824 (33:5824), cd89a (33:589a), cd900 (33:5900), cd954 (33:5954), cda31 (33:5a31), cda4d (33:5a4d), cdad6 (33:5ad6), cdb06 (33:5b06), cdb80 (33:5b80), cdcc3 (33:5cc3), cdd2a (33:5d2a), cdd90 (33:5d90), cddf9 (33:5df9), cde6b (33:5e6b), cde89 (33:5e89), cdf59 (33:5f59), ce00b (33:600b), ce063 (33:6063), ce0c5 (33:60c5), ce10e (33:610e), ce1e7 (33:61e7), ce226 (33:6226), ce255 (33:6255), ce2fd (33:62fd), ce35f (33:635f), ce389 (33:6389), ce3ff (33:63ff), ce43a (33:643a), ce49c (33:649c), ce55b (33:655b), ce593 (33:6593), ce5ee (33:65ee), ce62f (33:662f) -Functionce71e: ; ce71e (33:671e) - pop de - ld hl, $e - 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] - -; known jump sources: cd0ea (33:50ea), cd17a (33:517a), cd192 (33:5192), cd196 (33:5196), cd1ce (33:51ce), cd1e5 (33:51e5), cd20a (33:520a), cd21e (33:521e), cd22f (33:522f), cd2b5 (33:52b5), cd2c5 (33:52c5), cd31e (33:531e), cd321 (33:5321), cd37a (33:537a), cd3b7 (33:53b7), cd42f (33:542f), cd48d (33:548d), cd49f (33:549f), cd545 (33:5545), cd5a1 (33:55a1), cd5f2 (33:55f2), cd60d (33:560d), cd677 (33:5677), cd694 (33:5694), cd6ea (33:56ea), cd725 (33:5725), cd747 (33:5747), cd76e (33:576e), cd7ab (33:57ab), cd817 (33:5817), cd835 (33:5835), cd88f (33:588f), cd8ab (33:58ab), cd8f5 (33:58f5), cd907 (33:5907), cd961 (33:5961), cd977 (33:5977), cda43 (33:5a43), cda58 (33:5a58), cda76 (33:5a76), cda84 (33:5a84), cdadf (33:5adf), cdaf6 (33:5af6), cdb50 (33:5b50), cdbe2 (33:5be2), cdbe6 (33:5be6), cdc23 (33:5c23), cdc44 (33:5c44), cdc4d (33:5c4d), cdc71 (33:5c71), cdca2 (33:5ca2), cdcd9 (33:5cd9), cdd31 (33:5d31), cdd97 (33:5d97), cde02 (33:5e02), cde72 (33:5e72), cde90 (33:5e90), cdf88 (33:5f88), ce014 (33:6014), ce115 (33:6115), ce1ee (33:61ee), ce22d (33:622d), ce260 (33:6260), ce30f (33:630f), ce366 (33:6366), ce392 (33:6392), ce3a6 (33:63a6), ce443 (33:6443), ce48d (33:648d), ce4a3 (33:64a3), ce56e (33:656e), ce601 (33:6601), ce61c (33:661c), ce61f (33:661f), ce644 (33:6644) -Functionce72c: ; ce72c (33:672c) - ld hl, $e - add hl, bc - inc [hl] - ret - -; known jump sources: cd0d2 (33:50d2), cd11c (33:511c), cd33a (33:533a), cd44a (33:544a), cd7f5 (33:57f5), cd929 (33:5929), cd9bb (33:59bb), cdd69 (33:5d69), cddd3 (33:5dd3), cdefb (33:5efb), cdf39 (33:5f39), cdf72 (33:5f72), cdfaa (33:5faa), cdfe9 (33:5fe9), ce172 (33:6172), ce1c7 (33:61c7), ce218 (33:6218), ce246 (33:6246), ce2ee (33:62ee), ce3c9 (33:63c9), ce3e6 (33:63e6), ce429 (33:6429), ce482 (33:6482), ce4c2 (33:64c2), ce525 (33:6525), ce552 (33:6552), ce5d3 (33:65d3), ce701 (33:6701), ce76c (33:676c) -Functionce732: ; ce732 (33:6732) - add $10 - -; known jump sources: cd09c (33:509c), cd0c8 (33:50c8), cd112 (33:5112), cd1ad (33:51ad), cd1f4 (33:51f4), cd2d7 (33:52d7), cd34d (33:534d), cd440 (33:5440), cd4ca (33:54ca), cd502 (33:5502), cd5c5 (33:55c5), cd6a4 (33:56a4), cd711 (33:5711), cd73e (33:573e), cd7eb (33:57eb), cd86a (33:586a), cd8d6 (33:58d6), cd91f (33:591f), cd9a4 (33:59a4), cda90 (33:5a90), cdb77 (33:5b77), cdc30 (33:5c30), cdc5e (33:5c5e), cdc7b (33:5c7b), cdd07 (33:5d07), cdd5f (33:5d5f), cddc5 (33:5dc5), cde31 (33:5e31), cde5d (33:5e5d), cdee6 (33:5ee6), cdf24 (33:5f24), cdf95 (33:5f95), cdfd4 (33:5fd4), ce03c (33:603c), ce0a5 (33:60a5), ce0e4 (33:60e4), ce130 (33:6130), ce168 (33:6168), ce1bd (33:61bd), ce202 (33:6202), ce237 (33:6237), ce2d3 (33:62d3), ce3be (33:63be), ce41f (33:641f), ce478 (33:6478), ce4ea (33:64ea), ce51b (33:651b), ce548 (33:6548), ce5bf (33:65bf), ce6e1 (33:66e1), ce6f3 (33:66f3), ce766 (33:6766) -Functionce734: ; ce734 (33:6734) - and $3f - cp $20 - jr nc, .asm_ce73f - call Functionce749 - ld a, h - ret -.asm_ce73f - and $1f - call Functionce749 - ld a, h - xor $ff - inc a - ret - -; known jump sources: ce73a (33:673a), ce741 (33:6741) -Functionce749: ; ce749 (33:6749) - ld e, a - ld a, d - ld d, $0 - ld hl, $677f - add hl, de - add hl, de - ld e, [hl] - inc hl - ld d, [hl] - ld hl, $0 -.asm_ce758 - srl a - jr nc, .asm_ce75d - add hl, de -.asm_ce75d - sla e - rl d - and a - jr nz, .asm_ce758 - ret - -; no known jump sources -Functionce765: ; ce765 (33:6765) - ld a, e - call Functionce734 - ld e, a - ret - -; no known jump sources -Functionce76b: ; ce76b (33:676b) - ld a, e - call Functionce732 - ld e, a - ret -; ce771 (33:6771) - -INCBIN "baserom.gbc",$ce771,$ce7bf - $ce771 - -; known jump sources: cd18f (33:518f), cd19b (33:519b), cd1cb (33:51cb), cd1d4 (33:51d4), cd1e2 (33:51e2), cd2ba (33:52ba), cd419 (33:5419), cd434 (33:5434), cd4ab (33:54ab), cd53c (33:553c), cd618 (33:5618), cd6f4 (33:56f4), cd74c (33:574c), cd773 (33:5773), cd81c (33:581c), cd883 (33:5883), cd8e8 (33:58e8), cda40 (33:5a40), cda73 (33:5a73), cda89 (33:5a89), cdc20 (33:5c20), cdc3b (33:5c3b), cdc4a (33:5c4a), cdce9 (33:5ce9), cdd4b (33:5d4b), cddb1 (33:5db1), cddf5 (33:5df5), cde0c (33:5e0c), cde85 (33:5e85), cdebb (33:5ebb), ce372 (33:6372), ce3ab (33:63ab), ce458 (33:6458), ce4ad (33:64ad) -Functionce7bf: ; ce7bf (33:67bf) - ld hl, $3 - add hl, bc - ld [hl], a - ld hl, $c - add hl, bc - ld [hl], $0 - ld hl, $d - add hl, bc - ld [hl], $ff - ret - - -Functionce7d1: ; ce7d1 -.asm_ce7d1 - ld hl, $000c - 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, $000d - 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, $000c - add hl, bc - ld [hl], a - pop hl - -.asm_ce7fd - ld a, [hl] - and $c0 - srl a - ld [$d420], a - pop af - ret - -.asm_ce807 - xor a - ld hl, $000c - add hl, bc - ld [hl], a - ld hl, $000d - add hl, bc - dec [hl] - dec [hl] - jr .asm_ce7d1 - -.asm_ce815 - xor a - ld hl, $000c - add hl, bc - ld [hl], a - dec a - ld hl, $000d - add hl, bc - ld [hl], a - jr .asm_ce7d1 -; ce823 - -Functionce823: ; ce823 - ld hl, $0003 - add hl, bc - ld e, [hl] - ld d, $0 - ld hl, $685e - add hl, de - add hl, de - ld e, [hl] - inc hl - ld d, [hl] - ld hl, $000d - add hl, bc - ld l, [hl] - ld h, $0 - add hl, hl - add hl, de - ret -; ce83c - -Functionce83c: ; ce83c - ld l, a - ld h, $0 - ld de, $6eae - add hl, hl - add hl, hl - add hl, de - ret -; ce846 - - -; known jump sources: cc4b0 (33:44b0) -Functionce846: ; ce846 (33:6846) - push hl - ld l, a - ld h, $0 - add hl, hl - add hl, hl - ld de, $7cf6 - add hl, de - ld c, [hl] - inc hl - ld b, [hl] - inc hl - ld a, [hli] - ld h, [hl] - ld l, a - pop de - push bc - call Functione73 - pop bc - ret -; ce85e (33:685e) - -INCBIN "baserom.gbc",$ce85e,$cfd9e - $ce85e +INCLUDE "battle/anim_commands.asm" +INCLUDE "battle/anim_objects.asm" ; Pic animations I |