summaryrefslogtreecommitdiff
path: root/misc/battle_tower_47.asm
diff options
context:
space:
mode:
authorPikalaxALT <PikalaxALT@gmail.com>2015-11-04 07:35:41 -0500
committerPikalaxALT <PikalaxALT@gmail.com>2015-11-04 07:35:41 -0500
commitd346664b148c7d10972f772f67ffd67e147f29ea (patch)
tree1072cda9e83e1daa88e51b65200509a69bf2fb7a /misc/battle_tower_47.asm
parentfaa2d8f26e3a1a691a3319adebfd60977490415a (diff)
Split up mobile_45.asm by bank
Diffstat (limited to 'misc/battle_tower_47.asm')
-rwxr-xr-xmisc/battle_tower_47.asm2986
1 files changed, 0 insertions, 2986 deletions
diff --git a/misc/battle_tower_47.asm b/misc/battle_tower_47.asm
index 54cb2d10a..d66525916 100755
--- a/misc/battle_tower_47.asm
+++ b/misc/battle_tower_47.asm
@@ -4869,2989 +4869,3 @@ BTLossF15: ; 0x11f67c
BTWinF15: ; 0x11f681
text_jump UnknownText_0x1ecee8
db "@"
-
-
-SECTION "bank5B", ROMX, BANK[$5B]
-
-Function16c000: ; 16c000
- ld a, [hCGB]
- and a
- ret z
- ld a, [$ffea]
- and a
- ret z
- ld a, [wcfbe]
- push af
- set 7, a
- ld [wcfbe], a
- call Function16c108
- callba Function100063
- callba Function100082
- call Function16c031
- callba Function1000a4
- xor a
- ld [$ffea], a
- pop af
- ld [wcfbe], a
- ret
-; 16c031
-
-Function16c031: ; 16c031
- xor a
- ld [wJumptableIndex], a
- ld [wcf64], a
- ld [DefaultFlypoint], a
- ld [wd003], a
-.asm_16c03e
- call DelayFrame
- callba Function10635c
- ld a, [DefaultFlypoint]
- ld hl, Jumptable_16c05c
- rst JumpTable
- call Function16cb2e
- call Function16cbae
- ld a, [DefaultFlypoint]
- cp $ff
- jr nz, .asm_16c03e
- ret
-; 16c05c
-
-Jumptable_16c05c: ; 16c05c
- dw Function16c074
- dw Function16c0ba
- dw Function16c089
- dw Function16c09e
- dw Function16c0a8
- dw Function16c0dc
- dw Function16c0ec
- dw Function16c0ba
- dw Function16c0ca
- dw Function16c0dc
- dw Function16c0ec
- dw Function16c081
-; 16c074
-
-Function16c074: ; 16c074
- ld a, [wcf64]
- and a
- ret z
- ld [DefaultFlypoint], a
- xor a
- ld [wd003], a
- ret
-; 16c081
-
-Function16c081: ; 16c081
- push af
- ld a, $ff
- ld [DefaultFlypoint], a
- pop af
- ret
-; 16c089
-
-Function16c089: ; 16c089
- ld a, $1
- ld [Buffer2], a
- ld [wd1f1], a
- xor a
- ld [hWY], a
- call Function16c0fa
- ld a, [DefaultFlypoint]
- ld [wcf64], a
- ret
-; 16c09e
-
-Function16c09e: ; 16c09e
- ld a, [wcf64]
- cp $4
- ret nz
- call Function16c0fa
- ret
-; 16c0a8
-
-Function16c0a8: ; 16c0a8
- xor a
- ld [Buffer2], a
- ld [wd1f1], a
- call ClearSprites
- ld a, $90
- ld [hWY], a
- call Function16c0fa
- ret
-; 16c0ba
-
-Function16c0ba: ; 16c0ba
- call Function16c943
- push af
- ld a, [wd003]
- inc a
- ld [wd003], a
- pop af
- call c, Function16c0fa
- ret
-; 16c0ca
-
-Function16c0ca: ; 16c0ca
- ld a, [wd003]
- cp $28
- push af
- ld a, [wd003]
- inc a
- ld [wd003], a
- pop af
- call z, Function16c0fa
- ret
-; 16c0dc
-
-Function16c0dc: ; 16c0dc
- call Function16ca11
- push af
- ld a, [wd003]
- inc a
- ld [wd003], a
- pop af
- call c, Function16c0fa
- ret
-; 16c0ec
-
-Function16c0ec: ; 16c0ec
- call WhiteBGMap
- call ClearScreen
- push af
- ld a, $ff
- ld [DefaultFlypoint], a
- pop af
- ret
-; 16c0fa
-
-Function16c0fa: ; 16c0fa
- push af
- ld a, [DefaultFlypoint]
- inc a
- ld [DefaultFlypoint], a
- xor a
- ld [wd003], a
- pop af
- ret
-; 16c108
-
-Function16c108: ; 16c108
- call DisableLCD
- ld hl, VTiles2
- ld de, GFX_16c173
- lb bc, BANK(GFX_16c173), $68
- call Get2bpp
- call Function16c130
- call Function16c145
- call Function16c15c
- ld hl, VBGMap0
- call Function16cc73
- call Function16cc02
- xor a
- ld [hBGMapMode], a
- call EnableLCD
- ret
-; 16c130
-
-Function16c130: ; 16c130
- ld de, Unkn1Pals
- ld hl, Unknown_16c903
- ld bc, 8
- ld a, $5
- call FarCopyWRAM
- callba Function96a4
- ret
-; 16c145
-
-Function16c145: ; 16c145
- hlcoord 0, 0
- ld bc, 20
- xor a
- call ByteFill
- ld hl, Tilemap_16c633
- decoord 0, 1
- ld bc, $0154
- call CopyBytes
- ret
-; 16c15c
-
-Function16c15c: ; 16c15c
- hlcoord 0, 0, AttrMap
- ld bc, SCREEN_WIDTH
- xor a
- call ByteFill
- ld hl, Tilemap_16c79b
- decoord 0, 1, AttrMap
- ld bc, 17 * SCREEN_WIDTH
- call CopyBytes
- ret
-; 16c173
-
-GFX_16c173:
-INCBIN "gfx/unknown/16c173.2bpp"
-
-Tilemap_16c633:
-INCBIN "gfx/unknown/16c633.tilemap"
-
-Tilemap_16c79b:
-INCBIN "gfx/unknown/16c79b.tilemap"
-
-Unknown_16c903:
- RGB 31, 31, 31
- RGB 04, 10, 20
- RGB 16, 19, 25
- RGB 25, 27, 29
-
- RGB 31, 31, 31
- RGB 31, 31, 31
- RGB 31, 31, 31
- RGB 31, 31, 31
-
- RGB 31, 31, 31
- RGB 31, 31, 31
- RGB 31, 31, 31
- RGB 31, 31, 31
-
- RGB 31, 31, 31
- RGB 31, 31, 31
- RGB 31, 31, 31
- RGB 31, 31, 31
-
- RGB 31, 31, 31
- RGB 31, 31, 31
- RGB 31, 31, 31
- RGB 31, 31, 31
-
- RGB 31, 31, 31
- RGB 31, 31, 31
- RGB 31, 31, 31
- RGB 31, 31, 31
-
- RGB 31, 31, 31
- RGB 31, 31, 31
- RGB 31, 31, 31
- RGB 31, 31, 31
-
- RGB 31, 31, 31
- RGB 31, 31, 31
- RGB 31, 31, 31
- RGB 31, 31, 31
-
-; 16c943
-
-Function16c943: ; 16c943
- ld a, [wd003]
- and a
- jr nz, .asm_16c95e
- ld a, [rSVBK]
- push af
- ld a, $5
- ld [rSVBK], a
- ld a, $ff
- ld bc, $0008
- ld hl, Unkn1Pals
- call ByteFill
- pop af
- ld [rSVBK], a
-
-.asm_16c95e
- ld a, [rSVBK]
- push af
- ld a, $5
- ld [rSVBK], a
- ld e, $0
- ld a, $0
-.asm_16c969
- ld hl, Unknown_16c903
- call Function16cab6
- call Function16cabb
- ld d, a
- ld hl, Unkn1Pals
- call Function16cab6
- call Function16cabb
- cp d
- jr z, .asm_16c991
- ld b, $1
-.asm_16c981
- dec a
- cp d
- jr z, .asm_16c988
- dec b
- jr nz, .asm_16c981
-
-.asm_16c988
- ld hl, Unkn1Pals
- call Function16cab6
- call Function16cadc
-
-.asm_16c991
- ld hl, Unknown_16c903
- call Function16cab6
- call Function16cad8
- ld d, a
- ld hl, Unkn1Pals
- call Function16cab6
- call Function16cad8
- cp d
- jr z, .asm_16c9b9
- ld b, $1
-.asm_16c9a9
- dec a
- cp d
- jr z, .asm_16c9b0
- dec b
- jr nz, .asm_16c9a9
-
-.asm_16c9b0
- ld hl, Unkn1Pals
- call Function16cab6
- call Function16cb08
-
-.asm_16c9b9
- ld hl, Unknown_16c903
- call Function16cab6
- call Function16cac4
- ld d, a
- ld hl, Unkn1Pals
- call Function16cab6
- call Function16cac4
- cp d
- jr z, .asm_16c9e1
- ld b, $1
-.asm_16c9d1
- dec a
- cp d
- jr z, .asm_16c9d8
- dec b
- jr nz, .asm_16c9d1
-
-.asm_16c9d8
- ld hl, Unkn1Pals
- call Function16cab6
- call Function16cae8
-
-.asm_16c9e1
-rept 2
- inc e
-endr
- ld a, e
- cp $8
- jr nz, .asm_16c969
- callba Function96a4
- call SetPalettes
- ld a, [rSVBK]
- push af
- ld a, $1
- ld [rSVBK], a
- ld a, [wd003]
- cp $1f
- jr z, .asm_16ca09
- pop af
- ld [rSVBK], a
- ld e, $0
- pop af
- ld [rSVBK], a
- and a
- ret
-
-.asm_16ca09
- pop af
- ld [rSVBK], a
- pop af
- ld [rSVBK], a
- scf
- ret
-; 16ca11
-
-Function16ca11: ; 16ca11
- ld a, [wd003]
- and a
- jr nz, .asm_16ca1d
- callba Function96a4
-
-.asm_16ca1d
- ld a, [rSVBK]
- push af
- ld a, $5
- ld [rSVBK], a
- ld e, $0
- ld a, $0
-.asm_16ca28
- ld hl, Unkn1Pals
- call Function16cab6
- call Function16cabb
- cp $1f
- jr z, .asm_16ca48
- ld b, $1
-.asm_16ca37
- inc a
- cp $1f
- jr z, .asm_16ca3f
- dec b
- jr nz, .asm_16ca37
-
-.asm_16ca3f
- ld hl, Unkn1Pals
- call Function16cab6
- call Function16cadc
-
-.asm_16ca48
- ld hl, Unkn1Pals
- call Function16cab6
- call Function16cad8
- cp $1f
- jr z, .asm_16ca68
- ld b, $1
-.asm_16ca57
- inc a
- cp $1f
- jr z, .asm_16ca5f
- dec b
- jr nz, .asm_16ca57
-
-.asm_16ca5f
- ld hl, Unkn1Pals
- call Function16cab6
- call Function16cb08
-
-.asm_16ca68
- ld hl, Unkn1Pals
- call Function16cab6
- call Function16cac4
- cp $1f
- jr z, .asm_16ca88
- ld b, $1
-.asm_16ca77
- inc a
- cp $1f
- jr z, .asm_16ca7f
- dec b
- jr nz, .asm_16ca77
-
-.asm_16ca7f
- ld hl, Unkn1Pals
- call Function16cab6
- call Function16cae8
-
-.asm_16ca88
-rept 2
- inc e
-endr
- ld a, e
- cp $8
- jr nz, .asm_16ca28
- callba Function96a4
- call SetPalettes
- ld a, [rSVBK]
- push af
- ld a, $1
- ld [rSVBK], a
- ld a, [wd003]
- cp $1f
- jr z, .asm_16caae
- pop af
- ld [rSVBK], a
- pop af
- ld [rSVBK], a
- and a
- ret
-
-.asm_16caae
- pop af
- ld [rSVBK], a
- pop af
- ld [rSVBK], a
- scf
- ret
-; 16cab6
-
-Function16cab6: ; 16cab6
- ld b, $0
- ld c, e
- add hl, bc
- ret
-; 16cabb
-
-Function16cabb: ; 16cabb
- inc hl
- ld a, [hl]
- srl a
- srl a
- and $1f
- ret
-; 16cac4
-
-Function16cac4: ; 16cac4
- inc hl
- ld a, [hld]
- and $3
- ld b, a
- ld a, [hl]
- sla a
- rl b
- sla a
- rl b
- sla a
- rl b
- ld a, b
- ret
-; 16cad8
-
-Function16cad8: ; 16cad8
- ld a, [hl]
- and $1f
- ret
-; 16cadc
-
-Function16cadc: ; 16cadc
- sla a
- sla a
- ld b, a
- inc hl
- ld a, [hl]
- and $83
- or b
- ld [hl], a
- ret
-; 16cae8
-
-Function16cae8: ; 16cae8
- ld c, a
- srl a
- srl a
- srl a
- ld b, a
- inc hl
- ld a, [hl]
- and $fc
- or b
- ld [hld], a
- ld a, c
- sla a
- sla a
- sla a
- sla a
- sla a
- ld b, a
- ld a, [hl]
- and $1f
- or b
- ld [hl], a
- ret
-; 16cb08
-
-Function16cb08: ; 16cb08
- ld b, a
- ld a, [hl]
- and $e0
- or b
- ld [hl], a
- ret
-; 16cb0f
-
-Function16cb0f: ; 16cb0f
- xor a
- ld [Buffer1], a
- ld [Buffer2], a
- xor a
- ld [wd1ec], a
- ld a, $70
- ld [wd1ee], a
- ld a, $4
- ld [wd1ed], a
- ld a, $a0
- ld [wd1ef], a
- xor a
- ld [wd1f0], a
- ret
-; 16cb2e
-
-Function16cb2e: ; 16cb2e
- ld a, [Buffer2]
- and a
- ret z
- call Function16cb40
- ld hl, Unknown_16cb86
- ld de, Sprites
- call Function16cb5d
- ret
-; 16cb40
-
-Function16cb40: ; 16cb40
- ld hl, wd1ec
- inc [hl]
- ld a, [hl]
- cp $18
- ret c
- xor a
- ld [hl], a
- ld a, [wd1ef]
- cp $a0
- jr nz, .asm_16cb57
- ld a, $a7
- ld [wd1ef], a
- ret
-
-.asm_16cb57
- ld a, $a0
- ld [wd1ef], a
- ret
-; 16cb5d
-
-Function16cb5d: ; 16cb5d
- ld a, [hli]
- and a
- ret z
-.asm_16cb60
- push af
- ld a, [wd1ee]
- add [hl]
- add $10
- ld [de], a
- inc hl
- inc de
- ld a, [wd1ed]
- add [hl]
- add $8
- ld [de], a
- inc hl
- inc de
- ld a, [wd1ef]
- add [hl]
- ld [de], a
- inc hl
- inc de
- ld a, [wd1f0]
- or [hl]
- ld [de], a
- inc hl
- inc de
- pop af
- dec a
- jr nz, .asm_16cb60
- ret
-; 16cb86
-
-Unknown_16cb86:
- db 7
- db 0, 0, 0, 1
- db 8, 0, 1, 1
- db 8, 8, 2, 0
- db 8, 16, 3, 0
- db 16, 0, 4, 1
- db 16, 8, 5, 0
- db 16, 16, 6, 0
-; 16cba3
-
-Function16cba3: ; 16cba3
- xor a
- ld [wd1f1], a
- ld [wd1f2], a
- ld [wd1f3], a
- ret
-; 16cbae
-
-Function16cbae: ; 16cbae
- ld a, [wd1f1]
- and a
- ret z
- call Function16cbba
- call Function16cbd1
- ret
-; 16cbba
-
-Function16cbba: ; 16cbba
- ld hl, wd1f2
- inc [hl]
- ld a, [hl]
- cp $c
- ret c
- xor a
- ld [hl], a
- ld a, [wd1f3]
- inc a
- cp $4
- jr c, .asm_16cbcd
- xor a
-
-.asm_16cbcd
- ld [wd1f3], a
- ret
-; 16cbd1
-
-Function16cbd1: ; 16cbd1
- ld a, [wd1f3]
- ld c, a
- ld b, 0
- ld hl, Unknown_16cbfb
- add hl, bc
- ld a, [hl]
- ld bc, $0002
- ld hl, Unknown_16cfa3
- call AddNTimes
- ld de, wd00c
- ld bc, $0002
- ld a, $5
- call FarCopyWRAM
- callba Function96a4
- ld a, $1
- ld [hCGBPalUpdate], a
- ret
-; 16cbfb
-
-Unknown_16cbfb:
- db 0, 1, 2, 1, 0, 1, 2
-; 16cc02
-
-Function16cc02: ; 16cc02
- call Function16cc18
- call Function16cc49
- call Function16cc62
- call Function16cc25
- call Function16cc6e
- call Function16cb0f
- call Function16cba3
- ret
-; 16cc18
-
-Function16cc18: ; 16cc18
- ld hl, VTiles1
- ld de, GFX_16cca3
- lb bc, BANK(GFX_16cca3), $2e
- call Get2bpp
- ret
-; 16cc25
-
-Function16cc25: ; 16cc25
- ld hl, Unknown_16cfa9
- ld de, wd008
- call Function16cc41
- ld hl, Unknown_16cfb1
- ld de, Unkn2Pals
- call Function16cc41
- ld hl, Unknown_16cfb9
- ld de, wd048
- call Function16cc41
- ret
-; 16cc41
-
-Function16cc41: ; 16cc41
- ld bc, $0008
- ld a, $5
- jp FarCopyWRAM
-; 16cc49
-
-Function16cc49: ; 16cc49
- hlcoord 4, 15
- ld a, $80
- call Function16cc5a
- hlcoord 4, 16
- ld a, $90
- call Function16cc5a
- ret
-; 16cc5a
-
-Function16cc5a: ; 16cc5a
- ld c, $10
-.asm_16cc5c
- ld [hli], a
- inc a
- dec c
- jr nz, .asm_16cc5c
- ret
-; 16cc62
-
-Function16cc62: ; 16cc62
- hlcoord 0, 15, AttrMap
- ld bc, $0028
- ld a, $1
- call ByteFill
- ret
-; 16cc6e
-
-Function16cc6e: ; 16cc6e
- ld hl, VBGMap1
- jr Function16cc73
-
-Function16cc73:
- ld a, [rVBK]
- push af
- ld a, $0
- ld [rVBK], a
- push hl
- decoord 0, 0
- call Function16cc90
- pop hl
- ld a, $1
- ld [rVBK], a
- decoord 0, 0, AttrMap
- call Function16cc90
- pop af
- ld [rVBK], a
- ret
-; 16cc90
-
-Function16cc90: ; 16cc90
- ld bc, $1214
-.asm_16cc93
- push bc
-.asm_16cc94
- ld a, [de]
- inc de
- ld [hli], a
- dec c
- jr nz, .asm_16cc94
- ld bc, $000c
- add hl, bc
- pop bc
- dec b
- jr nz, .asm_16cc93
- ret
-; 16cca3
-
-GFX_16cca3:
-INCBIN "gfx/unknown/16cca3.2bpp"
-
-Unknown_16cfa3:
- RGB 31, 31, 31
- RGB 25, 27, 29
- RGB 16, 19, 25
-
-Unknown_16cfa9:
- RGB 31, 31, 31
- RGB 25, 27, 29
- RGB 31, 31, 31
- RGB 07, 07, 07
-
-
-Unknown_16cfb1:
- RGB 31, 31, 31
- RGB 13, 09, 18
- RGB 26, 21, 16
- RGB 07, 07, 07
-
-
-Unknown_16cfb9:
- RGB 31, 31, 31
- RGB 18, 05, 02
- RGB 27, 11, 12
- RGB 07, 07, 07
-
-; 16cfc1
-
-GFX_16cfc1:
-INCBIN "gfx/unknown/16cfc1.2bpp"
-
-Function16d421: ; 16d421
- ld de, GFX_16cfc1
- ld hl, VTiles2
- lb bc, BANK(GFX_16cfc1), $46
- call Get2bpp
- ret
-; 16d42e
-
-Function16d42e: ; 16d42e
- ld hl, Tilemap_16d465
- decoord 0, 0
- ld bc, SCREEN_WIDTH * SCREEN_HEIGHT
- call CopyBytes
- ret
-; 16d43b
-
-Function16d43b: ; 16d43b
- call LoadMenuDataHeader_0x1d75
- call WhiteBGMap
- call ClearTileMap
- call ClearSprites
- callba Function16d421
- callba Function16d42e
- ld b, $8
- call GetSGBLayout
- call SetPalettes
- call WaitBGMap
- call JoyWaitAorB
- call Call_ExitMenu
- ret
-; 16d465
-
-Tilemap_16d465:
-INCBIN "gfx/unknown/16d465.tilemap"
-
-Tilemap_16d5cd:
-INCBIN "gfx/unknown/16d5cd.tilemap"
-
-Tilemap_16d5f5:
-INCBIN "gfx/unknown/16d5f5.tilemap"
-
-Function16d61d: ; 16d61d
- ld h, d
- ld l, e
- push bc
- push hl
- call Function16d640
- pop hl
- pop bc
- ld de, AttrMap - TileMap
- add hl, de
-rept 2
- inc b
-endr
-rept 2
- inc c
-endr
- ld a, $7
-.asm_16d630
- push bc
- push hl
-.asm_16d632
- ld [hli], a
- dec c
- jr nz, .asm_16d632
- pop hl
- ld de, $0014
- add hl, de
- pop bc
- dec b
- jr nz, .asm_16d630
- ret
-; 16d640
-
-Function16d640: ; 16d640
- push hl
- ld a, $30
- ld [hli], a
- inc a
- call Function16d66d
- inc a
- ld [hl], a
- pop hl
- ld de, $0014
- add hl, de
-.asm_16d64f
- push hl
- ld a, $33
- ld [hli], a
- ld a, $7f
- call Function16d66d
- ld [hl], $34
- pop hl
- ld de, $0014
- add hl, de
- dec b
- jr nz, .asm_16d64f
- ld a, $35
- ld [hli], a
- ld a, $36
- call Function16d66d
- ld [hl], $37
- ret
-; 16d66d
-
-Function16d66d: ; 16d66d
- ld d, c
-.asm_16d66e
- ld [hli], a
- dec d
- jr nz, .asm_16d66e
- ret
-; 16d673
-
-Function16d673: ; 16d673
- call Function16d696
- call Function16d6ae
- callba Function49856
- callba Functionfb60d
- hlcoord 10, 17
- ld de, String_16d68f
- call PlaceString
- ret
-; 16d68f
-
-String_16d68f: ; 16d68f
- db "CANCEL@"
-; 16d696
-
-Function16d696: ; 16d696
- call Function16d421
- ret
-; 16d69a
-
-
-Function16d69a: ; 16d69a
- ld de, GFX_16cfc1 + $300
- ld hl, VTiles2 tile $76
- lb bc, BANK(GFX_16cfc1), 8
- call Get2bpp
- ret
-; 16d6a7
-
-Function16d6a7: ; 16d6a7
- callba Function49811
- ret
-; 16d6ae
-
-Function16d6ae: ; 16d6ae
- call Function16d42e
- ld hl, Tilemap_16d5cd
- decoord 0, 0
- ld bc, $0028
- call CopyBytes
- ld hl, Tilemap_16d5f5
- decoord 0, 16
- ld bc, $0028
- call CopyBytes
- ret
-; 16d6ca
-
-Function16d6ca: ; 16d6ca
- call Function16d61d
- ret
-; 16d6ce
-
-Function16d6ce: ; 16d6ce
- call LoadMenuDataHeader_0x1d75
- call Function16d6e1
- callba Function87d
- call Call_ExitMenu
- call Function3200
- ret
-; 16d6e1
-
-Function16d6e1: ; 16d6e1
- hlcoord 4, 10
- ld b, $1
- ld c, $a
- predef Function28eef
- hlcoord 5, 11
- ld de, String_16d701
- call PlaceString
- call WaitBGMap
- call Function3200
- ld c, $32
- jp DelayFrames
-; 16d701
-
-String_16d701: ; 16d701
- db "WAITING..!@"
-; 16d70c
-
-Function16d70c: ; 16d70c
- call Function16d725
- call Function16d713
- ret
-; 16d713
-
-Function16d713: ; 16d713
- push bc
- push af
- ld a, [hJoyLast]
- and $f0
- ld b, a
- ld a, [hJoyPressed]
- and $f
- or b
- ld b, a
- pop af
- ld a, b
- pop bc
- ld d, a
- ret
-; 16d725
-
-Function16d725: ; 16d725
- ld hl, wcfa6
- res 7, [hl]
- ld a, [hBGMapMode]
- push af
- call Function16d734
- pop af
- ld [hBGMapMode], a
- ret
-; 16d734
-
-Function16d734: ; 16d734
-.asm_16d734
- call Function16d77a
- call Function16d759
- call Function16d76a
- jr nc, .asm_16d758
- callba Function24270
- jr c, .asm_16d758
- ld a, [wcfa5]
- bit 7, a
- jr nz, .asm_16d758
- call Function16d713
- ld b, a
- ld a, [wcfa8]
- and b
- jr z, .asm_16d734
-
-.asm_16d758
- ret
-; 16d759
-
-Function16d759: ; 16d759
- ld a, [hOAMUpdate]
- push af
- ld a, $1
- ld [hOAMUpdate], a
- call WaitBGMap
- pop af
- ld [hOAMUpdate], a
- xor a
- ld [hBGMapMode], a
- ret
-; 16d76a
-
-Function16d76a: ; 16d76a
-.asm_16d76a
- call RTC
- call Function16d7e7
- ret c
- ld a, [wcfa5]
- bit 7, a
- jr z, .asm_16d76a
- and a
- ret
-; 16d77a
-
-Function16d77a: ; 16d77a
- ld hl, wcfac
- ld a, [hli]
- ld h, [hl]
- ld l, a
- ld a, [hl]
- cp $1f
- jr nz, .asm_16d792
- ld a, [wcfab]
- ld [hl], a
- push hl
- push bc
- ld bc, $000b
- add hl, bc
- ld [hl], a
- pop bc
- pop hl
-
-.asm_16d792
- ld a, [wcfa1]
- ld b, a
- ld a, [wcfa2]
- ld c, a
- call GetTileCoord
- ld a, [wcfa7]
- swap a
- and $f
- ld c, a
- ld a, [wcfa9]
- ld b, a
- xor a
- dec b
- jr z, .asm_16d7b1
-.asm_16d7ad
- add c
- dec b
- jr nz, .asm_16d7ad
-
-.asm_16d7b1
- ld c, $14
- call AddNTimes
- ld a, [wcfa7]
- and $f
- ld c, a
- ld a, [wcfaa]
- ld b, a
- xor a
- dec b
- jr z, .asm_16d7c8
-.asm_16d7c4
- add c
- dec b
- jr nz, .asm_16d7c4
-
-.asm_16d7c8
- ld c, a
- add hl, bc
- ld a, [hl]
- cp $1f
- jr z, .asm_16d7de
- ld [wcfab], a
- ld [hl], $1f
- push hl
- push bc
- ld bc, $000b
- add hl, bc
- ld [hl], $1f
- pop bc
- pop hl
-
-.asm_16d7de
- ld a, l
- ld [wcfac], a
- ld a, h
- ld [wcfad], a
- ret
-; 16d7e7
-
-Function16d7e7: ; 16d7e7
- ld a, [wcfa5]
- bit 6, a
- jr z, .asm_16d7f4
- callba Function8cf62
-
-.asm_16d7f4
- call JoyTextDelay
- call Function16d713
- and a
- ret z
- scf
- ret
-; 16d7fe
-
-
-SECTION "bank5C", ROMX, BANK[$5C]
-
-Function170000: ; 170000
- ld a, [$c62b]
- ld [$c6d0], a
- ld hl, $c62e
- ld de, $c6e7
- ld bc, $0005
- call CopyBytes
- ld a, $50
- ld [de], a
- ld hl, $c663
- ld de, $c6f2
- ld bc, $0005
- call CopyBytes
- ld a, $50
- ld [de], a
- ld hl, $c648
- ld a, [hli]
- ld [$c6fd], a
- ld a, [hl]
- ld [$c6fe], a
- ld hl, $c639
- ld a, [hli]
- ld [$c6ff], a
- ld a, [hl]
- ld [wc700], a
- ld bc, $c633
- callba GetCaughtGender
- ld a, c
- ld [wc701], a
- ld a, [wcd81]
- ld [wc74e], a
- ld hl, $c608
- ld de, $d800
- ld bc, $008f
- call CopyBytes
- ret
-; 17005a
-
-Function17005a: ; 17005a
- ld a, $5
- call GetSRAMBank
- ld a, [$a824]
- ld [wc702], a
- ld hl, $a827
- ld de, wc719
- ld bc, $0005
- call CopyBytes
- ld a, $50
- ld [de], a
- ld hl, $a85c
- ld de, wc724
- ld bc, $0005
- call CopyBytes
- ld a, $50
- ld [de], a
- ld hl, $a841
- ld a, [hli]
- ld [wc72f], a
- ld a, [hl]
- ld [wc730], a
- ld hl, $a832
- ld a, [hli]
- ld [wc731], a
- ld a, [hl]
- ld [wc732], a
- ld bc, $a82c
- callba GetCaughtGender
- ld a, c
- ld [wc733], a
- ld a, [wcd81]
- ld [wc74e], a
- call CloseSRAM
- ret
-; 1700b0
-
-Function1700b0: ; 1700b0
- call Function17021e
- callba Function118121
- ret
-; 1700ba
-
-Function1700ba: ; 1700ba
- call Function17021e
- callba Function11811a
- ret
-; 1700c4
-
-Function1700c4: ; 1700c4
- ld a, [rSVBK]
- push af
- ld a, $3
- ld [rSVBK], a
- call Function17042c
- ld a, $5
- call GetSRAMBank
- ld a, $1
- ld [$be45], a
- xor a
- ld [$be46], a
- ld hl, $dffc
- ld de, $aa41
- ld bc, $0004
- call CopyBytes
- ld hl, $d202
- ld de, $aa8e
- ld bc, $0594
- call CopyBytes
- ld hl, $aa5d
- ld a, [hl]
- inc [hl]
- inc hl
- sla a
- sla a
- ld e, a
- ld d, $0
- add hl, de
- ld e, l
- ld d, h
- ld hl, $dffc
- ld bc, $0004
- call CopyBytes
- call CloseSRAM
- pop af
- ld [rSVBK], a
- ret
-; 170114
-
-Function170114: ; 170114
- call Function17021e
- call Function170121
- callba Function11805f
- ret
-; 170121
-
-Function170121: ; 170121
- ld a, $5
- call GetSRAMBank
- ld hl, $a948
- ld de, $c608
- ld bc, $00f6
- call CopyBytes
- call CloseSRAM
- call Function170c8b
- ret
-; 170139
-
-Function170139: ; 170139
- ld a, $5
- call GetSRAMBank
- ld de, $aa41
- ld h, $0
- ld l, h
- ld bc, $03e8
- call Function17020c
- ld bc, $0064
- call Function17020c
- ld bc, $000a
- call Function17020c
- ld a, [de]
- ld c, a
- ld b, $0
- add hl, bc
- call CloseSRAM
- ld a, h
- ld [$c608], a
- ld a, l
- ld [$c608 + 1], a
- ld hl, $c628
- ld a, [PlayerID]
- ld [hli], a
- ld a, [PlayerID + 1]
- ld [hli], a
- ld a, [wSecretID]
- ld [hli], a
- ld a, [wSecretID + 1]
- ld [hli], a
- ld e, l
- ld d, h
- ld hl, PlayerName
- ld bc, $0005
- call CopyBytes
- ld bc, PlayerID
- ld de, PlayerGender
- callba Function4e929
- ld de, $c62c + 5
- ld a, c
- ld [de], a
- inc de
- ld a, $df
- ld [wcd49], a
- ld a, $dc
- ld [wcd4a], a
- ld a, $41
- ld [wcd4b], a
- ld a, $de
- ld [wcd4c], a
- ld a, $3
-.asm_1701ac
- push af
- ld a, [wcd49]
- ld l, a
- ld a, [wcd4a]
- ld h, a
- ld bc, $0030
- call CopyBytes
- ld a, l
- ld [wcd49], a
- ld a, h
- ld [wcd4a], a
- ld a, [wcd4b]
- ld l, a
- ld a, [wcd4c]
- ld h, a
- ld bc, $0006
- call CopyBytes
- ld a, l
- ld [wcd4b], a
- ld a, h
- ld [wcd4c], a
- pop af
- dec a
- jr nz, .asm_1701ac
- ld a, $4
- call GetSRAMBank
- ld hl, $a013
- ld bc, $0024
- call CopyBytes
- call CloseSRAM
- ld a, $5
- call GetSRAMBank
- ld hl, $a894
- ld bc, $0006
- call CopyBytes
- ld hl, $c608
- ld de, $a948
- ld bc, $00f6
- call CopyBytes
- call CloseSRAM
- ret
-; 17020c
-
-Function17020c: ; 17020c
- ld a, [de]
- inc de
- and a
- ret z
-.asm_170210
- add hl, bc
- dec a
- jr nz, .asm_170210
- ret
-; 170215
-
-BattleTowerBattle: ; 170215
- xor a
- ld [wJumptableIndex], a
- call Function17022c
- ret
-; 17021d
-
-Function17021d: ; 17021d
- ret
-; 17021e
-
-Function17021e: ; 17021e
- xor a
- ld [wJumptableIndex], a
- ld [wcf64], a
- ld [wcf65], a
- ld [wcf66], a
- ret
-; 17022c
-
-Function17022c: ; 17022c
-.loop
- call Jumpto_BattleTowerBattleFunction
- call DelayFrame
- ld a, [wJumptableIndex]
- cp $1
- jr nz, .loop
- ret
-; 17023a
-
-Jumpto_BattleTowerBattleFunction: ; 17023a
- ld a, [wJumptableIndex]
- ld e, a
- ld d, 0
- ld hl, Jumptable_BattleTowerBattleFunctions
-rept 2
- add hl, de
-endr
- ld a, [hli]
- ld h, [hl]
- ld l, a
- jp [hl]
-; 170249
-
-Jumptable_BattleTowerBattleFunctions: ; 170249
- dw RunBattleTowerBattle
- dw SkipBattleTowerBattle
-; 17024d
-
-RunBattleTowerBattle: ; 17024d
- ld a, [Options]
- push af
- ld hl, Options
- set 6, [hl]
- ld a, [InBattleTowerBattle]
- push af
- or $1
- ld [InBattleTowerBattle], a
- xor a
- ld [wLinkMode], a
- callba Mobile_HealParty
- callba HealParty
- call Function1702b7
- call Function170bf7
- predef StartBattle
- callba LoadPokemonData
- callba HealParty
- ld a, [wBattleResult]
- ld [ScriptVar], a
- and a
- jr nz, .lost
- ld a, BANK(sNrOfBeatenBattleTowerTrainers)
- call GetSRAMBank
- ld a, [sNrOfBeatenBattleTowerTrainers]
- ld [wNrOfBeatenBattleTowerTrainers], a ; wcf64
- call CloseSRAM
- ld hl, StringBuffer3
- ld a, [wNrOfBeatenBattleTowerTrainers] ; wcf64
- add $f7
- ld [hli], a
- ld a, $50
- ld [hl], a
-
-.lost
- pop af
- ld [InBattleTowerBattle], a
- pop af
- ld [Options], a
- ld a, $1
- ld [wJumptableIndex], a
- ret
-
-
-Function1702b7: ; 1702b7
-; Initialise the BattleTower-Trainer and his Pkmn
- call CopyBTTrainer_FromBT_OTrainer_TowBT_OTTempCopy
- ld de, wBT_OTTempCopy + wBT_OTTempCopy_Pkmn1Name ; $c643
- ld c, PKMN_NAME_LENGTH
- callba Function17d073
- jr nc, .asm_1702db
-
- ld a, [wBT_OTTempCopy + wBT_OTTempCopy_Pkmn1]
- ld [wd265], a
- call GetPokemonName
- ld l, e
- ld h, d
- ld de, wBT_OTTempCopy + wBT_OTTempCopy_Pkmn1Name ; $c643
- ld bc, PKMN_NAME_LENGTH
- call CopyBytes
-
-.asm_1702db
- ld de, wBT_OTTempCopy + wBT_OTTempCopy_Pkmn2Name ; $c67e
- ld c, PKMN_NAME_LENGTH
- callba Function17d073
- jr nc, .asm_1702fc
- ld a, [wBT_OTTempCopy + wBT_OTTempCopy_Pkmn2] ; [$c64e]
- ld [wd265], a
- call GetPokemonName
- ld l, e
- ld h, d
- ld de, wBT_OTTempCopy + wBT_OTTempCopy_Pkmn2Name ; $c67e
- ld bc, PKMN_NAME_LENGTH
- call CopyBytes
-
-.asm_1702fc
- ld de, wBT_OTTempCopy + wBT_OTTempCopy_Pkmn3Name ; $c686 + 51 = $c6b9
- ld c, PKMN_NAME_LENGTH
- callba Function17d073
- jr nc, .asm_17031d
- ld a, [wBT_OTTempCopy + wBT_OTTempCopy_Pkmn3] ; [$c689]
- ld [wd265], a
- call GetPokemonName
- ld l, e
- ld h, d
- ld de, wBT_OTTempCopy + wBT_OTTempCopy_Pkmn3Name ; $c686 + 51 = $c6b9
- ld bc, PKMN_NAME_LENGTH
- call CopyBytes
-
-.asm_17031d
- ld a, $50
- ld [wBT_OTTempCopy + wBT_OTTempCopy_45], a ; $c64d
- ld [wBT_OTTempCopy + wBT_OTTempCopy_80], a ; $c688
- ld [wBT_OTTempCopy + wBT_OTTempCopy_BB], a ; $c68a + 57 = $c6c3
- call Function170c98
- ld de, wBT_OTTempCopy
- ld c, $a
- callba Function17d073
- jr nc, .asm_17033d
- ld hl, String_170426
- jr .asm_170340
-
-.asm_17033d
- ld hl, wBT_OTTempCopy ; 0xc608
-
-.asm_170340
- ld de, wd26b
- ld bc, $000a
- call CopyBytes
- ld a, $50
- ld [de], a
- ld hl, wBT_OTTempCopy + wBT_OTTempCopy_TrainerClass
- ld a, [hli]
- ld [OtherTrainerClass], a
- ld a, $ea
- ld [BGMapBuffer], a
- ld a, $d3
- ld [wcd21], a
-
- ; Copy Pkmn into Memory from the address in hl
- ld de, OTPartyMon1Species
- ld bc, OTPartyCount
- ld a, BATTLETOWER_NROFPKMNS ; Number of Pkmn the BattleTower-Trainer has
- ld [bc], a
- inc bc
-.asm_170367
- push af
- ld a, [hl]
- ld [bc], a
- inc bc
- push bc
- ld bc, party_struct_length
- call CopyBytes
- push de
- ld a, [BGMapBuffer]
- ld e, a
- ld a, [wcd21]
- ld d, a
- ld bc, $000b
- call CopyBytes
- ld a, e
- ld [BGMapBuffer], a
- ld a, d
- ld [wcd21], a
- pop de
- pop bc
- pop af
- dec a
- and a
- jr nz, .asm_170367
- ld a, $ff
- ld [bc], a
- ret
-; 170394
-
-Function170394: ; 170394
- ld hl, $c608 + 11
- ld d, $3
-.asm_170399
- push de
- push hl
- ld b, h
- ld c, l
- ld a, [hl]
- and a
- jr z, .asm_1703b1
- cp $ff
- jr z, .asm_1703b1
- cp $fe
- jr z, .asm_1703b1
- cp $fd
- jr z, .asm_1703b1
- cp $fc
- jr nz, .asm_1703b4
-
-.asm_1703b1
- ld a, $eb
- ld [hl], a
-
-.asm_1703b4
- ld [CurSpecies], a
- call GetBaseData
- ld a, $5
- call GetSRAMBank
- ld a, [$b2fb]
- call CloseSRAM
- ld e, a
- ld hl, $001f
- add hl, bc
- ld a, [hl]
- cp $2
- ld a, $2
- jr c, .asm_1703d6
- ld a, [hl]
- cp e
- jr c, .asm_1703d7
- ld a, e
-
-.asm_1703d6
- ld [hl], a
-
-.asm_1703d7
- ld [CurPartyLevel], a
- ld hl, $0002
- add hl, bc
- ld d, $3
- ld a, [hli]
- and a
- jr z, .asm_1703ea
- cp $fc
- jr nc, .asm_1703ea
- jr .asm_1703f4
-
-.asm_1703ea
- dec hl
- ld a, $1
- ld [hli], a
- xor a
-rept 2
- ld [hli], a
-endr
- ld [hl], a
- jr .asm_1703ff
-
-.asm_1703f4
- ld a, [hl]
- cp $fc
- jr c, .asm_1703fb
- ld [hl], $0
-
-.asm_1703fb
- inc hl
- dec d
- jr nz, .asm_1703f4
-
-.asm_1703ff
- ld hl, $0024
- add hl, bc
- ld d, h
- ld e, l
- push hl
- push de
- ld hl, $000a
- add hl, bc
- ld b, $1
- predef CalcPkmnStats
- pop de
- pop hl
-rept 2
- dec de
-endr
- ld a, [hli]
- ld [de], a
- inc de
- ld a, [hl]
- ld [de], a
- pop hl
- ld bc, $003b
- add hl, bc
- pop de
- dec d
- jp nz, .asm_170399
- ret
-; 170426
-
-String_170426: ; 170426
- db "CHRIS@"
-; 17042c
-
-Function17042c: ; 17042c
- ld hl, OTPartyMon2ID
- ld a, $7
-.asm_170431
- push af
- push hl
- ld c, $12
-.asm_170435
- ld a, [hli]
- ld b, a
- ld a, [hli]
- and a
- jr z, .asm_170451
- cp $f
- jr nc, .asm_17045b
- push hl
- ld hl, Unknown_170470
- dec a
- ld e, a
- ld d, 0
- add hl, de
- ld a, [hl]
- pop hl
- cp b
- jr c, .asm_17045b
- jr z, .asm_17045b
- jr .asm_170456
-
-.asm_170451
- ld a, b
- cp $fc
- jr nc, .asm_17045b
-
-.asm_170456
- dec c
- jr nz, .asm_170435
- jr .asm_170466
-
-.asm_17045b
- pop de
- push de
- ld hl, Unknown_17047e
- ld bc, $0024
- call CopyBytes
-
-.asm_170466
- pop hl
- ld de, $00e0
- add hl, de
- pop af
- dec a
- jr nz, .asm_170431
- ret
-; 170470
-
-Unknown_170470:
- db $12, $24, $45, $45, $42, $42, $45, $42, $27, $27, $45, $27, $42, $24
-
-Unknown_17047e:
- db $03, $04, $05, $08
- db $03, $05, $0e, $06
- db $03, $02, $00, $00
- db $39, $07, $07, $04
- db $00, $05, $04, $07
- db $01, $05, $00, $00
- db $0f, $05, $14, $07
- db $05, $05, $11, $0c
- db $0c, $06, $06, $04
-
-
-CopyBTTrainer_FromBT_OTrainer_TowBT_OTTempCopy: ; 1704a2
-; copy the BattleTower-Trainer data that lies at 'BT_OTrainer' to 'wBT_OTTempCopy'
- ld a, [rSVBK]
- push af
- ld a, $3
- ld [rSVBK], a
- ld hl, BT_OTrainer ; $d100
- ld de, wBT_OTTempCopy ; $c608
- ld bc, BT_OTrainerEnd - BT_OTrainer ; $e0 = $a + $1 + 3*$3b + $24
- ; = $a + $1 + BATTLETOWER_NROFPKMNS * (party_struct_length + PKMN_NAME_LENGTH) + BATTLETOWER_TRAINERDATALENGTH
- call CopyBytes
- pop af
- ld [rSVBK], a
- ld a, BANK(s1_be45)
- call GetSRAMBank
- ld a, $2
- ld [s1_be45], a
- ld hl, sNrOfBeatenBattleTowerTrainers
- inc [hl]
- call CloseSRAM
-SkipBattleTowerBattle: ; 1704c9
- ret
-; 1704ca
-
-
-Function1704ca: ; 1704ca
- ld a, [$be46]
- cp $7
- jr c, .asm_1704d3
- ld a, $6
-
-.asm_1704d3
- ld hl, $afce
- ld de, -$e0
-.asm_1704d9
- and a
- jr z, .asm_1704e0
- add hl, de
- dec a
- jr .asm_1704d9
-
-.asm_1704e0
- ret
-; 1704e1
-
-Function1704e1: ; 1704e1
- call SpeechTextBox
- call FadeToMenu
- call Function17021e
- call Function1704f1
- call Function2b3c
- ret
-; 1704f1
-
-Function1704f1: ; 1704f1
- call WhiteBGMap
- call ClearSprites
- call ClearScreen
-.asm_1704fa
- call JoyTextDelay
- ld a, [wJumptableIndex]
- bit 7, a
- jr nz, .asm_17050f
- call Function170510
- callba Function104061
- jr .asm_1704fa
-
-.asm_17050f
- ret
-; 170510
-
-Function170510: ; 170510
- ld a, [wJumptableIndex]
- ld e, a
- ld d, 0
- ld hl, Jumptable_17051f
-rept 2
- add hl, de
-endr
- ld a, [hli]
- ld h, [hl]
- ld l, a
- jp [hl]
-; 17051f
-
-Jumptable_17051f: ; 17051f
- dw Function170525
- dw Function170571
- dw Function170577
-; 170525
-
-Function170525: ; 170525
- ld a, $5
- call GetSRAMBank
-
- ld hl, $a89c
- ld de, StringBuffer3
- ld bc, $0016
- call CopyBytes
-
- ld hl, $a8b2
- ld de, $c608
- ld bc, $0096
- call CopyBytes
-
- call CloseSRAM
- hlcoord 1, 1
- ld de, StringBuffer3
- call PlaceString
- hlcoord 1, 3
- ld de, String_170676
- call PlaceString
- hlcoord 4, 3
- ld de, StringBuffer4
- call PlaceString
- hlcoord 8, 3
- ld de, String_17067a
- call PlaceString
- call Function1705b7
- call Function1705f0
- jr Function1705b2
-
-
-Function170571:
- call SetPalettes
- call Function1705b2
-
-
-Function170577:
- ld hl, hJoyPressed
- ld a, [hl]
- and $1
- jr nz, .asm_1705ac
- ld a, [hl]
- and $2
- jr nz, .asm_1705ac
- ld a, [hl]
- and $40
- jr nz, .asm_17058f
- ld a, [hl]
- and $80
- jr nz, .asm_17059d
- ret
-
-.asm_17058f
- ld a, [wcf64]
- and a
- ret z
- sub $f
- ld [wcf64], a
- call Function1705f0
- ret
-
-.asm_17059d
- ld a, [wcf64]
- cp $3c
- ret z
- add $f
- ld [wcf64], a
- call Function1705f0
- ret
-
-.asm_1705ac
- ld hl, wJumptableIndex
- set 7, [hl]
- ret
-
-Function1705b2:
- ld hl, wJumptableIndex
- inc [hl]
- ret
-; 1705b7
-
-Function1705b7: ; 1705b7
- hlcoord 0, 4
- ld a, $79
- ld [hli], a
- ld c, $12
-.asm_1705bf
- ld a, $7a
- ld [hli], a
- dec c
- jr nz, .asm_1705bf
- ld a, $7b
- ld [hli], a
- ld de, $0014
- ld c, $c
-.asm_1705cd
- ld a, $7c
- ld [hl], a
- add hl, de
- dec c
- jr nz, .asm_1705cd
- ld a, $7d
- ld [hli], a
- ld c, $12
-.asm_1705d9
- ld a, $7a
- ld [hli], a
- dec c
- jr nz, .asm_1705d9
- ld a, $7e
- ld [hl], a
- ld de, $ffec
- add hl, de
- ld c, $c
-.asm_1705e8
- ld a, $7c
- ld [hl], a
- add hl, de
- dec c
- jr nz, .asm_1705e8
- ret
-; 1705f0
-
-Function1705f0: ; 1705f0
- call Function17064b
- call Function17065d
- ld a, $50
- ld [wcd4e], a
- ld hl, $c608
- ld a, [wcf64]
- ld c, a
- xor a
- ld b, a
- add hl, bc
- push hl
- pop bc
- hlcoord 1, 6
- ld a, $6
-.asm_17060c
- push af
- push hl
- ld a, $3
-.asm_170610
- push af
- ld de, wcd49
- ld a, [bc]
- and a
- jr z, .asm_170625
- ld a, $5
-.asm_17061a
- push af
- ld a, [bc]
- ld [de], a
- inc bc
- inc de
- pop af
- dec a
- jr nz, .asm_17061a
- jr .asm_170631
-
-.asm_170625
- ld a, $5
-.asm_170627
- push af
- ld a, $e3
- ld [de], a
- inc de
- inc bc
- pop af
- dec a
- jr nz, .asm_170627
-
-.asm_170631
- ld de, wcd49
- push bc
- call PlaceString
- ld de, $0006
- add hl, de
- pop bc
- pop af
- dec a
- jr nz, .asm_170610
- pop hl
- ld de, $0028
- add hl, de
- pop af
- dec a
- jr nz, .asm_17060c
- ret
-; 17064b
-
-Function17064b: ; 17064b
- hlcoord 1, 5
- xor a
- ld b, $c
-.asm_170651
- ld c, $12
-.asm_170653
- ld [hli], a
- dec c
- jr nz, .asm_170653
-rept 2
- inc hl
-endr
- dec b
- jr nz, .asm_170651
- ret
-; 17065d
-
-Function17065d: ; 17065d
- ld a, [wcf64]
- and a
- jr z, .asm_170669
- hlcoord 18, 5
- ld a, $61
- ld [hl], a
-
-.asm_170669
- ld a, [wcf64]
- cp $3c
- ret z
- hlcoord 18, 16
- ld a, $ee
- ld [hl], a
- ret
-; 170676
-
-String_170676: ; 170676
- db "ルーム@"
-; 17067a
-
-String_17067a: ; 17067a
- db "れきだいりーダーいちらん@"
-; 170687
-
-BattleTowerAction: ; 170687
- ld a, [ScriptVar]
- ld e, a
- ld d, 0
- ld hl, .jumptable
-rept 2
- add hl, de
-endr
- ld a, [hli]
- ld h, [hl]
- ld l, a
- jp [hl]
-; 170696
-
-
-.jumptable: ; 170696 (5c:4696)
- dw Function17075f ; 0x00
- dw Function170788 ; 0x01
- dw Function170778 ; 0x02
- dw Function170799 ; 0x03
- dw Function17079d ; 0x04
- dw Function1707ac ; 0x05
- dw Function1707f4 ; 0x06
- dw Function170868 ; 0x07
- dw Function170881 ; 0x08
- dw Function17089a ; 0x09
- dw Function1708b1 ; 0x0a
- dw Function1708b9 ; 0x0b
- dw Function1708c8 ; 0x0c
- dw Function1708f0 ; 0x0d
- dw Function17093c ; 0x0e
- dw Function1709aa ; 0x0f
- dw Function1709bb ; 0x10
- dw Function170a9c ; 0x11
- dw Function170aa0 ; 0x12
- dw Function170aaf ; 0x13
- dw Function170abe ; 0x14
- dw Function170ad7 ; 0x15
- dw Function170807 ; 0x16
- dw Function17081d ; 0x17
- dw Function170ae8 ; 0x18
- dw Function170b16 ; 0x19
- dw ResetBattleTowerTrainersSRAM ; 0x1a
- dw Function1706ee ; 0x1b
- dw Function17071b ; 0x1c
- dw Function170729 ; 0x1d
- dw Function17073e ; 0x1e
- dw Function170737 ; 0x1f
-
-
-; Reset the save memory for BattleTower-Trainers (Counter and all 7 TrainerBytes)
-ResetBattleTowerTrainersSRAM: ; 1706d6 (5c:46d6) BattleTowerAction $1a
- ld a, BANK(sBTTrainers)
- call GetSRAMBank
-
- ld a, $ff
- ld hl, sBTTrainers
- ld bc, BATTLETOWER_NROFTRAINERS
- call ByteFill
-
- xor a
- ld [sNrOfBeatenBattleTowerTrainers], a
-
- call CloseSRAM
-
- ret
-
-Function1706ee: ; 1706ee (5c:46ee)
- ld a, BANK(sbe50)
- call GetSRAMBank
-
- ld a, [sbe50]
- call CloseSRAM
- ld [ScriptVar], a
- ld hl, NumItems
- ld a, [hli]
- cp $14
- ret c
- ld b, $14
- ld a, [ScriptVar]
- ld c, a
-.asm_170709
- ld a, [hli]
- cp c
- jr nz, .asm_170711
- ld a, [hl]
- cp $5f
- ret c
-.asm_170711
- inc hl
- dec b
- jr nz, .asm_170709
- ld a, $12
- ld [ScriptVar], a
- ret
-
-Function17071b: ; 17071b (5c:471b)
- ld a, BANK(s1_be45)
- call GetSRAMBank
- ld a, $3
- ld [s1_be45], a
- call CloseSRAM
- ret
-
-Function170729: ; 170729 (5c:4729)
- ld a, BANK(s1_be45)
- call GetSRAMBank
- ld a, $4
- ld [s1_be45], a
- call CloseSRAM
- ret
-
-Function170737: ; 170737 (5c:4737)
- callba SaveOptions
- ret
-
-Function17073e: ; 17073e (5c:473e)
- call Random
- ld a, [hRandomAdd] ; $ff00+$e1
- and $7
- cp $6
- jr c, .asm_17074b
- sub $6
-.asm_17074b
- add $1a
- cp $1e
- jr z, Function17073e
- push af
- ld a, BANK(sbe50)
- call GetSRAMBank
- pop af
- ld [sbe50], a
- call CloseSRAM
- ret
-
-Function17075f: ; 17075f (5c:475f)
- call Function17089a
- ld a, [ScriptVar]
- and a
- ret z
- ld a, BANK(sbe4f)
- call GetSRAMBank
- ld a, [sbe4f]
- and $2
- ld [ScriptVar], a
- call CloseSRAM
- ret
-
-Function170778: ; 170778 (5c:4778)
- ld hl, s1_be45
- ld a, BANK(s1_be45)
- call GetSRAMBank
- ld a, [hl]
- ld [ScriptVar], a
- call CloseSRAM
- ret
-
-Function170788: ; 170788 (5c:4788)
- ld a, BANK(sbe4f)
- call GetSRAMBank
- ld a, [sbe4f]
- or $2
- ld [sbe4f], a
- call CloseSRAM
- ret
-
-Function170799: ; 170799 (5c:4799)
- ld c, $1
- jr asm_17079f
-
-Function17079d: ; 17079d (5c:479d)
- ld c, $0
-asm_17079f: ; 17079f (5c:479f)
- ld a, BANK(s1_be45)
- call GetSRAMBank
- ld a, c
- ld [s1_be45], a
- call CloseSRAM
- ret
-
-Function1707ac: ; 1707ac (5c:47ac)
- ld a, $5
- call GetSRAMBank
- ld a, [$aa8c]
- ld b, a
- ld a, [$be46]
- ld [ScriptVar], a
- call CloseSRAM
- and a
- ret z
- ld a, b
- cp $2
- jr nc, .asm_1707ef
- push bc
- call UpdateTime
- pop bc
- ld a, $5
- call GetSRAMBank
- ld a, [$aa8b]
- call CloseSRAM
- ld c, a
- ld a, [CurDay]
- sub c
- jr c, .asm_1707e5
- cp $8
- jr nc, .asm_1707ef
- ld a, b
- and a
- jr nz, .asm_1707ef
- ret
-.asm_1707e5
- ld hl, CurDay
- ld a, $8c
- sub c
- add [hl]
- cp $8
- ret c
-.asm_1707ef
- ld a, $8
- ld [ScriptVar], a
-
-Function1707f4: ; 1707f4 (5c:47f4)
- ld a, $5
- call GetSRAMBank
- xor a
- ld [$be46], a
- ld [$aa8b], a
- ld [$aa8c], a
- call CloseSRAM
- ret
-
-Function170807: ; 170807 (5c:4807)
- call UpdateTime
- ld a, $5
- call GetSRAMBank
- ld a, [CurDay]
- ld [$b2f9], a
- xor a
- ld [$b2fa], a
- call CloseSRAM
- ret
-
-Function17081d: ; 17081d (5c:481d)
- xor a
- ld [ScriptVar], a
- ld a, $5
- call GetSRAMBank
- ld a, [$b2f9]
- ld c, a
- ld a, [$b2fa]
- ld b, a
- call CloseSRAM
- cp $2
- jr nc, .asm_170853
- push bc
- call UpdateTime
- pop bc
- ld a, [CurDay]
- sub c
- jr c, .asm_170849
- cp $b
- jr nc, .asm_170853
- ld a, b
- and a
- jr nz, .asm_170853
- ret
-.asm_170849
- ld hl, CurDay
- ld a, $8c
- sub c
- add [hl]
- cp $b
- ret c
-.asm_170853
- ld a, $1
- ld [ScriptVar], a
- ld a, $5
- call GetSRAMBank
- xor a
- ld [$b2f9], a
- ld [$b2fa], a
- call CloseSRAM
- ret
-
-Function170868: ; 170868 (5c:4868)
- ld a, BANK(sbe47)
- call GetSRAMBank
- ld a, [rSVBK] ; $ff00+$70
- push af
- ld a, $3
- ld [rSVBK], a ; $ff00+$70
- ld a, [wd000 + $800]
- ld [sbe47], a
- pop af
- ld [rSVBK], a ; $ff00+$70
- call CloseSRAM
- ret
-
-Function170881: ; 170881 (5c:4881)
- ld a, BANK(sbe47)
- call GetSRAMBank
- ld a, [rSVBK] ; $ff00+$70
- push af
- ld a, $3
- ld [rSVBK], a ; $ff00+$70
- ld a, [sbe47]
- ld [wd000 + $800], a
- pop af
- ld [rSVBK], a ; $ff00+$70
- call CloseSRAM
- ret
-
-Function17089a: ; 17089a
- ld a, [wcfcd]
- and a
- jr z, .asm_1708ad
- callba Function14bcb
- jr z, .asm_1708ab
- xor a
- jr .asm_1708ad
-
-.asm_1708ab
- ld a, $1
-
-.asm_1708ad
- ld [ScriptVar], a
- ret
-; 1708b1
-
-
-Function1708b1: ; 1708b1 (5c:48b1)
- xor a
- ld [MusicFade], a
- call MaxVolume
- ret
-
-Function1708b9: ; 1708b9 (5c:48b9) something to do with GS Ball
- ld a, BANK(s1_be3c)
- call GetSRAMBank
- ld a, [s1_be3c]
- ld [ScriptVar], a
- call CloseSRAM
- ret
-
-Function1708c8: ; 1708c8 (5c:48c8)
- call UpdateTime
- ld a, $5
- call GetSRAMBank
- ld a, [CurDay]
- ld [$aa8b], a
- xor a
- ld [$aa8c], a
- ld a, [$aa5d]
- cp $2
- jr nc, .asm_1708ec
- ld a, [CurDay]
- ld [$aa48], a
- ld a, $1
- ld [$aa47], a
-.asm_1708ec
- call CloseSRAM
- ret
-
-Function1708f0: ; 1708f0 (5c:48f0)
- xor a
- ld [ScriptVar], a
- call UpdateTime
- ld a, $5
- call GetSRAMBank
- ld a, [$aa48]
- ld c, a
- ld a, [$aa47]
- call CloseSRAM
- and a
- ret z
- ld hl, CurDay
- ld a, c
- cp [hl]
- jr nz, Function170923
- ld a, $5
- call GetSRAMBank
- ld a, [$aa5d]
- call CloseSRAM
- cp $5
- ret c
- ld a, $1
- ld [ScriptVar], a
- ret
-
-
-Function170923: ; 170923
- ld a, $5
- call GetSRAMBank
- xor a
- ld [$aa48], a
- ld [$aa47], a
- ld hl, $aa5d
- ld bc, $0011
- call ByteFill
- call CloseSRAM
- ret
-; 17093c
-
-
-Function17093c: ; 17093c (5c:493c)
- xor a
- ld [ScriptVar], a
- ld a, EGG_TICKET
- ld [CurItem], a
- ld hl, NumItems
- call CheckItem
- ret nc
- ld a, [PartyCount]
- ld b, 0
- ld c, a
- ld hl, PartySpecies
-.loop
- ld a, [hli]
- cp EGG
- jr nz, .not_egg
- push hl
- ld hl, PartyMonOT ; wddff (aliases: PartyMonOT)
- ld de, $6
- ld a, b
- and a
- jr z, .skip
-.loop2
- add hl, de
- dec a
- jr nz, .loop2
-.skip
- ld de, String_1709a4
- ld a, $6
-.asm_17096e
- push af
- ld a, [de]
- inc de
- cp [hl]
- inc hl
- jr nz, .asm_17099d
- pop af
- dec a
- jr nz, .asm_17096e
-rept 4
- dec hl
-endr
- ld a, $50
-rept 2
- ld [hli], a
-endr
- pop hl
- ld a, EGG_TICKET
- ld [CurItem], a
- ld a, $1
- ld [wItemQuantityChangeBuffer], a
- ld a, $ff
- ld [wd107], a
- ld hl, NumItems
- call TossItem
- ld a, $1
- ld [ScriptVar], a
- ret
-
-.asm_17099d
- pop af
- pop hl
-.not_egg
- inc b
- dec c
- jr nz, .loop
- ret
-; 1709a4 (5c:49a4)
-
-String_1709a4: ; 1709a4
- db "なぞナゾ@@"
-
-Function1709aa: ; 1709aa (5c:49aa)
- ld a, [rSVBK] ; $ff00+$70
- push af
- ld a, BANK(w3_d090)
- ld [rSVBK], a ; $ff00+$70
- ld a, [w3_d090]
- ld [ScriptVar], a
- pop af
- ld [rSVBK], a ; $ff00+$70
- ret
-
-Function1709bb: ; 1709bb (5c:49bb)
- xor a
- ld [ScriptVar], a
- ld a, $5
- call GetSRAMBank
- ld a, [$a800]
- call CloseSRAM
- cp 6
- jr nc, .invalid
- ld e, a
- ld d, 0
- ld hl, Jumptable_1709e7
-rept 2
- add hl, de
-endr
- ld a, [hli]
- ld h, [hl]
- ld l, a
- jp [hl]
-
-.invalid
- ld a, $5
- call GetSRAMBank
- xor a
- ld [$a800], a
- call CloseSRAM
- ret
-; 1709e7 (5c:49e7)
-
-Jumptable_1709e7: ; 1709e7
- dw Function170a00
- dw Function170a00
- dw Function1709f3
- dw Function1709f3
- dw Function170a01
- dw Function170a33
-; 1709f3
-
-Function1709f3: ; 1709f3
- ld a, $5
- call GetSRAMBank
- ld a, $1
- ld [$a800], a
- call CloseSRAM
-
-Function170a00: ; 170a00
- ret
-; 170a01
-
-Function170a01: ; 170a01
- ld a, $5
- call GetSRAMBank
- ld hl, $b023
- ld de, $c608
- ld bc, $0069
- call CopyBytes
- ld a, [$a825]
- ld [wcd30], a
- ld a, [$a826]
- ld [wcd31], a
- call CloseSRAM
- callba Function11b6b4
- callba Function17d0f3
- ld a, $1
- ld [ScriptVar], a
- ret
-; 170a33
-
-Function170a33: ; 170a33
- ld a, $0
- call GetSRAMBank
- ld hl, wRTC
- ld de, $c608
- ld bc, $0004
- call CopyBytes
- call CloseSRAM
- ld a, $5
- call GetSRAMBank
- ld hl, $b08c
- ld de, $c608
- ld c, $4
-.asm_170a54
- ld a, [de]
- inc de
- cp [hl]
- jr nz, .asm_170a78
- inc hl
- dec c
- jr nz, .asm_170a54
- call CloseSRAM
- ld a, [MapGroup]
- ld b, a
- ld a, [MapNumber]
- ld c, a
- call GetMapTrigger
- ld a, d
- or e
- jr z, .asm_170a72
- ld a, [de]
- and a
- ret nz
-
-.asm_170a72
- ld a, $1
- ld [ScriptVar], a
- ret
-
-.asm_170a78
- call CloseSRAM
- ld a, $5
- call GetSRAMBank
- xor a
- ld [$a800], a
- call CloseSRAM
- ld [ScriptVar], a
- ld a, [MapGroup]
- ld b, a
- ld a, [MapNumber]
- ld c, a
- call GetMapTrigger
- ld a, d
- or e
- jr z, .asm_170a9b
- xor a
- ld [de], a
-
-.asm_170a9b
- ret
-; 170a9c
-
-Function170a9c: ; 170a9c (5c:4a9c)
- ld c, $0
- jr asm_170aa2
-
-Function170aa0: ; 170aa0 (5c:4aa0)
- ld c, $1
-asm_170aa2: ; 170aa2 (5c:4aa2)
- ld a, $5
- call GetSRAMBank
- ld a, c
- ld [$aa8d], a
- call CloseSRAM
- ret
-
-Function170aaf: ; 170aaf (5c:4aaf)
- ld a, $5
- call GetSRAMBank
- ld a, [$aa8d]
- ld [ScriptVar], a
- call CloseSRAM
- ret
-
-Function170abe: ; 170abe (5c:4abe)
- call Function17089a
- ld a, [ScriptVar]
- and a
- ret z
- ld a, BANK(sbe4f)
- call GetSRAMBank
- ld a, [sbe4f]
- and $1
- ld [ScriptVar], a
- call CloseSRAM
- ret
-
-Function170ad7: ; 170ad7 (5c:4ad7)
- ld a, BANK(sbe4f)
- call GetSRAMBank
- ld a, [sbe4f]
- or $1
- ld [sbe4f], a
- call CloseSRAM
- ret
-
-Function170ae8: ; 170ae8 (5c:4ae8)
- ld a, $5
- call GetSRAMBank
- ld a, [$b2fb]
- call CloseSRAM
- ld c, $a
- call SimpleDivide
- ld a, b
- ld [wcd4f], a
- xor a
- ld [ScriptVar], a
- callba Function119d93
- ret nc
- ld a, $5
- call GetSRAMBank
- ld a, [$b2fb]
- call CloseSRAM
- ld [ScriptVar], a
- ret
-
-Function170b16: ; 170b16 (5c:4b16)
- ld a, $5
- call GetSRAMBank
- ld a, [$b2fb]
- call CloseSRAM
- ld c, 10
- call SimpleDivide
- ld a, b
- ld [wcd4f], a
- xor a
- ld [ScriptVar], a
- callba Function119dd1
- ret nc
- ld a, $5
- call GetSRAMBank
- ld a, [$b2fb]
- call CloseSRAM
- ld [ScriptVar], a
- ret
-
-Function_LoadOpponentTrainerAndPokemonsWithOTSprite: ; 0x170b44
- callba Function_LoadOpponentTrainerAndPokemons
- ld a, [rSVBK]
- push af
- ld a, $3
- ld [rSVBK], a
- ld hl, wd10a
- ld a, [hl]
- dec a
- ld c, a
- ld b, $0
- pop af
- ld [rSVBK], a
- ld hl, Unknown_170b90
- add hl, bc
- ld a, [hl]
- ld [wcd49], a
-
-; Load sprite of the opponent trainer
-; because s/he is chosen randomly and appears out of nowhere
- ld a, [ScriptVar]
- dec a
- sla a
- ld e, a
- sla a
- sla a
- sla a
- ld c, a
- ld b, $0
- ld d, $0
- ld hl, MapObjects
- add hl, bc
- inc hl
- ld a, [wcd49]
- ld [hl], a
- ld hl, UsedSprites
- add hl, de
- ld [hli], a
- ld [hUsedSpriteIndex], a
- ld a, [hl]
- ld [hUsedSpriteTile], a
- callba Function143c8
- ret
-; 170b90
-
-Unknown_170b90:
- db $12, $13, $14, $15, $18, $17
- db $16, $19, $04, $05, $11, $01
- db $1c, $1b, $21, $1e, $1a, $1d
- db $1f, $3c, $20, $27, $27, $27
- db $28, $0a, $23, $24, $2a, $2b
- db $35, $40, $2a, $29, $22, $25
- db $3a, $2b, $24, $49, $2b, $07
- db $2c, $2d, $4a, $0d, $4b, $3a
- db $2b, $41, $35, $27, $28, $27
- db $36, $3e, $30, $2c, $2d, $3d
- db $26, $2e, $06, $07, $43, $36
-
-Function170bd2: ; 170bd2
- ret
-; 170bd3
-
-SpecialCheckForBattleTowerRules: ; 170bd3
- callba CheckForBattleTowerRules
- jr c, .asm_170bde
- xor a
- jr .asm_170be0
-
-.asm_170bde
- ld a, $1
-
-.asm_170be0
- ld [ScriptVar], a
- ret
-; 170be4