mirror of
https://gitlab.com/xCrystal/pokecrystal-board.git
synced 2024-11-16 11:27:33 -08:00
0f5540740b
* Macro loop for EmptyAllSRAMBanks * Many things labeled and magic numbers removed * Conform to the style guide * Rename URLs in mobile_46 * MOBILEAPI_19 -> MOBILEAPI_TELEPHONESTATUS * Update engine/menus/empty_sram.asm Co-authored-by: Rangi <35663410+Rangi42@users.noreply.github.com> * Update ram/wram.asm Co-authored-by: Rangi <35663410+Rangi42@users.noreply.github.com> * Update mobile/mobile_46.asm Co-authored-by: Rangi <35663410+Rangi42@users.noreply.github.com> * Update mobile/mobile_46.asm Co-authored-by: Rangi <35663410+Rangi42@users.noreply.github.com> * Remove underscore from Set*DownloadURL symbols * Begin Labeling TradeCornerHoldMon routines * Add wMobileMon party_struct * Add TRADE_CORNER_REQUEST_LENGTH constant * Name battle tower action functions * Label trade corner send/receive buffer * Label the saved copy of the trade corner pokemon also fix mailmsg_jp * So many copies of decodeBase64Character * Label another buffer * Fix Alignment and use MOBILE_EMAIL_LENGTH * `Function11ad8a` -> `MobileIncJumptableIndex` * Apply Rangi Suggestions pass 1 Co-Authored-By: Rangi <35663410+Rangi42@users.noreply.github.com> * Apply Suggestions 2 Co-authored-by: Rangi <35663410+Rangi42@users.noreply.github.com> Co-authored-by: vulcandth <vulcandth@gmail.com>
9549 lines
130 KiB
NASM
9549 lines
130 KiB
NASM
; A library included as part of the Mobile Adapter GB SDK.
|
|
|
|
INCLUDE "macros/const.asm"
|
|
INCLUDE "constants/hardware_constants.asm"
|
|
INCLUDE "constants/mobile_constants.asm"
|
|
|
|
; Mobile Adapter protocol commands
|
|
DEF MOBILE_COMMAND_BEGIN_SESSION EQU $10
|
|
DEF MOBILE_COMMAND_END_SESSION EQU $11
|
|
DEF MOBILE_COMMAND_DIAL_TELEPHONE EQU $12
|
|
DEF MOBILE_COMMAND_HANG_UP_TELEPHONE EQU $13
|
|
DEF MOBILE_COMMAND_WAIT_FOR_TELEPHONE_CALL EQU $14
|
|
DEF MOBILE_COMMAND_TRANSFER_DATA EQU $15
|
|
DEF MOBILE_COMMAND_TELEPHONE_STATUS EQU $17
|
|
DEF MOBILE_COMMAND_READ_CONFIGURATION_DATA EQU $19
|
|
DEF MOBILE_COMMAND_WRITE_CONFIGURATION_DATA EQU $1a
|
|
DEF MOBILE_COMMAND_TRANSFER_DATA_END EQU $1f
|
|
DEF MOBILE_COMMAND_ISP_LOGIN EQU $21
|
|
DEF MOBILE_COMMAND_ISP_LOGOUT EQU $22
|
|
DEF MOBILE_COMMAND_OPEN_TCP_CONNECTION EQU $23
|
|
DEF MOBILE_COMMAND_CLOSE_TCP_CONNECTION EQU $24
|
|
DEF MOBILE_COMMAND_DNS_QUERY EQU $28
|
|
DEF MOBILE_COMMAND_ERROR EQU $6e
|
|
|
|
|
|
SECTION "Mobile Adapter SDK", ROMX
|
|
|
|
MobileSDK_CopyBytes:
|
|
; Copy b bytes from hl to de
|
|
.loop
|
|
ld a, [hli]
|
|
ld [de], a
|
|
inc de
|
|
dec b
|
|
jr nz, .loop
|
|
ret
|
|
|
|
MobileSDK_CopyString:
|
|
; Copy bytes from hl to de until a 0 is encountered.
|
|
; Include the 0 in the copy, and count the number of
|
|
; nonzero bytes copied. Keep the de pointer at the
|
|
; copied zero.
|
|
.loop
|
|
ld a, [hli]
|
|
ld [de], a
|
|
or a
|
|
ret z
|
|
inc de
|
|
inc bc
|
|
jr .loop
|
|
|
|
MobileSDK_CopyStringLen:
|
|
; Copy bytes from hl to de until a 0 is encountered,
|
|
; or a bytes have been copied, whichever comes first.
|
|
; Add the byte count to the count previously stored
|
|
; in bc.
|
|
push bc
|
|
ld c, $0
|
|
ld b, a
|
|
dec b
|
|
.loop
|
|
ld a, [hli]
|
|
ld [de], a
|
|
or a
|
|
jr z, .done
|
|
inc de
|
|
inc c
|
|
dec b
|
|
jr nz, .loop
|
|
xor a
|
|
ld [de], a
|
|
|
|
.done
|
|
ld a, c
|
|
pop bc
|
|
add c
|
|
ld c, a
|
|
ld a, b
|
|
adc 0
|
|
ld b, a
|
|
ret
|
|
|
|
ResetReceivePacketBuffer:
|
|
; Clear two bytes at wMobileSDK_ReceivedBytes
|
|
xor a
|
|
ld hl, wMobileSDK_ReceivedBytes
|
|
ld [hli], a
|
|
ld [hl], a
|
|
ret
|
|
|
|
_MobileAPI::
|
|
; Use the byte at wMobileAPIIndex as a parameter
|
|
; for a dw.
|
|
; If [wMobileAPIIndex] not in {MOBILEAPI_06, MOBILEAPI_07, MOBILEAPI_08},
|
|
; clear [wc835].
|
|
push de
|
|
ld a, [wMobileAPIIndex]
|
|
cp MOBILEAPI_06
|
|
jr z, .noreset
|
|
cp MOBILEAPI_07
|
|
jr z, .noreset
|
|
cp MOBILEAPI_08
|
|
jr z, .noreset
|
|
xor a
|
|
ld [wc835], a
|
|
ld a, [wMobileAPIIndex]
|
|
.noreset
|
|
; Get the pointer
|
|
ld d, 0
|
|
ld e, a
|
|
ld hl, .dw
|
|
add hl, de
|
|
; Store the low byte in [wMobileAPIIndex]
|
|
ld a, [hli]
|
|
ld [wMobileAPIIndex], a
|
|
ld a, [hl]
|
|
; restore de
|
|
pop de
|
|
ld hl, ReturnMobileAPI ; return here
|
|
push hl
|
|
; If the destination function is not Function110236,
|
|
; call Function1100b4.
|
|
ld h, a
|
|
ld a, [wMobileAPIIndex]
|
|
ld l, a
|
|
push hl
|
|
ld a, LOW(Function110236)
|
|
cp l
|
|
jr nz, .okay
|
|
ld a, HIGH(Function110236)
|
|
cp h
|
|
.okay
|
|
call nz, Function1100b4
|
|
ld hl, wc986
|
|
ld a, [hli]
|
|
ld h, [hl]
|
|
ld l, a
|
|
ret ; indirectly jump to the function loaded from the dw, which returns to ReturnMobileAPI.
|
|
|
|
.dw
|
|
dw Function110115
|
|
dw Function110236
|
|
dw Function110291
|
|
dw Function1103ac
|
|
dw Function110438
|
|
dw Function1104c6
|
|
dw Function110578
|
|
dw Function110582
|
|
dw Function11058c
|
|
dw Function1105dd
|
|
dw Function1106ef
|
|
dw Function110757
|
|
dw Function1107ff
|
|
dw Function110899
|
|
dw Function1108a3
|
|
dw Function110905
|
|
dw Function1109a4
|
|
dw Function1109f9
|
|
dw Function110a5b
|
|
dw Function110c3c
|
|
dw Function110c9e
|
|
dw Function110ddd
|
|
dw Function1111fe
|
|
dw Function1113fe
|
|
dw MobileAPI_SetTimer
|
|
dw MobileAPI_TelephoneStatus
|
|
dw Function111596
|
|
dw Function11162d
|
|
dw Function11032c
|
|
dw Function11148c
|
|
dw Function111610
|
|
dw Function1103ac
|
|
dw Function110235
|
|
dw Function111540
|
|
|
|
Function1100b4:
|
|
push bc
|
|
.loop
|
|
di
|
|
ld a, [wc800]
|
|
ld b, a
|
|
ld a, [wc80b]
|
|
ld c, a
|
|
ld a, [wc822]
|
|
ei
|
|
or a
|
|
bit 0, a
|
|
jr z, .done
|
|
ld a, b
|
|
or a
|
|
jr nz, .loop
|
|
ld a, c
|
|
cp $4
|
|
jr z, .loop
|
|
xor a
|
|
ld [wc80f], a
|
|
ld hl, wc821
|
|
set 1, [hl]
|
|
scf
|
|
.done
|
|
pop bc
|
|
ret
|
|
|
|
MobileAPI_SetTimer:
|
|
xor a
|
|
ldh [rTAC], a
|
|
ld e, c
|
|
ld b, a
|
|
ld hl, Unknown_112089
|
|
add hl, bc
|
|
ld c, [hl]
|
|
inc hl
|
|
ldh a, [rKEY1]
|
|
bit 7, a
|
|
jr nz, .asm_1100f9
|
|
ld a, e
|
|
sra c
|
|
ld a, e
|
|
cp $4
|
|
jr nc, .asm_1100f9
|
|
ld de, $000f
|
|
add hl, de
|
|
|
|
.asm_1100f9
|
|
ld a, c
|
|
ldh [rTMA], a
|
|
ldh [rTIMA], a
|
|
ld a, [hli]
|
|
ld [wc81f], a
|
|
ld [wc816], a
|
|
ld a, [hl]
|
|
ld [wc820], a
|
|
ld [wc815], a
|
|
ld c, LOW(rTAC)
|
|
ld a, rTAC_65536_HZ
|
|
ldh [c], a
|
|
ld a, 1 << rTAC_ON | rTAC_65536_HZ
|
|
ldh [c], a
|
|
ret
|
|
|
|
Function110115:
|
|
ld hl, wc821
|
|
bit 1, [hl]
|
|
jr nz, .asm_110120
|
|
xor a
|
|
ld l, a
|
|
ld h, a
|
|
ret
|
|
|
|
.asm_110120
|
|
res 1, [hl]
|
|
ld a, [wc80f]
|
|
ld e, a
|
|
cp $22
|
|
jr z, .asm_11016a
|
|
cp $23
|
|
jr z, .asm_11016a
|
|
cp $25
|
|
jr z, .asm_11016a
|
|
cp $26
|
|
jr z, .asm_11018e
|
|
cp $24
|
|
jr z, .asm_1101a4
|
|
cp $30
|
|
jp z, .asm_1101f8
|
|
cp $31
|
|
jp z, .asm_11020d
|
|
cp $32
|
|
jr z, .asm_1101a4
|
|
cp $33
|
|
jr z, .asm_1101a4
|
|
swap a
|
|
and $f
|
|
cp $1
|
|
jr z, .asm_11016a
|
|
cp $0
|
|
jr z, .asm_11015d
|
|
.asm_110158
|
|
ld hl, 0
|
|
.asm_11015b
|
|
ld a, e
|
|
ret
|
|
|
|
.asm_11015d
|
|
ld a, e
|
|
add $15
|
|
ld e, a
|
|
xor a
|
|
ld hl, wc810
|
|
ld [hli], a
|
|
ld [hl], a
|
|
ld hl, wc821
|
|
|
|
.asm_11016a
|
|
xor a
|
|
ld [wc86d], a
|
|
ld [hl], a
|
|
ld [wc807], a
|
|
inc a
|
|
ld [wc86a], a
|
|
ld hl, wc822
|
|
res 0, [hl]
|
|
res 5, [hl]
|
|
ld hl, wMobileSDK_PacketBuffer
|
|
xor a
|
|
ld [hli], a
|
|
inc a
|
|
ld [hl], a
|
|
call Function111686
|
|
ld a, $15
|
|
cp e
|
|
jr nz, .asm_110158
|
|
jr .asm_1101d7
|
|
|
|
.asm_11018e
|
|
ld a, [wc821]
|
|
bit 4, a
|
|
ld a, $1
|
|
jr z, .asm_11016a
|
|
ld a, $2
|
|
ld [wc86a], a
|
|
ld a, [wc805]
|
|
ld [wc807], a
|
|
jr .asm_110158
|
|
|
|
.asm_1101a4
|
|
res 0, [hl]
|
|
ld hl, wc822
|
|
res 5, [hl]
|
|
ld hl, wc821
|
|
res 7, [hl]
|
|
res 6, [hl]
|
|
set 5, [hl]
|
|
xor a
|
|
ld [wc86d], a
|
|
ld [wc9af], a
|
|
ld a, $2
|
|
ld [wc86a], a
|
|
ld a, $4
|
|
ld [wc807], a
|
|
ld a, e
|
|
cp $32
|
|
jr z, .asm_1101d7
|
|
cp $33
|
|
jr z, .asm_1101d7
|
|
cp $30
|
|
jr z, .asm_1101d7
|
|
cp $31
|
|
jp nz, .asm_110158
|
|
|
|
.asm_1101d7
|
|
ld hl, wc810
|
|
ld a, [hli]
|
|
ld h, [hl]
|
|
ld l, a
|
|
ld a, $32
|
|
cp e
|
|
jp nz, .asm_11015b
|
|
ld a, $3
|
|
cp h
|
|
jp nz, .asm_11015b
|
|
dec a
|
|
cp l
|
|
jr z, .asm_1101f2
|
|
dec a
|
|
cp l
|
|
jp nz, .asm_11015b
|
|
|
|
.asm_1101f2
|
|
ld bc, wc880
|
|
jp .asm_11015b
|
|
|
|
.asm_1101f8
|
|
ld a, [wMobileSDK_ReceivePacketBuffer]
|
|
cp $a4
|
|
jr z, .asm_1101a4
|
|
ld a, $3
|
|
ld [wc86a], a
|
|
ld hl, wc810
|
|
ld a, [hli]
|
|
ld h, [hl]
|
|
ld l, a
|
|
jp .asm_11015b
|
|
|
|
.asm_11020d
|
|
ld a, [wc810]
|
|
cp $2
|
|
jr z, .asm_1101a4
|
|
cp $3
|
|
jr z, .asm_1101a4
|
|
ld a, $4
|
|
ld [wc86a], a
|
|
ld hl, wc810
|
|
ld a, [hli]
|
|
ld h, [hl]
|
|
ld l, a
|
|
jp .asm_11015b
|
|
|
|
Function110226:
|
|
ld a, $21
|
|
|
|
Function110228:
|
|
ld [wc80f], a
|
|
ld hl, wc821
|
|
set 1, [hl]
|
|
ret
|
|
|
|
Function110231:
|
|
ld a, $20
|
|
jr Function110228
|
|
|
|
Function110235:
|
|
nop
|
|
|
|
Function110236:
|
|
ld a, [wMobileAPIIndex]
|
|
push af
|
|
push bc
|
|
push hl
|
|
xor a
|
|
ldh [rTAC], a
|
|
ldh a, [rIF]
|
|
and $1b
|
|
ldh [rIF], a
|
|
call ResetReceivePacketBuffer
|
|
ld bc, $0452
|
|
ld hl, wc800
|
|
.asm_11024e
|
|
xor a
|
|
ld [hli], a
|
|
dec bc
|
|
ld a, c
|
|
or b
|
|
jr nz, .asm_11024e
|
|
ld a, [wc822]
|
|
set 6, a
|
|
ld [wc822], a
|
|
pop hl
|
|
ld a, l
|
|
ld [wc981], a
|
|
ld a, h
|
|
ld [wc982], a
|
|
pop bc
|
|
ld hl, wc983
|
|
ld a, c
|
|
ld [hli], a
|
|
ld a, b
|
|
ld [hl], a
|
|
ld hl, wc86e
|
|
ld a, e
|
|
ld [hli], a
|
|
ld [hl], d
|
|
xor a
|
|
ld [wc819], a
|
|
ld c, $c
|
|
call MobileAPI_SetTimer
|
|
call Function1104b0
|
|
pop af
|
|
cp $35
|
|
jr nz, .asm_110289
|
|
ld a, $2b
|
|
jr .asm_11028b
|
|
|
|
.asm_110289
|
|
ld a, $a
|
|
|
|
.asm_11028b
|
|
ld [wc86a], a
|
|
jp Function110432
|
|
|
|
Function110291:
|
|
ld a, [wc821]
|
|
bit 1, a
|
|
jr z, .asm_1102a6
|
|
ld a, [wc80f]
|
|
cp $14
|
|
jr z, .asm_1102b3
|
|
cp $25
|
|
jr z, .asm_1102b3
|
|
ld a, [wc821]
|
|
|
|
.asm_1102a6
|
|
bit 0, a
|
|
jp nz, Function110226
|
|
ld a, [wc86a]
|
|
cp $1
|
|
jp nz, Function110226
|
|
|
|
.asm_1102b3
|
|
xor a
|
|
ldh [rTAC], a
|
|
xor a
|
|
ld [wc819], a
|
|
ld a, l
|
|
ld b, h
|
|
ld hl, wc880
|
|
ld [hli], a
|
|
ld a, b
|
|
ld [hli], a
|
|
ld a, c
|
|
ld [hli], a
|
|
ld a, e
|
|
ld [hli], a
|
|
ld a, d
|
|
ld [hl], a
|
|
ld a, [wc870]
|
|
ld c, a
|
|
call MobileAPI_SetTimer
|
|
ld hl, wc829
|
|
ld a, LOW(wc872)
|
|
ld [hli], a
|
|
ld a, HIGH(wc872)
|
|
ld [hl], a
|
|
ld de, wMobileSDK_PacketBuffer
|
|
ld b, MobilePacket_WriteConfigurationData.End - MobilePacket_WriteConfigurationData
|
|
ld hl, MobilePacket_WriteConfigurationData
|
|
call MobileSDK_CopyBytes
|
|
ld a, [wc882]
|
|
ld c, a
|
|
or a
|
|
jr z, .asm_1102f2
|
|
cp $80
|
|
jr nc, .asm_1102f2
|
|
ld c, $80
|
|
jr .asm_1102f4
|
|
|
|
.asm_1102f2
|
|
ld a, $80
|
|
|
|
.asm_1102f4
|
|
ld b, a
|
|
inc a
|
|
ld [de], a
|
|
inc de
|
|
ld a, $80
|
|
add c
|
|
ld hl, wc882
|
|
ld [hli], a
|
|
ld a, [hl]
|
|
ld [de], a
|
|
inc de
|
|
add $80
|
|
ld [hl], a
|
|
ld hl, wc880
|
|
ld a, [hli]
|
|
ld h, [hl]
|
|
ld l, a
|
|
ld c, b
|
|
call MobileSDK_CopyBytes
|
|
ld a, l
|
|
ld [wc880], a
|
|
ld a, h
|
|
ld [wc880 + 1], a
|
|
ld b, c
|
|
inc b
|
|
call Function111f63
|
|
call Function1104b0
|
|
ld a, $2e
|
|
ld [wc86a], a
|
|
ld hl, wc821
|
|
res 1, [hl]
|
|
set 0, [hl]
|
|
ret
|
|
|
|
Function11032c:
|
|
ld a, [wc821]
|
|
bit 1, a
|
|
jp nz, Function110226
|
|
bit 0, a
|
|
jp nz, Function110226
|
|
ld a, [wc86a]
|
|
cp $1
|
|
jp nz, Function110226
|
|
xor a
|
|
ldh [rTAC], a
|
|
ld [wc819], a
|
|
ld hl, wc880
|
|
ld a, e
|
|
ld [hli], a
|
|
ld a, d
|
|
ld [hli], a
|
|
ld a, c
|
|
ld [hli], a
|
|
ld a, b
|
|
ld [hli], a
|
|
ld hl, wc829
|
|
ld a, e
|
|
ld [hli], a
|
|
ld a, d
|
|
ld [hl], a
|
|
ld a, [wc870]
|
|
ld c, a
|
|
call MobileAPI_SetTimer
|
|
ld de, wMobileSDK_PacketBuffer
|
|
ld b, 6 ; header size
|
|
ld hl, MobilePacket_ReadConfigurationDataPart1
|
|
call MobileSDK_CopyBytes
|
|
ld a, [wc883]
|
|
ld [de], a
|
|
inc de
|
|
ld a, [wc882]
|
|
ld c, a
|
|
or a
|
|
jr z, .asm_11037f
|
|
cp $80
|
|
jr nc, .asm_11037f
|
|
ld c, $80
|
|
jr .asm_110381
|
|
|
|
.asm_11037f
|
|
ld a, $80
|
|
|
|
.asm_110381
|
|
ld [de], a
|
|
inc de
|
|
ld b, $2
|
|
call Function111f63
|
|
call Function1104b0
|
|
ld a, $2d
|
|
ld [wc86a], a
|
|
jp Function110432
|
|
|
|
Function110393:
|
|
ld c, LOW(rIE)
|
|
ldh a, [c]
|
|
or (1 << SERIAL) | (1 << TIMER)
|
|
ldh [c], a
|
|
ret
|
|
|
|
Function11039a:
|
|
ld b, $0
|
|
.asm_11039c
|
|
inc b
|
|
jr z, .asm_1103a3
|
|
ld a, [hli]
|
|
or a
|
|
jr nz, .asm_11039c
|
|
|
|
.asm_1103a3
|
|
ld a, b
|
|
cp c
|
|
jr nc, .asm_1103aa
|
|
cp $2
|
|
ret
|
|
|
|
.asm_1103aa
|
|
scf
|
|
ret
|
|
|
|
Function1103ac:
|
|
ld a, [wc821]
|
|
bit 0, a
|
|
jp nz, Function110226
|
|
ld a, [wc86a]
|
|
cp $1
|
|
jp nz, Function110226
|
|
push hl
|
|
ld c, $15
|
|
call Function11039a
|
|
jr c, .asm_1103d2
|
|
ld c, $22
|
|
call Function11039a
|
|
jr c, .asm_1103d2
|
|
ld c, $12
|
|
call Function11039a
|
|
jr nc, .isp_login
|
|
|
|
.asm_1103d2
|
|
pop hl
|
|
jp Function110231
|
|
|
|
.isp_login
|
|
xor a
|
|
ldh [rTAC], a
|
|
ld [wc86d], a
|
|
ld [wc97a], a
|
|
ld a, [wc870]
|
|
ld c, a
|
|
call MobileAPI_SetTimer
|
|
ld hl, wc829
|
|
ld a, LOW(wc880)
|
|
ld [hli], a
|
|
ld a, HIGH(wc880)
|
|
ld [hl], a
|
|
call Mobile_DialTelephone
|
|
push hl
|
|
ld b, a
|
|
call Function111f63
|
|
ld b, MobilePacket_ISPLogin.End - MobilePacket_ISPLogin
|
|
ld hl, MobilePacket_ISPLogin
|
|
ld de, wMobileSDK_PacketBuffer + 45
|
|
call MobileSDK_CopyBytes
|
|
inc de
|
|
inc de
|
|
pop hl
|
|
ld bc, 0
|
|
call MobileSDK_CopyString
|
|
ld a, c
|
|
ld [wMobileSDK_PacketBuffer + 51], a
|
|
ld [wc86b], a
|
|
push de
|
|
inc de
|
|
ld bc, 0
|
|
ld a, $20
|
|
call MobileSDK_CopyStringLen
|
|
ld l, e
|
|
ld h, d
|
|
pop de
|
|
ld a, c
|
|
ld [de], a
|
|
ld a, [wc86b]
|
|
add c
|
|
add $a
|
|
ld [wMobileSDK_PacketBuffer + 50], a
|
|
call Function1104b0
|
|
ld a, $b
|
|
ld [wc86a], a
|
|
|
|
Function110432:
|
|
ld hl, wc821
|
|
set 0, [hl]
|
|
ret
|
|
|
|
Function110438:
|
|
ld a, [wc821]
|
|
bit 0, a
|
|
jp nz, Function110226
|
|
ld a, [wc86a]
|
|
cp $1
|
|
jp nz, Function110226
|
|
push hl
|
|
ld c, $15
|
|
call Function11039a
|
|
jr nc, .asm_110454
|
|
pop hl
|
|
jp Function110231
|
|
|
|
.asm_110454
|
|
xor a
|
|
ldh [rTAC], a
|
|
ld [wc97a], a
|
|
ld a, [wc870]
|
|
ld c, a
|
|
call MobileAPI_SetTimer
|
|
ld hl, wc98f
|
|
ld a, LOW(wc880 + 1)
|
|
ld [hli], a
|
|
ld a, HIGH(wc880 + 1)
|
|
ld [hli], a
|
|
xor a
|
|
ld [hli], a
|
|
ld [hli], a
|
|
ld [hli], a
|
|
ld [hl], a
|
|
ld a, $ff
|
|
ld [wc86e], a
|
|
call Mobile_DialTelephone
|
|
ld b, a
|
|
call Function111f63
|
|
call Function1104b0
|
|
ld a, $c
|
|
ld [wc86a], a
|
|
jr Function110432
|
|
|
|
Mobile_DialTelephone:
|
|
ld de, wMobileSDK_PacketBuffer
|
|
ld hl, MobilePacket_DialTelephone
|
|
ld b, MobilePacket_DialTelephone.End - MobilePacket_DialTelephone
|
|
call MobileSDK_CopyBytes
|
|
pop bc
|
|
pop hl
|
|
push bc
|
|
ld a, [wMobileSDK_AdapterType]
|
|
cp $8c
|
|
jr c, .asm_11049e
|
|
ld a, $3
|
|
jr .asm_1104a1
|
|
|
|
.asm_11049e
|
|
ld a, [wc871]
|
|
|
|
.asm_1104a1
|
|
ld [de], a
|
|
inc de
|
|
ld bc, $0001
|
|
ld a, MOBILE_PHONE_NUMBER_LENGTH
|
|
call MobileSDK_CopyStringLen
|
|
ld a, c
|
|
ld [wMobileSDK_PacketBuffer + 5], a
|
|
ret
|
|
|
|
Function1104b0:
|
|
xor a
|
|
ld [wMobileSDK_SendCommandID], a
|
|
call Function110393
|
|
xor a
|
|
ld [wc86b], a
|
|
ld de, MobilePacket_Idle.End - MobilePacket_Idle
|
|
ld hl, MobilePacket_Idle
|
|
ld b, 1
|
|
jp PacketSendBytes
|
|
|
|
Function1104c6:
|
|
ld a, [wc821]
|
|
bit 0, a
|
|
jp nz, Function110226
|
|
ld a, [wc86a]
|
|
cp $4
|
|
jr z, .asm_110526
|
|
cp $3
|
|
jr z, .asm_110526
|
|
cp $2
|
|
jp nz, Function110226
|
|
ld hl, wc822
|
|
bit 4, [hl]
|
|
jr nz, .asm_110507
|
|
ld a, $2
|
|
ld [wc86b], a
|
|
ld a, MOBILE_COMMAND_ISP_LOGOUT | $80
|
|
ld [wMobileSDK_SendCommandID], a
|
|
ld de, MobilePacket_ISPLogout.End - MobilePacket_ISPLogout
|
|
ld hl, MobilePacket_ISPLogout
|
|
ld b, $5
|
|
call PacketSendBytes
|
|
.asm_1104fa
|
|
ld a, $e
|
|
ld [wc86a], a
|
|
ld hl, wc821
|
|
set 0, [hl]
|
|
res 3, [hl]
|
|
ret
|
|
|
|
.asm_110507
|
|
ld a, [wc807]
|
|
or a
|
|
jr nz, .asm_11051f
|
|
ld a, $1
|
|
ld [wc86a], a
|
|
ld hl, wc822
|
|
res 4, [hl]
|
|
ld hl, wc821
|
|
ld a, [hl]
|
|
and $17
|
|
ld [hl], a
|
|
ret
|
|
|
|
.asm_11051f
|
|
ld a, $2
|
|
ld [wc86b], a
|
|
jr .asm_1104fa
|
|
|
|
.asm_110526
|
|
call Function112724
|
|
xor a
|
|
ld [wc86b], a
|
|
ld de, wMobileSDK_PacketBuffer + 32
|
|
ld hl, MobilePacket_TransferData
|
|
ld b, $6
|
|
call MobileSDK_CopyBytes
|
|
ld a, [wc86c]
|
|
ld [de], a
|
|
inc de
|
|
ld b, $1
|
|
call Function111f63
|
|
ld de, wMobileSDK_PacketBuffer
|
|
ld hl, MobilePacket_TransferData
|
|
ld b, $5
|
|
call MobileSDK_CopyBytes
|
|
ld a, $7
|
|
ld [de], a
|
|
inc de
|
|
ld a, [wc86c]
|
|
ld [de], a
|
|
inc de
|
|
ld bc, $0001
|
|
ld hl, Unknown_1120c1
|
|
call MobileSDK_CopyString
|
|
ld b, c
|
|
call Function111f63
|
|
ld a, MOBILE_COMMAND_TRANSFER_DATA | $80
|
|
ld [wMobileSDK_SendCommandID], a
|
|
ld hl, wMobileSDK_PacketBuffer
|
|
ld b, $5
|
|
call PacketSendBytes
|
|
ld a, $e
|
|
ld [wc86a], a
|
|
jp Function110432
|
|
|
|
Function110578:
|
|
ld b, $25
|
|
call Function110596
|
|
or a
|
|
jp nz, Function1135ba
|
|
ret
|
|
|
|
Function110582:
|
|
ld b, $26
|
|
call Function110596
|
|
or a
|
|
jp nz, Function11359d
|
|
ret
|
|
|
|
Function11058c:
|
|
ld b, $27
|
|
call Function110596
|
|
or a
|
|
jp nz, Function1135ad
|
|
ret
|
|
|
|
Function110596:
|
|
ld a, [wc821]
|
|
bit 0, a
|
|
jr nz, .asm_1105d9
|
|
ld a, [wc86a]
|
|
cp $1
|
|
jr nz, .asm_1105d9
|
|
ld a, [wc835]
|
|
or a
|
|
ret nz
|
|
ld a, b
|
|
ld [wcb36], a
|
|
xor a
|
|
ldh [rTAC], a
|
|
ld a, e
|
|
ld [wc86e], a
|
|
ld a, d
|
|
ld [wc86e + 1], a
|
|
xor a
|
|
ld [wc819], a
|
|
ld a, [wc870]
|
|
ld c, a
|
|
call MobileAPI_SetTimer
|
|
ld hl, wc829
|
|
ld a, LOW(wc880)
|
|
ld [hli], a
|
|
ld a, HIGH(wc880)
|
|
ld [hl], a
|
|
call Function1104b0
|
|
ld a, [wcb36]
|
|
ld [wc86a], a
|
|
xor a
|
|
jp Function110432
|
|
|
|
.asm_1105d9
|
|
pop hl
|
|
jp Function110226
|
|
|
|
Function1105dd:
|
|
ld a, [wc821]
|
|
bit 0, a
|
|
jp nz, Function110226
|
|
ld a, [wc86a]
|
|
cp $1
|
|
jp nz, Function110226
|
|
xor a
|
|
ldh [rTAC], a
|
|
ld a, [wc870]
|
|
ld c, a
|
|
call MobileAPI_SetTimer
|
|
ld hl, wc98f
|
|
ld a, LOW(wc880 + 1)
|
|
ld [hli], a
|
|
ld a, HIGH(wc880 + 1)
|
|
ld [hli], a
|
|
xor a
|
|
ld [hli], a
|
|
ld [hli], a
|
|
ld [hli], a
|
|
ld [hl], a
|
|
ld a, $ff
|
|
ld [wc86e], a
|
|
call Function1104b0
|
|
ld a, $d
|
|
ld [wc86a], a
|
|
jp Function110432
|
|
|
|
Function110615:
|
|
ld b, $15
|
|
ld [wc86e], a
|
|
or a
|
|
jr z, .asm_110625
|
|
dec a
|
|
jr z, .asm_11062c
|
|
dec a
|
|
jp z, .asm_1106c1
|
|
ret
|
|
|
|
.asm_110625
|
|
ld a, $19
|
|
ld hl, wc83e
|
|
jr .asm_110631
|
|
|
|
.asm_11062c
|
|
ld a, $6e
|
|
ld hl, wc852
|
|
|
|
.asm_110631
|
|
push hl
|
|
push bc
|
|
ld [wMobileSDK_PacketBuffer + 91], a
|
|
ld hl, wc829
|
|
ld a, LOW(wMobileSDK_PacketBuffer + 86)
|
|
ld [hli], a
|
|
ld a, HIGH(wMobileSDK_PacketBuffer + 86)
|
|
ld [hl], a
|
|
xor a
|
|
ld [wMobileSDK_PacketBuffer + 90], a
|
|
ld [wc86b], a
|
|
ld [wc9af], a
|
|
ld de, wMobileSDK_PacketBuffer + 80
|
|
ld hl, MobilePacket_OpenTCPConnection
|
|
ld b, MobilePacket_OpenTCPConnection.End - MobilePacket_OpenTCPConnection
|
|
call MobileSDK_CopyBytes
|
|
ld de, wMobileSDK_PacketBuffer
|
|
ld hl, MobilePacket_DNSQuery
|
|
ld b, MobilePacket_DNSQuery.End - MobilePacket_DNSQuery
|
|
call MobileSDK_CopyBytes
|
|
pop bc
|
|
pop hl
|
|
push de
|
|
inc de
|
|
ld a, b
|
|
ld bc, 0
|
|
call MobileSDK_CopyStringLen
|
|
ld a, c
|
|
pop hl
|
|
ld [hl], a
|
|
ld b, c
|
|
call Function111f63
|
|
ld a, [wc86e]
|
|
cp $2
|
|
jr nz, .asm_1106ac
|
|
ld a, [wMobileSDK_ReceivePacketBuffer + 128]
|
|
or a
|
|
jr z, .asm_1106ac
|
|
ld hl, wc995
|
|
ld a, [hli]
|
|
cp $99
|
|
jr nz, .asm_1106ac
|
|
ld a, [hli]
|
|
cp $66
|
|
jr nz, .asm_1106ac
|
|
ld a, [hli]
|
|
cp $23
|
|
jr nz, .asm_1106ac
|
|
ld a, $2
|
|
ld [wc86e], a
|
|
dec a
|
|
ld [wc86b], a
|
|
ld a, $a3
|
|
ld de, $0010
|
|
ld hl, wc995
|
|
call Function111f02
|
|
ld a, $f
|
|
ld [wc86a], a
|
|
jp Function110432
|
|
|
|
.asm_1106ac
|
|
ld hl, wMobileSDK_PacketBuffer
|
|
ld a, MOBILE_COMMAND_DNS_QUERY | $80
|
|
ld [wMobileSDK_SendCommandID], a
|
|
ld b, $5
|
|
call PacketSendBytes
|
|
ld a, $f
|
|
ld [wc86a], a
|
|
jp Function110432
|
|
|
|
.asm_1106c1
|
|
ld b, $50
|
|
ld hl, wc876
|
|
ld a, [hli]
|
|
ld h, [hl]
|
|
ld l, a
|
|
ld de, $0007
|
|
add hl, de
|
|
ld de, wc8ff
|
|
.asm_1106d0
|
|
ld a, [hli]
|
|
ld [de], a
|
|
cp $2f
|
|
jr z, .asm_1106da
|
|
inc de
|
|
dec b
|
|
jr nz, .asm_1106d0
|
|
|
|
.asm_1106da
|
|
xor a
|
|
ld [de], a
|
|
dec hl
|
|
ld a, l
|
|
ld [wc876], a
|
|
ld a, h
|
|
ld [wc877], a
|
|
ld hl, wc8ff
|
|
ld a, $50
|
|
ld b, $40
|
|
jp .asm_110631
|
|
|
|
Function1106ef:
|
|
ld a, [wc821]
|
|
bit 0, a
|
|
jp nz, Function110226
|
|
ld a, [wc86a]
|
|
cp $2
|
|
jp nz, Function110226
|
|
ld a, [wc86d]
|
|
or a
|
|
jp nz, Function110226
|
|
push hl
|
|
ld c, $20
|
|
call Function11039a
|
|
jr nc, .asm_110712
|
|
pop hl
|
|
jp Function110231
|
|
|
|
.asm_110712
|
|
xor a
|
|
ld [wc86b], a
|
|
ld de, wMobileSDK_PacketBuffer + 96
|
|
ld hl, MobilePacket_TransferData
|
|
ld b, $6
|
|
call MobileSDK_CopyBytes
|
|
ld de, wMobileSDK_PacketBuffer + 112
|
|
ld hl, MobilePacket_TransferData
|
|
ld b, $5
|
|
call MobileSDK_CopyBytes
|
|
inc de
|
|
inc de
|
|
ld bc, $0001
|
|
ld hl, Unknown_11209e
|
|
call MobileSDK_CopyString
|
|
pop hl
|
|
push hl
|
|
ld b, $ff
|
|
.asm_11073b
|
|
inc b
|
|
ld a, [hli]
|
|
or a
|
|
jr z, .asm_110744
|
|
cp $40
|
|
jr nz, .asm_11073b
|
|
|
|
.asm_110744
|
|
ld a, c
|
|
add b
|
|
add $2
|
|
ld [wMobileSDK_PacketBuffer + 117], a
|
|
pop hl
|
|
call MobileSDK_CopyBytes
|
|
call Function11295e
|
|
ld a, $0
|
|
jp Function110615
|
|
|
|
Function110757:
|
|
ld a, [wc821]
|
|
bit 0, a
|
|
jp nz, Function110226
|
|
ld a, [wc86a]
|
|
cp $3
|
|
jp nz, Function110226
|
|
ld a, [wc98a]
|
|
or a
|
|
jp nz, Function110226
|
|
push hl
|
|
.asm_11076f
|
|
ld a, [hli]
|
|
or a
|
|
jr nz, .asm_11076f
|
|
ld a, [hl]
|
|
or a
|
|
jp z, .asm_1107fb
|
|
pop hl
|
|
push hl
|
|
ld c, $20
|
|
call Function11039a
|
|
jr c, .asm_1107fb
|
|
.asm_110781
|
|
ld c, $81
|
|
call Function11039a
|
|
jr c, .asm_1107fb
|
|
xor a
|
|
cp [hl]
|
|
jr nz, .asm_110781
|
|
call Function112724
|
|
xor a
|
|
ld [wc86b], a
|
|
ld de, wMobileSDK_PacketBuffer
|
|
ld hl, MobilePacket_TransferData
|
|
ld b, $6
|
|
call MobileSDK_CopyBytes
|
|
ld a, [wc86c]
|
|
ld [de], a
|
|
inc de
|
|
ld b, $1
|
|
call Function111f63
|
|
ld de, wMobileSDK_PacketBuffer + 12
|
|
ld hl, MobilePacket_TransferData
|
|
ld b, $5
|
|
call MobileSDK_CopyBytes
|
|
ld de, wMobileSDK_PacketBuffer + 18
|
|
ld a, [wc86c]
|
|
ld [de], a
|
|
inc de
|
|
ld bc, $0001
|
|
ld de, wMobileSDK_PacketBuffer + 19
|
|
ld hl, Unknown_1120a4
|
|
call MobileSDK_CopyString
|
|
pop hl
|
|
call MobileSDK_CopyString
|
|
ld a, $3e
|
|
ld [de], a
|
|
inc de
|
|
inc c
|
|
ld a, l
|
|
ld [wc87c], a
|
|
ld a, h
|
|
ld [wc87d], a
|
|
call Function11295e
|
|
ld a, c
|
|
ld [wMobileSDK_PacketBuffer + 17], a
|
|
ld b, c
|
|
call Function111f63
|
|
ld a, MOBILE_COMMAND_TRANSFER_DATA | $80
|
|
ld [wMobileSDK_SendCommandID], a
|
|
ld hl, wMobileSDK_PacketBuffer + 12
|
|
ld d, $0
|
|
ld e, c
|
|
ld b, $5
|
|
call PacketSendBytes
|
|
ld a, $15
|
|
ld [wc86a], a
|
|
jp Function110432
|
|
|
|
.asm_1107fb
|
|
pop hl
|
|
jp Function110231
|
|
|
|
Function1107ff:
|
|
ld a, [wc821]
|
|
bit 0, a
|
|
jp nz, Function110226
|
|
ld a, [wc86a]
|
|
cp $3
|
|
jp nz, Function110226
|
|
ld a, [wc98a]
|
|
or a
|
|
jp z, Function110226
|
|
ld a, c
|
|
or b
|
|
jp z, Function110231
|
|
ld a, l
|
|
ld [wc87c], a
|
|
ld a, h
|
|
ld [wc87d], a
|
|
ld hl, wc87e
|
|
ld a, c
|
|
ld [hli], a
|
|
ld a, b
|
|
ld [hli], a
|
|
ld a, d
|
|
ld [wc86e + 1], a
|
|
call Function112724
|
|
ld hl, wc98a
|
|
ld a, [hl]
|
|
and $1
|
|
xor $1
|
|
ld [wc86b], a
|
|
inc [hl]
|
|
ld de, wMobileSDK_PacketBuffer
|
|
ld hl, MobilePacket_TransferData
|
|
ld b, $6
|
|
call MobileSDK_CopyBytes
|
|
ld de, wMobileSDK_PacketBuffer + 6
|
|
ld a, [wc86c]
|
|
ld [de], a
|
|
inc de
|
|
ld b, $1
|
|
call Function111f63
|
|
ld de, wMobileSDK_PacketBuffer + 150
|
|
ld hl, MobilePacket_TransferData
|
|
ld b, $5
|
|
call MobileSDK_CopyBytes
|
|
ld de, wMobileSDK_PacketBuffer + 156
|
|
ld a, [wc86c]
|
|
ld [de], a
|
|
ld a, [wc86b]
|
|
or a
|
|
jr nz, .asm_110891
|
|
ld bc, $0001
|
|
ld de, wMobileSDK_PacketBuffer + 157
|
|
ld hl, Unknown_1120ba
|
|
call MobileSDK_CopyString
|
|
ld a, c
|
|
ld [wMobileSDK_PacketBuffer + 155], a
|
|
ld b, c
|
|
call Function111f63
|
|
ld a, MOBILE_COMMAND_TRANSFER_DATA | $80
|
|
ld [wMobileSDK_SendCommandID], a
|
|
ld de, $0011
|
|
ld hl, wMobileSDK_PacketBuffer + 150
|
|
ld b, $5
|
|
call PacketSendBytes
|
|
|
|
.asm_110891
|
|
ld a, $16
|
|
ld [wc86a], a
|
|
jp Function110432
|
|
|
|
Function110899:
|
|
ld a, [wc86a]
|
|
cp $3
|
|
jp nz, Function110226
|
|
jr Function1108ab
|
|
|
|
Function1108a3:
|
|
ld a, [wc86a]
|
|
cp $4
|
|
jp nz, Function110226
|
|
|
|
Function1108ab:
|
|
ld hl, wc821
|
|
bit 0, [hl]
|
|
jp nz, Function110226
|
|
call Function112724
|
|
xor a
|
|
ld [wc86b], a
|
|
ld de, wMobileSDK_PacketBuffer + 32
|
|
ld hl, MobilePacket_TransferData
|
|
ld b, $6
|
|
call MobileSDK_CopyBytes
|
|
ld a, [wc86c]
|
|
ld [de], a
|
|
inc de
|
|
ld b, $1
|
|
call Function111f63
|
|
ld de, wMobileSDK_PacketBuffer
|
|
ld hl, MobilePacket_TransferData
|
|
ld b, $5
|
|
call MobileSDK_CopyBytes
|
|
ld a, $7
|
|
ld [de], a
|
|
inc de
|
|
ld a, [wc86c]
|
|
ld [de], a
|
|
inc de
|
|
ld bc, $0001
|
|
ld hl, Unknown_1120c1
|
|
call MobileSDK_CopyString
|
|
ld b, c
|
|
call Function111f63
|
|
ld a, MOBILE_COMMAND_TRANSFER_DATA | $80
|
|
ld [wMobileSDK_SendCommandID], a
|
|
ld hl, wMobileSDK_PacketBuffer
|
|
ld b, $5
|
|
call PacketSendBytes
|
|
ld a, $17
|
|
ld [wc86a], a
|
|
jp Function110432
|
|
|
|
Function110905:
|
|
ld a, [wc821]
|
|
bit 0, a
|
|
jp nz, Function110226
|
|
ld a, [wc86a]
|
|
cp $2
|
|
jp nz, Function110226
|
|
ld a, [wc86d]
|
|
or a
|
|
jp nz, Function110226
|
|
xor a
|
|
ld [wc86b], a
|
|
push hl
|
|
ld c, $20
|
|
call Function11039a
|
|
jr c, .asm_11092f
|
|
ld c, $22
|
|
call Function11039a
|
|
jr nc, .asm_110933
|
|
|
|
.asm_11092f
|
|
pop hl
|
|
jp Function110231
|
|
|
|
.asm_110933
|
|
ld de, wMobileSDK_PacketBuffer + 96
|
|
ld hl, MobilePacket_TransferData
|
|
ld b, $5
|
|
call MobileSDK_CopyBytes
|
|
inc de
|
|
inc de
|
|
ld hl, Unknown_1120c8
|
|
call MobileSDK_CopyString
|
|
pop hl
|
|
push hl
|
|
ld b, $ff
|
|
.asm_11094a
|
|
inc b
|
|
ld a, [hli]
|
|
or a
|
|
jr z, .asm_110953
|
|
cp $40
|
|
jr nz, .asm_11094a
|
|
|
|
.asm_110953
|
|
ld a, b
|
|
add $6
|
|
ld c, a
|
|
ld [wMobileSDK_PacketBuffer + 101], a
|
|
pop hl
|
|
ld de, wMobileSDK_PacketBuffer + 108
|
|
call MobileSDK_CopyBytes
|
|
.asm_110961
|
|
ld a, [hli]
|
|
or a
|
|
jr nz, .asm_110961
|
|
call Function11295e
|
|
ld a, c
|
|
ld [wMobileSDK_PacketBuffer + 101], a
|
|
ld bc, $0006
|
|
ld de, wMobileSDK_PacketBuffer + 172
|
|
ld a, $20
|
|
call MobileSDK_CopyStringLen
|
|
call Function11295e
|
|
ld a, c
|
|
ld [wMobileSDK_PacketBuffer + 165], a
|
|
ld de, wMobileSDK_PacketBuffer + 160
|
|
ld hl, MobilePacket_TransferData
|
|
ld b, $5
|
|
call MobileSDK_CopyBytes
|
|
ld de, wMobileSDK_PacketBuffer + 167
|
|
ld hl, Unknown_1120ce
|
|
ld b, $5
|
|
call MobileSDK_CopyBytes
|
|
ld de, wMobileSDK_PacketBuffer + 128
|
|
ld hl, MobilePacket_TransferData
|
|
ld b, $6
|
|
call MobileSDK_CopyBytes
|
|
ld a, $1
|
|
jp Function110615
|
|
|
|
Function1109a4:
|
|
ld hl, wc821
|
|
bit 0, [hl]
|
|
jp nz, Function110226
|
|
ld a, [wc86a]
|
|
cp $4
|
|
jp nz, Function110226
|
|
ld a, e
|
|
ld [wc86e], a
|
|
ld a, d
|
|
ld [wc86e + 1], a
|
|
xor a
|
|
ld [wc86b], a
|
|
call Function112729
|
|
ld de, wMobileSDK_PacketBuffer
|
|
ld hl, MobilePacket_TransferData
|
|
ld b, $5
|
|
call MobileSDK_CopyBytes
|
|
ld a, $7
|
|
ld [de], a
|
|
inc de
|
|
ld a, [wc86c]
|
|
ld [de], a
|
|
inc de
|
|
ld bc, $0001
|
|
ld hl, Unknown_1120d4
|
|
call MobileSDK_CopyString
|
|
ld b, c
|
|
call Function111f63
|
|
ld a, MOBILE_COMMAND_TRANSFER_DATA | $80
|
|
ld [wMobileSDK_SendCommandID], a
|
|
ld hl, wMobileSDK_PacketBuffer
|
|
ld b, $5
|
|
call PacketSendBytes
|
|
ld a, $18
|
|
ld [wc86a], a
|
|
jp Function110432
|
|
|
|
Function1109f9:
|
|
ld a, [wc821]
|
|
bit 0, a
|
|
jp nz, Function110226
|
|
ld a, [wc86a]
|
|
cp $4
|
|
jp nz, Function110226
|
|
xor a
|
|
ld [wc86b], a
|
|
ld a, e
|
|
ld [wc86e], a
|
|
ld a, d
|
|
ld [wc86e + 1], a
|
|
ld a, l
|
|
or h
|
|
jp z, Function110231
|
|
push hl
|
|
call Function112729
|
|
ld de, wMobileSDK_PacketBuffer
|
|
ld hl, MobilePacket_TransferData
|
|
ld b, $5
|
|
call MobileSDK_CopyBytes
|
|
ld a, $d
|
|
ld [de], a
|
|
inc de
|
|
ld a, [wc86c]
|
|
ld [de], a
|
|
inc de
|
|
ld bc, $0001
|
|
ld hl, Unknown_1120db
|
|
call MobileSDK_CopyString
|
|
ld de, wMobileSDK_PacketBuffer + 12
|
|
pop hl
|
|
call Function110d37
|
|
ld b, c
|
|
call Function111f63
|
|
ld a, MOBILE_COMMAND_TRANSFER_DATA | $80
|
|
ld [wMobileSDK_SendCommandID], a
|
|
ld hl, wMobileSDK_PacketBuffer
|
|
ld b, $5
|
|
call PacketSendBytes
|
|
ld a, $1d
|
|
ld [wc86a], a
|
|
jp Function110432
|
|
|
|
Function110a5b:
|
|
ld a, [wc821]
|
|
bit 2, a
|
|
jr z, .asm_110a6d
|
|
ld a, [wc86a]
|
|
cp $1a
|
|
jp nz, Function110226
|
|
jp Function110af4
|
|
|
|
.asm_110a6d
|
|
bit 0, a
|
|
jp nz, Function110226
|
|
ld a, [wc86a]
|
|
cp $4
|
|
jp nz, Function110226
|
|
ld a, l
|
|
or h
|
|
jp z, Function110231
|
|
ld a, l
|
|
ld [wc86e], a
|
|
ld a, h
|
|
ld [wc86e + 1], a
|
|
ld hl, wc827
|
|
ld a, e
|
|
ld [hli], a
|
|
ld a, d
|
|
ld [hli], a
|
|
inc de
|
|
inc de
|
|
dec bc
|
|
dec bc
|
|
ld hl, wc98f
|
|
ld a, e
|
|
ld [hli], a
|
|
ld a, d
|
|
ld [hli], a
|
|
ld a, c
|
|
ld [hli], a
|
|
ld a, b
|
|
ld [hl], a
|
|
ld hl, wc829
|
|
ld a, LOW(wc880)
|
|
ld [hli], a
|
|
ld a, HIGH(wc880)
|
|
ld [hli], a
|
|
ld a, $80
|
|
ld [hli], a
|
|
xor a
|
|
ld [hli], a
|
|
xor a
|
|
ld [hli], a
|
|
ld [hli], a
|
|
xor a
|
|
ld [wc86b], a
|
|
ld de, wMobileSDK_PacketBuffer
|
|
ld hl, MobilePacket_TransferData
|
|
ld b, $5
|
|
call MobileSDK_CopyBytes
|
|
ld a, $d
|
|
ld [de], a
|
|
inc de
|
|
ld a, [wc86c]
|
|
ld [de], a
|
|
inc de
|
|
ld bc, $0001
|
|
ld hl, Unknown_1120e8
|
|
call MobileSDK_CopyString
|
|
ld de, wMobileSDK_PacketBuffer + 12
|
|
ld hl, wc86e
|
|
ld a, [hli]
|
|
ld h, [hl]
|
|
ld l, a
|
|
call Function110d37
|
|
ld b, c
|
|
call Function111f63
|
|
ld a, MOBILE_COMMAND_TRANSFER_DATA | $80
|
|
ld [wMobileSDK_SendCommandID], a
|
|
ld hl, wMobileSDK_PacketBuffer
|
|
ld b, $5
|
|
call PacketSendBytes
|
|
ld a, $1a
|
|
ld [wc86a], a
|
|
jp Function110432
|
|
|
|
Function110af4:
|
|
ld hl, wc827
|
|
ld a, e
|
|
ld [hli], a
|
|
ld a, d
|
|
ld [hli], a
|
|
inc de
|
|
inc de
|
|
ld a, e
|
|
ld [hli], a
|
|
ld a, d
|
|
ld [hli], a
|
|
ld e, [hl]
|
|
ld a, b
|
|
or c
|
|
ld [wc86e], a
|
|
ld [wc86e + 1], a
|
|
jr z, .asm_110b5c
|
|
dec bc
|
|
dec bc
|
|
ld a, [wc993]
|
|
or a
|
|
jp nz, .asm_110bd5
|
|
ld a, [wc994]
|
|
or a
|
|
jr z, .asm_110b1c
|
|
ld e, a
|
|
|
|
.asm_110b1c
|
|
xor a
|
|
ld [wc994], a
|
|
cp b
|
|
jr nz, .asm_110b5c
|
|
ld a, e
|
|
cp c
|
|
jr c, .asm_110b5c
|
|
push bc
|
|
sub c
|
|
ld [hl], a
|
|
ld b, c
|
|
ld hl, wc82d
|
|
ld a, [wc993]
|
|
add c
|
|
ld [hli], a
|
|
ld a, b
|
|
adc 0
|
|
ld [hl], a
|
|
xor a
|
|
ld [wc993], a
|
|
ld hl, wMobileSDK_ReceivePacketBuffer + 3
|
|
ld a, [hli]
|
|
inc hl
|
|
sub e
|
|
dec a
|
|
ld e, a
|
|
ld d, 0
|
|
add hl, de
|
|
ld a, [wc829]
|
|
ld e, a
|
|
ld a, [wc829 + 1]
|
|
ld d, a
|
|
call MobileSDK_CopyBytes
|
|
pop bc
|
|
ld hl, wc827
|
|
ld a, [hli]
|
|
ld h, [hl]
|
|
ld l, a
|
|
ld a, c
|
|
ld [hli], a
|
|
ld [hl], b
|
|
ret
|
|
|
|
.asm_110b5c
|
|
ld a, c
|
|
sub e
|
|
ld c, a
|
|
ld a, b
|
|
sbc $0
|
|
ld b, a
|
|
ld a, c
|
|
ld [hli], a
|
|
ld [hl], b
|
|
ld hl, wc82d
|
|
ld a, [wc993]
|
|
add e
|
|
ld [hli], a
|
|
ld a, 0
|
|
adc 0
|
|
ld [hl], a
|
|
xor a
|
|
ld [wc993], a
|
|
ld a, [wc86e]
|
|
or a
|
|
jr z, .asm_110b9b
|
|
ld b, e
|
|
ld hl, wMobileSDK_ReceivePacketBuffer + 3
|
|
ld a, [hli]
|
|
inc hl
|
|
sub e
|
|
dec a
|
|
ld e, a
|
|
ld d, 0
|
|
add hl, de
|
|
ld a, [wc829]
|
|
ld e, a
|
|
ld a, [wc829 + 1]
|
|
ld d, a
|
|
call MobileSDK_CopyBytes
|
|
ld hl, wc829
|
|
ld a, e
|
|
ld [hli], a
|
|
ld a, d
|
|
ld [hl], a
|
|
|
|
.asm_110b9b
|
|
call Function1127f3
|
|
jr z, .asm_110bbb
|
|
di
|
|
ld hl, wc821
|
|
res 2, [hl]
|
|
ld a, $1
|
|
ld [wc86b], a
|
|
ld de, $000b
|
|
ld a, MOBILE_COMMAND_TRANSFER_DATA | $80
|
|
ld [wMobileSDK_SendCommandID], a
|
|
ld hl, wMobileSDK_PacketBuffer + 128
|
|
ld b, $5
|
|
jp PacketSendBytes
|
|
|
|
.asm_110bbb
|
|
ld a, $4
|
|
ld [wc86a], a
|
|
ld hl, wc821
|
|
res 0, [hl]
|
|
res 2, [hl]
|
|
ld hl, wc827
|
|
ld a, [hli]
|
|
ld e, a
|
|
ld d, [hl]
|
|
ld hl, wc82d
|
|
ld b, $2
|
|
jp MobileSDK_CopyBytes
|
|
|
|
.asm_110bd5
|
|
ld e, a
|
|
xor a
|
|
cp b
|
|
jr nz, .asm_110c05
|
|
ld a, e
|
|
cp c
|
|
jr c, .asm_110c05
|
|
ld b, c
|
|
ld hl, wc993
|
|
ld a, [hl]
|
|
sub c
|
|
ld [hl], a
|
|
ld a, $80
|
|
sub e
|
|
ld e, a
|
|
ld d, 0
|
|
ld hl, wc880
|
|
add hl, de
|
|
ld a, [wc829]
|
|
ld e, a
|
|
ld a, [wc829 + 1]
|
|
ld d, a
|
|
call MobileSDK_CopyBytes
|
|
ld hl, wc827
|
|
ld a, [hli]
|
|
ld h, [hl]
|
|
ld l, a
|
|
ld a, c
|
|
ld [hli], a
|
|
xor a
|
|
ld [hl], a
|
|
ret
|
|
|
|
.asm_110c05
|
|
push hl
|
|
push bc
|
|
ld a, [wc993]
|
|
ld b, a
|
|
ld a, $80
|
|
sub e
|
|
ld e, a
|
|
ld d, 0
|
|
ld hl, wc880
|
|
add hl, de
|
|
ld a, [wc829]
|
|
ld e, a
|
|
ld a, [wc829 + 1]
|
|
ld d, a
|
|
call MobileSDK_CopyBytes
|
|
ld a, e
|
|
ld [wc829], a
|
|
ld a, d
|
|
ld [wc829 + 1], a
|
|
pop bc
|
|
ld a, [wc993]
|
|
ld e, a
|
|
ld a, c
|
|
sub e
|
|
ld c, a
|
|
ld a, b
|
|
sbc $0
|
|
ld b, a
|
|
ld a, [wc994]
|
|
ld e, a
|
|
pop hl
|
|
jp .asm_110b1c
|
|
|
|
Function110c3c:
|
|
ld a, [wc821]
|
|
bit 0, a
|
|
jp nz, Function110226
|
|
ld a, [wc86a]
|
|
cp $4
|
|
jp nz, Function110226
|
|
ld a, l
|
|
or h
|
|
jp z, Function110231
|
|
ld a, l
|
|
ld [wc86e], a
|
|
ld a, h
|
|
ld [wc86e + 1], a
|
|
call Function112729
|
|
ld de, wMobileSDK_PacketBuffer
|
|
ld hl, MobilePacket_TransferData
|
|
ld b, $5
|
|
call MobileSDK_CopyBytes
|
|
ld a, $d
|
|
ld [de], a
|
|
inc de
|
|
ld a, [wc86c]
|
|
ld [de], a
|
|
inc de
|
|
ld bc, $0001
|
|
ld hl, Unknown_1120f5
|
|
call MobileSDK_CopyString
|
|
ld de, wMobileSDK_PacketBuffer + 12
|
|
ld hl, wc86e
|
|
ld a, [hli]
|
|
ld h, [hl]
|
|
ld l, a
|
|
call Function110d37
|
|
ld b, c
|
|
call Function111f63
|
|
ld a, MOBILE_COMMAND_TRANSFER_DATA | $80
|
|
ld [wMobileSDK_SendCommandID], a
|
|
ld hl, wMobileSDK_PacketBuffer
|
|
ld b, $5
|
|
call PacketSendBytes
|
|
ld a, $1b
|
|
ld [wc86a], a
|
|
jp Function110432
|
|
|
|
Function110c9e:
|
|
ld a, [wc821]
|
|
bit 2, a
|
|
jr z, .asm_110cb0
|
|
ld a, [wc86a]
|
|
cp $1c
|
|
jp nz, Function110226
|
|
jp Function110af4
|
|
|
|
.asm_110cb0
|
|
bit 0, a
|
|
jp nz, Function110226
|
|
ld a, [wc86a]
|
|
cp $4
|
|
jp nz, Function110226
|
|
ld a, l
|
|
or h
|
|
jp z, Function110231
|
|
ld a, l
|
|
ld [wc86e], a
|
|
ld a, h
|
|
ld [wc86e + 1], a
|
|
ld hl, wc827
|
|
ld a, e
|
|
ld [hli], a
|
|
ld a, d
|
|
ld [hli], a
|
|
inc de
|
|
inc de
|
|
dec bc
|
|
dec bc
|
|
ld hl, wc98f
|
|
ld a, e
|
|
ld [hli], a
|
|
ld a, d
|
|
ld [hli], a
|
|
ld a, c
|
|
ld [hli], a
|
|
ld a, b
|
|
ld [hl], a
|
|
ld hl, wc829
|
|
ld a, LOW(wc880)
|
|
ld [hli], a
|
|
ld a, HIGH(wc880)
|
|
ld [hli], a
|
|
ld a, $80
|
|
ld [hli], a
|
|
xor a
|
|
ld [hli], a
|
|
xor a
|
|
ld [hli], a
|
|
ld [hli], a
|
|
xor a
|
|
ld [wc86b], a
|
|
ld de, wMobileSDK_PacketBuffer
|
|
ld hl, MobilePacket_TransferData
|
|
ld b, $5
|
|
call MobileSDK_CopyBytes
|
|
ld a, $e
|
|
ld [de], a
|
|
inc de
|
|
ld a, [wc86c]
|
|
ld [de], a
|
|
inc de
|
|
ld bc, $0001
|
|
ld hl, Unknown_112102
|
|
call MobileSDK_CopyString
|
|
ld de, wMobileSDK_PacketBuffer + 11
|
|
ld hl, wc86e
|
|
ld a, [hli]
|
|
ld h, [hl]
|
|
ld l, a
|
|
call Function110d37
|
|
ld b, c
|
|
call Function111f63
|
|
ld a, MOBILE_COMMAND_TRANSFER_DATA | $80
|
|
ld [wMobileSDK_SendCommandID], a
|
|
ld hl, wMobileSDK_PacketBuffer
|
|
ld b, $5
|
|
call PacketSendBytes
|
|
ld a, $1c
|
|
ld [wc86a], a
|
|
jp Function110432
|
|
|
|
Function110d37:
|
|
push bc
|
|
push de
|
|
ld b, 0
|
|
.check_under_10k
|
|
ld a, HIGH(10000)
|
|
cp h
|
|
jr c, .subtract_10k
|
|
jr nz, .done_10k
|
|
ld a, LOW(10000)
|
|
cp l
|
|
jr z, .subtract_10k
|
|
jr nc, .done_10k
|
|
|
|
.subtract_10k
|
|
inc b
|
|
ld a, b
|
|
ld bc, -10000
|
|
add hl, bc
|
|
ld b, a
|
|
jr .check_under_10k
|
|
|
|
.done_10k
|
|
ld a, $30
|
|
or b
|
|
ld [de], a
|
|
inc de
|
|
ld b, 0
|
|
.check_under_1k
|
|
ld a, HIGH(1000)
|
|
cp h
|
|
jr c, .subtract_1k
|
|
jr nz, .done_1k
|
|
ld a, LOW(1000)
|
|
cp l
|
|
jr z, .subtract_1k
|
|
jr nc, .done_1k
|
|
|
|
.subtract_1k
|
|
inc b
|
|
ld a, b
|
|
ld bc, -1000
|
|
add hl, bc
|
|
ld b, a
|
|
jr .check_under_1k
|
|
|
|
.done_1k
|
|
ld a, $30
|
|
or b
|
|
ld [de], a
|
|
inc de
|
|
ld b, 0
|
|
.check_under_100
|
|
ld a, HIGH(100)
|
|
cp h
|
|
jr nz, .subtract_100
|
|
ld a, LOW(100)
|
|
cp l
|
|
jr z, .subtract_100
|
|
jr nc, .check_under_10
|
|
|
|
.subtract_100
|
|
inc b
|
|
ld a, b
|
|
ld bc, -100
|
|
add hl, bc
|
|
ld b, a
|
|
jr .check_under_100
|
|
|
|
.check_under_10
|
|
ld a, $30
|
|
or b
|
|
ld [de], a
|
|
inc de
|
|
ld b, $0
|
|
ld a, l
|
|
.subtract_10
|
|
cp 10
|
|
jr c, .done_10
|
|
sub 10
|
|
inc b
|
|
jr .subtract_10
|
|
|
|
.done_10
|
|
ld l, a
|
|
ld a, $30
|
|
or b
|
|
ld [de], a
|
|
inc de
|
|
ld a, $30
|
|
or l
|
|
ld [de], a
|
|
pop de
|
|
ld l, e
|
|
ld h, d
|
|
ld b, $5
|
|
.find_first_digit
|
|
ld a, [hl]
|
|
cp $30
|
|
jr nz, .found_first_digit
|
|
inc hl
|
|
dec b
|
|
jr nz, .find_first_digit
|
|
jr .done
|
|
|
|
.found_first_digit
|
|
ld a, $5
|
|
cp b
|
|
jr z, .done
|
|
sub b
|
|
ld c, a
|
|
ld a, [wMobileSDK_PacketBuffer + 5]
|
|
sub c
|
|
ld c, a
|
|
ld [wMobileSDK_PacketBuffer + 5], a
|
|
push hl
|
|
ld b, $1
|
|
.penultimate_loop
|
|
inc b
|
|
ld a, [hli]
|
|
cp $d
|
|
jr nz, .penultimate_loop
|
|
pop hl
|
|
call MobileSDK_CopyBytes
|
|
pop hl
|
|
ret
|
|
|
|
.done
|
|
pop bc
|
|
.last_loop
|
|
ld a, [de]
|
|
inc de
|
|
cp $a
|
|
jr nz, .last_loop
|
|
ret
|
|
|
|
Function110ddd:
|
|
ld a, [wc821]
|
|
bit 2, a
|
|
ld a, [wc86a]
|
|
jr z, .asm_110e00
|
|
cp $13
|
|
jp z, Function111044
|
|
cp $1f
|
|
jp z, Function111044
|
|
cp $21
|
|
jp z, Function111044
|
|
jp Function110226
|
|
|
|
.asm_110df9
|
|
pop hl
|
|
.asm_110dfa
|
|
pop hl
|
|
pop hl
|
|
pop hl
|
|
.asm_110dfd
|
|
jp Function110231
|
|
|
|
.asm_110e00
|
|
cp $2
|
|
jp nz, Function110226
|
|
ld a, [wc821]
|
|
bit 0, a
|
|
jp nz, Function110226
|
|
ld a, [wc86d]
|
|
or a
|
|
jp nz, Function110226
|
|
ld a, l
|
|
ld [wc9b5], a
|
|
ld a, h
|
|
ld [wc9b6], a
|
|
xor a
|
|
ld [wc989], a
|
|
ld [wc9a5], a
|
|
ld [wc98a], a
|
|
ld [wc993], a
|
|
ld a, [hli]
|
|
ld [wc833], a
|
|
ld a, [hli]
|
|
ld [wc834], a
|
|
inc hl
|
|
inc hl
|
|
ld a, l
|
|
ld [wc97f], a
|
|
ld a, h
|
|
ld [wc980], a
|
|
dec hl
|
|
dec hl
|
|
ld a, [hli]
|
|
ld h, [hl]
|
|
ld l, a
|
|
ld a, LOW(wc880)
|
|
cp l
|
|
jr nz, .asm_110e4a
|
|
ld a, HIGH(wc880)
|
|
cp h
|
|
jr z, .asm_110dfd
|
|
|
|
.asm_110e4a
|
|
push hl
|
|
push de
|
|
push bc
|
|
push hl
|
|
ld b, URIPrefix.End - URIPrefix
|
|
ld de, URIPrefix
|
|
.asm_110e53
|
|
ld a, [de]
|
|
inc de
|
|
cp [hl]
|
|
jr nz, .asm_110df9
|
|
inc hl
|
|
dec b
|
|
jr nz, .asm_110e53
|
|
push hl
|
|
ld b, HTTPUploadURL.End - HTTPUploadURL
|
|
ld c, $0
|
|
ld de, HTTPUploadURL
|
|
.asm_110e64
|
|
ld a, [de]
|
|
inc de
|
|
cp [hl]
|
|
jr nz, .asm_110e70
|
|
inc hl
|
|
dec b
|
|
jr nz, .asm_110e64
|
|
pop hl
|
|
jr .asm_110df9
|
|
|
|
.asm_110e70
|
|
pop hl
|
|
push hl
|
|
ld b, HTTPRankingURL.End - HTTPRankingURL
|
|
ld c, $0
|
|
ld de, HTTPRankingURL
|
|
.asm_110e79
|
|
ld a, [de]
|
|
inc de
|
|
cp [hl]
|
|
jr nz, .asm_110e86
|
|
inc hl
|
|
dec b
|
|
jr nz, .asm_110e79
|
|
pop hl
|
|
jp .asm_110df9
|
|
|
|
.asm_110e86
|
|
pop hl
|
|
push hl
|
|
ld b, HTTPUtilityURL.End - HTTPUtilityURL
|
|
ld c, $0
|
|
ld de, HTTPUtilityURL
|
|
.asm_110e8f
|
|
ld a, [de]
|
|
inc de
|
|
cp [hl]
|
|
jr nz, .asm_110ea2
|
|
inc hl
|
|
dec b
|
|
jr nz, .asm_110e8f
|
|
pop hl
|
|
ld a, $1
|
|
ld [wc98a], a
|
|
ld c, $1
|
|
jr .asm_110eb3
|
|
|
|
.asm_110ea2
|
|
pop hl
|
|
ld b, HTTPDownloadURL.End - HTTPDownloadURL
|
|
ld c, $0
|
|
ld de, HTTPDownloadURL
|
|
.asm_110eaa
|
|
ld a, [de]
|
|
inc de
|
|
cp [hl]
|
|
jr nz, .asm_110ecb
|
|
inc hl
|
|
dec b
|
|
jr nz, .asm_110eaa
|
|
|
|
.asm_110eb3
|
|
ld hl, wc97f
|
|
ld a, [hli]
|
|
ld h, [hl]
|
|
ld l, a
|
|
ld c, $12
|
|
call Function11039a
|
|
jp c, .asm_110df9
|
|
ld c, $12
|
|
call Function11039a
|
|
jp c, .asm_110df9
|
|
ld c, $1
|
|
|
|
.asm_110ecb
|
|
ld a, c
|
|
ld [wc98f], a
|
|
ld [wMobileSDK_ReceivePacketBuffer + 128], a
|
|
pop hl
|
|
call Function1111d7
|
|
ld a, b
|
|
cp $4
|
|
jr c, .asm_110ee3
|
|
jp nz, .asm_110dfa
|
|
xor a
|
|
or c
|
|
jp nz, .asm_110dfa
|
|
|
|
.asm_110ee3
|
|
ld hl, wc98b
|
|
xor a
|
|
ld [hli], a
|
|
ld [hli], a
|
|
ld [hli], a
|
|
ld [hl], a
|
|
pop bc
|
|
pop de
|
|
pop hl
|
|
ld a, l
|
|
ld [wc876], a
|
|
ld a, h
|
|
ld [wc877], a
|
|
ld hl, wc872
|
|
ld a, c
|
|
ld [hli], a
|
|
ld a, b
|
|
ld [hli], a
|
|
ld a, e
|
|
ld [hli], a
|
|
ld a, d
|
|
ld [hli], a
|
|
inc hl
|
|
inc hl
|
|
xor a
|
|
ld [wc994], a
|
|
|
|
Function110f07:
|
|
ld hl, wc833
|
|
ld a, [hli]
|
|
ld h, [hl]
|
|
ld l, a
|
|
or h
|
|
jr z, .asm_110f12
|
|
xor a
|
|
ld [hl], a
|
|
|
|
.asm_110f12
|
|
ld hl, wc991
|
|
xor a
|
|
ld [hli], a
|
|
ld [hl], a
|
|
ld hl, wc866
|
|
ld a, [hli]
|
|
or [hl]
|
|
inc hl
|
|
or [hl]
|
|
inc hl
|
|
or [hl]
|
|
jr nz, .asm_110f28
|
|
ld a, $2
|
|
jp Function110615
|
|
|
|
.asm_110f28
|
|
ld a, $2
|
|
ld [wc86e], a
|
|
ld a, $1f
|
|
ld [wMobileSDK_PacketBuffer + 10], a
|
|
ld a, $90
|
|
ld [wMobileSDK_PacketBuffer + 11], a
|
|
ld a, $1
|
|
ld [wc86b], a
|
|
ld de, wMobileSDK_PacketBuffer
|
|
ld hl, MobilePacket_OpenTCPConnection
|
|
ld b, $6
|
|
call MobileSDK_CopyBytes
|
|
ld hl, wc866
|
|
ld b, $4
|
|
call MobileSDK_CopyBytes
|
|
inc de
|
|
inc de
|
|
ld b, $6
|
|
call Function111f63
|
|
ld a, [wMobileSDK_ReceivePacketBuffer + 128]
|
|
or a
|
|
jr z, .asm_110f95
|
|
ld hl, wc995
|
|
ld a, [hli]
|
|
cp $99
|
|
jr nz, .asm_110f8a
|
|
ld a, [hli]
|
|
cp $66
|
|
jr nz, .asm_110f8a
|
|
ld a, [hli]
|
|
cp $23
|
|
jr nz, .asm_110f8a
|
|
ld a, $2
|
|
ld [wc86e], a
|
|
dec a
|
|
ld [wc86b], a
|
|
ld a, $a3
|
|
ld de, $0010
|
|
ld hl, wc995
|
|
call Function111f02
|
|
ld a, $f
|
|
ld [wc86a], a
|
|
jp Function110432
|
|
|
|
.asm_110f8a
|
|
ld hl, wMobileSDK_PacketBuffer
|
|
ld de, wc995
|
|
ld b, $10
|
|
call MobileSDK_CopyBytes
|
|
|
|
.asm_110f95
|
|
ld de, $0010
|
|
ld hl, wMobileSDK_PacketBuffer
|
|
ld a, MOBILE_COMMAND_OPEN_TCP_CONNECTION | $80
|
|
ld [wMobileSDK_SendCommandID], a
|
|
ld b, $5
|
|
call PacketSendBytes
|
|
ld a, $f
|
|
ld [wc86a], a
|
|
jp Function110432
|
|
|
|
URIPrefix:
|
|
db "http://"
|
|
.End
|
|
|
|
HTTPDownloadURL:
|
|
db "gameboy.datacenter.ne.jp/cgb/download"
|
|
.End
|
|
|
|
HTTPUploadURL:
|
|
db "gameboy.datacenter.ne.jp/cgb/upload"
|
|
.End
|
|
|
|
HTTPUtilityURL:
|
|
db "gameboy.datacenter.ne.jp/cgb/utility"
|
|
.End
|
|
|
|
HTTPRankingURL:
|
|
db "gameboy.datacenter.ne.jp/cgb/ranking"
|
|
.End
|
|
|
|
Function111044:
|
|
ld hl, wc827
|
|
ld a, e
|
|
ld [hli], a
|
|
ld a, d
|
|
ld [hli], a
|
|
inc de
|
|
inc de
|
|
ld a, e
|
|
ld [hli], a
|
|
ld a, d
|
|
ld [hli], a
|
|
ld e, [hl]
|
|
ld a, b
|
|
or c
|
|
ld [wc86e], a
|
|
ld [wc86e + 1], a
|
|
dec bc
|
|
dec bc
|
|
jp z, Function1111ca
|
|
ld a, [wc991]
|
|
or a
|
|
call nz, Function11115f
|
|
xor a
|
|
cp e
|
|
jp z, .asm_1110eb
|
|
xor a
|
|
cp b
|
|
jr nz, .asm_1110ac
|
|
ld a, e
|
|
cp c
|
|
jr c, .asm_1110ac
|
|
push bc
|
|
sub c
|
|
ld [hl], a
|
|
ld b, c
|
|
ld hl, wc82d
|
|
ld a, c
|
|
ld [hli], a
|
|
xor a
|
|
ld [hl], a
|
|
ld hl, wMobileSDK_ReceivePacketBuffer + 3
|
|
ld a, [hli]
|
|
inc hl
|
|
sub e
|
|
dec a
|
|
ld e, a
|
|
ld d, 0
|
|
add hl, de
|
|
ld a, [wc829]
|
|
ld e, a
|
|
ld a, [wc829 + 1]
|
|
ld d, a
|
|
call MobileSDK_CopyBytes
|
|
pop bc
|
|
ld a, [wc991]
|
|
ld l, a
|
|
ld h, 0
|
|
add hl, bc
|
|
ld c, l
|
|
ld b, h
|
|
xor a
|
|
ld [wc991], a
|
|
ld hl, wc827
|
|
ld a, [hli]
|
|
ld h, [hl]
|
|
ld l, a
|
|
ld a, c
|
|
ld [hli], a
|
|
ld [hl], b
|
|
ret
|
|
|
|
.asm_1110ac
|
|
ld a, c
|
|
sub e
|
|
ld c, a
|
|
ld a, b
|
|
sbc $0
|
|
ld b, a
|
|
ld a, c
|
|
ld [hli], a
|
|
ld [hl], b
|
|
ld hl, wc82d
|
|
ld a, [wc991]
|
|
add e
|
|
ld [hli], a
|
|
ld a, 0
|
|
adc 0
|
|
ld [hl], a
|
|
xor a
|
|
ld [wc991], a
|
|
ld a, [wc86e]
|
|
or a
|
|
jr z, .asm_1110eb
|
|
ld b, e
|
|
ld hl, wMobileSDK_ReceivePacketBuffer + 3
|
|
ld a, [hli]
|
|
inc hl
|
|
sub e
|
|
dec a
|
|
ld e, a
|
|
ld d, 0
|
|
add hl, de
|
|
ld a, [wc829]
|
|
ld e, a
|
|
ld a, [wc829 + 1]
|
|
ld d, a
|
|
call MobileSDK_CopyBytes
|
|
ld hl, wc829
|
|
ld a, e
|
|
ld [hli], a
|
|
ld a, d
|
|
ld [hl], a
|
|
|
|
.asm_1110eb
|
|
di
|
|
ld a, $2
|
|
ld [wc989], a
|
|
ld hl, wc821
|
|
res 2, [hl]
|
|
ld a, [wMobileSDK_ReceivePacketBuffer]
|
|
cp MOBILE_COMMAND_TRANSFER_DATA_END | $80
|
|
jr z, .asm_111144
|
|
ld de, $000b
|
|
ld a, MOBILE_COMMAND_TRANSFER_DATA | $80
|
|
ld [wMobileSDK_SendCommandID], a
|
|
ld hl, wMobileSDK_PacketBuffer
|
|
ld b, $5
|
|
call PacketSendBytes
|
|
ld a, $1
|
|
ld [wc86b], a
|
|
ret
|
|
|
|
ld hl, wc827
|
|
ld a, [hli]
|
|
ld h, [hl]
|
|
ld l, a
|
|
ld a, [wc82d]
|
|
ld [hli], a
|
|
ld a, [wc82e]
|
|
ld [hl], a
|
|
ld hl, wc98f
|
|
inc [hl]
|
|
ld a, $f
|
|
ld [wc86a], a
|
|
ld a, $1
|
|
ld [wc86b], a
|
|
ld a, [wc86d]
|
|
ld [wc86e], a
|
|
xor a
|
|
ld [wc989], a
|
|
ld a, $a3
|
|
ld de, $0010
|
|
ld hl, wc995
|
|
jp Function111f02
|
|
|
|
.asm_111144
|
|
res 0, [hl]
|
|
ld hl, wc827
|
|
ld a, [hli]
|
|
ld h, [hl]
|
|
ld l, a
|
|
ld a, [wc82d]
|
|
ld [hli], a
|
|
ld a, [wc82e]
|
|
ld [hl], a
|
|
ld a, $2
|
|
ld [wc86a], a
|
|
xor a
|
|
ld [wc86d], a
|
|
ei
|
|
ret
|
|
|
|
Function11115f:
|
|
ld e, a
|
|
xor a
|
|
cp b
|
|
jr nz, .asm_111168
|
|
ld a, c
|
|
cp e
|
|
jr c, .asm_1111a2
|
|
|
|
.asm_111168
|
|
push hl
|
|
push bc
|
|
ld b, e
|
|
ld c, e
|
|
ld a, [wc993]
|
|
sub e
|
|
ld e, a
|
|
ld d, 0
|
|
ld hl, wc880
|
|
add hl, de
|
|
ld a, [wc829]
|
|
ld e, a
|
|
ld a, [wc829 + 1]
|
|
ld d, a
|
|
call MobileSDK_CopyBytes
|
|
ld hl, wc829
|
|
ld a, e
|
|
ld [hli], a
|
|
ld a, d
|
|
ld [hl], a
|
|
ld e, c
|
|
ld a, c
|
|
ld hl, wc82d
|
|
ld [hli], a
|
|
xor a
|
|
ld [hl], a
|
|
pop bc
|
|
ld a, c
|
|
sub e
|
|
ld c, a
|
|
ld a, b
|
|
sbc $0
|
|
ld b, a
|
|
ld a, [wc992]
|
|
ld [wc82b], a
|
|
ld e, a
|
|
pop hl
|
|
ret
|
|
|
|
.asm_1111a2
|
|
ld a, e
|
|
sub c
|
|
ld [wc991], a
|
|
ld a, [wc993]
|
|
sub e
|
|
ld e, a
|
|
ld d, 0
|
|
ld hl, wc880
|
|
add hl, de
|
|
ld a, [wc829]
|
|
ld e, a
|
|
ld a, [wc829 + 1]
|
|
ld d, a
|
|
ld b, c
|
|
call MobileSDK_CopyBytes
|
|
ld hl, wc827
|
|
ld a, [hli]
|
|
ld h, [hl]
|
|
ld l, a
|
|
ld a, c
|
|
ld [hli], a
|
|
xor a
|
|
ld [hl], a
|
|
pop af
|
|
ret
|
|
|
|
Function1111ca:
|
|
ld hl, wc821
|
|
res 2, [hl]
|
|
ld a, $6
|
|
ld [wc86b], a
|
|
jp Function112430
|
|
|
|
Function1111d7:
|
|
push hl
|
|
ld hl, wc866
|
|
ld a, [hli]
|
|
or [hl]
|
|
inc hl
|
|
or [hl]
|
|
inc hl
|
|
or [hl]
|
|
pop hl
|
|
jr nz, .asm_1111ee
|
|
ld de, $0007
|
|
add hl, de
|
|
.asm_1111e8
|
|
ld a, [hli]
|
|
cp $2f
|
|
jr nz, .asm_1111e8
|
|
dec hl
|
|
|
|
.asm_1111ee
|
|
ld bc, -1
|
|
.asm_1111f1
|
|
ld a, [hli]
|
|
inc bc
|
|
or a
|
|
jr nz, .asm_1111f1
|
|
ld hl, wc87a
|
|
ld a, c
|
|
ld [hli], a
|
|
ld a, b
|
|
ld [hl], a
|
|
ret
|
|
|
|
Function1111fe:
|
|
ld a, [wc821]
|
|
bit 2, a
|
|
ld a, [wc86a]
|
|
jp nz, Function1113ea
|
|
cp $2
|
|
jp nz, Function110226
|
|
ld a, [wc821]
|
|
bit 0, a
|
|
jp nz, Function110226
|
|
ld a, [wc86d]
|
|
or a
|
|
jp nz, Function110226
|
|
xor a
|
|
ld [wc989], a
|
|
ld [wc98a], a
|
|
ld [wc993], a
|
|
push hl
|
|
push de
|
|
push bc
|
|
push hl
|
|
rept 4
|
|
inc hl
|
|
endr
|
|
ld a, [hli]
|
|
ld [wc833], a
|
|
ld a, [hli]
|
|
ld [wc834], a
|
|
inc hl
|
|
inc hl
|
|
ld a, l
|
|
ld [wc97f], a
|
|
ld a, h
|
|
ld [wc980], a
|
|
dec hl
|
|
dec hl
|
|
ld a, [hli]
|
|
ld h, [hl]
|
|
ld l, a
|
|
ld a, LOW(wc880)
|
|
cp l
|
|
jr nz, .asm_111251
|
|
ld a, HIGH(wc880)
|
|
cp h
|
|
jp z, Function1113f7
|
|
|
|
.asm_111251
|
|
ld b, URIPrefix.End - URIPrefix
|
|
ld de, URIPrefix
|
|
.asm_111256
|
|
ld a, [de]
|
|
inc de
|
|
cp [hl]
|
|
jp nz, Function1113f7
|
|
inc hl
|
|
dec b
|
|
jr nz, .asm_111256
|
|
push hl
|
|
ld b, HTTPDownloadURL.End - HTTPDownloadURL
|
|
ld c, $0
|
|
ld de, HTTPDownloadURL
|
|
.asm_111268
|
|
ld a, [de]
|
|
inc de
|
|
cp [hl]
|
|
jr nz, .asm_111275
|
|
inc hl
|
|
dec b
|
|
jr nz, .asm_111268
|
|
pop hl
|
|
jp Function1113f7
|
|
|
|
.asm_111275
|
|
pop hl
|
|
push hl
|
|
ld b, HTTPRankingURL.End - HTTPRankingURL
|
|
ld c, $0
|
|
ld de, HTTPRankingURL
|
|
.asm_11127e
|
|
ld a, [de]
|
|
inc de
|
|
cp [hl]
|
|
jr nz, .asm_11128f
|
|
inc hl
|
|
dec b
|
|
jr nz, .asm_11127e
|
|
ld a, $2
|
|
ld [wc98a], a
|
|
pop hl
|
|
jr .asm_1112a0
|
|
|
|
.asm_11128f
|
|
pop hl
|
|
ld b, HTTPUploadURL.End - HTTPUploadURL
|
|
ld c, $0
|
|
ld de, HTTPUploadURL
|
|
.asm_111297
|
|
ld a, [de]
|
|
inc de
|
|
cp [hl]
|
|
jr nz, .asm_1112cc
|
|
inc hl
|
|
dec b
|
|
jr nz, .asm_111297
|
|
|
|
.asm_1112a0
|
|
ld a, [hli]
|
|
or a
|
|
jr nz, .asm_1112a0
|
|
.asm_1112a4
|
|
ld a, [hld]
|
|
cp $2f
|
|
jr nz, .asm_1112a4
|
|
inc hl
|
|
inc hl
|
|
ld a, [hl]
|
|
cp $30
|
|
jr c, .asm_1112cc
|
|
cp $3a
|
|
jr nc, .asm_1112cc
|
|
ld hl, wc97f
|
|
ld a, [hli]
|
|
ld h, [hl]
|
|
ld l, a
|
|
ld c, $12
|
|
call Function11039a
|
|
jp c, Function1113f7
|
|
ld c, $12
|
|
call Function11039a
|
|
jp c, Function1113f7
|
|
ld c, $1
|
|
|
|
.asm_1112cc
|
|
ld a, c
|
|
ld [wc98f], a
|
|
ld [wMobileSDK_ReceivePacketBuffer + 128], a
|
|
pop hl
|
|
ld de, $0006
|
|
add hl, de
|
|
ld a, [hli]
|
|
ld h, [hl]
|
|
ld l, a
|
|
call Function1111d7
|
|
ld a, b
|
|
cp $4
|
|
jr c, .asm_1112eb
|
|
jp nz, Function1113f8
|
|
xor a
|
|
or c
|
|
jp nz, Function1113f8
|
|
|
|
.asm_1112eb
|
|
pop bc
|
|
pop de
|
|
pop hl
|
|
ld a, l
|
|
ld [wc876], a
|
|
ld a, h
|
|
ld [wc877], a
|
|
ld hl, wc872
|
|
ld a, c
|
|
ld [hli], a
|
|
ld a, b
|
|
ld [hli], a
|
|
ld a, e
|
|
ld [hli], a
|
|
ld a, d
|
|
ld [hli], a
|
|
inc hl
|
|
inc hl
|
|
ld a, e
|
|
ld [hli], a
|
|
ld a, d
|
|
ld [hl], a
|
|
call Function111335
|
|
ld hl, wc876
|
|
ld a, [hli]
|
|
ld h, [hl]
|
|
ld l, a
|
|
ld a, [hli]
|
|
ld [wc9aa], a
|
|
ld a, [hli]
|
|
ld [wc9ab], a
|
|
ld a, [hli]
|
|
ld [wc9ac], a
|
|
ld a, [hli]
|
|
ld [wc9ad], a
|
|
inc hl
|
|
inc hl
|
|
ld a, [hli]
|
|
ld [wc876], a
|
|
ld a, [hl]
|
|
ld [wc877], a
|
|
ld a, [wc98f]
|
|
xor $1
|
|
ld [wc994], a
|
|
jp Function110f07
|
|
|
|
Function111335:
|
|
ld hl, wc876
|
|
ld a, [hli]
|
|
ld h, [hl]
|
|
ld l, a
|
|
inc hl
|
|
inc hl
|
|
ld a, [hli]
|
|
ld h, [hl]
|
|
ld l, a
|
|
xor a
|
|
ld [wc8c9], a
|
|
.asm_111344
|
|
ld de, $8ad0
|
|
add hl, de
|
|
jr nc, .asm_11134e
|
|
add $3
|
|
jr .asm_111344
|
|
|
|
.asm_11134e
|
|
ld de, $7530
|
|
add hl, de
|
|
.asm_111352
|
|
ld de, $d8f0
|
|
add hl, de
|
|
jr nc, .asm_11135b
|
|
inc a
|
|
jr .asm_111352
|
|
|
|
.asm_11135b
|
|
ld de, $2710
|
|
add hl, de
|
|
ld [wc8c6], a
|
|
xor a
|
|
.asm_111363
|
|
ld de, $f448
|
|
add hl, de
|
|
jr nc, .asm_11136d
|
|
add $30
|
|
jr .asm_111363
|
|
|
|
.asm_11136d
|
|
ld de, $0bb8
|
|
add hl, de
|
|
.asm_111371
|
|
ld de, $fc18
|
|
add hl, de
|
|
jr nc, .asm_11137b
|
|
add $10
|
|
jr .asm_111371
|
|
|
|
.asm_11137b
|
|
ld de, $03e8
|
|
add hl, de
|
|
.asm_11137f
|
|
ld de, $fed4
|
|
add hl, de
|
|
jr nc, .asm_111389
|
|
add $3
|
|
jr .asm_11137f
|
|
|
|
.asm_111389
|
|
ld de, $012c
|
|
add hl, de
|
|
.asm_11138d
|
|
ld de, $ff9c
|
|
add hl, de
|
|
jr nc, .asm_111396
|
|
inc a
|
|
jr .asm_11138d
|
|
|
|
.asm_111396
|
|
ld de, $0064
|
|
add hl, de
|
|
ld [wc8c7], a
|
|
xor a
|
|
.asm_11139e
|
|
ld de, $ffe2
|
|
add hl, de
|
|
jr nc, .asm_1113a8
|
|
add $30
|
|
jr .asm_11139e
|
|
|
|
.asm_1113a8
|
|
ld de, $001e
|
|
add hl, de
|
|
.asm_1113ac
|
|
ld de, $fff6
|
|
add hl, de
|
|
jr nc, .asm_1113b6
|
|
add $10
|
|
jr .asm_1113ac
|
|
|
|
.asm_1113b6
|
|
ld de, $000a
|
|
add hl, de
|
|
add l
|
|
ld [wc8c8], a
|
|
ld de, wc9a5
|
|
ld hl, wc8c6
|
|
ld a, [hli]
|
|
or $30
|
|
ld [de], a
|
|
inc de
|
|
ld a, [hl]
|
|
swap a
|
|
and $f
|
|
or $30
|
|
ld [de], a
|
|
inc de
|
|
ld a, [hli]
|
|
and $f
|
|
or $30
|
|
ld [de], a
|
|
inc de
|
|
ld a, [hl]
|
|
swap a
|
|
and $f
|
|
or $30
|
|
ld [de], a
|
|
inc de
|
|
ld a, [hl]
|
|
and $f
|
|
or $30
|
|
ld [de], a
|
|
inc de
|
|
ret
|
|
|
|
Function1113ea:
|
|
cp $14
|
|
jp z, Function111044
|
|
cp $24
|
|
jp z, Function111044
|
|
jp Function110226
|
|
|
|
Function1113f7:
|
|
pop hl
|
|
|
|
Function1113f8:
|
|
pop hl
|
|
pop hl
|
|
pop hl
|
|
jp Function110231
|
|
|
|
Function1113fe:
|
|
ld a, [wc822]
|
|
bit 4, a
|
|
jp z, .asm_11147f
|
|
bit 7, a
|
|
jp nz, .asm_11147f
|
|
ld a, [wc821]
|
|
bit 0, a
|
|
jp nz, .asm_11147f
|
|
.asm_111413
|
|
ld a, [wc800]
|
|
or a
|
|
jr nz, .asm_111413
|
|
di
|
|
ld a, [wc821]
|
|
bit 3, a
|
|
jp nz, .asm_11147b
|
|
ld a, [wc807]
|
|
or a
|
|
jr nz, .asm_111436
|
|
ld hl, wc821
|
|
set 1, [hl]
|
|
ld a, $23
|
|
ld [wc80f], a
|
|
ld a, $ff
|
|
ei
|
|
ret
|
|
|
|
.asm_111436
|
|
xor a
|
|
ld [wc86b], a
|
|
push hl
|
|
ld hl, wc829
|
|
xor a
|
|
ld [hli], a
|
|
ld [hli], a
|
|
ld [hli], a
|
|
ld [hl], a
|
|
ld de, wMobileSDK_PacketBuffer
|
|
ld hl, MobilePacket_TransferData
|
|
ld b, $5
|
|
call MobileSDK_CopyBytes
|
|
pop hl
|
|
ld a, [hli]
|
|
or a
|
|
jr z, .asm_111485
|
|
cp $81
|
|
jr nc, .asm_111485
|
|
ld c, a
|
|
inc a
|
|
inc a
|
|
ld [de], a
|
|
inc de
|
|
ld a, $ff
|
|
ld [de], a
|
|
inc de
|
|
ld a, c
|
|
ld [de], a
|
|
inc de
|
|
ld b, c
|
|
call MobileSDK_CopyBytes
|
|
ld b, c
|
|
inc b
|
|
inc b
|
|
call Function111f63
|
|
ld hl, wc822
|
|
set 7, [hl]
|
|
ld hl, wc821
|
|
set 0, [hl]
|
|
ld a, $0
|
|
ei
|
|
ret
|
|
|
|
.asm_11147b
|
|
ei
|
|
ld a, $1
|
|
ret
|
|
|
|
.asm_11147f
|
|
call Function110226
|
|
ld a, $ff
|
|
ret
|
|
|
|
.asm_111485
|
|
ei
|
|
call Function110231
|
|
ld a, $ff
|
|
ret
|
|
|
|
Function11148c:
|
|
ld a, [wc822]
|
|
bit 4, a
|
|
jp z, Function110226
|
|
ld a, [wc821]
|
|
bit 0, a
|
|
jp nz, Function110226
|
|
bit 3, a
|
|
jp z, Function110226
|
|
ld e, l
|
|
ld d, h
|
|
ld a, [wc992]
|
|
or a
|
|
jr nz, .asm_111507
|
|
ld a, [wc993]
|
|
ld c, a
|
|
ld b, 0
|
|
ld hl, wMobileSDK_ReceivePacketBuffer + 4
|
|
add hl, bc
|
|
ld a, [hli]
|
|
or a
|
|
jr z, .asm_1114bb
|
|
cp $81
|
|
jr c, .asm_1114bd
|
|
|
|
.asm_1114bb
|
|
ld a, $80
|
|
|
|
.asm_1114bd
|
|
ld b, a
|
|
inc c
|
|
add c
|
|
ld [wc993], a
|
|
ld a, [wc994]
|
|
dec a
|
|
sub b
|
|
ld c, a
|
|
ld [wc994], a
|
|
ld a, b
|
|
ld [de], a
|
|
inc de
|
|
call MobileSDK_CopyBytes
|
|
.asm_1114d2
|
|
xor a
|
|
or c
|
|
jr nz, .asm_1114dc
|
|
ld hl, wc821
|
|
res 3, [hl]
|
|
ret
|
|
|
|
.asm_1114dc
|
|
ld a, [hli]
|
|
or a
|
|
jr z, .asm_1114e4
|
|
cp $81
|
|
jr c, .asm_1114e6
|
|
|
|
.asm_1114e4
|
|
ld a, $80
|
|
|
|
.asm_1114e6
|
|
cp c
|
|
ret c
|
|
ld [wc991], a
|
|
dec c
|
|
ld a, c
|
|
or a
|
|
jr z, .asm_111500
|
|
ld [wc992], a
|
|
ld b, a
|
|
ld de, wc880
|
|
call MobileSDK_CopyBytes
|
|
.asm_1114fa
|
|
ld hl, wc821
|
|
res 3, [hl]
|
|
ret
|
|
|
|
.asm_111500
|
|
ld a, $ff
|
|
ld [wc992], a
|
|
jr .asm_1114fa
|
|
|
|
.asm_111507
|
|
cp $ff
|
|
jr nz, .asm_11150c
|
|
xor a
|
|
|
|
.asm_11150c
|
|
ld b, a
|
|
ld a, [wc991]
|
|
sub b
|
|
ld c, a
|
|
ld hl, wc880
|
|
ld a, [wc991]
|
|
ld [de], a
|
|
inc de
|
|
ld a, b
|
|
or a
|
|
jr z, .asm_111521
|
|
call MobileSDK_CopyBytes
|
|
|
|
.asm_111521
|
|
ld hl, wMobileSDK_ReceivePacketBuffer + 5
|
|
ld b, c
|
|
call MobileSDK_CopyBytes
|
|
push hl
|
|
ld a, c
|
|
inc a
|
|
ld [wc993], a
|
|
ld b, a
|
|
ld a, [wMobileSDK_ReceivePacketBuffer + 3]
|
|
sub b
|
|
ld [wc994], a
|
|
ld c, a
|
|
xor a
|
|
ld hl, wc991
|
|
ld [hli], a
|
|
ld [hl], a
|
|
pop hl
|
|
jr .asm_1114d2
|
|
|
|
Function111540:
|
|
nop
|
|
|
|
MobileAPI_TelephoneStatus:
|
|
ld hl, wc821
|
|
bit 0, [hl]
|
|
jp nz, Function110226
|
|
ld a, [wc86a]
|
|
cp $5
|
|
jp nc, Function110226
|
|
ld [wc985], a
|
|
ld a, e
|
|
ld [wc86e], a
|
|
ld a, d
|
|
ld [wc86e + 1], a
|
|
ld a, [wc807]
|
|
cp $2
|
|
jr c, .asm_111582
|
|
xor a
|
|
ld [wc86b], a
|
|
ld a, MOBILE_COMMAND_TELEPHONE_STATUS | $80
|
|
ld hl, MobilePacket_TelephoneStatus
|
|
call PacketSendEmptyBody
|
|
.asm_11156f
|
|
ld a, [wMobileAPIIndex]
|
|
cp $40
|
|
jr nz, .asm_11157a
|
|
ld a, $2c
|
|
jr .asm_11157c
|
|
|
|
.asm_11157a
|
|
ld a, $1e
|
|
|
|
.asm_11157c
|
|
ld [wc86a], a
|
|
jp Function110432
|
|
|
|
.asm_111582
|
|
xor a
|
|
ldh [rTAC], a
|
|
ld a, [wc870]
|
|
ld c, a
|
|
call MobileAPI_SetTimer
|
|
call Function1104b0
|
|
ld a, $1
|
|
ld [wc86b], a
|
|
jr .asm_11156f
|
|
|
|
Function111596:
|
|
ld hl, wc86a
|
|
ld a, [hl]
|
|
cp $1
|
|
jp z, Function110226
|
|
cp $2a
|
|
jp z, Function110226
|
|
ld a, [wc800]
|
|
bit 1, a
|
|
jr nz, .asm_1115af
|
|
ld a, $2a
|
|
jr Function1115e4
|
|
|
|
.asm_1115af
|
|
ld a, [wMobileSDK_SendCommandID]
|
|
cp $92
|
|
jr nz, .asm_1115dd
|
|
ld a, $2a
|
|
ld b, $0
|
|
di
|
|
ld [hli], a
|
|
ld [hl], b
|
|
ld hl, wc822
|
|
res 5, [hl]
|
|
res 0, [hl]
|
|
xor a
|
|
ld [wc80b], a
|
|
ld [wc800], a
|
|
ld a, $8
|
|
ld [wc807], a
|
|
call ResetReceivePacketBuffer
|
|
call Function11164f
|
|
ld hl, wc821
|
|
set 0, [hl]
|
|
ei
|
|
ret
|
|
|
|
.asm_1115dd
|
|
ld a, $2a
|
|
ld [hli], a
|
|
ld a, $1
|
|
ld [hl], a
|
|
ret
|
|
|
|
Function1115e4:
|
|
di
|
|
push af
|
|
ld hl, wc821
|
|
set 0, [hl]
|
|
ld a, $1
|
|
ld [wc86b], a
|
|
ld a, [wc86d]
|
|
or a
|
|
ld a, [wMobileSDK_ReceivePacketBuffer]
|
|
jr z, .asm_111609
|
|
cp MOBILE_COMMAND_TRANSFER_DATA_END | $80
|
|
jr z, .asm_11160d
|
|
cp MOBILE_COMMAND_CLOSE_TCP_CONNECTION | $80
|
|
jr z, .asm_11160d
|
|
.asm_111601
|
|
call Function112430
|
|
.asm_111604
|
|
pop af
|
|
ld [wc86a], a
|
|
ret
|
|
|
|
.asm_111609
|
|
cp $a3
|
|
jr z, .asm_111601
|
|
|
|
.asm_11160d
|
|
ei
|
|
jr .asm_111604
|
|
|
|
Function111610:
|
|
ld hl, wc86a
|
|
ld a, [hl]
|
|
dec a
|
|
jp z, Function110226
|
|
dec a
|
|
jp z, Function110226
|
|
ld a, [wc800]
|
|
or a
|
|
jr nz, .asm_111626
|
|
ld a, $28
|
|
jr Function1115e4
|
|
|
|
.asm_111626
|
|
ld a, $28
|
|
ld b, $2
|
|
ld [hli], a
|
|
ld [hl], b
|
|
ret
|
|
|
|
Function11162d:
|
|
ld a, [wc86a]
|
|
cp $1
|
|
jp nz, Function110226
|
|
xor a
|
|
ld hl, wMobileSDK_PacketBuffer
|
|
ld [hli], a
|
|
ld [hl], a
|
|
call Function111686
|
|
call ResetReceivePacketBuffer
|
|
ld bc, $0452
|
|
ld hl, wc800
|
|
.asm_111647
|
|
xor a
|
|
ld [hli], a
|
|
dec bc
|
|
ld a, c
|
|
or b
|
|
jr nz, .asm_111647
|
|
ret
|
|
|
|
Function11164f:
|
|
ld hl, wc815
|
|
xor a
|
|
ld [hli], a
|
|
ld a, [wc81f]
|
|
ld b, a
|
|
ld a, [wMobileSDK_AdapterType]
|
|
ld a, b
|
|
srl a
|
|
srl a
|
|
add b
|
|
add b
|
|
ld [hl], a
|
|
ret
|
|
|
|
Function111664:
|
|
ld hl, wMobileSDK_ReceivedBytes
|
|
ld a, [hli]
|
|
ld e, a
|
|
ld a, [hli]
|
|
ld d, a
|
|
ld a, [wMobileSDK_SendCommandID]
|
|
cp $ff
|
|
jr z, .asm_111679
|
|
ld a, [wc822]
|
|
bit 0, a
|
|
jr z, .asm_11167c
|
|
.asm_111679
|
|
ld hl, wMobileSDK_ReceivePacketBufferAlt
|
|
.asm_11167c
|
|
add hl, de
|
|
ld [hl], c
|
|
inc de
|
|
ld hl, wMobileSDK_ReceivedBytes
|
|
ld a, e
|
|
ld [hli], a
|
|
ld [hl], d
|
|
ret
|
|
|
|
Function111686:
|
|
xor a
|
|
ldh [rTAC], a
|
|
ld c, $ff
|
|
ldh a, [c]
|
|
and $f3
|
|
ldh [c], a
|
|
ld a, [wMobileSDK_PacketBuffer + 1]
|
|
ld [wc86a], a
|
|
ld a, [wMobileSDK_PacketBuffer]
|
|
ld c, a
|
|
ld hl, wc821
|
|
ld a, [hl]
|
|
or c
|
|
ld [hl], a
|
|
ret
|
|
|
|
Function1116a0:
|
|
ld a, $1
|
|
jr Function1116a9
|
|
|
|
Function1116a4:
|
|
set 1, [hl]
|
|
ld a, [wc86a]
|
|
|
|
Function1116a9:
|
|
ld [wMobileSDK_PacketBuffer + 1], a
|
|
ld hl, wc815
|
|
xor a
|
|
ld [hli], a
|
|
ld a, [wc81f]
|
|
rla
|
|
ld [hl], a
|
|
ld hl, wc821
|
|
ld a, [hl]
|
|
ld b, a
|
|
and $d
|
|
ld [hl], a
|
|
ld a, $2
|
|
and b
|
|
ld [wMobileSDK_PacketBuffer], a
|
|
ret
|
|
|
|
_MobileReceive::
|
|
ld a, [wc800]
|
|
rrca
|
|
jp nc, Function1118bc
|
|
rrca
|
|
jp c, Function1117e7
|
|
ld hl, wc801
|
|
ld a, [hli]
|
|
ld d, [hl]
|
|
ld e, a
|
|
dec de
|
|
ld a, d
|
|
ld [hld], a
|
|
ld a, e
|
|
ld [hl], a
|
|
cp $2
|
|
jp nc, Function1118bc
|
|
ld a, d
|
|
or a
|
|
jp nz, Function1118bc
|
|
ld hl, wc808
|
|
add hl, de
|
|
ldh a, [rSB]
|
|
ld [hl], a
|
|
ld a, $8
|
|
cp l
|
|
jp nz, Function1118bc
|
|
ld a, [wMobileSDK_SendCommandID]
|
|
cp $ff
|
|
jr z, .asm_111716
|
|
ld a, $f2
|
|
cp [hl]
|
|
jp z, Function111796
|
|
dec a
|
|
cp [hl]
|
|
jp z, Function1117a0
|
|
dec a
|
|
cp [hl]
|
|
jp z, Function1117a0
|
|
ld a, [wc807]
|
|
cp $1
|
|
jr nz, .asm_111716
|
|
ld a, [wc806]
|
|
or a
|
|
jr z, .asm_111778
|
|
.asm_111716
|
|
ld a, [wMobileSDK_SendCommandID]
|
|
cp -1
|
|
jr z, .asm_111730
|
|
cp MOBILE_COMMAND_ERROR | $80
|
|
jr z, .asm_111727
|
|
cp MOBILE_COMMAND_TRANSFER_DATA_END | $80
|
|
jr nz, .asm_111727
|
|
ld a, MOBILE_COMMAND_TRANSFER_DATA | $80
|
|
.asm_111727
|
|
cp [hl]
|
|
jr nz, asm_11179a
|
|
ld a, [wMobileSDK_AdapterType]
|
|
or a
|
|
jr z, .asm_111730
|
|
.asm_111730
|
|
xor a
|
|
ld [wc819], a
|
|
ld a, $3
|
|
ld [wc800], a
|
|
xor a
|
|
ld hl, wc80a
|
|
ld [hli], a
|
|
ld [hli], a
|
|
ld [hli], a
|
|
ld hl, wc81f
|
|
ld a, [hli]
|
|
ld b, a
|
|
ld a, [hl]
|
|
ld hl, wc815
|
|
ld [hli], a
|
|
ld a, b
|
|
ld [hli], a
|
|
ld a, [wc822]
|
|
bit 0, a
|
|
jr z, .asm_111757
|
|
ld a, $b
|
|
jr .asm_111774
|
|
.asm_111757
|
|
ld a, [wMobileSDK_SendCommandID]
|
|
cp -1
|
|
jr z, .asm_11176e
|
|
cp MOBILE_COMMAND_DIAL_TELEPHONE | $80
|
|
jr z, .asm_111772
|
|
cp MOBILE_COMMAND_OPEN_TCP_CONNECTION | $80
|
|
jr z, .asm_111772
|
|
cp MOBILE_COMMAND_DNS_QUERY | $80
|
|
jr z, .asm_111772
|
|
ld a, $20
|
|
jr .asm_111774
|
|
.asm_11176e
|
|
ld a, $3
|
|
jr .asm_111774
|
|
.asm_111772
|
|
ld a, $60
|
|
.asm_111774
|
|
ld [hl], a
|
|
jp Function1118bc
|
|
.asm_111778
|
|
xor a
|
|
ld [wc800], a
|
|
Function11177c:
|
|
ld hl, wc820
|
|
ld a, [hld]
|
|
ld e, a
|
|
ld a, [hl]
|
|
dec a
|
|
ld b, $3
|
|
.asm_111785
|
|
or a
|
|
rra
|
|
rr e
|
|
dec b
|
|
jr nz, .asm_111785
|
|
or a
|
|
inc a
|
|
ld hl, wc816
|
|
ld [hld], a
|
|
ld [hl], e
|
|
jp Function1118bc
|
|
|
|
Function111796:
|
|
ld b, $a
|
|
jr asm_1117a2
|
|
asm_11179a:
|
|
xor a
|
|
ld [hli], a
|
|
ld [hl], a
|
|
jp Function1118bc
|
|
|
|
Function1117a0:
|
|
ld b, $3
|
|
asm_1117a2:
|
|
ld hl, wc822
|
|
set 3, [hl]
|
|
ld hl, wc815
|
|
ld a, [wc820]
|
|
ld [hli], a
|
|
ld a, [wc81f]
|
|
ld [hl], a
|
|
xor a
|
|
ld [wc800], a
|
|
ld hl, wc819
|
|
inc [hl]
|
|
ld a, b
|
|
cp [hl]
|
|
jp nc, Function1118bc
|
|
xor a
|
|
ld hl, wc806
|
|
ld [hli], a
|
|
ld [wc800], a
|
|
ld a, $6
|
|
ld [hl], a
|
|
ld hl, wc821
|
|
set 1, [hl]
|
|
ld a, $15
|
|
ld [wc80f], a
|
|
ld hl, wc810
|
|
ld a, [wc808]
|
|
and $f
|
|
cp $2
|
|
jr nz, .asm_1117e1
|
|
inc a
|
|
.asm_1117e1
|
|
ld [hli], a
|
|
xor a
|
|
ld [hl], a
|
|
jp Function1118bc
|
|
|
|
Function1117e7:
|
|
ld a, [wc80b]
|
|
or a
|
|
jr z, .asm_1117f8
|
|
dec a
|
|
jp z, Function11186e
|
|
dec a
|
|
jp z, Function111884
|
|
jp Function111892
|
|
.asm_1117f8
|
|
ld hl, wc80a
|
|
ld a, [hl]
|
|
or a
|
|
jr nz, .asm_111803
|
|
ld b, $99
|
|
jr .asm_111805
|
|
.asm_111803
|
|
ld b, $66
|
|
.asm_111805
|
|
ldh a, [rSB]
|
|
cp b
|
|
jr z, .asm_111840
|
|
cp $d2
|
|
jr nz, .asm_111817
|
|
xor a
|
|
ld [wc9ae], a
|
|
.asm_111812
|
|
xor a
|
|
ld [hl], a
|
|
jp Function1118bc
|
|
.asm_111817
|
|
ld a, [wc9ae]
|
|
inc a
|
|
ld [wc9ae], a
|
|
cp $14
|
|
jr c, .asm_111812
|
|
ld a, $6
|
|
ld [wc807], a
|
|
ld a, $10
|
|
ld [wc80f], a
|
|
xor a
|
|
ld [wc800], a
|
|
ld hl, wc822
|
|
res 0, [hl]
|
|
ld hl, wc821
|
|
ld a, [hl]
|
|
set 1, a
|
|
and $f
|
|
ld [hl], a
|
|
jr Function1118bc
|
|
.asm_111840
|
|
inc [hl]
|
|
ld a, $2
|
|
cp [hl]
|
|
jr nz, Function1118bc
|
|
xor a
|
|
ld [hli], a
|
|
inc [hl]
|
|
ld hl, wMobileSDK_PacketChecksum
|
|
ld b, $3
|
|
.asm_11184e
|
|
ld [hli], a
|
|
dec b
|
|
jr nz, .asm_11184e
|
|
ld a, [wc822]
|
|
bit 4, a
|
|
jr z, .asm_111864
|
|
ld b, a
|
|
ld a, [wc821]
|
|
bit 3, a
|
|
jr nz, .asm_111864
|
|
jp Function11177c
|
|
.asm_111864
|
|
ld a, [wc820]
|
|
ld [hli], a
|
|
ld a, [wc81f]
|
|
ld [hl], a
|
|
jr Function1118bc
|
|
|
|
Function11186e:
|
|
call Function1118c2
|
|
ld a, $4
|
|
cp [hl]
|
|
jr nz, Function1118bc
|
|
xor a
|
|
ld [hli], a
|
|
ldh a, [rSB]
|
|
ld [wc80c], a
|
|
inc [hl]
|
|
or a
|
|
jr nz, Function1118bc
|
|
inc [hl]
|
|
jr Function1118bc
|
|
|
|
Function111884:
|
|
call Function1118c2
|
|
ld a, [wc80c]
|
|
cp [hl]
|
|
jr nz, Function1118bc
|
|
xor a
|
|
ld [hli], a
|
|
inc [hl]
|
|
jr Function1118bc
|
|
|
|
Function111892:
|
|
ldh a, [rSB]
|
|
ld c, a
|
|
call Function111664
|
|
ld hl, wc80a
|
|
inc [hl]
|
|
ld a, $2
|
|
cp [hl]
|
|
jr c, .asm_1118b4
|
|
ld a, [wc80a]
|
|
add $11
|
|
ld e, a
|
|
ld d, $c8
|
|
ld a, [de]
|
|
cp c
|
|
jr z, Function1118bc
|
|
ld a, $1
|
|
ld [wc814], a
|
|
jr Function1118bc
|
|
.asm_1118b4
|
|
ld a, $4
|
|
cp [hl]
|
|
jr nz, Function1118bc
|
|
xor a
|
|
ld [hli], a
|
|
inc [hl]
|
|
Function1118bc:
|
|
ld hl, wc822
|
|
res 1, [hl]
|
|
ret
|
|
|
|
Function1118c2:
|
|
ldh a, [rSB]
|
|
ld c, a
|
|
ld b, 0
|
|
ld hl, wMobileSDK_PacketChecksum
|
|
ld a, [hli]
|
|
ld l, [hl]
|
|
ld h, a
|
|
add hl, bc
|
|
ld a, h
|
|
ld [wMobileSDK_PacketChecksum], a
|
|
ld a, l
|
|
ld [wMobileSDK_PacketChecksum + 1], a
|
|
call Function111664
|
|
ld hl, wc80a
|
|
inc [hl]
|
|
ret
|
|
|
|
_Timer::
|
|
ld a, [wc80b]
|
|
cp $4
|
|
call z, Function111b3c
|
|
call Function11214e
|
|
ld hl, wc807
|
|
ld a, [hli]
|
|
cp $2
|
|
jr c, .asm_111927
|
|
ld a, [hli]
|
|
ld b, a
|
|
ld a, [hl]
|
|
ld c, a
|
|
and b
|
|
cp $ff
|
|
jr z, .asm_1118fe
|
|
ld a, c
|
|
or b
|
|
jr nz, .asm_111927
|
|
.asm_1118fe
|
|
ld hl, wc807
|
|
ld a, $6
|
|
cp [hl]
|
|
jp z, Function111b3b
|
|
ld [hl], a
|
|
ld a, $10
|
|
ld [wc80f], a
|
|
xor a
|
|
ld [wc800], a
|
|
ld hl, wc822
|
|
res 0, [hl]
|
|
ld hl, wc821
|
|
ld a, [hl]
|
|
and $f
|
|
or $2
|
|
ld [hl], a
|
|
ld a, $10
|
|
ld [wc80f], a
|
|
jp Function111b3b
|
|
.asm_111927
|
|
ld a, [wc800]
|
|
cp $1
|
|
jp z, Function111b21
|
|
cp $3
|
|
jp z, Function111a2a
|
|
ld a, [wc807]
|
|
cp $1
|
|
jp c, Function111b3b
|
|
ld hl, wc815
|
|
dec [hl]
|
|
jp nz, Function111b3b
|
|
inc hl
|
|
dec [hl]
|
|
jp nz, Function111b3b
|
|
ld hl, wc807
|
|
ld a, [wc822]
|
|
bit 3, a
|
|
jp nz, Function111a0b
|
|
bit 4, a
|
|
jr nz, .asm_11199c
|
|
ld a, [hl]
|
|
cp $1
|
|
jp z, Function1119f0_BeginSession
|
|
cp $a
|
|
jr z, .asm_111984
|
|
cp $8
|
|
jr z, .asm_11197d
|
|
ld a, [wc86a]
|
|
cp $2a
|
|
jr z, .asm_111991
|
|
cp $d
|
|
jr nz, .asm_111977
|
|
ld a, [wc86b]
|
|
cp $4
|
|
jr nc, .asm_11199c
|
|
.asm_111977
|
|
call Function111f97
|
|
jp Function111b3b
|
|
.asm_11197d
|
|
ld a, [wc805]
|
|
ld [hl], a
|
|
jp Function111b3b
|
|
.asm_111984
|
|
xor a
|
|
ld [hl], a
|
|
ld hl, wc821
|
|
res 0, [hl]
|
|
call Function111686
|
|
jp Function111b3b
|
|
.asm_111991
|
|
xor a
|
|
ld [hl], a
|
|
ld [wc821], a
|
|
call Function111686
|
|
jp Function111b3b
|
|
.asm_11199c
|
|
ld b, a
|
|
ld [hl], a
|
|
or a
|
|
jp z, Function111b3b
|
|
ld a, [wc822]
|
|
bit 7, a
|
|
jr nz, .asm_1119be
|
|
.asm_1119a9
|
|
ld a, [wc821]
|
|
bit 3, a
|
|
jr nz, .asm_111977
|
|
ld de, MobilePacket_TransferData.End - MobilePacket_TransferData
|
|
ld hl, MobilePacket_TransferData
|
|
ld a, $95
|
|
call Function111f02
|
|
jp Function111b3b
|
|
.asm_1119be
|
|
ld a, [wc821]
|
|
bit 3, a
|
|
jr nz, .asm_1119dd
|
|
ld a, [wMobileSDK_PacketBuffer + 5]
|
|
add $a
|
|
ld e, a
|
|
ld d, 0
|
|
ld a, MOBILE_COMMAND_TRANSFER_DATA | $80
|
|
ld [wMobileSDK_SendCommandID], a
|
|
ld hl, wMobileSDK_PacketBuffer
|
|
ld b, $5
|
|
call PacketSendBytes
|
|
jp Function111b3b
|
|
.asm_1119dd
|
|
ld hl, wc821
|
|
set 1, [hl]
|
|
res 0, [hl]
|
|
ld hl, wc822
|
|
res 7, [hl]
|
|
ld a, $21
|
|
ld [wc80f], a
|
|
jr .asm_1119a9
|
|
|
|
Function1119f0_BeginSession:
|
|
ld a, MOBILE_COMMAND_BEGIN_SESSION | $80
|
|
ld [wMobileSDK_SendCommandID], a
|
|
ld [wc808], a
|
|
ld b, $5
|
|
ld de, MobilePacket_BeginSession.End - MobilePacket_BeginSession
|
|
ld hl, MobilePacket_BeginSession
|
|
call PacketSendBytes
|
|
ld a, $1
|
|
ld [wc806], a
|
|
jp Function111b3b
|
|
|
|
Function111a0b:
|
|
ld a, [hl]
|
|
cp $6
|
|
jp z, Function111b3b
|
|
ld hl, wc822
|
|
res 3, [hl]
|
|
res 0, [hl]
|
|
ld hl, wc81a
|
|
ld a, [hli]
|
|
ld e, a
|
|
ld a, [hli]
|
|
ld d, a
|
|
ld a, [hli]
|
|
ld h, [hl]
|
|
ld l, a
|
|
ld b, $5
|
|
call PacketSendBytes
|
|
jp Function111b3b
|
|
|
|
Function111a2a:
|
|
ld hl, wc80b
|
|
ld a, [hld]
|
|
or a
|
|
jr z, asm_111a47
|
|
cp $3
|
|
jr nz, asm_111a40
|
|
ld a, [hl]
|
|
cp $2
|
|
jp z, Function111ab9
|
|
cp $3
|
|
jp z, Function111abd
|
|
asm_111a40:
|
|
ld a, $4b
|
|
|
|
Function111a42:
|
|
ldh [rSB], a
|
|
jp Function111b2e
|
|
|
|
asm_111a47:
|
|
ld hl, wc815
|
|
dec [hl]
|
|
jr nz, asm_111a40
|
|
inc hl
|
|
dec [hl]
|
|
jr nz, asm_111a40
|
|
inc hl
|
|
dec [hl]
|
|
jr z, .asm_111a63
|
|
ld hl, wc81f
|
|
ld a, [hli]
|
|
ld d, a
|
|
ld a, [hl]
|
|
ld hl, wc815
|
|
ld [hli], a
|
|
ld a, d
|
|
ld [hli], a
|
|
jr asm_111a40
|
|
.asm_111a63
|
|
di
|
|
ld a, [wc86a]
|
|
cp $2a
|
|
jr z, .asm_111aa8
|
|
ld hl, wc9b2
|
|
inc [hl]
|
|
ld a, [hl]
|
|
cp $1
|
|
jr z, .asm_111a91
|
|
ld hl, wc822
|
|
res 5, [hl]
|
|
res 0, [hl]
|
|
ld hl, wc821
|
|
res 4, [hl]
|
|
ld a, $0
|
|
ld [wc805], a
|
|
ld a, $29
|
|
ld [wc86a], a
|
|
ld a, $1
|
|
ld [wc806], a
|
|
jr .asm_111aa8
|
|
.asm_111a91
|
|
ld a, $29
|
|
ld [wc86a], a
|
|
xor a
|
|
ld [wc806], a
|
|
ld [wc86b], a
|
|
ld [wc80b], a
|
|
ld [wc800], a
|
|
ld a, $8
|
|
ld [wc807], a
|
|
.asm_111aa8
|
|
call ResetReceivePacketBuffer
|
|
call Function11164f
|
|
ld hl, wc822
|
|
res 5, [hl]
|
|
res 0, [hl]
|
|
ei
|
|
jp Function111b3b
|
|
|
|
Function111ab9:
|
|
ld a, $80
|
|
jr Function111a42
|
|
|
|
Function111abd:
|
|
ld a, [wc814]
|
|
or a
|
|
jr nz, .asm_111acb
|
|
ld a, [wMobileSDK_ReceivePacketBuffer]
|
|
xor $80
|
|
jp Function111a42
|
|
.asm_111acb
|
|
ld hl, wc819
|
|
inc [hl]
|
|
ld a, $3
|
|
cp [hl]
|
|
jr z, .asm_111afe
|
|
call ResetReceivePacketBuffer
|
|
ld a, $3
|
|
ld [wc800], a
|
|
xor a
|
|
ld hl, wc80a
|
|
ld [hli], a
|
|
ld [hli], a
|
|
ld [hl], a
|
|
ld hl, wc815
|
|
ld a, [wc820]
|
|
ld [hli], a
|
|
ld a, [wc81f]
|
|
ld [hli], a
|
|
ld a, [wc822]
|
|
bit 0, a
|
|
jr z, .asm_111af9
|
|
ld a, $b
|
|
jr .asm_111afb
|
|
.asm_111af9
|
|
ld a, $20
|
|
.asm_111afb
|
|
ld [hli], a
|
|
jr .asm_111b1c
|
|
.asm_111afe
|
|
ld hl, wc806
|
|
xor a
|
|
ld [hli], a
|
|
ld [wc800], a
|
|
ld a, $6
|
|
ld [hl], a
|
|
ld hl, wc821
|
|
set 1, [hl]
|
|
ld a, $15
|
|
ld [wc80f], a
|
|
ld a, $2
|
|
ld [wc810], a
|
|
xor a
|
|
ld [wc810 + 1], a
|
|
.asm_111b1c
|
|
ld a, $f1
|
|
jp Function111a42
|
|
|
|
Function111b21:
|
|
ld hl, wc803
|
|
ld a, [hli]
|
|
ld e, a
|
|
ld d, [hl]
|
|
ld a, [de]
|
|
ldh [rSB], a
|
|
inc de
|
|
ld a, d
|
|
ld [hld], a
|
|
ld [hl], e
|
|
|
|
Function111b2e:
|
|
ld hl, wc822
|
|
set 1, [hl]
|
|
ld a, (0 << rSC_ON) | (1 << rSC_CGB) | (1 << rSC_CLOCK)
|
|
ldh [rSC], a
|
|
ld a, (1 << rSC_ON) | (1 << rSC_CGB) | (1 << rSC_CLOCK)
|
|
ldh [rSC], a
|
|
|
|
Function111b3b:
|
|
ret
|
|
|
|
Function111b3c:
|
|
xor a
|
|
ld [wc819], a
|
|
ld [wc80b], a
|
|
ld hl, wc9b1
|
|
ld [hli], a
|
|
ld [hl], a
|
|
ld [wc800], a
|
|
ld hl, wc822
|
|
res 5, [hl]
|
|
bit 0, [hl]
|
|
jr z, .asm_111b59
|
|
ld a, [wMobileSDK_ReceivePacketBufferAlt]
|
|
jr .asm_111b5c
|
|
.asm_111b59
|
|
ld a, [wMobileSDK_ReceivePacketBuffer]
|
|
.asm_111b5c
|
|
|
|
cp MOBILE_COMMAND_TRANSFER_DATA_END | $80
|
|
jr nz, .asm_111b62
|
|
ld a, MOBILE_COMMAND_TRANSFER_DATA | $80
|
|
.asm_111b62
|
|
ld b, a
|
|
|
|
ld hl, Function111e28
|
|
push hl
|
|
cp MOBILE_COMMAND_ERROR | $80
|
|
jp z, GetErrorCode
|
|
ld a, [wMobileSDK_SendCommandID]
|
|
cp -1
|
|
jp z, Function111ef8
|
|
cp MOBILE_COMMAND_TRANSFER_DATA | $80
|
|
jp z, Function111c17
|
|
cp MOBILE_COMMAND_DNS_QUERY | $80
|
|
jp z, Function111d23
|
|
cp MOBILE_COMMAND_OPEN_TCP_CONNECTION | $80
|
|
jr z, .asm_111bbe
|
|
cp MOBILE_COMMAND_CLOSE_TCP_CONNECTION | $80
|
|
jr z, .asm_111bbe
|
|
cp MOBILE_COMMAND_HANG_UP_TELEPHONE | $80
|
|
jr z, .asm_111be0
|
|
cp MOBILE_COMMAND_READ_CONFIGURATION_DATA | $80
|
|
jr z, .asm_111bf0
|
|
cp MOBILE_COMMAND_WRITE_CONFIGURATION_DATA | $80
|
|
jp z, Function111c06
|
|
cp MOBILE_COMMAND_TELEPHONE_STATUS | $80
|
|
jp z, Function111d70
|
|
cp MOBILE_COMMAND_ISP_LOGIN | $80
|
|
jr z, .asm_111bd0
|
|
cp MOBILE_COMMAND_ISP_LOGOUT | $80
|
|
jr z, .asm_111bca
|
|
cp MOBILE_COMMAND_BEGIN_SESSION | $80
|
|
jp z, ParseResponse_BeginSession
|
|
cp MOBILE_COMMAND_WAIT_FOR_TELEPHONE_CALL | $80
|
|
jp z, Function111d65
|
|
cp MOBILE_COMMAND_DIAL_TELEPHONE | $80
|
|
jp z, Function111d65
|
|
ld hl, wc822
|
|
res 0, [hl]
|
|
ld a, $a
|
|
ld [wc807], a
|
|
xor a
|
|
ld [wc800], a
|
|
ret
|
|
|
|
.asm_111bbe
|
|
ld a, [wMobileSDK_ReceivePacketBuffer + 4]
|
|
ld [wc86c], a
|
|
ld a, $4
|
|
ld [wc807], a
|
|
ret
|
|
|
|
.asm_111bca
|
|
ld a, $3
|
|
ld [wc807], a
|
|
ret
|
|
|
|
.asm_111bd0
|
|
ld a, $4
|
|
ld [wc807], a
|
|
ld de, wc823
|
|
ld hl, wMobileSDK_ReceivePacketBuffer + 4
|
|
ld b, $4
|
|
jp MobileSDK_CopyBytes
|
|
|
|
.asm_111be0
|
|
ld a, $2
|
|
ld [wc807], a
|
|
ld hl, wc822
|
|
res 4, [hl]
|
|
ld hl, wc821
|
|
res 4, [hl]
|
|
ret
|
|
|
|
.asm_111bf0
|
|
ld hl, wc829
|
|
ld a, [hli]
|
|
ld d, [hl]
|
|
ld e, a
|
|
ld hl, wMobileSDK_ReceivePacketBuffer + 3 ; packet size
|
|
ld a, [hli]
|
|
dec a
|
|
ld b, a
|
|
inc hl
|
|
call MobileSDK_CopyBytes
|
|
ld a, $2
|
|
ld [wc807], a
|
|
ret
|
|
|
|
Function111c06:
|
|
ld de, wc872
|
|
ld hl, wMobileSDK_ReceivePacketBuffer + 4
|
|
ld b, $2
|
|
call MobileSDK_CopyBytes
|
|
ld a, $2
|
|
ld [wc807], a
|
|
ret
|
|
|
|
Function111c17:
|
|
ld a, [wMobileSDK_ReceivePacketBuffer]
|
|
cp MOBILE_COMMAND_TRANSFER_DATA_END | $80
|
|
jp z, Function111d07
|
|
ld a, [wc86e + 1]
|
|
ld b, a
|
|
ld a, [wc86e]
|
|
or b
|
|
jp z, Function111d07
|
|
ld hl, wc82b
|
|
ld a, [hli]
|
|
ld e, a
|
|
ld d, [hl]
|
|
ld a, [wMobileSDK_ReceivePacketBuffer + 3]
|
|
dec a
|
|
jp z, Function111d07
|
|
ld c, a
|
|
ld a, [wc822]
|
|
bit 4, a
|
|
jp z, Function111cc2
|
|
ld a, [wc992]
|
|
or a
|
|
jr nz, .asm_111c89
|
|
ld a, [wMobileSDK_ReceivePacketBuffer + 5]
|
|
or a
|
|
jr z, .asm_111c50
|
|
cp $81
|
|
jr c, .asm_111c52
|
|
.asm_111c50
|
|
ld a, $80
|
|
.asm_111c52
|
|
ld b, a
|
|
ld a, [wMobileSDK_ReceivePacketBuffer + 3]
|
|
dec a
|
|
dec a
|
|
cp b
|
|
jr c, .asm_111c6e
|
|
.asm_111c5b
|
|
ld hl, wc821
|
|
set 3, [hl]
|
|
ld hl, wc993
|
|
ld a, $1
|
|
ld [hli], a
|
|
ld a, [wMobileSDK_ReceivePacketBuffer + 3]
|
|
dec a
|
|
ld [hl], a
|
|
jp Function111d07
|
|
.asm_111c6e
|
|
ld hl, wc992
|
|
or a
|
|
jr z, .asm_111c83
|
|
ld [hld], a
|
|
ld [hl], b
|
|
ld b, a
|
|
ld hl, wMobileSDK_ReceivePacketBuffer + 6
|
|
ld de, wc880
|
|
call MobileSDK_CopyBytes
|
|
jp Function111d07
|
|
.asm_111c83
|
|
ld a, $ff
|
|
ld [hld], a
|
|
ld [hl], b
|
|
jr Function111d07
|
|
.asm_111c89
|
|
cp $ff
|
|
jr nz, .asm_111c9d
|
|
ld hl, wc991
|
|
ld a, [hli]
|
|
ld b, a
|
|
ld a, [wMobileSDK_ReceivePacketBuffer + 3]
|
|
dec a
|
|
cp b
|
|
jr nc, .asm_111c5b
|
|
jr z, .asm_111c5b
|
|
xor a
|
|
ld [hl], a
|
|
.asm_111c9d
|
|
ld hl, wc991
|
|
ld a, [hli]
|
|
sub [hl]
|
|
ld b, a
|
|
ld a, [wMobileSDK_ReceivePacketBuffer + 3]
|
|
dec a
|
|
cp b
|
|
jr nc, .asm_111c5b
|
|
jr z, .asm_111c5b
|
|
ld b, a
|
|
ld l, [hl]
|
|
ld h, $0
|
|
add l
|
|
ld [wc992], a
|
|
ld de, wc880
|
|
add hl, de
|
|
ld e, l
|
|
ld d, h
|
|
ld hl, wMobileSDK_ReceivePacketBuffer + 5
|
|
call MobileSDK_CopyBytes
|
|
jr Function111d07
|
|
|
|
Function111cc2:
|
|
xor a
|
|
cp d
|
|
jr nz, .asm_111cda
|
|
ld a, c
|
|
cp e
|
|
jr c, .asm_111cda
|
|
jr z, .asm_111cda
|
|
ld a, [wc821]
|
|
set 2, a
|
|
ld [wc821], a
|
|
ld a, c
|
|
sub e
|
|
ld c, e
|
|
ld e, a
|
|
jr .asm_111ce1
|
|
.asm_111cda
|
|
ld a, e
|
|
sub c
|
|
ld e, a
|
|
ld a, d
|
|
sbc $0
|
|
ld d, a
|
|
.asm_111ce1
|
|
ld a, d
|
|
ld [hld], a
|
|
ld [hl], e
|
|
ld a, [wc829]
|
|
ld e, a
|
|
ld a, [wc829 + 1]
|
|
ld d, a
|
|
ld hl, wMobileSDK_ReceivePacketBuffer + 5
|
|
ld a, c
|
|
or a
|
|
jr z, Function111d07
|
|
ld b, a
|
|
call MobileSDK_CopyBytes
|
|
ld hl, wc829
|
|
ld a, e
|
|
ld [hli], a
|
|
ld [hl], d
|
|
ld de, $3
|
|
add hl, de
|
|
ld a, [hl]
|
|
add c
|
|
ld [hli], a
|
|
jr nc, Function111d07
|
|
inc [hl]
|
|
|
|
Function111d07:
|
|
ld a, [wc822]
|
|
bit 4, a
|
|
jr z, .asm_111d1c
|
|
bit 7, a
|
|
jr z, .asm_111d1c
|
|
ld hl, wc822
|
|
res 7, [hl]
|
|
ld hl, wc821
|
|
res 0, [hl]
|
|
.asm_111d1c
|
|
ld a, [wc805]
|
|
ld [wc807], a
|
|
ret
|
|
|
|
Function111d23:
|
|
ld a, [wc829]
|
|
ld e, a
|
|
ld a, [wc829 + 1]
|
|
ld d, a
|
|
ld hl, wMobileSDK_ReceivePacketBuffer + 4
|
|
ld b, $4
|
|
call MobileSDK_CopyBytes
|
|
ld a, $4
|
|
ld [wc807], a
|
|
ret
|
|
|
|
ParseResponse_BeginSession:
|
|
ld de, wMobileSDK_ReceivePacketBuffer + 3
|
|
ld hl, MobilePacket_BeginSession + 5
|
|
ld b, 1 + STRLEN("NINTENDO")
|
|
.check_loop
|
|
ld a, [de]
|
|
inc de
|
|
cp [hl]
|
|
jr nz, .check_done
|
|
inc hl
|
|
dec b
|
|
jr nz, .check_loop
|
|
.check_done
|
|
ld a, b
|
|
or a
|
|
jr nz, .done
|
|
|
|
ld a, [wMobileSDK_ReceivePacketBuffer + 14] ; device type
|
|
cp $80
|
|
jr c, .fail
|
|
cp $90
|
|
jr nc, .fail
|
|
.done
|
|
ld [wMobileSDK_AdapterType], a
|
|
ld a, $2
|
|
ld [wc807], a
|
|
ret
|
|
.fail
|
|
xor a
|
|
jr .done
|
|
|
|
Function111d65:
|
|
ld a, $3
|
|
ld [wc807], a
|
|
ld hl, wc821
|
|
set 4, [hl]
|
|
ret
|
|
|
|
Function111d70:
|
|
ld hl, wc822
|
|
bit 0, [hl]
|
|
jr z, .asm_111dc0
|
|
ld a, [wc805]
|
|
ld [wc807], a
|
|
ld a, [wMobileSDK_ReceivePacketBufferAlt + 4]
|
|
ld b, a
|
|
call Function111dd9
|
|
call Function111e15
|
|
res 0, [hl]
|
|
ld a, b
|
|
cp $7
|
|
jr z, .asm_111da9
|
|
or a
|
|
ret nz
|
|
ld hl, wc821
|
|
res 4, [hl]
|
|
set 1, [hl]
|
|
ld a, [wc822]
|
|
bit 4, a
|
|
jr nz, .asm_111dbb
|
|
ld a, $23
|
|
ld [wc80f], a
|
|
ld a, $6
|
|
ld [wc807], a
|
|
ret
|
|
.asm_111da9
|
|
ld hl, wc821
|
|
res 4, [hl]
|
|
set 1, [hl]
|
|
ld a, $11
|
|
ld [wc80f], a
|
|
ld a, $6
|
|
ld [wc807], a
|
|
ret
|
|
.asm_111dbb
|
|
xor a
|
|
ld [wc807], a
|
|
ret
|
|
.asm_111dc0
|
|
ld hl, wc86e
|
|
ld a, [hli]
|
|
ld h, [hl]
|
|
ld l, a
|
|
ld a, [wMobileSDK_ReceivePacketBuffer + 4]
|
|
ld b, a
|
|
call Function111dd9
|
|
call Function111e15
|
|
ld a, b
|
|
ld [hl], a
|
|
ld a, [wc805]
|
|
ld [wc807], a
|
|
ret
|
|
|
|
Function111dd9:
|
|
cp $ff
|
|
jr z, .asm_111de7
|
|
or a
|
|
ret z
|
|
cp $4
|
|
jr z, .asm_111dea
|
|
cp $5
|
|
jr z, .asm_111e12
|
|
.asm_111de7
|
|
ld b, $7
|
|
ret
|
|
.asm_111dea
|
|
ld b, $5
|
|
ld a, [wc822]
|
|
bit 0, a
|
|
jr z, .asm_111df8
|
|
ld a, [wc86a]
|
|
jr .asm_111dfb
|
|
.asm_111df8
|
|
ld a, [wc985]
|
|
.asm_111dfb
|
|
cp $4
|
|
ret z
|
|
cp $1c
|
|
ret z
|
|
cp $1a
|
|
ret z
|
|
dec b
|
|
cp $3
|
|
ret z
|
|
ld b, $1
|
|
ld a, [wc822]
|
|
bit 4, a
|
|
ret z
|
|
inc b
|
|
ret
|
|
.asm_111e12
|
|
ld b, $3
|
|
ret
|
|
|
|
Function111e15:
|
|
ld a, b
|
|
and $7
|
|
rrca
|
|
rrca
|
|
rrca
|
|
push hl
|
|
ld l, a
|
|
ld a, [wc821]
|
|
and $1f
|
|
or l
|
|
ld [wc821], a
|
|
pop hl
|
|
ret
|
|
|
|
Function111e28:
|
|
jp ResetReceivePacketBuffer
|
|
|
|
GetErrorCode:
|
|
; Converts an error packet into a BCD error code
|
|
ld a, [wMobileSDK_SendCommandID]
|
|
cp -1
|
|
jp z, Function111ef8
|
|
ld a, [wc86a]
|
|
cp $d
|
|
jr z, .asm_111e48
|
|
cp $2a
|
|
jr z, .asm_111e48
|
|
ld a, $6
|
|
ld [wc807], a
|
|
ld hl, wc821
|
|
set 1, [hl]
|
|
.asm_111e48
|
|
ld a, [wc822]
|
|
bit 0, a
|
|
jr z, .asm_111e54
|
|
ld hl, wMobileSDK_ReceivePacketBufferAlt + 4
|
|
jr .asm_111e57
|
|
.asm_111e54
|
|
ld hl, wMobileSDK_ReceivePacketBuffer + 4
|
|
.asm_111e57
|
|
ld a, [hli]
|
|
ld [wc80e], a
|
|
cp MOBILE_COMMAND_BEGIN_SESSION
|
|
jr z, .adapter_not_plugged_in
|
|
cp MOBILE_COMMAND_DIAL_TELEPHONE
|
|
jr z, .dial_telephone
|
|
cp MOBILE_COMMAND_HANG_UP_TELEPHONE
|
|
jr z, .hang_up_logout
|
|
cp MOBILE_COMMAND_TRANSFER_DATA
|
|
jr z, .transfer_data
|
|
cp MOBILE_COMMAND_READ_CONFIGURATION_DATA
|
|
jr z, .read_configuration_data
|
|
cp MOBILE_COMMAND_ISP_LOGIN
|
|
jr z, .isp_login
|
|
cp MOBILE_COMMAND_ISP_LOGOUT
|
|
jr z, .hang_up_logout
|
|
cp MOBILE_COMMAND_OPEN_TCP_CONNECTION
|
|
jr z, .open_tcp_connection
|
|
cp MOBILE_COMMAND_CLOSE_TCP_CONNECTION
|
|
jr z, .close_tcp_connection
|
|
cp MOBILE_COMMAND_DNS_QUERY
|
|
jr z, .dns_query
|
|
ld a, [hl]
|
|
|
|
.store_error_code
|
|
ld [wc80f], a
|
|
ret
|
|
|
|
.adapter_not_plugged_in
|
|
ld a, $10
|
|
jr .store_error_code
|
|
|
|
.dial_telephone
|
|
ld a, [hl]
|
|
or $0
|
|
jr z, .asm_111e9d
|
|
cp $2
|
|
jr z, .asm_111e99
|
|
ld a, $13
|
|
jr .store_error_code
|
|
.asm_111e99
|
|
ld a, $17
|
|
jr .store_error_code
|
|
.asm_111e9d
|
|
ld a, $12
|
|
jr .store_error_code
|
|
|
|
.hang_up_logout
|
|
ld hl, wc821
|
|
res 1, [hl]
|
|
res 4, [hl]
|
|
ld a, $2
|
|
ld [wc807], a
|
|
ret
|
|
|
|
.transfer_data
|
|
ld a, [hl]
|
|
cp $1
|
|
jr nz, .asm_111ed3
|
|
ld a, [wc822]
|
|
bit 4, a
|
|
jr z, .asm_111ed3
|
|
res 4, a
|
|
ld [wc822], a
|
|
ld hl, wc821
|
|
ld a, [hl]
|
|
and $f
|
|
or $2
|
|
ld [hl], a
|
|
ld a, $23
|
|
ld [wc80f], a
|
|
ld a, $6
|
|
ld [wc807], a
|
|
ret
|
|
.asm_111ed3
|
|
ld hl, wc822
|
|
res 5, [hl]
|
|
ld a, $24
|
|
jr .store_error_code
|
|
|
|
.read_configuration_data
|
|
ld a, $14
|
|
jr .store_error_code
|
|
|
|
.isp_login
|
|
ld a, $22
|
|
jr .store_error_code
|
|
|
|
.open_tcp_connection
|
|
ld hl, wc821
|
|
res 1, [hl]
|
|
|
|
.dns_query
|
|
ld a, $24
|
|
jr .store_error_code
|
|
|
|
.close_tcp_connection
|
|
ld hl, wc821
|
|
res 1, [hl]
|
|
ld a, $3
|
|
ld [wc807], a
|
|
ret
|
|
|
|
Function111ef8:
|
|
ld a, [wc805]
|
|
ld [wc807], a
|
|
ret
|
|
|
|
PacketSendEmptyBody:
|
|
ld de, 10
|
|
|
|
Function111f02:
|
|
ld [wMobileSDK_SendCommandID], a
|
|
ld b, $5
|
|
|
|
PacketSendBytes:
|
|
; hl = bytes
|
|
; de = size
|
|
; b = ?
|
|
call Function1100b4
|
|
ret c
|
|
ld a, [wc800]
|
|
cp $0
|
|
jr z, .asm_111f17
|
|
call Function110226
|
|
scf
|
|
ret
|
|
.asm_111f17
|
|
ldh a, [rSC]
|
|
and 1 << rSC_ON
|
|
jr nz, .asm_111f17
|
|
di
|
|
ld a, [wMobileSDK_SendCommandID]
|
|
cp $ff
|
|
jr z, .asm_111f35
|
|
ld a, l
|
|
ld [wc81c], a
|
|
ld a, h
|
|
ld [wc81d], a
|
|
ld a, e
|
|
ld [wc81a], a
|
|
ld a, d
|
|
ld [wc81b], a
|
|
.asm_111f35
|
|
ld a, e
|
|
ld [wc801], a
|
|
ld a, d
|
|
ld [wc802], a
|
|
ld a, l
|
|
ld [wc803], a
|
|
ld a, h
|
|
ld [wc804], a
|
|
ld hl, wc807
|
|
ld a, [hl]
|
|
cp b
|
|
jr z, .asm_111f4f
|
|
ld [wc805], a
|
|
.asm_111f4f
|
|
ld a, b
|
|
ld [wc807], a
|
|
xor a
|
|
ld [wc806], a
|
|
ld a, $1
|
|
ld [wc800], a
|
|
ld hl, wc822
|
|
set 5, [hl]
|
|
ei
|
|
ret
|
|
|
|
Function111f63:
|
|
push de
|
|
ld hl, 0
|
|
ld c, b
|
|
xor a
|
|
cp b
|
|
jr z, .asm_111f71
|
|
.asm_111f6c
|
|
call Function111f8d
|
|
jr nz, .asm_111f6c
|
|
|
|
.asm_111f71
|
|
ld b, $4
|
|
.asm_111f73
|
|
call Function111f8d
|
|
jr nz, .asm_111f73
|
|
ld e, l
|
|
ld d, h
|
|
ld hl, $000a
|
|
add hl, bc
|
|
ld c, l
|
|
ld b, h
|
|
pop hl
|
|
ld a, d
|
|
ld [hli], a
|
|
ld a, e
|
|
ld [hli], a
|
|
ld a, $80
|
|
ld [hli], a
|
|
xor a
|
|
ld [hl], a
|
|
ld e, c
|
|
ld d, b
|
|
ret
|
|
|
|
Function111f8d:
|
|
dec de
|
|
ld a, [de]
|
|
add l
|
|
ld l, a
|
|
ld a, $0
|
|
adc h
|
|
ld h, a
|
|
dec b
|
|
ret
|
|
|
|
Function111f97:
|
|
ld hl, wc822
|
|
bit 0, [hl]
|
|
ret nz
|
|
ld a, [wc807]
|
|
cp $2
|
|
jr c, .done
|
|
cp $5
|
|
jr z, .done
|
|
cp $6
|
|
jr nz, .hang_up
|
|
ld a, [wc80f]
|
|
cp $22
|
|
jr z, .done
|
|
cp $23
|
|
jr z, .done
|
|
cp $26
|
|
jr z, .done
|
|
swap a
|
|
and $f
|
|
cp $1
|
|
jr z, .done
|
|
cp $0
|
|
jr z, .done
|
|
cp $8
|
|
jr nz, .hang_up
|
|
.done
|
|
scf
|
|
ret
|
|
.hang_up
|
|
ld b, $5
|
|
ld hl, wMobileSDK_SendCommandID
|
|
ld a, [hl]
|
|
cp -1
|
|
jr z, .begin_session
|
|
ld a, MOBILE_COMMAND_TELEPHONE_STATUS | $80
|
|
ld [hl], a
|
|
ld hl, MobilePacket_TelephoneStatus
|
|
ld de, MobilePacket_TelephoneStatus.End - MobilePacket_TelephoneStatus
|
|
call PacketSendBytes
|
|
ld hl, wc822
|
|
set 0, [hl]
|
|
ret
|
|
.begin_session
|
|
ld hl, MobilePacket_BeginSession
|
|
ld de, MobilePacket_BeginSession.End - MobilePacket_BeginSession
|
|
jp PacketSendBytes
|
|
|
|
ds 14
|
|
|
|
MobilePacket_Idle:
|
|
db $4b
|
|
.End
|
|
|
|
MobilePacket_BeginSession:
|
|
db $99, $66, MOBILE_COMMAND_BEGIN_SESSION, $00, $00, $08, "NINTENDO", $02, $77, $80, $00
|
|
.End
|
|
|
|
MobilePacket_EndSession:
|
|
db $99, $66, MOBILE_COMMAND_END_SESSION, $00, $00, $00, $00, $11, $80, $00
|
|
.End
|
|
|
|
MobilePacket_DialTelephone:
|
|
db $99, $66, MOBILE_COMMAND_DIAL_TELEPHONE, $00, $00, $00
|
|
.End
|
|
|
|
MobilePacket_HangUpTelephone:
|
|
db $99, $66, MOBILE_COMMAND_HANG_UP_TELEPHONE, $00, $00, $00, $00, $13, $80, $00
|
|
.End
|
|
|
|
MobilePacket_TelephoneStatus:
|
|
db $99, $66, MOBILE_COMMAND_TELEPHONE_STATUS, $00, $00, $00, $00, $17, $80, $00
|
|
.End
|
|
|
|
MobilePacket_ISPLogin:
|
|
db $99, $66, MOBILE_COMMAND_ISP_LOGIN, $00, $00
|
|
.End
|
|
|
|
MobilePacket_ISPLogout:
|
|
db $99, $66, MOBILE_COMMAND_ISP_LOGOUT, $00, $00, $00, $00, $22, $80, $00
|
|
.End
|
|
|
|
MobilePacket_ReadConfigurationDataPart1:
|
|
db $99, $66, MOBILE_COMMAND_READ_CONFIGURATION_DATA, $00, $00, $02, $00, $60, $00, $7b, $80, $00
|
|
.End
|
|
|
|
MobilePacket_ReadConfigurationDataPart2:
|
|
db $99, $66, MOBILE_COMMAND_READ_CONFIGURATION_DATA, $00, $00, $02, $60, $60, $00, $db, $80, $00
|
|
.End
|
|
|
|
MobilePacket_WriteConfigurationData:
|
|
db $99, $66, MOBILE_COMMAND_WRITE_CONFIGURATION_DATA, $00, $00
|
|
.End
|
|
|
|
MobilePacket_DNSQuery:
|
|
db $99, $66, MOBILE_COMMAND_DNS_QUERY, $00, $00
|
|
.End
|
|
|
|
MobilePacket_WaitForTelephoneCall:
|
|
db $99, $66, MOBILE_COMMAND_WAIT_FOR_TELEPHONE_CALL, $00, $00, $00, $00, $14, $80, $00
|
|
.End
|
|
|
|
MobilePacket_TransferData:
|
|
db $99, $66, MOBILE_COMMAND_TRANSFER_DATA, $00, $00, $01, $ff, $01, $15, $80, $00
|
|
.End
|
|
|
|
MobilePacket_OpenTCPConnection:
|
|
db $99, $66, MOBILE_COMMAND_OPEN_TCP_CONNECTION, $00, $00, $06
|
|
.End
|
|
|
|
MobilePacket_CloseTCPConnection:
|
|
db $99, $66, MOBILE_COMMAND_CLOSE_TCP_CONNECTION, $00, $00, $01
|
|
.End
|
|
|
|
Unknown_112089:
|
|
db -20, $14, $c9
|
|
db -28, $0f, $0e
|
|
db -32, $0c, $53
|
|
db -60, $07, $94
|
|
db -80, $05, $ee
|
|
db -20, $10, $b4
|
|
db -28, $0c, $dd
|
|
|
|
Unknown_11209e:
|
|
db "HELO ", 0
|
|
Unknown_1120a4:
|
|
db "MAIL FROM:<", 0
|
|
Unknown_1120b0:
|
|
db "RCPT TO:<", 0
|
|
Unknown_1120ba:
|
|
db "DATA\r\n", 0
|
|
Unknown_1120c1:
|
|
db "QUIT\r\n", 0
|
|
Unknown_1120c8:
|
|
db "USER ", 0
|
|
Unknown_1120ce:
|
|
db "PASS ", 0
|
|
Unknown_1120d4:
|
|
db "STAT\r\n", 0
|
|
Unknown_1120db:
|
|
db "LIST 00000\r\n", 0
|
|
Unknown_1120e8:
|
|
db "RETR 00000\r\n", 0
|
|
Unknown_1120f5:
|
|
db "DELE 00000\r\n", 0
|
|
Unknown_112102:
|
|
db "TOP 00000 0\r\n", 0
|
|
Unknown_112110:
|
|
db "GET ", 0
|
|
Unknown_112115:
|
|
db " HTTP/1.0\r\n", 0
|
|
Unknown_112121:
|
|
db "User-Agent: CGB-", 0
|
|
Unknown_112132:
|
|
db "\r\n\r\n", 0
|
|
Unknown_112137:
|
|
db "POST ", 0
|
|
Unknown_11213d:
|
|
db "Content-Length: ", 0
|
|
|
|
Function11214e:
|
|
ld a, [wc822]
|
|
bit 5, a
|
|
ret nz
|
|
ld a, [wc86a]
|
|
cp $a
|
|
ret c
|
|
ld c, a
|
|
cp $d
|
|
jr z, .asm_112187
|
|
cp $f
|
|
jr z, .asm_112196
|
|
cp $29
|
|
jr z, .asm_112175
|
|
cp $2a
|
|
jr z, .asm_112175
|
|
cp $28
|
|
jr z, .asm_112175
|
|
.asm_11216f
|
|
ld a, [wc807]
|
|
cp $6
|
|
ret z
|
|
.asm_112175
|
|
ld b, $0
|
|
sla c
|
|
ld hl, Jumptable_1121ac - 2 * $a
|
|
add hl, bc
|
|
ld a, [hli]
|
|
ld h, [hl]
|
|
ld l, a
|
|
push hl
|
|
ld hl, wc86b
|
|
inc [hl]
|
|
ld a, [hl]
|
|
ret
|
|
.asm_112187
|
|
ld c, a
|
|
ld a, [wc86b]
|
|
cp $1
|
|
jr nz, .asm_11216f
|
|
ld hl, wc821
|
|
res 1, [hl]
|
|
jr .asm_112175
|
|
.asm_112196
|
|
ld c, a
|
|
ld a, [wc80f]
|
|
cp $24
|
|
jr nz, .asm_11216f
|
|
ld a, [wc86b]
|
|
cp $1
|
|
jr nz, .asm_11216f
|
|
ld hl, wc821
|
|
res 1, [hl]
|
|
jr .asm_112175
|
|
|
|
Jumptable_1121ac:
|
|
dw Function1121f6
|
|
dw Function112271
|
|
dw Function112373
|
|
dw Function1123b6
|
|
dw Function1123e1
|
|
dw Function112451
|
|
dw Function112715
|
|
dw Function11273a
|
|
dw Function11299c
|
|
dw Function112d33
|
|
dw Function112d33
|
|
dw Function112840
|
|
dw Function1128db
|
|
dw Function112969
|
|
dw Function112a56
|
|
dw Function112b71
|
|
dw Function112bec
|
|
dw Function112bbb
|
|
dw Function112bec
|
|
dw Function112b71
|
|
dw Function1134cb
|
|
dw Function112d33
|
|
dw Function112d33
|
|
dw Function112d33
|
|
dw Function112d33
|
|
dw Function112d33
|
|
dw Function112d33
|
|
dw Function113519
|
|
dw Function113519
|
|
dw Function113519
|
|
dw Function113e42
|
|
dw Function113ef2
|
|
dw Function113f2d
|
|
dw Function1121f6
|
|
dw Function1134cb
|
|
dw Function113672
|
|
dw Function113626
|
|
|
|
Function1121f6:
|
|
dec a
|
|
jr z, .asm_1121fe
|
|
dec a
|
|
jr z, .asm_112210
|
|
dec [hl]
|
|
ret
|
|
|
|
.asm_1121fe
|
|
ld a, [wMobileSDK_AdapterType]
|
|
or a
|
|
jr z, .asm_112206
|
|
jr Mobile_EndSession
|
|
|
|
.asm_112206
|
|
ld a, $10
|
|
call Function11225d
|
|
res 0, [hl]
|
|
set 1, [hl]
|
|
ret
|
|
|
|
.asm_112210
|
|
ld hl, wc86e
|
|
ld a, [hli]
|
|
ld h, [hl]
|
|
ld l, a
|
|
ld a, [wMobileSDK_AdapterType]
|
|
cp $88
|
|
jr c, .asm_112249
|
|
sub $88
|
|
ld [hl], a
|
|
|
|
; There aren't more than four adapters
|
|
cp $4
|
|
jr c, .asm_112226
|
|
ld a, $3
|
|
.asm_112226
|
|
|
|
; The green adapter was scrapped, so the red adapter is the third
|
|
cp $3
|
|
jr nz, .asm_11222b
|
|
dec a
|
|
.asm_11222b
|
|
|
|
ld b, a
|
|
ld a, $4
|
|
sub b
|
|
ld d, a
|
|
rlca
|
|
add d
|
|
ld c, a
|
|
xor a
|
|
cp b
|
|
jr z, .asm_11223a
|
|
ld a, $3
|
|
xor b
|
|
|
|
.asm_11223a
|
|
ld hl, wc871
|
|
ld [hld], a
|
|
ld [hl], c
|
|
ld a, [wc86a]
|
|
cp $a
|
|
jr nz, Function112251
|
|
jp Function1116a0
|
|
|
|
.asm_112249
|
|
ld a, $10
|
|
call Function11225d
|
|
jp Function1116a4
|
|
|
|
Function112251:
|
|
xor a
|
|
ld [wc821], a
|
|
ld [wc807], a
|
|
inc a
|
|
ld [wc86a], a
|
|
ret
|
|
|
|
Function11225d:
|
|
ld [wc80f], a
|
|
ld a, $5
|
|
ld [wc86a], a
|
|
ld hl, wc821
|
|
ret
|
|
|
|
Mobile_EndSession:
|
|
ld a, MOBILE_COMMAND_END_SESSION | $80
|
|
ld hl, MobilePacket_EndSession
|
|
jp PacketSendEmptyBody
|
|
|
|
Function112271:
|
|
dec a
|
|
jr z, .asm_11228c
|
|
dec a
|
|
jr z, .asm_112292
|
|
dec a
|
|
jr z, .asm_1122a1
|
|
dec a
|
|
jp z, .asm_112309
|
|
dec a
|
|
jp z, .asm_112326
|
|
dec a
|
|
jp z, .asm_112335
|
|
dec a
|
|
jp z, .asm_112342
|
|
dec [hl]
|
|
ret
|
|
|
|
.asm_11228c
|
|
ld hl, MobilePacket_ReadConfigurationDataPart1
|
|
jp Function11236b
|
|
|
|
.asm_112292
|
|
ld hl, wc829
|
|
ld a, LOW(wc8ca + 22)
|
|
ld [hli], a
|
|
ld a, HIGH(wc8ca + 22)
|
|
ld [hli], a
|
|
ld hl, MobilePacket_ReadConfigurationDataPart2
|
|
jp Function11236b
|
|
|
|
.asm_1122a1
|
|
ld hl, wc880
|
|
ld a, [hli]
|
|
cp "M"
|
|
jr nz, .asm_1122f5
|
|
ld a, [hld]
|
|
cp "A"
|
|
jr nz, .asm_1122f5
|
|
ld b, $be
|
|
ld de, 0
|
|
.asm_1122b3
|
|
ld a, [hli]
|
|
add e
|
|
ld e, a
|
|
ld a, $0
|
|
adc d
|
|
ld d, a
|
|
dec b
|
|
jr nz, .asm_1122b3
|
|
ld a, [hli]
|
|
cp d
|
|
jr nz, .asm_1122fc
|
|
ld a, [hl]
|
|
cp e
|
|
jr nz, .asm_1122fc
|
|
ld hl, wc884
|
|
ld de, wc836
|
|
ld b, $8
|
|
call MobileSDK_CopyBytes
|
|
ld hl, wc8ca
|
|
ld b, $2c
|
|
call MobileSDK_CopyBytes
|
|
ld a, [wMobileSDK_PacketBuffer + 50]
|
|
ld c, a
|
|
sub $8
|
|
ld e, a
|
|
ld d, 0
|
|
ld hl, wMobileSDK_PacketBuffer + 51
|
|
add hl, de
|
|
ld e, l
|
|
ld d, h
|
|
ld hl, wc836
|
|
ld b, $8
|
|
call MobileSDK_CopyBytes
|
|
ld b, c
|
|
call Function111f63
|
|
jr Function11235a
|
|
|
|
.asm_1122f5
|
|
ld a, $25
|
|
ld [wc872], a
|
|
jr .asm_112301
|
|
|
|
.asm_1122fc
|
|
ld a, $14
|
|
ld [wc872], a
|
|
|
|
.asm_112301
|
|
ld a, $6
|
|
ld [wc86b], a
|
|
jp Mobile_EndSession
|
|
|
|
.asm_112309
|
|
ld a, [wc821]
|
|
and $e0
|
|
jr nz, .asm_112314
|
|
ld b, $92
|
|
jr Function11234b
|
|
|
|
.asm_112314
|
|
cp $e0
|
|
ld a, $11
|
|
jr z, .asm_11231b
|
|
inc a
|
|
|
|
.asm_11231b
|
|
ld [wc872], a
|
|
ld a, $6
|
|
ld [wc86b], a
|
|
jp Mobile_EndSession
|
|
|
|
.asm_112326
|
|
ld d, a
|
|
ld a, [wMobileSDK_PacketBuffer + 50]
|
|
add $a
|
|
ld e, a
|
|
ld hl, wMobileSDK_PacketBuffer + 45
|
|
ld a, $a1
|
|
jp Function111f02
|
|
|
|
.asm_112335
|
|
ld a, $2
|
|
ld [wc86a], a
|
|
ld hl, wc821
|
|
res 0, [hl]
|
|
set 5, [hl]
|
|
ret
|
|
|
|
.asm_112342
|
|
ld a, [wc872]
|
|
call Function11225d
|
|
jp Function1116a4
|
|
|
|
Function11234b:
|
|
ld a, [wMobileSDK_PacketBuffer + 5]
|
|
add $a
|
|
ld e, a
|
|
ld d, 0
|
|
ld hl, wMobileSDK_PacketBuffer
|
|
ld a, b
|
|
jp Function111f02
|
|
|
|
Function11235a:
|
|
ld hl, wc86e
|
|
ld a, LOW(wc880)
|
|
ld [hli], a
|
|
ld a, HIGH(wc880)
|
|
ld [hl], a
|
|
ld a, MOBILE_COMMAND_TELEPHONE_STATUS | $80
|
|
ld hl, MobilePacket_TelephoneStatus
|
|
jp PacketSendEmptyBody
|
|
|
|
Function11236b:
|
|
ld a, $99
|
|
ld de, $000c
|
|
jp Function111f02
|
|
|
|
Function112373:
|
|
dec a
|
|
jr z, Function11235a
|
|
dec a
|
|
jr z, .asm_112381
|
|
dec a
|
|
jr z, .asm_11239b
|
|
dec a
|
|
jr z, .asm_1123ad
|
|
dec [hl]
|
|
ret
|
|
|
|
.asm_112381
|
|
ld a, [wc821]
|
|
and $e0
|
|
jr nz, .asm_11238c
|
|
ld b, $92
|
|
jr Function11234b
|
|
|
|
.asm_11238c
|
|
cp $e0
|
|
ld a, $11
|
|
jr z, .asm_112393
|
|
inc a
|
|
|
|
.asm_112393
|
|
ld a, $3
|
|
ld [wc86b], a
|
|
jp Mobile_EndSession
|
|
|
|
.asm_11239b
|
|
ld hl, wc822
|
|
set 4, [hl]
|
|
ld a, $2
|
|
ld [wc86a], a
|
|
ld hl, wc821
|
|
res 0, [hl]
|
|
set 6, [hl]
|
|
ret
|
|
|
|
.asm_1123ad
|
|
ld a, [wc872]
|
|
call Function11225d
|
|
jp Function1116a4
|
|
|
|
Function1123b6:
|
|
dec a
|
|
jr z, .wait_for_call
|
|
dec a
|
|
jr z, .asm_1123c6
|
|
ret
|
|
|
|
.asm_1123bd
|
|
dec [hl]
|
|
|
|
.wait_for_call
|
|
ld a, MOBILE_COMMAND_WAIT_FOR_TELEPHONE_CALL | $80
|
|
ld hl, MobilePacket_WaitForTelephoneCall
|
|
jp PacketSendEmptyBody
|
|
|
|
.asm_1123c6
|
|
ld a, [wMobileSDK_ReceivePacketBuffer]
|
|
cp $ee
|
|
jr z, .asm_1123bd
|
|
ld hl, wc822
|
|
set 4, [hl]
|
|
ld a, $2
|
|
ld [wc86a], a
|
|
ld hl, wc821
|
|
res 0, [hl]
|
|
set 6, [hl]
|
|
set 5, [hl]
|
|
ret
|
|
|
|
Function1123e1:
|
|
dec a
|
|
jr z, .asm_1123f2
|
|
dec a
|
|
jr z, .asm_11240a
|
|
dec a
|
|
jr z, .asm_112416
|
|
dec a
|
|
jr z, .asm_11241e
|
|
dec a
|
|
jr z, .asm_112421
|
|
dec [hl]
|
|
ret
|
|
|
|
.asm_1123f2
|
|
ld a, [wMobileSDK_ReceivePacketBuffer]
|
|
cp $9f
|
|
jr z, .asm_112408
|
|
call Function1127e1
|
|
jr z, .asm_112408
|
|
ld hl, wc86b
|
|
dec [hl]
|
|
ld hl, wMobileSDK_PacketBuffer + 32
|
|
jp Function1127c5
|
|
|
|
.asm_112408
|
|
jr Function112430
|
|
|
|
.asm_11240a
|
|
xor a
|
|
ld [wc86d], a
|
|
ld a, MOBILE_COMMAND_ISP_LOGOUT | $80
|
|
ld hl, MobilePacket_ISPLogout
|
|
jp PacketSendEmptyBody
|
|
|
|
.asm_112416
|
|
ld a, MOBILE_COMMAND_HANG_UP_TELEPHONE | $80
|
|
ld hl, MobilePacket_HangUpTelephone
|
|
jp PacketSendEmptyBody
|
|
|
|
.asm_11241e
|
|
jp Mobile_EndSession
|
|
|
|
.asm_112421
|
|
ld hl, wc822
|
|
res 4, [hl]
|
|
ld hl, wc821
|
|
ld a, [hl]
|
|
and $f
|
|
ld [hl], a
|
|
jp Function1116a0
|
|
|
|
Function112430:
|
|
ld a, $3
|
|
ld [wc807], a
|
|
ld de, wMobileSDK_PacketBuffer
|
|
ld hl, MobilePacket_CloseTCPConnection
|
|
ld b, MobilePacket_CloseTCPConnection.End - MobilePacket_CloseTCPConnection
|
|
call MobileSDK_CopyBytes
|
|
ld a, [wc86c]
|
|
ld [de], a
|
|
inc de
|
|
inc b
|
|
call Function111f63
|
|
ld a, $a4
|
|
ld hl, wMobileSDK_PacketBuffer
|
|
jp Function111f02
|
|
|
|
Function112451:
|
|
dec a
|
|
jr z, .asm_112458
|
|
dec a
|
|
jr z, .asm_112496
|
|
ret
|
|
|
|
.asm_112458
|
|
ld b, $6
|
|
ld de, wMobileSDK_PacketBuffer + 92
|
|
call Function111f63
|
|
ld a, [wc86e]
|
|
inc a
|
|
cp $3
|
|
jr nz, .asm_11248b
|
|
ld a, [wMobileSDK_ReceivePacketBuffer + 128]
|
|
or a
|
|
jr z, .asm_11248b
|
|
ld hl, wc995
|
|
ld a, [hli]
|
|
cp $99
|
|
jr nz, .asm_112480
|
|
ld a, [hli]
|
|
cp $66
|
|
jr nz, .asm_112480
|
|
ld a, [hli]
|
|
cp $23
|
|
jr z, .asm_11248b
|
|
|
|
.asm_112480
|
|
ld hl, wMobileSDK_PacketBuffer + 80
|
|
ld de, wc995
|
|
ld b, $10
|
|
call MobileSDK_CopyBytes
|
|
|
|
.asm_11248b
|
|
ld a, $a3
|
|
ld de, $0010
|
|
ld hl, wMobileSDK_PacketBuffer + 80
|
|
jp Function111f02
|
|
|
|
.asm_112496
|
|
ld a, [wMobileSDK_ReceivePacketBuffer]
|
|
cp $a3
|
|
jr z, .asm_1124ce
|
|
ld a, [wc822]
|
|
bit 3, a
|
|
jr z, .asm_1124ab
|
|
dec [hl]
|
|
ld a, $3
|
|
ld [wc807], a
|
|
ret
|
|
|
|
.asm_1124ab
|
|
ld a, [wc9af]
|
|
cp $5
|
|
jr c, .asm_1124b8
|
|
ld hl, wc821
|
|
set 1, [hl]
|
|
ret
|
|
|
|
.asm_1124b8
|
|
dec [hl]
|
|
ld hl, wc9af
|
|
inc [hl]
|
|
ld hl, wc822
|
|
set 3, [hl]
|
|
ld hl, wc815
|
|
ld a, [wc820]
|
|
ld [hli], a
|
|
ld a, [wc81f]
|
|
ld [hl], a
|
|
ret
|
|
|
|
.asm_1124ce
|
|
xor a
|
|
ld [wc9af], a
|
|
ld a, [wc86e]
|
|
inc a
|
|
ld [wc86d], a
|
|
dec a
|
|
jp z, Function11261c
|
|
dec a
|
|
jp z, Function112654
|
|
dec a
|
|
jp z, Function112597
|
|
dec a
|
|
jp z, Function112566
|
|
call Function1125c7
|
|
push de
|
|
ld de, wc880
|
|
ld hl, wc827
|
|
ld a, e
|
|
ld [hli], a
|
|
ld a, d
|
|
ld [hli], a
|
|
ld a, e
|
|
ld [hli], a
|
|
ld a, d
|
|
ld [hli], a
|
|
ld a, $1
|
|
ld [wc86e], a
|
|
ld a, $fa
|
|
ld [hli], a
|
|
xor a
|
|
ld [hli], a
|
|
xor a
|
|
ld [hli], a
|
|
ld [hli], a
|
|
pop de
|
|
ld a, $1
|
|
ld [wc994], a
|
|
call Function11269b
|
|
ld a, $5
|
|
ld [wc86b], a
|
|
call Function112534
|
|
ld a, [wc9a5]
|
|
or a
|
|
jr z, .asm_112521
|
|
ld a, $1
|
|
|
|
.asm_112521
|
|
add $23
|
|
ld [wc86a], a
|
|
ld a, [wc98a]
|
|
cp $2
|
|
jr nz, .asm_112531
|
|
xor a
|
|
ld [wc9a5], a
|
|
|
|
.asm_112531
|
|
jp Function1125bf
|
|
|
|
Function112534:
|
|
ld b, $fa
|
|
ld hl, wc880
|
|
xor a
|
|
.asm_11253a
|
|
ld [hli], a
|
|
dec b
|
|
jr nz, .asm_11253a
|
|
ld a, [wc876]
|
|
ld [wc87c], a
|
|
ld a, [wc877]
|
|
ld [wc87d], a
|
|
ld a, [wc87a]
|
|
ld [wc87e], a
|
|
ld a, [wc87b]
|
|
ld [wc87f], a
|
|
ld a, c
|
|
ld [wMobileSDK_PacketBuffer + 17], a
|
|
ld b, c
|
|
call Function111f63
|
|
ld a, $95
|
|
ld hl, wMobileSDK_PacketBuffer + 12
|
|
jp Function111f02
|
|
|
|
Function112566:
|
|
call Function1125c7
|
|
ld a, [wMobileSDK_PacketBuffer + 19]
|
|
and $1
|
|
or a
|
|
jr nz, .asm_11257d
|
|
ld a, [wc98a]
|
|
cp $2
|
|
jr nz, .asm_11257d
|
|
ld a, $1
|
|
ld [wc994], a
|
|
|
|
.asm_11257d
|
|
call Function11269b
|
|
ld a, $5
|
|
ld [wc86b], a
|
|
call Function112534
|
|
ld a, [wc9a5]
|
|
or a
|
|
jr z, .asm_112590
|
|
ld a, $1
|
|
|
|
.asm_112590
|
|
add $21
|
|
ld [wc86a], a
|
|
jr Function1125bf
|
|
|
|
Function112597:
|
|
call Function1125c7
|
|
call Function11269b
|
|
ld a, $5
|
|
ld [wc86b], a
|
|
call Function112534
|
|
ld a, [wc98f]
|
|
ld b, a
|
|
ld a, [wc994]
|
|
and $1
|
|
add $13
|
|
bit 0, b
|
|
jr z, .asm_1125bc
|
|
sub $13
|
|
add $1f
|
|
dec b
|
|
sla b
|
|
add b
|
|
|
|
.asm_1125bc
|
|
ld [wc86a], a
|
|
|
|
Function1125bf:
|
|
ld hl, wc821
|
|
set 0, [hl]
|
|
res 2, [hl]
|
|
ret
|
|
|
|
Function1125c7:
|
|
ld hl, wc872
|
|
ld a, [hli]
|
|
ld c, a
|
|
ld a, [hli]
|
|
ld b, a
|
|
ld a, [hli]
|
|
ld e, a
|
|
ld d, [hl]
|
|
ld a, [wc994]
|
|
and $1
|
|
xor $1
|
|
ld [wc86b], a
|
|
ld hl, wc827
|
|
ld a, e
|
|
ld [hli], a
|
|
ld a, d
|
|
ld [hli], a
|
|
inc de
|
|
inc de
|
|
ld a, LOW(wc880)
|
|
ld [hli], a
|
|
ld a, HIGH(wc880)
|
|
ld [hli], a
|
|
dec bc
|
|
dec bc
|
|
ld a, $fa
|
|
ld [hli], a
|
|
ld a, $0
|
|
ld [hli], a
|
|
xor a
|
|
ld [hli], a
|
|
ld [hli], a
|
|
ld de, wMobileSDK_PacketBuffer
|
|
ld hl, MobilePacket_TransferData
|
|
ld b, $6
|
|
call MobileSDK_CopyBytes
|
|
ld a, [wc86c]
|
|
ld [de], a
|
|
inc de
|
|
ld b, $1
|
|
call Function111f63
|
|
ld de, wMobileSDK_PacketBuffer + 12
|
|
ld hl, MobilePacket_TransferData
|
|
ld b, $5
|
|
call MobileSDK_CopyBytes
|
|
inc de
|
|
ld a, [wc86c]
|
|
ld [de], a
|
|
inc de
|
|
ret
|
|
|
|
Function11261c:
|
|
xor a
|
|
ld [wc86b], a
|
|
ld a, [wc86c]
|
|
ld [wMobileSDK_PacketBuffer + 118], a
|
|
ld de, wMobileSDK_PacketBuffer + 102
|
|
ld [de], a
|
|
inc de
|
|
ld b, $1
|
|
call Function111f63
|
|
call Function112724
|
|
ld a, [wMobileSDK_PacketBuffer + 117]
|
|
ld b, a
|
|
ld de, wMobileSDK_PacketBuffer + 118
|
|
add e
|
|
ld e, a
|
|
ld a, $0
|
|
adc d
|
|
ld d, a
|
|
call Function111f63
|
|
ld hl, wMobileSDK_PacketBuffer + 96
|
|
call Function1127c5
|
|
ld a, $11
|
|
ld [wc86a], a
|
|
|
|
Function11264e:
|
|
ld hl, wc821
|
|
set 0, [hl]
|
|
ret
|
|
|
|
Function112654:
|
|
xor a
|
|
ld [wc86b], a
|
|
ld a, [wc86c]
|
|
ld [wMobileSDK_PacketBuffer + 102], a
|
|
ld [wMobileSDK_PacketBuffer + 166], a
|
|
ld de, wMobileSDK_PacketBuffer + 134
|
|
ld [de], a
|
|
inc de
|
|
ld b, $1
|
|
call Function111f63
|
|
call Function112724
|
|
ld a, [wMobileSDK_PacketBuffer + 165]
|
|
ld b, a
|
|
ld de, wMobileSDK_PacketBuffer + 166
|
|
add e
|
|
ld e, a
|
|
ld a, $0
|
|
adc d
|
|
ld d, a
|
|
call Function111f63
|
|
ld a, [wMobileSDK_PacketBuffer + 101]
|
|
ld b, a
|
|
ld de, wMobileSDK_PacketBuffer + 102
|
|
add e
|
|
ld e, a
|
|
ld a, $0
|
|
adc d
|
|
ld d, a
|
|
call Function111f63
|
|
ld hl, wMobileSDK_PacketBuffer + 128
|
|
call Function1127c5
|
|
ld a, $12
|
|
ld [wc86a], a
|
|
jr Function11264e
|
|
|
|
Function11269b:
|
|
ld bc, $0001
|
|
ld hl, Unknown_112110
|
|
ld a, [wc994]
|
|
or a
|
|
call nz, Function1126ac
|
|
call MobileSDK_CopyString
|
|
ret
|
|
|
|
Function1126ac:
|
|
ld hl, Unknown_112137
|
|
ret
|
|
|
|
Function1126b0:
|
|
ld hl, Unknown_112115
|
|
jp MobileSDK_CopyString
|
|
|
|
Function1126b6:
|
|
ld hl, Unknown_112121
|
|
call MobileSDK_CopyString
|
|
ld hl, $013f
|
|
ld b, $4
|
|
call MobileSDK_CopyBytes
|
|
ld a, $2d
|
|
ld [de], a
|
|
inc de
|
|
ld a, [$014c]
|
|
and $f0
|
|
swap a
|
|
or $30
|
|
ld [de], a
|
|
inc de
|
|
ld a, [$014c]
|
|
and $f
|
|
or $30
|
|
ld [de], a
|
|
inc de
|
|
ld a, $7
|
|
add c
|
|
ld c, a
|
|
ld hl, Unknown_112132
|
|
jp MobileSDK_CopyString
|
|
|
|
Function1126e6:
|
|
xor a
|
|
ld [wc86b], a
|
|
ld hl, Unknown_11213d
|
|
call MobileSDK_CopyString
|
|
ld hl, wc9a5
|
|
ld b, $5
|
|
.asm_1126f5
|
|
ld a, [hl]
|
|
cp $30
|
|
jr nz, .asm_112701
|
|
inc hl
|
|
dec b
|
|
ld a, $1
|
|
cp b
|
|
jr nz, .asm_1126f5
|
|
|
|
.asm_112701
|
|
push bc
|
|
call MobileSDK_CopyBytes
|
|
ld a, $d
|
|
ld [de], a
|
|
inc de
|
|
ld a, $a
|
|
ld [de], a
|
|
inc de
|
|
pop bc
|
|
ld a, b
|
|
add $2
|
|
add c
|
|
ld c, a
|
|
or c
|
|
ret
|
|
|
|
Function112715:
|
|
xor a
|
|
ld [wc86c], a
|
|
ld a, $2
|
|
ld [wc86a], a
|
|
ld hl, wc821
|
|
res 0, [hl]
|
|
ret
|
|
|
|
Function112724:
|
|
ld a, $ff
|
|
ld [wc86e], a
|
|
|
|
Function112729:
|
|
push hl
|
|
ld hl, wc82c
|
|
xor a
|
|
ld [hld], a
|
|
ld a, $ff
|
|
ld [hld], a
|
|
ld a, HIGH(wc880)
|
|
ld [hld], a
|
|
ld a, LOW(wc880)
|
|
ld [hl], a
|
|
pop hl
|
|
ret
|
|
|
|
Function11273a:
|
|
dec a
|
|
jr z, .asm_112752
|
|
dec a
|
|
jr z, .asm_11278f
|
|
dec a
|
|
jr z, .asm_112744
|
|
ret
|
|
|
|
.asm_112744
|
|
xor a
|
|
ld [wc86d], a
|
|
ld a, $30
|
|
call Function11225d
|
|
set 1, [hl]
|
|
res 0, [hl]
|
|
ret
|
|
|
|
.asm_112752
|
|
call Function1127e1
|
|
jr nz, .asm_11277a
|
|
ld hl, wc880
|
|
call Function112b11
|
|
ld a, $2
|
|
cp d
|
|
jr nz, .asm_1127b7
|
|
ld a, $20
|
|
cp e
|
|
jr nz, .asm_1127b7
|
|
call Function112724
|
|
ld a, [wMobileSDK_PacketBuffer + 117]
|
|
add $a
|
|
ld e, a
|
|
ld d, 0
|
|
ld a, $95
|
|
ld hl, wMobileSDK_PacketBuffer + 112
|
|
jp Function111f02
|
|
|
|
.asm_11277a
|
|
ld a, [wMobileSDK_ReceivePacketBuffer]
|
|
cp $9f
|
|
jr z, Function1127cd
|
|
ld hl, wc86b
|
|
dec [hl]
|
|
xor a
|
|
ld [wMobileSDK_ReceivePacketBuffer + 3], a
|
|
ld hl, wMobileSDK_PacketBuffer + 96
|
|
jp Function1127c5
|
|
|
|
.asm_11278f
|
|
call Function1127e1
|
|
jr nz, .asm_11277a
|
|
ld hl, wc880
|
|
call Function112b11
|
|
ld a, $2
|
|
cp d
|
|
jr nz, .asm_1127b7
|
|
ld a, $50
|
|
cp e
|
|
jr nz, .asm_1127b7
|
|
ld a, $3
|
|
ld [wc86a], a
|
|
ld hl, wc821
|
|
ld a, [hl]
|
|
and $d6
|
|
or $80
|
|
ld [hl], a
|
|
xor a
|
|
ld [wc98a], a
|
|
ret
|
|
|
|
.asm_1127b7
|
|
ld hl, wc810
|
|
ld a, e
|
|
ld [hli], a
|
|
ld [hl], d
|
|
ld a, $2
|
|
ld [wc86b], a
|
|
jp Function112430
|
|
|
|
Function1127c5:
|
|
ld de, $000b
|
|
ld a, $95
|
|
jp Function111f02
|
|
|
|
Function1127cd:
|
|
ld hl, wc810
|
|
xor a
|
|
ld [hli], a
|
|
ld [hl], a
|
|
xor a
|
|
ld [wc86d], a
|
|
ld a, $30
|
|
call Function11225d
|
|
set 1, [hl]
|
|
res 0, [hl]
|
|
ret
|
|
|
|
Function1127e1:
|
|
call Function112807
|
|
ld hl, wc832
|
|
|
|
Function1127e7:
|
|
ld a, [hli]
|
|
cp $d
|
|
ret nz
|
|
ld a, [hl]
|
|
cp $a
|
|
ret nz
|
|
ld a, $20
|
|
ld [hl], a
|
|
ret
|
|
|
|
Function1127f3:
|
|
call Function112807
|
|
ld hl, wc82f
|
|
ld a, [hli]
|
|
cp $d
|
|
ret nz
|
|
ld a, [hli]
|
|
cp $a
|
|
ret nz
|
|
ld a, [hli]
|
|
cp $2e
|
|
ret nz
|
|
jr Function1127e7
|
|
|
|
Function112807:
|
|
push bc
|
|
push de
|
|
ld hl, wMobileSDK_ReceivePacketBuffer + 3
|
|
ld a, [hl]
|
|
dec a
|
|
jr z, .asm_11282d
|
|
ld c, a
|
|
cp $5
|
|
jr nc, .asm_112830
|
|
ld a, $5
|
|
sub c
|
|
ld b, a
|
|
ld e, c
|
|
ld d, $0
|
|
ld hl, wc82f
|
|
add hl, de
|
|
ld de, wc82f
|
|
call MobileSDK_CopyBytes
|
|
ld hl, wMobileSDK_ReceivePacketBuffer + 5
|
|
ld b, c
|
|
.asm_11282a
|
|
call MobileSDK_CopyBytes
|
|
|
|
.asm_11282d
|
|
pop de
|
|
pop bc
|
|
ret
|
|
|
|
.asm_112830
|
|
sub $5
|
|
ld c, a
|
|
ld b, 0
|
|
ld hl, wMobileSDK_ReceivePacketBuffer + 5
|
|
add hl, bc
|
|
ld b, $5
|
|
ld de, wc82f
|
|
jr .asm_11282a
|
|
|
|
Function112840:
|
|
dec a
|
|
jr z, .asm_112844
|
|
ret
|
|
|
|
.asm_112844
|
|
call Function1127e1
|
|
jr nz, .asm_1128ab
|
|
ld hl, wc880
|
|
ld a, [hli]
|
|
cp $32
|
|
jr nz, Function1128bd
|
|
ld a, [hli]
|
|
cp $35
|
|
jr nz, Function1128bd
|
|
call Function112724
|
|
ld hl, wc87c
|
|
ld a, [hli]
|
|
ld h, [hl]
|
|
ld l, a
|
|
ld a, [hl]
|
|
or a
|
|
jr z, .asm_11289d
|
|
push hl
|
|
ld hl, wc86b
|
|
dec [hl]
|
|
ld bc, $0001
|
|
ld de, wMobileSDK_PacketBuffer + 19
|
|
ld hl, Unknown_1120b0
|
|
call MobileSDK_CopyString
|
|
pop hl
|
|
ld a, $80
|
|
call MobileSDK_CopyStringLen
|
|
ld a, $3e
|
|
ld [de], a
|
|
inc de
|
|
inc c
|
|
ld a, l
|
|
ld [wc87c], a
|
|
ld a, h
|
|
ld [wc87d], a
|
|
call Function11295e
|
|
ld a, c
|
|
ld [wMobileSDK_PacketBuffer + 17], a
|
|
ld b, c
|
|
call Function111f63
|
|
ld hl, wMobileSDK_PacketBuffer + 12
|
|
ld d, $0
|
|
ld e, c
|
|
ld a, $95
|
|
jp Function111f02
|
|
|
|
.asm_11289d
|
|
ld a, $3
|
|
ld [wc86a], a
|
|
call Function1128d3
|
|
ld a, $1
|
|
ld [wc98a], a
|
|
ret
|
|
|
|
.asm_1128ab
|
|
ld a, [wMobileSDK_ReceivePacketBuffer]
|
|
cp $9f
|
|
jp z, Function1127cd
|
|
ld hl, wc86b
|
|
dec [hl]
|
|
ld hl, wMobileSDK_PacketBuffer
|
|
jp Function1127c5
|
|
|
|
Function1128bd:
|
|
ld hl, wc880
|
|
call Function112b11
|
|
ld hl, wc810
|
|
ld a, e
|
|
ld [hli], a
|
|
ld [hl], d
|
|
ld a, $30
|
|
call Function11225d
|
|
set 1, [hl]
|
|
res 0, [hl]
|
|
ret
|
|
|
|
Function1128d3:
|
|
ld hl, wc821
|
|
res 0, [hl]
|
|
res 2, [hl]
|
|
ret
|
|
|
|
Function1128db:
|
|
dec a
|
|
jr z, .asm_112947
|
|
dec a
|
|
jr z, .asm_1128e5
|
|
dec a
|
|
jr z, .asm_112913
|
|
ret
|
|
|
|
.asm_1128e5
|
|
ld a, [wMobileSDK_ReceivePacketBuffer]
|
|
cp $9f
|
|
jp z, Function1127cd
|
|
call Function113482
|
|
ld a, [wc86e + 1]
|
|
or a
|
|
jr nz, .asm_112901
|
|
ld a, $3
|
|
ld [wc86a], a
|
|
ld hl, wc821
|
|
res 0, [hl]
|
|
ret
|
|
|
|
.asm_112901
|
|
call Function112724
|
|
ld de, wMobileSDK_PacketBuffer + 5
|
|
ld a, $1
|
|
ld [de], a
|
|
inc de
|
|
inc de
|
|
ld b, $1
|
|
call Function111f63
|
|
jr .asm_112941
|
|
|
|
.asm_112913
|
|
call Function1127e1
|
|
jr nz, .asm_11293d
|
|
ld a, [wMobileSDK_ReceivePacketBuffer]
|
|
cp $9f
|
|
jp z, Function1127cd
|
|
ld hl, wc880
|
|
call Function112b11
|
|
ld a, d
|
|
cp $2
|
|
jr nz, .asm_11295b
|
|
ld a, e
|
|
cp $50
|
|
jr nz, .asm_11295b
|
|
ld a, $3
|
|
ld [wc86a], a
|
|
call Function1128d3
|
|
xor a
|
|
ld [wc98a], a
|
|
ret
|
|
|
|
.asm_11293d
|
|
ld hl, wc86b
|
|
dec [hl]
|
|
|
|
.asm_112941
|
|
ld hl, wMobileSDK_PacketBuffer
|
|
jp Function1127c5
|
|
|
|
.asm_112947
|
|
call Function1127e1
|
|
jr nz, .asm_11293d
|
|
ld hl, wc880
|
|
call Function112b11
|
|
ld a, d
|
|
cp $3
|
|
jr nz, .asm_11295b
|
|
ld a, e
|
|
cp $54
|
|
ret z
|
|
|
|
.asm_11295b
|
|
jp Function1128bd
|
|
|
|
Function11295e:
|
|
ld a, $d
|
|
ld [de], a
|
|
inc de
|
|
inc c
|
|
ld a, $a
|
|
ld [de], a
|
|
inc de
|
|
inc c
|
|
ret
|
|
|
|
Function112969:
|
|
dec a
|
|
jr z, .asm_112970
|
|
dec a
|
|
jr z, .asm_112989
|
|
ret
|
|
|
|
.asm_112970
|
|
ld a, [wMobileSDK_ReceivePacketBuffer]
|
|
cp $9f
|
|
jr z, .asm_112986
|
|
call Function1127e1
|
|
jr z, .asm_112986
|
|
ld hl, wc86b
|
|
dec [hl]
|
|
ld hl, wMobileSDK_PacketBuffer + 32
|
|
jp Function1127c5
|
|
|
|
.asm_112986
|
|
jp Function112430
|
|
|
|
.asm_112989
|
|
xor a
|
|
ld [wc86d], a
|
|
ld a, $2
|
|
ld [wc86a], a
|
|
ld hl, wc821
|
|
res 0, [hl]
|
|
res 7, [hl]
|
|
set 5, [hl]
|
|
ret
|
|
|
|
Function11299c:
|
|
dec a
|
|
jr z, .asm_1129aa
|
|
dec a
|
|
jr z, .asm_1129c9
|
|
dec a
|
|
jr z, .asm_1129e7
|
|
dec a
|
|
jp z, .asm_112a1d
|
|
ret
|
|
|
|
.asm_1129aa
|
|
call Function1127e1
|
|
jr nz, .asm_1129fe
|
|
ld a, [wc880]
|
|
cp $2b
|
|
jr nz, .asm_112a0f
|
|
call Function112724
|
|
ld a, [wMobileSDK_PacketBuffer + 101]
|
|
add $a
|
|
ld e, a
|
|
ld d, 0
|
|
ld a, $95
|
|
ld hl, wMobileSDK_PacketBuffer + 96
|
|
jp Function111f02
|
|
|
|
.asm_1129c9
|
|
ld d, a
|
|
call Function1127e1
|
|
jr nz, .asm_1129fe
|
|
ld a, [wc880]
|
|
cp $2b
|
|
jr nz, .asm_112a0f
|
|
call Function112724
|
|
ld a, [wMobileSDK_PacketBuffer + 165]
|
|
add $a
|
|
ld e, a
|
|
ld a, $95
|
|
ld hl, wMobileSDK_PacketBuffer + 160
|
|
jp Function111f02
|
|
|
|
.asm_1129e7
|
|
call Function1127e1
|
|
jr nz, .asm_1129fe
|
|
ld a, [wc880]
|
|
cp $2b
|
|
jr nz, .asm_112a0f
|
|
ld a, $4
|
|
ld [wc86a], a
|
|
call Function1128d3
|
|
set 7, [hl]
|
|
ret
|
|
|
|
.asm_1129fe
|
|
ld a, [wMobileSDK_ReceivePacketBuffer]
|
|
cp $9f
|
|
jr z, Function112a42
|
|
ld hl, wc86b
|
|
dec [hl]
|
|
ld hl, wMobileSDK_PacketBuffer + 128
|
|
jp Function1127c5
|
|
|
|
.asm_112a0f
|
|
ld a, [wc86b]
|
|
ld [wMobileSDK_PacketBuffer + 32], a
|
|
ld a, $3
|
|
ld [wc86b], a
|
|
jp Function112430
|
|
|
|
.asm_112a1d
|
|
xor a
|
|
ld [wc86d], a
|
|
ld de, $0002
|
|
ld a, [wMobileSDK_PacketBuffer + 32]
|
|
cp $1
|
|
jr z, .asm_112a2c
|
|
inc de
|
|
.asm_112a2c
|
|
|
|
Function112a2c:
|
|
ld hl, wc821
|
|
set 1, [hl]
|
|
res 0, [hl]
|
|
ld hl, wc80f
|
|
ld a, $31
|
|
ld [hli], a
|
|
ld a, e
|
|
ld [hli], a
|
|
ld [hl], d
|
|
ld a, $5
|
|
ld [wc86a], a
|
|
ret
|
|
|
|
Function112a42:
|
|
ld hl, wc810
|
|
xor a
|
|
ld [hli], a
|
|
ld [hl], a
|
|
xor a
|
|
ld [wc86d], a
|
|
ld a, $31
|
|
call Function11225d
|
|
set 1, [hl]
|
|
res 0, [hl]
|
|
ret
|
|
|
|
Function112a56:
|
|
dec a
|
|
jr z, .asm_112a5a
|
|
ret
|
|
|
|
.asm_112a5a
|
|
call Function1127e1
|
|
jr nz, .asm_112a95
|
|
ld hl, wc880
|
|
ld a, [hli]
|
|
cp $2b
|
|
jr nz, .asm_112aa6
|
|
.asm_112a67
|
|
ld a, [hli]
|
|
cp $20
|
|
jr nz, .asm_112a67
|
|
call Function112aac
|
|
ld a, [wc86e]
|
|
ld c, a
|
|
ld a, [wc86e + 1]
|
|
ld b, a
|
|
ld a, e
|
|
ld [bc], a
|
|
inc bc
|
|
ld a, d
|
|
ld [bc], a
|
|
call Function112aac
|
|
ld hl, wc86e
|
|
ld a, [hli]
|
|
ld h, [hl]
|
|
ld l, a
|
|
inc hl
|
|
inc hl
|
|
ld a, e
|
|
ld [hli], a
|
|
ld a, d
|
|
ld [hli], a
|
|
ld a, c
|
|
ld [hli], a
|
|
ld a, $4
|
|
ld [wc86a], a
|
|
jp Function1128d3
|
|
|
|
.asm_112a95
|
|
ld a, [wMobileSDK_ReceivePacketBuffer]
|
|
cp $9f
|
|
jr z, Function112a42
|
|
ld hl, wc86b
|
|
dec [hl]
|
|
ld hl, wMobileSDK_PacketBuffer + 128
|
|
jp Function1127c5
|
|
|
|
.asm_112aa6
|
|
ld de, $0005
|
|
jp Function112a2c
|
|
|
|
Function112aac:
|
|
ld a, [wc872]
|
|
push af
|
|
ld a, [wc873]
|
|
push af
|
|
ld a, [wc874]
|
|
push af
|
|
ld bc, 0
|
|
ld de, 0
|
|
.asm_112abe
|
|
ld a, [hli]
|
|
cp $d
|
|
jr z, .asm_112b04
|
|
cp $20
|
|
jr z, .asm_112b04
|
|
and $f
|
|
ld b, a
|
|
sla e
|
|
rl d
|
|
rl c
|
|
ld a, e
|
|
ld [wc872], a
|
|
ld a, d
|
|
ld [wc873], a
|
|
ld a, c
|
|
ld [wc874], a
|
|
sla e
|
|
rl d
|
|
rl c
|
|
sla e
|
|
rl d
|
|
rl c
|
|
ld a, [wc872]
|
|
add e
|
|
ld e, a
|
|
ld a, [wc873]
|
|
adc d
|
|
ld d, a
|
|
ld a, [wc874]
|
|
adc c
|
|
ld c, a
|
|
ld a, b
|
|
add e
|
|
ld e, a
|
|
ld a, $0
|
|
adc d
|
|
ld d, a
|
|
ld a, $0
|
|
adc c
|
|
ld c, a
|
|
jr .asm_112abe
|
|
|
|
.asm_112b04
|
|
pop af
|
|
ld [wc874], a
|
|
pop af
|
|
ld [wc873], a
|
|
pop af
|
|
ld [wc872], a
|
|
ret
|
|
|
|
Function112b11:
|
|
ld a, [wc872]
|
|
push af
|
|
ld a, [wc873]
|
|
push af
|
|
ld a, [wc874]
|
|
push af
|
|
ld bc, $0300
|
|
ld de, wc872
|
|
call .asm_112b60
|
|
call nc, .asm_112b60
|
|
call nc, .asm_112b60
|
|
dec hl
|
|
.asm_112b2d
|
|
ld a, [hli]
|
|
cp "\r"
|
|
jr z, .asm_112b36
|
|
cp " "
|
|
jr nz, .asm_112b2d
|
|
|
|
.asm_112b36
|
|
push hl
|
|
ld hl, wc872
|
|
ld de, 0
|
|
ld a, b
|
|
or a
|
|
jr z, .asm_112b49
|
|
dec a
|
|
jr z, .asm_112b4b
|
|
dec a
|
|
jr z, .asm_112b4f
|
|
jr .asm_112b52
|
|
|
|
.asm_112b49
|
|
ld a, [hli]
|
|
ld d, a
|
|
|
|
.asm_112b4b
|
|
ld a, [hli]
|
|
swap a
|
|
ld e, a
|
|
|
|
.asm_112b4f
|
|
ld a, [hli]
|
|
or e
|
|
ld e, a
|
|
|
|
.asm_112b52
|
|
pop hl
|
|
pop af
|
|
ld [wc874], a
|
|
pop af
|
|
ld [wc873], a
|
|
pop af
|
|
ld [wc872], a
|
|
ret
|
|
|
|
.asm_112b60:
|
|
ld a, [hli]
|
|
cp "0"
|
|
jr c, .asm_112b6f
|
|
cp "9" + 1
|
|
jr nc, .asm_112b6f
|
|
and $f
|
|
ld [de], a
|
|
inc de
|
|
dec b
|
|
ret
|
|
|
|
.asm_112b6f
|
|
scf
|
|
ret
|
|
|
|
Function112b71:
|
|
dec a
|
|
jr z, .asm_112b75
|
|
ret
|
|
|
|
.asm_112b75
|
|
call Function1127e1
|
|
jr nz, .asm_112ba3
|
|
ld hl, wc880
|
|
ld a, [hli]
|
|
cp $2b
|
|
jr nz, .asm_112bb5
|
|
.asm_112b82
|
|
ld a, [hli]
|
|
cp $20
|
|
jr nz, .asm_112b82
|
|
.asm_112b87
|
|
ld a, [hli]
|
|
cp $20
|
|
jr nz, .asm_112b87
|
|
call Function112aac
|
|
ld hl, wc86e
|
|
ld a, [hli]
|
|
ld h, [hl]
|
|
ld l, a
|
|
ld a, e
|
|
ld [hli], a
|
|
ld a, d
|
|
ld [hli], a
|
|
ld a, c
|
|
ld [hli], a
|
|
ld a, $4
|
|
ld [wc86a], a
|
|
jp Function1128d3
|
|
|
|
.asm_112ba3
|
|
ld a, [wMobileSDK_ReceivePacketBuffer]
|
|
cp $9f
|
|
jp z, Function112a42
|
|
ld hl, wc86b
|
|
dec [hl]
|
|
ld hl, wMobileSDK_PacketBuffer + 128
|
|
jp Function1127c5
|
|
|
|
.asm_112bb5
|
|
ld de, $0004
|
|
jp Function112a2c
|
|
|
|
Function112bbb:
|
|
dec a
|
|
jr z, .asm_112bbf
|
|
ret
|
|
|
|
.asm_112bbf
|
|
call Function1127e1
|
|
jr nz, .asm_112bd4
|
|
ld hl, wc880
|
|
ld a, [hli]
|
|
cp $2b
|
|
jr nz, .asm_112be6
|
|
ld a, $4
|
|
ld [wc86a], a
|
|
jp Function1128d3
|
|
|
|
.asm_112bd4
|
|
ld a, [wMobileSDK_ReceivePacketBuffer]
|
|
cp $9f
|
|
jp z, Function112a42
|
|
ld hl, wc86b
|
|
dec [hl]
|
|
ld hl, wMobileSDK_PacketBuffer + 128
|
|
jp Function1127c5
|
|
|
|
.asm_112be6
|
|
ld de, $0004
|
|
jp Function112a2c
|
|
|
|
Function112bec:
|
|
dec a
|
|
jr z, .asm_112bf7
|
|
dec a
|
|
jp z, .asm_112cdb
|
|
dec a
|
|
ret nz
|
|
dec [hl]
|
|
ret
|
|
|
|
.asm_112bf7
|
|
ld a, [wc880]
|
|
cp $2d
|
|
jr nz, .asm_112c03
|
|
call Function1127e1
|
|
jr z, .asm_112c0b
|
|
|
|
.asm_112c03
|
|
ld a, [wc821]
|
|
bit 2, a
|
|
jp z, .asm_112cef
|
|
|
|
.asm_112c0b
|
|
ld hl, wc86b
|
|
inc [hl]
|
|
ld hl, wc880
|
|
ld a, [hli]
|
|
cp $2b
|
|
jp nz, Function112d20
|
|
ld b, $7f
|
|
.asm_112c1a
|
|
ld a, [hli]
|
|
dec b
|
|
cp $a
|
|
jr nz, .asm_112c1a
|
|
push hl
|
|
ld hl, wc98f
|
|
ld a, [hli]
|
|
ld e, a
|
|
ld a, [hli]
|
|
ld d, a
|
|
ld a, b
|
|
ld [wc82d], a
|
|
ld a, [hli]
|
|
ld h, [hl]
|
|
sub b
|
|
ld l, a
|
|
ld a, h
|
|
sbc $0
|
|
ld h, a
|
|
jr nc, .asm_112c56
|
|
cp $ff
|
|
jr nz, .asm_112c56
|
|
ld hl, wc991
|
|
ld a, [hli]
|
|
ld c, a
|
|
inc hl
|
|
ld a, b
|
|
sub c
|
|
ld [hli], a
|
|
ld a, [wc82b]
|
|
ld [hl], a
|
|
ld hl, wc827
|
|
ld a, [hli]
|
|
ld h, [hl]
|
|
ld l, a
|
|
ld a, c
|
|
ld [hli], a
|
|
xor a
|
|
ld [hl], a
|
|
pop hl
|
|
ld b, c
|
|
jp MobileSDK_CopyBytes
|
|
|
|
.asm_112c56
|
|
ld [wc993], a
|
|
ld a, [wc82b]
|
|
ld c, a
|
|
ld [wc994], a
|
|
push hl
|
|
ld a, l
|
|
sub c
|
|
ld l, a
|
|
ld a, h
|
|
sbc $0
|
|
ld h, a
|
|
jr nc, .asm_112c9f
|
|
cp $ff
|
|
jr nz, .asm_112c9f
|
|
ld a, c
|
|
ld [wMobileSDK_ReceivePacketBuffer + 1], a
|
|
ld a, [wMobileSDK_ReceivePacketBuffer + 3]
|
|
sub c
|
|
pop hl
|
|
ld c, l
|
|
pop hl
|
|
push af
|
|
call MobileSDK_CopyBytes
|
|
pop af
|
|
push de
|
|
ld hl, wMobileSDK_ReceivePacketBuffer + 4
|
|
ld e, a
|
|
ld d, 0
|
|
add hl, de
|
|
pop de
|
|
ld b, c
|
|
call MobileSDK_CopyBytes
|
|
ld a, [wMobileSDK_ReceivePacketBuffer + 1]
|
|
sub c
|
|
ld [wc994], a
|
|
ld hl, wc827
|
|
ld a, [hli]
|
|
ld h, [hl]
|
|
ld l, a
|
|
ld a, [wc991]
|
|
ld [hli], a
|
|
xor a
|
|
ld [hl], a
|
|
ret
|
|
|
|
.asm_112c9f
|
|
ld [wc994], a
|
|
ld a, l
|
|
ld [wc82b], a
|
|
ld a, h
|
|
ld [wc82c], a
|
|
pop hl
|
|
pop hl
|
|
call MobileSDK_CopyBytes
|
|
ld a, [wMobileSDK_ReceivePacketBuffer + 3]
|
|
sub c
|
|
push de
|
|
ld hl, wMobileSDK_ReceivePacketBuffer + 4
|
|
ld e, a
|
|
ld d, 0
|
|
add hl, de
|
|
pop de
|
|
ld b, c
|
|
call MobileSDK_CopyBytes
|
|
ld a, [wc82d]
|
|
add c
|
|
ld [wc82d], a
|
|
ld a, [wc82e]
|
|
adc 0
|
|
ld [wc82e], a
|
|
ld hl, wc829
|
|
ld a, e
|
|
ld [hli], a
|
|
ld a, d
|
|
ld [hl], a
|
|
ld hl, wc821
|
|
res 2, [hl]
|
|
|
|
.asm_112cdb
|
|
ld a, [wc821]
|
|
bit 2, a
|
|
jr z, .asm_112cea
|
|
ld a, $2
|
|
ld [wc86b], a
|
|
jp .asm_112d09
|
|
|
|
.asm_112cea
|
|
call Function1127f3
|
|
jr z, .asm_112d01
|
|
|
|
.asm_112cef
|
|
ld a, [wMobileSDK_ReceivePacketBuffer]
|
|
cp $9f
|
|
jp z, Function112a42
|
|
ld hl, wc86b
|
|
dec [hl]
|
|
ld hl, wMobileSDK_PacketBuffer + 128
|
|
jp Function1127c5
|
|
|
|
.asm_112d01
|
|
ld a, $4
|
|
ld [wc86a], a
|
|
call Function1128d3
|
|
|
|
.asm_112d09
|
|
ld a, [wc86e]
|
|
ld l, a
|
|
ld a, [wc86e + 1]
|
|
or l
|
|
ret z
|
|
ld hl, wc827
|
|
ld a, [hli]
|
|
ld e, a
|
|
ld d, [hl]
|
|
ld hl, wc82d
|
|
ld b, $2
|
|
jp MobileSDK_CopyBytes
|
|
|
|
Function112d20:
|
|
ld a, [wc86a]
|
|
cp $1a
|
|
jr nz, .asm_112d2d
|
|
ld de, $0004
|
|
jp Function112a2c
|
|
|
|
.asm_112d2d
|
|
ld de, $0004
|
|
jp Function112a2c
|
|
|
|
Function112d33:
|
|
dec a
|
|
jr z, .asm_112d87
|
|
dec a
|
|
jr z, .asm_112d9f
|
|
dec a
|
|
jp z, .asm_112e46
|
|
dec a
|
|
jr z, .asm_112d4d
|
|
dec a
|
|
jp z, Function113317
|
|
dec a
|
|
jp z, Function113386
|
|
dec a
|
|
jp .asm_112e46
|
|
|
|
.asm_112d4c ; unreferenced
|
|
ret
|
|
|
|
.asm_112d4d
|
|
ld a, [wc86a]
|
|
cp $23
|
|
jr z, .asm_112d6d
|
|
cp $1f
|
|
jr z, .asm_112d60
|
|
cp $20
|
|
jr z, .asm_112d6d
|
|
cp $22
|
|
jr nz, .asm_112d82
|
|
|
|
.asm_112d60
|
|
ld hl, wc98b
|
|
ld a, [hli]
|
|
cp $1
|
|
jr nz, .asm_112d82
|
|
ld a, [hl]
|
|
cp $4
|
|
jr nz, .asm_112d82
|
|
|
|
.asm_112d6d
|
|
ld hl, wc86e
|
|
xor a
|
|
ld [hli], a
|
|
ld [hl], a
|
|
ld hl, wc82b
|
|
ld [hli], a
|
|
ld [hl], a
|
|
ld hl, wc821
|
|
res 2, [hl]
|
|
ld hl, wc86b
|
|
dec [hl]
|
|
dec [hl]
|
|
|
|
.asm_112d82
|
|
ld hl, wc86b
|
|
dec [hl]
|
|
ret
|
|
|
|
.asm_112d87
|
|
call Function113482
|
|
ld de, wMobileSDK_PacketBuffer
|
|
ld hl, MobilePacket_TransferData
|
|
ld b, $6
|
|
call MobileSDK_CopyBytes
|
|
ld a, [wc86c]
|
|
ld [de], a
|
|
inc de
|
|
ld b, $1
|
|
call Function111f63
|
|
|
|
.asm_112d9f
|
|
ld a, [wc821]
|
|
bit 2, a
|
|
jr z, .asm_112dab
|
|
ld a, $3
|
|
ld [hl], a
|
|
jr .asm_112dc1
|
|
|
|
.asm_112dab
|
|
ld a, [wMobileSDK_ReceivePacketBuffer]
|
|
cp MOBILE_COMMAND_TRANSFER_DATA_END | $80
|
|
jr z, .asm_112dc1
|
|
ld hl, wc86b
|
|
dec [hl]
|
|
ld de, $000b
|
|
ld hl, wMobileSDK_PacketBuffer
|
|
ld b, $5
|
|
jp PacketSendBytes
|
|
|
|
.asm_112dc1
|
|
ld a, [wc989]
|
|
cp $2
|
|
jr nc, .asm_112df2
|
|
call Function112f61
|
|
bit 2, a
|
|
ret nz
|
|
cp $3
|
|
jr z, .asm_112e38
|
|
cp $1
|
|
jr nz, .asm_112df2
|
|
ld a, [wc86a]
|
|
cp $1f
|
|
jr z, .asm_112de1
|
|
cp $20
|
|
jr nz, .asm_112df2
|
|
|
|
.asm_112de1
|
|
ld hl, wc98b
|
|
ld a, [hli]
|
|
cp $1
|
|
jr nz, .asm_112df2
|
|
ld a, $4
|
|
cp [hl]
|
|
jr nz, .asm_112df2
|
|
xor a
|
|
ld [wc990], a
|
|
|
|
.asm_112df2
|
|
ld a, [wc86e]
|
|
ld l, a
|
|
ld a, [wc86e + 1]
|
|
or l
|
|
ret z
|
|
ld a, [wc86a]
|
|
cp $13
|
|
jr z, .asm_112e21
|
|
cp $14
|
|
jr z, .asm_112e21
|
|
cp $20
|
|
ret z
|
|
cp $22
|
|
ret z
|
|
cp $23
|
|
ret z
|
|
cp $1f
|
|
jr nz, .asm_112e21
|
|
ld hl, wc98b
|
|
ld a, [hli]
|
|
cp $0
|
|
ret nz
|
|
ld a, $2
|
|
cp [hl]
|
|
ret nz
|
|
ld a, [wc86a]
|
|
|
|
.asm_112e21
|
|
cp $24
|
|
jr nz, .asm_112e2a
|
|
ld hl, wc878
|
|
jr .asm_112e2d
|
|
|
|
.asm_112e2a
|
|
ld hl, wc827
|
|
|
|
.asm_112e2d
|
|
ld a, [hli]
|
|
ld e, a
|
|
ld d, [hl]
|
|
ld hl, wc82d
|
|
ld b, $2
|
|
jp MobileSDK_CopyBytes
|
|
|
|
.asm_112e38
|
|
ld hl, wc821
|
|
set 1, [hl]
|
|
res 0, [hl]
|
|
ld de, wc98b
|
|
ld a, $24
|
|
jr .asm_112e95
|
|
|
|
.asm_112e46
|
|
ld a, [wc86a]
|
|
cp $1f
|
|
jr z, .asm_112ea6
|
|
cp $20
|
|
jr z, .asm_112ea6
|
|
ld a, [wc98a]
|
|
cp $1
|
|
jr z, .asm_112e65
|
|
ld a, [wc86a]
|
|
cp $21
|
|
jp z, .asm_112eea
|
|
cp $22
|
|
jp z, .asm_112eea
|
|
|
|
.asm_112e65
|
|
ld a, [wc990]
|
|
or a
|
|
jp z, .asm_112f3d
|
|
.asm_112e6c
|
|
ld hl, wc98c
|
|
ld a, [hld]
|
|
cp $3
|
|
jr nz, .asm_112e7f
|
|
ld a, [hl]
|
|
or a
|
|
jr z, .asm_112e7f
|
|
cp $3
|
|
jr nc, .asm_112e7f
|
|
call Function1133fe
|
|
|
|
.asm_112e7f
|
|
ld hl, wc821
|
|
set 1, [hl]
|
|
res 0, [hl]
|
|
ld de, wc98b
|
|
ld a, [wc990]
|
|
cp $1
|
|
ld a, $32
|
|
jr z, .asm_112e95
|
|
inc de
|
|
inc de
|
|
inc a
|
|
|
|
.asm_112e95
|
|
ld [wc80f], a
|
|
ld hl, wc810
|
|
ld a, [de]
|
|
inc de
|
|
ld [hli], a
|
|
ld a, [de]
|
|
ld [hl], a
|
|
ld a, $5
|
|
ld [wc86a], a
|
|
ret
|
|
|
|
.asm_112ea6
|
|
ld hl, wc98b
|
|
ld a, [hli]
|
|
ld h, [hl]
|
|
ld l, a
|
|
cp $0
|
|
jr nz, .asm_112ec1
|
|
ld a, $2
|
|
cp h
|
|
jr nz, .asm_112ec1
|
|
ld a, [wc98d]
|
|
ld b, a
|
|
ld a, [wc98e]
|
|
or b
|
|
jr nz, .asm_112e6c
|
|
jr .asm_112f3d
|
|
|
|
.asm_112ec1
|
|
ld a, $1
|
|
cp l
|
|
jr nz, .asm_112e6c
|
|
ld a, $4
|
|
cp h
|
|
jr nz, .asm_112e6c
|
|
ld a, [wc9a5]
|
|
or a
|
|
jr nz, .asm_112efb
|
|
ld a, [wc86e]
|
|
ld l, a
|
|
ld a, [wc86e + 1]
|
|
or l
|
|
jr nz, .asm_112efb
|
|
ld a, $2
|
|
ld [wc86a], a
|
|
xor a
|
|
ld [wc86d], a
|
|
ld hl, wc821
|
|
res 0, [hl]
|
|
ret
|
|
|
|
.asm_112eea
|
|
ld hl, wc98b
|
|
ld a, [hli]
|
|
ld h, [hl]
|
|
ld l, a
|
|
cp $0
|
|
jp nz, .asm_112e6c
|
|
ld a, $2
|
|
cp h
|
|
jp nz, .asm_112e6c
|
|
|
|
.asm_112efb
|
|
ld a, [wc98d]
|
|
ld b, a
|
|
ld a, [wc98e]
|
|
cp b
|
|
jp nz, .asm_112e6c
|
|
or a
|
|
jr z, .asm_112f13
|
|
cp $1
|
|
jp nz, .asm_112e6c
|
|
ld a, $1
|
|
ld [wc993], a
|
|
|
|
.asm_112f13
|
|
ld a, [wc86b]
|
|
cp $7
|
|
jr z, .asm_112f3d
|
|
ld hl, wc98f
|
|
inc [hl]
|
|
ld a, $f
|
|
ld [wc86a], a
|
|
ld a, $1
|
|
ld [wc86b], a
|
|
ld a, [wc86d]
|
|
ld [wc86e], a
|
|
xor a
|
|
ld [wc989], a
|
|
ld a, $a3
|
|
ld de, $0010
|
|
ld hl, wc995
|
|
jp Function111f02
|
|
|
|
.asm_112f3d
|
|
ld a, [wc993]
|
|
cp $1
|
|
jr nz, .asm_112f52
|
|
ld a, $2
|
|
ld [wc990], a
|
|
ld hl, wc98d
|
|
dec a
|
|
ld [hli], a
|
|
ld [hl], a
|
|
jp .asm_112e7f
|
|
|
|
.asm_112f52
|
|
ld a, $2
|
|
ld [wc86a], a
|
|
xor a
|
|
ld [wc86d], a
|
|
ld hl, wc821
|
|
res 0, [hl]
|
|
ret
|
|
|
|
Function112f61:
|
|
ld hl, wc989
|
|
ld a, [hl]
|
|
or a
|
|
jr nz, .asm_112f8a
|
|
inc [hl]
|
|
ld hl, wc880
|
|
ld de, $0008
|
|
add hl, de
|
|
.asm_112f70
|
|
ld a, [hli]
|
|
cp $20
|
|
jr z, .asm_112f70
|
|
dec hl
|
|
ld d, $0
|
|
cp $32
|
|
jr z, .asm_112f7d
|
|
inc d
|
|
|
|
.asm_112f7d
|
|
ld a, d
|
|
ld [wc990], a
|
|
call Function112b11
|
|
ld hl, wc98b
|
|
ld a, e
|
|
ld [hli], a
|
|
ld [hl], d
|
|
|
|
.asm_112f8a
|
|
ld hl, wc880
|
|
ld a, [wc82d]
|
|
ld b, a
|
|
or a
|
|
jr nz, .asm_112fa1
|
|
ld hl, wc98b
|
|
ld a, $0
|
|
ld [hli], a
|
|
ld [hl], a
|
|
ld a, $1
|
|
ld [wc990], a
|
|
ret
|
|
|
|
.asm_112fa1
|
|
call Function112fd5
|
|
call Function113008
|
|
call Function113026
|
|
call Function113054
|
|
call Function113167
|
|
call Function113180
|
|
call Function113268
|
|
jr c, .asm_112fc9
|
|
ld a, $d
|
|
cp [hl]
|
|
jr z, .asm_112fc2
|
|
ld a, $a
|
|
cp [hl]
|
|
jr nz, .asm_112fa1
|
|
|
|
.asm_112fc2
|
|
ld hl, wc990
|
|
res 2, [hl]
|
|
jr .asm_112fce
|
|
|
|
.asm_112fc9
|
|
ld hl, wc990
|
|
set 2, [hl]
|
|
|
|
.asm_112fce
|
|
call Function11306b
|
|
ld a, [wc990]
|
|
ret
|
|
|
|
Function112fd5:
|
|
ld de, Unknown_113001
|
|
push hl
|
|
call Function113281
|
|
jr nc, .asm_112fe0
|
|
pop hl
|
|
ret
|
|
|
|
.asm_112fe0
|
|
pop de
|
|
push bc
|
|
push de
|
|
push hl
|
|
ld b, $0
|
|
.asm_112fe6
|
|
inc b
|
|
ld a, [hli]
|
|
cp $a
|
|
jr nz, .asm_112fe6
|
|
pop hl
|
|
ld c, b
|
|
ld a, [wc833]
|
|
ld e, a
|
|
ld a, [wc834]
|
|
ld d, a
|
|
or e
|
|
jr z, .asm_112ffe
|
|
call MobileSDK_CopyBytes
|
|
xor a
|
|
ld [de], a
|
|
|
|
.asm_112ffe
|
|
pop hl
|
|
pop bc
|
|
ret
|
|
|
|
Unknown_113001:
|
|
db "date: ", 0
|
|
|
|
Function113008:
|
|
ld de, Unknown_1132a6
|
|
push hl
|
|
call Function113273
|
|
jr nc, .asm_113013
|
|
pop hl
|
|
ret
|
|
|
|
.asm_113013
|
|
call Function112b11
|
|
ld hl, wc98d
|
|
ld a, e
|
|
ld [hli], a
|
|
ld [hl], d
|
|
pop hl
|
|
ld a, d
|
|
or e
|
|
ret z
|
|
ld a, $2
|
|
ld [wc990], a
|
|
ret
|
|
|
|
Function113026:
|
|
ld de, Unknown_1132b2
|
|
push hl
|
|
call Function113273
|
|
jr nc, .asm_113031
|
|
pop hl
|
|
ret
|
|
|
|
.asm_113031
|
|
pop hl
|
|
push bc
|
|
push hl
|
|
push hl
|
|
ld b, $0
|
|
.asm_113037
|
|
inc b
|
|
ld a, [hli]
|
|
cp $a
|
|
jr nz, .asm_113037
|
|
pop hl
|
|
ld c, b
|
|
ld de, wMobileSDK_PacketBuffer + 18
|
|
call MobileSDK_CopyBytes
|
|
ld hl, wMobileSDK_PacketBuffer + 18
|
|
ld de, wc9b5
|
|
ld b, c
|
|
call MobileSDK_CopyBytes
|
|
xor a
|
|
ld [de], a
|
|
pop hl
|
|
pop bc
|
|
ret
|
|
|
|
Function113054:
|
|
ld de, Unknown_1132bf
|
|
push hl
|
|
call Function113273
|
|
jr nc, .asm_11305f
|
|
pop hl
|
|
ret
|
|
|
|
.asm_11305f
|
|
push bc
|
|
ld de, wc9b5
|
|
ld b, $30
|
|
call Function1136c1
|
|
pop bc
|
|
pop hl
|
|
ret
|
|
|
|
Function11306b:
|
|
ld hl, wc880
|
|
ld a, [wc82d]
|
|
ld b, a
|
|
|
|
Function113072:
|
|
call Function113268
|
|
jp nc, Function113089
|
|
ld a, [wMobileSDK_ReceivePacketBuffer]
|
|
cp $9f
|
|
jp nz, Function1131a9
|
|
push hl
|
|
ld hl, wc990
|
|
res 2, [hl]
|
|
pop hl
|
|
jr Function113095
|
|
|
|
Function113089:
|
|
ld a, [hl]
|
|
cp $d
|
|
jr z, .asm_113094
|
|
cp $a
|
|
jr z, Function113095
|
|
jr Function113072
|
|
|
|
.asm_113094
|
|
inc hl
|
|
|
|
Function113095:
|
|
inc hl
|
|
push bc
|
|
ld a, [wc872]
|
|
ld b, a
|
|
ld a, [wc873]
|
|
or b
|
|
pop bc
|
|
jr z, .asm_1130b3
|
|
ld a, [wc86a]
|
|
cp $23
|
|
jr z, .asm_1130b3
|
|
cp $20
|
|
jr z, .asm_1130b3
|
|
cp $22
|
|
jr z, .asm_1130b3
|
|
jr .asm_1130d6
|
|
|
|
.asm_1130b3
|
|
xor a
|
|
ld hl, wc86e
|
|
ld [hli], a
|
|
ld [hl], a
|
|
ld hl, wc821
|
|
res 2, [hl]
|
|
ld a, [wc86a]
|
|
cp $13
|
|
jr z, .asm_1130c8
|
|
cp $14
|
|
ret nz
|
|
|
|
.asm_1130c8
|
|
ld a, $6
|
|
ld [wc86b], a
|
|
ld a, [wMobileSDK_ReceivePacketBuffer]
|
|
cp $9f
|
|
ret z
|
|
jp Function112430
|
|
|
|
.asm_1130d6
|
|
ld a, [wc82b]
|
|
ld c, a
|
|
dec b
|
|
dec b
|
|
ld a, b
|
|
ld [wc82d], a
|
|
jr z, .asm_11310d
|
|
ld a, [wc873]
|
|
ld d, a
|
|
ld a, [wc872]
|
|
ld e, a
|
|
dec de
|
|
dec de
|
|
xor a
|
|
or d
|
|
jr nz, .asm_1130f5
|
|
ld a, e
|
|
cp b
|
|
jp c, Function113206
|
|
|
|
.asm_1130f5
|
|
ld a, e
|
|
sub b
|
|
ld [wc82b], a
|
|
ld a, d
|
|
sbc $0
|
|
ld [wc82c], a
|
|
ld a, [wc874]
|
|
ld e, a
|
|
ld a, [wc875]
|
|
ld d, a
|
|
inc de
|
|
inc de
|
|
call MobileSDK_CopyBytes
|
|
|
|
.asm_11310d
|
|
ld a, [wMobileSDK_ReceivePacketBuffer]
|
|
cp $9f
|
|
jr z, .asm_113150
|
|
ld a, [wMobileSDK_ReceivePacketBuffer + 3]
|
|
or a
|
|
jr z, .asm_113150
|
|
ld l, c
|
|
sub c
|
|
ld c, a
|
|
ld a, l
|
|
ld hl, wMobileSDK_ReceivePacketBuffer + 4
|
|
add hl, bc
|
|
ld b, a
|
|
push de
|
|
ld a, [wc82b]
|
|
ld e, a
|
|
ld a, [wc82c]
|
|
ld d, a
|
|
xor a
|
|
or d
|
|
jr nz, .asm_113135
|
|
ld a, e
|
|
cp b
|
|
jp c, Function113245
|
|
|
|
.asm_113135
|
|
pop de
|
|
push hl
|
|
ld hl, wc82d
|
|
ld a, [hl]
|
|
add b
|
|
ld [hli], a
|
|
ld a, [hl]
|
|
adc 0
|
|
ld [hl], a
|
|
ld c, b
|
|
pop hl
|
|
call MobileSDK_CopyBytes
|
|
ld hl, wc82b
|
|
ld a, [hl]
|
|
sub c
|
|
ld [hli], a
|
|
ld a, [hl]
|
|
sbc $0
|
|
ld [hl], a
|
|
|
|
.asm_113150
|
|
ld hl, wc829
|
|
ld a, e
|
|
ld [hli], a
|
|
ld a, d
|
|
ld [hl], a
|
|
ld hl, wc821
|
|
res 2, [hl]
|
|
ld a, $1
|
|
ld [wc86b], a
|
|
ld a, $2
|
|
ld [wc989], a
|
|
ret
|
|
|
|
Function113167:
|
|
ld de, Unknown_1132ff
|
|
push hl
|
|
call Function113273
|
|
jr nc, .asm_113172
|
|
pop hl
|
|
ret
|
|
|
|
.asm_113172
|
|
pop de
|
|
push bc
|
|
push de
|
|
push hl
|
|
ld b, $0
|
|
.asm_113178
|
|
inc b
|
|
ld a, [hli]
|
|
cp $a
|
|
jr nz, .asm_113178
|
|
jr Function113197
|
|
|
|
Function113180:
|
|
ld de, Unknown_11330c
|
|
push hl
|
|
call Function113273
|
|
jr nc, .asm_11318b
|
|
pop hl
|
|
ret
|
|
|
|
.asm_11318b
|
|
pop de
|
|
push bc
|
|
push de
|
|
push hl
|
|
ld b, $0
|
|
.asm_113191
|
|
inc b
|
|
ld a, [hli]
|
|
cp $a
|
|
jr nz, .asm_113191
|
|
|
|
Function113197:
|
|
pop hl
|
|
ld c, b
|
|
ld de, wMobileSDK_PacketBuffer + 16
|
|
ld a, b
|
|
ld [de], a
|
|
inc de
|
|
dec b
|
|
dec b
|
|
call MobileSDK_CopyBytes
|
|
xor a
|
|
ld [de], a
|
|
pop hl
|
|
pop bc
|
|
ret
|
|
|
|
Function1131a9:
|
|
ld hl, wc979
|
|
ld de, wc880
|
|
ld b, $0
|
|
ld c, b
|
|
ld a, [hl]
|
|
cp $a
|
|
jr z, .asm_1131c4
|
|
.asm_1131b7
|
|
ld a, [hld]
|
|
inc b
|
|
cp $a
|
|
jr nz, .asm_1131b7
|
|
inc hl
|
|
inc hl
|
|
dec b
|
|
ld c, b
|
|
call MobileSDK_CopyBytes
|
|
|
|
.asm_1131c4
|
|
ld a, [wc82b]
|
|
ld b, a
|
|
add c
|
|
ld c, a
|
|
push bc
|
|
ld a, $ff
|
|
sub b
|
|
ld c, a
|
|
ld b, 0
|
|
ld hl, wMobileSDK_ReceivePacketBuffer + 4
|
|
add hl, bc
|
|
pop bc
|
|
call MobileSDK_CopyBytes
|
|
ld a, c
|
|
ld [wc82d], a
|
|
ld a, $fa
|
|
sub c
|
|
ld [wc82b], a
|
|
ld hl, wc829
|
|
ld a, e
|
|
ld [hli], a
|
|
ld a, d
|
|
ld [hl], a
|
|
ld l, e
|
|
ld h, d
|
|
ld de, wc97a
|
|
.asm_1131ef
|
|
xor a
|
|
ld [hli], a
|
|
ld a, l
|
|
cp e
|
|
jr nz, .asm_1131ef
|
|
ld a, d
|
|
cp h
|
|
jr nz, .asm_1131ef
|
|
ld hl, wc821
|
|
res 2, [hl]
|
|
ld hl, wc86b
|
|
dec [hl]
|
|
dec [hl]
|
|
ld a, $4
|
|
ret
|
|
|
|
Function113206:
|
|
ld a, b
|
|
sub e
|
|
ld [wc991], a
|
|
ld a, [wc821]
|
|
bit 2, a
|
|
ld a, c
|
|
jr nz, .asm_113214
|
|
xor a
|
|
|
|
.asm_113214
|
|
ld [wc992], a
|
|
ld b, e
|
|
ld c, e
|
|
ld a, [wc874]
|
|
ld e, a
|
|
ld a, [wc875]
|
|
ld d, a
|
|
inc de
|
|
inc de
|
|
call MobileSDK_CopyBytes
|
|
ld a, [wc991]
|
|
ld [wc993], a
|
|
ld b, a
|
|
ld de, wc880
|
|
call MobileSDK_CopyBytes
|
|
ld hl, wc82d
|
|
ld a, c
|
|
ld [hli], a
|
|
xor a
|
|
ld [hl], a
|
|
ld hl, wc821
|
|
set 2, [hl]
|
|
ld a, $3
|
|
ld [wc86b], a
|
|
ret
|
|
|
|
Function113245:
|
|
ld a, b
|
|
sub e
|
|
ld [wc992], a
|
|
ld [wc82b], a
|
|
ld b, e
|
|
ld c, e
|
|
pop de
|
|
call MobileSDK_CopyBytes
|
|
ld hl, wc82d
|
|
ld a, c
|
|
add [hl]
|
|
ld [hli], a
|
|
ld a, $0
|
|
adc [hl]
|
|
ld [hl], a
|
|
ld hl, wc821
|
|
set 2, [hl]
|
|
ld a, $3
|
|
ld [wc86b], a
|
|
ret
|
|
|
|
Function113268:
|
|
.asm_113268
|
|
dec b
|
|
ld a, [hli]
|
|
cp $a
|
|
ret z
|
|
xor a
|
|
or b
|
|
jr nz, .asm_113268
|
|
scf
|
|
ret
|
|
|
|
Function113273:
|
|
ld c, $0
|
|
.asm_113275
|
|
ld a, [de]
|
|
inc de
|
|
or a
|
|
ret z
|
|
xor [hl]
|
|
inc hl
|
|
or c
|
|
ld c, a
|
|
jr z, .asm_113275
|
|
scf
|
|
ret
|
|
|
|
Function113281:
|
|
ld c, $0
|
|
push hl
|
|
ld l, e
|
|
ld h, d
|
|
pop de
|
|
.asm_113287
|
|
ld a, [de]
|
|
inc de
|
|
call Function11329d
|
|
xor [hl]
|
|
inc hl
|
|
or c
|
|
ld c, a
|
|
xor a
|
|
cp [hl]
|
|
jr z, .asm_113298
|
|
cp c
|
|
jr z, .asm_113287
|
|
scf
|
|
|
|
.asm_113298
|
|
push hl
|
|
ld l, e
|
|
ld h, d
|
|
pop de
|
|
ret
|
|
|
|
Function11329d:
|
|
cp $41
|
|
ret c
|
|
cp $5b
|
|
ret nc
|
|
or $20
|
|
ret
|
|
|
|
Unknown_1132a6:
|
|
db "Gb-Status: ", 0
|
|
Unknown_1132b2:
|
|
db "Gb-Auth-ID: ", 0
|
|
Unknown_1132bf:
|
|
db "WWW-Authenticate: GB00 name=", $22, 0
|
|
Unknown_1132dd:
|
|
db "Content-Type: application/x-cgb", $d, "\n", 0
|
|
Unknown_1132ff:
|
|
db "URI-header: ", 0
|
|
Unknown_11330c:
|
|
db "Location: ", 0
|
|
|
|
Function113317:
|
|
ld a, $1
|
|
ld [wc86b], a
|
|
ld de, wMobileSDK_PacketBuffer + 18
|
|
ld a, [wc86c]
|
|
ld [de], a
|
|
inc de
|
|
ld bc, $0001
|
|
call Function1126b0
|
|
ld hl, Unknown_1132dd
|
|
ld a, [wc9a5]
|
|
or a
|
|
call nz, MobileSDK_CopyString
|
|
ld a, [wc86a]
|
|
cp $22
|
|
jr nz, .asm_113344
|
|
ld a, [wc98a]
|
|
cp $2
|
|
jr nz, .asm_113351
|
|
jr .asm_113348
|
|
|
|
.asm_113344
|
|
cp $24
|
|
jr nz, .asm_113351
|
|
|
|
.asm_113348
|
|
ld a, [wc9a5]
|
|
or a
|
|
jr z, .asm_11336a
|
|
call Function1133de
|
|
|
|
.asm_113351
|
|
ld hl, wc9b5
|
|
call MobileSDK_CopyString
|
|
call Function1126b6
|
|
ld a, c
|
|
ld [wMobileSDK_PacketBuffer + 17], a
|
|
ld b, c
|
|
call Function111f63
|
|
ld a, $95
|
|
ld hl, wMobileSDK_PacketBuffer + 12
|
|
jp Function111f02
|
|
|
|
.asm_11336a
|
|
ld hl, Unknown_113372
|
|
call MobileSDK_CopyString
|
|
jr .asm_113351
|
|
|
|
Unknown_113372:
|
|
db "Content-Length: 0", $d, "\n", 0
|
|
|
|
Function113386:
|
|
call Function113482
|
|
ld a, $1
|
|
ld [wc86b], a
|
|
ld de, wMobileSDK_PacketBuffer
|
|
ld hl, MobilePacket_TransferData
|
|
ld b, $6
|
|
call MobileSDK_CopyBytes
|
|
ld a, [wc86c]
|
|
ld [de], a
|
|
inc de
|
|
ld b, $1
|
|
call Function111f63
|
|
ld de, wMobileSDK_PacketBuffer + 12
|
|
ld hl, MobilePacket_TransferData
|
|
ld b, $6
|
|
call MobileSDK_CopyBytes
|
|
ld a, [wc86d]
|
|
cp $3
|
|
jp nz, Function113317
|
|
ld de, wMobileSDK_PacketBuffer + 18
|
|
ld a, [wc86c]
|
|
ld [de], a
|
|
inc de
|
|
ld bc, $0001
|
|
call Function1126b0
|
|
ld a, [wc994]
|
|
or a
|
|
call nz, Function1133de
|
|
call Function1126b6
|
|
ld a, c
|
|
ld [wMobileSDK_PacketBuffer + 17], a
|
|
ld b, c
|
|
call Function111f63
|
|
ld a, $95
|
|
ld hl, wMobileSDK_PacketBuffer + 12
|
|
jp Function111f02
|
|
|
|
Function1133de:
|
|
call Function1126e6
|
|
xor a
|
|
ld [wc86b], a
|
|
ld a, [wc9aa]
|
|
ld [wc87c], a
|
|
ld a, [wc9ab]
|
|
ld [wc87d], a
|
|
ld a, [wc9ac]
|
|
ld [wc87e], a
|
|
ld a, [wc9ad]
|
|
ld [wc87f], a
|
|
ret
|
|
|
|
Function1133fe:
|
|
ld hl, wMobileSDK_PacketBuffer + 17
|
|
ld a, [hli]
|
|
cp "h"
|
|
jr nz, .asm_113432
|
|
ld a, [hli]
|
|
cp "t"
|
|
jr nz, .asm_113432
|
|
ld a, [hli]
|
|
cp "t"
|
|
jr nz, .asm_113432
|
|
ld a, [hli]
|
|
cp "p"
|
|
jr nz, .asm_113432
|
|
ld a, [hli]
|
|
cp ":"
|
|
jr nz, .asm_113432
|
|
ld a, [hli]
|
|
cp "/"
|
|
jr nz, .asm_113432
|
|
ld a, [hli]
|
|
cp "/"
|
|
jr nz, .asm_113432
|
|
ld hl, wMobileSDK_PacketBuffer + 16
|
|
ld de, wc880
|
|
ld a, [hli]
|
|
ld b, a
|
|
call MobileSDK_CopyBytes
|
|
xor a
|
|
ld [de], a
|
|
ret
|
|
|
|
.asm_113432
|
|
ld a, [wMobileSDK_PacketBuffer + 17]
|
|
cp "/"
|
|
jr z, .asm_113460
|
|
ld de, wc880
|
|
ld hl, wc9b5
|
|
ld a, [hli]
|
|
ld h, [hl]
|
|
ld l, a
|
|
inc hl
|
|
inc hl
|
|
ld a, [hli]
|
|
ld h, [hl]
|
|
ld l, a
|
|
call MobileSDK_CopyString
|
|
ld l, e
|
|
ld h, d
|
|
.asm_11344c
|
|
ld a, [hld]
|
|
cp "/"
|
|
jr nz, .asm_11344c
|
|
inc hl
|
|
inc hl
|
|
ld e, l
|
|
ld d, h
|
|
.asm_113455
|
|
ld hl, wMobileSDK_PacketBuffer + 16
|
|
ld a, [hli]
|
|
ld b, a
|
|
call MobileSDK_CopyBytes
|
|
xor a
|
|
ld [de], a
|
|
ret
|
|
|
|
.asm_113460
|
|
ld de, wc880
|
|
ld hl, wc9b5
|
|
ld a, [hli]
|
|
ld h, [hl]
|
|
ld l, a
|
|
inc hl
|
|
inc hl
|
|
ld a, [hli]
|
|
ld h, [hl]
|
|
ld l, a
|
|
ld a, [hl]
|
|
cp "/"
|
|
jr z, .asm_113478
|
|
ld b, $7
|
|
call MobileSDK_CopyBytes
|
|
|
|
.asm_113478
|
|
ld a, [hli]
|
|
ld [de], a
|
|
inc de
|
|
cp "/"
|
|
jr nz, .asm_113478
|
|
dec de
|
|
jr .asm_113455
|
|
|
|
Function113482:
|
|
ld hl, wc87f
|
|
ld a, [hld]
|
|
ld b, a
|
|
ld a, [hld]
|
|
ld c, a
|
|
ld a, b
|
|
or c
|
|
ret z
|
|
pop hl
|
|
ld hl, rSC
|
|
add hl, bc
|
|
jr c, .asm_113496
|
|
xor a
|
|
ld l, a
|
|
ld h, a
|
|
|
|
.asm_113496
|
|
ld e, l
|
|
ld d, h
|
|
ld hl, wc87f
|
|
ld a, d
|
|
ld [hld], a
|
|
ld a, e
|
|
ld [hld], a
|
|
jr nc, .asm_1134a3
|
|
ld c, $fe
|
|
|
|
.asm_1134a3
|
|
ld a, [hld]
|
|
ld l, [hl]
|
|
ld h, a
|
|
ld a, c
|
|
inc a
|
|
ld [wMobileSDK_PacketBuffer + 5], a
|
|
ld de, wMobileSDK_PacketBuffer + 7
|
|
ld b, c
|
|
call MobileSDK_CopyBytes
|
|
ld a, l
|
|
ld [wc87c], a
|
|
ld a, h
|
|
ld [wc87d], a
|
|
ld b, c
|
|
inc b
|
|
call Function111f63
|
|
ld hl, wc86b
|
|
dec [hl]
|
|
ld hl, wMobileSDK_PacketBuffer
|
|
ld a, $95
|
|
jp Function111f02
|
|
|
|
Function1134cb:
|
|
dec a
|
|
jr z, .asm_1134d9
|
|
dec a
|
|
jr z, .asm_1134f4
|
|
dec a
|
|
jr z, .asm_1134fc
|
|
dec a
|
|
jr z, .asm_11350e
|
|
dec [hl]
|
|
ret
|
|
|
|
.asm_1134d9
|
|
ld a, [wMobileSDK_ReceivePacketBuffer + 4]
|
|
cp $0
|
|
jr z, .asm_1134f0
|
|
cp $ff
|
|
jr z, .asm_1134f0
|
|
ld a, [wc985]
|
|
ld [wc86a], a
|
|
ld hl, wc821
|
|
res 0, [hl]
|
|
ret
|
|
|
|
.asm_1134f0
|
|
inc [hl]
|
|
inc [hl]
|
|
jr .asm_1134fc
|
|
|
|
.asm_1134f4
|
|
ld a, MOBILE_COMMAND_TELEPHONE_STATUS | $80
|
|
ld hl, MobilePacket_TelephoneStatus
|
|
jp PacketSendEmptyBody
|
|
|
|
.asm_1134fc
|
|
ld hl, wc86e
|
|
ld a, [hli]
|
|
ld h, [hl]
|
|
ld l, a
|
|
ld a, [wMobileSDK_ReceivePacketBuffer + 6]
|
|
cp $f0
|
|
jr c, .asm_11350b
|
|
set 7, [hl]
|
|
|
|
.asm_11350b
|
|
jp Mobile_EndSession
|
|
|
|
.asm_11350e
|
|
ld a, [wc86a]
|
|
cp $1e
|
|
jp nz, Function112251
|
|
jp Function1116a0
|
|
|
|
Function113519:
|
|
dec a
|
|
jr z, .asm_113527
|
|
dec a
|
|
jr z, .asm_11352d
|
|
dec a
|
|
jr z, .asm_11353c
|
|
dec a
|
|
jr z, .asm_11353f
|
|
dec [hl]
|
|
ret
|
|
|
|
.asm_113527
|
|
ld hl, MobilePacket_ReadConfigurationDataPart1
|
|
jp Function11236b
|
|
|
|
.asm_11352d
|
|
ld hl, wc829
|
|
ld a, LOW(wc8ca + 22)
|
|
ld [hli], a
|
|
ld a, HIGH(wc8ca + 22)
|
|
ld [hli], a
|
|
ld hl, MobilePacket_ReadConfigurationDataPart2
|
|
jp Function11236b
|
|
|
|
.asm_11353c
|
|
jp Mobile_EndSession
|
|
|
|
.asm_11353f
|
|
ld hl, wc880
|
|
ld a, [hli]
|
|
cp "M"
|
|
jr nz, .asm_113586
|
|
ld a, [hld]
|
|
cp "A"
|
|
jr nz, .asm_113586
|
|
ld b, $be
|
|
ld de, 0
|
|
.asm_113551
|
|
ld a, [hli]
|
|
add e
|
|
ld e, a
|
|
ld a, $0
|
|
adc d
|
|
ld d, a
|
|
dec b
|
|
jr nz, .asm_113551
|
|
ld a, [hli]
|
|
cp d
|
|
jr nz, .asm_11358a
|
|
ld a, [hl]
|
|
cp e
|
|
jr nz, .asm_11358a
|
|
ld a, [wc86e]
|
|
ld e, a
|
|
ld a, [wc86e + 1]
|
|
ld d, a
|
|
ld hl, .asm_11357e
|
|
push hl
|
|
ld a, [wc86a]
|
|
cp $25
|
|
jr z, Function1135ba
|
|
cp $26
|
|
jr z, Function11359d
|
|
cp $27
|
|
jr z, Function1135ad
|
|
.asm_11357e
|
|
ld a, $1
|
|
ld [wc835], a
|
|
jp Function1116a0
|
|
|
|
.asm_113586
|
|
ld a, $25
|
|
jr .asm_11358c
|
|
|
|
.asm_11358a
|
|
ld a, $14
|
|
|
|
.asm_11358c
|
|
call Function11225d
|
|
jp Function1116a4
|
|
|
|
Function113592:
|
|
push de
|
|
ld l, e
|
|
ld h, d
|
|
xor a
|
|
ld [hl], a
|
|
inc de
|
|
call MobileSDK_CopyBytes
|
|
pop de
|
|
ret
|
|
|
|
Function11359d:
|
|
ld b, $20
|
|
call Function113592
|
|
ld a, $21
|
|
ld hl, wc88c
|
|
call MobileSDK_CopyStringLen
|
|
xor a
|
|
ld [de], a
|
|
ret
|
|
|
|
Function1135ad:
|
|
ld b, $1e
|
|
call Function113592
|
|
ld a, $1f
|
|
ld hl, wc8ac
|
|
jp MobileSDK_CopyStringLen
|
|
|
|
Function1135ba:
|
|
ld b, $65
|
|
call Function113592
|
|
ld hl, wc8f6
|
|
call Function1135eb
|
|
ld a, $11
|
|
ld hl, wc8fe
|
|
call MobileSDK_CopyStringLen
|
|
inc de
|
|
ld hl, wc90e
|
|
call Function1135eb
|
|
ld a, $11
|
|
ld hl, wc916
|
|
call MobileSDK_CopyStringLen
|
|
inc de
|
|
ld hl, wc926
|
|
call Function1135eb
|
|
ld a, $11
|
|
ld hl, wc92e
|
|
jp MobileSDK_CopyStringLen
|
|
|
|
Function1135eb:
|
|
ld b, $8
|
|
.asm_1135ed
|
|
ld a, [hl]
|
|
swap a
|
|
and $f
|
|
cp $f
|
|
jr z, .asm_11361c
|
|
or $30
|
|
cp $3a
|
|
call z, Function113620
|
|
cp $3b
|
|
call z, Function113623
|
|
ld [de], a
|
|
inc de
|
|
ld a, [hli]
|
|
and $f
|
|
cp $f
|
|
jr z, .asm_11361c
|
|
or $30
|
|
cp $3a
|
|
call z, Function113620
|
|
cp $3b
|
|
call z, Function113623
|
|
ld [de], a
|
|
inc de
|
|
dec b
|
|
jr nz, .asm_1135ed
|
|
|
|
.asm_11361c
|
|
xor a
|
|
ld [de], a
|
|
inc de
|
|
ret
|
|
|
|
Function113620:
|
|
ld a, $23
|
|
ret
|
|
|
|
Function113623:
|
|
ld a, $2a
|
|
ret
|
|
|
|
Function113626:
|
|
dec a
|
|
jr z, .asm_113634
|
|
dec a
|
|
jr z, .asm_113639
|
|
dec a
|
|
jr z, .asm_11366c
|
|
dec a
|
|
jr z, .asm_11366f
|
|
dec [hl]
|
|
ret
|
|
|
|
.asm_113634
|
|
ld b, $9a
|
|
jp Function11234b
|
|
|
|
.asm_113639
|
|
ld a, [wc882]
|
|
or a
|
|
jr nz, .asm_113642
|
|
inc [hl]
|
|
jr .asm_11366c
|
|
|
|
.asm_113642
|
|
ld de, wMobileSDK_PacketBuffer + 5
|
|
ld c, a
|
|
inc a
|
|
ld [de], a
|
|
inc de
|
|
ld a, $80
|
|
ld [de], a
|
|
inc de
|
|
ld hl, wc880
|
|
ld a, [hli]
|
|
ld h, [hl]
|
|
ld l, a
|
|
ld b, c
|
|
call MobileSDK_CopyBytes
|
|
ld b, c
|
|
inc b
|
|
call Function111f63
|
|
ld a, [wMobileSDK_PacketBuffer + 5]
|
|
add $a
|
|
ld e, a
|
|
ld d, 0
|
|
ld a, $9a
|
|
ld hl, wMobileSDK_PacketBuffer
|
|
jp Function111f02
|
|
|
|
.asm_11366c
|
|
jp Mobile_EndSession
|
|
|
|
.asm_11366f
|
|
jp Function1116a0
|
|
|
|
Function113672:
|
|
dec a
|
|
jr z, .asm_113680
|
|
dec a
|
|
jr z, .asm_113686
|
|
dec a
|
|
jr z, .asm_1136bb
|
|
dec a
|
|
jr z, .asm_1136be
|
|
dec [hl]
|
|
ret
|
|
|
|
.asm_113680
|
|
ld hl, wMobileSDK_PacketBuffer
|
|
jp Function11236b
|
|
|
|
.asm_113686
|
|
ld a, [wc882]
|
|
or a
|
|
jr z, .asm_113693
|
|
cp $81
|
|
jr nc, .asm_113693
|
|
inc [hl]
|
|
jr .asm_1136bb
|
|
|
|
.asm_113693
|
|
ld hl, wMobileSDK_PacketBuffer + 7
|
|
sub $80
|
|
ld [hld], a
|
|
ld a, $80
|
|
ld [hl], a
|
|
ld de, wMobileSDK_PacketBuffer + 8
|
|
ld b, $2
|
|
call Function111f63
|
|
ld hl, wc880
|
|
ld a, [hli]
|
|
ld h, [hl]
|
|
ld l, a
|
|
ld de, $0080
|
|
add hl, de
|
|
ld e, h
|
|
ld a, l
|
|
ld hl, wc829
|
|
ld [hli], a
|
|
ld [hl], e
|
|
ld hl, wMobileSDK_PacketBuffer
|
|
jp Function11236b
|
|
|
|
.asm_1136bb
|
|
jp Mobile_EndSession
|
|
|
|
.asm_1136be
|
|
jp Function1116a0
|
|
|
|
Function1136c1:
|
|
xor a
|
|
ld [wMobileSDK_PacketBuffer + 225], a
|
|
ld a, l
|
|
ld [wMobileSDK_PacketBuffer + 192], a
|
|
ld a, h
|
|
ld [wMobileSDK_PacketBuffer + 193], a
|
|
ld hl, wMobileSDK_PacketBuffer + 194
|
|
ld a, e
|
|
ld [hli], a
|
|
ld a, d
|
|
ld [hli], a
|
|
ld a, b
|
|
ld [hli], a
|
|
ld hl, wMobileSDK_PacketBuffer + 192
|
|
ld a, [hli]
|
|
ld h, [hl]
|
|
ld l, a
|
|
ld de, wMobileSDK_PacketBuffer + 32
|
|
ld b, $30
|
|
ld c, b
|
|
call MobileSDK_CopyBytes
|
|
ld hl, wc97f
|
|
ld a, [hli]
|
|
ld h, [hl]
|
|
ld l, a
|
|
.asm_1136eb
|
|
ld a, [hli]
|
|
or a
|
|
jr nz, .asm_1136eb
|
|
call MobileSDK_CopyString
|
|
ld a, $37
|
|
cp c
|
|
inc a
|
|
jr nc, .asm_1136ff
|
|
ld a, $2
|
|
ld [wMobileSDK_PacketBuffer + 225], a
|
|
ld a, $78
|
|
|
|
.asm_1136ff
|
|
sub c
|
|
ld b, a
|
|
ld a, $80
|
|
ld [de], a
|
|
inc de
|
|
xor a
|
|
.asm_113706
|
|
dec b
|
|
jr z, .asm_11370d
|
|
ld [de], a
|
|
inc de
|
|
jr .asm_113706
|
|
|
|
.asm_11370d
|
|
or a
|
|
sla c
|
|
rl b
|
|
sla c
|
|
rl b
|
|
sla c
|
|
rl b
|
|
ld a, c
|
|
ld [de], a
|
|
inc de
|
|
ld a, b
|
|
ld [de], a
|
|
inc de
|
|
ld l, e
|
|
ld h, d
|
|
ld b, $6
|
|
xor a
|
|
.asm_113725
|
|
ld [hli], a
|
|
dec b
|
|
jr nz, .asm_113725
|
|
ld de, wMobileSDK_PacketBuffer + 160
|
|
ld hl, Unknown_113b7e
|
|
ld b, $10
|
|
call MobileSDK_CopyBytes
|
|
|
|
.asm_113734
|
|
ld hl, wMobileSDK_PacketBuffer + 197
|
|
ld a, LOW(MD5_K_Table)
|
|
ld [hli], a
|
|
ld a, HIGH(MD5_K_Table)
|
|
ld [hl], a
|
|
ld hl, wMobileSDK_PacketBuffer + 199
|
|
ld a, LOW(Unknown_113a70)
|
|
ld [hli], a
|
|
ld a, HIGH(Unknown_113a70)
|
|
ld [hl], a
|
|
ld hl, wMobileSDK_PacketBuffer + 160
|
|
ld de, wMobileSDK_PacketBuffer + 209
|
|
ld b, $10
|
|
call MobileSDK_CopyBytes
|
|
|
|
.asm_113751
|
|
ld hl, wMobileSDK_PacketBuffer + 199
|
|
ld a, [hli]
|
|
ld h, [hl]
|
|
ld l, a
|
|
ld a, [hli]
|
|
ld c, a
|
|
push hl
|
|
call Function113909
|
|
ld hl, wMobileSDK_PacketBuffer + 176
|
|
ld a, [hli]
|
|
ld d, [hl]
|
|
ld e, a
|
|
ld hl, wMobileSDK_PacketBuffer + 184
|
|
call Function113a32
|
|
pop hl
|
|
ld a, [hli]
|
|
ld d, [hl]
|
|
inc hl
|
|
ld e, a
|
|
push hl
|
|
ld a, [wMobileSDK_PacketBuffer + 225]
|
|
bit 0, a
|
|
jr z, .asm_11377c
|
|
ld hl, $0040
|
|
add hl, de
|
|
ld e, l
|
|
ld d, h
|
|
|
|
.asm_11377c
|
|
ld hl, wMobileSDK_PacketBuffer + 32
|
|
add hl, de
|
|
ld e, l
|
|
ld d, h
|
|
ld hl, wMobileSDK_PacketBuffer + 184
|
|
call Function113a32
|
|
ld hl, wMobileSDK_PacketBuffer + 197
|
|
ld a, [hli]
|
|
ld d, [hl]
|
|
ld e, a
|
|
ld hl, wMobileSDK_PacketBuffer + 184
|
|
call Function113a32
|
|
pop hl
|
|
ld a, [hli]
|
|
ld b, a
|
|
ld a, l
|
|
ld [wMobileSDK_PacketBuffer + 199], a
|
|
ld a, h
|
|
ld [wMobileSDK_PacketBuffer + 200], a
|
|
ld hl, wMobileSDK_PacketBuffer + 184
|
|
call Function113a40
|
|
ld hl, wMobileSDK_PacketBuffer + 178
|
|
ld a, [hli]
|
|
ld d, [hl]
|
|
ld e, a
|
|
ld hl, wMobileSDK_PacketBuffer + 184
|
|
call Function113a32
|
|
ld hl, wMobileSDK_PacketBuffer + 176
|
|
ld a, [hli]
|
|
ld d, [hl]
|
|
ld e, a
|
|
ld hl, wMobileSDK_PacketBuffer + 184
|
|
ld b, $4
|
|
call MobileSDK_CopyBytes
|
|
ld hl, wMobileSDK_PacketBuffer + 197
|
|
ld a, [hli]
|
|
ld h, [hl]
|
|
ld l, a
|
|
rept 4
|
|
inc hl
|
|
endr
|
|
ld a, h
|
|
ld [wMobileSDK_PacketBuffer + 198], a
|
|
ld a, l
|
|
ld [wMobileSDK_PacketBuffer + 197], a
|
|
cp $8e ; LOW(MD5_K_Table + $100) ???
|
|
jp nz, .asm_113751
|
|
ld de, wMobileSDK_PacketBuffer + 209
|
|
ld hl, wMobileSDK_PacketBuffer + 160
|
|
call Function113a32
|
|
ld de, wMobileSDK_PacketBuffer + 213
|
|
call Function113a32
|
|
ld de, wMobileSDK_PacketBuffer + 217
|
|
call Function113a32
|
|
ld de, wMobileSDK_PacketBuffer + 221
|
|
call Function113a32
|
|
ld hl, wMobileSDK_PacketBuffer + 225
|
|
bit 1, [hl]
|
|
jr z, .asm_1137fc
|
|
dec [hl]
|
|
jp .asm_113734
|
|
|
|
.asm_1137fc
|
|
ld hl, wMobileSDK_PacketBuffer + 32
|
|
ld de, wMobileSDK_PacketBuffer + 80
|
|
ld bc, $0030
|
|
call Function113d66
|
|
ld hl, wMobileSDK_PacketBuffer + 194
|
|
ld a, [hli]
|
|
ld d, [hl]
|
|
ld e, a
|
|
ld hl, Unknown_113a55
|
|
call MobileSDK_CopyString
|
|
ld hl, wMobileSDK_PacketBuffer + 80
|
|
ld bc, $0020
|
|
call Function113c8e
|
|
ld a, l
|
|
ld [wMobileSDK_PacketBuffer + 194], a
|
|
ld a, h
|
|
ld [wMobileSDK_PacketBuffer + 195], a
|
|
ld b, $12
|
|
ld hl, wMobileSDK_PacketBuffer + 80
|
|
ld de, wMobileSDK_PacketBuffer + 32
|
|
.asm_11382d
|
|
ld a, $40
|
|
and [hl]
|
|
rlca
|
|
ld c, a
|
|
ld a, [hli]
|
|
bit 4, a
|
|
jr z, .asm_113839
|
|
set 6, c
|
|
|
|
.asm_113839
|
|
bit 2, a
|
|
jr z, .asm_11383f
|
|
set 5, c
|
|
|
|
.asm_11383f
|
|
bit 0, a
|
|
jr z, .asm_113845
|
|
set 4, c
|
|
|
|
.asm_113845
|
|
ld a, [hli]
|
|
bit 6, a
|
|
jr z, .asm_11384c
|
|
set 3, c
|
|
|
|
.asm_11384c
|
|
bit 4, a
|
|
jr z, .asm_113852
|
|
set 2, c
|
|
|
|
.asm_113852
|
|
bit 2, a
|
|
jr z, .asm_113858
|
|
set 1, c
|
|
|
|
.asm_113858
|
|
bit 0, a
|
|
jr z, .asm_11385e
|
|
set 0, c
|
|
|
|
.asm_11385e
|
|
ld a, c
|
|
ld [de], a
|
|
inc de
|
|
dec b
|
|
jr nz, .asm_11382d
|
|
ld b, $12
|
|
ld hl, wMobileSDK_PacketBuffer + 115
|
|
ld de, wMobileSDK_PacketBuffer + 67
|
|
.asm_11386c
|
|
ld a, $2
|
|
and [hl]
|
|
rrca
|
|
ld c, a
|
|
ld a, [hld]
|
|
bit 3, a
|
|
jr z, .asm_113878
|
|
set 1, c
|
|
|
|
.asm_113878
|
|
bit 5, a
|
|
jr z, .asm_11387e
|
|
set 2, c
|
|
|
|
.asm_11387e
|
|
bit 7, a
|
|
jr z, .asm_113884
|
|
set 3, c
|
|
|
|
.asm_113884
|
|
ld a, [hld]
|
|
bit 1, a
|
|
jr z, .asm_11388b
|
|
set 4, c
|
|
|
|
.asm_11388b
|
|
bit 3, a
|
|
jr z, .asm_113891
|
|
set 5, c
|
|
|
|
.asm_113891
|
|
bit 5, a
|
|
jr z, .asm_113897
|
|
set 6, c
|
|
|
|
.asm_113897
|
|
bit 7, a
|
|
jr z, .asm_11389d
|
|
set 7, c
|
|
|
|
.asm_11389d
|
|
ld a, c
|
|
ld [de], a
|
|
dec de
|
|
dec b
|
|
jr nz, .asm_11386c
|
|
ld b, $10
|
|
ld de, wMobileSDK_PacketBuffer + 80
|
|
ld hl, wMobileSDK_PacketBuffer + 160
|
|
call MobileSDK_CopyBytes
|
|
ld bc, $0010
|
|
ld hl, wc97f
|
|
ld a, [hli]
|
|
ld h, [hl]
|
|
ld l, a
|
|
call MobileSDK_CopyString
|
|
ld a, $24
|
|
sub c
|
|
ld b, a
|
|
ld l, e
|
|
ld h, d
|
|
ld a, $ff
|
|
.asm_1138c2
|
|
ld [hli], a
|
|
dec b
|
|
jr nz, .asm_1138c2
|
|
xor a
|
|
ld [hl], a
|
|
ld b, $24
|
|
ld hl, wMobileSDK_PacketBuffer + 32
|
|
ld de, wMobileSDK_PacketBuffer + 80
|
|
.asm_1138d0
|
|
ld a, [de]
|
|
inc de
|
|
xor [hl]
|
|
ld c, $0
|
|
bit 0, a
|
|
jr z, .asm_1138db
|
|
set 3, c
|
|
|
|
.asm_1138db
|
|
bit 3, a
|
|
jr z, .asm_1138e1
|
|
set 6, c
|
|
|
|
.asm_1138e1
|
|
bit 6, a
|
|
jr z, .asm_1138e7
|
|
set 0, c
|
|
|
|
.asm_1138e7
|
|
and $b6
|
|
or c
|
|
ld [hli], a
|
|
dec b
|
|
jr nz, .asm_1138d0
|
|
ld hl, wMobileSDK_PacketBuffer + 194
|
|
ld a, [hli]
|
|
ld d, [hl]
|
|
ld e, a
|
|
ld hl, wMobileSDK_PacketBuffer + 32
|
|
ld bc, $0024
|
|
call Function113c8e
|
|
ld a, $22
|
|
ld [hli], a
|
|
ld a, $d
|
|
ld [hli], a
|
|
ld a, $a
|
|
ld [hli], a
|
|
xor a
|
|
ld [hl], a
|
|
ret
|
|
|
|
Function113909:
|
|
call Function11391e
|
|
ld a, c
|
|
and $f0
|
|
swap a
|
|
or a
|
|
jr z, Function11392f
|
|
dec a
|
|
jr z, Function113973
|
|
dec a
|
|
jp z, Function1139b7
|
|
jp Function1139de
|
|
|
|
Function11391e:
|
|
and $f
|
|
ld e, a
|
|
ld d, 0
|
|
ld hl, Unknown_113b70
|
|
add hl, de
|
|
ld de, wMobileSDK_PacketBuffer + 176
|
|
ld b, $8
|
|
jp MobileSDK_CopyBytes
|
|
|
|
Function11392f:
|
|
ld hl, wMobileSDK_PacketBuffer + 178
|
|
ld a, [hli]
|
|
ld h, [hl]
|
|
ld l, a
|
|
ld de, wMobileSDK_PacketBuffer + 184
|
|
ld b, $4
|
|
call MobileSDK_CopyBytes
|
|
ld hl, wMobileSDK_PacketBuffer + 180
|
|
ld a, [hli]
|
|
ld d, [hl]
|
|
ld e, a
|
|
ld hl, wMobileSDK_PacketBuffer + 184
|
|
call Function113a0b
|
|
ld hl, wMobileSDK_PacketBuffer + 178
|
|
ld a, [hli]
|
|
ld h, [hl]
|
|
ld l, a
|
|
ld de, wMobileSDK_PacketBuffer + 188
|
|
ld b, $4
|
|
call MobileSDK_CopyBytes
|
|
ld hl, wMobileSDK_PacketBuffer + 188
|
|
call Function113a1f
|
|
ld hl, wMobileSDK_PacketBuffer + 182
|
|
ld a, [hli]
|
|
ld d, [hl]
|
|
ld e, a
|
|
ld hl, wMobileSDK_PacketBuffer + 188
|
|
call Function113a0b
|
|
ld hl, wMobileSDK_PacketBuffer + 184
|
|
ld de, wMobileSDK_PacketBuffer + 188
|
|
call Function113a15
|
|
ret
|
|
|
|
Function113973:
|
|
ld hl, wMobileSDK_PacketBuffer + 178
|
|
ld a, [hli]
|
|
ld h, [hl]
|
|
ld l, a
|
|
ld de, wMobileSDK_PacketBuffer + 184
|
|
ld b, $4
|
|
call MobileSDK_CopyBytes
|
|
ld hl, wMobileSDK_PacketBuffer + 182
|
|
ld a, [hli]
|
|
ld d, [hl]
|
|
ld e, a
|
|
ld hl, wMobileSDK_PacketBuffer + 184
|
|
call Function113a0b
|
|
ld hl, wMobileSDK_PacketBuffer + 182
|
|
ld a, [hli]
|
|
ld h, [hl]
|
|
ld l, a
|
|
ld de, wMobileSDK_PacketBuffer + 188
|
|
ld b, $4
|
|
call MobileSDK_CopyBytes
|
|
ld hl, wMobileSDK_PacketBuffer + 188
|
|
call Function113a1f
|
|
ld hl, wMobileSDK_PacketBuffer + 180
|
|
ld a, [hli]
|
|
ld d, [hl]
|
|
ld e, a
|
|
ld hl, wMobileSDK_PacketBuffer + 188
|
|
call Function113a0b
|
|
ld hl, wMobileSDK_PacketBuffer + 184
|
|
ld de, wMobileSDK_PacketBuffer + 188
|
|
call Function113a15
|
|
ret
|
|
|
|
Function1139b7:
|
|
ld hl, wMobileSDK_PacketBuffer + 178
|
|
ld a, [hli]
|
|
ld h, [hl]
|
|
ld l, a
|
|
ld de, wMobileSDK_PacketBuffer + 184
|
|
ld b, $4
|
|
call MobileSDK_CopyBytes
|
|
ld hl, wMobileSDK_PacketBuffer + 180
|
|
ld a, [hli]
|
|
ld d, [hl]
|
|
ld e, a
|
|
ld hl, wMobileSDK_PacketBuffer + 184
|
|
call Function113a28
|
|
ld hl, wMobileSDK_PacketBuffer + 182
|
|
ld a, [hli]
|
|
ld d, [hl]
|
|
ld e, a
|
|
ld hl, wMobileSDK_PacketBuffer + 184
|
|
call Function113a28
|
|
ret
|
|
|
|
Function1139de:
|
|
ld hl, wMobileSDK_PacketBuffer + 182
|
|
ld a, [hli]
|
|
ld h, [hl]
|
|
ld l, a
|
|
ld de, wMobileSDK_PacketBuffer + 184
|
|
ld b, $4
|
|
call MobileSDK_CopyBytes
|
|
ld hl, wMobileSDK_PacketBuffer + 184
|
|
call Function113a1f
|
|
ld hl, wMobileSDK_PacketBuffer + 178
|
|
ld a, [hli]
|
|
ld d, [hl]
|
|
ld e, a
|
|
ld hl, wMobileSDK_PacketBuffer + 184
|
|
call Function113a15
|
|
ld hl, wMobileSDK_PacketBuffer + 180
|
|
ld a, [hli]
|
|
ld d, [hl]
|
|
ld e, a
|
|
ld hl, wMobileSDK_PacketBuffer + 184
|
|
call Function113a28
|
|
ret
|
|
|
|
Function113a0b:
|
|
ld b, $4
|
|
.asm_113a0d
|
|
ld a, [de]
|
|
inc de
|
|
and [hl]
|
|
ld [hli], a
|
|
dec b
|
|
jr nz, .asm_113a0d
|
|
ret
|
|
|
|
Function113a15:
|
|
ld b, $4
|
|
.asm_113a17
|
|
ld a, [de]
|
|
inc de
|
|
or [hl]
|
|
ld [hli], a
|
|
dec b
|
|
jr nz, .asm_113a17
|
|
ret
|
|
|
|
Function113a1f:
|
|
ld b, $4
|
|
.asm_113a21
|
|
ld a, [hl]
|
|
cpl
|
|
ld [hli], a
|
|
dec b
|
|
jr nz, .asm_113a21
|
|
ret
|
|
|
|
Function113a28:
|
|
ld b, $4
|
|
.asm_113a2a
|
|
ld a, [de]
|
|
inc de
|
|
xor [hl]
|
|
ld [hli], a
|
|
dec b
|
|
jr nz, .asm_113a2a
|
|
ret
|
|
|
|
Function113a32:
|
|
ld a, [de]
|
|
inc de
|
|
add [hl]
|
|
ld [hli], a
|
|
ld b, $3
|
|
.asm_113a38
|
|
ld a, [de]
|
|
inc de
|
|
adc [hl]
|
|
ld [hli], a
|
|
dec b
|
|
jr nz, .asm_113a38
|
|
ret
|
|
|
|
Function113a40:
|
|
.asm_113a40
|
|
or a
|
|
push hl
|
|
ld a, [hli]
|
|
rla
|
|
ld a, [hl]
|
|
rla
|
|
ld [hli], a
|
|
ld a, [hl]
|
|
rla
|
|
ld [hli], a
|
|
ld a, [hl]
|
|
rla
|
|
ld [hl], a
|
|
pop hl
|
|
ld a, [hl]
|
|
rla
|
|
ld [hl], a
|
|
dec b
|
|
jr nz, .asm_113a40
|
|
ret
|
|
|
|
Unknown_113a55:
|
|
db "Authorization: GB00 name=", $22, 0
|
|
|
|
Unknown_113a70:
|
|
db $00, $00, $00, $07, $06, $04, $00, $0c, $04, $08, $00, $11, $02, $0c, $00, $16
|
|
db $00, $10, $00, $07, $06, $14, $00, $0c, $04, $18, $00, $11, $02, $1c, $00, $16
|
|
db $00, $20, $00, $07, $06, $24, $00, $0c, $04, $28, $00, $11, $02, $2c, $00, $16
|
|
db $00, $30, $00, $07, $06, $34, $00, $0c, $04, $38, $00, $11, $02, $3c, $00, $16
|
|
db $10, $04, $00, $05, $16, $18, $00, $09, $14, $2c, $00, $0e, $12, $00, $00, $14
|
|
db $10, $14, $00, $05, $16, $28, $00, $09, $14, $3c, $00, $0e, $12, $10, $00, $14
|
|
db $10, $24, $00, $05, $16, $38, $00, $09, $14, $0c, $00, $0e, $12, $20, $00, $14
|
|
db $10, $34, $00, $05, $16, $08, $00, $09, $14, $1c, $00, $0e, $12, $30, $00, $14
|
|
db $20, $14, $00, $04, $26, $20, $00, $0b, $24, $2c, $00, $10, $22, $38, $00, $17
|
|
db $20, $04, $00, $04, $26, $10, $00, $0b, $24, $1c, $00, $10, $22, $28, $00, $17
|
|
db $20, $34, $00, $04, $26, $00, $00, $0b, $24, $0c, $00, $10, $22, $18, $00, $17
|
|
db $20, $24, $00, $04, $26, $30, $00, $0b, $24, $3c, $00, $10, $22, $08, $00, $17
|
|
db $30, $00, $00, $06, $36, $1c, $00, $0a, $34, $38, $00, $0f, $32, $14, $00, $15
|
|
db $30, $30, $00, $06, $36, $0c, $00, $0a, $34, $28, $00, $0f, $32, $04, $00, $15
|
|
db $30, $20, $00, $06, $36, $3c, $00, $0a, $34, $18, $00, $0f, $32, $34, $00, $15
|
|
db $30, $10, $00, $06, $36, $2c, $00, $0a, $34, $08, $00, $0f, $32, $24, $00, $15
|
|
|
|
Unknown_113b70:
|
|
dw wMobileSDK_PacketBuffer + 160
|
|
dw wMobileSDK_PacketBuffer + 164
|
|
dw wMobileSDK_PacketBuffer + 168
|
|
dw wMobileSDK_PacketBuffer + 172
|
|
dw wMobileSDK_PacketBuffer + 160
|
|
dw wMobileSDK_PacketBuffer + 164
|
|
dw wMobileSDK_PacketBuffer + 168
|
|
|
|
Unknown_113b7e:
|
|
db $01, $23, $45, $67, $89, $ab, $cd, $ef
|
|
db $fe, $dc, $ba, $98, $76, $54, $32, $10
|
|
|
|
MD5_K_Table:
|
|
dl $d76aa478, $e8c7b756, $242070db, $c1bdceee
|
|
dl $f57c0faf, $4787c62a, $a8304613, $fd469501
|
|
dl $698098d8, $8b44f7af, $ffff5bb1, $895cd7be
|
|
dl $6b901122, $fd987193, $a679438e, $49b40821
|
|
dl $f61e2562, $c040b340, $265e5a51, $e9b6c7aa
|
|
dl $d62f105d, $02441453, $d8a1e681, $e7d3fbc8
|
|
dl $21e1cde6, $c33707d6, $f4d50d87, $455a14ed
|
|
dl $a9e3e905, $fcefa3f8, $676f02d9, $8d2a4c8a
|
|
dl $fffa3942, $8771f681, $6d9d6122, $fde5380c
|
|
dl $a4beea44, $4bdecfa9, $f6bb4b60, $bebfbc70
|
|
dl $289b7ec6, $eaa127fa, $d4ef3085, $04881d05
|
|
dl $d9d4d039, $e6db99e5, $1fa27cf8, $c4ac5665
|
|
dl $f4292244, $432aff97, $ab9423a7, $fc93a039
|
|
dl $655b59c3, $8f0ccc92, $ffeff47d, $85845dd1
|
|
dl $6fa87e4f, $fe2ce6e0, $a3014314, $4e0811a1
|
|
dl $f7537e82, $bd3af235, $2ad7d2bb, $eb86d391
|
|
|
|
Function113c8e:
|
|
ld a, c
|
|
ld [wMobileSDK_PacketBuffer + 201], a
|
|
ld a, b
|
|
ld [wMobileSDK_PacketBuffer + 202], a
|
|
ld c, e
|
|
ld b, d
|
|
ld e, l
|
|
ld d, h
|
|
ld l, c
|
|
ld h, b
|
|
xor a
|
|
ld [wMobileSDK_PacketBuffer + 207], a
|
|
|
|
.asm_113ca0
|
|
ld b, $3
|
|
push hl
|
|
ld hl, wMobileSDK_PacketBuffer + 203
|
|
.asm_113ca6
|
|
ld a, [de]
|
|
inc de
|
|
ld [hli], a
|
|
dec b
|
|
jr nz, .asm_113ca6
|
|
ld a, [wMobileSDK_PacketBuffer + 201]
|
|
ld c, a
|
|
ld a, [wMobileSDK_PacketBuffer + 202]
|
|
ld b, a
|
|
xor a
|
|
or b
|
|
jr nz, .asm_113ccf
|
|
ld a, $2
|
|
cp c
|
|
jr c, .asm_113ccf
|
|
push hl
|
|
dec hl
|
|
ld a, c
|
|
ld [wMobileSDK_PacketBuffer + 207], a
|
|
.asm_113cc3
|
|
xor a
|
|
ld [hld], a
|
|
inc c
|
|
ld a, $3
|
|
cp c
|
|
jr nz, .asm_113cc3
|
|
pop hl
|
|
ld bc, $0003
|
|
|
|
.asm_113ccf
|
|
dec bc
|
|
dec bc
|
|
dec bc
|
|
ld a, c
|
|
ld [wMobileSDK_PacketBuffer + 201], a
|
|
ld a, b
|
|
ld [wMobileSDK_PacketBuffer + 202], a
|
|
push de
|
|
dec hl
|
|
ld c, [hl]
|
|
dec hl
|
|
ld b, [hl]
|
|
dec hl
|
|
ld a, [hl]
|
|
ld d, a
|
|
srl a
|
|
srl a
|
|
ld [hli], a
|
|
ld a, $3
|
|
and d
|
|
ld d, a
|
|
ld a, $f0
|
|
and b
|
|
or d
|
|
swap a
|
|
ld [hli], a
|
|
ld a, $f
|
|
and b
|
|
ld d, a
|
|
ld a, c
|
|
and $c0
|
|
or d
|
|
rlca
|
|
rlca
|
|
ld [hli], a
|
|
ld a, $3f
|
|
and c
|
|
ld [hld], a
|
|
dec hl
|
|
dec hl
|
|
pop de
|
|
ld b, h
|
|
ld c, l
|
|
pop hl
|
|
ld a, [bc]
|
|
inc bc
|
|
call Function113d47
|
|
ld [hli], a
|
|
ld a, [bc]
|
|
inc bc
|
|
call Function113d47
|
|
ld [hli], a
|
|
ld a, [bc]
|
|
inc bc
|
|
call Function113d47
|
|
ld [hli], a
|
|
ld a, [bc]
|
|
inc bc
|
|
call Function113d47
|
|
ld [hli], a
|
|
ld a, [wMobileSDK_PacketBuffer + 201]
|
|
cp $0
|
|
jp nz, .asm_113ca0
|
|
ld a, [wMobileSDK_PacketBuffer + 202]
|
|
cp $0
|
|
jp nz, .asm_113ca0
|
|
ld a, [wMobileSDK_PacketBuffer + 207]
|
|
cp $0
|
|
jr z, .asm_113d43
|
|
push hl
|
|
dec hl
|
|
ld b, a
|
|
.asm_113d39
|
|
ld a, $3d
|
|
ld [hld], a
|
|
inc b
|
|
ld a, $3
|
|
cp b
|
|
jr nz, .asm_113d39
|
|
pop hl
|
|
|
|
.asm_113d43
|
|
ld a, $0
|
|
ld [hl], a
|
|
ret
|
|
|
|
Function113d47:
|
|
cp $1a
|
|
jr c, .asm_113d5a
|
|
cp $34
|
|
jr c, .asm_113d5d
|
|
cp $3e
|
|
jr c, .asm_113d60
|
|
cp $3e
|
|
jr z, .asm_113d63
|
|
ld a, $2f
|
|
ret
|
|
|
|
.asm_113d5a
|
|
add $41
|
|
ret
|
|
|
|
.asm_113d5d
|
|
add $47
|
|
ret
|
|
|
|
.asm_113d60
|
|
sub $4
|
|
ret
|
|
|
|
.asm_113d63
|
|
ld a, $2b
|
|
ret
|
|
|
|
Function113d66:
|
|
ld a, c
|
|
ld [wMobileSDK_PacketBuffer + 201], a
|
|
ld a, b
|
|
ld [wMobileSDK_PacketBuffer + 202], a
|
|
ld c, e
|
|
ld b, d
|
|
ld e, l
|
|
ld d, h
|
|
ld l, c
|
|
ld h, b
|
|
.asm_113d74
|
|
ld a, [wMobileSDK_PacketBuffer + 202]
|
|
or a
|
|
jr nz, .asm_113d82
|
|
ld a, [wMobileSDK_PacketBuffer + 201]
|
|
cp $4
|
|
jp c, .asm_113e26
|
|
|
|
.asm_113d82
|
|
ld b, $4
|
|
push hl
|
|
ld hl, wMobileSDK_PacketBuffer + 203
|
|
.asm_113d88
|
|
ld a, [de]
|
|
inc de
|
|
call .decodeBase64Character
|
|
ld [hli], a
|
|
dec b
|
|
jr nz, .asm_113d88
|
|
ld a, [wMobileSDK_PacketBuffer + 201]
|
|
ld c, a
|
|
ld a, [wMobileSDK_PacketBuffer + 202]
|
|
ld b, a
|
|
rept 4
|
|
dec bc
|
|
endr
|
|
ld a, b
|
|
or c
|
|
jr z, .asm_113dae
|
|
.asm_113da1
|
|
ld a, [de]
|
|
cp $d
|
|
jr z, .asm_113daa
|
|
cp $a
|
|
jr nz, .asm_113dae
|
|
|
|
.asm_113daa
|
|
inc de
|
|
dec bc
|
|
jr .asm_113da1
|
|
|
|
.asm_113dae
|
|
ld a, c
|
|
ld [wMobileSDK_PacketBuffer + 201], a
|
|
ld a, b
|
|
ld [wMobileSDK_PacketBuffer + 202], a
|
|
push de
|
|
dec hl
|
|
ld d, [hl]
|
|
dec hl
|
|
ld c, [hl]
|
|
dec hl
|
|
ld b, [hl]
|
|
dec hl
|
|
ld a, [hl]
|
|
sla b
|
|
sla b
|
|
sla b
|
|
rla
|
|
sla b
|
|
rla
|
|
ld [hli], a
|
|
ld [hl], b
|
|
inc hl
|
|
rrc c
|
|
rrc c
|
|
ld [hl], c
|
|
dec hl
|
|
ld a, $f
|
|
and c
|
|
or [hl]
|
|
ld [hli], a
|
|
ld a, [hli]
|
|
and $c0
|
|
or [hl]
|
|
dec hl
|
|
ld [hld], a
|
|
dec hl
|
|
pop de
|
|
ld b, h
|
|
ld c, l
|
|
pop hl
|
|
ld a, [bc]
|
|
ld [hli], a
|
|
inc bc
|
|
ld a, [bc]
|
|
ld [hli], a
|
|
inc bc
|
|
ld a, [bc]
|
|
ld [hli], a
|
|
ld a, [wMobileSDK_PacketBuffer + 201]
|
|
or a
|
|
jr nz, .asm_113d74
|
|
ld a, [wMobileSDK_PacketBuffer + 202]
|
|
or a
|
|
jp nz, .asm_113d74
|
|
xor a
|
|
ld [hl], a
|
|
ret
|
|
|
|
.decodeBase64Character:
|
|
cp "+"
|
|
jr c, .asm_113e24
|
|
jr z, .asm_113e31
|
|
cp "/"
|
|
jr c, .asm_113e24
|
|
jr z, .asm_113e34
|
|
cp "0"
|
|
jr c, .asm_113e24
|
|
cp "9" + 1
|
|
jr c, .asm_113e37
|
|
cp "="
|
|
jr c, .asm_113e24
|
|
jr z, .asm_113e3a
|
|
cp "A"
|
|
jr c, .asm_113e24
|
|
cp "Z" + 1
|
|
jr c, .asm_113e3c
|
|
cp "a"
|
|
jr c, .asm_113e24
|
|
cp "z" + 1
|
|
jr c, .asm_113e3f
|
|
|
|
.asm_113e24
|
|
pop hl
|
|
pop hl
|
|
.asm_113e26
|
|
ld hl, wc821
|
|
set 1, [hl]
|
|
ld a, $20
|
|
ld [wc80f], a
|
|
ret
|
|
|
|
.asm_113e31
|
|
ld a, $3e
|
|
ret
|
|
|
|
.asm_113e34
|
|
ld a, $3f
|
|
ret
|
|
|
|
.asm_113e37
|
|
add $4
|
|
ret
|
|
|
|
.asm_113e3a
|
|
xor a
|
|
ret
|
|
|
|
.asm_113e3c
|
|
sub $41
|
|
ret
|
|
|
|
.asm_113e3f
|
|
sub $47
|
|
ret
|
|
|
|
Function113e42:
|
|
dec a
|
|
jr z, .asm_113e4f
|
|
dec a
|
|
jr z, .asm_113e85
|
|
dec a
|
|
jr z, .asm_113ea8
|
|
dec a
|
|
jr z, .asm_113eb0
|
|
ret
|
|
|
|
.asm_113e4f
|
|
ld a, [wc807]
|
|
cp $8
|
|
jr nz, .asm_113e58
|
|
.asm_113e56
|
|
dec [hl]
|
|
ret
|
|
|
|
.asm_113e58
|
|
xor a
|
|
ld [wc86d], a
|
|
ld a, $2
|
|
ld [wc86a], a
|
|
ld hl, wc821
|
|
ld a, [hl]
|
|
and $10
|
|
set 5, a
|
|
ld [hl], a
|
|
jp Function113eb8
|
|
|
|
.asm_113e6d
|
|
ld a, [wc86d]
|
|
or a
|
|
ld a, [wMobileSDK_ReceivePacketBuffer]
|
|
jr z, .asm_113e81
|
|
cp $9f
|
|
jr z, .asm_113e85
|
|
cp $a4
|
|
jr z, .asm_113e85
|
|
.asm_113e7e
|
|
jp Function112430
|
|
|
|
.asm_113e81
|
|
cp $a3
|
|
jr z, .asm_113e7e
|
|
|
|
.asm_113e85
|
|
xor a
|
|
ld [wc86d], a
|
|
ld [wMobileSDK_SendCommandID], a
|
|
ld a, $2
|
|
ld [wc86a], a
|
|
ld a, $3
|
|
ld [wc807], a
|
|
ld hl, wc821
|
|
ld a, [hl]
|
|
and $10
|
|
set 5, a
|
|
ld [hl], a
|
|
ld hl, wc822
|
|
bit 0, [hl]
|
|
call z, Function111f97
|
|
ret
|
|
|
|
.asm_113ea8
|
|
ld a, [wc807]
|
|
cp $8
|
|
jr z, .asm_113e56
|
|
ret
|
|
|
|
.asm_113eb0
|
|
ld a, $1
|
|
ld [wc86b], a
|
|
jp .asm_113e6d
|
|
|
|
Function113eb8:
|
|
ld a, $ff
|
|
ld [wMobileSDK_SendCommandID], a
|
|
ld hl, wc822
|
|
res 5, [hl]
|
|
res 0, [hl]
|
|
jp Function111f97
|
|
|
|
Function113ec7: ; unreferenced
|
|
ld hl, wc822
|
|
ld a, [hl]
|
|
push af
|
|
res 3, [hl]
|
|
res 0, [hl]
|
|
ld hl, wc81a
|
|
ld a, [hli]
|
|
ld e, a
|
|
ld a, [hli]
|
|
ld d, a
|
|
ld a, [hli]
|
|
ld h, [hl]
|
|
ld l, a
|
|
inc hl
|
|
inc hl
|
|
ld a, [hld]
|
|
dec hl
|
|
xor $80
|
|
ld [wMobileSDK_SendCommandID], a
|
|
ld b, $5
|
|
call PacketSendBytes
|
|
pop af
|
|
bit 0, a
|
|
ret z
|
|
ld hl, wc822
|
|
set 0, [hl]
|
|
ret
|
|
|
|
Function113ef2:
|
|
dec a
|
|
jr z, .asm_113efa
|
|
dec a
|
|
jr z, .asm_113f03
|
|
dec [hl]
|
|
ret
|
|
|
|
.asm_113efa
|
|
ld a, [wc807]
|
|
cp $8
|
|
jr nz, Function113eb8
|
|
dec [hl]
|
|
ret
|
|
|
|
.asm_113f03
|
|
ld a, $26
|
|
call Function11225d
|
|
ld a, $2a
|
|
ld [wc86a], a
|
|
ld hl, wc820
|
|
ld a, [hld]
|
|
ld h, [hl]
|
|
ld l, a
|
|
ld e, l
|
|
ld d, h
|
|
add hl, de
|
|
add hl, de
|
|
ld e, l
|
|
ld d, h
|
|
ld hl, wc815
|
|
ld e, a
|
|
ld [hli], a
|
|
ld a, d
|
|
ld [hl], a
|
|
xor a
|
|
ld [wc800], a
|
|
ld hl, wMobileSDK_PacketBuffer
|
|
ld a, $2
|
|
ld [hli], a
|
|
dec a
|
|
ld [hl], a
|
|
ret
|
|
|
|
Function113f2d:
|
|
dec a
|
|
jr z, .asm_113f35
|
|
dec a
|
|
jr z, .asm_113f4f
|
|
dec [hl]
|
|
ret
|
|
|
|
.asm_113f35
|
|
ld a, [wc807]
|
|
cp $8
|
|
jr nz, .asm_113f3e
|
|
dec [hl]
|
|
ret
|
|
|
|
.asm_113f3e
|
|
xor a
|
|
ld [wMobileSDK_ReceivePacketBuffer], a
|
|
ld [wMobileSDK_ReceivePacketBufferAlt], a
|
|
ld a, [wMobileSDK_SendCommandID]
|
|
cp $91
|
|
jr z, .asm_113f4f
|
|
jp Function113eb8
|
|
|
|
.asm_113f4f
|
|
xor a
|
|
ld [wc86d], a
|
|
ld hl, wc821
|
|
set 0, [hl]
|
|
ld hl, wc822
|
|
xor a
|
|
ld [hl], a
|
|
xor a
|
|
ld [wc80b], a
|
|
xor a
|
|
ld [wMobileSDK_PacketBuffer], a
|
|
ld hl, wc820
|
|
ld a, [hld]
|
|
ld h, [hl]
|
|
ld l, a
|
|
ld e, l
|
|
ld d, h
|
|
add hl, de
|
|
add hl, de
|
|
ld e, l
|
|
ld d, h
|
|
ld hl, wc815
|
|
ld e, a
|
|
ld [hli], a
|
|
ld a, d
|
|
ld [hl], a
|
|
xor a
|
|
ld [wc800], a
|
|
ld hl, wMobileSDK_PacketBuffer
|
|
xor a
|
|
ld [hli], a
|
|
inc a
|
|
ld [hl], a
|
|
ret
|