summaryrefslogtreecommitdiff
path: root/arm9/asm
diff options
context:
space:
mode:
authorCleverking2003 <30466983+Cleverking2003@users.noreply.github.com>2020-06-28 19:59:18 +0300
committerGitHub <noreply@github.com>2020-06-28 19:59:18 +0300
commit71b374828b8c39900a642f982af40d5087190323 (patch)
tree51410faeb1bc5c52a0dedb6b1189e0dcc31abb4f /arm9/asm
parenta74135539e9945c4e01c4fed8088fde785789c7d (diff)
parentf29f16fd5ff0a38d2ba5b367bab77217dea6769e (diff)
Merge branch 'master' into master
Diffstat (limited to 'arm9/asm')
-rw-r--r--arm9/asm/scrcmd.s4
-rw-r--r--arm9/asm/secure.s262
-rw-r--r--arm9/asm/unk_02034A28.s4
-rw-r--r--arm9/asm/unk_0204CB20.s6
-rw-r--r--arm9/asm/unk_0204FBA8.s26
-rw-r--r--arm9/asm/unk_02064E90.s2
-rw-r--r--arm9/asm/unk_020772F0.s11
7 files changed, 292 insertions, 23 deletions
diff --git a/arm9/asm/scrcmd.s b/arm9/asm/scrcmd.s
index 80614f44..68c87867 100644
--- a/arm9/asm/scrcmd.s
+++ b/arm9/asm/scrcmd.s
@@ -8607,7 +8607,7 @@ FUN_0203DE00: ; 0x0203DE00
add r0, #0x80
ldr r0, [r0, #0x0]
bl FUN_020394F0
- bl MOD06_0224CA58
+ bl MOD18_0224CA58
strb r0, [r4, #0x0]
ldr r1, _0203DE34 ; =FUN_0203DE38
add r0, r5, #0x0
@@ -10299,7 +10299,7 @@ FUN_0203EBC8: ; 0x0203EBC8
add r1, r0, #0x0
ldr r0, [r4, #0x0]
bl FUN_020394B8
- mov r1, #0xa
+ mov r1, #GAME_VERSION
strh r1, [r0, #0x0]
mov r0, #0x0
pop {r4, pc}
diff --git a/arm9/asm/secure.s b/arm9/asm/secure.s
index f485088c..588b942e 100644
--- a/arm9/asm/secure.s
+++ b/arm9/asm/secure.s
@@ -3,6 +3,7 @@
.section .text
+.ifdef DIAMOND
.byte 0xFF, 0xDE, 0xFF, 0xE7, 0xFF, 0xDE, 0xFF, 0xE7, 0xFF, 0xDE, 0xFF, 0xE7, 0xFF, 0xDE, 0x42, 0x6E
.byte 0xF9, 0xCC, 0x54, 0x4B, 0x74, 0x53, 0x91, 0x91, 0xBC, 0x95, 0xD2, 0x12, 0xE1, 0xD0, 0xF0, 0x41
.byte 0xE5, 0xB6, 0x47, 0xA4, 0x23, 0x18, 0x61, 0xE9, 0xC4, 0x0A, 0xA2, 0xAD, 0xF8, 0x77, 0xB5, 0x6E
@@ -16,7 +17,8 @@
.byte 0x09, 0x2A, 0x35, 0xD5, 0x40, 0x75, 0x41, 0xFC, 0xA3, 0xCA, 0xEB, 0x03, 0xDA, 0x58, 0x31, 0x72
.byte 0x00, 0xFF, 0x46, 0xC7, 0xBA, 0xDF, 0xEE, 0x29, 0xC5, 0xE1, 0xDB, 0x7D, 0x1C, 0x37, 0x87, 0x63
.byte 0x9A, 0x5A, 0x23, 0xCA, 0x8C, 0x38, 0x5E, 0x98
- non_word_aligned_thumb_func_start SVC_GetCRC16
+ .thumb
+ .global SVC_GetCRC16
SVC_GetCRC16: ; 0x020000C8
swi 14
bx lr
@@ -37,7 +39,8 @@ SVC_GetCRC16: ; 0x020000C8
.byte 0xA2, 0xD5, 0x0E, 0x50, 0xFC, 0x83, 0x70, 0x45, 0x55, 0xAF, 0xF5, 0x89, 0xE2, 0x69, 0x71, 0xBA
.byte 0xFA, 0x75
- non_word_aligned_thumb_func_start SVC_Sqrt
+ .thumb
+ .global SVC_Sqrt
SVC_Sqrt: ; 0x0200019E
swi 13
bx lr
@@ -66,7 +69,8 @@ SVC_Sqrt: ; 0x0200019E
.byte 0x12, 0x75, 0xD5, 0xC2, 0xE9, 0x3E, 0xA9, 0x6E, 0xFB, 0x38, 0xAC, 0xB8, 0x5B, 0x94, 0x81, 0xD5
.byte 0x2F, 0x37, 0xC2, 0xD7, 0xC4, 0xEF, 0x6E, 0x8C, 0x1F, 0xFB, 0x36, 0x1D
- non_word_aligned_thumb_func_start SVC_CpuSet
+ .thumb
+ .global SVC_CpuSet
SVC_CpuSet: ; 0x020002FE
swi 11
bx lr
@@ -119,7 +123,8 @@ SVC_CpuSet: ; 0x020002FE
.byte 0xB1, 0x6D, 0xE0, 0xC6, 0x6B, 0x27, 0xBD, 0x38, 0xC8, 0x69, 0xA3, 0xFE, 0x50, 0x6D, 0xE1, 0x54
.byte 0x6E, 0xB2, 0x1C, 0x5D, 0x04, 0x50, 0x0B, 0x71, 0x97, 0x53, 0x7F, 0x6D, 0x1C, 0x80, 0xA9, 0xE2
- non_word_aligned_thumb_func_start SVC_WaitByLoop
+ .thumb
+ .global SVC_WaitByLoop
SVC_WaitByLoop:
swi 3
bx lr
@@ -157,3 +162,252 @@ SVC_WaitByLoop:
.byte 0x33, 0xCD, 0xDD, 0xD0, 0x49, 0x49, 0x2A, 0x45, 0xDD, 0x0E, 0x6F, 0xF7, 0x76, 0x20, 0xBF, 0xD8
.byte 0xCE, 0x6A, 0x21, 0x6F, 0x09, 0xA6, 0x03, 0xC2, 0x6B, 0x91, 0x46, 0x86, 0x86, 0x30, 0x16, 0x20
.byte 0x32, 0xBE, 0x4F, 0x6F, 0x6A, 0x34, 0xA8, 0xEB, 0x00, 0x00
+.else
+ .byte 0xFF, 0xDE, 0xFF, 0xE7, 0xFF, 0xDE, 0xFF, 0xE7, 0xFF, 0xDE, 0xFF, 0xE7, 0xFF, 0xDE, 0xF2, 0xB4
+ .byte 0x81, 0xC1, 0x6E, 0x73, 0x2D, 0xF1, 0xAB, 0x13, 0x78, 0xCB, 0x22, 0x23, 0xB5, 0xDD, 0xE7, 0x6F
+ .byte 0xE8, 0xFE, 0xA2, 0x31, 0x84, 0x32, 0x7F, 0xB3, 0xFC, 0x32, 0x3B, 0x5F, 0xD2, 0x19, 0x8B, 0xE0
+ .byte 0x9E, 0x58, 0x5A, 0x86, 0xD1, 0x2C, 0x49, 0xC6, 0x75, 0x82, 0xF1, 0xE9, 0x9C, 0x3F, 0x72, 0x77
+ .byte 0xE5, 0x18, 0xFB, 0xE7, 0xCF, 0x29, 0x15, 0xC8, 0xB7, 0x91, 0x73, 0x77, 0xC8, 0x89, 0xD9, 0xE3
+ .byte 0x91, 0x39, 0xA8, 0xC1, 0x22, 0x64, 0xD1, 0xDC, 0x23, 0xDD, 0xA8, 0xD8, 0x40, 0x6A, 0xDE, 0x49
+ .byte 0x0D, 0xFC, 0x09, 0x4F, 0x9C, 0x4B, 0x19, 0xBF, 0xF7, 0xA5, 0x49, 0xA6, 0x2B, 0x2A, 0x7E, 0x76
+ .byte 0xC0, 0x0D, 0x5E, 0x0D, 0xE7, 0x62, 0xE1, 0xCA
+
+ .thumb
+ .global SVC_UncompressRL16FromDevice
+SVC_UncompressRL16FromDevice: ; 0x02000078
+ swi 21
+ bx lr
+
+ .byte 0x8E, 0xCD, 0x45, 0x99, 0xC2, 0xFC, 0x47, 0x0B, 0xF9, 0x33, 0x43, 0x20, 0xED, 0x62, 0xDC, 0x65
+ .byte 0x98, 0x98, 0x03, 0x41, 0x07, 0x6C, 0xA1, 0xF0, 0xF7, 0x76, 0x6A, 0x80, 0xF5, 0xE9, 0xB1, 0xA3
+ .byte 0x7F, 0xEE, 0xC1, 0xC0, 0x9C, 0xD8, 0x22, 0xA3, 0x3A, 0x48, 0x10, 0x9B, 0x49, 0x66, 0xE8, 0x09
+ .byte 0x1C, 0xE0, 0x23, 0xF4, 0x92, 0x78, 0x92, 0x76, 0xFB, 0xBD, 0x4E, 0x63, 0x4A, 0x4B, 0x80, 0xAE
+ .byte 0x98, 0xFC, 0x58, 0x35, 0xC4, 0x08, 0x8A, 0x6F, 0xDD, 0x30, 0xCC, 0x06, 0xAE, 0x80, 0xBC, 0x0C
+ .byte 0xC5, 0xDB, 0x41, 0x60, 0x68, 0x9B, 0xBC, 0x70, 0xD9, 0x93, 0x4C, 0x71, 0xCE, 0xF4, 0x3C, 0x40
+ .byte 0x36, 0xDF, 0x51, 0xDC, 0x88, 0x76, 0xCE, 0x94
+
+ .thumb
+ .global SVC_WaitVBlankIntr
+SVC_WaitVBlankIntr: ; 0x020000E4
+ mov r2, #0
+ swi 5
+ bx lr
+
+ .byte 0x8F, 0x25, 0x5F, 0x13, 0xE1, 0x3C, 0xF0, 0x99, 0x96, 0x05, 0xF2, 0xB5, 0x87, 0xF9, 0x3D, 0x6C
+ .byte 0x5B, 0x0B, 0x85, 0x71, 0x3F, 0x92, 0xE0, 0x2E, 0xC3, 0x56, 0x26, 0x8B, 0xF4, 0x4B, 0x6D, 0x48
+ .byte 0x25, 0xF0, 0x17, 0x26, 0x95, 0x35, 0x09, 0x85, 0xB9, 0xFB, 0x57, 0x08, 0x3A, 0xE6, 0xAF, 0x38
+ .byte 0x5F, 0x0C, 0xAB, 0x8F, 0x7B, 0x81, 0x35, 0xE2, 0xC1, 0xD3, 0x5A, 0x9B, 0x85, 0xC5, 0xE6, 0x1C
+ .byte 0x10, 0xEC, 0xF5, 0x3C, 0x2B, 0x77, 0x27, 0xE2, 0xC3, 0x87, 0x07, 0x09, 0x2F, 0x78, 0xB2, 0x1E
+ .byte 0x72, 0x59, 0xEF, 0xC8
+
+ .thumb
+ .global SVC_UnpackBits
+SVC_UnpackBits: ; 0x0200013E
+ swi 16
+ bx lr
+
+ .byte 0x7F, 0x0D, 0x98, 0xCA, 0x0D, 0x6B, 0xAA, 0xE1, 0xBB, 0x0E, 0xC6, 0x6B, 0xB9, 0x85, 0x13, 0x01
+ .byte 0x11, 0xC9, 0xC0, 0x37, 0x2B, 0xB5, 0x7A, 0x1B, 0x98, 0xA7, 0xA4, 0x53, 0x3F, 0xCD, 0x02, 0xD1
+ .byte 0xFA, 0xF1, 0xE5, 0xAC, 0x05, 0x1C, 0xCD, 0x10, 0x19, 0x76, 0xAB, 0xDC, 0xBF, 0xEE, 0x2B, 0x10
+ .byte 0x80, 0x04, 0xFF, 0x43, 0x83, 0x91, 0x48, 0x0F, 0x62, 0xC6, 0xC4, 0xE2, 0x87, 0x4E, 0x51, 0x94
+ .byte 0x84, 0xBE, 0x25, 0x57, 0x56, 0x35, 0xA8, 0x74, 0xE8, 0x5B, 0x23, 0x77, 0xE5, 0x9A, 0x51, 0xDC
+ .byte 0x6F, 0x2E, 0xBF, 0x2B, 0xF6, 0x1B, 0xC7, 0x60, 0x89, 0xE0, 0xE3, 0x66, 0xDD, 0x82, 0x2D, 0xE1
+ .byte 0xE7, 0xC9, 0x66, 0x08, 0x37, 0x48, 0xD4, 0x0D, 0x6F, 0x84, 0xBB, 0x28, 0xF7, 0x9A, 0x0F, 0x81
+ .byte 0xF5, 0xF9, 0xD7, 0x05, 0x5C, 0x5B, 0xA4, 0xCF, 0x3F, 0xBD, 0x02, 0xC6, 0x54, 0x59
+
+ .thumb
+ .global SVC_UncompressLZ16FromDevice
+SVC_UncompressLZ16FromDevice: ; 0x020001C0
+ swi 18
+ bx lr
+
+ .byte 0xEA, 0xE2, 0x38, 0xCD, 0x7B, 0x60, 0x77, 0x99, 0x13, 0x94, 0x94, 0x7C, 0xD1, 0xB4, 0xA2, 0x68
+ .byte 0xB3, 0x9A, 0x06, 0x50, 0xA5, 0xB8, 0x42, 0x29, 0x6F, 0x7F, 0xBB, 0xC3, 0xB6, 0xDC, 0x6F, 0x3E
+ .byte 0x8E, 0x83, 0xD6, 0x49, 0x09, 0x87, 0x2F, 0x33, 0xA8, 0x9C, 0xBA, 0x1C, 0x7B, 0x94, 0xFA, 0x3B
+ .byte 0xE9, 0xED, 0xA8, 0x5A, 0xE5, 0x56, 0x78, 0xDA, 0xDC, 0x01, 0xAB, 0x56, 0xE7, 0x49, 0xF3, 0xC6
+ .byte 0xED, 0x36, 0x9C, 0x6A, 0xC9, 0xC0, 0x91, 0x9E, 0x7A, 0xDA, 0x05, 0x96, 0xB3, 0xF3, 0x22, 0x2E
+ .byte 0xB8, 0xA9, 0x9F, 0xA9, 0xCC, 0xDA, 0x01, 0x3A, 0xA3, 0x31, 0xDA, 0x35, 0x27, 0xF2, 0x58, 0xA5
+ .byte 0x53, 0x89, 0x8C, 0xA5, 0xBA, 0x7F, 0x13, 0x0F, 0x3A, 0xC5
+
+ .thumb
+ .global SVC_SoftReset
+SVC_SoftReset: ; 0x0200022E
+ swi 0
+ bx lr
+
+ .byte 0x80, 0xBE, 0x17, 0xC4, 0x7B, 0x18, 0xE4, 0x43, 0x96, 0x59, 0x0A, 0x7B, 0xB0, 0x46, 0xEE, 0x18
+ .byte 0x40, 0x4E, 0x48, 0x1A, 0xB8, 0x78, 0x9E, 0x1A, 0x19, 0xD5, 0x3A, 0x7E, 0x80, 0x39, 0xD0, 0xFA
+ .byte 0x8B, 0x56, 0xB7, 0x0F, 0x28, 0x90, 0xFC, 0x7F, 0xFF, 0x44, 0xB2, 0x2B, 0xE0, 0xE6, 0x72, 0x03
+ .byte 0x34, 0x30, 0x8B, 0x45, 0x80, 0x56, 0xD2, 0xD0, 0xB0, 0xC5, 0xF8, 0xCA, 0xF9, 0xC3, 0x9C, 0x4E
+ .byte 0xC7, 0x51, 0x9B, 0xAA, 0x9A, 0x73, 0x81, 0x21, 0x7B, 0x8C, 0xBC, 0x79, 0x53, 0x7F, 0x9D, 0xE0
+ .byte 0xFD, 0x82, 0xAE, 0x4E, 0x09, 0xDF, 0x08, 0x1C, 0x70, 0x47, 0x2F, 0x43, 0x55, 0x76, 0x8C, 0x0A
+ .byte 0x13, 0x3A, 0x13, 0x61, 0x9F, 0xF0, 0xD3, 0x7C, 0x7C, 0x85, 0x69, 0x62, 0x91, 0x29, 0x6D, 0x5F
+ .byte 0xB6, 0xAD, 0x42, 0x9D, 0x66, 0x8C, 0x02, 0x01, 0x3F, 0x78, 0x41, 0x25, 0xDE, 0xE7, 0x30, 0xE4
+ .byte 0xBA, 0xEC, 0x6C, 0x0F, 0x4B, 0x23, 0x75, 0x84, 0xD7, 0x19, 0x95, 0xBB, 0x86, 0x6D, 0xCC, 0x36
+ .byte 0xCF, 0xEC, 0x0A, 0xCF, 0x99, 0x3A, 0x0B, 0x01, 0xCF, 0x52, 0x7D, 0xD5, 0x33, 0x2D, 0x99, 0x31
+ .byte 0x48, 0x43, 0xFE, 0x53, 0xF6, 0x49, 0x74, 0xF7, 0xCC, 0x85, 0xAE, 0xD1, 0x9D, 0x56, 0x6E, 0xDE
+ .byte 0xC3, 0x0D, 0x19, 0x29, 0x27, 0xC6, 0x1F, 0x39, 0x6C, 0xDB, 0x9F, 0x56, 0x4E, 0x39, 0x9E, 0x5F
+ .byte 0xB1, 0xBD, 0x25, 0xE9, 0x1D, 0xFB, 0x12, 0xCF
+
+ .thumb
+ .global SVC_UncompressHuffmanFromDevice
+SVC_UncompressHuffmanFromDevice: ; 0x020002FA
+ swi 19
+ bx lr
+
+ .byte 0x88, 0x07, 0x93, 0x96, 0xCD, 0xEF, 0xB4, 0x07, 0x96, 0xD3, 0xE6, 0xD8, 0x05, 0x2A, 0xF5, 0xCB
+ .byte 0x2D, 0x82, 0x9D, 0xB1, 0xA7, 0xDA, 0x38, 0xC1, 0x37, 0x70, 0x6A, 0xA3, 0x28, 0x43, 0xAC, 0x7A
+ .byte 0x20, 0x83, 0xBA, 0x90, 0x8A, 0x49, 0xAA, 0x1A, 0x41, 0x6E, 0x92, 0x21, 0xE8, 0xDA, 0x66, 0x70
+ .byte 0x78, 0x32, 0x77, 0x66, 0x7F, 0xCD, 0xE4, 0x0C, 0x69, 0x20, 0x35, 0x9C, 0x9A, 0xC7, 0xDC, 0x1F
+ .byte 0x4C, 0x73, 0x57, 0xB5, 0xBA, 0xFB, 0x44, 0x05, 0xBA, 0x06, 0x7B, 0x29, 0xAC, 0x5E, 0x04, 0x66
+ .byte 0xC5, 0x77, 0x87, 0x6B, 0x3F, 0xE4, 0xC1, 0xEE, 0x8C, 0x22, 0x1A, 0x07, 0x63, 0xD5, 0xB6, 0xAF
+ .byte 0x32, 0xA2, 0xFE, 0x6E, 0x38, 0x11, 0xF3, 0x45, 0x7C, 0xB5, 0x1C, 0x3D, 0x5C, 0x62, 0xFA, 0x7A
+ .byte 0x2B, 0x4E, 0x8C, 0x92, 0x66, 0x60
+
+ .thumb
+ .global SVC_UncompressRL8
+SVC_UncompressRL8: ; 0x02000374
+ swi 20
+ bx lr
+
+ .byte 0x43, 0xA3, 0x40, 0x36, 0x0E, 0x7C, 0xAE, 0x48, 0x76, 0xF1, 0x9F, 0xF4, 0x6F, 0xA8, 0x27, 0x16
+ .byte 0xDD, 0xEC, 0x04, 0x90, 0xA0, 0x83, 0x47, 0x9E, 0xE6, 0x5E, 0x84, 0x83, 0xDE, 0x53, 0x31, 0xFF
+ .byte 0xFE, 0xF3, 0x6A, 0xB2, 0x00, 0xBC, 0x2C, 0x03, 0x94, 0x79, 0x0C, 0x82, 0xE4, 0x6A, 0xE2, 0xB6
+ .byte 0x36, 0xFB, 0x39, 0x9B, 0xE0, 0xBC, 0xBF, 0x11, 0x07, 0x36, 0x4C, 0xD0, 0x88, 0xD7, 0x3D, 0x27
+ .byte 0xDF, 0x72, 0x65, 0x63, 0x15, 0x7E, 0x5E, 0x1A, 0x52, 0xBA, 0xA8, 0xCA, 0xA1, 0xEA, 0x91, 0x2D
+ .byte 0x86, 0x78, 0x86, 0xB8, 0xC1, 0x1B, 0x54, 0x44, 0xD6, 0xDA, 0xE5, 0x47, 0x2B, 0x18, 0x0D, 0xB8
+ .byte 0x6B, 0xAB, 0x68, 0xCF, 0x27, 0x8D
+
+ .thumb
+ .global SVC_Halt
+SVC_Halt: ; 0x020003DE
+ swi 6
+ bx lr
+
+ .byte 0x5F, 0x28, 0xC9, 0x01, 0xDD, 0x41, 0xE2, 0x97, 0x5F, 0xEE, 0xA6, 0xC6, 0x20, 0x09, 0xB0, 0xC9
+ .byte 0x56, 0xC1, 0x3F, 0x32, 0xBF, 0x1C, 0xD6, 0xF4, 0x1F, 0x0D, 0xD3, 0xA2, 0xBC, 0xA3, 0xBA, 0x4D
+ .byte 0x7A, 0x75, 0xE9, 0xB6, 0x47, 0x5A, 0xDA, 0x7C, 0x43, 0x88, 0xFD, 0x04, 0x16, 0xA5, 0x8E, 0xC8
+ .byte 0xE4, 0x11, 0xEB, 0x4F, 0x73, 0x9C, 0x7C, 0x70, 0x90, 0xC6, 0x01, 0x56, 0x3E, 0x29, 0xF0, 0x0B
+ .byte 0xC4, 0xA1, 0x9F, 0x2D, 0x57, 0x65, 0xA7, 0x8B, 0xA4, 0xEC, 0x97, 0xDB, 0x80, 0xA6, 0xC3, 0x1A
+ .byte 0x5A, 0x6D, 0xBE, 0x22, 0x94, 0x34, 0xC4, 0x84, 0x7B, 0x39, 0xDE, 0xB5, 0x00, 0x16, 0xB0, 0x5B
+ .byte 0xE4, 0xE1, 0xF4, 0xB6, 0xE8, 0x02, 0x2A, 0xBF, 0x10, 0x0C, 0x34, 0x6D, 0x42, 0xF5, 0xC5, 0x60
+
+ .thumb
+ .global SVC_Div
+SVC_Div: ; 0x02000452
+ swi 9
+ bx lr
+
+ .byte 0x4E, 0xC7, 0xBB, 0x05, 0x37, 0xAE, 0x1C, 0x8C, 0x47, 0x91, 0xCF, 0x51, 0x1C, 0x20, 0xC6, 0xD4
+ .byte 0x66, 0x00, 0xD3, 0x84, 0x92, 0x0C, 0xF4, 0xF8, 0x43, 0xBC, 0x47, 0x4D, 0x7A, 0xBC, 0xC8, 0x2B
+ .byte 0x1D, 0x1D, 0xD3, 0x47, 0x14, 0xCF, 0x27, 0x41, 0x03, 0x89, 0xE8, 0xCD, 0xD4, 0x60, 0x6A, 0xBF
+ .byte 0x96, 0xDD, 0x82, 0xE6, 0x13, 0x2C, 0x2D, 0xB7, 0xA9, 0xB0, 0xB2, 0x5D, 0xF0, 0x2A, 0x49, 0x22
+ .byte 0xEC, 0xAE, 0x7C, 0x8E, 0xE7, 0x13, 0xE6, 0x56, 0x96, 0x65, 0x78, 0xA9, 0x68, 0x42, 0x59, 0x96
+ .byte 0x82, 0x9C, 0xFF, 0xEE, 0x0F, 0xB2
+
+ .thumb
+ .global SVC_Sqrt
+SVC_Sqrt: ; 0x020004AC
+ swi 13
+ bx lr
+
+ .byte 0x64, 0x00, 0xAB, 0xE4, 0xBB, 0xA5, 0xF3, 0x44, 0x45, 0x5D, 0xA2, 0xBE, 0x0A, 0x71, 0xB5, 0xFB
+ .byte 0xAE, 0x64, 0x4B, 0xF4, 0x05, 0xA3, 0x21, 0x4F, 0x4F, 0x6A, 0x62, 0xA7, 0x72, 0xFE, 0xD9, 0x98
+ .byte 0x37, 0x36, 0x79, 0xFC, 0xE7, 0x9C, 0xBB, 0xFB, 0x98, 0x1B, 0x6D, 0x03, 0xBE, 0x96, 0x72, 0x69
+ .byte 0xC7, 0x69, 0x1A, 0xFA, 0x15, 0x84, 0x37, 0xA2, 0x1C, 0x6F, 0x83, 0xCF, 0x02, 0x4D, 0xCF, 0x5F
+ .byte 0x4E, 0x41, 0xE0, 0x7C, 0x30, 0xE8, 0x3C, 0xB0, 0x24, 0x76, 0x7A, 0x4D, 0xAF, 0x20, 0xD3, 0x7D
+ .byte 0x08, 0x2B, 0xA5, 0x1D, 0xA1, 0xC6, 0x60, 0xD2, 0x72, 0xC6
+
+ .thumb
+ .global SVC_WaitByLoop
+SVC_WaitByLoop: ; 0x0200050A
+ swi 3
+ bx lr
+
+ .byte 0x25, 0x1F, 0xBA, 0x2C, 0x1B, 0x23, 0xC3, 0xFE, 0x7D, 0xED, 0x2E, 0x19, 0xE1, 0x77, 0xBE, 0x6A
+ .byte 0x0D, 0x4B, 0xBA, 0x67, 0x8E, 0x98, 0xC0, 0x40, 0x29, 0x30, 0x80, 0xD1, 0x7E, 0xCD, 0x76, 0xB2
+ .byte 0xE6, 0xC9, 0x20, 0x88, 0xCC, 0x25, 0x62, 0x6E, 0xCF, 0xC1, 0x1F, 0x35, 0x08, 0x8F, 0x18, 0x40
+ .byte 0x41, 0x30, 0x03, 0xAE, 0xE0, 0x5A, 0xB7, 0x03, 0xCB, 0x18, 0x83, 0x98, 0xCB, 0x25, 0x9B, 0xD0
+ .byte 0xC6, 0x7B, 0xE0, 0x7B, 0x02, 0x86, 0xCE, 0x55, 0x80, 0x7F, 0x15, 0x64, 0x79, 0xC6, 0xBB, 0x2C
+ .byte 0x25, 0xCA, 0x08, 0x51, 0x77, 0x56, 0x0C, 0x5F, 0x63, 0x91, 0x80, 0xF5, 0x5B, 0x66, 0xCD, 0x00
+ .byte 0xDF, 0x32, 0x29, 0x7F, 0xEF, 0x32, 0x1D, 0xBB, 0xAA, 0xF3, 0xDC, 0xAC, 0xBF, 0xF4, 0xA1, 0x87
+ .byte 0xF5, 0x59
+
+ .thumb
+ .global SVC_GetCRC16
+SVC_GetCRC16: ; 0x02000580
+ swi 14
+ bx lr
+
+ .byte 0xFF, 0x01, 0xBB, 0x78, 0xAC, 0xB6, 0x11, 0x1F, 0x37, 0xF3, 0x01, 0x06, 0xD0, 0x01, 0x00, 0x9A
+ .byte 0xFD, 0xCB, 0x18, 0x06, 0x0A, 0xF4, 0xD6, 0x8D, 0x71, 0x57, 0xFE, 0xCA, 0xF2, 0x2B, 0xF2, 0xDF
+ .byte 0xC7, 0xE8, 0x8A, 0x28, 0x52, 0x95, 0x19, 0xF1, 0x3B, 0xE6, 0x4E, 0x8B, 0xD2, 0x02, 0x54, 0x42
+ .byte 0x02, 0x4A, 0x40, 0x04, 0xA6, 0x24, 0xC1, 0xDB, 0x7E, 0x6A, 0x73, 0x19, 0xD2, 0x18, 0x86, 0x48
+ .byte 0x99, 0xC3, 0x7B, 0x35, 0x3A, 0x7B, 0x76, 0x35, 0x0C, 0x82, 0x53, 0xD0, 0x5D, 0xD9, 0x97, 0xBC
+ .byte 0x48, 0x80, 0x4C, 0xD5
+
+ .thumb
+ .global SVC_CpuSetFast
+SVC_CpuSetFast: ; 0x020005D8
+ swi 12
+ bx lr
+
+ .byte 0x36, 0xF2, 0xD9, 0x9A, 0xDB, 0xAA, 0x63, 0xF2, 0xBD, 0x54, 0xFC, 0x40, 0x84, 0xB2, 0x35, 0xE5
+ .byte 0x26, 0x36, 0x25, 0x89, 0x4B, 0x9C, 0xE2, 0x94, 0x28, 0x21, 0xB7, 0x46, 0x78, 0x4C, 0xBB, 0x52
+ .byte 0x43, 0x6E, 0x23, 0x67, 0xDB, 0xEC, 0x8F, 0x93, 0xD2, 0xA2, 0x3A, 0xA5, 0x7D, 0x92, 0x97, 0x00
+ .byte 0xAD, 0xDC, 0x3B, 0xF1, 0x37, 0x7E, 0x9E, 0x7B, 0x4E, 0xD0, 0xE2, 0xE9, 0x6B, 0xBC, 0xB7, 0x50
+ .byte 0xE7, 0x00, 0x0C, 0x0A, 0x1E, 0xA5, 0x2D, 0x16, 0xB7, 0xF8, 0xBF, 0x54
+
+ .thumb
+ .global SVC_WaitIntr
+SVC_WaitIntr: ; 0x02000628
+ mov r2, #0
+ swi 4
+ bx lr
+
+ .byte 0x8C, 0x18, 0xF9, 0x04, 0x15, 0x40, 0x93, 0x79, 0xC7, 0x6A, 0xA8, 0x38, 0x08, 0xD6, 0xB3, 0x87
+ .byte 0xCB, 0xBB, 0x55, 0xDE, 0xF6, 0x4D, 0xBC, 0x95, 0xD7, 0x64, 0xE6, 0x66, 0xA5, 0xA5, 0xDA, 0x49
+ .byte 0x77, 0x69, 0x14, 0x0F, 0x0C, 0xFE, 0x30, 0x61, 0x05, 0xA3, 0x72, 0xFB, 0x20, 0xB7, 0x1A, 0xE1
+ .byte 0x5D, 0x17, 0xCC, 0x8A, 0x12, 0x36, 0x08, 0x63, 0x63, 0xE6, 0xA8, 0x09, 0x12, 0x62, 0x30, 0x4F
+ .byte 0xAA, 0x47, 0x70, 0x67, 0x08, 0xE1, 0x35, 0x28, 0xFE, 0xFE, 0x24, 0x75, 0x14, 0x03, 0x40, 0x3E
+ .byte 0x47, 0xEC, 0xC1, 0xA3, 0x4C, 0x42, 0xE9, 0xB0, 0x27, 0x33, 0x3F, 0xC1, 0xFC, 0xE8, 0x34, 0x66
+ .byte 0xB7, 0xDB, 0xCB, 0x66, 0x6A, 0x9E, 0x2F, 0x5D, 0x69, 0xB4, 0x38, 0x57, 0x49, 0x1E, 0x0F, 0xBF
+ .byte 0x4F, 0x98, 0x7F, 0x35, 0xB8, 0xAB, 0x7C, 0x02, 0xB4, 0x5B, 0xA9, 0x1F, 0x75, 0x00, 0xF1, 0x7D
+ .byte 0xC7, 0x79, 0xFB, 0x23
+
+ .thumb
+ .global SVC_CpuSet
+SVC_CpuSet: ; 0x020006B2
+ swi 11
+ bx lr
+
+ .byte 0x41, 0x89, 0x4D, 0x99, 0x93, 0xBA, 0xCE, 0x99, 0xE6, 0xAF, 0x92, 0x54, 0x2F, 0x8E, 0xB3, 0xCD
+ .byte 0x2E, 0xD0, 0x48, 0x52, 0x5B, 0xE6, 0xE1, 0x31, 0x6A, 0x30, 0xF8, 0x3B, 0x54, 0x0B, 0x4B, 0xC9
+ .byte 0x17, 0x06, 0x9F, 0xA0, 0xAE, 0x24, 0xFF, 0x94, 0x33, 0x32, 0x41, 0x1D, 0x89, 0xAC, 0x9E, 0x42
+ .byte 0xA4, 0x8E, 0x75, 0x48, 0x1F, 0x6E, 0x2A, 0xDB, 0xAC, 0x54, 0x55, 0x27, 0x36, 0xBB, 0x7F, 0x9D
+ .byte 0x57, 0xD4, 0x32, 0x5B, 0xA9, 0x29, 0x15, 0x98, 0xBB, 0x9C, 0x93, 0x88, 0x62, 0x25, 0xA0, 0x8B
+ .byte 0x2F, 0x19, 0xDF, 0x72, 0x7E, 0x73, 0x86, 0x0C, 0x1E, 0x5B, 0xA5, 0x9D, 0xF1, 0xCD, 0x45, 0x62
+ .byte 0xE5, 0x62, 0xCA, 0xE4, 0x2F, 0x20, 0xCE, 0x44, 0x9F, 0xFC, 0x14, 0xCF, 0x0E, 0xD2, 0xC3, 0x56
+ .byte 0x92, 0x29, 0x5A, 0xF1, 0x11, 0xDF, 0x70, 0x47, 0xC8, 0x58, 0x5C, 0x38, 0x05, 0x09, 0x09, 0x37
+ .byte 0x19, 0x37, 0xE9, 0x0A, 0x56, 0xF5, 0x5F, 0x57, 0x9C, 0xA8, 0x91, 0x87, 0xFB, 0x03, 0xE3, 0xD2
+ .byte 0x07, 0x4E, 0xC9, 0x39, 0x37, 0xC1, 0x50, 0x29, 0x1C, 0x36, 0x33, 0xBC, 0x57, 0x37, 0x82, 0xA4
+ .byte 0x69, 0x2C, 0xA2, 0x3D, 0x05, 0x3E, 0xCE, 0x4C, 0x53, 0x89, 0x49, 0x3B, 0xCC, 0x15, 0xF2, 0xB5
+ .byte 0xD6, 0x28, 0x97, 0x98, 0xFB, 0x28, 0xFA, 0xD4, 0x58, 0x1C, 0x29, 0x37, 0x0C, 0x52, 0xB4, 0xCA
+ .byte 0x4B, 0x0B, 0x39, 0x6A, 0xDB, 0x40, 0xF9, 0xA2, 0xA3, 0x5B, 0x6C, 0x58, 0x17, 0x75, 0x8E, 0xB3
+ .byte 0xF2, 0xF4, 0xA1, 0x39, 0x17, 0xD9, 0x7B, 0x9C
+
+ .thumb
+ .global IsMmemExpanded
+IsMmemExpanded: ; 0x0200078E
+ swi 15
+ bx lr
+
+ .byte 0x77, 0x04, 0xED, 0xD8, 0xD3, 0x0B, 0xEB, 0x51, 0x73, 0xA7, 0x84, 0x7E, 0x54, 0x52, 0xDE, 0x0B
+ .byte 0x6F, 0xF4, 0xC4, 0x7F, 0xF6, 0x60, 0x00, 0xD6, 0x24, 0xD3, 0x41, 0x86, 0x99, 0xE8, 0x29, 0xAF
+ .byte 0x5C, 0x16, 0xC1, 0x5D, 0x6E, 0xE6, 0x4B, 0x67, 0x51, 0xAC, 0xE4, 0xD6, 0x5B, 0x50, 0x6B, 0xDE
+ .byte 0x27, 0x38, 0xF8, 0x0D, 0x0E, 0x81, 0xDB, 0x80, 0x93, 0xF0, 0xD8, 0x08, 0xA5, 0xF6, 0x7C, 0xE5
+ .byte 0x34, 0xCC, 0x86, 0x4D, 0xDE, 0xC3, 0x81, 0xB4, 0xB7, 0x4B, 0x8B, 0x94, 0x41, 0xD8, 0x98, 0x7B
+ .byte 0x5F, 0x79, 0x21, 0x3D, 0xC5, 0x92, 0xFC, 0x3B, 0x9A, 0x88, 0x54, 0x14, 0x40, 0x00, 0x3E, 0x7D
+ .byte 0x98, 0xE4, 0x50, 0xA9, 0xA0, 0xB7, 0xCC, 0x79, 0x30, 0xFE, 0xAC, 0x85, 0x00, 0x00
+
+ .endif
diff --git a/arm9/asm/unk_02034A28.s b/arm9/asm/unk_02034A28.s
index 9185622e..d0cc2c05 100644
--- a/arm9/asm/unk_02034A28.s
+++ b/arm9/asm/unk_02034A28.s
@@ -413,7 +413,11 @@ FUN_02034CB4: ; 0x02034CB4
bl FUN_020347FC
add r2, r0, #0x0
add r0, r5, #0x0
+ .ifdef DIAMOND
mov r1, #0x25
+ .else
+ mov r1, #0x8f
+ .endif
bl ReadWholeNarcMemberByIdPair
_02034CDE:
pop {r3-r5, pc}
diff --git a/arm9/asm/unk_0204CB20.s b/arm9/asm/unk_0204CB20.s
index 6c3ae7b3..6351a0e1 100644
--- a/arm9/asm/unk_0204CB20.s
+++ b/arm9/asm/unk_0204CB20.s
@@ -1861,14 +1861,14 @@ _0204D90A:
cmp r0, #0x0
bne _0204D93C
add r0, r5, #0x0
- bl MOD06_02247544
+ bl MOD18_02247544
cmp r0, #0x0
bne _0204D976
_0204D93C:
ldr r0, [sp, #0x4]
cmp r0, #0x0
beq _0204D94A
- bl MOD06_02244DB0
+ bl MOD18_02244DB0
cmp r0, #0x0
beq _0204D976
_0204D94A:
@@ -4003,7 +4003,7 @@ _0204E936:
ldr r1, [r1, #0x0]
ldr r0, _0204E968 ; =FUN_0204D308
ldr r1, [r1, #0x54]
- bl MOD06_0224A7C8
+ bl MOD18_0224A7C8
_0204E962:
pop {r4, pc}
.balign 4
diff --git a/arm9/asm/unk_0204FBA8.s b/arm9/asm/unk_0204FBA8.s
index c64ebb9f..6c8271dc 100644
--- a/arm9/asm/unk_0204FBA8.s
+++ b/arm9/asm/unk_0204FBA8.s
@@ -707,7 +707,7 @@ _020500B6:
mov r0, #0x0
bl FUN_0204D168
bl MOD18_0223EF7C
- bl MOD06_02245FA0
+ bl MOD18_02245FA0
ldr r0, _02050108 ; =UNK_021C5A6C
ldr r0, [r0, #0x0]
ldr r0, [r0, #0x18]
@@ -777,7 +777,7 @@ _02050164: .word FUN_02050168
thumb_func_start FUN_02050168
FUN_02050168: ; 0x02050168
push {r3, lr}
- bl MOD06_0223DFB4
+ bl MOD18_0223DFB4
bl FUN_0204F80C
bl FUN_020318C4
cmp r0, #0x0
@@ -877,7 +877,7 @@ _02050248: .word FUN_02050350
thumb_func_start FUN_0205024C
FUN_0205024C: ; 0x0205024C
push {r3, lr}
- bl MOD06_0223DFB4
+ bl MOD18_0223DFB4
ldr r0, _020502A0 ; =UNK_021C5A6C
ldr r1, [r0, #0x0]
ldrh r0, [r1, #0x3c]
@@ -905,7 +905,7 @@ _0205027E:
mov r0, #0x0
bl FUN_0204D168
bl FUN_0204F930
- bl MOD06_02245FA0
+ bl MOD18_02245FA0
bl MOD18_0223E7FC
ldr r0, _020502A8 ; =FUN_020502AC
mov r1, #0x0
@@ -920,7 +920,7 @@ _020502A8: .word FUN_020502AC
thumb_func_start FUN_020502AC
FUN_020502AC: ; 0x020502AC
push {r3, lr}
- bl MOD06_0223DFB4
+ bl MOD18_0223DFB4
ldr r0, _02050314 ; =UNK_021C5A6C
ldr r0, [r0, #0x0]
ldr r0, [r0, #0x18]
@@ -944,7 +944,7 @@ _020502E2:
mov r0, #0x0
bl MOD18_02245358
bl FUN_0204F90C
- bl MOD06_02247808
+ bl MOD18_02247808
mov r0, #0x2b
bl FUN_020311DC
bl FUN_02031190
@@ -974,10 +974,10 @@ _0205032C: .word FUN_02050330
thumb_func_start FUN_02050330
FUN_02050330: ; 0x02050330
- ldr r3, _02050334 ; =MOD06_0223DFB4
+ ldr r3, _02050334 ; =MOD18_0223DFB4
bx r3
.balign 4
-_02050334: .word MOD06_0223DFB4
+_02050334: .word MOD18_0223DFB4
thumb_func_start FUN_02050338
FUN_02050338: ; 0x02050338
@@ -1074,7 +1074,7 @@ FUN_020503F0: ; 0x020503F0
ldr r0, _02050418 ; =UNK_02105E94
bl FUN_0204FBAC
bl MOD18_0223F4F4
- bl MOD06_02245FA0
+ bl MOD18_02245FA0
ldr r0, _0205041C ; =FUN_02050420
mov r1, #0x0
bl FUN_02050094
@@ -1177,10 +1177,10 @@ _020504CC: .word FUN_020500A4
thumb_func_start FUN_020504D0
FUN_020504D0: ; 0x020504D0
- ldr r3, _020504D4 ; =MOD06_0223DFB4
+ ldr r3, _020504D4 ; =MOD18_0223DFB4
bx r3
.balign 4
-_020504D4: .word MOD06_0223DFB4
+_020504D4: .word MOD18_0223DFB4
thumb_func_start FUN_020504D8
FUN_020504D8: ; 0x020504D8
@@ -1196,7 +1196,7 @@ FUN_020504D8: ; 0x020504D8
mov r0, #0x0
bl FUN_0204D168
bl MOD18_0223EF7C
- bl MOD06_02245FA0
+ bl MOD18_02245FA0
ldr r0, _0205050C ; =FUN_020504D0
mov r1, #0x0
bl FUN_02050094
@@ -1230,7 +1230,7 @@ _02050544: .word FUN_020504A4
thumb_func_start FUN_02050548
FUN_02050548: ; 0x02050548
push {r3, lr}
- bl MOD06_0223DFB4
+ bl MOD18_0223DFB4
bl FUN_0204F80C
ldr r0, _02050574 ; =UNK_021C5A6C
ldr r0, [r0, #0x0]
diff --git a/arm9/asm/unk_02064E90.s b/arm9/asm/unk_02064E90.s
index 50239ea5..52f5e4c1 100644
--- a/arm9/asm/unk_02064E90.s
+++ b/arm9/asm/unk_02064E90.s
@@ -33,7 +33,7 @@ FUN_02064E90: ; 0x02064E90
ldr r0, [sp, #0x10]
ldr r2, [sp, #0x24]
ldr r3, [sp, #0x18]
- mov r1, #0xa
+ mov r1, #GAME_VERSION
bl FUN_02065154
add r0, r7, #0x0
bl FUN_020239C0
diff --git a/arm9/asm/unk_020772F0.s b/arm9/asm/unk_020772F0.s
index 9f83df6f..6011647b 100644
--- a/arm9/asm/unk_020772F0.s
+++ b/arm9/asm/unk_020772F0.s
@@ -971,6 +971,9 @@ FUN_020777D4: ; 0x020777D4
mov r0, #0x17
lsl r0, r0, #0x4
ldr r0, [r5, r0]
+ .ifdef PEARL
+ add r1, #0x2c
+ .endif
bl NewString_ReadMsgData
add r6, r0, #0x0
b _0207781A
@@ -983,7 +986,11 @@ _020777FE:
mov r0, #0x17
lsl r0, r0, #0x4
ldr r0, [r5, r0]
+ .ifdef DIAMOND
add r1, #0x12
+ .else
+ add r1, #0x3e
+ .endif
bl NewString_ReadMsgData
add r6, r0, #0x0
_0207781A:
@@ -1004,7 +1011,11 @@ _02077836:
mov r0, #0x17
lsl r0, r0, #0x4
ldr r0, [r5, r0]
+ .ifdef DIAMOND
mov r1, #0x58
+ .else
+ mov r1, #0x59
+ .endif
bl NewString_ReadMsgData
add r5, r0, #0x0
ldr r0, [r4, #0x18]