shithub: pokecrystal

Download patch

ref: e68da6e717f1acaca0423e3db0f6013d92864d87
parent: 1f172badc42935bb510b03fa56e61707489e7c9b
author: mid-kid <esteve.varela@gmail.com>
date: Thu Aug 22 10:41:17 EDT 2019

Document some mobile-related things, discovered thanks to Dan Docs and the efforts of the Gameboy Online Restoration Project

--- a/lib/mobile/main.asm
+++ b/lib/mobile/main.asm
@@ -7,7 +7,7 @@
 
 SECTION "Mobile Adapter SDK", ROMX
 
-Function110000:
+MobileSDK_CopyBytes:
 ; Copy b bytes from hl to de
 .loop
 	ld a, [hli]
@@ -17,7 +17,7 @@
 	jr nz, .loop
 	ret
 
-Function110007:
+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
@@ -31,7 +31,7 @@
 	inc bc
 	jr .loop
 
-Function11000f:
+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
@@ -283,7 +283,7 @@
 	ld hl, $c822
 	res 0, [hl]
 	res 5, [hl]
-	ld hl, $cb47
+	ld hl, wMobileSDK_PacketBuffer
 	xor a
 	ld [hli], a
 	inc a
@@ -493,10 +493,10 @@
 	ld [hli], a
 	ld a, $c8
 	ld [hl], a
-	ld de, $cb47
-	ld b, $5
-	ld hl, Unknown_11205e
-	call Function110000
+	ld de, wMobileSDK_PacketBuffer
+	ld b, MobilePacket_WriteConfigurationData.End - MobilePacket_WriteConfigurationData
+	ld hl, MobilePacket_WriteConfigurationData
+	call MobileSDK_CopyBytes
 	ld a, [$c882]
 	ld c, a
 	or a
@@ -528,7 +528,7 @@
 	ld h, [hl]
 	ld l, a
 	ld c, b
-	call Function110000
+	call MobileSDK_CopyBytes
 	ld a, l
 	ld [$c880], a
 	ld a, h
@@ -573,10 +573,10 @@
 	ld a, [$c870]
 	ld c, a
 	call Function1100dc
-	ld de, $cb47
-	ld b, $6
-	ld hl, Unknown_112046
-	call Function110000
+	ld de, wMobileSDK_PacketBuffer
+	ld b, 6 ; header size
+	ld hl, MobilePacket_ReadConfigurationDataPart1
+	call MobileSDK_CopyBytes
 	ld a, [$c883]
 	ld [de], a
 	inc de
@@ -668,15 +668,15 @@
 	push hl
 	ld b, a
 	call Function111f63
-	ld b, $5
-	ld hl, Unknown_112037
+	ld b, MobilePacket_ISPLogin.End - MobilePacket_ISPLogin
+	ld hl, MobilePacket_ISPLogin
 	ld de, $cb74
-	call Function110000
+	call MobileSDK_CopyBytes
 	inc de
 	inc de
 	pop hl
 	ld bc, 0
-	call Function110007
+	call MobileSDK_CopyString
 	ld a, c
 	ld [$cb7a], a
 	ld [$c86b], a
@@ -684,7 +684,7 @@
 	inc de
 	ld bc, 0
 	ld a, $20
-	call Function11000f
+	call MobileSDK_CopyStringLen
 	ld l, e
 	ld h, d
 	pop de
@@ -745,10 +745,10 @@
 	jr Function110432
 
 Function110485:
-	ld de, $cb47
-	ld hl, Unknown_11201d
-	ld b, $6
-	call Function110000
+	ld de, wMobileSDK_PacketBuffer
+	ld hl, MobilePacket_DialTelephone
+	ld b, MobilePacket_DialTelephone.End - MobilePacket_DialTelephone
+	call MobileSDK_CopyBytes
 	pop bc
 	pop hl
 	push bc
@@ -765,10 +765,10 @@
 	ld [de], a
 	inc de
 	ld bc, $0001
-	ld a, $14
-	call Function11000f
+	ld a, $14 ; CONST: Maximum mobile number length
+	call MobileSDK_CopyStringLen
 	ld a, c
-	ld [$cb4c], a
+	ld [wMobileSDK_PacketBuffer + 5], a
 	ret
 
 Function1104b0:
@@ -777,10 +777,10 @@
 	call Function110393
 	xor a
 	ld [$c86b], a
-	ld de, $0001
-	ld hl, Unknown_112000
-	ld b, $1
-	jp Function111f07
+	ld de, MobilePacket_Idle.End - MobilePacket_Idle
+	ld hl, MobilePacket_Idle
+	ld b, 1
+	jp MobileSDK_SendBytes
 
 Function1104c6:
 	ld a, [$c821]
@@ -800,10 +800,10 @@
 	ld [$c86b], a
 	ld a, $a2
 	ld [$c81e], a
-	ld de, $000a
-	ld hl, Unknown_11203c
+	ld de, MobilePacket_ISPLogout.End - MobilePacket_ISPLogout
+	ld hl, MobilePacket_ISPLogout
 	ld b, $5
-	call Function111f07
+	call MobileSDK_SendBytes
 .asm_1104fa
 	ld a, $e
 	ld [$c86a], a
@@ -836,18 +836,18 @@
 	xor a
 	ld [$c86b], a
 	ld de, $cb67
-	ld hl, Unknown_112072
+	ld hl, MobilePacket_TransferData
 	ld b, $6
-	call Function110000
+	call MobileSDK_CopyBytes
 	ld a, [$c86c]
 	ld [de], a
 	inc de
 	ld b, $1
 	call Function111f63
-	ld de, $cb47
-	ld hl, Unknown_112072
+	ld de, wMobileSDK_PacketBuffer
+	ld hl, MobilePacket_TransferData
 	ld b, $5
-	call Function110000
+	call MobileSDK_CopyBytes
 	ld a, $7
 	ld [de], a
 	inc de
@@ -856,14 +856,14 @@
 	inc de
 	ld bc, $0001
 	ld hl, Unknown_1120c1
-	call Function110007
+	call MobileSDK_CopyString
 	ld b, c
 	call Function111f63
 	ld a, $95
 	ld [$c81e], a
-	ld hl, $cb47
+	ld hl, wMobileSDK_PacketBuffer
 	ld b, $5
-	call Function111f07
+	call MobileSDK_SendBytes
 	ld a, $e
 	ld [$c86a], a
 	jp Function110432
@@ -990,13 +990,13 @@
 	ld [$c86b], a
 	ld [$c9af], a
 	ld de, $cb97
-	ld hl, Unknown_11207d
-	ld b, $6
-	call Function110000
-	ld de, $cb47
-	ld hl, Unknown_112063
-	ld b, $5
-	call Function110000
+	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
@@ -1003,7 +1003,7 @@
 	inc de
 	ld a, b
 	ld bc, 0
-	call Function11000f
+	call MobileSDK_CopyStringLen
 	ld a, c
 	pop hl
 	ld [hl], a
@@ -1038,11 +1038,11 @@
 	jp Function110432
 
 .asm_1106ac
-	ld hl, $cb47
+	ld hl, wMobileSDK_PacketBuffer
 	ld a, $a8
 	ld [$c81e], a
 	ld b, $5
-	call Function111f07
+	call MobileSDK_SendBytes
 	ld a, $f
 	ld [$c86a], a
 	jp Function110432
@@ -1099,18 +1099,18 @@
 	xor a
 	ld [$c86b], a
 	ld de, $cba7
-	ld hl, Unknown_112072
+	ld hl, MobilePacket_TransferData
 	ld b, $6
-	call Function110000
+	call MobileSDK_CopyBytes
 	ld de, $cbb7
-	ld hl, Unknown_112072
+	ld hl, MobilePacket_TransferData
 	ld b, $5
-	call Function110000
+	call MobileSDK_CopyBytes
 	inc de
 	inc de
 	ld bc, $0001
 	ld hl, Unknown_11209e
-	call Function110007
+	call MobileSDK_CopyString
 	pop hl
 	push hl
 	ld b, $ff
@@ -1128,7 +1128,7 @@
 	add $2
 	ld [$cbbc], a
 	pop hl
-	call Function110000
+	call MobileSDK_CopyBytes
 	call Function11295e
 	ld a, $0
 	jp Function110615
@@ -1166,10 +1166,10 @@
 	call Function112724
 	xor a
 	ld [$c86b], a
-	ld de, $cb47
-	ld hl, Unknown_112072
+	ld de, wMobileSDK_PacketBuffer
+	ld hl, MobilePacket_TransferData
 	ld b, $6
-	call Function110000
+	call MobileSDK_CopyBytes
 	ld a, [$c86c]
 	ld [de], a
 	inc de
@@ -1176,9 +1176,9 @@
 	ld b, $1
 	call Function111f63
 	ld de, $cb53
-	ld hl, Unknown_112072
+	ld hl, MobilePacket_TransferData
 	ld b, $5
-	call Function110000
+	call MobileSDK_CopyBytes
 	ld de, $cb59
 	ld a, [$c86c]
 	ld [de], a
@@ -1186,9 +1186,9 @@
 	ld bc, $0001
 	ld de, $cb5a
 	ld hl, Unknown_1120a4
-	call Function110007
+	call MobileSDK_CopyString
 	pop hl
-	call Function110007
+	call MobileSDK_CopyString
 	ld a, $3e
 	ld [de], a
 	inc de
@@ -1208,7 +1208,7 @@
 	ld d, $0
 	ld e, c
 	ld b, $5
-	call Function111f07
+	call MobileSDK_SendBytes
 	ld a, $15
 	ld [$c86a], a
 	jp Function110432
@@ -1248,10 +1248,10 @@
 	xor $1
 	ld [$c86b], a
 	inc [hl]
-	ld de, $cb47
-	ld hl, Unknown_112072
+	ld de, wMobileSDK_PacketBuffer
+	ld hl, MobilePacket_TransferData
 	ld b, $6
-	call Function110000
+	call MobileSDK_CopyBytes
 	ld de, $cb4d
 	ld a, [$c86c]
 	ld [de], a
@@ -1259,9 +1259,9 @@
 	ld b, $1
 	call Function111f63
 	ld de, $cbdd
-	ld hl, Unknown_112072
+	ld hl, MobilePacket_TransferData
 	ld b, $5
-	call Function110000
+	call MobileSDK_CopyBytes
 	ld de, $cbe3
 	ld a, [$c86c]
 	ld [de], a
@@ -1271,7 +1271,7 @@
 	ld bc, $0001
 	ld de, $cbe4
 	ld hl, Unknown_1120ba
-	call Function110007
+	call MobileSDK_CopyString
 	ld a, c
 	ld [$cbe2], a
 	ld b, c
@@ -1281,7 +1281,7 @@
 	ld de, $0011
 	ld hl, $cbdd
 	ld b, $5
-	call Function111f07
+	call MobileSDK_SendBytes
 
 .asm_110891
 	ld a, $16
@@ -1307,18 +1307,18 @@
 	xor a
 	ld [$c86b], a
 	ld de, $cb67
-	ld hl, Unknown_112072
+	ld hl, MobilePacket_TransferData
 	ld b, $6
-	call Function110000
+	call MobileSDK_CopyBytes
 	ld a, [$c86c]
 	ld [de], a
 	inc de
 	ld b, $1
 	call Function111f63
-	ld de, $cb47
-	ld hl, Unknown_112072
+	ld de, wMobileSDK_PacketBuffer
+	ld hl, MobilePacket_TransferData
 	ld b, $5
-	call Function110000
+	call MobileSDK_CopyBytes
 	ld a, $7
 	ld [de], a
 	inc de
@@ -1327,14 +1327,14 @@
 	inc de
 	ld bc, $0001
 	ld hl, Unknown_1120c1
-	call Function110007
+	call MobileSDK_CopyString
 	ld b, c
 	call Function111f63
 	ld a, $95
 	ld [$c81e], a
-	ld hl, $cb47
+	ld hl, wMobileSDK_PacketBuffer
 	ld b, $5
-	call Function111f07
+	call MobileSDK_SendBytes
 	ld a, $17
 	ld [$c86a], a
 	jp Function110432
@@ -1365,13 +1365,13 @@
 
 .asm_110933
 	ld de, $cba7
-	ld hl, Unknown_112072
+	ld hl, MobilePacket_TransferData
 	ld b, $5
-	call Function110000
+	call MobileSDK_CopyBytes
 	inc de
 	inc de
 	ld hl, Unknown_1120c8
-	call Function110007
+	call MobileSDK_CopyString
 	pop hl
 	push hl
 	ld b, $ff
@@ -1390,7 +1390,7 @@
 	ld [$cbac], a
 	pop hl
 	ld de, $cbb3
-	call Function110000
+	call MobileSDK_CopyBytes
 .asm_110961
 	ld a, [hli]
 	or a
@@ -1401,22 +1401,22 @@
 	ld bc, $0006
 	ld de, $cbf3
 	ld a, $20
-	call Function11000f
+	call MobileSDK_CopyStringLen
 	call Function11295e
 	ld a, c
 	ld [$cbec], a
 	ld de, $cbe7
-	ld hl, Unknown_112072
+	ld hl, MobilePacket_TransferData
 	ld b, $5
-	call Function110000
+	call MobileSDK_CopyBytes
 	ld de, $cbee
 	ld hl, Unknown_1120ce
 	ld b, $5
-	call Function110000
+	call MobileSDK_CopyBytes
 	ld de, $cbc7
-	ld hl, Unknown_112072
+	ld hl, MobilePacket_TransferData
 	ld b, $6
-	call Function110000
+	call MobileSDK_CopyBytes
 	ld a, $1
 	jp Function110615
 
@@ -1434,10 +1434,10 @@
 	xor a
 	ld [$c86b], a
 	call Function112729
-	ld de, $cb47
-	ld hl, Unknown_112072
+	ld de, wMobileSDK_PacketBuffer
+	ld hl, MobilePacket_TransferData
 	ld b, $5
-	call Function110000
+	call MobileSDK_CopyBytes
 	ld a, $7
 	ld [de], a
 	inc de
@@ -1446,14 +1446,14 @@
 	inc de
 	ld bc, $0001
 	ld hl, Unknown_1120d4
-	call Function110007
+	call MobileSDK_CopyString
 	ld b, c
 	call Function111f63
 	ld a, $95
 	ld [$c81e], a
-	ld hl, $cb47
+	ld hl, wMobileSDK_PacketBuffer
 	ld b, $5
-	call Function111f07
+	call MobileSDK_SendBytes
 	ld a, $18
 	ld [$c86a], a
 	jp Function110432
@@ -1476,10 +1476,10 @@
 	jp z, Function110231
 	push hl
 	call Function112729
-	ld de, $cb47
-	ld hl, Unknown_112072
+	ld de, wMobileSDK_PacketBuffer
+	ld hl, MobilePacket_TransferData
 	ld b, $5
-	call Function110000
+	call MobileSDK_CopyBytes
 	ld a, $d
 	ld [de], a
 	inc de
@@ -1488,7 +1488,7 @@
 	inc de
 	ld bc, $0001
 	ld hl, Unknown_1120db
-	call Function110007
+	call MobileSDK_CopyString
 	ld de, $cb53
 	pop hl
 	call Function110d37
@@ -1496,9 +1496,9 @@
 	call Function111f63
 	ld a, $95
 	ld [$c81e], a
-	ld hl, $cb47
+	ld hl, wMobileSDK_PacketBuffer
 	ld b, $5
-	call Function111f07
+	call MobileSDK_SendBytes
 	ld a, $1d
 	ld [$c86a], a
 	jp Function110432
@@ -1557,10 +1557,10 @@
 	ld [hli], a
 	xor a
 	ld [$c86b], a
-	ld de, $cb47
-	ld hl, Unknown_112072
+	ld de, wMobileSDK_PacketBuffer
+	ld hl, MobilePacket_TransferData
 	ld b, $5
-	call Function110000
+	call MobileSDK_CopyBytes
 	ld a, $d
 	ld [de], a
 	inc de
@@ -1569,7 +1569,7 @@
 	inc de
 	ld bc, $0001
 	ld hl, Unknown_1120e8
-	call Function110007
+	call MobileSDK_CopyString
 	ld de, $cb53
 	ld hl, $c86e
 	ld a, [hli]
@@ -1580,9 +1580,9 @@
 	call Function111f63
 	ld a, $95
 	ld [$c81e], a
-	ld hl, $cb47
+	ld hl, wMobileSDK_PacketBuffer
 	ld b, $5
-	call Function111f07
+	call MobileSDK_SendBytes
 	ld a, $1a
 	ld [$c86a], a
 	jp Function110432
@@ -1648,7 +1648,7 @@
 	ld e, a
 	ld a, [$c82a]
 	ld d, a
-	call Function110000
+	call MobileSDK_CopyBytes
 	pop bc
 	ld hl, $c827
 	ld a, [hli]
@@ -1694,7 +1694,7 @@
 	ld e, a
 	ld a, [$c82a]
 	ld d, a
-	call Function110000
+	call MobileSDK_CopyBytes
 	ld hl, $c829
 	ld a, e
 	ld [hli], a
@@ -1714,7 +1714,7 @@
 	ld [$c81e], a
 	ld hl, $cbc7
 	ld b, $5
-	jp Function111f07
+	jp MobileSDK_SendBytes
 
 .asm_110bbb
 	ld a, $4
@@ -1728,7 +1728,7 @@
 	ld d, [hl]
 	ld hl, $c82d
 	ld b, $2
-	jp Function110000
+	jp MobileSDK_CopyBytes
 
 .asm_110bd5
 	ld e, a
@@ -1753,7 +1753,7 @@
 	ld e, a
 	ld a, [$c82a]
 	ld d, a
-	call Function110000
+	call MobileSDK_CopyBytes
 	ld hl, $c827
 	ld a, [hli]
 	ld h, [hl]
@@ -1779,7 +1779,7 @@
 	ld e, a
 	ld a, [$c82a]
 	ld d, a
-	call Function110000
+	call MobileSDK_CopyBytes
 	ld a, e
 	ld [$c829], a
 	ld a, d
@@ -1813,10 +1813,10 @@
 	ld a, h
 	ld [$c86f], a
 	call Function112729
-	ld de, $cb47
-	ld hl, Unknown_112072
+	ld de, wMobileSDK_PacketBuffer
+	ld hl, MobilePacket_TransferData
 	ld b, $5
-	call Function110000
+	call MobileSDK_CopyBytes
 	ld a, $d
 	ld [de], a
 	inc de
@@ -1825,7 +1825,7 @@
 	inc de
 	ld bc, $0001
 	ld hl, Unknown_1120f5
-	call Function110007
+	call MobileSDK_CopyString
 	ld de, $cb53
 	ld hl, $c86e
 	ld a, [hli]
@@ -1836,9 +1836,9 @@
 	call Function111f63
 	ld a, $95
 	ld [$c81e], a
-	ld hl, $cb47
+	ld hl, wMobileSDK_PacketBuffer
 	ld b, $5
-	call Function111f07
+	call MobileSDK_SendBytes
 	ld a, $1b
 	ld [$c86a], a
 	jp Function110432
@@ -1897,10 +1897,10 @@
 	ld [hli], a
 	xor a
 	ld [$c86b], a
-	ld de, $cb47
-	ld hl, Unknown_112072
+	ld de, wMobileSDK_PacketBuffer
+	ld hl, MobilePacket_TransferData
 	ld b, $5
-	call Function110000
+	call MobileSDK_CopyBytes
 	ld a, $e
 	ld [de], a
 	inc de
@@ -1909,7 +1909,7 @@
 	inc de
 	ld bc, $0001
 	ld hl, Unknown_112102
-	call Function110007
+	call MobileSDK_CopyString
 	ld de, $cb52
 	ld hl, $c86e
 	ld a, [hli]
@@ -1920,9 +1920,9 @@
 	call Function111f63
 	ld a, $95
 	ld [$c81e], a
-	ld hl, $cb47
+	ld hl, wMobileSDK_PacketBuffer
 	ld b, $5
-	call Function111f07
+	call MobileSDK_SendBytes
 	ld a, $1c
 	ld [$c86a], a
 	jp Function110432
@@ -2050,7 +2050,7 @@
 	cp $d
 	jr nz, .penultimate_loop
 	pop hl
-	call Function110000
+	call MobileSDK_CopyBytes
 	pop hl
 	ret
 
@@ -2296,13 +2296,13 @@
 	ld [$cb52], a
 	ld a, $1
 	ld [$c86b], a
-	ld de, $cb47
-	ld hl, Unknown_11207d
-	ld b, $6
-	call Function110000
+	ld de, wMobileSDK_PacketBuffer
+	ld hl, MobilePacket_OpenTCPConnection
+	ld b, MobilePacket_OpenTCPConnection.End - MobilePacket_OpenTCPConnection
+	call MobileSDK_CopyBytes
 	ld hl, $c866
 	ld b, $4
-	call Function110000
+	call MobileSDK_CopyBytes
 	inc de
 	inc de
 	ld b, $6
@@ -2333,18 +2333,18 @@
 	jp Function110432
 
 .asm_110f8a
-	ld hl, $cb47
+	ld hl, wMobileSDK_PacketBuffer
 	ld de, $c995
 	ld b, $10
-	call Function110000
+	call MobileSDK_CopyBytes
 
 .asm_110f95
 	ld de, $0010
-	ld hl, $cb47
+	ld hl, wMobileSDK_PacketBuffer
 	ld a, $a3
 	ld [$c81e], a
 	ld b, $5
-	call Function111f07
+	call MobileSDK_SendBytes
 	ld a, $f
 	ld [$c86a], a
 	jp Function110432
@@ -2422,7 +2422,7 @@
 	ld e, a
 	ld a, [$c82a]
 	ld d, a
-	call Function110000
+	call MobileSDK_CopyBytes
 	pop bc
 	ld a, [$c991]
 	ld l, a
@@ -2476,7 +2476,7 @@
 	ld e, a
 	ld a, [$c82a]
 	ld d, a
-	call Function110000
+	call MobileSDK_CopyBytes
 	ld hl, $c829
 	ld a, e
 	ld [hli], a
@@ -2495,9 +2495,9 @@
 	ld de, $000b
 	ld a, $95
 	ld [$c81e], a
-	ld hl, $cb47
+	ld hl, wMobileSDK_PacketBuffer
 	ld b, $5
-	call Function111f07
+	call MobileSDK_SendBytes
 	ld a, $1
 	ld [$c86b], a
 	ret
@@ -2566,7 +2566,7 @@
 	ld e, a
 	ld a, [$c82a]
 	ld d, a
-	call Function110000
+	call MobileSDK_CopyBytes
 	ld hl, $c829
 	ld a, e
 	ld [hli], a
@@ -2606,7 +2606,7 @@
 	ld a, [$c82a]
 	ld d, a
 	ld b, c
-	call Function110000
+	call MobileSDK_CopyBytes
 	ld hl, $c827
 	ld a, [hli]
 	ld h, [hl]
@@ -3038,10 +3038,10 @@
 	ld [hli], a
 	ld [hli], a
 	ld [hl], a
-	ld de, $cb47
-	ld hl, Unknown_112072
+	ld de, wMobileSDK_PacketBuffer
+	ld hl, MobilePacket_TransferData
 	ld b, $5
-	call Function110000
+	call MobileSDK_CopyBytes
 	pop hl
 	ld a, [hli]
 	or a
@@ -3060,7 +3060,7 @@
 	ld [de], a
 	inc de
 	ld b, c
-	call Function110000
+	call MobileSDK_CopyBytes
 	ld b, c
 	inc b
 	inc b
@@ -3130,7 +3130,7 @@
 	ld a, b
 	ld [de], a
 	inc de
-	call Function110000
+	call MobileSDK_CopyBytes
 .asm_1114d2
 	xor a
 	or c
@@ -3160,7 +3160,7 @@
 	ld [$c992], a
 	ld b, a
 	ld de, $c880
-	call Function110000
+	call MobileSDK_CopyBytes
 .asm_1114fa
 	ld hl, $c821
 	res 3, [hl]
@@ -3188,12 +3188,12 @@
 	ld a, b
 	or a
 	jr z, .asm_111521
-	call Function110000
+	call MobileSDK_CopyBytes
 
 .asm_111521
 	ld hl, $ca41
 	ld b, c
-	call Function110000
+	call MobileSDK_CopyBytes
 	push hl
 	ld a, c
 	inc a
@@ -3231,8 +3231,8 @@
 	xor a
 	ld [$c86b], a
 	ld a, $97
-	ld hl, Unknown_11202d
-	call Function111eff
+	ld hl, MobilePacket_TelephoneStatus
+	call MobileSDK_SendPacketEmptyBody
 .asm_11156f
 	ld a, [$c988]
 	cp $40
@@ -3357,7 +3357,7 @@
 	cp $1
 	jp nz, Function110226
 	xor a
-	ld hl, $cb47
+	ld hl, wMobileSDK_PacketBuffer
 	ld [hli], a
 	ld [hl], a
 	call Function111686
@@ -3421,7 +3421,7 @@
 	ldh [c], a
 	ld a, [$cb48]
 	ld [$c86a], a
-	ld a, [$cb47]
+	ld a, [wMobileSDK_PacketBuffer]
 	ld c, a
 	ld hl, $c821
 	ld a, [hl]
@@ -3452,7 +3452,7 @@
 	ld [hl], a
 	ld a, $2
 	and b
-	ld [$cb47], a
+	ld [wMobileSDK_PacketBuffer], a
 	ret
 
 _MobileReceive::
@@ -3889,8 +3889,8 @@
 	ld a, [$c821]
 	bit 3, a
 	jr nz, .asm_111977
-	ld de, $b
-	ld hl, Unknown_112072
+	ld de, MobilePacket_TransferData.End - MobilePacket_TransferData
+	ld hl, MobilePacket_TransferData
 	ld a, $95
 	call Function111f02
 	jp Function111b3b
@@ -3904,9 +3904,9 @@
 	ld d, $0
 	ld a, $95
 	ld [$c81e], a
-	ld hl, $cb47
+	ld hl, wMobileSDK_PacketBuffer
 	ld b, $5
-	call Function111f07
+	call MobileSDK_SendBytes
 	jp Function111b3b
 .asm_1119dd
 	ld hl, $c821
@@ -3923,9 +3923,9 @@
 	ld [$c81e], a
 	ld [$c808], a
 	ld b, $5
-	ld de, $12
-	ld hl, Unknown_112001
-	call Function111f07
+	ld de, MobilePacket_BeginSession.End - MobilePacket_BeginSession
+	ld hl, MobilePacket_BeginSession
+	call MobileSDK_SendBytes
 	ld a, $1
 	ld [$c806], a
 	jp Function111b3b
@@ -3946,7 +3946,7 @@
 	ld h, [hl]
 	ld l, a
 	ld b, $5
-	call Function111f07
+	call MobileSDK_SendBytes
 	jp Function111b3b
 
 Function111a2a:
@@ -4187,7 +4187,7 @@
 	ld de, $c823
 	ld hl, $ca40
 	ld b, $4
-	jp Function110000
+	jp MobileSDK_CopyBytes
 .asm_111be0
 	ld a, $2
 	ld [$c807], a
@@ -4206,7 +4206,7 @@
 	dec a
 	ld b, a
 	inc hl
-	call Function110000
+	call MobileSDK_CopyBytes
 	ld a, $2
 	ld [$c807], a
 	ret
@@ -4215,7 +4215,7 @@
 	ld de, $c872
 	ld hl, $ca40
 	ld b, $2
-	call Function110000
+	call MobileSDK_CopyBytes
 	ld a, $2
 	ld [$c807], a
 	ret
@@ -4276,7 +4276,7 @@
 	ld b, a
 	ld hl, $ca42
 	ld de, $c880
-	call Function110000
+	call MobileSDK_CopyBytes
 	jp Function111d07
 .asm_111c83
 	ld a, $ff
@@ -4316,7 +4316,7 @@
 	ld e, l
 	ld d, h
 	ld hl, $ca41
-	call Function110000
+	call MobileSDK_CopyBytes
 	jr Function111d07
 
 Function111cc2:
@@ -4355,7 +4355,7 @@
 	or a
 	jr z, Function111d07
 	ld b, a
-	call Function110000
+	call MobileSDK_CopyBytes
 	ld hl, $c829
 	ld a, e
 	ld [hli], a
@@ -4390,7 +4390,7 @@
 	ld d, a
 	ld hl, $ca40
 	ld b, $4
-	call Function110000
+	call MobileSDK_CopyBytes
 	ld a, $4
 	ld [$c807], a
 	ret
@@ -4397,7 +4397,7 @@
 
 Function111d39:
 	ld de, $ca3f
-	ld hl, Unknown_112006
+	ld hl, MobilePacket_BeginSession + 5
 	ld b, $9
 .asm_111d41
 	ld a, [de]
@@ -4666,14 +4666,17 @@
 	ld [$c807], a
 	ret
 
-Function111eff:
-	ld de, $000a
+MobileSDK_SendPacketEmptyBody:
+	ld de, 10
 
 Function111f02:
 	ld [$c81e], a
 	ld b, $5
 
-Function111f07:
+MobileSDK_SendBytes:
+; hl = bytes
+; de = size
+; b = ?
 	call Function1100b4
 	ret c
 	ld a, [$c800]
@@ -4807,69 +4810,82 @@
 	jr z, .asm_111fe9
 	ld a, $97
 	ld [hl], a
-	ld hl, Unknown_11202d
-	ld de, $a
-	call Function111f07
+	ld hl, MobilePacket_TelephoneStatus
+	ld de, MobilePacket_TelephoneStatus.End - MobilePacket_TelephoneStatus
+	call MobileSDK_SendBytes
 	ld hl, $c822
 	set 0, [hl]
 	ret
 .asm_111fe9
-	ld hl, Unknown_112001
-	ld de, $12
-	jp Function111f07
+	ld hl, MobilePacket_BeginSession
+	ld de, MobilePacket_BeginSession.End - MobilePacket_BeginSession
+	jp MobileSDK_SendBytes
 
 	ds 14
 
-Unknown_112000:
+MobilePacket_Idle:
 	db $4b
+.End
 
-Unknown_112001:
-	db $99, $66, $10, $00, $00
+MobilePacket_BeginSession:
+	db $99, $66, $10, $00, $00, $08, "NINTENDO", $02, $77, $80, $00
+.End
 
-Unknown_112006:
-	db $08, "NINTENDO", $02, $77, $80, $00
-
-Unknown_112013:
+MobilePacket_EndSession:
 	db $99, $66, $11, $00, $00, $00, $00, $11, $80, $00
+.End
 
-Unknown_11201d:
+MobilePacket_DialTelephone:
 	db $99, $66, $12, $00, $00, $00
+.End
 
-Unknown_112023:
+MobilePacket_HangUpTelephone:
 	db $99, $66, $13, $00, $00, $00, $00, $13, $80, $00
+.End
 
-Unknown_11202d:
+MobilePacket_TelephoneStatus:
 	db $99, $66, $17, $00, $00, $00, $00, $17, $80, $00
+.End
 
-Unknown_112037:
+MobilePacket_ISPLogin:
 	db $99, $66, $21, $00, $00
+.End
 
-Unknown_11203c:
+MobilePacket_ISPLogout:
 	db $99, $66, $22, $00, $00, $00, $00, $22, $80, $00
+.End
 
-Unknown_112046:
+MobilePacket_ReadConfigurationDataPart1:
 	db $99, $66, $19, $00, $00, $02, $00, $60, $00, $7b, $80, $00
+.End
 
-Unknown_112052:
+MobilePacket_ReadConfigurationDataPart2:
 	db $99, $66, $19, $00, $00, $02, $60, $60, $00, $db, $80, $00
+.End
 
-Unknown_11205e:
+MobilePacket_WriteConfigurationData:
 	db $99, $66, $1a, $00, $00
+.End
 
-Unknown_112063:
+MobilePacket_DNSQuery:
 	db $99, $66, $28, $00, $00
+.End
 
-Unknown_112068:
+MobilePacket_WaitForTelephoneCall:
 	db $99, $66, $14, $00, $00, $00, $00, $14, $80, $00
+.End
 
-Unknown_112072:
+MobilePacket_TransferData:
 	db $99, $66, $15, $00, $00, $01, $ff, $01, $15, $80, $00
+.End
 
-Unknown_11207d:
+MobilePacket_OpenTCPConnection:
 	db $99, $66, $23, $00, $00, $06
+.End
 
-Unknown_112083:
+MobilePacket_CloseTCPConnection:
 	db $99, $66, $24, $00, $00, $01
+.End
 
 Unknown_112089:
 	db $ec, $14, $c9
@@ -5096,8 +5112,8 @@
 
 Function112269:
 	ld a, $91
-	ld hl, Unknown_112013
-	jp Function111eff
+	ld hl, MobilePacket_EndSession
+	jp MobileSDK_SendPacketEmptyBody
 
 Function112271:
 	dec a
@@ -5118,7 +5134,7 @@
 	ret
 
 .asm_11228c
-	ld hl, Unknown_112046
+	ld hl, MobilePacket_ReadConfigurationDataPart1
 	jp Function11236b
 
 .asm_112292
@@ -5127,7 +5143,7 @@
 	ld [hli], a
 	ld a, $c8
 	ld [hli], a
-	ld hl, Unknown_112052
+	ld hl, MobilePacket_ReadConfigurationDataPart2
 	jp Function11236b
 
 .asm_1122a1
@@ -5158,10 +5174,10 @@
 	ld hl, $c884
 	ld de, $c836
 	ld b, $8
-	call Function110000
+	call MobileSDK_CopyBytes
 	ld hl, $c8ca
 	ld b, $2c
-	call Function110000
+	call MobileSDK_CopyBytes
 	ld a, [$cb79]
 	ld c, a
 	sub $8
@@ -5173,7 +5189,7 @@
 	ld d, h
 	ld hl, $c836
 	ld b, $8
-	call Function110000
+	call MobileSDK_CopyBytes
 	ld b, c
 	call Function111f63
 	jr Function11235a
@@ -5238,7 +5254,7 @@
 	add $a
 	ld e, a
 	ld d, $0
-	ld hl, $cb47
+	ld hl, wMobileSDK_PacketBuffer
 	ld a, b
 	jp Function111f02
 
@@ -5249,8 +5265,8 @@
 	ld a, $c8
 	ld [hl], a
 	ld a, $97
-	ld hl, Unknown_11202d
-	jp Function111eff
+	ld hl, MobilePacket_TelephoneStatus
+	jp MobileSDK_SendPacketEmptyBody
 
 Function11236b:
 	ld a, $99
@@ -5314,8 +5330,8 @@
 
 .asm_1123be
 	ld a, $94
-	ld hl, Unknown_112068
-	jp Function111eff
+	ld hl, MobilePacket_WaitForTelephoneCall
+	jp MobileSDK_SendPacketEmptyBody
 
 .asm_1123c6
 	ld a, [$ca3c]
@@ -5363,13 +5379,13 @@
 	xor a
 	ld [$c86d], a
 	ld a, $a2
-	ld hl, Unknown_11203c
-	jp Function111eff
+	ld hl, MobilePacket_ISPLogout
+	jp MobileSDK_SendPacketEmptyBody
 
 .asm_112416
 	ld a, $93
-	ld hl, Unknown_112023
-	jp Function111eff
+	ld hl, MobilePacket_HangUpTelephone
+	jp MobileSDK_SendPacketEmptyBody
 
 .asm_11241e
 	jp Function112269
@@ -5386,10 +5402,10 @@
 Function112430:
 	ld a, $3
 	ld [$c807], a
-	ld de, $cb47
-	ld hl, Unknown_112083
-	ld b, $6
-	call Function110000
+	ld de, wMobileSDK_PacketBuffer
+	ld hl, MobilePacket_CloseTCPConnection
+	ld b, MobilePacket_CloseTCPConnection.End - MobilePacket_CloseTCPConnection
+	call MobileSDK_CopyBytes
 	ld a, [$c86c]
 	ld [de], a
 	inc de
@@ -5396,7 +5412,7 @@
 	inc b
 	call Function111f63
 	ld a, $a4
-	ld hl, $cb47
+	ld hl, wMobileSDK_PacketBuffer
 	jp Function111f02
 
 Function112451:
@@ -5432,7 +5448,7 @@
 	ld hl, $cb97
 	ld de, $c995
 	ld b, $10
-	call Function110000
+	call MobileSDK_CopyBytes
 
 .asm_11248b
 	ld a, $a3
@@ -5644,10 +5660,10 @@
 	xor a
 	ld [hli], a
 	ld [hli], a
-	ld de, $cb47
-	ld hl, Unknown_112072
+	ld de, wMobileSDK_PacketBuffer
+	ld hl, MobilePacket_TransferData
 	ld b, $6
-	call Function110000
+	call MobileSDK_CopyBytes
 	ld a, [$c86c]
 	ld [de], a
 	inc de
@@ -5654,9 +5670,9 @@
 	ld b, $1
 	call Function111f63
 	ld de, $cb53
-	ld hl, Unknown_112072
+	ld hl, MobilePacket_TransferData
 	ld b, $5
-	call Function110000
+	call MobileSDK_CopyBytes
 	inc de
 	ld a, [$c86c]
 	ld [de], a
@@ -5735,7 +5751,7 @@
 	ld a, [$c994]
 	or a
 	call nz, Function1126ac
-	call Function110007
+	call MobileSDK_CopyString
 	ret
 
 Function1126ac:
@@ -5744,14 +5760,14 @@
 
 Function1126b0:
 	ld hl, Unknown_112115
-	jp Function110007
+	jp MobileSDK_CopyString
 
 Function1126b6:
 	ld hl, Unknown_112121
-	call Function110007
+	call MobileSDK_CopyString
 	ld hl, $013f
 	ld b, $4
-	call Function110000
+	call MobileSDK_CopyBytes
 	ld a, $2d
 	ld [de], a
 	inc de
@@ -5770,13 +5786,13 @@
 	add c
 	ld c, a
 	ld hl, Unknown_112132
-	jp Function110007
+	jp MobileSDK_CopyString
 
 Function1126e6:
 	xor a
 	ld [$c86b], a
 	ld hl, Unknown_11213d
-	call Function110007
+	call MobileSDK_CopyString
 	ld hl, $c9a5
 	ld b, $5
 .asm_1126f5
@@ -5791,7 +5807,7 @@
 
 .asm_112701
 	push bc
-	call Function110000
+	call MobileSDK_CopyBytes
 	ld a, $d
 	ld [de], a
 	inc de
@@ -5978,11 +5994,11 @@
 	ld hl, $c82f
 	add hl, de
 	ld de, $c82f
-	call Function110000
+	call MobileSDK_CopyBytes
 	ld hl, $ca41
 	ld b, c
 .asm_11282a
-	call Function110000
+	call MobileSDK_CopyBytes
 
 .asm_11282d
 	pop de
@@ -6028,10 +6044,10 @@
 	ld bc, $0001
 	ld de, $cb5a
 	ld hl, Unknown_1120b0
-	call Function110007
+	call MobileSDK_CopyString
 	pop hl
 	ld a, $80
-	call Function11000f
+	call MobileSDK_CopyStringLen
 	ld a, $3e
 	ld [de], a
 	inc de
@@ -6065,7 +6081,7 @@
 	jp z, Function1127cd
 	ld hl, $c86b
 	dec [hl]
-	ld hl, $cb47
+	ld hl, wMobileSDK_PacketBuffer
 	jp Function1127c5
 
 Function1128bd:
@@ -6147,7 +6163,7 @@
 	dec [hl]
 
 .asm_112941
-	ld hl, $cb47
+	ld hl, wMobileSDK_PacketBuffer
 	jp Function1127c5
 
 .asm_112947
@@ -6653,7 +6669,7 @@
 	ld [hl], a
 	pop hl
 	ld b, c
-	jp Function110000
+	jp MobileSDK_CopyBytes
 
 .asm_112c56
 	ld [$c993], a
@@ -6678,7 +6694,7 @@
 	ld c, l
 	pop hl
 	push af
-	call Function110000
+	call MobileSDK_CopyBytes
 	pop af
 	push de
 	ld hl, $ca40
@@ -6687,7 +6703,7 @@
 	add hl, de
 	pop de
 	ld b, c
-	call Function110000
+	call MobileSDK_CopyBytes
 	ld a, [$ca3d]
 	sub c
 	ld [$c994], a
@@ -6709,7 +6725,7 @@
 	ld [$c82c], a
 	pop hl
 	pop hl
-	call Function110000
+	call MobileSDK_CopyBytes
 	ld a, [$ca3f]
 	sub c
 	push de
@@ -6719,7 +6735,7 @@
 	add hl, de
 	pop de
 	ld b, c
-	call Function110000
+	call MobileSDK_CopyBytes
 	ld a, [$c82d]
 	add c
 	ld [$c82d], a
@@ -6772,7 +6788,7 @@
 	ld d, [hl]
 	ld hl, $c82d
 	ld b, $2
-	jp Function110000
+	jp MobileSDK_CopyBytes
 
 Function112d20:
 	ld a, [$c86a]
@@ -6845,10 +6861,10 @@
 
 .asm_112d87
 	call Function113482
-	ld de, $cb47
-	ld hl, Unknown_112072
+	ld de, wMobileSDK_PacketBuffer
+	ld hl, MobilePacket_TransferData
 	ld b, $6
-	call Function110000
+	call MobileSDK_CopyBytes
 	ld a, [$c86c]
 	ld [de], a
 	inc de
@@ -6870,9 +6886,9 @@
 	ld hl, $c86b
 	dec [hl]
 	ld de, $000b
-	ld hl, $cb47
+	ld hl, wMobileSDK_PacketBuffer
 	ld b, $5
-	jp Function111f07
+	jp MobileSDK_SendBytes
 
 .asm_112dc1
 	ld a, [$c989]
@@ -6945,7 +6961,7 @@
 	ld d, [hl]
 	ld hl, $c82d
 	ld b, $2
-	jp Function110000
+	jp MobileSDK_CopyBytes
 
 .asm_112e38
 	ld hl, $c821
@@ -7214,7 +7230,7 @@
 	ld d, a
 	or e
 	jr z, .asm_112ffe
-	call Function110000
+	call MobileSDK_CopyBytes
 	xor a
 	ld [de], a
 
@@ -7270,11 +7286,11 @@
 	pop hl
 	ld c, b
 	ld de, $cb59
-	call Function110000
+	call MobileSDK_CopyBytes
 	ld hl, $cb59
 	ld de, $c9b5
 	ld b, c
-	call Function110000
+	call MobileSDK_CopyBytes
 	xor a
 	ld [de], a
 	pop hl
@@ -7399,7 +7415,7 @@
 	ld d, a
 	inc de
 	inc de
-	call Function110000
+	call MobileSDK_CopyBytes
 
 .asm_11310d
 	ld a, [$ca3c]
@@ -7439,7 +7455,7 @@
 	ld [hl], a
 	ld c, b
 	pop hl
-	call Function110000
+	call MobileSDK_CopyBytes
 	ld hl, $c82b
 	ld a, [hl]
 	sub c
@@ -7512,7 +7528,7 @@
 	inc de
 	dec b
 	dec b
-	call Function110000
+	call MobileSDK_CopyBytes
 	xor a
 	ld [de], a
 	pop hl
@@ -7536,7 +7552,7 @@
 	inc hl
 	dec b
 	ld c, b
-	call Function110000
+	call MobileSDK_CopyBytes
 
 .asm_1131c4
 	ld a, [$c82b]
@@ -7551,7 +7567,7 @@
 	ld hl, $ca40
 	add hl, bc
 	pop bc
-	call Function110000
+	call MobileSDK_CopyBytes
 	ld a, c
 	ld [$c82d], a
 	ld a, $fa
@@ -7602,12 +7618,12 @@
 	ld d, a
 	inc de
 	inc de
-	call Function110000
+	call MobileSDK_CopyBytes
 	ld a, [$c991]
 	ld [$c993], a
 	ld b, a
 	ld de, $c880
-	call Function110000
+	call MobileSDK_CopyBytes
 	ld hl, $c82d
 	ld a, c
 	ld [hli], a
@@ -7627,7 +7643,7 @@
 	ld b, e
 	ld c, e
 	pop de
-	call Function110000
+	call MobileSDK_CopyBytes
 	ld hl, $c82d
 	ld a, c
 	add [hl]
@@ -7729,7 +7745,7 @@
 	ld hl, Unknown_1132dd
 	ld a, [$c9a5]
 	or a
-	call nz, Function110007
+	call nz, MobileSDK_CopyString
 	ld a, [$c86a]
 	cp $22
 	jr nz, .asm_113344
@@ -7750,7 +7766,7 @@
 
 .asm_113351
 	ld hl, $c9b5
-	call Function110007
+	call MobileSDK_CopyString
 	call Function1126b6
 	ld a, c
 	ld [$cb58], a
@@ -7762,7 +7778,7 @@
 
 .asm_11336a
 	ld hl, Unknown_113372
-	call Function110007
+	call MobileSDK_CopyString
 	jr .asm_113351
 
 Unknown_113372:
@@ -7772,10 +7788,10 @@
 	call Function113482
 	ld a, $1
 	ld [$c86b], a
-	ld de, $cb47
-	ld hl, Unknown_112072
+	ld de, wMobileSDK_PacketBuffer
+	ld hl, MobilePacket_TransferData
 	ld b, $6
-	call Function110000
+	call MobileSDK_CopyBytes
 	ld a, [$c86c]
 	ld [de], a
 	inc de
@@ -7782,9 +7798,9 @@
 	ld b, $1
 	call Function111f63
 	ld de, $cb53
-	ld hl, Unknown_112072
+	ld hl, MobilePacket_TransferData
 	ld b, $6
-	call Function110000
+	call MobileSDK_CopyBytes
 	ld a, [$c86d]
 	cp $3
 	jp nz, Function113317
@@ -7847,7 +7863,7 @@
 	ld de, $c880
 	ld a, [hli]
 	ld b, a
-	call Function110000
+	call MobileSDK_CopyBytes
 	xor a
 	ld [de], a
 	ret
@@ -7866,7 +7882,7 @@
 	ld a, [hli]
 	ld h, [hl]
 	ld l, a
-	call Function110007
+	call MobileSDK_CopyString
 	ld l, e
 	ld h, d
 .asm_11344c
@@ -7881,7 +7897,7 @@
 	ld hl, $cb57
 	ld a, [hli]
 	ld b, a
-	call Function110000
+	call MobileSDK_CopyBytes
 	xor a
 	ld [de], a
 	ret
@@ -7901,7 +7917,7 @@
 	cp $2f
 	jr z, .asm_113478
 	ld b, $7
-	call Function110000
+	call MobileSDK_CopyBytes
 
 .asm_113478
 	ld a, [hli]
@@ -7949,7 +7965,7 @@
 	ld [$cb4c], a
 	ld de, $cb4e
 	ld b, c
-	call Function110000
+	call MobileSDK_CopyBytes
 	ld a, l
 	ld [$c87c], a
 	ld a, h
@@ -7959,7 +7975,7 @@
 	call Function111f63
 	ld hl, $c86b
 	dec [hl]
-	ld hl, $cb47
+	ld hl, wMobileSDK_PacketBuffer
 	ld a, $95
 	jp Function111f02
 
@@ -7994,8 +8010,8 @@
 
 .asm_1134f4
 	ld a, $97
-	ld hl, Unknown_11202d
-	jp Function111eff
+	ld hl, MobilePacket_TelephoneStatus
+	jp MobileSDK_SendPacketEmptyBody
 
 .asm_1134fc
 	ld hl, $c86e
@@ -8029,7 +8045,7 @@
 	ret
 
 .asm_113527
-	ld hl, Unknown_112046
+	ld hl, MobilePacket_ReadConfigurationDataPart1
 	jp Function11236b
 
 .asm_11352d
@@ -8038,7 +8054,7 @@
 	ld [hli], a
 	ld a, $c8
 	ld [hli], a
-	ld hl, Unknown_112052
+	ld hl, MobilePacket_ReadConfigurationDataPart2
 	jp Function11236b
 
 .asm_11353c
@@ -8105,7 +8121,7 @@
 	xor a
 	ld [hl], a
 	inc de
-	call Function110000
+	call MobileSDK_CopyBytes
 	pop de
 	ret
 
@@ -8114,7 +8130,7 @@
 	call Function113592
 	ld a, $21
 	ld hl, $c88c
-	call Function11000f
+	call MobileSDK_CopyStringLen
 	xor a
 	ld [de], a
 	ret
@@ -8124,7 +8140,7 @@
 	call Function113592
 	ld a, $1f
 	ld hl, $c8ac
-	jp Function11000f
+	jp MobileSDK_CopyStringLen
 
 Function1135ba:
 	ld b, $65
@@ -8133,19 +8149,19 @@
 	call Function1135eb
 	ld a, $11
 	ld hl, $c8fe
-	call Function11000f
+	call MobileSDK_CopyStringLen
 	inc de
 	ld hl, $c90e
 	call Function1135eb
 	ld a, $11
 	ld hl, $c916
-	call Function11000f
+	call MobileSDK_CopyStringLen
 	inc de
 	ld hl, $c926
 	call Function1135eb
 	ld a, $11
 	ld hl, $c92e
-	jp Function11000f
+	jp MobileSDK_CopyStringLen
 
 Function1135eb:
 	ld b, $8
@@ -8227,7 +8243,7 @@
 	ld h, [hl]
 	ld l, a
 	ld b, c
-	call Function110000
+	call MobileSDK_CopyBytes
 	ld b, c
 	inc b
 	call Function111f63
@@ -8236,7 +8252,7 @@
 	ld e, a
 	ld d, $0
 	ld a, $9a
-	ld hl, $cb47
+	ld hl, wMobileSDK_PacketBuffer
 	jp Function111f02
 
 .asm_11366c
@@ -8258,7 +8274,7 @@
 	ret
 
 .asm_113680
-	ld hl, $cb47
+	ld hl, wMobileSDK_PacketBuffer
 	jp Function11236b
 
 .asm_113686
@@ -8290,7 +8306,7 @@
 	ld hl, $c829
 	ld [hli], a
 	ld [hl], e
-	ld hl, $cb47
+	ld hl, wMobileSDK_PacketBuffer
 	jp Function11236b
 
 .asm_1136bb
@@ -8320,7 +8336,7 @@
 	ld de, $cb67
 	ld b, $30
 	ld c, b
-	call Function110000
+	call MobileSDK_CopyBytes
 	ld hl, $c97f
 	ld a, [hli]
 	ld h, [hl]
@@ -8329,7 +8345,7 @@
 	ld a, [hli]
 	or a
 	jr nz, .asm_1136eb
-	call Function110007
+	call MobileSDK_CopyString
 	ld a, $37
 	cp c
 	inc a
@@ -8377,7 +8393,7 @@
 	ld de, $cbe7
 	ld hl, Unknown_113b7e
 	ld b, $10
-	call Function110000
+	call MobileSDK_CopyBytes
 
 .asm_113734
 	ld hl, $cc0c
@@ -8393,7 +8409,7 @@
 	ld hl, $cbe7
 	ld de, $cc18
 	ld b, $10
-	call Function110000
+	call MobileSDK_CopyBytes
 
 .asm_113751
 	ld hl, $cc0e
@@ -8458,7 +8474,7 @@
 	ld e, a
 	ld hl, $cbff
 	ld b, $4
-	call Function110000
+	call MobileSDK_CopyBytes
 	ld hl, $cc0c
 	ld a, [hli]
 	ld h, [hl]
@@ -8497,7 +8513,7 @@
 	ld d, [hl]
 	ld e, a
 	ld hl, Unknown_113a55
-	call Function110007
+	call MobileSDK_CopyString
 	ld hl, $cb97
 	ld bc, $0020
 	call Function113c8e
@@ -8608,13 +8624,13 @@
 	ld b, $10
 	ld de, $cb97
 	ld hl, $cbe7
-	call Function110000
+	call MobileSDK_CopyBytes
 	ld bc, $0010
 	ld hl, $c97f
 	ld a, [hli]
 	ld h, [hl]
 	ld l, a
-	call Function110007
+	call MobileSDK_CopyString
 	ld a, $24
 	sub c
 	ld b, a
@@ -8693,7 +8709,7 @@
 	add hl, de
 	ld de, $cbf7
 	ld b, $8
-	jp Function110000
+	jp MobileSDK_CopyBytes
 
 Function11392f:
 	ld hl, $cbf9
@@ -8702,7 +8718,7 @@
 	ld l, a
 	ld de, $cbff
 	ld b, $4
-	call Function110000
+	call MobileSDK_CopyBytes
 	ld hl, $cbfb
 	ld a, [hli]
 	ld d, [hl]
@@ -8715,7 +8731,7 @@
 	ld l, a
 	ld de, $cc03
 	ld b, $4
-	call Function110000
+	call MobileSDK_CopyBytes
 	ld hl, $cc03
 	call Function113a1f
 	ld hl, $cbfd
@@ -8736,7 +8752,7 @@
 	ld l, a
 	ld de, $cbff
 	ld b, $4
-	call Function110000
+	call MobileSDK_CopyBytes
 	ld hl, $cbfd
 	ld a, [hli]
 	ld d, [hl]
@@ -8749,7 +8765,7 @@
 	ld l, a
 	ld de, $cc03
 	ld b, $4
-	call Function110000
+	call MobileSDK_CopyBytes
 	ld hl, $cc03
 	call Function113a1f
 	ld hl, $cbfb
@@ -8770,7 +8786,7 @@
 	ld l, a
 	ld de, $cbff
 	ld b, $4
-	call Function110000
+	call MobileSDK_CopyBytes
 	ld hl, $cbfb
 	ld a, [hli]
 	ld d, [hl]
@@ -8792,7 +8808,7 @@
 	ld l, a
 	ld de, $cbff
 	ld b, $4
-	call Function110000
+	call MobileSDK_CopyBytes
 	ld hl, $cbff
 	call Function113a1f
 	ld hl, $cbf9
@@ -9378,7 +9394,7 @@
 	xor $80
 	ld [$c81e], a
 	ld b, $5
-	call Function111f07
+	call MobileSDK_SendBytes
 	pop af
 	bit 0, a
 	ret z
@@ -9423,7 +9439,7 @@
 	ld [hl], a
 	xor a
 	ld [$c800], a
-	ld hl, $cb47
+	ld hl, wMobileSDK_PacketBuffer
 	ld a, $2
 	ld [hli], a
 	dec a
@@ -9465,7 +9481,7 @@
 	xor a
 	ld [$c80b], a
 	xor a
-	ld [$cb47], a
+	ld [wMobileSDK_PacketBuffer], a
 	ld hl, $c820
 	ld a, [hld]
 	ld h, [hl]
@@ -9483,7 +9499,7 @@
 	ld [hl], a
 	xor a
 	ld [$c800], a
-	ld hl, $cb47
+	ld hl, wMobileSDK_PacketBuffer
 	xor a
 	ld [hli], a
 	inc a
--- a/mobile/mobile_40.asm
+++ b/mobile/mobile_40.asm
@@ -59,7 +59,7 @@
 	ld bc, $65
 	call ByteFill
 	xor a
-	ld hl, wc300
+	ld hl, wMobileErrorCodeBuffer
 	ld bc, $100
 	call ByteFill
 	ldh a, [rIE]
@@ -272,11 +272,11 @@
 	ld de, 0
 
 .asm_1001d7
-	ld [wc300], a
+	ld [wMobileErrorCodeBuffer], a
 	ld a, d
-	ld [wc302], a
+	ld [wMobileErrorCodeBuffer + 2], a
 	ld a, e
-	ld [wc301], a
+	ld [wMobileErrorCodeBuffer + 1], a
 	call Function10020b
 	ret
 
@@ -295,11 +295,11 @@
 
 .asm_1001f5
 	ld a, [wcd2c]
-	ld [wc300], a
+	ld [wMobileErrorCodeBuffer], a
 	ld a, [wcd2d]
-	ld [wc302], a
+	ld [wMobileErrorCodeBuffer + 2], a
 	ld a, [wcd2d]
-	ld [wc301], a
+	ld [wMobileErrorCodeBuffer + 1], a
 	call Function10020b
 	ret
 
--- a/mobile/mobile_45.asm
+++ b/mobile/mobile_45.asm
@@ -7227,7 +7227,7 @@
 	ldh [hBGMapMode], a
 	farcall Function118284
 	call ClearSprites
-	ld a, [wc300]
+	ld a, [wMobileErrorCodeBuffer]
 	and a
 	jr z, .asm_117be7
 	cp $a
@@ -7276,7 +7276,7 @@
 	pop af
 	ldh [rSVBK], a
 	ld a, $d3
-	ld [wc300], a
+	ld [wMobileErrorCodeBuffer], a
 	jr .asm_117bd0
 
 .asm_117c20
--- a/mobile/mobile_46.asm
+++ b/mobile/mobile_46.asm
@@ -219,7 +219,7 @@
 
 .return_d3
 	ld a, $d3
-	ld [wc300], a
+	ld [wMobileErrorCodeBuffer], a
 	ld [wScriptVar], a
 	jr .reset_banks
 
@@ -449,9 +449,9 @@
 	call DoubleSpeed
 	xor a
 	ldh [rIF], a
-	ld [wc300], a
-	ld [wc301], a
-	ld [wc302], a
+	ld [wMobileErrorCodeBuffer], a
+	ld [wMobileErrorCodeBuffer + 1], a
+	ld [wMobileErrorCodeBuffer + 2], a
 	ld [wcd80], a
 	ld [wcd65], a
 	ld [wcd66], a
@@ -511,7 +511,7 @@
 	ei
 	ld a, [wcd7f]
 	ld [wVramState], a
-	ld a, [wc300]
+	ld a, [wMobileErrorCodeBuffer]
 	ld [wScriptVar], a
 	ret
 
@@ -914,11 +914,11 @@
 .asm_1187af
 	ld a, $0
 	call Function3e32
-	ld [wc300], a
+	ld [wMobileErrorCodeBuffer], a
 	ld a, l
-	ld [wc301], a
+	ld [wMobileErrorCodeBuffer + 1], a
 	ld a, h
-	ld [wc302], a
+	ld [wMobileErrorCodeBuffer + 2], a
 	ld a, $a
 	call Function3e32
 	ld a, [wc3f0]
@@ -959,10 +959,10 @@
 	ld a, $d3
 
 Function118805:
-	ld [wc300], a
+	ld [wMobileErrorCodeBuffer], a
 	xor a
-	ld [wc301], a
-	ld [wc302], a
+	ld [wMobileErrorCodeBuffer + 1], a
+	ld [wMobileErrorCodeBuffer + 2], a
 	ld a, $a
 	call Function3e32
 	ld a, [wc3f0]
@@ -983,7 +983,7 @@
 	ld a, $a
 	call Function3e32
 	ld a, $a
-	ld [wc300], a
+	ld [wMobileErrorCodeBuffer], a
 	ld a, [wc3f0]
 	ld [$c319], a
 	ld a, [wcd34]
@@ -1001,7 +1001,7 @@
 	ld a, $a
 	call Function3e32
 	ld a, $a
-	ld [wc300], a
+	ld [wMobileErrorCodeBuffer], a
 	ld a, [wcd34]
 	ld [wcf66], a
 	scf
@@ -2059,7 +2059,7 @@
 	ld a, $1c
 	ld [wcf66], a
 	ld a, $a
-	ld [wc300], a
+	ld [wMobileErrorCodeBuffer], a
 	ret
 
 Function11915d:
@@ -2087,7 +2087,7 @@
 	ld a, $16
 	ld [wcf66], a
 	ld a, $b
-	ld [wc300], a
+	ld [wMobileErrorCodeBuffer], a
 
 .asm_11918e
 	call CloseSRAM
@@ -2869,7 +2869,7 @@
 	ld a, [wcd47]
 	ld [wcf66], a
 	ld a, $a
-	ld [wc300], a
+	ld [wMobileErrorCodeBuffer], a
 	ret
 
 Function11967d:
@@ -2883,7 +2883,7 @@
 	ld a, $14
 	ld [wcf66], a
 	ld a, $a
-	ld [wc300], a
+	ld [wMobileErrorCodeBuffer], a
 	ret
 
 Function119694:
@@ -3218,7 +3218,7 @@
 
 .asm_1198a0
 	ld a, $a
-	ld [wc300], a
+	ld [wMobileErrorCodeBuffer], a
 	jp BattleTowerRoomMenu_IncrementJumptable
 
 .asm_1198a8
@@ -4240,7 +4240,7 @@
 	ld a, [wcd33]
 	ld [wcf66], a
 	ld a, $a
-	ld [wc300], a
+	ld [wMobileErrorCodeBuffer], a
 	scf
 	ret
 
@@ -4264,7 +4264,7 @@
 	ld [wcf66], a
 	farcall Function115dc3
 	ld a, $a
-	ld [wc300], a
+	ld [wMobileErrorCodeBuffer], a
 	scf
 	ret
 
@@ -4590,7 +4590,7 @@
 .exit_carry
 	ld [wcf66], a
 	ld a, $a
-	ld [wc300], a
+	ld [wMobileErrorCodeBuffer], a
 	scf
 	ret
 
--- a/mobile/mobile_5c.asm
+++ b/mobile/mobile_5c.asm
@@ -382,11 +382,11 @@
 .asm_171a6a
 	ld a, $0
 	call Function3e32
-	ld [wc300], a
+	ld [wMobileErrorCodeBuffer], a
 	ld a, l
-	ld [wc301], a
+	ld [wMobileErrorCodeBuffer + 1], a
 	ld a, h
-	ld [wc302], a
+	ld [wMobileErrorCodeBuffer + 2], a
 	ld a, $a
 	call Function3e32
 	ldh a, [rSVBK]
--- a/mobile/mobile_5f.asm
+++ b/mobile/mobile_5f.asm
@@ -1378,7 +1378,7 @@
 	xor a
 	ld [wcf66], a
 	farcall Function118329
-	ld a, [wc300]
+	ld a, [wMobileErrorCodeBuffer]
 	and a
 	jr z, .asm_17d8fe
 	cp $a
@@ -1412,7 +1412,7 @@
 	xor a
 	ld [wcf66], a
 	farcall Function11837a
-	ld a, [wc300]
+	ld a, [wMobileErrorCodeBuffer]
 	and a
 	jr z, .asm_17d936
 	cp $a
@@ -2874,7 +2874,7 @@
 	ld hl, vTiles2 tile $60
 	lb bc, BANK(GFX_17eb7e), 1
 	call Get2bpp
-	ld a, [wc300]
+	ld a, [wMobileErrorCodeBuffer]
 	and a
 	jr z, .asm_17e2d8
 	cp $a
@@ -4488,7 +4488,7 @@
 	ret
 
 .deinit
-	ld a, [wc300]
+	ld a, [wMobileErrorCodeBuffer]
 	cp $22
 	jr z, .asm_17f597
 	cp $31
@@ -4495,28 +4495,28 @@
 	jr z, .asm_17f58a
 	cp $33
 	ret nz
-	ld a, [wc301]
+	ld a, [wMobileErrorCodeBuffer + 1]
 	cp $1
 	ret nz
-	ld a, [wc302]
+	ld a, [wMobileErrorCodeBuffer + 2]
 	cp $2
 	ret nz
 	jr .asm_17f5a1
 
 .asm_17f58a
-	ld a, [wc301]
+	ld a, [wMobileErrorCodeBuffer + 1]
 	cp $3
 	ret nz
-	ld a, [wc302]
+	ld a, [wMobileErrorCodeBuffer + 2]
 	and a
 	ret nz
 	jr .asm_17f5a1
 
 .asm_17f597
-	ld a, [wc301]
+	ld a, [wMobileErrorCodeBuffer + 1]
 	and a
 	ret nz
-	ld a, [wc302]
+	ld a, [wMobileErrorCodeBuffer + 2]
 	and a
 	ret nz
 
@@ -4576,7 +4576,7 @@
 	ld c, $10
 	call Function3eea
 	hlcoord 3, 2
-	ld de, String_17f6dc
+	ld de, MobileCommunicationErrorText
 	call PlaceString
 	call Function17ff3c
 	jr nc, .asm_17f632
@@ -4584,7 +4584,7 @@
 	call Function17f6b7
 
 .asm_17f632
-	ld a, [wc300]
+	ld a, [wMobileErrorCodeBuffer]
 	cp $d0
 	jr nc, .asm_17f684
 	cp $10
@@ -4594,12 +4594,12 @@
 	jr nc, .asm_17f679
 	ld e, a
 	ld d, $0
-	ld hl, Table_17f706
+	ld hl, MobileErrorCodeTable
 	add hl, de
 	add hl, de
-	ld a, [wc301]
+	ld a, [wMobileErrorCodeBuffer + 1]
 	ld e, a
-	ld a, [wc302]
+	ld a, [wMobileErrorCodeBuffer + 2]
 	ld d, a
 	ld a, [hli]
 	ld c, a
@@ -4664,17 +4664,17 @@
 	ret
 
 Table_17f699:
-	dw String_17fedf
-	dw String_17fdd9
-	dw String_17fdd9
-	dw String_17fe03
-	dw String_17fd84
-	dw String_17fe63
-	dw String_17fdb2
-	dw String_17fe4b
-	dw String_17fe03
-	dw String_17fe03
-	dw String_17fe03
+	dw MobileErrorCode_101_000_Text
+	dw MobileErrorCode_101_001_Text
+	dw MobileErrorCode_101_002_Text
+	dw MobileErrorCode_101_003_Text
+	dw MobileErrorCode_101_004_Text
+	dw MobileErrorCode_101_005_Text
+	dw MobileErrorCode_101_006_Text
+	dw MobileErrorCode_101_007_Text
+	dw MobileErrorCode_101_008_Text
+	dw MobileErrorCode_101_009_Text
+	dw MobileErrorCode_101_009_Text
 
 Palette_17f6af:
 	RGB  5,  5, 16
@@ -4683,13 +4683,13 @@
 	RGB 31, 31, 31
 
 Function17f6b7:
-	ld a, [wc300]
+	ld a, [wMobileErrorCodeBuffer]
 	call .bcd_two_digits
 	inc hl
-	ld a, [wc302]
+	ld a, [wMobileErrorCodeBuffer + 2]
 	and $f
 	call .bcd_digit
-	ld a, [wc301]
+	ld a, [wMobileErrorCodeBuffer + 1]
 	call .bcd_two_digits
 	ret
 
@@ -4706,7 +4706,7 @@
 	ld [hli], a
 	ret
 
-String_17f6dc:
+MobileCommunicationErrorText:
 	db "つうしんエラー   ー@"
 
 String_17f6e8:
@@ -4715,159 +4715,161 @@
 	next "かくにん してください"
 	db   "@"
 
-Table_17f706:
-	dw Unknown_17f74e
-	dw Unknown_17f753
-	dw Unknown_17f758
-	dw Unknown_17f75d
-	dw Unknown_17f762
-	dw Unknown_17f767
-	dw Unknown_17f778
-	dw Unknown_17f77d
-	dw Unknown_17f782
-	dw Unknown_17f782
-	dw Unknown_17f782
-	dw Unknown_17f782
-	dw Unknown_17f782
-	dw Unknown_17f782
-	dw Unknown_17f782
-	dw Unknown_17f782
-	dw Unknown_17f782
-	dw Unknown_17f787
-	dw Unknown_17f78c
-	dw Unknown_17f791
-	dw Unknown_17f796
-	dw Unknown_17f79b
-	dw Unknown_17f7a0
-	dw Unknown_17f7a5
-	dw Unknown_17f7a5
-	dw Unknown_17f7a5
-	dw Unknown_17f7a5
-	dw Unknown_17f7a5
-	dw Unknown_17f7a5
-	dw Unknown_17f7a5
-	dw Unknown_17f7a5
-	dw Unknown_17f7a5
-	dw Unknown_17f7a5
-	dw Unknown_17f7ea
-	dw Unknown_17f7ff
-	dw Unknown_17f844
+MobileErrorCodeTable:
+	dw MobileErrorCodes_10
+	dw MobileErrorCodes_11
+	dw MobileErrorCodes_12
+	dw MobileErrorCodes_13
+	dw MobileErrorCodes_14
+	dw MobileErrorCodes_15
+	dw MobileErrorCodes_16
+	dw MobileErrorCodes_17
+	dw MobileErrorCodes_20
+	dw MobileErrorCodes_20
+	dw MobileErrorCodes_20
+	dw MobileErrorCodes_20
+	dw MobileErrorCodes_20
+	dw MobileErrorCodes_20
+	dw MobileErrorCodes_20
+	dw MobileErrorCodes_20
+	dw MobileErrorCodes_20
+	dw MobileErrorCodes_21
+	dw MobileErrorCodes_22
+	dw MobileErrorCodes_23
+	dw MobileErrorCodes_24
+	dw MobileErrorCodes_25
+	dw MobileErrorCodes_26
+	dw MobileErrorCodes_30
+	dw MobileErrorCodes_30
+	dw MobileErrorCodes_30
+	dw MobileErrorCodes_30
+	dw MobileErrorCodes_30
+	dw MobileErrorCodes_30
+	dw MobileErrorCodes_30
+	dw MobileErrorCodes_30
+	dw MobileErrorCodes_30
+	dw MobileErrorCodes_30
+	dw MobileErrorCodes_31
+	dw MobileErrorCodes_32
+	dw MobileErrorCodes_33
 
-Unknown_17f74e: db 1
-	dbbw $0, $0, String_17f891
+MobileErrorCodes_10: db 1
+	dw $000, MobileErrorCode_10_000_Text
 
-Unknown_17f753: db 1
-	dbbw $0, $0, String_17f8d1
+MobileErrorCodes_11: db 1
+	dw $000, MobileErrorCode_11_000_Text
 
-Unknown_17f758: db 1
-	dbbw $0, $0, String_17f913
+MobileErrorCodes_12: db 1
+	dw $000, MobileErrorCode_12_000_Text
 
-Unknown_17f75d: db 1
-	dbbw $0, $0, String_17f8d1
+MobileErrorCodes_13: db 1
+	dw $000, MobileErrorCode_13_000_Text
 
-Unknown_17f762: db 1
-	dbbw $0, $0, String_17fa71
+MobileErrorCodes_14: db 1
+	dw $000, MobileErrorCode_14_000_Text
 
-Unknown_17f767: db 4
-	dbbw $0, $0, String_17f946
-	dbbw $1, $0, String_17f946
-	dbbw $2, $0, String_17f946
-	dbbw $3, $0, String_17f946
+MobileErrorCodes_15: db 4
+	dw $000, MobileErrorCode_15_000_Text
+	dw $001, MobileErrorCode_15_001_Text
+	dw $002, MobileErrorCode_15_002_Text
+	dw $003, MobileErrorCode_15_003_Text
 
-Unknown_17f778: db 1
-	dbbw $0, $0, String_17f98e
+MobileErrorCodes_16: db 1
+	dw $000, MobileErrorCode_CommuncationErrorText
 
-Unknown_17f77d: db 1
-	dbbw $0, $0, String_17f98e
+MobileErrorCodes_17: db 1
+	dw $000, MobileErrorCode_CommuncationErrorText
 
-Unknown_17f782: db 1
-	dbbw $0, $0, String_17f98e
+MobileErrorCodes_20: db 1
+	dw $000, MobileErrorCode_CommuncationErrorText
 
-Unknown_17f787: db 1
-	dbbw $0, $0, String_17f98e
+MobileErrorCodes_21: db 1
+	dw $000, MobileErrorCode_CommuncationErrorText
 
-Unknown_17f78c: db 1
-	dbbw $0, $0, String_17f9d0
+MobileErrorCodes_22: db 1
+	dw $000, MobileErrorCode_22_000_Text
 
-Unknown_17f791: db 1
-	dbbw $0, $0, String_17fa14
+MobileErrorCodes_23: db 1
+	dw $000, MobileErrorCode_23_000_Text
 
-Unknown_17f796: db 1
-	dbbw $0, $0, String_17fcbf
+MobileErrorCodes_24: db 1
+	dw $000, MobileErrorCode_LineBusyText
 
-Unknown_17f79b: db 1
-	dbbw $0, $0, String_17fa71
+MobileErrorCodes_25: db 1
+	dw $000, MobileErrorCode_25_000_Text
 
-Unknown_17f7a0: db 1
-	dbbw $0, $0, String_17fbfe
+MobileErrorCodes_26: db 1
+	dw $000, MobileErrorCode_26_000_Text
 
-Unknown_17f7a5: db 17
-	dbbw $0, $0, String_17f98e
-	dbbw $21, $2, String_17fcbf
-	dbbw $21, $4, String_17fcbf
-	dbbw $50, $4, String_17faf9
-	dbbw $51, $4, String_17fcbf
-	dbbw $52, $4, String_17fcbf
-	dbbw $0, $5, String_17f98e
-	dbbw $1, $5, String_17f98e
-	dbbw $2, $5, String_17f98e
-	dbbw $3, $5, String_17f98e
-	dbbw $4, $5, String_17f98e
-	dbbw $50, $5, String_17faf9
-	dbbw $51, $5, String_17faf9
-	dbbw $52, $5, String_17fcbf
-	dbbw $53, $5, String_17faf9
-	dbbw $54, $5, String_17fcbf
-	dbbw $ff, $ff, String_17fcbf
+MobileErrorCodes_30: db 17
+	dw $000, MobileErrorCode_CommuncationErrorText
+	dw $221, MobileErrorCode_LineBusyText
+	dw $421, MobileErrorCode_LineBusyText
+	dw $450, MobileErrorCode_30_450_Text
+	dw $451, MobileErrorCode_LineBusyText
+	dw $452, MobileErrorCode_LineBusyText
+	dw $500, MobileErrorCode_CommuncationErrorText
+	dw $501, MobileErrorCode_CommuncationErrorText
+	dw $502, MobileErrorCode_CommuncationErrorText
+	dw $503, MobileErrorCode_CommuncationErrorText
+	dw $504, MobileErrorCode_CommuncationErrorText
+	dw $550, MobileErrorCode_30_550_Text
+	dw $551, MobileErrorCode_30_551_Text
+	dw $552, MobileErrorCode_LineBusyText
+	dw $553, MobileErrorCode_30_553_Text
+	dw $554, MobileErrorCode_LineBusyText
+	dw -1, MobileErrorCode_LineBusyText
 
-Unknown_17f7ea: db 5
-	dbbw $0, $0, String_17f98e
-	dbbw $2, $0, String_17fb2a
-	dbbw $3, $0, String_17fb6e
-	dbbw $4, $0, String_17f98e
-	dbbw $ff, $ff, String_17fcbf
+MobileErrorCodes_31: db 5
+	dw $000, MobileErrorCode_CommuncationErrorText
+	dw $002, MobileErrorCode_31_002_Text
+	dw $003, MobileErrorCode_31_003_Text
+	dw $004, MobileErrorCode_CommuncationErrorText
+	dw -1, MobileErrorCode_LineBusyText
 
-Unknown_17f7ff: db 17
-	dbbw $0, $0, String_17f98e
-	dbbw $1, $3, String_17f98e
-	dbbw $2, $3, String_17f98e
-	dbbw $0, $4, String_17f98e
-	dbbw $1, $4, String_17f98e
-	dbbw $3, $4, String_17fbb6
-	dbbw $4, $4, String_17fbb6
-	dbbw $5, $4, String_17f98e
-	dbbw $6, $4, String_17f98e
-	dbbw $7, $4, String_17f98e
-	dbbw $8, $4, String_17fbfe
-	dbbw $0, $5, String_17fa49
-	dbbw $1, $5, String_17f98e
-	dbbw $2, $5, String_17fa49
-	dbbw $3, $5, String_17fab0
-	dbbw $4, $5, String_17fa49
-	dbbw $ff, $ff, String_17fa49
+MobileErrorCodes_32: db 17
+	dw $000, MobileErrorCode_CommuncationErrorText
+	dw $301, MobileErrorCode_CommuncationErrorText
+	dw $302, MobileErrorCode_CommuncationErrorText
+	dw $400, MobileErrorCode_CommuncationErrorText
+	dw $401, MobileErrorCode_CommuncationErrorText
+	dw $403, MobileErrorCode_32_403_Text
+	dw $404, MobileErrorCode_32_404_Text
+	dw $405, MobileErrorCode_CommuncationErrorText
+	dw $406, MobileErrorCode_CommuncationErrorText
+	dw $407, MobileErrorCode_CommuncationErrorText
+	dw $408, MobileErrorCode_32_408_Text
+	dw $500, MobileErrorCode_ServerErrorText
+	dw $501, MobileErrorCode_CommuncationErrorText
+	dw $502, MobileErrorCode_ServerErrorText
+	dw $503, MobileErrorCode_32_503_Text
+	dw $504, MobileErrorCode_ServerErrorText
+	dw -1, MobileErrorCode_ServerErrorText
 
-Unknown_17f844: db 19
-	dbbw $1, $1, String_17fc3e
-	dbbw $2, $1, String_17fc88
-	dbbw $3, $1, String_17fcff
-	dbbw $4, $1, String_17fd84
-	dbbw $5, $1, String_17fd84
-	dbbw $6, $1, String_17fd47
-	dbbw $1, $2, String_17fb6e
-	dbbw $2, $2, String_17f98e
-	dbbw $3, $2, String_17fd84
-	dbbw $4, $2, String_17f98e
-	dbbw $5, $2, String_17fa49
-	dbbw $6, $2, String_17fd84
-	dbbw $99, $2, String_17fc88
-	dbbw $1, $3, String_17fa49
-	dbbw $1, $4, String_17fa49
-	dbbw $2, $4, String_17fa49
-	dbbw $3, $4, String_17fa49
-	dbbw $4, $4, String_17fa49
-	dbbw $ff, $ff, String_17fa49
+MobileErrorCodes_33: db 19
+	dw $101, MobileErrorCode_33_101_Text
+	dw $102, MobileErrorCode_33_102_Text
+	dw $103, MobileErrorCode_33_103_Text
+	dw $104, MobileErrorCode_33_104_Text
+	dw $105, MobileErrorCode_33_105_Text
+	dw $106, MobileErrorCode_33_106_Text
+	dw $201, MobileErrorCode_33_201_Text
+	dw $202, MobileErrorCode_CommuncationErrorText
+	dw $203, MobileErrorCode_33_203_Text
+	dw $204, MobileErrorCode_CommuncationErrorText
+	dw $205, MobileErrorCode_ServerErrorText
+	dw $206, MobileErrorCode_33_206_Text
+	dw $299, MobileErrorCode_33_299_Text
+	dw $301, MobileErrorCode_ServerErrorText
+	dw $401, MobileErrorCode_ServerErrorText
+	dw $402, MobileErrorCode_ServerErrorText
+	dw $403, MobileErrorCode_ServerErrorText
+	dw $404, MobileErrorCode_ServerErrorText
+	dw -1, MobileErrorCode_ServerErrorText
 
-String_17f891:
+MobileErrorCode_10_000_Text:
+; The Mobile Adapter is not properly plugged in.
+; Ensure you have taken a good look at and properly followed the instructions.
 	db   "モバイルアダプタが ただしく"
 	next "さしこまれていません"
 	next "とりあつかいせつめいしょを"
@@ -4875,7 +4877,8 @@
 	next "さしこんで ください"
 	db   "@"
 
-String_17f8d1:
+MobileErrorCode_11_000_Text:
+MobileErrorCode_13_000_Text:
 	db   "でんわが うまく かけられないか"
 	next "でんわかいせんが こんでいるので"
 	next "つうしん できません"
@@ -4883,7 +4886,9 @@
 	next "かけなおして ください"
 	db   "@"
 
-String_17f913:
+MobileErrorCode_12_000_Text:
+; As the telephone line is busy, the phone was not able to gather enough information (?)
+; Please wait for a while and call again.
 	db   "でんわかいせんが こんでいるため"
 	next "でんわが かけられません"
 	next "しばらく まって"
@@ -4890,7 +4895,13 @@
 	next "かけなおして ください"
 	db   "@"
 
-String_17f946:
+MobileErrorCode_15_000_Text:
+MobileErrorCode_15_001_Text:
+MobileErrorCode_15_002_Text:
+MobileErrorCode_15_003_Text:
+; There is an error with the Mobile Adapter.
+; Please wait for a little while before calling again.
+; If the problem persists, please contact the Mobile Support Center.
 	db   "モバイルアダプタの エラーです"
 	next "しばらく まって"
 	next "かけなおして ください"
@@ -4899,7 +4910,10 @@
 	next "おといあわせください"
 	db   "@"
 
-String_17f98e:
+MobileErrorCode_CommuncationErrorText:
+; Communication error.
+; Please wait a moment, and then try again.
+; If the issue persists, please contact the mobile support center.
 	db   "つうしんエラーです"
 	next "しばらく まって"
 	next "かけなおして ください"
@@ -4908,7 +4922,7 @@
 	next "おといあわせください"
 	db   "@"
 
-String_17f9d0:
+MobileErrorCode_22_000_Text:
 	db   "ログインパスワードか"
 	next "ログイン アイディーに"
 	next "まちがいがあります"
@@ -4917,7 +4931,7 @@
 	next "かけなおして ください"
 	db   "@"
 
-String_17fa14:
+MobileErrorCode_23_000_Text:
 	db   "でんわが きれました"
 	next "とりあつかいせつめいしょを"
 	next "ごらんのうえ"
@@ -4925,7 +4939,9 @@
 	next "かけなおして ください"
 	db   "@"
 
-String_17fa49:
+MobileErrorCode_ServerErrorText:
+; There was a communication error with the mobile center.
+; Please wait a moment and then try again.
 	db   "モバイルセンターの"
 	next "つうしんエラーです"
 	next "しばらくまって"
@@ -4932,7 +4948,10 @@
 	next "かけなおして ください"
 	db   "@"
 
-String_17fa71:
+MobileErrorCode_14_000_Text:
+MobileErrorCode_25_000_Text:
+; The Mobile Adapter's details have expired and the information is not correct.
+; Please use the Mobile Trainer to repeat the initial registration (process).
 	db   "モバイルアダプタに"
 	next "とうろくされた じょうほうが"
 	next "ただしく ありません"
@@ -4940,7 +4959,7 @@
 	next "しょきとうろくを してください"
 	db   "@"
 
-String_17fab0:
+MobileErrorCode_32_503_Text:
 	db   "モバイルセンターが"
 	next "こんでいて つながりません"
 	next "しばらくまって"
@@ -4949,7 +4968,12 @@
 	next "せつめいしょを ごらんください"
 	db   "@"
 
-String_17faf9:
+MobileErrorCode_30_450_Text:
+MobileErrorCode_30_550_Text:
+MobileErrorCode_30_551_Text:
+MobileErrorCode_30_553_Text:
+; There is a mistake with the email address of the addressee.
+; Please replace with a / the correct email address.
 	db   "あてさき メールアドレスに"
 	next "まちがいがあります"
 	next "ただしい メールアドレスを"
@@ -4956,7 +4980,7 @@
 	next "いれなおしてください"
 	db   "@"
 
-String_17fb2a:
+MobileErrorCode_31_002_Text:
 	db   "メールアドレスに"
 	next "まちがいが あります"
 	next "とりあつかいせつめいしょを"
@@ -4965,7 +4989,8 @@
 	next "しょきとうろくを してください"
 	db   "@"
 
-String_17fb6e:
+MobileErrorCode_31_003_Text:
+MobileErrorCode_33_201_Text:
 	db   "ログインパスワードに"
 	next "まちがいが あるか"
 	next "モバイルセンターの エラーです"
@@ -4974,7 +4999,8 @@
 	next "かけなおして ください"
 	db   "@"
 
-String_17fbb6:
+MobileErrorCode_32_403_Text:
+MobileErrorCode_32_404_Text:
 	db   "データの よみこみが できません"
 	next "しばらくまって"
 	next "かけなおして ください"
@@ -4983,7 +5009,8 @@
 	next "おといあわせください"
 	db   "@"
 
-String_17fbfe:
+MobileErrorCode_26_000_Text:
+MobileErrorCode_32_408_Text:
 	db   "じかんぎれです"
 	next "でんわが きれました"
 	next "でんわを かけなおしてください"
@@ -4991,7 +5018,7 @@
 	next "せつめいしょを ごらんください"
 	db   "@"
 
-String_17fc3e:
+MobileErrorCode_33_101_Text:
 	db   "ごりよう りょうきんの "
 	next "おしはらいが おくれたばあいには"
 	next "ごりようが できなくなります"
@@ -4999,7 +5026,8 @@
 	next "せつめいしょを ごらんください"
 	db   "@"
 
-String_17fc88:
+MobileErrorCode_33_102_Text:
+MobileErrorCode_33_299_Text:
 	db   "おきゃくさまの ごつごうにより"
 	next "ごりようできません"
 	next "くわしくは とりあつかい"
@@ -5006,7 +5034,9 @@
 	next "せつめいしょを ごらんください"
 	db   "@"
 
-String_17fcbf:
+MobileErrorCode_LineBusyText:
+; The telephone line is busy. Due to this error, the Mobile Center cannot communicate.
+; Please wait for a little while and call again.
 	db   "でんわかいせんが こんでいるか"
 	next "モバイルセンターの エラーで"
 	next "つうしんが できません"
@@ -5014,7 +5044,7 @@
 	next "かけなおして ください"
 	db   "@"
 
-String_17fcff:
+MobileErrorCode_33_103_Text:
 	db   "ごりよう りょうきんが"
 	next "じょうげんを こえているため"
 	next "こんげつは ごりようできません"
@@ -5022,7 +5052,7 @@
 	next "せつめいしょを ごらんください"
 	db   "@"
 
-String_17fd47:
+MobileErrorCode_33_106_Text:
 	db   "げんざい モバイルセンターの"
 	next "てんけんを しているので"
 	next "つうしんが できません"
@@ -5030,19 +5060,24 @@
 	next "かけなおして ください"
 	db   "@"
 
-String_17fd84:
+MobileErrorCode_33_104_Text:
+MobileErrorCode_33_105_Text:
+MobileErrorCode_33_203_Text:
+MobileErrorCode_33_206_Text:
+MobileErrorCode_101_004_Text:
 	db   "データの よみこみが できません"
 	next "くわしくは とりあつかい"
 	next "せつめいしょを ごらんください"
 	db   "@"
 
-String_17fdb2:
+MobileErrorCode_101_006_Text:
 	db   "3ぷん いじょう なにも"
 	next "にゅうりょく しなかったので"
 	next "でんわが きれました"
 	db   "@"
 
-String_17fdd9:
+MobileErrorCode_101_001_Text:
+MobileErrorCode_101_002_Text:
 	db   "つうしんが うまく"
 	next "できませんでした"
 	next "もういちど はじめから"
@@ -5049,7 +5084,9 @@
 	next "やりなおしてください"
 	db   "@"
 
-String_17fe03:
+MobileErrorCode_101_003_Text:
+MobileErrorCode_101_008_Text:
+MobileErrorCode_101_009_Text:
 	db   "データの よみこみが できません"
 	next "しばらくまって"
 	next "かけなおして ください"
@@ -5058,12 +5095,12 @@
 	next "おといあわせください"
 	db   "@"
 
-String_17fe4b:
+MobileErrorCode_101_007_Text:
 	db   "まちじかんが ながいので"
 	next "でんわが きれました"
 	db   "@"
 
-String_17fe63:
+MobileErrorCode_101_005_Text:
 	db   "あいての モバイルアダプタと"
 	next "タイプが ちがいます"
 	next "くわしくは とりあつかい"
@@ -5078,7 +5115,7 @@
 	next "よみこみを さきに してください"
 	db   "@"
 
-String_17fedf:
+MobileErrorCode_101_000_Text:
 	db   "つうしんの じょうきょうが"
 	next "よくないか かけるあいてが"
 	next "まちがっています"
@@ -5102,23 +5139,23 @@
 
 Function17ff3c:
 	nop
-	ld a, [wc300]
+	ld a, [wMobileErrorCodeBuffer]
 	cp $d0
 	ret c
 	hlcoord 10, 2
 	ld de, String_17ff68
 	call PlaceString
-	ld a, [wc300]
+	ld a, [wMobileErrorCodeBuffer]
 	push af
 	sub $d0
 	inc a
-	ld [wc300], a
+	ld [wMobileErrorCodeBuffer], a
 	hlcoord 14, 2
-	ld de, wc300
+	ld de, wMobileErrorCodeBuffer
 	lb bc, PRINTNUM_LEADINGZEROS | 1, 3
 	call PrintNum
 	pop af
-	ld [wc300], a
+	ld [wMobileErrorCodeBuffer], a
 	and a
 	ret
 
--- a/wram.asm
+++ b/wram.asm
@@ -232,10 +232,12 @@
 wSpriteAnimationStructsEnd::
 
 NEXTU ; c300
+; dummy game
+wc300::
+
+NEXTU ; c300
 ; mobile data
-wc300:: ds 1
-wc301:: ds 1
-wc302:: ds 1
+wMobileErrorCodeBuffer:: ds 3 ; c300
 wc303:: ds 2
 wc305:: ds 1
 wc306:: ds 1
@@ -1116,7 +1118,8 @@
 	ds 14
 wcb0e:: ds 5
 wcb13:: ds 50
-wcb45:: ds 20
+wcb45:: ds 2
+wMobileSDK_PacketBuffer:: ds 18 ; cb47
 wcb59:: ds 20
 wcb6d:: ds 1
 wcb6e:: ds 22