summaryrefslogtreecommitdiff
path: root/misc/mobile_40.asm
diff options
context:
space:
mode:
Diffstat (limited to 'misc/mobile_40.asm')
-rw-r--r--misc/mobile_40.asm8156
1 files changed, 0 insertions, 8156 deletions
diff --git a/misc/mobile_40.asm b/misc/mobile_40.asm
deleted file mode 100644
index fa6a39fdf..000000000
--- a/misc/mobile_40.asm
+++ /dev/null
@@ -1,8156 +0,0 @@
-Function100000: ; 100000
-; d: 1 or 2
-; e: bank
-; bc: addr
- ld a, [rSVBK]
- push af
- ld a, 1
- ld [rSVBK], a
-
- call Function100022
- call Function1000ba
- call Function100675
- call Function100057
- call Function10016f
- call Function100276
-
- push bc
- call Function100301
- pop bc
-
- pop af
- ld [rSVBK], a
- ret
-; 100022
-
-Function100022: ; 100022
- push de
- push bc
- call SetRAMStateForMobile
- pop bc
- pop de
- ld a, d
- ld [wcd21], a
- ld a, e
- ld [wcd22], a
- ld a, c
- ld [wcd23], a
- ld a, b
- ld [wcd24], a
- callba Function10127e
- callba MobileFunc_106462
- callba Function106464 ; load broken gfx
- callba Function11615a ; init RAM
- ld hl, VramState
- set 1, [hl]
- ret
-; 100057
-
-Function100057: ; 100057
- call DisableMobile
- call ReturnToMapFromSubmenu
- ld hl, VramState
- res 1, [hl]
- ret
-; 100063
-
-SetRAMStateForMobile: ; 100063
- xor a
- ld hl, BGMapBuffer
- ld bc, $65
- call ByteFill
- xor a
- ld hl, wc300
- ld bc, $100
- call ByteFill
- ld a, [rIE]
- ld [BGMapBuffer], a
- xor a
- ld [hMapAnims], a
- ld [hLCDCPointer], a
- ret
-; 100082
-
-EnableMobile: ; 100082
- xor a
- ld hl, OverworldMap
- ld bc, OverworldMapEnd - OverworldMap
- call ByteFill
-
- di
- call DoubleSpeed
- xor a
- ld [rIF], a
- ld a, 1 << VBLANK + 1 << LCD_STAT + 1 << TIMER + 1 << SERIAL
- ld [rIE], a
- xor a
- ld [hMapAnims], a
- ld [hLCDCPointer], a
- ld a, $01
- ld [hMobileReceive], a
- ld [hMobile], a
- ei
-
- ret
-; 0x1000a4
-
-DisableMobile: ; 1000a4
- di
- xor a
- ld [hMobileReceive], a
- ld [hMobile], a
- xor a
- ld [hVBlank], a
- call NormalSpeed
- xor a
- ld [rIF], a
- ld a, [BGMapBuffer]
- ld [rIE], a
- ei
- ret
-; 1000ba
-
-Function1000ba: ; 1000ba
-.loop
- ; call [wcd22]:([wcd23][wcd24] + [wMobileCommsJumptableIndex])
- ld hl, wcd23
- ld a, [hli]
- ld h, [hl]
- ld l, a
- ld a, [wMobileCommsJumptableIndex]
- ld e, a
- ld d, 0
- add hl, de
- add hl, de
- ld a, [wcd22]
- call GetFarHalfword
- ld a, [wcd22]
- rst FarCall
-
- call Function1000e8
- call Function1000fa
- call Function100144
- call Function100163
- ld a, [wcd2b]
- and a
- jr z, .loop
- call DelayFrame
- ret
-; 1000e8
-
-Function1000e8: ; 1000e8
- ld hl, wcd29
- bit 7, [hl]
- ret z
- callba Function115dd3
- ld hl, wcd29
- set 6, [hl]
- ret
-; 1000fa
-
-Function1000fa: ; 1000fa
- ld a, [wc30d]
- and a
- ret z
- ld hl, wcd29
- bit 4, [hl]
- ret z
- ld a, [wcd2b]
- and a
- jr nz, .asm_100117
- callba Function11619d
- ld hl, wcd29
- set 6, [hl]
- ret
-
-.asm_100117
- di
- xor a
- ld [rIF], a
- ld a, [rIE]
- and $13
- ld [rIE], a
- xor a
- ld [hMobileReceive], a
- ld [hMobile], a
- ei
-
- ld a, [wLinkMode]
- push af
- xor a
- ld [wLinkMode], a
- ld a, $04
- ld [wc314 + 5], a
- callba Function11619d
- ld hl, wcd29
- set 6, [hl]
- pop af
- ld [wLinkMode], a
- ret
-; 100144
-
-Function100144: ; 100144
- ld hl, wcd29
- bit 5, [hl]
- jr z, .asm_100155
- res 5, [hl]
- res 2, [hl]
- res 6, [hl]
- call Function100320
- ret
-
-.asm_100155
- bit 2, [hl]
- ret z
- res 2, [hl]
- res 6, [hl]
- callba HDMATransferTileMapToWRAMBank3
- ret
-; 100163
-
-Function100163: ; 100163
- ld hl, wcd29
- bit 6, [hl]
- ret z
- res 6, [hl]
- call DelayFrame
- ret
-; 10016f
-
-Function10016f: ; 10016f
- ld a, [wcd2b]
- cp $01
- ret z
- cp $02
- ret z
- cp $ff
- jp z, .asm_1001f5
- cp $fe
- jr z, .asm_1001c4
- cp $f5
- jr z, .asm_1001e7
- cp $f6
- jr z, .asm_1001b6
- cp $fa
- jp z, .asm_1001bd
- cp $f7
- jp z, .asm_1001ee
- cp $f4
- jr z, .asm_1001d2
- cp $f3
- jr z, .asm_1001cb
- cp $f1
- jr z, .asm_1001c4
- cp $f2
- jr z, .asm_1001c4
- cp $fc
- jr z, .asm_1001e6
- cp $fb
- jr z, .asm_1001af
- cp $f8
- ret z
- ret ; ????????????????????????????
-
-.asm_1001af
- ld a, $d7
- ld de, 0
- jr .asm_1001d7
-
-.asm_1001b6
- ld a, $d5
- ld de, 0
- jr .asm_1001d7
-
-.asm_1001bd
- ld a, $d6
- ld de, 0
- jr .asm_1001d7
-
-.asm_1001c4
- ld a, $d2
- ld de, 2
- jr .asm_1001d7
-
-.asm_1001cb
- ld a, $d1
- ld de, 1
- jr .asm_1001d7
-
-.asm_1001d2
- ld a, $d0
- ld de, 0
-
-.asm_1001d7
- ld [wc300], a
- ld a, d
- ld [wc302], a
- ld a, e
- ld [wc301], a
- call Function10020b
- ret
-
-.asm_1001e6
- ret
-
-.asm_1001e7
- ld de, String10025e
- call Function100232
- ret
-
-.asm_1001ee
- ld de, String10024d
- call Function100232
- ret
-
-.asm_1001f5
- ld a, [wcd2c]
- ld [wc300], a
- ld a, [wcd2d]
- ld [wc302], a
- ld a, [wcd2d]
- ld [wc301], a
- call Function10020b
- ret
-; 10020b
-
-Function10020b: ; 10020b
- xor a
- ld [wc303], a
- callba FadeOutPalettes
- callba Function106464
- call HideSprites
- call DelayFrame
-
- ld a, [rSVBK]
- push af
- ld a, $01
- ld [rSVBK], a
-
- callba DisplayMobileError
-
- pop af
- ld [rSVBK], a
- ret
-; 100232
-
-Function100232: ; 100232
- push de
- callba Function106464
- call Function3f20
- call UpdateSprites
- hlcoord 1, 2
- pop de
- call PlaceString
- call Function100320
- call JoyWaitAorB
- ret
-; 10024d
-
-String10024d: ; 10024d
- db "つうしんを キャンセル しました@"
-; 10025e
-
-String10025e: ; 10025e
- db "おともだちと えらんだ へやが"
- next "ちがうようです@"
-; 100276
-
-Function100276: ; 100276
- ld a, [wcd2b]
- cp $01
- jr z, .asm_10029f
- cp $02
- jr z, .asm_100296
- cp $f5
- jr z, .asm_1002a5
- cp $f6
- jr z, .asm_1002a5
- cp $f7
- jr z, .asm_100293
- cp $f8
- jr z, .asm_1002b1
- jr .asm_1002c0
-
-.asm_100293
- ld c, $02
- ret
-
-.asm_100296
- callba Script_reloadmappart
- ld c, $04
- ret
-
-.asm_10029f
- call Function1002dc
- ld c, 0
- ret
-
-.asm_1002a5
- callba Script_reloadmappart
- call Function1002ed
- ld c, $03
- ret
-
-.asm_1002b1
- call Function1002c9
- call Function1002dc
- ld de, String10024d
- call Function100232
- ld c, $02
- ret
-
-.asm_1002c0
- call Function1002c9
- call Function1002dc
- ld c, $01
- ret
-; 1002c9
-
-Function1002c9: ; 1002c9
- ld hl, wcd2a
- bit 0, [hl]
- ret z
- callba CleanUpBattleRAM
- callba LoadPokemonData
- ret
-; 1002dc
-
-Function1002dc: ; 1002dc
- ld a, MAPSETUP_LINKRETURN
- ld [hMapEntryMethod], a
- callba RunMapSetupScript
- xor a
- ld [hMapEntryMethod], a
- call LoadStandardFont
- ret
-; 1002ed
-
-Function1002ed: ; 1002ed
- callba LoadOW_BGPal7
- callba ApplyPals
- ld a, $01
- ld [hCGBPalUpdate], a
- call DelayFrame
- ret
-; 100301
-
-Function100301: ; 100301
- ld hl, wcd2a
- bit 1, [hl]
- ret z
- callba Function106464
- callba Function10202c
- callba Function115dd3
- call Function100320
- call JoyWaitAorB
- ret
-; 100320
-
-Function100320: ; 100320
- callba Mobile_ReloadMapPart
- ret
-; 100327
-
-Function100327: ; 100327
- callba HDMATransferTileMapToWRAMBank3
- ret
-; 100327
-
-
-Function10032e: ; 10032e
- call Function10034d
- ld e, a
- ret nc
- ld [wcd2b], a
- ret
-; 100337
-
-Function100337: ; 100337
- call Function10032e
- ret c
- ld a, [wc821]
- bit 4, a
- jr z, .asm_100345
- ld a, e
- and a
- ret
-
-.asm_100345
- ld a, $f9
- ld e, a
- ld [wcd2b], a
- scf
- ret
-; 10034d
-
-Function10034d: ; 10034d
- ld a, [wc821]
- bit 1, a
- jr nz, .asm_10036a
- bit 2, a
- jr nz, .asm_10037e
- bit 3, a
- jr nz, .asm_100366
- bit 0, a
- jr nz, .asm_100364
- ld a, $01
- and a
- ret
-
-.asm_100364
- xor a
- ret
-
-.asm_100366
- ld a, $02
- and a
- ret
-
-.asm_10036a
- ld a, 0
- call Function3e32
- ld [wcd2c], a
- ld a, h
- ld [wcd2d], a
- ld a, l
- ld [wcd2e], a
- ld a, $ff
- scf
- ret
-
-.asm_10037e
- ld a, $fe
- scf
- ret
-; 100382
-
-Function100382: ; 100382
- ld a, [wcd27]
- ld hl, Jumptable_10044e
- rst JumpTable
- ret
-; 10038a
-
-Function10038a: ; 10038a
- ld hl, wccb4
- ld a, $2e
- call Function3e32
- ret
-; 100393
-
-Function100393: ; 100393
- ld hl, wcc60
- ld a, $3a
- call Function3e32
- ret
-; 10039c
-
-Function10039c: ; 10039c
- ld hl, wcc60
- ld de, w3_d000
- ld bc, $54
- ld a, $03
- call FarCopyWRAM
- ret
-; 1003ab
-
-Function1003ab: ; 1003ab
- ld hl, w3_d000
- ld de, wcc60
- ld bc, $54
- ld a, $03
- call FarCopyWRAM
- ret
-; 1003ba
-
-Function1003ba: ; 1003ba
- ld hl, wccb4
- ld de, w3_d080
- ld bc, $54
- ld a, $03
- call FarCopyWRAM
- ret
-; 1003c9
-
-Function1003c9: ; 1003c9
- ld hl, w3_d080
- ld de, wccb4
- ld bc, $54
- ld a, $03
- call FarCopyWRAM
- ret
-; 1003d8
-
-Function1003d8: ; 1003d8
- ld hl, wccb4
- ld a, [hli]
- ld c, a
- ld b, 0
- push hl
- add hl, bc
- ld a, [BGMapPalBuffer]
- ld [hl], a
- pop hl
- inc bc
- call Function10043a
- add hl, bc
- ld [hl], e
- inc hl
- ld [hl], d
- ld a, c
- add $02
- ld [wccb4], a
- ret
-; 1003f5
-
-Function1003f5: ; 1003f5
- ld a, [wcc60]
- sub $03
- ld [wcc60], a
- ld a, [wccb4]
- sub $03
- ld [wccb4], a
- ret
-; 100406
-
-Function100406: ; 100406
- ld a, [wcc60]
- sub $02
- ld c, a
- ld b, 0
- ld hl, wcc61
- call Function10043a
- add hl, bc
- ld a, [hli]
- cp e
- jr nz, .asm_100426
- ld a, [hld]
- cp d
- jr nz, .asm_100426
- dec hl
- ld a, [BGMapPalBuffer]
- cp [hl]
- jr nz, .asm_10042d
- xor a
- ret
-
-.asm_100426
- ld a, $f4
- ld [wcd2b], a
- jr .asm_100432
-
-.asm_10042d
- ld a, $f3
- ld [wcd2b], a
-
-.asm_100432
- push hl
- ld hl, wcd7c
- inc [hl]
- pop hl
- scf
- ret
-; 10043a
-
-Function10043a: ; 10043a
- push hl
- push bc
- ld de, 0
-.asm_10043f
- ld a, [hli]
- add e
- ld e, a
- ld a, d
- adc 0
- ld d, a
- dec bc
- ld a, b
- or c
- jr nz, .asm_10043f
- pop bc
- pop hl
- ret
-; 10044e
-
-
-Jumptable_10044e: ; 10044e (40:444e)
- dw Function10046a
- dw Function10047c
- dw Function100493
- dw Function1004ba
- dw Function1004f4
- dw Function1004ce
- dw Function1004de
- dw Function1004a4
- dw Function100495
- dw Function1004ce
- dw Function1004de
- dw Function1004e9
- dw Function1004f4
- dw Function1004a4
-
-Function10046a: ; 10046a
- ld hl, BGMapPalBuffer
- inc [hl]
- call Function1003d8
- call Function1003ba
- ld a, [wcd27]
- inc a
- ld [wcd27], a
- ret
-; 10047c
-
-Function10047c: ; 10047c
- call Function100337
- ret c
- ret z
- cp $02
- jr z, .asm_100487
- jr .asm_10048d
-
-.asm_100487
- ld a, $08
- ld [wcd27], a
- ret
-
-.asm_10048d
- ld a, $02
- ld [wcd27], a
- ret
-; 100493
-
-Function100493: ; 100493
- jr asm_100497
-
-Function100495: ; 100495
- jr asm_100497
-
-asm_100497
- call Function100337
- ret c
- ret z
- ld a, [wcd27]
- inc a
- ld [wcd27], a
- ret
-; 1004a4
-
-Function1004a4: ; 1004a4
- call Function100406
- jr c, .asm_1004b8
- call Function1003c9
- call Function1003f5
- ld a, [wcd27]
- set 7, a
- ld [wcd27], a
- ret
-
-.asm_1004b8
- scf
- ret
-; 1004ba
-
-Function1004ba: ; 1004ba
- call Function10038a
- and a
- jr nz, .asm_1004c8
- ld a, [wcd27]
- inc a
- ld [wcd27], a
- ret
-
-.asm_1004c8
- ld a, $08
- ld [wcd27], a
- ret
-; 1004ce
-
-Function1004ce: ; 1004ce
- call Function100337
- ret c
- ret z
- cp $02
- ret nz
- ld a, [wcd27]
- inc a
- ld [wcd27], a
- ret
-; 1004de
-
-Function1004de: ; 1004de
- call Function100393
- ld a, [wcd27]
- inc a
- ld [wcd27], a
- ret
-; 1004e9
-
-Function1004e9: ; 1004e9
- call Function10038a
- ld a, [wcd27]
- inc a
- ld [wcd27], a
- ret
-; 1004f4
-
-Function1004f4: ; 1004f4
- call Function100337
- ret c
- ret z
- ld a, [wcd27]
- inc a
- ld [wcd27], a
- call Function10039c
- ret
-; 100504
-
-Function100504: ; 100504
- push de
- call Function3f20
- call UpdateSprites
- pop de
- hlcoord 4, 2
- call PlaceString
- ret
-; 100513
-
-Function100513: ; 100513
- call Function3f7c
- call PlaceVerticalMenuItems
- call InitVerticalMenuCursor
- ld hl, w2DMenuFlags1
- set 7, [hl]
- ret
-; 100522
-
-Function100522: ; 100522
- ld a, [wcd28]
- ld hl, Jumptable_10052a
- rst JumpTable
- ret
-; 10052a
-
-Jumptable_10052a: ; 10052a
- dw Function100534
- dw Function100545
- dw Function100545
- dw Function100545
- dw Function10054d
-; 100534
-
-Function100534: ; 100534
- call Function100513
- call UpdateSprites
- call ApplyTilemap
- ld a, [wcd28]
- inc a
- ld [wcd28], a
- ret
-; 100545
-
-Function100545: ; 100545
- ld a, [wcd28]
- inc a
- ld [wcd28], a
- ret
-; 10054d
-
-Function10054d: ; 10054d
- callba MobileMenuJoypad
- ld a, c
- ld hl, wMenuJoypadFilter
- and [hl]
- ret z
- call MenuClickSound
- bit 0, a
- jr nz, .asm_100565
- bit 1, a
- jr nz, .asm_10056f
- ret
-
-.asm_100565
- ld a, [wcd28]
- set 7, a
- ld [wcd28], a
- and a
- ret
-
-.asm_10056f
- ld a, [wcd28]
- set 7, a
- ld [wcd28], a
- scf
- ret
-; 100579
-
-Function100579: ; 100579
- ld a, [wcd26]
- ld hl, Jumptable_100581
- rst JumpTable
- ret
-; 100581
-
-Jumptable_100581: ; 100581
- dw Function100585
- dw Function100597
-; 100585
-
-Function100585: ; 100585
- ld hl, MenuDataHeader_1005b2
- call LoadMenuDataHeader
- ld a, 0
- ld [wcd28], a
- ld a, [wcd26]
- inc a
- ld [wcd26], a
-
-Function100597: ; 100597
- call Function100522
- ld a, [wcd28]
- bit 7, a
- ret z
- jr nc, .asm_1005a6
- xor a
- ld [wMenuCursorY], a
-
-.asm_1005a6
- call ExitMenu
- ld a, [wcd26]
- set 7, a
- ld [wcd26], a
- ret
-; 1005b2
-
-MenuDataHeader_1005b2: ; 1005b2
- db $40 ; flags
- db 6, 14
- db 10, 19
- dw MenuData2_1005ba
- db 1 ; default option
-
-MenuData2_1005ba:
- db $c0 ; flags
- db 2
- db "はい@"
- db "いいえ@"
-; 1005c3
-
-Function1005c3: ; 1005c3
- ld a, [wcd26]
- ld hl, Jumptable_1005cb
- rst JumpTable
- ret
-; 1005cb
-
-Jumptable_1005cb: ; 1005cb
- dw Function1005cf
- dw Function1005e1
-; 1005cf
-
-Function1005cf: ; 1005cf
- ld hl, MenuDataHeader_1005fc
- call LoadMenuDataHeader
- ld a, 0
- ld [wcd28], a
- ld a, [wcd26]
- inc a
- ld [wcd26], a
-
-Function1005e1: ; 1005e1
- call Function100522
- ld a, [wcd28]
- bit 7, a
- ret z
- jr nc, .asm_1005f0
- xor a
- ld [wMenuCursorY], a
-.asm_1005f0
- call ExitMenu
- ld a, [wcd26]
- set 7, a
- ld [wcd26], a
- ret
-; 1005fc
-
-MenuDataHeader_1005fc: ; 1005fc
- db $40 ; flags
- db 6, 14
- db 10, 19
- dw MenuData2_100604
- db 1 ; default option
-
-MenuData2_100604: ; 100604
- db $c0 ; flags
- db 2
- db "かける@"
- db "まつ@"
-; 10060d
-
-Mobile_CommunicationStandby: ; 10060d
- hlcoord 3, 10
- ld b, 1
- ld c, 11
- call Function3eea
- ld de, .String
- hlcoord 4, 11
- call PlaceString
- ret
-; 100621
-
-.String: ; 100621
- db "つうしんたいきちゅう!@"
-; 10062d
-
-AdvanceMobileInactivityTimerAndCheckExpired: ; 10062d
- push bc
- call IncrementMobileInactivityTimerByCFrames
- pop bc
- ld a, [wMobileInactivityTimerMinutes]
- cp b
- jr nc, .timed_out
- and a
- ret
-
-.timed_out
- ld a, $fa
- ld [wcd2b], a
- scf
- ret
-; 100641
-
-StartMobileInactivityTimer: ; 100641
- xor a
- ld [wMobileInactivityTimerMinutes], a
- ld [wMobileInactivityTimerSeconds], a
- ld [wMobileInactivityTimerFrames], a
- ret
-; 10064c
-
-IncrementMobileInactivityTimerBy1Frame: ; 10064c
- ld c, 1
-IncrementMobileInactivityTimerByCFrames: ; 10064e
- ld hl, wMobileInactivityTimerFrames ; timer?
- ld a, [hl]
- add c
- cp 60
- jr c, .seconds
- xor a
-
-.seconds
- ld [hld], a
- ret c
- ld a, [hl]
- inc a
- cp 60
- jr c, .minutes
- xor a
-
-.minutes
- ld [hld], a
- ret c
- inc [hl]
- ret
-; 100665
-
-Function100665: ; 100665
- call UpdateTime
- ld hl, wcd36
- ld a, [hHours]
- ld [hli], a
- ld a, [hMinutes]
- ld [hli], a
- ld a, [hSeconds]
- ld [hl], a
- ret
-; 100675
-
-Function100675: ; 100675
- ld hl, wcd2a
- bit 2, [hl]
- set 2, [hl]
- ret nz
- call Function1006d3
- ret
-; 100681
-
-Function100681: ; 100681
- push hl
- ld hl, wcd2a
- bit 2, [hl]
- ld hl, wcd2a
- set 2, [hl]
- pop hl
- jr nz, .asm_100694
- push hl
- call Function1006d3
- pop hl
-.asm_100694
- ld de, wcd32
-
-Function100697: ; 100697
- ld a, [de]
- and a
- jr nz, .asm_1006bb
- inc de
- push de
- call .asm_1006b4
- ld de, String1006c2
- call PlaceString
- ld h, b
- ld l, c
- pop de
- inc de
- call .asm_1006b4
- ld de, String1006c6
- call PlaceString
- ret
-
-.asm_1006b4
- lb bc, PRINTNUM_LEADINGZEROS | 1, 2
- call PrintNum
- ret
-
-.asm_1006bb
- ld de, String1006ca
- call PlaceString
- ret
-; 1006c2
-
-String1006c2: ; 1006c2
- db "ふん @"
-String1006c6: ; 1006c6
- db "びょう@"
-String1006ca: ; 1006ca
- db "1じかんいじょう@"
-; 1006d3
-
-Function1006d3: ; 1006d3
- call UpdateTime
- ld de, wcd34
- ld hl, wcd38
-
-Function1006dc: ; 1006dc
- ld a, [hld]
- ld c, a
- ld a, [hSeconds]
- sub c
- jr nc, .asm_1006e5
- add $3c
-
-.asm_1006e5
- ld [de], a
- dec de
- ld a, [hld]
- ld c, a
- ld a, [hMinutes]
- sbc c
- jr nc, .asm_1006f0
- add $3c
-
-.asm_1006f0
- ld [de], a
- dec de
- ld a, [hl]
- ld c, a
- ld a, [hHours]
- sbc c
- jr nc, .asm_1006fb
- add $18
-
-.asm_1006fb
- ld [de], a
- ret
-; 1006fd
-
-Function1006fd: ; 1006fd
- ld a, $04
- ld hl, $a800
- call GetSRAMBank
- xor a
- ld [hli], a
- ld [hli], a
- ld [hli], a
- call CloseSRAM
- ret
-; 10070d
-
-Function10070d: ; 10070d
- ld a, $04
- ld hl, $a800
- call GetSRAMBank
- xor a
- ld [hli], a
- ld a, $0a
- ld [hli], a
- xor a
- ld [hli], a
- call CloseSRAM
- ret
-; 100720
-
-Function100720: ; 100720
- xor a
- ld [wcd6a], a
- call UpdateTime
- ld a, [hHours]
- ld [wcd72], a
- ld a, [hMinutes]
- ld [wcd73], a
- ld a, [hSeconds]
- ld [wcd74], a
- ld a, $04
- ld hl, $a800
- call GetSRAMBank
- ld a, [hli]
- ld [wcd6c], a
- ld a, [hli]
- ld [wcd6d], a
- ld a, [hli]
- ld [wcd6e], a
- call CloseSRAM
- ld a, [wcd6d]
- ld [wcd6b], a
- ret
-; 100754
-
-Function100754: ; 100754
- call UpdateTime
- ld a, [hHours]
- ld [wcd72], a
- ld a, [hMinutes]
- ld [wcd73], a
- ld a, [hSeconds]
- ld [wcd74], a
- ld a, [wcd6d]
- ld [wcd6b], a
- ld hl, wcd2a
- res 6, [hl]
- ret
-; 100772
-
-Function100772: ; 100772
- push de
- ld hl, wcd6c
- ld a, [de]
- cp [hl]
- jr c, .asm_10079a
- jr nz, .asm_10078c
- inc hl
- inc de
- ld a, [de]
- cp [hl]
- jr c, .asm_10079a
- jr nz, .asm_10078c
- inc hl
- inc de
- ld a, [de]
- cp [hl]
- jr c, .asm_10079a
- jr z, .asm_10079a
-
-.asm_10078c
- pop hl
- ld a, [hli]
- ld [wcd6c], a
- ld a, [hli]
- ld [wcd6d], a
- ld a, [hli]
- ld [wcd6e], a
- ret
-
-.asm_10079a
- pop de
- ret
-; 10079c
-
-
-Function10079c: ; 10079c
- ld a, [wcd21]
- cp $01
- jr nz, .dont_quit
- ld hl, wcd2a
- bit 5, [hl]
- jr nz, .dont_quit
- ld hl, wcd2a
- bit 6, [hl]
- jr nz, .dont_quit
- ld a, [wcd6a]
- add c
- cp 60
- jr nc, .overflow
- ld [wcd6a], a
- and a
- ret
-
-.overflow
- sub 60
- ld [wcd6a], a
- ld d, b
- push de
- call Function1007f6
- pop de
- jr c, .quit
- ld a, c
- and a
- jr nz, .quit
- ld a, b
- cp 10
- jr nc, .quit
- ld a, d
- and a
- ret z
- ld a, [wcd6b]
- cp b
- ret z
- ld a, b
- ld [wcd6b], a
- call Function1008e0
- and a
- ret
-
-.quit
- call Function1008e0
- ld hl, wcd2a
- set 4, [hl]
- ld a, $fc
- ld [wcd2b], a
- scf
- ret
-
-.dont_quit
- and a
- ret
-; 1007f6
-
-Function1007f6: ; 1007f6
- call UpdateTime
- ld hl, wcd74
- ld de, wcd71
- call Function1006dc
- ld a, $04
- call GetSRAMBank
- ld hl, $a802
- call Function100826
- call CloseSRAM
- ld hl, wcd6e
- call Function100826
- ld a, [hHours]
- ld [wcd72], a
- ld a, [hMinutes]
- ld [wcd73], a
- ld a, [hSeconds]
- ld [wcd74], a
- ret
-; 100826
-
-Function100826: ; 100826
- ld a, [wcd71]
- add [hl]
- sub $3c
- jr nc, .asm_100830
- add $3c
-
-.asm_100830
- ld [hld], a
- ccf
- ld a, [BGMapBufferPtrs]
- adc [hl]
- sub $3c
- jr nc, .asm_10083c
- add $3c
-
-.asm_10083c
- ld [hld], a
- ld b, a
- ccf
- ld a, [wcd6f]
- adc [hl]
- ld [hl], a
- ld c, a
- ret
-; 100846
-
-Function100846: ; 100846
- ld hl, wcd2a
- bit 5, [hl]
- jr nz, .asm_10087c
- ld a, [wcd6e]
- ld c, a
- ld a, 0
- sub c
- jr nc, .asm_100858
- add $3c
-
-.asm_100858
- ld [StringBuffer2 + 2], a
- ld a, [wcd6d]
- ld c, a
- ld a, $0a
- sbc c
- ld [StringBuffer2 + 1], a
- xor a
- ld [StringBuffer2], a
- ld de, String_10088e
- hlcoord 1, 14
- call PlaceString
- ld de, StringBuffer2
- hlcoord 4, 16
- call Function100697
- ret
-
-.asm_10087c
- ld de, String_10088e
- hlcoord 1, 14
- call PlaceString
- ld h, b
- ld l, c
- ld de, String_10089f
- call PlaceString
- ret
-; 10088e
-
-String_10088e: ; 10088e
- db "モバイルたいせん できる"
- next "じかん@"
-; 10089f
-
-String_10089f: ; 10089f
- db " むせいげん@"
-; 1008a6
-
-Function1008a6: ; 1008a6
- ld a, $04
- ld hl, $a800
- call GetSRAMBank
- ld a, [hli]
- ld [StringBuffer2], a
- ld a, [hli]
- ld [StringBuffer2 + 1], a
- ld a, [hli]
- ld [StringBuffer2 + 2], a
- call CloseSRAM
- ld a, [StringBuffer2 + 2]
- ld b, a
- ld a, 0
- sub b
- jr nc, .asm_1008c8
- add $3c
-
-.asm_1008c8
- ld b, a
- ld a, [StringBuffer2 + 1]
- ld c, a
- ld a, $0a
- sbc c
- ld c, a
- jr c, .asm_1008da
- ld a, [StringBuffer2]
- and a
- jr nz, .asm_1008da
- ret
-
-.asm_1008da
- call Function10070d
- ld c, 0
- ret
-; 1008e0
-
-
-Function1008e0: ; 1008e0
- ld a, [hBGMapMode]
- ld b, a
- ld a, [hVBlank]
- ld c, a
- push bc
- xor a
- ld [hBGMapMode], a
- ld a, $03
- ld [hVBlank], a
- call Function100970
- call Function100902
- call Function100989
- call DelayFrame
- pop bc
- ld a, c
- ld [hVBlank], a
- ld a, b
- ld [hBGMapMode], a
- ret
-; 100902
-
-Function100902: ; 100902
- hlcoord 3, 10
- ld b, $01
- ld c, $0b
- call TextBox
- ld a, [wcd6d]
- ld c, a
- ld a, $0a
- sub c
- ld [StringBuffer2], a
- jr z, .asm_10093f
- ld de, .string_100966
- hlcoord 4, 11
- call PlaceString
- hlcoord 8, 11
- lb bc, 1, 2
- ld de, StringBuffer2
- call PrintNum
- ld de, SFX_TWO_PC_BEEPS
- call PlaySFX
- callba ReloadMapPart
- ld c, $3c
- call DelayFrames
- ret
-
-.asm_10093f
- ld de, .string_10095a
- hlcoord 4, 11
- call PlaceString
- ld de, SFX_4_NOTE_DITTY
- call PlaySFX
- callba ReloadMapPart
- ld c, 120
- call DelayFrames
- ret
-; 10095a
-
-.string_10095a ; 10095a
- db "たいせん しゅうりょう@"
-.string_100966 ; 100966
- db "のこり ふん", $e7, "@"
-; 100970
-
-
-Function100970: ; 100970
- hlcoord 0, 0
- ld de, w3_dc00
- call Function1009a5
- hlcoord 0, 0, AttrMap
- ld de, w3_dd68
- call Function1009a5
- call Function1009d2
- call Function1009ae
- ret
-; 100989
-
-Function100989: ; 100989
- ld hl, w3_dc00
- decoord 0, 0
- call Function1009a5
- call Function1009ae
- callba ReloadMapPart
- ld hl, w3_dd68
- decoord 0, 0, AttrMap
- call Function1009a5
- ret
-; 1009a5
-
-Function1009a5: ; 1009a5
- ld bc, SCREEN_WIDTH * SCREEN_HEIGHT
- ld a, $03
- call FarCopyWRAM
- ret
-; 1009ae
-
-Function1009ae: ; 1009ae
- ld a, [rSVBK]
- push af
- ld a, $03
- ld [rSVBK], a
-
- ld hl, w3_d800
- decoord 0, 0, AttrMap
- ld c, SCREEN_WIDTH
- ld b, SCREEN_HEIGHT
-.loop_row
- push bc
-.loop_col
- ld a, [hli]
- ld [de], a
- inc de
- dec c
- jr nz, .loop_col
- ld bc, BG_MAP_WIDTH - SCREEN_WIDTH
- add hl, bc
- pop bc
- dec b
- jr nz, .loop_row
-
- pop af
- ld [rSVBK], a
- ret
-; 1009d2
-
-Function1009d2: ; 1009d2
- ld a, [rSVBK]
- push af
- ld a, $03
- ld [rSVBK], a
-
- ld a, [rVBK]
- push af
- ld a, $01
- ld [rVBK], a
-
- ld hl, w3_d800
- debgcoord 0, 0
- lb bc, $03, $24
- call Get2bpp
-
- pop af
- ld [rVBK], a
-
- pop af
- ld [rSVBK], a
- ret
-; 1009f3
-
-Function1009f3: ; 1009f3
- ld a, [hJoyDown]
- and SELECT + A_BUTTON
- cp SELECT + A_BUTTON
- jr nz, .select_a
- ld hl, wcd2a
- set 4, [hl]
- ld a, $f8
- ld [wcd2b], a
- scf
- ret
-
-.select_a
- xor a
- ret
-; 100a09
-
-_LinkBattleSendReceiveAction: ; 100a09
- call .StageForSend
- ld [wd431], a
- callba PlaceWaitingText
- ld a, [wLinkMode]
- cp LINK_MOBILE
- jr nz, .not_mobile
-
- call .MobileBattle_SendReceiveAction
- call Function100da5
- callba FinishBattleAnim
- jr .done
-
-.not_mobile
- call .LinkBattle_SendReceiveAction
-
-.done
- ret
-; 100a2e
-
-.StageForSend: ; 100a2e
- ld a, [wPlayerAction]
- and a
- jr nz, .switch
- ld a, [CurPlayerMove]
- ld b, BATTLEACTION_E
- cp STRUGGLE
- jr z, .struggle
- ld b, BATTLEACTION_D
- cp $ff
- jr z, .struggle
- ld a, [CurMoveNum]
- jr .use_move
-
-.switch
- ld a, [CurPartyMon]
- add BATTLEACTION_SWITCH1
- jr .use_move
-
-.struggle
- ld a, b
-
-.use_move
- and $0f
- ret
-; 100a53
-
-.LinkBattle_SendReceiveAction: ; 100a53
- ld a, [wd431]
- ld [wPlayerLinkAction], a
- ld a, $ff
- ld [wOtherPlayerLinkAction], a
-.waiting
- call LinkTransfer
- call DelayFrame
- ld a, [wOtherPlayerLinkAction]
- inc a
- jr z, .waiting
-
- ld b, 10
-.receive
- call DelayFrame
- call LinkTransfer
- dec b
- jr nz, .receive
-
- ld b, 10
-.acknowledge
- call DelayFrame
- call LinkDataReceived
- dec b
- jr nz, .acknowledge
-
- ld a, [wOtherPlayerLinkAction]
- ld [wBattleAction], a
- ret
-; 100a87
-
-.MobileBattle_SendReceiveAction: ; 100a87
- call Function100acf
- call StartMobileInactivityTimer
- ld a, 0
- ld [wcd27], a
-.asm_100a92
- call DelayFrame
- call GetJoypad
- callba Function100382
- ld c, $01
- ld b, $03
- push bc
- call AdvanceMobileInactivityTimerAndCheckExpired
- pop bc
- jr c, .asm_100ac7
- ld b, $01
- call Function10079c
- jr c, .asm_100ac7
- call Function1009f3
- jr c, .asm_100ac7
- ld a, [wcd2b]
- and a
- jr nz, .asm_100ac7
- ld a, [wcd27]
- bit 7, a
- jr z, .asm_100a92
- call Function100ae7
- jr .asm_100ace
-
-.asm_100ac7
- ld a, $0f
- ld [wd430], a
- jr .asm_100ace
-
-.asm_100ace
- ret
-; 100acf
-
-Function100acf: ; 100acf
- ld de, Unknown_100b0a
- ld hl, wccb5
- ld a, [wd431]
- ld [hli], a
- ld c, $01
-.asm_100adb
- ld a, [de]
- inc de
- ld [hli], a
- inc c
- and a
- jr nz, .asm_100adb
- ld a, c
- ld [wccb4], a
- ret
-; 100ae7
-
-Function100ae7: ; 100ae7
- ld de, Unknown_100b0a
- ld hl, wcc62
-.asm_100aed
- ld a, [de]
- inc de
- and a
- jr z, .asm_100af8
- cp [hl]
- jr nz, .asm_100aff
- inc hl
- jr .asm_100aed
-
-.asm_100af8
- ld a, [wcc61]
- ld [wd430], a
- ret
-
-.asm_100aff
- ld a, $0f
- ld [wd430], a
- ld a, $f1
- ld [wcd2b], a
- ret
-; 100b0a
-
-
-SECTION "tetsuji", ROMX
-
- charmap " ", $20 ; revert to ascii
-
-Unknown_100b0a: ; 100b0a
- db "tetsuji", 0
-; 100b12
-
-
-SECTION "bank40_2", ROMX
-
-Function100b12: ; 100b12
- call Function100dd8
- ret c
- ld hl, BattleMenuDataHeader
- ld a, BANK(BattleMenuDataHeader)
- ld de, LoadMenuDataHeader
- call FarCall_de
- ld a, BANK(BattleMenuDataHeader)
- ld [wMenuData2_2DMenuItemStringsBank], a
- ld a, [wBattleMenuCursorBuffer]
- ld [wMenuCursorBuffer], a
- call Function100e72
- call Function100b45
- callba InitPartyMenuBGPal7
- call Function100ed4
- ld a, [wMenuCursorBuffer]
- ld [wBattleMenuCursorBuffer], a
- call ExitMenu
- ret
-; 100b45
-
-Function100b45: ; 100b45
- call Function100b7a
-.loop
- call Mobile_SetOverworldDelay
- callba MobileMenuJoypad
- push bc
- callba HDMATransferTileMapToWRAMBank3
- call Function100e2d
- pop bc
- jr c, .asm_100b6b
- ld a, [wMenuJoypadFilter]
- and c
- jr z, .loop
- callba Mobile_GetMenuSelection
- ret
-
-.asm_100b6b
- ld a, [w2DMenuNumCols]
- ld c, a
- ld a, [w2DMenuNumRows]
- call SimpleMultiply
- ld [wMenuCursorBuffer], a
- and a
- ret
-; 100b7a
-
-Function100b7a: ; 100b7a
- ld hl, CopyMenuData2
- ld a, [wMenuData2_2DMenuItemStringsBank]
- rst FarCall
- callba Draw2DMenu
- callba MobileTextBorder
- call UpdateSprites
- call ApplyTilemap
- callba Init2DMenuCursorPosition
- ld hl, w2DMenuFlags1
- set 7, [hl]
- ret
-; 100b9f
-
-MobileMoveSelectionScreen: ; 100b9f
- xor a
- ld [wMoveSwapBuffer], a
- callba CheckPlayerHasUsableMoves
- ret z
- call Function100dd8
- jp c, xor_a_dec_a
- call Function100e72
- call .GetMoveSelection
- push af
- callba InitPartyMenuBGPal7
- call Function100ed4
- pop af
- ret
-; 100bc2
-
-.GetMoveSelection: ; 100bc2
- xor a
- ld [hBGMapMode], a
- call Function100c74
- call Function100c98
-.master_loop
- callba MoveInfoBox
-.loop
- call Mobile_SetOverworldDelay
- callba MobileMenuJoypad
- push bc
- callba HDMATransferTileMapToWRAMBank3
- call Function100e2d
- pop bc
- jr c, .b_button
- ld a, [wMenuJoypadFilter]
- and c
- bit D_UP_F, a
- jp nz, .d_up
- bit D_DOWN_F, a
- jp nz, .d_down
- bit A_BUTTON_F, a
- jr nz, .a_button
- bit B_BUTTON_F, a
- jr nz, .b_button
- jr .loop
-
-.d_up
- ld a, [wMenuCursorY]
- and a
- jp nz, .master_loop
- ld a, [wNumMoves]
- inc a
- ld [wMenuCursorY], a
- jp .master_loop
-
-.d_down
- ld a, [wMenuCursorY]
- ld b, a
- ld a, [wNumMoves]
- inc a
- inc a
- cp b
- jp nz, .master_loop
- ld a, $01
- ld [wMenuCursorY], a
- jp .master_loop
-
-.b_button
- ld a, [wMenuCursorY]
- dec a
- ld [CurMoveNum], a
- ld a, $01
- and a
- ret
-
-.a_button
- ld a, [wMenuCursorY]
- dec a
- ld [CurMoveNum], a
- ld a, [wMenuCursorY]
- dec a
- ld c, a
- ld b, 0
- ld hl, BattleMonPP
- add hl, bc
- ld a, [hl]
- and $3f
- jr z, .no_pp_left
- ld a, [PlayerDisableCount]
- swap a
- and $0f
- dec a
- cp c
- jr z, .move_disabled
- ld a, [wMenuCursorY]
- dec a
- ld c, a
- ld b, 0
- ld hl, BattleMonMoves
- add hl, bc
- ld a, [hl]
- ld [CurPlayerMove], a
- xor a
- ret
-
-.move_disabled
- ld hl, BattleText_TheMoveIsDisabled
- jr .print_text
-
-.no_pp_left
- ld hl, BattleText_TheresNoPPLeftForThisMove
-
-.print_text
- call StdBattleTextBox
- call Call_LoadTempTileMapToTileMap
- jp .GetMoveSelection
-; 100c74
-
-Function100c74: ; 100c74
- hlcoord 0, 8
- ld b, 8
- ld c, 8
- call TextBox
- ld hl, BattleMonMoves
- ld de, wListMoves_MoveIndicesBuffer
- ld bc, NUM_MOVES
- call CopyBytes
- ld a, SCREEN_WIDTH * 2
- ld [Buffer1], a
- hlcoord 2, 10
- predef ListMoves
- ret
-; 100c98
-
-Function100c98: ; 100c98
- ld de, .attrs
- call SetMenuAttributes
- ld a, [wNumMoves]
- inc a
- ld [w2DMenuNumRows], a
- ld a, [CurMoveNum]
- inc a
- ld [wMenuCursorY], a
- ret
-; 100cad
-
-.attrs ; 100cad
- db 10, 1
- db 255, 1
- db $a0, $00
- dn 2, 0
- db D_UP | D_DOWN | A_BUTTON | B_BUTTON
-
-Mobile_PartyMenuSelect: ; 100cb5
- call Function100dd8
- ret c
- ld hl, w2DMenuFlags1
- set 7, [hl]
- res 6, [hl]
-.loop
- call Mobile_SetOverworldDelay
- callba MobileMenuJoypad
- push bc
- callba PlaySpriteAnimations
- callba HDMATransferTileMapToWRAMBank3
- call MobileComms_CheckInactivityTimer
- pop bc
- jr c, .done
- ld a, [wMenuJoypadFilter]
- and c
- jr z, .loop
- call PlaceHollowCursor
- ld a, [PartyCount]
- inc a
- ld b, a
- ld a, [wMenuCursorY]
- cp b
- jr z, .done
- ld [wPartyMenuCursor], a
- ld a, [hJoyLast]
- ld b, a
- bit 1, b
- jr nz, .done
- ld a, [wMenuCursorY]
- dec a
- ld [CurPartyMon], a
- ld c, a
- ld b, 0
- ld hl, PartySpecies
- add hl, bc
- ld a, [hl]
- ld [CurPartySpecies], a
- ld de, SFX_READ_TEXT_2
- call PlaySFX
- call WaitSFX
- and a
- ret
-
-.done
- ld de, SFX_READ_TEXT_2
- call PlaySFX
- call WaitSFX
- scf
- ret
-; 100d22
-
-MobileBattleMonMenu: ; 100d22
- call Function100dd8
- ret c
- call Function100d67
- ld hl, w2DMenuFlags1
- set 7, [hl]
- res 6, [hl]
-.asm_100d30
- call Mobile_SetOverworldDelay
- callba MobileMenuJoypad
- push bc
- callba PlaySpriteAnimations
- callba HDMATransferTileMapToWRAMBank3
- call MobileComms_CheckInactivityTimer
- pop bc
- jr c, .asm_100d54
- ld a, [wMenuJoypadFilter]
- and c
- jr nz, .asm_100d56
- jr .asm_100d30
-
-.asm_100d54
- scf
- ret
-
-.asm_100d56
- push af
- ld de, SFX_READ_TEXT_2
- call PlaySFX
- pop af
- bit 1, a
- jr z, .asm_100d65
- ret z
- scf
- ret
-
-.asm_100d65
- and a
- ret
-; 100d67
-
-Function100d67: ; 100d67
- ld hl, .MenuDataHeader
- call CopyMenuDataHeader
- xor a
- ld [hBGMapMode], a
- call MenuBox
- call UpdateSprites
- call PlaceVerticalMenuItems
- call WaitBGMap
- call CopyMenuData2
- call InitVerticalMenuCursor
- ld hl, w2DMenuFlags1
- set 6, [hl]
- ret
-; 100d88
-
-.MenuDataHeader: ; 100d88
- db 0 ; flags
- db 11, 11 ; start coords
- db 17, 19 ; end coords
- dw .MenuData2
- db 1 ; default option
-
-.MenuData2: ; 100d90
- db $c0 ; flags
- db 3
- db "いれかえる@" ; TRADE
- db "つよさをみる@" ; STATS
- db "キャンセル@" ; CANCEL
-; 100da5
-
-Function100da5: ; 100da5
- ld hl, wcd2a
- res 3, [hl]
- ld hl, wcd29
- res 0, [hl]
- ret
-; 100db0
-
-Function100db0: ; 100db0
- ld hl, wcd2a
- bit 3, [hl]
- jr nz, .asm_100dbe
- ld hl, wcd2a
- set 3, [hl]
- scf
- ret
-
-.asm_100dbe
- xor a
- ret
-; 100dc0
-
-
-
-Function100dc0: ; 100dc0
- ld a, [wLinkMode]
- cp LINK_MOBILE
- jr nz, .mobile
- ld hl, wcd2a
- bit 3, [hl]
- jr z, .mobile
- scf
- ret
-
-.mobile
- xor a
- ret
-; 100dd2
-
-Mobile_SetOverworldDelay: ; 100dd2
- ld a, 30
- ld [OverworldDelay], a
- ret
-; 100dd8
-
-Function100dd8: ; 100dd8
- ld c, $01
- ld b, $03
- callba AdvanceMobileInactivityTimerAndCheckExpired
- jr c, .asm_100dfb
- ld c, $3c
- ld b, $01
- call Function10079c
- jr c, .asm_100dfb
- callba Function10032e
- ld a, [wcd2b]
- and a
- jr nz, .asm_100dfb
- xor a
- ret
-
-.asm_100dfb
- scf
- ret
-; 100dfd
-
-MobileComms_CheckInactivityTimer: ; 100dfd
- ld a, [OverworldDelay]
- ld c, a
- ld a, 30
- sub c
- ld c, a
- ld b, 3
- push bc
- callba AdvanceMobileInactivityTimerAndCheckExpired ; useless to farcall
- pop bc
- jr c, .quit
- ld b, 1
- call Function10079c
- jr c, .quit
- call Function1009f3
- jr c, .quit
- callba Function10032e ; useless to farcall
- ld a, [wcd2b]
- and a
- jr nz, .quit
- xor a
- ret
-
-.quit
- scf
- ret
-; 100e2d
-
-Function100e2d: ; 100e2d
- ld a, [OverworldDelay]
- ld c, a
- ld a, 30
- sub c
- ld c, a
- ld b, 3
- push bc
- callba AdvanceMobileInactivityTimerAndCheckExpired
- pop bc
- jr c, .asm_100e61
- ld b, 1
- call Function10079c
- jr c, .asm_100e61
- call Function1009f3
- jr c, .asm_100e61
- callba Function10032e
- ld a, [wcd2b]
- and a
- jr nz, .asm_100e61
- call Function100e63
- call Function100e84
- xor a
- ret
-
-.asm_100e61
- scf
- ret
-; 100e63
-
-Function100e63: ; 100e63
- ld a, e
- cp $02
- ret nz
- call Function100db0
- ret nc
- ld de, SFX_ELEVATOR_END
- call PlaySFX
- ret
-; 100e72
-
-Function100e72: ; 100e72
- xor a
- ld hl, wcd29
- bit 0, [hl]
- jr z, .asm_100e7c
- ld a, $0a
-
-.asm_100e7c
- ld [wcd67], a
- xor a
- ld [wcd68], a
- ret
-; 100e84
-
-Function100e84: ; 100e84
- ld a, [wcd67]
- ld hl, Jumptable_100e8c
- rst JumpTable
- ret
-; 100e8c
-
-
-Jumptable_100e8c: ; 100e8c (40:4e8c)
- dw Function100ea2
- dw Function100eae
- dw Function100eb4
- dw Function100eae
- dw Function100eb4
- dw Function100eae
- dw Function100eb4
- dw Function100eae
- dw Function100eb4
- dw Function100eae
- dw Function100ec4
-
-
-Function100ea2: ; 100ea2 (40:4ea2)
- call Function100dc0
- ret nc
- ld hl, wcd29
- set 0, [hl]
- call Function100ec5
-
-
-Function100eae: ; 100eae
- scf
- call Function100eca
- jr asm_100eb8
-
-Function100eb4: ; 100eb4
- and a
- call Function100eca
-
-asm_100eb8
- ld hl, wcd68
- inc [hl]
- ld a, [hl]
- cp $02
- ret c
- ld [hl], 0
- jr Function100ec5
-
-Function100ec4: ; 100ec4
- ret
-
-Function100ec5
- ld hl, wcd67
- inc [hl]
- ret
-; 100eca
-
-Function100eca: ; 100eca
- callba Mobile_InitPartyMenuBGPal7
- call Function100ed4
- ret
-; 100ed4
-
-Function100ed4: ; 100ed4
- callba ApplyPals
- ld a, $01
- ld [hCGBPalUpdate], a
- ret
-; 100edf
-
-Function100edf: ; 100edf
- ld hl, Unknown_100fc0
- ld c, 1
- jr asm_100f02
-
-Function100ee6: ; 100ee6
- ld hl, Unknown_100fc0
- ld c, 2
- jr asm_100f02
-
-Function100eed: ; 100eed
- ld hl, Unknown_100feb
- ld c, 1
- jr asm_100f02
-
-Function100ef4: ; 100ef4
- ld hl, Unknown_100ff3
- ld c, 1
- jr asm_100f02
-
-Function100efb: ; 100efb
- ld hl, Unknown_10102c
- ld c, 1
- jr asm_100f02
-
-asm_100f02:
- ld a, c
- ld [StringBuffer2], a
- ; someting that was previously stored in de gets backed up to here
- ld a, e
- ld [StringBuffer2 + 1], a
- ld a, d
- ld [StringBuffer2 + 2], a
- ; empty this
- xor a
- ld [StringBuffer2 + 4], a
- ld [StringBuffer2 + 5], a
-.loop
- ld a, [hl]
- cp $ff
- jr z, .done
- ld [StringBuffer2 + 3], a ; bank
- push hl
- inc hl
- ; addr 1
- ld a, [hli]
- ld e, a
- ld a, [hli]
- ld d, a
- ; size
- ld a, [hli]
- ld c, a
- ld a, [hli]
- ld b, a
- ; addr 2
- ld a, [hli]
- ld h, [hl]
- ld l, a
- call Function100f3d
- ; next line
- pop hl
- ld de, 7
- add hl, de
- jr .loop
-
-.done
- ; recover the values into bc
- ld a, [StringBuffer2 + 4]
- ld c, a
- ld a, [StringBuffer2 + 5]
- ld b, a
- ret
-; 100f3d
-
-Function100f3d: ; 100f3d
- ; parameter
- ld a, [StringBuffer2]
- cp $02
- jr z, .two
- cp $01
- jr z, .one
- cp $03
- jr z, .three
- ret
-
-.three
- ; what was once in de gets copied to hl,
- ; modified by Function100f8d, and put back
- ; into this backup
- ld a, [StringBuffer2 + 1]
- ld l, a
- ld a, [StringBuffer2 + 2]
- ld h, a
- call Function100f8d
- ld a, l
- ld [StringBuffer2 + 1], a
- ld a, h
- ld [StringBuffer2 + 2], a
- ret
-
-.two
- ; hl gets backed up to de, then
- ; do the same as in .three
- ld d, h
- ld e, l
- ld a, [StringBuffer2 + 1]
- ld l, a
- ld a, [StringBuffer2 + 2]
- ld h, a
- call Function100f8d
- ld a, l
- ld [StringBuffer2 + 1], a
- ld a, h
- ld [StringBuffer2 + 2], a
- ret
-
-.one
- ; de gets copied to hl, then
- ; load the backup into de,
- ; finally run Function100f8d
- ; and store the de result
- ld h, d
- ld l, e
- ld a, [StringBuffer2 + 1]
- ld e, a
- ld a, [StringBuffer2 + 2]
- ld d, a
- call Function100f8d
- ld a, e
- ld [StringBuffer2 + 1], a
- ld a, d
- ld [StringBuffer2 + 2], a
- ret
-; 100f8d
-
-Function100f8d: ; 100f8d
- push hl
- ld a, [StringBuffer2 + 4]
- ld l, a
- ld a, [StringBuffer2 + 5]
- ld h, a
- add hl, bc
- ld a, l
- ld [StringBuffer2 + 4], a
- ld a, h
- ld [StringBuffer2 + 5], a
- pop hl
- ld a, [StringBuffer2 + 3]
- bit 7, a
- res 7, a
- jr z, .sram
- and a
- jr nz, .far_wram
- call CopyBytes
- ret
-
-.far_wram
- and $7f
- call FarCopyWRAM
- ret
-
-.sram
- call GetSRAMBank
- call CopyBytes
- call CloseSRAM
- ret
-; 100fc0
-
-Unknown_100fc0: ; 100fc0
- ; first byte:
- ; Bit 7 set: Not SRAM
- ; Lower 7 bits: Bank
- ; Address, size (dw), address
- dbwww $80, PlayerName, NAME_LENGTH, OTPlayerName
- dbwww $80, PartyCount, 1 + PARTY_LENGTH + 1, OTPartyCount
- dbwww $80, PlayerID, 2, OTPlayerID
- dbwww $80, PartyMons, PARTYMON_STRUCT_LENGTH * PARTY_LENGTH, OTPartyMons
- dbwww $80, PartyMonOT, NAME_LENGTH * PARTY_LENGTH, OTPartyMonOT
- dbwww $80, PartyMonNicknames, PKMN_NAME_LENGTH * PARTY_LENGTH, OTPartyMonNicknames
- db -1
-
-Unknown_100feb: ; 100feb
- dbwww $00, sPartyMail, MAIL_STRUCT_LENGTH * PARTY_LENGTH, NULL
- db -1
-
-Unknown_100ff3: ; 100ff3
- dbwww $80, wdc41, 1, NULL
- dbwww $80, PlayerName, NAME_LENGTH, NULL
- dbwww $80, PlayerName, NAME_LENGTH, NULL
- dbwww $80, PlayerID, 2, NULL
- dbwww $80, wSecretID, 2, NULL
- dbwww $80, PlayerGender, 1, NULL
- dbwww $04, $a603, 8, NULL
- dbwww $04, $a007, PARTYMON_STRUCT_LENGTH, NULL
- db -1
-
-Unknown_10102c: ; 10102c
- dbwww $80, OTPlayerName, NAME_LENGTH, NULL
- dbwww $80, OTPlayerID, 2, NULL
- dbwww $80, OTPartyMonNicknames, PKMN_NAME_LENGTH * PARTY_LENGTH, NULL
- dbwww $80, OTPartyMonOT, NAME_LENGTH * PARTY_LENGTH, NULL
- dbwww $80, OTPartyMons, PARTYMON_STRUCT_LENGTH * PARTY_LENGTH, NULL
- db -1
-; 10104f
-
-Function101050: ; 101050
- call Function10107d
- ld a, [OTPartyCount]
-rept 2 ; ???
- ld hl, wc608
-endr
- ld bc, wc7bb - wc608
- call Function1010de
- ld hl, wc7bb
- ld [hl], e
- inc hl
- ld [hl], d
- ld a, $07
- call GetSRAMBank
- ld hl, wc608
- ld de, $a001
- ld bc, wc7bd - wc608
- call CopyBytes
- call CloseSRAM
- ret
-; 10107d
-
-Function10107d: ; 10107d
- xor a
- ld hl, wc608
- ld bc, wc7bd - wc608
- call ByteFill
- ld hl, OTPlayerName
- ld de, wc608
- ld bc, NAME_LENGTH
- call CopyBytes
- ld hl, wd271
- ld a, [hli]
- ld [wc608 + 11], a
- ld a, [hl]
- ld [wc608 + 12], a
- ld hl, OTPartyMonNicknames
- ld de, wc608 + 13
- ld bc, NAME_LENGTH
- call .CopyAllFromOT
- ld hl, OTPartyMonOT
- ld de, OTClassName + 1
- ld bc, NAME_LENGTH
- call .CopyAllFromOT
- ld hl, OTPartyMon1Species
- ld de, $c699
- ld bc, PARTYMON_STRUCT_LENGTH
- call .CopyAllFromOT
- ld a, $50
- ld [wc7b9], a
- ld a, $33
- ld [wc7ba], a
- ret
-; 1010cd
-
-.CopyAllFromOT: ; 1010cd
- push hl
- ld hl, 0
- ld a, [OTPartyCount]
- call AddNTimes
- ld b, h
- ld c, l
- pop hl
- call CopyBytes
- ret
-; 1010de
-
-Function1010de: ; 1010de
- push hl
- push bc
- ld de, 0
-.loop
- ld a, [hli]
- add e
- ld e, a
- ld a, d
- adc 0
- ld d, a
- dec bc
- ld a, b
- or c
- jr nz, .loop
- pop bc
- pop hl
- ret
-; 1010f2
-
-LoadSelectedPartiesForColosseum: ; 1010f2
- xor a
- ld hl, StringBuffer2
- ld bc, 9
- call ByteFill
- ld hl, wPlayerMonSelection
- ld de, PartyCount
- call .CopyThreeSpecies
- ld hl, wPlayerMonSelection
- ld de, PartyMon1Species
- call .CopyPartyStruct
- ld hl, wPlayerMonSelection
- ld de, PartyMonOT
- call .CopyName
- ld hl, wPlayerMonSelection
- ld de, PartyMonNicknames
- call .CopyName
- ld hl, wOTMonSelection
- ld de, OTPartyCount
- call .CopyThreeSpecies
- ld hl, wOTMonSelection
- ld de, OTPartyMon1Species
- call .CopyPartyStruct
- ld hl, wOTMonSelection
- ld de, OTPartyMonOT
- call .CopyName
- ld hl, wOTMonSelection
- ld de, OTPartyMonNicknames
- call .CopyName
- ret
-; 101145
-
-.CopyThreeSpecies: ; 101145
-; Load the 3 choices to the buffer
- push de
- ld bc, StringBuffer2 + 6
- xor a
-.party_loop
- push af
- call .GetNthSpecies
- ld [bc], a
- inc bc
- pop af
- inc a
- cp 3
- jr nz, .party_loop
- pop de
-; Copy the 3 choices to the party
- ld a, 3
- ld [de], a
- inc de
- ld hl, StringBuffer2 + 6
- ld bc, 3
- call CopyBytes
- ld a, $ff
- ld [de], a
- ret
-; 101168
-
-.GetNthSpecies: ; 101168
-; Preserves hl and de
-; Get the index of the Nth selection
- push hl
- add l
- ld l, a
- ld a, h
- adc 0
- ld h, a
- ld a, [hl]
- pop hl
-; Get the corresponding species
- push de
- inc de
- add e
- ld e, a
- ld a, d
- adc 0
- ld d, a
- ld a, [de]
- pop de
- ret
-; 10117c
-
-.CopyPartyStruct: ; 10117c
- ld bc, PARTYMON_STRUCT_LENGTH
- jr .ContinueCopy
-
-.CopyName: ; 101181
- ld bc, NAME_LENGTH
-
-.ContinueCopy:
- ; Copy, via wc608...
- ld a, wc608 % $100
- ld [StringBuffer2], a
- ld a, wc608 / $100
- ld [StringBuffer2 + 1], a
- ; ... bc bytes...
- ld a, c
- ld [StringBuffer2 + 2], a
- ld a, b
- ld [StringBuffer2 + 3], a
- ; ... to de...
- ld a, e
- ld [StringBuffer2 + 4], a
- ld a, d
- ld [StringBuffer2 + 5], a
- ; ... 3 times.
- ld a, 3
-.big_copy_loop
- push af
- ld a, [hli]
- push hl
- push af
- call .GetDestinationAddress
- call .GetCopySize
- pop af
- call AddNTimes
- ld a, [StringBuffer2]
- ld e, a
- ld a, [StringBuffer2 + 1]
- ld d, a
- call CopyBytes
- ld a, e
- ld [StringBuffer2], a
- ld a, d
- ld [StringBuffer2 + 1], a
- pop hl
- pop af
- dec a
- jr nz, .big_copy_loop
- call .GetCopySize
- ld a, 3
- ld hl, 0
- call AddNTimes
- ld b, h
- ld c, l
- call .GetDestinationAddress
- ld d, h
- ld e, l
- ld hl, wc608
- call CopyBytes
- ret
-; 1011df
-
-.GetDestinationAddress: ; 1011df
- ld a, [StringBuffer2 + 4]
- ld l, a
- ld a, [StringBuffer2 + 5]
- ld h, a
- ret
-; 1011e8
-
-.GetCopySize: ; 1011e8
- ld a, [StringBuffer2 + 2]
- ld c, a
- ld a, [StringBuffer2 + 3]
- ld b, a
- ret
-; 1011f1
-
-Function1011f1: ; 1011f1
- ld a, $04
- call GetSRAMBank
- ld a, [$a60c]
- ld [wdc41], a
- call CloseSRAM
- ld hl, wdc41
- res 4, [hl]
- ld hl, GameTimerPause
- bit 7, [hl]
- jr z, .skip
- ld hl, wdc41
- set 4, [hl]
-
-.skip
- call Function10209c
- xor a
- ld [wdc5f], a
- ld [wdc60], a
- ld a, LINK_MOBILE
- ld [wLinkMode], a
- ret
-; 101220
-
-Function101220: ; 101220
- xor a
- ld [wLinkMode], a
- ret
-; 101225
-
-Function101225: ; 101225
- ld d, 1
- ld e, BANK(Jumptable_101297)
- ld bc, Jumptable_101297
- call Function100000
- jr Function10123d
-
-Function101231: ; 101231
- ld d, 2
- ld e, BANK(Jumptable_101297)
- ld bc, Jumptable_101297
- call Function100000
- jr Function10123d
-
-Function10123d: ; 10123d
- xor a
- ld [ScriptVar], a
- ld a, c
- ld hl, Jumptable_101247
- rst JumpTable
- ret
-; 101247
-
-Jumptable_101247: ; 101247
- dw Function101251
- dw Function10127d
- dw Function10127c
- dw Function10126c
- dw Function101265
-; 101251
-
-Function101251: ; 101251
- call UpdateSprites
- call RefreshScreen
- ld hl, UnknownText_0x1021f4
- call Function1021e0
- call Function1020ea
- ret c
- call Function102142
- ret
-; 101265
-
-Function101265: ; 101265
- ld hl, UnknownText_0x1021ef
- call Function1021e0
- ret
-; 10126c
-
-Function10126c: ; 10126c
- call UpdateSprites
- callba Script_reloadmappart
- ld hl, UnknownText_0x1021f4
- call Function1021e0
- ret
-; 10127c
-
-Function10127c: ; 10127c
- ret
-; 10127d
-
-Function10127d: ; 10127d
- ret
-; 10127e
-
-Function10127e: ; 10127e
- ld a, [wdc5f]
- and a
- jr z, .zero
- cp 1
- ld c, $27
- jr z, .load
- cp 2
- ld c, $37
- jr z, .load
-.zero
- ld c, 0
-.load
- ld a, c
- ld [wMobileCommsJumptableIndex], a
- ret
-; 101297
-
-Jumptable_101297: ; 101297
- dw Function101a97 ; 00
- dw Function101ab4 ; 01
- dw Function101475 ; 02
- dw Function101b0f ; 03
- dw Function101438 ; 04
- dw Function101b2b ; 05
- dw Function101b59 ; 06
- dw Function101475 ; 07
- dw Function101b70 ; 08
- dw Function101438 ; 09
- dw Function101b8f ; 0a
- dw Function101d7b ; 0b
- dw Function101d95 ; 0c
- dw Function101475 ; 0d
- dw Function101db2 ; 0e
- dw Function101e4f ; 0f
- dw Function101475 ; 10
- dw Function101e64 ; 11
- dw Function101e4f ; 12
- dw Function101475 ; 13
- dw Function101e64 ; 14
- dw Function101d95 ; 15
- dw Function101475 ; 16
- dw Function101db2 ; 17
- dw Function101dd0 ; 18
- dw Function101de3 ; 19
- dw Function101e39 ; 1a
- dw Function101e09 ; 1b
- dw Function101e4f ; 1c
- dw Function101475 ; 1d
- dw Function101e64 ; 1e
- dw Function101d95 ; 1f
- dw Function101475 ; 20
- dw Function101db2 ; 21
- dw Function101e09 ; 22
- dw Function101e31 ; 23
- dw Function101bc8 ; 24
- dw Function101438 ; 25
- dw Function101be5 ; 26
- dw Function101ac6 ; 27
- dw Function101ab4 ; 28
- dw Function101475 ; 29
- dw Function101c11 ; 2a
- dw Function1014f4 ; 2b
- dw Function101cc8 ; 2c
- dw Function1014e2 ; 2d
- dw Function1014e2 ; 2e
- dw Function101d10 ; 2f
- dw Function101d2a ; 30
- dw Function101d2a ; 31
- dw Function101507 ; 32
- dw Function10156d ; 33
- dw Function101557 ; 34
- dw Function10158a ; 35
- dw Function101c42 ; 36
- dw Function101aed ; 37
- dw Function101ab4 ; 38
- dw Function101475 ; 39
- dw Function101c2b ; 3a
- dw Function1014f4 ; 3b
- dw Function101cdf ; 3c
- dw Function1014e2 ; 3d
- dw Function1014e2 ; 3e
- dw Function101d1e ; 3f
- dw Function101d2a ; 40
- dw Function101d2a ; 41
- dw Function101507 ; 42
- dw Function10156d ; 43
- dw Function101544 ; 44
- dw Function10158a ; 45
- dw Function101c42 ; 46
- dw Function101c50 ; 47
- dw Function1014ce ; 48
- dw Function101cf6 ; 49
- dw Function101826 ; 4a
- dw Function1017e4 ; 4b
- dw Function1017f1 ; 4c
- dw Function1018a8 ; 4d
- dw Function1018d6 ; 4e
- dw Function1017e4 ; 4f
- dw Function1017f1 ; 50
- dw Function1018e1 ; 51
- dw Function1015df ; 52
- dw Function10167d ; 53
- dw Function10168a ; 54
- dw Function10162a ; 55
- dw Function1015be ; 56
- dw Function10167d ; 57
- dw Function10168a ; 58
- dw Function10161f ; 59
- dw Function10159d ; 5a
- dw Function10167d ; 5b
- dw Function10168a ; 5c
- dw Function101600 ; 5d
- dw Function101d03 ; 5e
- dw Function101d6b ; 5f
- dw Function10159d ; 60
- dw Function1014ce ; 61
- dw Function10168e ; 62
- dw Function101600 ; 63
- dw Function101913 ; 64
- dw Function10194b ; 65
- dw _SelectMonsForMobileBattle ; 66
- dw Function1017e4 ; 67
- dw Function1017f5 ; 68
- dw _StartMobileBattle ; 69
- dw Function101537 ; 6a
- dw Function101571 ; 6b
- dw Function101c92 ; 6c
- dw Function10152a ; 6d
- dw Function101571 ; 6e
- dw Function101a4f ; 6f
- dw Function101cbc ; 70
- dw Function101c62 ; 71
- dw Function101537 ; 72
- dw Function101571 ; 73
- dw Function101c92 ; 74
- dw Function10152a ; 75
- dw Function101571 ; 76
- dw Function101ca0 ; 77
- dw Function101475 ; 78
- dw Function101cbc ; 79
-; 10138b
-
-Function10138b: ; 10138b
- callba Function8adcc
- ld c, 0
- jr c, .asm_101396
- inc c
-
-.asm_101396
- sla c
- ld a, [wcd2f]
- and a
- jr z, .asm_10139f
- inc c
-
-.asm_10139f
- sla c
- ld a, [wcd21]
- cp $01
- jr z, .asm_1013a9
- inc c
-
-.asm_1013a9
- ret
-; 1013aa
-
-Function1013aa: ; 1013aa
- call ClearBGPalettes
- call Call_ExitMenu
- call ReloadTilesetAndPalettes
- callba Function106464
- call UpdateSprites
- call FinishExitMenu
- ret
-; 1013c0
-
-Function1013c0: ; 1013c0
- callba BlankScreen
- callba MobileFunc_106462
- callba Function106464
- call FinishExitMenu
- ret
-; 1013d6
-
-Function1013d6: ; 1013d6
- callba HDMATransferAttrMapAndTileMapToWRAMBank3
- ret
-; 1013dd
-
-Function1013dd: ; 1013dd
- call CGBOnly_LoadEDTile
- ret
-; 1013e1
-
-Function1013e1: ; 1013e1 ; unreferenced
- push de
- inc de
- ld b, a
- ld c, 0
-.asm_1013e6
- inc c
- ld a, [hli]
- ld [de], a
- inc de
- and a
- jr z, .asm_1013f1
- dec b
- jr nz, .asm_1013e6
- scf
-
-.asm_1013f1
- pop de
- ld a, c
- ld [de], a
- ret
-; 1013f5
-
-Function1013f5: ; 1013f5
- ld a, [hli]
- ld [de], a
- inc de
- ld c, a
-.asm_1013f9
- ld a, [hli]
- ld [de], a
- inc de
- dec c
- jr nz, .asm_1013f9
- ret
-; 101400
-
-Function101400: ; 101400 ; unreferenced
- ld a, [de]
- inc de
- cp [hl]
- jr nz, asm_101416
- inc hl
-
-Function101406: ; 101406
- ld c, a
- ld b, 0
-.asm_101409
- ld a, [de]
- inc de
- cp [hl]
- jr nz, asm_101416
- inc hl
- dec bc
- ld a, b
- or c
- jr nz, .asm_101409
- and a
- ret
-
-asm_101416
- scf
- ret
-; 101418
-
-Function101418: ; 101418
- call GetJoypad
- ld a, [hJoyDown]
- and SELECT + A_BUTTON
- cp SELECT + A_BUTTON
- jr z, .asm_101425
- xor a
- ret
-
-.asm_101425
- ld a, $f7
- ld [wcd2b], a
- scf
- ret
-; 10142c
-
-Function10142c: ; 10142c
- ld a, $01
- ld [wc305], a
- callba Function115e18
- ret
-; 101438
-
-Function101438: ; 101438
- ld hl, wcd29
- set 6, [hl]
- ld a, [wcd26]
- ld hl, Jumptable_101457
- rst JumpTable
- ld a, [wcd26]
- bit 7, a
- ret z
- ld a, 0
- ld [wcd26], a
- ld a, [wMobileCommsJumptableIndex]
- inc a
- ld [wMobileCommsJumptableIndex], a
- ret
-; 101457
-
-Jumptable_101457: ; 101457
- dw Function10145b
- dw Function101467
-; 10145b
-
-Function10145b: ; 10145b
- ld a, $3c
- ld [wcd42], a
- ld a, [wcd26]
- inc a
- ld [wcd26], a
-
-Function101467: ; 101467
- ld hl, wcd42
- dec [hl]
- ret nz
- ld a, [wcd26]
- set 7, a
- ld [wcd26], a
- ret
-; 101475
-
-Function101475: ; 101475
- ld hl, wcd29
- set 6, [hl]
- ld a, [wcd26]
- ld hl, Jumptable_101494
- rst JumpTable
- ld a, [wcd26]
- bit 7, a
- ret z
- ld a, 0
- ld [wcd26], a
- ld a, [wMobileCommsJumptableIndex]
- inc a
- ld [wMobileCommsJumptableIndex], a
- ret
-; 101494
-
-Jumptable_101494: ; 101494
- dw Function10149a
- dw Function1014a6
- dw Function1014b7
-; 10149a
-
-Function10149a: ; 10149a
- ld a, $28
- ld [wcd42], a
- ld a, [wcd26]
- inc a
- ld [wcd26], a
-
-Function1014a6: ; 1014a6
- ld hl, wcd42
- dec [hl]
- ret nz
- ld a, $50
- ld [wcd42], a
- ld a, [wcd26]
- inc a
- ld [wcd26], a
-
-Function1014b7: ; 1014b7
- call GetJoypad
- ld a, [hJoyPressed]
- and $03
- jr nz, .asm_1014c5
- ld hl, wcd42
- dec [hl]
- ret nz
-
-.asm_1014c5
- ld a, [wcd26]
- set 7, a
- ld [wcd26], a
- ret
-; 1014ce
-
-Function1014ce: ; 1014ce
- callba Function100720
- callba StartMobileInactivityTimer
- ld a, [wMobileCommsJumptableIndex]
- inc a
- ld [wMobileCommsJumptableIndex], a
- ret
-; 1014e2
-
-Function1014e2: ; 1014e2
- ld hl, wcd29
- set 6, [hl]
- ld a, 0
- ld [wcd26], a
- ld a, [wMobileCommsJumptableIndex]
- inc a
- ld [wMobileCommsJumptableIndex], a
- ret
-; 1014f4
-
-Function1014f4: ; 1014f4
- callba EnableMobile
- ld hl, wcd29
- set 6, [hl]
- ld a, [wMobileCommsJumptableIndex]
- inc a
- ld [wMobileCommsJumptableIndex], a
- ret
-; 101507
-
-Function101507: ; 101507
- ld de, wcd30
- ld hl, $40
- ld bc, $40
- ld a, $02
- call Function3e32
- ld a, [wMobileCommsJumptableIndex]
- inc a
- ld [wMobileCommsJumptableIndex], a
- ret
-; 10151d
-
-Function10151d: ; 10151d ; unreferenced
- ld a, $34
- call Function3e32
- ld a, [wMobileCommsJumptableIndex]
- inc a
- ld [wMobileCommsJumptableIndex], a
- ret
-; 10152a
-
-Function10152a: ; 10152a
- ld a, $36
- call Function3e32
- ld a, [wMobileCommsJumptableIndex]
- inc a
- ld [wMobileCommsJumptableIndex], a
- ret
-; 101537
-
-Function101537: ; 101537
- ld a, $0a
- call Function3e32
- ld a, [wMobileCommsJumptableIndex]
- inc a
- ld [wMobileCommsJumptableIndex], a
- ret
-; 101544
-
-Function101544: ; 101544
- callba StartMobileInactivityTimer
- ld a, $12
- call Function3e32
- ld a, [wMobileCommsJumptableIndex]
- inc a
- ld [wMobileCommsJumptableIndex], a
- ret
-; 101557
-
-Function101557: ; 101557
- callba StartMobileInactivityTimer
- ld hl, wcd53
- ld a, $08
- call Function3e32
- ld a, [wMobileCommsJumptableIndex]
- inc a
- ld [wMobileCommsJumptableIndex], a
- ret
-; 10156d
-
-Function10156d: ; 10156d
- call Function101418
- ret c
-
-Function101571: ; 101571
- callba Function10032e
- ret c
- ret z
- ld a, e
- cp $01
- jr z, .asm_101582
- ld [wcd2b], a
- ret
-
-.asm_101582
- ld a, [wMobileCommsJumptableIndex]
- inc a
- ld [wMobileCommsJumptableIndex], a
- ret
-; 10158a
-
-Function10158a: ; 10158a
- callba IncrementMobileInactivityTimerBy1Frame
- ld a, [wMobileInactivityTimerMinutes]
- cp $0a
- jr c, Function10156d
- ld a, $fb
- ld [wcd2b], a
- ret
-; 10159d
-
-Function10159d: ; 10159d
- ld de, wc608
- callba Function100edf
- ld de, wc608
- ld a, $05
- ld hl, w5_d800
- call Function10174c
- ld a, 0
- ld [wcd26], a
- ld a, [wMobileCommsJumptableIndex]
- inc a
- ld [wMobileCommsJumptableIndex], a
- ret
-; 1015be
-
-Function1015be: ; 1015be
- ld de, wc608
- callba Function100eed
- ld de, wc608
- ld a, $05
- ld hl, w5_d800
- call Function10174c
- ld a, 0
- ld [wcd26], a
- ld a, [wMobileCommsJumptableIndex]
- inc a
- ld [wMobileCommsJumptableIndex], a
- ret
-; 1015df
-
-Function1015df: ; 1015df
- ld de, wc608
- callba Function100ef4
- ld de, wc608
- ld a, $05
- ld hl, w5_d800
- call Function10174c
- ld a, 0
- ld [wcd26], a
- ld a, [wMobileCommsJumptableIndex]
- inc a
- ld [wMobileCommsJumptableIndex], a
- ret
-; 101600
-
-Function101600: ; 101600
- ld hl, w5_d800
- ld de, wc608
- ld bc, $1e0
- ld a, $05
- call FarCopyWRAM
- ld de, wc608
- callba Function100ee6
- ld a, [wMobileCommsJumptableIndex]
- inc a
- ld [wMobileCommsJumptableIndex], a
- ret
-; 10161f
-
-Function10161f: ; 10161f
- call Function101649
- ld a, [wMobileCommsJumptableIndex]
- inc a
- ld [wMobileCommsJumptableIndex], a
- ret
-; 10162a
-
-Function10162a: ; 10162a
- call Function101663
- ld a, [wMobileCommsJumptableIndex]
- inc a
- ld [wMobileCommsJumptableIndex], a
- ret
-; 101635
-
-Function101635: ; 101635
- ld de, wc608
- ld bc, $1e0
- call FarCopyWRAM
- ret
-; 10163f
-
-Function10163f: ; 10163f
- ld hl, wc608
- ld bc, $1e0
- call FarCopyWRAM
- ret
-; 101649
-
-Function101649: ; 101649
- ld a, $05
- ld hl, w5_d800
- call Function101635
- ld a, $05
- ld de, w5_da00
- call Function10163f
- ret
-; 10165a
-
-Function10165a: ; 10165a
- ld a, $05
- ld hl, w5_da00
- call Function101635
- ret
-; 101663
-
-Function101663: ; 101663
- ld a, $05
- ld hl, w5_d800
- call Function101635
- ld a, $05
- ld de, w5_dc00
- call Function10163f
- ret
-; 101674
-
-Function101674: ; 101674 ; unreferenced
- ld a, $05
- ld hl, w5_dc00
- call Function101635
- ret
-; 10167d
-
-Function10167d: ; 10167d
- ld a, 0
- ld [wcd26], a
- ld a, [wMobileCommsJumptableIndex]
- inc a
- ld [wMobileCommsJumptableIndex], a
- ret
-; 10168a
-
-Function10168a: ; 10168a
- call Function101418
- ret c
-
-Function10168e: ; 10168e
- ld b, 0
- ld c, $01
- callba Function10079c
- ret c
- ld c, $01
- ld b, $03
- callba AdvanceMobileInactivityTimerAndCheckExpired
- ret c
- ld a, [wcd26]
- ld hl, Jumptable_1016c3
- rst JumpTable
- ld hl, wcd29
- set 6, [hl]
- ld a, [wcd26]
- bit 7, a
- ret z
- ld a, 0
- ld [wcd26], a
- ld a, [wMobileCommsJumptableIndex]
- inc a
- ld [wMobileCommsJumptableIndex], a
- ret
-; 1016c3
-
-Jumptable_1016c3: ; 1016c3
- dw Function1016cf
- dw Function1016de
- dw Function1016f8
- dw Function101705
- dw Function101719
- dw Function101724
-; 1016cf
-
-Function1016cf: ; 1016cf
- ld hl, wcd3a
- inc [hl]
- call Function10176f
- ld a, [wcd26]
- inc a
- ld [wcd26], a
- ret
-; 1016de
-
-Function1016de: ; 1016de
- call Function10177b
- jr nc, .asm_1016eb
- ld a, [wcd26]
- inc a
- ld [wcd26], a
- ret
-
-.asm_1016eb
- ld a, $ff
- ld [wcd39], a
- ld a, [wcd26]
- inc a
- ld [wcd26], a
- ret
-; 1016f8
-
-Function1016f8: ; 1016f8
- ld a, 0
- ld [wcd27], a
- ld a, [wcd26]
- inc a
- ld [wcd26], a
- ret
-; 101705
-
-Function101705: ; 101705
- callba Function100382
- ld a, [wcd27]
- bit 7, a
- ret z
- ld a, [wcd26]
- inc a
- ld [wcd26], a
- ret
-; 101719
-
-Function101719: ; 101719
- call Function1017c7
- ld a, [wcd26]
- inc a
- ld [wcd26], a
- ret
-; 101724
-
-Function101724: ; 101724
- ld a, [wcd39]
- cp $ff
- jr z, .asm_101731
- ld a, 0
- ld [wcd26], a
- ret
-
-.asm_101731
- ld a, [wcd26]
- set 7, a
- ld [wcd26], a
- ret
-; 10173a
-
-Unknown_10173a:
- db $50
-
-Function10173b: ; 10173b
- push bc
- push af
- ld a, [hli]
- ld h, [hl]
- ld l, a
- ld a, [Unknown_10173a]
- ld c, a
- ld b, 0
- pop af
- call AddNTimes
- pop bc
- ret
-; 10174c
-
-Function10174c: ; 10174c
- ld [wcd3d], a
- ld a, l
- ld [wcd3e], a
- ld a, h
- ld [wcd3f], a
- ld a, e
- ld [wcd3b], a
- ld a, d
- ld [wcd3c], a
- ld a, c
- ld [wcd40], a
- ld a, b
- ld [wcd41], a
- xor a
- ld [wcd39], a
- ld [wcd3a], a
- ret
-; 10176f
-
-Function10176f: ; 10176f
- ld hl, wccb4
- ld bc, $54
- ld a, $11
- call ByteFill
- ret
-; 10177b
-
-Function10177b: ; 10177b
- ld a, [Unknown_10173a]
- ld c, a
- ld b, 0
- ld a, [wcd3a]
- ld hl, 0
- call AddNTimes
- ld e, l
- ld d, h
- ld hl, wcd40
- ld a, [hli]
- ld h, [hl]
- ld l, a
- ld a, l
- sub e
- ld l, a
- ld a, h
- sbc d
- ld h, a
- jr c, .asm_1017a0
- add hl, bc
- call Function1017b0
- scf
- ret
-
-.asm_1017a0
- ld a, $ff
- ld [wcd39], a
- add hl, bc
- ld a, h
- or l
- ret z
- ld c, l
- ld b, h
- call Function1017b0
- xor a
- ret
-; 1017b0
-
-Function1017b0: ; 1017b0
- ld a, c
- ld [wccb4], a
- push bc
- ld a, [wcd3a]
- dec a
- ld hl, wcd3b
- call Function10173b
- pop bc
- ld de, wccb5
- call CopyBytes
- ret
-; 1017c7
-
-Function1017c7: ; 1017c7
- ld a, [wcc60]
- ld c, a
- ld b, 0
- ld a, [wcd3a]
- dec a
- ld hl, wcd3e
- call Function10173b
- ld e, l
- ld d, h
- ld hl, wcc61
- ld a, [wcd3d]
- call FarCopyWRAM
- and a
- ret
-; 1017e4
-
-Function1017e4: ; 1017e4
- ld a, 0
- ld [wcd27], a
- ld a, [wMobileCommsJumptableIndex]
- inc a
- ld [wMobileCommsJumptableIndex], a
- ret
-; 1017f1
-
-Function1017f1: ; 1017f1
- call Function101418
- ret c
-
-Function1017f5: ; 1017f5
- ld b, 0
- ld c, $01
- callba Function10079c
- ret c
- ld c, $01
- ld b, $03
- callba AdvanceMobileInactivityTimerAndCheckExpired
- ret c
- callba Function100382
- ld a, [wcd27]
- bit 7, a
- jr nz, .next
- ld hl, wcd29
- set 6, [hl]
- ret
-
-.next
- ld a, [wMobileCommsJumptableIndex]
- inc a
- ld [wMobileCommsJumptableIndex], a
- ret
-; 101826
-
-Function101826: ; 101826
- ld a, [wcd21]
- cp $02
- jr z, .asm_101833
- cp $01
- jr z, .asm_101844
- jr .asm_101869
-
-.asm_101833
- ld hl, Unknown_10186f
- ld de, wccb4
- call Function1013f5
- ld a, [wMobileCommsJumptableIndex]
- inc a
- ld [wMobileCommsJumptableIndex], a
- ret
-
-.asm_101844
- callba Function103654
- ld a, c
- ld hl, Unknown_101882
- cp $01
- jr z, .asm_10185b
- ld hl, Unknown_101895
- cp $02
- jr z, .asm_10185b
- jr .asm_101869
-
-.asm_10185b
- ld de, wccb4
- call Function1013f5
- ld a, [wMobileCommsJumptableIndex]
- inc a
- ld [wMobileCommsJumptableIndex], a
- ret
-
-.asm_101869
- ld a, $fe
- ld [wcd2b], a
- ret
-; 10186f
-
-
-SECTION "ascii 10186f", ROMX
-
- charmap " ", $20 ; revert to ascii
-
-Unknown_10186f:
- db .end - @
- db $19, $73, $09, $13, "trade_crystal"
-.end db 0
-
-Unknown_101882:
- db .end - @
- db $19, $67, $10, $01, "free__crystal"
-.end db 0
-
-Unknown_101895:
- db .end - @
- db $19, $67, $10, $01, "limit_crystal"
-.end db 0
-; 1018a8
-
-
-SECTION "bank40_3", ROMX
-
-Function1018a8: ; 1018a8
- ld hl, wccb5
- ld de, wcc61
- ld a, $04
- call Function101406
- jr c, .asm_1018d0
- ld hl, wccb9
- ld de, wcc65
- ld a, $06
- call Function101406
- jr c, .asm_1018ca
- ld a, [wMobileCommsJumptableIndex]
- inc a
- ld [wMobileCommsJumptableIndex], a
- ret
-
-.asm_1018ca
- ld a, $f6
- ld [wcd2b], a
- ret
-
-.asm_1018d0
- ld a, $f5
- ld [wcd2b], a
- ret
-; 1018d6
-
-Function1018d6: ; 1018d6
- call Function1018ec
- ld a, [wMobileCommsJumptableIndex]
- inc a
- ld [wMobileCommsJumptableIndex], a
- ret
-; 1018e1
-
-Function1018e1: ; 1018e1
- call Function1018fb
- ld a, [wMobileCommsJumptableIndex]
- inc a
- ld [wMobileCommsJumptableIndex], a
- ret
-; 1018ec
-
-Function1018ec: ; 1018ec
- ld a, $0a
- ld hl, wccb4
- ld [hli], a
- ld c, a
-.asm_1018f3
- call Random
- ld [hli], a
- dec c
- jr nz, .asm_1018f3
- ret
-; 1018fb
-
-Function1018fb: ; 1018fb
- ld a, [wcd2f]
- and a
- jr z, .asm_101906
- ld hl, wcc61
- jr .asm_101909
-
-.asm_101906
- ld hl, wccb5
-
-.asm_101909
- ld de, LinkBattleRNs
- ld bc, 10
- call CopyBytes
- ret
-; 101913
-
-Function101913: ; 101913
- ld hl, wcd2a
- set 0, [hl]
- xor a
- ld [wc30d], a
- ld hl, wcd29
- res 4, [hl]
- xor a
- ld [wc305], a
- ld hl, wcd29
- res 7, [hl]
- ld a, $90
- ld [hWY], a
- ld a, [wcd21]
- cp $01
- jr z, .asm_10193f
- cp $02
- jr z, .asm_101945
- ld a, $71
- ld [wMobileCommsJumptableIndex], a
- ret
-
-.asm_10193f
- ld a, $66
- ld [wMobileCommsJumptableIndex], a
- ret
-
-.asm_101945
- ld a, $65
- ld [wMobileCommsJumptableIndex], a
- ret
-; 10194b
-
-Function10194b: ; 10194b
- call DisableSpriteUpdates
- call ClearSprites
- callba Function1021f9
- ld hl, wcd29
- bit 3, [hl]
- jr nz, .asm_101967
- call Function1013c0
- ld a, $71
- ld [wMobileCommsJumptableIndex], a
- ret
-
-.asm_101967
- ld a, $60
- ld [wMobileCommsJumptableIndex], a
- ret
-; 10196d
-
-_SelectMonsForMobileBattle: ; 10196d
- callba BlankScreen
- callba Mobile_CommunicationStandby
- ld hl, wcd29
- set 5, [hl]
- ld hl, wcd2a
- set 6, [hl]
- ld a, $06
- ld [wccb4], a
- ld hl, wPlayerMonSelection
- ld de, wccb5
- ld bc, 3
- call CopyBytes
- ld hl, wcd6c
- ld a, [hli]
- ld [wccb8], a
- ld a, [hli]
- ld [wccb9], a
- ld a, [hl]
- ld [wccba], a
- ld a, [wMobileCommsJumptableIndex]
- inc a
- ld [wMobileCommsJumptableIndex], a
- ret
-; 1019ab
-
-_StartMobileBattle: ; 1019ab
- call CopyOtherPlayersBattleMonSelection
- callba Function100754
- xor a
- ld [wdc5f], a
- ld [wdc60], a
- callba BlankScreen
- call SpeechTextBox
- callba Function100846
- ld c, 120
- call DelayFrames
- callba ClearTileMap
- call .CopyOTDetails
- call StartMobileBattle
- ld a, [wcd2b]
- cp $fc
- jr nz, .asm_1019e6
- xor a
- ld [wcd2b], a
-.asm_1019e6
- ld a, [wMobileCommsJumptableIndex]
- inc a
- ld [wMobileCommsJumptableIndex], a
- ret
-; 1019ee
-
-.CopyOTDetails: ; 1019ee
- ld a, [rSVBK]
- push af
- ld a, 5
- ld [rSVBK], a
-
- ld bc, w5_dc0d
- ld de, w5_dc11
- callba GetMobileOTTrainerClass
-
- pop af
- ld [rSVBK], a
-
- ld a, c
- ld [OtherTrainerClass], a
- ld hl, OTPlayerName
- ld de, OTClassName
- ld bc, NAME_LENGTH
- call CopyBytes
- ld a, [wcd2f]
- and a
- ld a, 2
- jr z, .got_link_player_number
- ld a, 1
-.got_link_player_number
- ld [hLinkPlayerNumber], a
- ret
-; 101a21
-
-StartMobileBattle: ; 101a21
- ; force stereo and fast text speed
- ld hl, Options
- ld a, [hl]
- push af
- and (1 << STEREO)
- or 1 ; 1 frame per character i.e. fast text
- ld [hl], a
- ld a, 1
- ld [wDisableTextAcceleration], a
- callba BattleIntro
- callba DoBattle
- callba ShowLinkBattleParticipantsAfterEnd
- xor a
- ld [wDisableTextAcceleration], a
- ld a, $ff
- ld [hLinkPlayerNumber], a
- pop af
- ld [Options], a
- ret
-; 101a4f
-
-Function101a4f: ; 101a4f
- ld a, 1
- ld [wDisableTextAcceleration], a
- callba DisplayLinkBattleResult
- xor a
- ld [wDisableTextAcceleration], a
- callba CleanUpBattleRAM
- callba LoadPokemonData
- call Function1013c0
- ld a, [wMobileCommsJumptableIndex]
- inc a
- ld [wMobileCommsJumptableIndex], a
- ret
-; 101a75
-
-CopyOtherPlayersBattleMonSelection: ; 101a75
- ld hl, wcc61
- ld de, wOTMonSelection
- ld bc, 3
- call CopyBytes
- ld de, wcc64
- callba Function100772
- callba Function101050
- callba LoadSelectedPartiesForColosseum
- ret
-; 101a97
-
-Function101a97: ; 101a97
- callba Function115d99
- ld hl, wcd29
- set 7, [hl]
- ld c, $02
- call Function10142c
- ld hl, wcd29
- set 6, [hl]
- ld a, [wMobileCommsJumptableIndex]
- inc a
- ld [wMobileCommsJumptableIndex], a
- ret
-; 101ab4
-
-Function101ab4: ; 101ab4
- ld e, $01
- call Function101ee4
- ld hl, wcd29
- set 5, [hl]
- ld a, [wMobileCommsJumptableIndex]
- inc a
- ld [wMobileCommsJumptableIndex], a
- ret
-; 101ac6
-
-Function101ac6: ; 101ac6
- callba Function115d99
- ld hl, wcd29
- set 7, [hl]
- ld c, $02
- call Function10142c
- ld hl, wcd29
- set 6, [hl]
- xor a
- ld [wcd2f], a
- ld de, wdc42
- call Function102068
- ld a, [wMobileCommsJumptableIndex]
- inc a
- ld [wMobileCommsJumptableIndex], a
- ret
-; 101aed
-
-Function101aed: ; 101aed
- callba Function115d99
- ld hl, wcd29
- set 7, [hl]
- ld c, $02
- call Function10142c
- ld hl, wcd29
- set 6, [hl]
- ld a, $01
- ld [wcd2f], a
- ld a, [wMobileCommsJumptableIndex]
- inc a
- ld [wMobileCommsJumptableIndex], a
- ret
-; 101b0f
-
-Function101b0f: ; 101b0f
- ld c, 0
- call Function10142c
- ld e, $03
- call Function101ee4
- ld hl, wcd29
- set 5, [hl]
- ld a, [wMobileCommsJumptableIndex]
- inc a
- ld [wMobileCommsJumptableIndex], a
- ld a, 0
- ld [wcd26], a
- ret
-; 101b2b
-
-Function101b2b: ; 101b2b
- callba Function100579
- ld hl, wcd29
- set 2, [hl]
- ld a, [wcd26]
- bit 7, a
- ret z
- call Function1013dd
- ld a, 0
- ld [wcd26], a
- ld a, [wMenuCursorY]
- cp $01
- jr z, .asm_101b51
- ld a, $02
- ld [wcd2b], a
- ret
-
-.asm_101b51
- ld a, [wMobileCommsJumptableIndex]
- inc a
- ld [wMobileCommsJumptableIndex], a
- ret
-; 101b59
-
-Function101b59: ; 101b59
- ld c, $02
- call Function10142c
- ld e, $02
- call Function101ee4
- ld hl, wcd29
- set 5, [hl]
- ld a, [wMobileCommsJumptableIndex]
- inc a
- ld [wMobileCommsJumptableIndex], a
- ret
-; 101b70
-
-Function101b70: ; 101b70
- ld c, $02
- call Function10142c
- ld e, $04
- call Function101ee4
- ld hl, wcd29
- set 5, [hl]
- call UpdateSprites
- ld a, [wMobileCommsJumptableIndex]
- inc a
- ld [wMobileCommsJumptableIndex], a
- ld a, 0
- ld [wcd26], a
- ret
-; 101b8f
-
-Function101b8f: ; 101b8f
- callba Function1005c3
- ld hl, wcd29
- set 2, [hl]
- ld a, [wcd26]
- bit 7, a
- ret z
- call Function1013dd
- ld a, 0
- ld [wcd26], a
- ld a, [wMenuCursorY]
- cp $01
- jr z, .asm_101bbc
- ld a, $01
- ld [wcd2f], a
- ld a, [wMobileCommsJumptableIndex]
- inc a
- ld [wMobileCommsJumptableIndex], a
- ret
-
-.asm_101bbc
- xor a
- ld [wcd2f], a
- ld a, [wMobileCommsJumptableIndex]
- inc a
- ld [wMobileCommsJumptableIndex], a
- ret
-; 101bc8
-
-Function101bc8: ; 101bc8
- ld c, $02
- call Function10142c
- ld e, $08
- call Function101ee4
- call Function102048
- call Function1013dd
- ld a, 0
- ld [wcd26], a
- ld a, [wMobileCommsJumptableIndex]
- inc a
- ld [wMobileCommsJumptableIndex], a
- ret
-; 101be5
-
-Function101be5: ; 101be5
- callba Function100579
- ld hl, wcd29
- set 2, [hl]
- ld a, [wcd26]
- bit 7, a
- ret z
- call Function1013dd
- ld a, 0
- ld [wcd26], a
- ld a, [wMenuCursorY]
- cp $01
- jr nz, .asm_101c0b
- ld a, $2a
- ld [wMobileCommsJumptableIndex], a
- ret
-
-.asm_101c0b
- ld a, $02
- ld [wcd2b], a
- ret
-; 101c11
-
-Function101c11: ; 101c11
- ld a, $01
- ld [wdc5f], a
- ld e, $09
- call Function101ee4
- call Function102048
- ld hl, wcd29
- set 5, [hl]
- ld a, [wMobileCommsJumptableIndex]
- inc a
- ld [wMobileCommsJumptableIndex], a
- ret
-; 101c2b
-
-Function101c2b: ; 101c2b
- ld a, $02
- ld [wdc5f], a
- ld e, $07
- call Function101ee4
- ld hl, wcd29
- set 5, [hl]
- ld a, [wMobileCommsJumptableIndex]
- inc a
- ld [wMobileCommsJumptableIndex], a
- ret
-; 101c42
-
-Function101c42: ; 101c42
- ld hl, wcd2a
- set 1, [hl]
- call Function100665
- ld a, $47
- ld [wMobileCommsJumptableIndex], a
- ret
-; 101c50
-
-Function101c50: ; 101c50
- ld e, $0a
- call Function101ee4
- ld hl, wcd29
- set 2, [hl]
- ld a, [wMobileCommsJumptableIndex]
- inc a
- ld [wMobileCommsJumptableIndex], a
- ret
-; 101c62
-
-Function101c62: ; 101c62
- callba Function115d99
- ld hl, wcd29
- set 7, [hl]
- ld c, $01
- call Function10142c
- xor a
- ld [wc30d], a
- ld hl, wcd29
- res 4, [hl]
- ld e, $0b
- call Function101ee4
- ld hl, wcd29
- set 5, [hl]
- ld a, [wMobileCommsJumptableIndex]
- inc a
- ld [wMobileCommsJumptableIndex], a
- ld a, 0
- ld [wcd26], a
- ret
-; 101c92
-
-Function101c92: ; 101c92
- callba Function100675
- ld a, [wMobileCommsJumptableIndex]
- inc a
- ld [wMobileCommsJumptableIndex], a
- ret
-; 101ca0
-
-Function101ca0: ; 101ca0
- ld c, $02
- call Function10142c
- ld e, $0c
- call Function101ee4
- ld hl, wcd29
- set 5, [hl]
- ld a, [wMobileCommsJumptableIndex]
- inc a
- ld [wMobileCommsJumptableIndex], a
- ld a, 0
- ld [wcd26], a
- ret
-; 101cbc
-
-Function101cbc: ; 101cbc
- ld a, $01
- ld [wcd2b], a
- ret
-; 101cc2
-
-Function101cc2: ; 101cc2 ; unreferenced
- ld a, $02
- ld [wcd2b], a
- ret
-; 101cc8
-
-Function101cc8: ; 101cc8
- ld a, $01
- ld [wc314], a
- ld a, $01
- ld [wc30d], a
- ld hl, wcd29
- set 4, [hl]
- ld a, [wMobileCommsJumptableIndex]
- inc a
- ld [wMobileCommsJumptableIndex], a
- ret
-; 101cdf
-
-Function101cdf: ; 101cdf
- ld a, $06
- ld [wc314], a
- ld a, $01
- ld [wc30d], a
- ld hl, wcd29
- set 4, [hl]
- ld a, [wMobileCommsJumptableIndex]
- inc a
- ld [wMobileCommsJumptableIndex], a
- ret
-; 101cf6
-
-Function101cf6: ; 101cf6
- ld a, $0b
- ld [wc314 + 1], a
- ld a, [wMobileCommsJumptableIndex]
- inc a
- ld [wMobileCommsJumptableIndex], a
- ret
-; 101d03
-
-Function101d03: ; 101d03
- ld a, $0e
- ld [wc314 + 1], a
- ld a, [wMobileCommsJumptableIndex]
- inc a
- ld [wMobileCommsJumptableIndex], a
- ret
-; 101d10
-
-Function101d10: ; 101d10
- ld c, $01
- call Function10142c
- ld a, [wMobileCommsJumptableIndex]
- inc a
- ld [wMobileCommsJumptableIndex], a
- jr Function101d2a
-
-Function101d1e: ; 101d1e
- ld c, $03
- call Function10142c
- ld a, [wMobileCommsJumptableIndex]
- inc a
- ld [wMobileCommsJumptableIndex], a
-
-Function101d2a: ; 101d2a
- call Function101418
- ret c
- ld hl, wcd29
- set 6, [hl]
- ld a, [wcd26]
- ld hl, Jumptable_101d4d
- rst JumpTable
- ld a, [wcd26]
- bit 7, a
- ret z
- ld a, 0
- ld [wcd26], a
- ld a, [wMobileCommsJumptableIndex]
- inc a
- ld [wMobileCommsJumptableIndex], a
- ret
-; 101d4d
-
-Jumptable_101d4d: ; 101d4d
- dw Function101d51
- dw Function101d5d
-; 101d51
-
-Function101d51: ; 101d51
- ld a, $3c
- ld [wcd42], a
- ld a, [wcd26]
- inc a
- ld [wcd26], a
-
-Function101d5d: ; 101d5d
- ld hl, wcd42
- dec [hl]
- ret nz
- ld a, [wcd26]
- set 7, a
- ld [wcd26], a
- ret
-; 101d6b
-
-Function101d6b: ; 101d6b
- ld a, [wc30d]
- and a
- ret nz
- ld hl, wcd29
- res 4, [hl]
- ld a, $64
- ld [wMobileCommsJumptableIndex], a
- ret
-; 101d7b
-
-Function101d7b: ; 101d7b
- callba Function10138b
- ld b, 0
- ld hl, Unknown_101d8d
- add hl, bc
- ld c, [hl]
- ld a, c
- ld [wMobileCommsJumptableIndex], a
- ret
-; 101d8d
-
-Unknown_101d8d: ; 101d8d
- db $15, $15, $1f, $1f, $0c, $12, $3a, $3a
-; 101d95
-
-Function101d95: ; 101d95
- call Function101ee2
- call LoadStandardMenuDataHeader
- ld e, $0e
- call Function101ee4
- ld hl, wcd29
- set 5, [hl]
- ld a, [wMobileCommsJumptableIndex]
- inc a
- ld [wMobileCommsJumptableIndex], a
- ld a, 0
- ld [wcd26], a
- ret
-; 101db2
-
-Function101db2: ; 101db2
- callba Function103302
- call ExitMenu
- ld hl, wcd29
- set 5, [hl]
- jr c, .asm_101dca
- ld a, [wMobileCommsJumptableIndex]
- inc a
- ld [wMobileCommsJumptableIndex], a
- ret
-
-.asm_101dca
- ld a, $02
- ld [wcd2b], a
- ret
-; 101dd0
-
-Function101dd0: ; 101dd0
- ld hl, wdc41
- bit 1, [hl]
- jr nz, .asm_101ddd
- ld a, $19
- ld [wMobileCommsJumptableIndex], a
- ret
-
-.asm_101ddd
- ld a, $1b
- ld [wMobileCommsJumptableIndex], a
- ret
-; 101de3
-
-Function101de3: ; 101de3
- call Function101ecc
- call Function101ead
- jr c, .asm_101df3
- ld a, [wMobileCommsJumptableIndex]
- inc a
- ld [wMobileCommsJumptableIndex], a
- ret
-
-.asm_101df3
- call Function101e98
- jr c, .asm_101e00
- ld a, [wMobileCommsJumptableIndex]
- inc a
- ld [wMobileCommsJumptableIndex], a
- ret
-
-.asm_101e00
- call Function101ed3
- ld a, $02
- ld [wcd2b], a
- ret
-; 101e09
-
-Function101e09: ; 101e09
- call Function101ead
- jr c, .asm_101e16
- ld a, [wMobileCommsJumptableIndex]
- inc a
- ld [wMobileCommsJumptableIndex], a
- ret
-
-.asm_101e16
- call Function101ecc
- call Function101e98
- push af
- call Function101ed3
- pop af
- jr c, .asm_101e2b
- ld a, [wMobileCommsJumptableIndex]
- inc a
- ld [wMobileCommsJumptableIndex], a
- ret
-
-.asm_101e2b
- ld a, $02
- ld [wcd2b], a
- ret
-; 101e31
-
-Function101e31: ; 101e31
- ld a, $3a
- ld [wMobileCommsJumptableIndex], a
- jp Function101c2b
-; 101e39
-
-Function101e39: ; 101e39
- call Function1020bf
- push af
- call Function101ed3
- pop af
- jr c, .asm_101e49
- ld a, $2a
- ld [wMobileCommsJumptableIndex], a
- ret
-
-.asm_101e49
- ld a, $02
- ld [wcd2b], a
- ret
-; 101e4f
-
-Function101e4f: ; 101e4f
- ld e, $06
- call Function101ee4
- call Function1013d6
- ld a, [wMobileCommsJumptableIndex]
- inc a
- ld [wMobileCommsJumptableIndex], a
- ld a, 0
- ld [wcd26], a
- ret
-; 101e64
-
-Function101e64: ; 101e64
- call Function101ecc
- call Function1020a8
- push af
- call Function101ed3
- pop af
- jr c, .asm_101e77
- ld a, $24
- ld [wMobileCommsJumptableIndex], a
- ret
-
-.asm_101e77
- ld hl, wcd29
- set 5, [hl]
- ld a, $02
- ld [wcd2b], a
- ret
-; 101e82
-
-Function101e82: ; 101e82 ; unreferenced
- call Function101ecc
- ld a, [wMobileCommsJumptableIndex]
- inc a
- ld [wMobileCommsJumptableIndex], a
- ret
-; 101e8d
-
-Function101e8d: ; 101e8d ; unreferenced
- call Function101ed3
- ld a, [wMobileCommsJumptableIndex]
- inc a
- ld [wMobileCommsJumptableIndex], a
- ret
-; 101e98
-
-Function101e98: ; 101e98
- call ClearSprites
- callba Function8adb3
- ret c
- ld hl, GameTimerPause
- set 7, [hl]
- ld hl, wdc41
- set 4, [hl]
- ret
-; 101ead
-
-Function101ead: ; 101ead
- ld hl, GameTimerPause
- bit 7, [hl]
- jr nz, .asm_101ec8
- ld hl, wdc41
- bit 2, [hl]
- jr z, .asm_101eca
- ld a, [wcd2f]
- and a
- jr nz, .asm_101ec8
- ld hl, wdc41
- bit 1, [hl]
- jr z, .asm_101eca
-
-.asm_101ec8
- xor a
- ret
-
-.asm_101eca
- scf
- ret
-; 101ecc
-
-Function101ecc: ; 101ecc
- call Function101ee2
- call FadeToMenu
- ret
-; 101ed3
-
-Function101ed3: ; 101ed3
- call Function1013aa
- callba Function115d99
- ld hl, wcd29
- set 7, [hl]
- ret
-; 101ee2
-
-Function101ee2: ; 101ee2
- ld e, 0
-
-Function101ee4: ; 101ee4
- ld d, 0
- ld hl, Unknown_101ef5
- add hl, de
- add hl, de
- ld a, [hli]
- ld d, [hl]
- ld e, a
- callba Function100504
- ret
-; 101ef5
-
-Unknown_101ef5: ; 101ef5
- dw String_101f13
- dw String_101f14
- dw String_101f32
- dw String_101f4f
- dw String_101f69
- dw String_101f81
- dw String_101f93
- dw String_101faa
- dw String_101fc5
- dw String_101fd2
- dw String_101fe1
- dw String_101fef
- dw String_102000
- dw String_10200c
- dw String_102014
-
-String_101f13: ; 101f13
- db "@"
-
-String_101f14: ; 101f14
- db "モバイルアダプタを つかって"
- next "おともだちと つうしんします@"
-
-String_101f32: ; 101f32
- db "でんわを かけるひとには"
- next "つうわりょうきんが かかります@"
-
-String_101f4f: ; 101f4f
- db "モバイルアダプタの じゅんびは"
- next "できて いますか?@"
-
-String_101f69: ; 101f69
- db "あなたが おともだちに"
- next "でんわを かけますか?@"
-
-String_101f81: ; 101f81
- db "めいしフ,ルダーを"
- next "つかいますか?@"
-
-String_101f93: ; 101f93
- db "でんわばんごうを にゅうりょく"
- next "してください@"
-
-String_101faa: ; 101faa
- db "それでは おともだちからの"
- next "でんわを おまちします…@"
-
-String_101fc5: ; 101fc5
- next "に でんわを かけます@"
-
-String_101fd2: ; 101fd2
- next "に でんわを かけています@"
-
-String_101fe1: ; 101fe1
- db "でんわが つながりました!@"
-
-String_101fef: ; 101fef
- db "つうわを"
- next "しゅうりょう します…@"
-
-String_102000: ; 102000
- db "つうしん しゅうりょう@"
-
-String_10200c: ; 10200c
- db "つうわ じかん@"
-
-String_102014: ; 102014
- db "それでは つうしんの"
- next "せっていを してください@"
-; 10202c
-
-Function10202c: ; 10202c
- callba Function115d99
- ld hl, wcd29
- set 7, [hl]
- ld c, $02
- call Function10142c
- ld e, $0d
- call Function101ee4
- hlcoord 4, 4
- call Function100681
- ret
-; 102048
-
-Function102048: ; 102048
- call Function10204c
- ret
-; 10204c
-
-Function10204c: ; 10204c
- hlcoord 3, 2
- ld c, $10
- ld de, wcd53
-.asm_102054
- ld a, [de]
- inc de
- and a
- jr z, .asm_102067
- sub $30
- jr c, .asm_102067
- cp $0a
- jr nc, .asm_102067
- add $f6
- ld [hli], a
- dec c
- jr nz, .asm_102054
-
-.asm_102067
- ret
-; 102068
-
-Function102068: ; 102068
- ld hl, wcd53
- ld c, $08
-.asm_10206d
- ld a, [de]
- call Function102080
- jr c, .asm_10207f
- ld a, [de]
- swap a
- call Function102080
- jr c, .asm_10207f
- inc de
- dec c
- jr nz, .asm_10206d
-
-.asm_10207f
- ret
-; 102080
-
-Function102080: ; 102080
- and $0f
- cp $0f
- jr z, .asm_10208a
- add $30
- ld [hli], a
- ret
-
-.asm_10208a
- ld [hl], 0
- scf
- ret
-; 10208e
-
-Function10208e: ; 10208e
- push de
- ld h, d
- ld l, e
- ld de, wdc42
- ld bc, 8
- call CopyBytes
- pop de
- ret
-; 10209c
-
-Function10209c: ; 10209c
- ld a, $ff
- ld hl, wdc42
- ld bc, 8
- call ByteFill
- ret
-; 1020a8
-
-Function1020a8: ; 1020a8
- call Function10209c
- ld c, $01
- ld de, wdc42
- callba Function17a68f
- ret c
- call Function10208e
- call Function102068
- xor a
- ret
-; 1020bf
-
-Function1020bf: ; 1020bf
- call ClearSprites
- callba Function8aba9
- ld a, c
- and a
- jr z, .asm_1020e8
- dec a
- ld hl, $a04c
- ld bc, $25
- call AddNTimes
- ld d, h
- ld e, l
- ld a, $04
- call GetSRAMBank
- call Function10208e
- call Function102068
- call CloseSRAM
- xor a
- ret
-
-.asm_1020e8
- scf
- ret
-; 1020ea
-
-Function1020ea: ; 1020ea
- ld hl, wdc41
- bit 4, [hl]
- jr z, .quit
- ld hl, wdc41
- bit 2, [hl]
- jr nz, .quit
- call Function10218d
- ld hl, wc608
- bit 4, [hl]
- jr z, .quit
- ld hl, wc608
- bit 2, [hl]
- jr nz, .quit
- call Function102112
- jr z, .quit
- and a
- ret
-
-.quit
- scf
- ret
-; 102112
-
-Function102112: ; 102112
- ld a, $04
- call GetSRAMBank
- ld hl, $a041
- ld c, 40
-.outer_loop
- push hl
- ld de, $c60f
- ld b, 31
-.inner_loop
- ld a, [de]
- cp [hl]
- jr nz, .not_matching
- inc de
- inc hl
- dec b
- jr nz, .inner_loop
- pop hl
- xor a
- jr .done
-
-.not_matching
- pop hl
- ld de, 37
- add hl, de
- dec c
- jr nz, .outer_loop
- ld a, $01
- and a
- jr .done ; useless jr
-
-.done
- push af
- call CloseSRAM
- pop af
- ret
-; 102142
-
-Function102142: ; 102142
- call Function10218d
- call Function102180
- ld hl, UnknownText_0x1021d1
- call MenuTextBox
- ld de, SFX_LEVEL_UP
- call PlaySFX
- call JoyWaitAorB
- call ExitMenu
- call Function10219f
- ld hl, UnknownText_0x1021d6
- call MenuTextBox
- call YesNoBox
- call ExitMenu
- jr c, .asm_10217c
- call Function1021b8
- jr c, .asm_10217c
- call Function10218d
- call Function102180
- ld hl, UnknownText_0x1021db
- call PrintText
-
-.asm_10217c
- call Function1013d6
- ret
-; 102180
-
-Function102180: ; 102180
- ld hl, wc608 + 1
- ld de, StringBuffer2
- ld bc, 11
- call CopyBytes
- ret
-; 10218d
-
-Function10218d: ; 10218d
- ld hl, w5_dc00
- ld de, wc608
- ld bc, $26
- ld a, $05
- call FarCopyWRAM
- ld de, wc608 + 1 ; useless
- ret
-; 10219f
-
-Function10219f: ; 10219f
- call FadeToMenu
- call Function10218d
- ld de, wc608 + 1
- callba Function8ac4e
- call JoyWaitAorB
- call PlayClickSFX
- call Function1013aa
- ret
-; 1021b8
-
-Function1021b8: ; 1021b8
- call FadeToMenu
- call Function10218d
- ld de, wPlayerMoveStruct
- callba Function8ac70
- ld a, c
- ld [StringBuffer1], a
- push af
- call Function1013aa
- pop af
- ret
-; 1021d1
-
-UnknownText_0x1021d1: ; 1021d1
- text_jump UnknownText_0x1bd19a
- db "@"
-
-UnknownText_0x1021d6: ; 1021d1
- text_jump UnknownText_0x1bd1ba
- db "@"
-
-UnknownText_0x1021db: ; 1021d1
- text_jump UnknownText_0x1bd1dd
- db "@"
-; 1021e0
-
-Function1021e0: ; 1021e0
- call MenuTextBox
- call JoyWaitAorB
- call ExitMenu
- ret
-; 1021ea
-
-UnknownText_0x1021ea: ; 1021ea
- text_jump UnknownText_0x1bd201
- db "@"
-
-UnknownText_0x1021ef:
- text_jump UnknownText_0x1bd211
- db "@"
-
-UnknownText_0x1021f4:
- text_jump UnknownText_0x1bd223
- db "@"
-; 1021f9
-
-Function1021f9: ; 1021f9
- call Function102233
- ld a, $0 ; Function10234b
- ld [wcd49], a
- ld hl, wcd29
- bit 3, [hl]
- res 3, [hl]
- jr z, .asm_10220f
- ld a, $1 ; Function102361
- ld [wcd49], a
-
-.asm_10220f
- call Function1022ca
- ld a, [wcd49]
- ld hl, Jumptable_1022f5
- rst JumpTable
- call Function102241
- call Function1022d0
- jr c, .asm_102231
- ld a, [wcd49]
- bit 7, a
- jr z, .asm_10220f
- xor a
- ld hl, wcd29
- bit 3, [hl]
- ret z
- scf
- ret
-
-.asm_102231
- xor a
- ret
-; 102233
-
-Function102233: ; 102233
- ld hl, wcd49
- ld bc, 10
- xor a
- call ByteFill
- call Function10304f
- ret
-; 102241
-
-Function102241: ; 102241
- call Function10226a
- call Function102274
- call Function10224b
- ret
-; 10224b
-
-Function10224b: ; 10224b
- ld hl, wcd4b
- bit 1, [hl]
- jr nz, .asm_10225e
- bit 2, [hl]
- jr nz, .asm_10225e
- call DelayFrame
- call DelayFrame
- xor a
- ret
-
-.asm_10225e
- res 1, [hl]
- res 2, [hl]
- callba Mobile_ReloadMapPart
- scf
- ret
-; 10226a
-
-Function10226a: ; 10226a
- ld hl, wcd4b
- bit 0, [hl]
- ret z
- call Function10305d
- ret
-; 102274
-
-Function102274: ; 102274
- ld hl, wcd4b
- bit 3, [hl]
- ret z
- res 3, [hl]
- ld de, 8
- call PlaySFX
- ret
-; 102283
-
-Function102283: ; 102283
- ld a, $01
- ld [AttrMapEnd], a
- ld hl, wcd4b
- set 0, [hl]
- ret
-; 10228e
-
-Function10228e: ; 10228e
- xor a
- ld [AttrMapEnd], a
- ld hl, wcd4b
- res 0, [hl]
- ret
-; 102298
-
-Function102298: ; 102298
- ld a, e
- cp $02
- ret nz
- ld hl, wcd4b
- bit 6, [hl]
- jr z, .asm_1022b6
- ld hl, wcd4b
- bit 7, [hl]
- ld hl, wcd4b
- set 7, [hl]
- ret nz
- ld de, SFX_ELEVATOR_END
- call PlaySFX
- jr .asm_1022c1
-
-.asm_1022b6
- ld hl, wcd4b
- bit 7, [hl]
- ld hl, wcd4b
- res 7, [hl]
- ret z
-
-.asm_1022c1
- call Function10304f
- ld a, $01
- ld [AttrMapEnd], a
- ret
-; 1022ca
-
-Function1022ca: ; 1022ca
- ld a, 30
- ld [OverworldDelay], a
- ret
-; 1022d0
-
-Function1022d0: ; 1022d0
- callba Function10032e
- ld a, [wcd2b]
- and a
- jr nz, .asm_1022f3
- call Function102298
- ld a, [OverworldDelay]
- ld c, a
- ld a, 30
- sub c
- ld c, a
- ld b, $03
- callba AdvanceMobileInactivityTimerAndCheckExpired
- jr c, .asm_1022f3
- xor a
- ret
-
-.asm_1022f3
- scf
- ret
-; 1022f5
-
-Jumptable_1022f5: ; 1022f5
- dw Function10234b ; 00
- dw Function102361 ; 01
- dw Function10236e ; 02
- dw Function102387 ; 03
- dw Function1023a1 ; 04
- dw Function1025c7 ; 05
- dw Function1025dc ; 06
- dw Function1024f6 ; 07
- dw Function10250c ; 08
- dw Function1024a8 ; 09
- dw Function102591 ; 0a
- dw Function1024a8 ; 0b
- dw Function1025b0 ; 0c
- dw Function1025bd ; 0d
- dw Function102814 ; 0e
- dw Function10283c ; 0f
- dw Function102862 ; 10
- dw Function10286f ; 11
- dw Function1024a8 ; 12
- dw Function1028a5 ; 13
- dw Function1028ab ; 14
- dw Function1023b5 ; 15
- dw Function1023c6 ; 16
- dw Function1024af ; 17
- dw Function102416 ; 18
- dw Function102423 ; 19
- dw Function10244b ; 1a
- dw Function1024af ; 1b
- dw Function10246a ; 1c
- dw Function102652 ; 1d
- dw Function10266b ; 1e
- dw Function1025e9 ; 1f
- dw Function1025ff ; 20
- dw Function102738 ; 21
- dw Function102754 ; 22
- dw Function1026b7 ; 23
- dw Function1026c8 ; 24
- dw Function1028bf ; 25
- dw Function1028c6 ; 26
- dw Function1028d3 ; 27
- dw Function1028da ; 28
- dw Function1024a8 ; 29
- dw Function10248d ; 2a
-; 10234b
-
-Function10234b: ; 10234b
- call Function102d9a
- call Function102dd3
- call Function102dec
- ld hl, wcd4b
- set 1, [hl]
- ld a, [wcd49]
- inc a
- ld [wcd49], a
- ret
-; 102361
-
-Function102361: ; 102361
- ld a, $cc
- call Function1028e8
- ld a, [wcd49]
- inc a
- ld [wcd49], a
- ret
-; 10236e
-
-Function10236e: ; 10236e
- call Function1028fc
- ret nc
- ld a, [wcd51]
- cp $cc
- jr z, .asm_10237f
- ld a, $f2
- ld [wcd2b], a
- ret
-
-.asm_10237f
- ld a, [wcd49]
- inc a
- ld [wcd49], a
- ret
-; 102387
-
-Function102387: ; 102387
- ld hl, wcd4b
- set 6, [hl]
- xor a
- ld [wdc5f], a
- ld de, MUSIC_ROUTE_30
- call PlayMusic
- call Function102d9a
- call Function102dd3
- ld a, $01
- ld [wMenuCursorY], a
-
-Function1023a1: ; 1023a1
- call Function102283
- call Function102db7
- call Function102dec
- ld hl, wcd4b
- set 1, [hl]
- ld a, $1d
- ld [wcd49], a
- ret
-; 1023b5
-
-Function1023b5: ; 1023b5
- call Function10228e
- call Function102a3b
- call Function102b12
- ld a, [wcd49]
- inc a
- ld [wcd49], a
- ret
-; 1023c6
-
-Function1023c6: ; 1023c6
- call Function102c48
- call Function102c87
- ld a, [wcd4c]
- dec a
- ld [CurPartyMon], a
- xor a
- ld [wPokemonWithdrawDepositParameter], a
- callba RemoveMonFromPartyOrBox
- ld hl, PartyCount
- inc [hl]
- ld a, [hli]
- ld c, a
- ld b, 0
- add hl, bc
- ld [hl], $ff
- ld a, [PartyCount]
- ld [wcd4c], a
- call Function102c07
- call Function102d48
- call Function102b32
- call Function102f50
- ld hl, wcd4b
- set 1, [hl]
- ld a, $14
- ld [wcd4e], a
- ld a, 0
- ld [wcd4f], a
- ld a, 0
- ld [wcd4a], a
- ld a, [wcd49]
- inc a
- ld [wcd49], a
- ret
-; 102416
-
-Function102416: ; 102416
- ld a, $aa
- call Function1028e8
- ld a, [wcd49]
- inc a
- ld [wcd49], a
- ret
-; 102423
-
-Function102423: ; 102423
- call Function102921
- ret nc
- callba SaveAfterLinkTrade
- callba TrainerRankings_Trades
- callba BackupMobileEventIndex
- ld hl, wcd4b
- set 1, [hl]
- ld a, 0
- ld [wcd4a], a
- ld a, [wcd49]
- inc a
- ld [wcd49], a
- ret
-; 10244b
-
-Function10244b: ; 10244b
- call Function102f32
- ld hl, wcd4b
- set 1, [hl]
- ld a, $19
- ld [wcd4e], a
- ld a, 0
- ld [wcd4f], a
- ld a, 0
- ld [wcd4a], a
- ld a, [wcd49]
- inc a
- ld [wcd49], a
- ret
-; 10246a
-
-Function10246a: ; 10246a
- call Function102d9a
- ld hl, wcd29
- set 3, [hl]
- call Function102e07
- ld hl, wcd4b
- set 1, [hl]
- ld a, $2a
- ld [wcd49], a
- ret
-; 102480
-
-Function102480: ; 102480
- ld c, $32
- call DelayFrames
- ld a, [wcd49]
- inc a
- ld [wcd49], a
- ret
-; 10248d
-
-Function10248d: ; 10248d
- ld a, [wcd49]
- set 7, a
- ld [wcd49], a
- ret
-; 102496
-
-Function102496: ; 102496
- ld hl, wcd4e
- dec [hl]
- ret nz
- ld a, 0
- ld [wcd4a], a
- ld a, [wcd49]
- inc a
- ld [wcd49], a
- ret
-; 1024a8
-
-Function1024a8: ; 1024a8
- callba Function1009f3
- ret c
-
-Function1024af: ; 1024af
- call GetJoypad
- ld a, [wcd4a]
- ld hl, Jumptable_1024ba
- rst JumpTable
- ret
-; 1024ba
-
-Jumptable_1024ba: ; 1024ba
- dw Function1024c0
- dw Function1024cb
- dw Function1024de
-; 1024c0
-
-Function1024c0: ; 1024c0
- ld hl, wcd4e
- inc [hl]
- ld a, [wcd4a]
- inc a
- ld [wcd4a], a
-
-Function1024cb: ; 1024cb
- ld hl, wcd4e
- dec [hl]
- ret nz
- ld a, [wcd4f]
- inc a
- ld [wcd4e], a
- ld a, [wcd4a]
- inc a
- ld [wcd4a], a
-
-Function1024de: ; 1024de
- ld hl, wcd4e
- dec [hl]
- jr z, .asm_1024e9
- ld a, [hJoyPressed]
- and A_BUTTON | B_BUTTON
- ret z
-
-.asm_1024e9
- ld a, 0
- ld [wcd4a], a
- ld a, [wcd49]
- inc a
- ld [wcd49], a
- ret
-; 1024f6
-
-Function1024f6: ; 1024f6
- call PlaceHollowCursor
- ld hl, wcd4b
- set 1, [hl]
- ld a, [wcd4c]
- call Function1028e8
- ld a, [wcd49]
- inc a
- ld [wcd49], a
- ret
-; 10250c
-
-Function10250c: ; 10250c
- call Function1028fc
- ret nc
- ld a, [wcd51]
- cp $0f
- jr z, .asm_10254b
- and a
- jr z, .asm_102572
- cp $aa
- jr z, .asm_102572
- cp $07
- jr nc, .asm_102572
- ld [wcd4d], a
- dec a
- ld [wd003], a
- ld a, [wcd4c]
- dec a
- ld [wd002], a
- call Function102b9c
- call Function102bdc
- jr c, .asm_10256d
- callba Functionfb5dd
- jr c, .asm_102568
- ld hl, wcd4b
- set 1, [hl]
- ld a, $0e
- ld [wcd49], a
- ret
-
-.asm_10254b
- call Function103021
- ld hl, wcd4b
- set 1, [hl]
- ld a, 0
- ld [wcd4a], a
- ld a, $1e
- ld [wcd4e], a
- ld a, $1e
- ld [wcd4f], a
- ld a, $29
- ld [wcd49], a
- ret
-
-.asm_102568
- call Function102ff5
- jr .asm_102577
-
-.asm_10256d
- call Function102f85
- jr .asm_102577
-
-.asm_102572
- call Function102fce
- jr .asm_102577
-
-.asm_102577
- ld hl, wcd4b
- set 1, [hl]
- ld a, 0
- ld [wcd4a], a
- ld a, $1e
- ld [wcd4e], a
- ld a, $3c
- ld [wcd4f], a
- ld a, $09
- ld [wcd49], a
- ret
-; 102591
-
-Function102591: ; 102591
- call Function102ee7
- ld hl, wcd4b
- set 1, [hl]
- ld a, 0
- ld [wcd4a], a
- ld a, $1e
- ld [wcd4e], a
- ld a, $3c
- ld [wcd4f], a
- ld a, [wcd49]
- inc a
- ld [wcd49], a
- ret
-; 1025b0
-
-Function1025b0: ; 1025b0
- ld a, $09
- call Function1028e8
- ld a, [wcd49]
- inc a
- ld [wcd49], a
- ret
-; 1025bd
-
-Function1025bd: ; 1025bd
- call Function1028fc
- ret nc
- ld a, $04
- ld [wcd49], a
- ret
-; 1025c7
-
-Function1025c7: ; 1025c7
- call Function102f6d
- ld hl, wcd4b
- set 1, [hl]
- ld a, $0f
- call Function1028e8
- ld a, [wcd49]
- inc a
- ld [wcd49], a
- ret
-; 1025dc
-
-Function1025dc: ; 1025dc
- call Function1028fc
- ret nc
- ld a, [wcd49]
- set 7, a
- ld [wcd49], a
- ret
-; 1025e9
-
-Function1025e9: ; 1025e9
- nop
- ld hl, wcd4b
- set 6, [hl]
- call Function102b4e
- ld hl, wcd4b
- set 1, [hl]
- ld a, [wcd49]
- inc a
- ld [wcd49], a
- ret
-; 1025ff
-
-Function1025ff: ; 1025ff
- ld hl, wcd4b
- set 2, [hl]
- callba Function1009f3
- ret c
- callba MobileMenuJoypad
- ld a, [wMenuJoypadFilter]
- and c
- ret z
- bit A_BUTTON_F, c
- jr nz, .a_button
- bit D_UP_F, c
- jr nz, .d_up
- bit D_DOWN_F, c
- jr nz, .d_down
- ret
-
-.a_button
- ld hl, wcd4b
- set 3, [hl]
- ld a, $27 ; Function1028d3
- ld [wcd49], a
- ret
-
-.d_up
- ld a, [wMenuCursorY]
- ld b, a
- ld a, [OTPartyCount]
- cp b
- ret nz
- call HideCursor
- ld a, [PartyCount]
- ld [wMenuCursorY], a
- ld a, $1d ; Function102652
- ld [wcd49], a
- ret
-
-.d_down
- ld a, [wMenuCursorY]
- cp $01
- ret nz
- ld a, $23 ; Function1026b7
- ld [wcd49], a
- ret
-; 102652
-
-Function102652: ; 102652
- nop
- ld hl, wcd4b
- set 6, [hl]
- nop
- call Function102b7b
- nop
- ld hl, wcd4b
- set 1, [hl]
- nop
- ld a, [wcd49]
- inc a
- ld [wcd49], a
- ret
-; 10266b
-
-Function10266b: ; 10266b
- ld hl, wcd4b
- set 2, [hl]
- callba Function1009f3
- ret c
- callba MobileMenuJoypad
- ld a, [wMenuJoypadFilter]
- and c
- ret z
- bit A_BUTTON_F, c
- jr nz, .a_button
- bit D_DOWN_F, c
- jr nz, .d_down
- bit D_UP_F, c
- jr nz, .d_up
- ret
-
-.a_button
- ld hl, wcd4b
- set 3, [hl]
- ld a, $21 ; Function102738
- ld [wcd49], a
- ret
-
-.d_down
- ld a, [wMenuCursorY]
- dec a
- ret nz
- call HideCursor
- ld a, $1f ; Function1025e9
- ld [wcd49], a
- ret
-
-.d_up
- ld a, [wMenuCursorY]
- ld b, a
- ld a, [PartyCount]
- cp b
- ret nz
- ld a, $23 ; Function1026b7
- ld [wcd49], a
- ret
-; 1026b7
-
-Function1026b7: ; 1026b7
- ld hl, wcd4b
- set 6, [hl]
- ld a, [wcd49]
- inc a
- ld [wcd49], a
- ld a, 0
- ld [wcd4a], a
-
-Function1026c8: ; 1026c8
- call GetJoypad
- callba Function1009f3
- ret c
- ld a, [wcd4a]
- ld hl, Jumptable_1026da
- rst JumpTable
- ret
-; 1026da
-
-Jumptable_1026da: ; 1026da
- dw Function1026de
- dw Function1026f3
-; 1026de
-
-Function1026de: ; 1026de
- call HideCursor
- hlcoord 9, 17
- ld [hl], $ed
- ld a, [wcd4a]
- inc a
- ld [wcd4a], a
- ld hl, wcd4b
- set 1, [hl]
- ret
-; 1026f3
-
-Function1026f3: ; 1026f3
- ld a, [hJoyPressed]
- bit A_BUTTON_F, a
- jr nz, .asm_102723
- bit D_UP_F, a
- jr nz, .asm_102712
- bit D_DOWN_F, a
- jr nz, .asm_102702
- ret
-
-.asm_102702
- hlcoord 9, 17
- ld [hl], " "
- ld a, $01
- ld [wMenuCursorY], a
- ld a, $1d ; Function102652
- ld [wcd49], a
- ret
-
-.asm_102712
- hlcoord 9, 17
- ld [hl], " "
- ld a, [OTPartyCount]
- ld [wMenuCursorY], a
- ld a, $1f ; Function1025e9
- ld [wcd49], a
- ret
-
-.asm_102723
- hlcoord 9, 17
- ld [hl], "▷"
- ld hl, wcd4b
- set 3, [hl]
- ld hl, wcd4b
- set 2, [hl]
- ld a, $5 ; Function1025c7
- ld [wcd49], a
- ret
-; 102738
-
-Function102738: ; 102738
- ld hl, wcd4b
- set 6, [hl]
- call PlaceHollowCursor
- call Function1027eb
- ld hl, wcd4b
- set 1, [hl]
- ld a, [wcd49]
- inc a
- ld [wcd49], a
- ld a, 0
- ld [wcd4a], a
-
-Function102754: ; 102754
- call GetJoypad
- callba Function1009f3
- ret c
- ld a, [wcd4a]
- ld hl, Jumptable_102766
- rst JumpTable
- ret
-; 102766
-
-Jumptable_102766: ; 102766
- dw Function102770
- dw Function102775
- dw Function10278c
- dw Function1027a0
- dw Function1027b7
-; 102770
-
-Function102770: ; 102770
- ld a, $01
- ld [wcd4a], a
-
-Function102775: ; 102775
- hlcoord 1, 16
- ld [hl], "▶"
- hlcoord 11, 16
- ld [hl], " "
- ld hl, wcd4b
- set 2, [hl]
- ld a, [wcd4a]
- inc a
- ld [wcd4a], a
- ret
-; 10278c
-
-Function10278c: ; 10278c
- ld a, [hJoyPressed]
- bit A_BUTTON_F, a
- jr nz, asm_1027c6
- bit B_BUTTON_F, a
- jr nz, asm_1027e2
- bit D_RIGHT_F, a
- jr nz, .asm_10279b
- ret
-
-.asm_10279b
- ld a, $03
- ld [wcd4a], a
-Function1027a0: ; 1027a0
- hlcoord 1, 16
- ld [hl], " "
- hlcoord 11, 16
- ld [hl], "▶"
- ld hl, wcd4b
- set 2, [hl]
- ld a, [wcd4a]
- inc a
- ld [wcd4a], a
- ret
-
-Function1027b7: ; 1027b7
- ld a, [hJoyPressed]
- bit A_BUTTON_F, a
- jr nz, asm_1027d1
- bit B_BUTTON_F, a
- jr nz, asm_1027e2
- bit D_LEFT_F, a
- jr nz, Function102770
- ret
-
-asm_1027c6:
- ld hl, wcd4b
- set 3, [hl]
- ld a, $25 ; Function1028bf
- ld [wcd49], a
- ret
-
-asm_1027d1:
- ld hl, wcd4b
- set 3, [hl]
- ld a, [wMenuCursorY]
- ld [wcd4c], a
- ld a, $7 ; Function1024f6
- ld [wcd49], a
- ret
-
-asm_1027e2:
- call Function102db7
- ld a, $1d ; Function102652
- ld [wcd49], a
- ret
-; 1027eb
-
-Function1027eb: ; 1027eb
- hlcoord 0, 14
- ld b, 2
- ld c, 18
- ld d, h
- ld e, l
- callba _LinkTextbox
- ld de, .Stats_Trade
- hlcoord 2, 16
- call PlaceString
- ret
-; 102804
-
-.Stats_Trade: ; 102804
- db "STATS TRADE@"
-; 102814
-
-Function102814: ; 102814
- ld a, [wMenuCursorY]
- ld [wcd52], a
- ld a, [wcd4c]
- dec a
- ld [wd002], a
- ld a, [wcd4d]
- dec a
- ld [wd003], a
- call Function102ea8
- ld a, [wcd49]
- inc a
- ld [wcd49], a
- ld a, 0
- ld [wcd4a], a
- ld hl, wcd4b
- set 1, [hl]
-
-Function10283c: ; 10283c
- ld hl, wcd4b
- set 2, [hl]
- call Function1029c3
- ret z
- jr c, .asm_102852
- ld a, $10 ; Function102862
- ld [wcd49], a
- ld hl, wcd4b
- set 1, [hl]
- ret
-
-.asm_102852
- ld a, $14 ; Function1028ab
- ld [wcd49], a
- ld hl, wcd4b
- set 3, [hl]
- ld hl, wcd4b
- set 1, [hl]
- ret
-; 102862
-
-Function102862: ; 102862
- ld a, $08
- call Function1028e8
- ld a, [wcd49]
- inc a
- ld [wcd49], a
- ret
-; 10286f
-
-Function10286f: ; 10286f
- call Function1028fc
- ret nc
- ld a, [wcd52]
- ld [wMenuCursorY], a
- ld a, [wcd51]
- cp $08
- jr nz, .asm_102886
- ld a, $15 ; Function1023b5
- ld [wcd49], a
- ret
-
-.asm_102886
- call Function102ee7
- ld hl, wcd4b
- set 1, [hl]
- ld a, $1e
- ld [wcd4e], a
- ld a, $3c
- ld [wcd4f], a
- ld a, 0
- ld [wcd4a], a
- ld a, [wcd49]
- inc a
- ld [wcd49], a
- ret
-; 1028a5
-
-Function1028a5: ; 1028a5
- ld a, $4 ; Function1023a1
- ld [wcd49], a
- ret
-; 1028ab
-
-Function1028ab: ; 1028ab
- ld a, [wcd52]
- ld [wMenuCursorY], a
- call Function102f15
- ld hl, wcd4b
- set 1, [hl]
- ld a, $c ; Function1025b0
- ld [wcd49], a
- ret
-; 1028bf
-
-Function1028bf: ; 1028bf
- ld a, [wcd49]
- inc a
- ld [wcd49], a
-
-Function1028c6: ; 1028c6
- xor a
- ld [MonType], a
- call Function102bac
- ld a, $1d ; Function102652
- ld [wcd49], a
- ret
-; 1028d3
-
-Function1028d3: ; 1028d3
- ld a, [wcd49]
- inc a
- ld [wcd49], a
-
-Function1028da: ; 1028da
- ld a, OTPARTYMON
- ld [MonType], a
- call Function102bac
- ld a, $1f ; Function1025e9
- ld [wcd49], a
- ret
-; 1028e8
-
-Function1028e8: ; 1028e8
- ld hl, wcd4b
- res 6, [hl]
- ld [wcd50], a
- callba StartMobileInactivityTimer
- ld a, 0
- ld [wcd4a], a
- ret
-; 1028fc
-
-Function1028fc: ; 1028fc
- call GetJoypad
- callba Function1009f3
- jr nc, .asm_102909
- and a
- ret
-
-.asm_102909
- ld a, [wcd4a]
- ld hl, Jumptable_102917
- rst JumpTable
- ret nc
- ld a, 0
- ld [wcd4a], a
- ret
-; 102917
-
-Jumptable_102917: ; 102917
- dw Function102933
- dw Function10294f
- dw Function10295d
- dw Function10296e
- dw Function102996
-; 102921
-
-Function102921: ; 102921
- ld a, [wcd4a]
- ld hl, Jumptable_10292f
- rst JumpTable
- ret nc
- ld a, 0
- ld [wcd4a], a
- ret
-; 10292f
-
-Jumptable_10292f: ; 10292f
- dw Function10295d
- dw Function102984
-; 102933
-
-Function102933: ; 102933
- ld hl, MenuDataHeader_1029bb
- call LoadMenuDataHeader
- call Function102e07
- ld a, $32
- ld [TextDelayFrames], a
- ld hl, wcd4b
- set 1, [hl]
- ld a, [wcd4a]
- inc a
- ld [wcd4a], a
- and a
- ret
-; 10294f
-
-Function10294f: ; 10294f
- ld a, [TextDelayFrames]
- and a
- ret nz
- ld a, [wcd4a]
- inc a
- ld [wcd4a], a
- and a
- ret
-; 10295d
-
-Function10295d: ; 10295d
- call Function10299e
- ld a, 0
- ld [wcd27], a
- ld a, [wcd4a]
- inc a
- ld [wcd4a], a
- and a
- ret
-; 10296e
-
-Function10296e: ; 10296e
- callba Function100382
- and a
- ld a, [wcd27]
- bit 7, a
- ret z
- ld a, [wcd4a]
- inc a
- ld [wcd4a], a
- and a
- ret
-; 102984
-
-Function102984: ; 102984
- callba Function100382
- and a
- ld a, [wcd27]
- bit 7, a
- ret z
- call Function1029af
- scf
- ret
-; 102996
-
-Function102996: ; 102996
- call Function1029af
- call ExitMenu
- scf
- ret
-; 10299e
-
-Function10299e: ; 10299e
- ld a, $01
- ld [wccb4], a
- ld a, [wcd50]
- ld [wccb5], a
- ld a, $aa
- ld [wcd51], a
- ret
-; 1029af
-
-Function1029af: ; 1029af
- ld hl, wcd4b
- res 7, [hl]
- ld a, [wcc61]
- ld [wcd51], a
- ret
-; 1029bb
-
-MenuDataHeader_1029bb: ; 1029bb
- db $40 ; flags
- db 10, 3 ; start coords
- db 12, 15 ; end coords
- dw NULL
- db 1 ; default option
-; 1029c3
-
-Function1029c3: ; 1029c3
- ld a, [wcd4a]
- ld hl, Jumptable_1029cb
- rst JumpTable
- ret
-; 1029cb
-
-Jumptable_1029cb: ; 1029cb
- dw Function1029cf
- dw Function1029fe
-; 1029cf
-
-Function1029cf: ; 1029cf
- call LoadStandardMenuDataHeader
- hlcoord 10, 7
- ld b, 3
- ld c, 8
- ld d, h
- ld e, l
- callba _LinkTextbox
- ld de, String_102a26
- hlcoord 12, 8
- call PlaceString
- ld hl, wcd4b
- set 1, [hl]
- ld de, MenuData3_102a33
- call SetMenuAttributes
- ld a, [wcd4a]
- inc a
- ld [wcd4a], a
- xor a
- ret
-; 1029fe
-
-Function1029fe: ; 1029fe
- callba Function1009f3
- ret c
- callba MobileMenuJoypad
- ld a, c
- ld hl, wMenuJoypadFilter
- and [hl]
- ret z
- push af
- call ExitMenu
- pop af
- ld a, [wMenuCursorY]
- cp $01
- jr nz, .asm_102a21
- ld a, $01
- and a
- ret
-
-.asm_102a21
- ld a, $01
- and a
- scf
- ret
-; 102a26
-
-String_102a26: ; 102a26
- db "TRADE"
- next "CANCEL"
- db "@"
-; 102a33
-
-MenuData3_102a33:
- db 8, 11
- db 2, 1
- db $80, $00
- dn 2, 0
- db A_BUTTON
-
-Function102a3b: ; 102a3b
- ld a, [wcd30]
- ld [wc74e], a
- ld hl, PlayerName
- ld de, wPlayerTrademonSenderName
- ld bc, NAME_LENGTH
- call CopyBytes
- ld a, [wcd4c]
- dec a
- ld c, a
- ld b, 0
- ld hl, PartySpecies
- add hl, bc
- ld a, [hl]
- ld [wPlayerTrademonSpecies], a
- ld a, [wcd4c]
- dec a
- ld hl, PartyMonOT
- call SkipNames
- ld de, wPlayerTrademonOTName
- ld bc, NAME_LENGTH
- call CopyBytes
- ld a, [wcd4c]
- dec a
- ld hl, PartyMon1ID
- call GetPartyLocation
- ld a, [hli]
- ld [wPlayerTrademonID], a
- ld a, [hl]
- ld [wPlayerTrademonID + 1], a
- ld a, [wcd4c]
- dec a
- ld hl, PartyMon1DVs
- call GetPartyLocation
- ld a, [hli]
- ld [wPlayerTrademonDVs], a
- ld a, [hl]
- ld [wPlayerTrademonDVs + 1], a
- ld a, [wcd4c]
- dec a
- ld hl, PartyMon1Species
- call GetPartyLocation
- ld b, h
- ld c, l
- callba GetCaughtGender
- ld a, c
- ld [wPlayerTrademonCaughtData], a
- ld hl, OTPlayerName
- ld de, wOTTrademonSenderName
- ld bc, NAME_LENGTH
- call CopyBytes
-
- ld a, [wcd4d]
- dec a
- ld c, a
- ld b, 0
- ld hl, OTPartySpecies
- add hl, bc
- ld a, [hl]
- ld [wOTTrademonSpecies], a
- ld a, [wcd4d]
- dec a
- ld hl, OTPartyMonOT
- call SkipNames
- ld de, wOTTrademonOTName
- ld bc, NAME_LENGTH
- call CopyBytes
- ld a, [wcd4d]
- dec a
- ld hl, OTPartyMon1ID
- call GetPartyLocation
- ld a, [hli]
- ld [wOTTrademonID], a
- ld a, [hl]
- ld [wOTTrademonID + 1], a
- ld a, [wcd4d]
- dec a
- ld hl, OTPartyMon1DVs
- call GetPartyLocation
- ld a, [hli]
- ld [wOTTrademonDVs], a
- ld a, [hl]
- ld [wOTTrademonDVs + 1], a
- ld a, [wcd4d]
- dec a
- ld hl, OTPartyMon1Species
- call GetPartyLocation
- ld b, h
- ld c, l
- callba GetCaughtGender
- ld a, c
- ld [wOTTrademonCaughtData], a
- ret
-; 102b12
-
-Function102b12: ; 102b12
- ld c, 100
- call DelayFrames
- call Function102d9a
- call LoadFontsBattleExtra
- ld a, [wcd2f]
- and a
- jr nz, .asm_102b2b
- callba Function108026
- jr .asm_102b31
-
-.asm_102b2b
- callba Function10802a
-
-.asm_102b31
- ret
-; 102b32
-
-Function102b32: ; 102b32
- ld a, [wcd4c]
- dec a
- ld [CurPartyMon], a
- ld a, $01
- ld [wForceEvolution], a
- callba EvolvePokemon
- call Function102d9a
- call Function102dd3
- call Function102dec
- ret
-; 102b4e
-
-Function102b4e: ; 102b4e
- ld a, OTPARTYMON
- ld [MonType], a
- ld a, [wMenuCursorY]
- push af
- ld de, Unknown_102b73
- call SetMenuAttributes
- pop af
- ld [wMenuCursorY], a
- ld a, [OTPartyCount]
- ld [w2DMenuNumRows], a
- ret
-; 102b68
-
-Function102b68: ; 102b68 ; unreferenced
- xor a
- ld hl, wWindowStackPointer
- ld bc, $10
- call ByteFill
- ret
-; 102b73
-
-Unknown_102b73:
- db 9, 6
- db 255, 1
- db $a0, $00
- dn 1, 0
- db D_UP | D_DOWN | A_BUTTON
-
-Function102b7b: ; 102b7b
- xor a
- ld [MonType], a
- ld a, [wMenuCursorY]
- push af
- ld de, Unknown_102b94
- call SetMenuAttributes
- pop af
- ld [wMenuCursorY], a
- ld a, [PartyCount]
- ld [w2DMenuNumRows], a
- ret
-; 102b94
-
-Unknown_102b94:
- db 1, 6
- db 255, 1
- db $a0, $00
- dn 1, 0
- db D_UP | D_DOWN | A_BUTTON
-
-Function102b9c: ; 102b9c
- ld a, [wcd4d]
- dec a
- hlcoord 6, 9
- ld bc, $14
- call AddNTimes
- ld [hl], $ec
- ret
-; 102bac
-
-Function102bac: ; 102bac
- ld a, [wMenuCursorY]
- dec a
- ld [CurPartyMon], a
- call LowVolume
- call ClearSprites
- callba _MobileStatsScreenInit
- ld a, [CurPartyMon]
- inc a
- ld [wMenuCursorY], a
- call Function102d9a
- call ClearPalettes
- call DelayFrame
- call MaxVolume
- call Function102dd3
- call Function102dec
- call Function102db7
- ret
-; 102bdc
-
-Function102bdc: ; 102bdc
- ld a, [wcd4d]
- dec a
- ld hl, OTPartyMon1Species
- call GetPartyLocation
- push hl
- ld a, [wcd4d]
- ld c, a
- ld b, 0
- ld hl, OTPartyCount
- add hl, bc
- ld a, [hl]
- pop hl
- cp EGG
- jr z, .asm_102bfa
- cp [hl]
- jr nz, .asm_102c05
-
-.asm_102bfa
- ld bc, MON_LEVEL
- add hl, bc
- ld a, [hl]
- cp MAX_LEVEL + 1
- jr nc, .asm_102c05
- and a
- ret
-
-.asm_102c05
- scf
- ret
-; 102c07
-
-Function102c07: ; 102c07
- call Function102c14
- call Function102c3b
- call Function102c21
- call Function102c2e
- ret
-; 102c14
-
-Function102c14: ; 102c14
- ld hl, PartySpecies
- ld de, OTPartySpecies
- ld bc, 1
- call Function102c71
- ret
-; 102c21
-
-Function102c21: ; 102c21
- ld hl, PartyMonNicknames
- ld de, OTPartyMonNicknames
- ld bc, 11
- call Function102c71
- ret
-; 102c2e
-
-Function102c2e: ; 102c2e
- ld hl, PartyMonOT
- ld de, OTPartyMonOT
- ld bc, 11
- call Function102c71
- ret
-; 102c3b
-
-Function102c3b: ; 102c3b
- ld hl, PartyMon1
- ld de, OTPartyMon1
- ld bc, $30
- call Function102c71
- ret
-; 102c48
-
-Function102c48: ; 102c48
- callba Function10165a
- ld a, 0
- call GetSRAMBank
- ld hl, $a600
- ld de, wc608
- ld bc, $2f
- call Function102c71
- call CloseSRAM
- ld hl, wc608
- ld de, w5_da00
- ld bc, $1e0
- ld a, $05
- call FarCopyWRAM
- ret
-; 102c71
-
-Function102c71: ; 102c71
- ld a, [wcd4c]
- dec a
- call AddNTimes
- push hl
- ld h, d
- ld l, e
- ld a, [wcd4d]
- dec a
- call AddNTimes
- pop de
- call SwapBytes
- ret
-; 102c87
-
-Function102c87: ; 102c87
- ld a, [wJumptableIndex]
- push af
- ld a, [wcf64]
- push af
- ld a, [wcd4c]
- ld [wJumptableIndex], a
- ld a, [PartyCount]
- ld [wcf64], a
- ld a, 0
- ld hl, $a600
- ld de, wc608
- ld bc, $11a
- call Function102d3e
- call Function102cee
- ld a, 0
- ld hl, wc608
- ld de, $a600
- ld bc, $11a
- call Function102d3e
- ld a, [wcd4d]
- ld [wJumptableIndex], a
- ld a, [OTPartyCount]
- ld [wcf64], a
- ld a, $05
- ld hl, w5_da00
- ld de, wc608
- ld bc, $11a
- call FarCopyWRAM
- call Function102cee
- ld a, $05
- ld hl, wc608
- ld de, w5_da00
- ld bc, $11a
- call FarCopyWRAM
- pop af
- ld [wcf64], a
- pop af
- ld [wJumptableIndex], a
- ret
-; 102cee
-
-Function102cee: ; 102cee
- ld a, [wJumptableIndex]
- dec a
- call Function102d34
- ld de, wd002
- ld bc, $2f
- call CopyBytes
- ld a, [wJumptableIndex]
- ld c, a
- ld a, $06
- sub c
- ret z
- ld bc, $2f
- ld hl, 0
- call AddNTimes
- push hl
- ld a, [wJumptableIndex]
- dec a
- call Function102d34
- ld d, h
- ld e, l
- ld hl, $2f
- add hl, de
- pop bc
- call CopyBytes
- ld a, [wcf64]
- dec a
- call Function102d34
- ld d, h
- ld e, l
- ld hl, wd002
- ld bc, $2f
- call CopyBytes
- ret
-; 102d34
-
-Function102d34: ; 102d34
- ld hl, wc608
- ld bc, $2f
- call AddNTimes
- ret
-; 102d3e
-
-Function102d3e: ; 102d3e
- call GetSRAMBank
- call CopyBytes
- call CloseSRAM
- ret
-; 102d48
-
-Function102d48: ; 102d48
- ld a, [wcd4c]
- ld e, a
- ld d, 0
- ld hl, PartyCount
- add hl, de
- ld a, [hl]
- ld [wd265], a
- cp EGG
- jr z, .asm_102d6d
- dec a
- call SetSeenAndCaughtMon
- ld a, [wcd4c]
- dec a
- ld bc, PARTYMON_STRUCT_LENGTH
- ld hl, PartyMon1Happiness
- call AddNTimes
- ld [hl], BASE_HAPPINESS
-
-.asm_102d6d
- ld a, [wd265]
- cp UNOWN
- jr nz, .asm_102d98
- ld a, [wcd4c]
- dec a
- ld bc, PARTYMON_STRUCT_LENGTH
- ld hl, PartyMon1DVs
- call AddNTimes
- predef GetUnownLetter
- callba UpdateUnownDex
- ld a, [wFirstUnownSeen]
- and a
- jr nz, .asm_102d98
- ld a, [UnownLetter]
- ld [wFirstUnownSeen], a
-
-.asm_102d98
- and a
- ret
-; 102d9a
-
-Function102d9a: ; 102d9a
- ld a, " "
- hlcoord 0, 0
- ld bc, SCREEN_WIDTH * SCREEN_HEIGHT
- call ByteFill
- ld a, $07
- hlcoord 0, 0, AttrMap
- ld bc, SCREEN_WIDTH * SCREEN_HEIGHT
- call ByteFill
- callba HDMATransferAttrMapAndTileMapToWRAMBank3
- ret
-; 102db7
-
-Function102db7: ; 102db7
- call Function102e4f
- call Function102e3e
- ld hl, wcd4b
- set 1, [hl]
- ret
-; 102dc3
-
-Function102dc3: ; 102dc3
- hlcoord 0, 12
- ld b, 4
- ld c, 18
- ld d, h
- ld e, l
- callba _LinkTextbox
- ret
-; 102dd3
-
-Function102dd3: ; 102dd3
- call DisableLCD
- ld de, GFX_1032a2
- ld hl, VTiles0
- lb bc, BANK(GFX_1032a2), 4
- call Get2bpp
- callba __LoadTradeScreenBorder
- call EnableLCD
- ret
-; 102dec
-
-Function102dec: ; 102dec
- ld hl, Palettes_1032e2
- ld de, UnknOBPals
- ld bc, 4 palettes
- ld a, $05
- call FarCopyWRAM
- callba Function49742
- call SetPalettes
- call DelayFrame
- ret
-; 102e07
-
-Function102e07: ; 102e07
- hlcoord 3, 10
- ld b, 1
- ld c, 11
- ld a, [wBattleMode]
- and a
- jr z, .link_battle
- call TextBox
- jr .okay
-
-.link_battle
-; this is idiotic
- hlcoord 3, 10
- ld b, 1
- ld c, 11
- ld d, h
- ld e, l
- callba _LinkTextbox
-
-.okay
- ld de, .waiting
- hlcoord 4, 11
- call PlaceString
- ret
-; 102e32
-
-.waiting ; 102e32
- db "Waiting...!@"
-; 102e3e
-
-Function102e3e: ; 102e3e
- ld de, .CANCEL
- hlcoord 10, 17
- call PlaceString
- ret
-; 102e48
-
-.CANCEL: ; 102e48
- db "CANCEL@"
-; 102e4f
-
-Function102e4f: ; 102e4f
- callba Function16d42e
- callba _InitMG_Mobile_LinkTradePalMap
- ld de, PlayerName
- hlcoord 4, 0
- call PlaceString
- ld a, $14
- ld [bc], a
- ld de, OTPlayerName
- hlcoord 4, 8
- call PlaceString
- ld a, $14
- ld [bc], a
- hlcoord 7, 1
- ld de, PartySpecies
- call .PlaceSpeciesNames
- hlcoord 7, 9
- ld de, OTPartySpecies
- call .PlaceSpeciesNames
- ret
-; 102e86
-
-.PlaceSpeciesNames: ; 102e86
- ld c, 0
-.count_loop
- ld a, [de]
- cp $ff
- ret z
- ld [wd265], a
- push bc
- push hl
- push de
- push hl
- ld a, c
- ld [hDividend], a
- call GetPokemonName
- pop hl
- call PlaceString
- pop de
- inc de
- pop hl
- ld bc, SCREEN_WIDTH
- add hl, bc
- pop bc
- inc c
- jr .count_loop
-; 102ea8
-
-Function102ea8: ; 102ea8
- call Function102dc3
- ld a, [wcd4c]
- dec a
- ld c, a
- ld b, 0
- ld hl, PartySpecies
- add hl, bc
- ld a, [hl]
- ld [wd265], a
- call GetPokemonName
- ld hl, StringBuffer1
- ld de, StringBuffer2
- ld bc, 11
- call CopyBytes
- ld a, [wcd4d]
- dec a
- ld c, a
- ld b, 0
- ld hl, OTPartySpecies
- add hl, bc
- ld a, [hl]
- ld [wd265], a
- call GetPokemonName
- ld hl, UnknownText_0x102ee2
- call PrintTextBoxText
- ret
-; 102ee2
-
-UnknownText_0x102ee2: ; 102ee2
- text_jump UnknownText_0x1bd286
- db "@"
-
-Function102ee7: ; 102ee7
- call Function102dc3
- ld de, String_102ef4
- hlcoord 1, 14
- call PlaceString
- ret
-; 102ef4
-
-String_102ef4: ; 102ef4
- db "Too bad! The trade"
- next "was canceled!"
- db "@"
-; 102f15
-
-Function102f15: ; 102f15
- call Function102dc3
- ld de, .TooBadTheTradeWasCanceled
- hlcoord 1, 14
- call PlaceString
- ret
-; 102f22
-
-.TooBadTheTradeWasCanceled: ; 102f22
- db "こうかんを キャンセルしました@"
-; 102f32
-
-Function102f32: ; 102f32
- call Function102dc3
- ld de, .TradeCompleted
- hlcoord 1, 14
- call PlaceString
- ret
-; 102f3f
-
-.TradeCompleted: ; 102f3f
- db "Trade completed!@"
-; 102f50
-
-Function102f50: ; 102f50
- call Function102dc3
- ld de, .PleaseWait
- hlcoord 1, 14
- call PlaceString
- ret
-; 102f5d
-
-.PleaseWait: ; 102f5d
- db "しょうしょう おまち ください@"
-; 102f6d
-
-Function102f6d: ; 102f6d
- call Function102dc3
- ld de, .Finished
- hlcoord 1, 14
- call PlaceString
- ret
-; 102f7a
-
-.Finished: ; 102f7a
- db "しゅうりょう します@"
-; 102f85
-
-Function102f85: ; 102f85
- ld a, [wd003]
- ld c, a
- ld b, 0
- ld hl, OTPartySpecies
- add hl, bc
- ld a, [hl]
- ld [wd265], a
- call GetPokemonName
- call Function102dc3
- ld de, String_102fb2
- hlcoord 1, 14
- call PlaceString
- ld de, StringBuffer1
- hlcoord 13, 14
- call PlaceString
- ld de, String_102fcc
- call PlaceString
- ret
-; 102fb2
-
-String_102fb2: ; 102fb2
- db "あいてがわ<PKMN>えらんだ "
- next "いじょう<PKMN>あるようです!!"
- db "@"
-; 102fcc
-
-String_102fcc: ; 102fcc
- db "に@"
-; 102fce
-
-Function102fce: ; 102fce
- call Function102dc3
- ld de, String_102fdb
- hlcoord 1, 14
- call PlaceString
- ret
-; 102fdb
-
-String_102fdb: ; 102fdb
- db "あいてがわ%せんたくに"
- next "いじょう<PKMN>あるようです!!"
- done
-; 102ff5
-
-Function102ff5: ; 102ff5
- call Function102dc3
- ld de, String_103002
- hlcoord 1, 14
- call PlaceString
- ret
-; 103002
-
-String_103002: ; 103002
- db "その#を こうかんすると"
- next "せんとう できなく なっちゃうよ!"
- db "@"
-; 103021
-
-Function103021: ; 103021
- call Function102dc3
- ld de, String_10302e
- hlcoord 1, 14
- call PlaceString
- ret
-; 10302e
-
-String_10302e: ; 10302e
- db "あいてが ちゅうしを えらんだので"
- next "こうかんを ちゅうし します"
- db "@"
-; 10304f
-
-Function10304f: ; 10304f
- xor a
- ld [AttrMapEnd], a
- ld [wcf42], a
- ld [wcf44], a
- ld [wcf45], a
- ret
-; 10305d
-
-Function10305d: ; 10305d
- nop
- ld a, [AttrMapEnd]
- and a
- ret z
- call Function10307f
- ret c
- call Function103094
- call Function10306e
- ret
-; 10306e
-
-Function10306e: ; 10306e
- ld a, $01
- ld [hOAMUpdate], a
- call ClearSprites
- ld de, Sprites
- call Function1030cd
- xor a
- ld [hOAMUpdate], a
- ret
-; 10307f
-
-Function10307f: ; 10307f
- ld c, $02
- ld hl, wcd4b
- bit 7, [hl]
- jr z, .asm_10308a
- ld c, $01
-
-.asm_10308a
- ld hl, wcf45
- inc [hl]
- ld a, [hl]
- cp c
- ret c
- xor a
- ld [hl], a
- ret
-; 103094
-
-Function103094: ; 103094
- ld hl, wcd4b
- bit 7, [hl]
- jr nz, .asm_1030c0
- ld a, [wcf42]
- bit 7, a
- jr nz, .asm_1030b2
- ld a, [wcf44]
- inc a
- ld [wcf44], a
- cp $2c
- ret nz
- ld hl, wcf42
- set 7, [hl]
- ret
-
-.asm_1030b2
- ld a, [wcf44]
- dec a
- ld [wcf44], a
- ret nz
- ld hl, wcf42
- res 7, [hl]
- ret
-
-.asm_1030c0
- ld hl, wcf44
- ld a, [hl]
- and a
- jr z, .asm_1030ca
- dec a
- ld [hl], a
- ret nz
-
-.asm_1030ca
- ld [hl], $2c
- ret
-; 1030cd
-
-Function1030cd: ; 1030cd
- ld a, [wcf44]
- ld l, a
- ld h, 0
- add hl, hl
- add hl, hl
- add hl, hl
- ld bc, Unknown_103112
- add hl, bc
- ld b, $30
- ld c, $08
-.asm_1030de
- push hl
- ld hl, wcd4b
- bit 7, [hl]
- pop hl
- ld a, 0
- jr z, .asm_1030eb
- ld a, $05
-.asm_1030eb
-
- add [hl]
- inc hl
- push hl
-
- add a
- add a
-
- add Unknown_10327a % $100
- ld l, a
- ld a, Unknown_10327a / $100
- adc 0
- ld h, a
-
- ld a, b
- add [hl]
- inc hl
- ld [de], a
- inc de
- ld a, $0a
- add [hl]
- inc hl
- ld [de], a
- inc de
- ld a, [hli]
- ld [de], a
- inc de
- ld a, [hli]
- ld [de], a
- inc de
- pop hl
- ld a, b
- add $08
- ld b, a
- dec c
- jr nz, .asm_1030de
- ret
-; 103112
-
-Unknown_103112: ; 103112
- db $00, $00, $00, $00, $00, $00, $00, $00
- db $00, $00, $00, $00, $00, $00, $00, $00
- db $00, $00, $00, $00, $00, $00, $00, $00
- db $00, $00, $00, $00, $00, $00, $00, $00
- db $00, $00, $00, $00, $00, $00, $00, $00
- db $00, $00, $00, $00, $00, $00, $00, $00
- db $00, $00, $00, $00, $00, $00, $00, $00
- db $00, $00, $00, $00, $00, $00, $00, $00
- db $01, $00, $00, $00, $00, $00, $00, $00
- db $02, $01, $00, $00, $00, $00, $00, $00
- db $03, $02, $01, $00, $00, $00, $00, $00
- db $04, $03, $02, $01, $00, $00, $00, $00
- db $04, $04, $03, $02, $01, $00, $00, $00
- db $04, $04, $04, $03, $02, $01, $00, $00
- db $04, $04, $04, $04, $03, $02, $01, $00
- db $04, $04, $04, $04, $04, $03, $02, $01
- db $04, $04, $04, $04, $04, $04, $03, $02
- db $04, $04, $04, $04, $04, $04, $04, $03
- db $04, $04, $04, $04, $04, $04, $04, $04
- db $04, $04, $04, $04, $04, $04, $04, $04
- db $04, $04, $04, $04, $04, $04, $04, $04
- db $04, $04, $04, $04, $04, $04, $04, $04
- db $04, $04, $04, $04, $04, $04, $04, $04
- db $04, $04, $04, $04, $04, $04, $04, $04
- db $04, $04, $04, $04, $04, $04, $04, $04
- db $04, $04, $04, $04, $04, $04, $04, $04
- db $03, $04, $04, $04, $04, $04, $04, $04
- db $02, $03, $04, $04, $04, $04, $04, $04
- db $01, $02, $03, $04, $04, $04, $04, $04
- db $00, $01, $02, $03, $04, $04, $04, $04
- db $00, $00, $01, $02, $03, $04, $04, $04
- db $00, $00, $00, $01, $02, $03, $04, $04
- db $00, $00, $00, $00, $01, $02, $03, $04
- db $00, $00, $00, $00, $00, $01, $02, $03
- db $00, $00, $00, $00, $00, $00, $01, $02
- db $00, $00, $00, $00, $00, $00, $00, $01
- db $00, $00, $00, $00, $00, $00, $00, $00
- db $00, $00, $00, $00, $00, $00, $00, $00
- db $00, $00, $00, $00, $00, $00, $00, $00
- db $00, $00, $00, $00, $00, $00, $00, $00
- db $00, $00, $00, $00, $00, $00, $00, $00
- db $00, $00, $00, $00, $00, $00, $00, $00
- db $00, $00, $00, $00, $00, $00, $00, $00
- db $00, $00, $00, $00, $00, $00, $00, $00
- db $00, $00, $00, $00, $00, $00, $00, $00
-; 10327a
-
-Unknown_10327a: ; 10327a
- db $00, $00, $00, $00
- db $00, $00, $01, $00
- db $00, $00, $02, $00
- db $00, $00, $03, $00
- db $00, $00, $01, $01
- db $00, $00, $00, $00
- db $00, $00, $01, $02
- db $00, $00, $02, $02
- db $00, $00, $03, $02
- db $00, $00, $01, $03
-
-GFX_1032a2:
-INCBIN "gfx/unknown/1032a2.2bpp"
-
-Palettes_1032e2:
- RGB 0, 0, 0
- RGB 31, 31, 7
- RGB 20, 31, 6
- RGB 13, 20, 16
-
- RGB 0, 0, 0
- RGB 7, 11, 17
- RGB 0, 0, 0
- RGB 0, 0, 0
-
- RGB 0, 0, 0
- RGB 31, 24, 4
- RGB 25, 12, 0
- RGB 31, 7, 4
-
- RGB 0, 0, 0
- RGB 25, 0, 0
- RGB 0, 0, 0
- RGB 0, 0, 0
-
-; 103302
-
-Function103302: ; 103302
- call Function103309
- call Function103362
- ret
-; 103309
-
-Function103309: ; 103309
- xor a
- ld [hBGMapMode], a
- ld hl, Buffer1
- ld bc, 10
- xor a
- call ByteFill
- ld a, $04
- call GetSRAMBank
- ld a, [wdc41]
- ld [$a60c], a
- ld [Buffer1], a
- call CloseSRAM
- call Function1035c6
- ld a, [hli]
- ld e, a
- ld a, [hli]
- ld d, a
- ld a, [hli]
- ld c, a
- ld a, [hli]
- ld b, a
- ld a, [hli]
- ld [wd1ef], a
- ld a, [hli]
- ld [wd1ec], a
- ld a, [hli]
- ld [wd1ed], a
- ld h, d
- ld l, e
- call Function3eea
- ld hl, wd1ec
- ld a, [hli]
- ld h, [hl]
- ld l, a
- ld a, [hl]
- ld [wd1ee], a
- call Function1034be
- call UpdateSprites
- callba HDMATransferAttrMapAndTileMapToWRAMBank3
- ld a, $01
- ld [wd1f0], a
- call Function10339a
- ret
-; 103362
-
-Function103362: ; 103362
-.asm_103362
- ld a, [wd1f0]
- ld [wd1f1], a
- call Function1033af
- call Function10339a
- call Function10342c
- callba HDMATransferTileMapToWRAMBank3
- ld a, [Buffer2]
- bit 7, a
- jr z, .asm_103362
- ld hl, Buffer2
- bit 6, [hl]
- jr z, .asm_103398
- ld a, $04
- call GetSRAMBank
- ld a, [Buffer1]
- ld [$a60c], a
- ld [wdc41], a
- call CloseSRAM
- xor a
- ret
-
-.asm_103398
- scf
- ret
-; 10339a
-
-Function10339a: ; 10339a
- ld a, [wd1f0]
- ld [wd1f2], a
- ld c, a
- ld b, 0
- ld hl, wd1ec
- ld a, [hli]
- ld h, [hl]
- ld l, a
- add hl, bc
- ld a, [hl]
- ld [wd1f3], a
- ret
-; 1033af
-
-Function1033af: ; 1033af
- call GetJoypad
- ld a, [hJoyPressed]
- bit D_LEFT_F, a
- jr nz, .left
- bit D_RIGHT_F, a
- jr nz, .right
- bit B_BUTTON_F, a
- jr nz, .b
- bit A_BUTTON_F, a
- jr nz, .a
- bit D_UP_F, a
- jr nz, .up
- bit D_DOWN_F, a
- jr nz, .down
- ret
-
-.up
- ld a, [wd1f0]
- dec a
- ld [wd1f0], a
- cp 1
- ret nc
- ld a, [wd1ee]
- ld [wd1f0], a
- ret
-
-.down
- ld a, [wd1f0]
- inc a
- ld [wd1f0], a
- ld c, a
- ld a, [wd1ee]
- cp c
- ret nc
- ld a, 1
- ld [wd1f0], a
- ret
-
-.b
- call PlayClickSFX
- ld hl, Buffer2
- set 7, [hl]
- ret
-
-.a
- ld a, [wd1f3]
- cp 3
- jr nz, .a_return
- ld de, SFX_TRANSACTION
- call PlaySFX
- ld hl, Buffer2
- set 7, [hl]
- ld hl, Buffer2
- set 6, [hl]
- ret
-
-.left
-.right
-.a_return
- ld a, [wd1f3]
- cp 3
- ret z
- ld de, SFX_PUSH_BUTTON
- call PlaySFX
- ld bc, 8
- call Function10350f
- ld a, [Buffer1]
- xor e
- ld [Buffer1], a
- ret
-; 10342c
-
-Function10342c: ; 10342c
- ld a, [wd1f0]
- ld [wd1f2], a
- call Function103490
- call Function10343c
- call Function1034a7
- ret
-; 10343c
-
-Function10343c: ; 10343c
- ld a, [wd1f3]
- cp $02
- jr nz, .asm_103452
- ld bc, 1
- call Function1034f7
- ld c, $12
- ld b, $01
- call Function1034e0
- jr .asm_10345f
-
-.asm_103452
- ld bc, $ffed
- call Function1034f7
- ld c, $12
- ld b, $02
- call Function1034e0
-
-.asm_10345f
- ld bc, 0
- call Function10350f
- ld bc, 1
- call Function103487
- ld bc, 8
- call Function10350f
- ld a, [Buffer1]
- and e
- ld bc, 2
- jr z, .asm_10347d
- ld bc, 4
-
-.asm_10347d
- call Function10350f
- ld bc, 11
- call Function103487
- ret
-; 103487
-
-Function103487: ; 103487
- push de
- call Function1034f7
- pop de
- call PlaceString
- ret
-; 103490
-
-Function103490: ; 103490
- hlcoord 0, 15
- ld c, $14
- ld b, $03
- call Function1034e0
- ld bc, 6
- call Function10350f
- hlcoord 1, 16
- call PlaceString
- ret
-; 1034a7
-
-Function1034a7: ; 1034a7
- ld a, [wd1f1]
- ld [wd1f2], a
- ld bc, 10
- call Function1034f7
- ld [hl], $7f
- ld bc, 10
- call Function1034f1
- ld [hl], $ed
- ret
-; 1034be
-
-Function1034be: ; 1034be
- ld a, $01
- ld [wd1f2], a
- ld hl, wd1ec
- ld a, [hli]
- ld h, [hl]
- ld l, a
- ld a, [hli]
-.asm_1034ca
- push af
- ld a, [hli]
- push hl
- ld [wd1f3], a
- call Function10343c
- ld hl, wd1f2
- inc [hl]
- pop hl
- pop af
- dec a
- jr nz, .asm_1034ca
- call Function103490
- ret
-; 1034e0
-
-Function1034e0: ; 1034e0
- push bc
- push hl
- call ClearBox
- pop hl
- ld bc, AttrMap - TileMap
- add hl, bc
- pop bc
- ld a, $06
- call FillBoxWithByte
- ret
-; 1034f1
-
-Function1034f1: ; 1034f1
- ld a, [wd1f0]
- ld [wd1f2], a
-
-Function1034f7: ; 10134f7
- hlcoord 0, 0
- add hl, bc
- ld a, [wd1ef]
- ld bc, SCREEN_WIDTH
- call AddNTimes
- ld a, [wd1f2]
- dec a
- ld bc, 40
- call AddNTimes
- ret
-; 10350f
-
-Function10350f: ; 10350f
- ld a, [wd1f3]
- push bc
- ld hl, Unknown_103522
- ld bc, 9
- call AddNTimes
- pop bc
- add hl, bc
- ld a, [hli]
- ld d, [hl]
- ld e, a
- ret
-; 103522
-
-Unknown_103522: ; 103522
- dw String_103546
- dw String_103598
- dw String_1035a0
- dw String_10355f
- db $01
- dw String_10354f
- dw String_1035a8
- dw String_1035b1
- dw String_103571
- db $02
- dw String_103557
- dw String_1035ba
- dw String_1035bd
- dw String_103585
- db $04
- dw String_103545
- dw String_1035c1
- dw String_1035c1
- dw String_103545
-
-String_103545: db "@"
-String_103546: db "せんとう アニメ@"
-String_10354f: db "でんわばんごう@"
-String_103557: db "めいしこうかん@"
-String_10355f: db "でんわを かけるひとが きめられる@"
-String_103571: db "でんわばんごうの にゅうりょくのしかた@"
-String_103585: db "あたらしいめいしが あれば こうかん@"
-String_103598: db "とばして みる@"
-String_1035a0: db "じっくり みる@"
-String_1035a8: db "めいしからえらぶ@"
-String_1035b1: db "すうじで いれる@"
-String_1035ba: db "する@"
-String_1035bd: db "しない@"
-String_1035c1: db "けってい@"
-; 1035c6
-
-Function1035c6: ; 1035c6
- callba Function10138b
- ld b, 0
- ld hl, Unknown_1035d7
- add hl, bc
- add hl, bc
- ld a, [hli]
- ld h, [hl]
- ld l, a
- ret
-; 1035d7
-
-Unknown_1035d7: ; 1035d7
- dw Unknown_1035e7
- dw Unknown_1035f3
- dw Unknown_103608
- dw Unknown_103608
- dw Unknown_1035fe
- dw AskMobileOrCable
- dw AskMobileOrCable
- dw AskMobileOrCable
-
-Unknown_1035e7: ; 1035e7
- dwcoord 0, 6
- db $12, $07, $07
- dw .this
-.this
- db 4, 2, 1, 0, 3
-
-Unknown_1035f3: ; 1035f3
- dwcoord 0, 7
- db $12, $06, $09
- dw .this
-.this
- db 3, 2, 1, 3
-
-Unknown_1035fe: ; 1035fe
- dwcoord 0, 9
- db $12, $04, $0b
- dw .this
-.this
- db 2, 0, 3
-
-Unknown_103608: ; 103608
- dwcoord 0, 9
- db $12, $04, $0b
- dw .this
-.this
- db 2, 2, 3
-; 103612
-
-AskMobileOrCable: ; 103612
- ld hl, MenuDataHeader_103640
- call LoadMenuDataHeader
- ld a, [wMobileOrCable_LastSelection]
- and $0f
- jr z, .skip_load
- ld [wMenuCursorBuffer], a
-
-.skip_load
- call VerticalMenu
- call CloseWindow
- jr c, .pressed_b
- ld a, [wMenuCursorY]
- ld [ScriptVar], a
- ld c, a
- ld a, [wMobileOrCable_LastSelection]
- and $f0
- or c
- ld [wMobileOrCable_LastSelection], a
- ret
-
-.pressed_b
- xor a
- ld [ScriptVar], a
- ret
-; 103640
-
-MenuDataHeader_103640: ; 103640
- db $40 ; flags
- db 6, 13 ; start coords
- db 11, 19 ; end coords
- dw MenuData2_103648
- db 1 ; default option
-
-MenuData2_103648: ; 103648
- db $80 ; flags
- db 2
- db "モバイル@"
- db "ケーブル@"
-; 103654
-
-Function103654: ; 103654
- callba Mobile_AlwaysReturnNotCarry
- bit 7, c
- jr nz, .asm_103666
- ld hl, wcd2a
- res 5, [hl]
- ld c, $02
- ret
-
-.asm_103666
- ld hl, wcd2a
- set 5, [hl]
- ld c, $01
- ret
-; 10366e
-
-Mobile_SelectThreeMons: ; 10366e
- callba Mobile_AlwaysReturnNotCarry
- bit 7, c
- jr z, .asm_10369b
- ld hl, UnknownText_0x10375d
- call PrintText
- call YesNoBox
- jr c, .asm_103696
- callba CheckForMobileBattleRules
- jr nc, .asm_103690
- call JoyWaitAorB
- jr .asm_103696
-
-.asm_103690
- ld a, $01
- ld [ScriptVar], a
- ret
-
-.asm_103696
- xor a
- ld [ScriptVar], a
- ret
-
-.asm_10369b
- ld hl, wMobileOrCable_LastSelection
- bit 7, [hl]
- set 7, [hl]
- jr nz, .asm_1036b5
- ld hl, UnknownText_0x103762
- call PrintText
- call YesNoBox
- jr c, .asm_1036b5
- call Function1036f9
- call JoyWaitAorB
-
-.asm_1036b5
- call Function103700
- jr c, .asm_1036f4
- ld hl, MenuDataHeader_103747
- call LoadMenuDataHeader
- call VerticalMenu
- call ExitMenu
- jr c, .asm_1036f4
- ld a, [wMenuCursorY]
- cp $01
- jr z, .asm_1036d9
- cp $02
- jr z, .asm_1036f4
- cp $03
- jr z, .asm_1036ec
- jr .asm_1036b5
-
-.asm_1036d9
- callba CheckForMobileBattleRules
- jr nc, .asm_1036e6
- call JoyWaitAorB
- jr .asm_1036f4
-
-.asm_1036e6
- ld a, $01
- ld [ScriptVar], a
- ret
-
-.asm_1036ec
- call Function1036f9
- call JoyWaitAorB
- jr .asm_1036b5
-
-.asm_1036f4
- xor a
- ld [ScriptVar], a
- ret
-; 1036f9
-
-Function1036f9: ; 1036f9
- ld hl, UnknownText_0x103767
- call PrintText
- ret
-; 103700
-
-Function103700: ; 103700
- ld c, $0a
- ld hl, SwarmFlags
- bit 4, [hl]
- jr z, .asm_10370f
- callba Function1008a6
-
-.asm_10370f
- ld a, c
- ld [StringBuffer2], a
- ld a, [StringBuffer2]
- cp $05
- jr nc, .asm_103724
- cp $02
- jr nc, .asm_10372c
- cp $01
- jr nc, .asm_103734
- jr .asm_10373c
-
-.asm_103724
- ld hl, UnknownText_0x10376c
- call PrintText
- and a
- ret
-
-.asm_10372c
- ld hl, UnknownText_0x103771
- call PrintText
- and a
- ret
-
-.asm_103734
- ld hl, UnknownText_0x103776
- call PrintText
- and a
- ret
-
-.asm_10373c
- ld hl, UnknownText_0x10377b
- call PrintText
- call JoyWaitAorB
- scf
- ret
-; 103747
-
-MenuDataHeader_103747: ; 103747
- db $40 ; flags
- db 5, 13 ; start coords
- db 11, 19 ; end coords
- dw MenuData2_10374f
- db 1 ; default option
-
-MenuData2_10374f: ; 10374f
- db $c0 ; flags
- db 3
- db "はい@"
- db "やめる@"
- db "せつめい@"
-; 10375d
-
-UnknownText_0x10375d: ; 0x10375d
- text_jump UnknownText_0x1c422a
- db "@"
-; 0x103762
-UnknownText_0x103762: ; 0x103762
- text_jump UnknownText_0x1c4275
- db "@"
-; 0x103767
-UnknownText_0x103767: ; 0x103767
- text_jump UnknownText_0x1c4298
- db "@"
-; 0x10376c
-UnknownText_0x10376c: ; 0x10376c
- text_jump UnknownText_0x1c439c
- db "@"
-; 0x103771
-UnknownText_0x103771: ; 0x103771
- text_jump UnknownText_0x1c43dc
- db "@"
-; 0x103776
-UnknownText_0x103776: ; 0x103776
- text_jump UnknownText_0x1c4419
- db "@"
-; 0x10377b
-UnknownText_0x10377b: ; 0x10377b
- text_jump UnknownText_0x1c445a
- db "@"
-; 0x103780
-
-Function103780: ; 103780
- ld a, [wd265]
- push af
- call Function10378c
- pop af
- ld [wd265], a
- ret
-; 10378c
-
-Function10378c: ; 10378c
- ld c, 0
- ld hl, SwarmFlags
- bit 4, [hl]
- jr nz, .already_set
- ld c, $01
- ld hl, SwarmFlags
- set 4, [hl]
-
-.already_set
- push bc
- callba Link_SaveGame
- pop bc
- jr c, .failed_to_save
- ld a, $01
- ld [ScriptVar], a
- ld a, c
- and a
- ret z
- callba Function1006fd
- ret
-
-.failed_to_save
- xor a
- ld [ScriptVar], a
- ld a, c
- and a
- ret z
- ld hl, SwarmFlags
- res 4, [hl]
- ret
-; 1037c2
-
-Function1037c2: ; 1037c2
- call Function103823
- jr c, .nope
- ld a, [wdc5f]
- and a
- jr z, .nope
- ld hl, UnknownText_0x1037e6
- call PrintText
- call YesNoBox
- jr c, .nope
- ld a, $01
- ld [ScriptVar], a
- ret
-
-.nope
- xor a
- ld [wdc5f], a
- ld [ScriptVar], a
- ret
-; 1037e6
-
-UnknownText_0x1037e6: ; 0x1037e6
- text_jump UnknownText_0x1c449c
- db "@"
-; 0x1037eb
-
-Function1037eb: ; 1037eb
- call Function103823
- jr nc, .asm_103807
- ld hl, UnknownText_0x103819
- call PrintText
- call JoyWaitAorB
- ld hl, UnknownText_0x10381e
- call PrintText
- call JoyWaitAorB
- xor a
- ld [ScriptVar], a
- ret
-
-.asm_103807
- ld a, [wdc60]
- and a
- jr nz, .asm_103813
- ld a, $01
- ld [ScriptVar], a
- ret
-
-.asm_103813
- ld a, $02
- ld [ScriptVar], a
- ret
-; 103819
-
-UnknownText_0x103819: ; 0x103819
- text_jump UnknownText_0x1c44c0
- db "@"
-; 0x10381e
-
-UnknownText_0x10381e: ; 0x10381e
- text_jump UnknownText_0x1c44e7
- db "@"
-; 0x103823
-
-Function103823: ; 103823
- callba Mobile_AlwaysReturnNotCarry
- bit 7, c
- jr nz, .asm_103838
- callba Function1008a6
- ld a, c
- cp $01
- jr c, .asm_10383a
-
-.asm_103838
- xor a
- ret
-
-.asm_10383a
- scf
- ret
-; 10383c
-
-Function10383c: ; 10383c
- ld a, $01
- ld [wdc60], a
- xor a
- ld hl, wPlayerMonSelection
- ld [hli], a
- ld [hli], a
- ld [hl], a
- ld hl, UnknownText_0x103876
- call PrintText
- call JoyWaitAorB
- callba Script_reloadmappart
- callba Function4a94e
- jr c, .asm_103870
- ld hl, wd002
- ld de, wPlayerMonSelection
- ld bc, 3
- call CopyBytes
- xor a
- ld [ScriptVar], a
- ret
-
-.asm_103870
- ld a, $01
- ld [ScriptVar], a
- ret
-; 103876
-
-UnknownText_0x103876: ; 0x103876
- text_jump UnknownText_0x1c4508
- db "@"
-; 0x10387b
-
-Function10387b: ; 10387b
- callba Mobile_AlwaysReturnNotCarry
- bit 7, c
- ret nz
- callba Function1008a6
- ld a, c
- ld [StringBuffer2], a
- ld hl, UnknownText_0x103898
- call PrintText
- call JoyWaitAorB
- ret
-; 103898
-
-UnknownText_0x103898: ; 0x103898
- text_jump UnknownText_0x1c4525
- db "@"
-; 0x10389d