diff options
author | sceptillion <33798691+sceptillion@users.noreply.github.com> | 2017-12-20 12:55:52 -0800 |
---|---|---|
committer | sceptillion <33798691+sceptillion@users.noreply.github.com> | 2017-12-20 12:55:52 -0800 |
commit | 9f9e3529f8d5fa6a5847ead54a9f2c8792f3ccd9 (patch) | |
tree | 19d3ebee502bb1b3ffa72a91fd00c83794d007fb /asm/string_util.s | |
parent | a6a0b7db926a41de8adcbefa5ac2d577e21f16cf (diff) |
decompile string_util
Diffstat (limited to 'asm/string_util.s')
-rw-r--r-- | asm/string_util.s | 1168 |
1 files changed, 0 insertions, 1168 deletions
diff --git a/asm/string_util.s b/asm/string_util.s deleted file mode 100644 index b02b01518..000000000 --- a/asm/string_util.s +++ /dev/null @@ -1,1168 +0,0 @@ - .include "asm/macros.inc" - .include "constants/constants.inc" - - .syntax unified - - .text - - thumb_func_start StringCopy10 -StringCopy10: @ 8008CF4 - push {r4,r5,lr} - adds r4, r0, 0 - movs r5, 0xA - movs r3, 0 -_08008CFC: - adds r2, r4, r3 - adds r0, r1, r3 - ldrb r0, [r0] - strb r0, [r2] - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0xFF - bne _08008D10 - adds r0, r2, 0 - b _08008D20 -_08008D10: - adds r0, r3, 0x1 - lsls r0, 24 - lsrs r3, r0, 24 - cmp r3, r5 - bcc _08008CFC - adds r0, r4, r3 - movs r1, 0xFF - strb r1, [r0] -_08008D20: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end StringCopy10 - - thumb_func_start StringGetEnd10 -StringGetEnd10: @ 8008D28 - push {r4,lr} - adds r3, r0, 0 - movs r4, 0xA - movs r2, 0 -_08008D30: - adds r1, r3, r2 - ldrb r0, [r1] - cmp r0, 0xFF - bne _08008D3C - adds r0, r1, 0 - b _08008D4C -_08008D3C: - adds r0, r2, 0x1 - lsls r0, 24 - lsrs r2, r0, 24 - cmp r2, r4 - bcc _08008D30 - adds r0, r3, r2 - movs r1, 0xFF - strb r1, [r0] -_08008D4C: - pop {r4} - pop {r1} - bx r1 - thumb_func_end StringGetEnd10 - - thumb_func_start StringCopy7 -StringCopy7: @ 8008D54 - push {r4,r5,lr} - adds r4, r0, 0 - movs r5, 0x7 - movs r3, 0 -_08008D5C: - adds r2, r4, r3 - adds r0, r1, r3 - ldrb r0, [r0] - strb r0, [r2] - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0xFF - bne _08008D70 - adds r0, r2, 0 - b _08008D7C -_08008D70: - adds r3, 0x1 - cmp r3, r5 - blt _08008D5C - adds r0, r4, r3 - movs r1, 0xFF - strb r1, [r0] -_08008D7C: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end StringCopy7 - - thumb_func_start StringCopy -StringCopy: @ 8008D84 - push {lr} - adds r3, r0, 0 - b _08008D90 -_08008D8A: - strb r2, [r3] - adds r3, 0x1 - adds r1, 0x1 -_08008D90: - ldrb r2, [r1] - adds r0, r2, 0 - cmp r0, 0xFF - bne _08008D8A - movs r0, 0xFF - strb r0, [r3] - adds r0, r3, 0 - pop {r1} - bx r1 - thumb_func_end StringCopy - - thumb_func_start StringAppend -StringAppend: @ 8008DA4 - push {lr} - adds r2, r0, 0 - b _08008DAC -_08008DAA: - adds r2, 0x1 -_08008DAC: - ldrb r0, [r2] - cmp r0, 0xFF - bne _08008DAA - adds r0, r2, 0 - bl StringCopy - pop {r1} - bx r1 - thumb_func_end StringAppend - - thumb_func_start StringCopyN -StringCopyN: @ 8008DBC - push {r4-r6,lr} - adds r4, r0, 0 - adds r6, r1, 0 - lsls r2, 24 - lsrs r5, r2, 24 - movs r3, 0 - adds r0, r5, 0 - cmp r3, r0 - bcs _08008DE2 - adds r2, r0, 0 -_08008DD0: - adds r1, r4, r3 - adds r0, r6, r3 - ldrb r0, [r0] - strb r0, [r1] - adds r0, r3, 0x1 - lsls r0, 16 - lsrs r3, r0, 16 - cmp r3, r2 - bcc _08008DD0 -_08008DE2: - adds r0, r4, r5 - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end StringCopyN - - thumb_func_start StringAppendN -StringAppendN: @ 8008DEC - push {lr} - adds r3, r0, 0 - lsls r2, 24 - lsrs r2, 24 - b _08008DF8 -_08008DF6: - adds r3, 0x1 -_08008DF8: - ldrb r0, [r3] - cmp r0, 0xFF - bne _08008DF6 - adds r0, r3, 0 - bl StringCopyN - pop {r1} - bx r1 - thumb_func_end StringAppendN - - thumb_func_start StringLength -StringLength: @ 8008E08 - push {lr} - adds r2, r0, 0 - movs r1, 0 - ldrb r0, [r2] - cmp r0, 0xFF - beq _08008E22 -_08008E14: - adds r0, r1, 0x1 - lsls r0, 16 - lsrs r1, r0, 16 - adds r0, r2, r1 - ldrb r0, [r0] - cmp r0, 0xFF - bne _08008E14 -_08008E22: - adds r0, r1, 0 - pop {r1} - bx r1 - thumb_func_end StringLength - - thumb_func_start StringCompare -StringCompare: @ 8008E28 - push {lr} - adds r2, r0, 0 - b _08008E3A -_08008E2E: - cmp r0, 0xFF - bne _08008E36 - movs r0, 0 - b _08008E48 -_08008E36: - adds r2, 0x1 - adds r1, 0x1 -_08008E3A: - ldrb r0, [r2] - ldrb r3, [r1] - cmp r0, r3 - beq _08008E2E - ldrb r0, [r2] - ldrb r1, [r1] - subs r0, r1 -_08008E48: - pop {r1} - bx r1 - thumb_func_end StringCompare - - thumb_func_start StringCompareN -StringCompareN: @ 8008E4C - push {r4,lr} - adds r3, r0, 0 - b _08008E64 -_08008E52: - cmp r0, 0xFF - beq _08008E60 - adds r3, 0x1 - adds r1, 0x1 - subs r2, 0x1 - cmp r2, 0 - bne _08008E64 -_08008E60: - movs r0, 0 - b _08008E72 -_08008E64: - ldrb r0, [r3] - ldrb r4, [r1] - cmp r0, r4 - beq _08008E52 - ldrb r0, [r3] - ldrb r1, [r1] - subs r0, r1 -_08008E72: - pop {r4} - pop {r1} - bx r1 - thumb_func_end StringCompareN - - thumb_func_start ConvertIntToDecimalStringN -ConvertIntToDecimalStringN: @ 8008E78 - push {r4-r7,lr} - mov r7, r8 - push {r7} - adds r4, r0, 0 - adds r6, r1, 0 - lsls r3, 24 - ldr r0, _08008EC8 @ =gUnknown_8231E3C - lsrs r3, 22 - subs r3, 0x4 - adds r3, r0 - ldr r0, [r3] - movs r7, 0 - cmp r2, 0x1 - bne _08008E96 - movs r7, 0x2 -_08008E96: - cmp r2, 0x2 - bne _08008E9C - movs r7, 0x1 -_08008E9C: - adds r5, r0, 0 - cmp r5, 0 - ble _08008F08 - ldr r0, _08008ECC @ =gUnknown_8231E2C - mov r8, r0 -_08008EA6: - adds r0, r6, 0 - adds r1, r5, 0 - bl __divsi3 - lsls r0, 16 - lsrs r2, r0, 16 - adds r0, r5, 0 - muls r0, r2 - subs r1, r6, r0 - cmp r7, 0x1 - bne _08008ED0 - adds r3, r4, 0 - adds r4, 0x1 - cmp r2, 0x9 - bls _08008EE2 - b _08008EEA - .align 2, 0 -_08008EC8: .4byte gUnknown_8231E3C -_08008ECC: .4byte gUnknown_8231E2C -_08008ED0: - cmp r2, 0 - bne _08008ED8 - cmp r5, 0x1 - bne _08008EF0 -_08008ED8: - movs r7, 0x1 - adds r3, r4, 0 - adds r4, 0x1 - cmp r2, 0x9 - bhi _08008EEA -_08008EE2: - mov r6, r8 - adds r0, r2, r6 - ldrb r0, [r0] - b _08008EEC -_08008EEA: - movs r0, 0xAC -_08008EEC: - strb r0, [r3] - b _08008EF8 -_08008EF0: - cmp r7, 0x2 - bne _08008EF8 - strb r2, [r4] - adds r4, 0x1 -_08008EF8: - adds r6, r1, 0 - adds r0, r5, 0 - movs r1, 0xA - bl __divsi3 - adds r5, r0, 0 - cmp r5, 0 - bgt _08008EA6 -_08008F08: - movs r0, 0xFF - strb r0, [r4] - adds r0, r4, 0 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end ConvertIntToDecimalStringN - - thumb_func_start sub_8008F18 -sub_8008F18: @ 8008F18 - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x4 - adds r6, r0, 0 - adds r7, r1, 0 - lsls r3, 24 - lsrs r3, 24 - movs r1, 0x1 - movs r0, 0x1 - cmp r1, r3 - bcs _08008F3C -_08008F30: - lsls r1, 4 - adds r0, 0x1 - lsls r0, 24 - lsrs r0, 24 - cmp r0, r3 - bcc _08008F30 -_08008F3C: - movs r3, 0 - cmp r2, 0x1 - bne _08008F44 - movs r3, 0x2 -_08008F44: - cmp r2, 0x2 - bne _08008F4A - movs r3, 0x1 -_08008F4A: - adds r5, r1, 0 - cmp r5, 0 - ble _08008FB8 - ldr r0, _08008F7C @ =gUnknown_8231E2C - mov r8, r0 -_08008F54: - adds r0, r7, 0 - adds r1, r5, 0 - str r3, [sp] - bl __divsi3 - adds r4, r0, 0 - adds r0, r7, 0 - adds r1, r5, 0 - bl __modsi3 - adds r1, r0, 0 - ldr r3, [sp] - cmp r3, 0x1 - bne _08008F80 - adds r2, r6, 0 - adds r6, 0x1 - cmp r4, 0xF - bls _08008F92 - b _08008F9A - .align 2, 0 -_08008F7C: .4byte gUnknown_8231E2C -_08008F80: - cmp r4, 0 - bne _08008F88 - cmp r5, 0x1 - bne _08008FA0 -_08008F88: - movs r3, 0x1 - adds r2, r6, 0 - adds r6, 0x1 - cmp r4, 0xF - bhi _08008F9A -_08008F92: - mov r7, r8 - adds r0, r4, r7 - ldrb r0, [r0] - b _08008F9C -_08008F9A: - movs r0, 0xAC -_08008F9C: - strb r0, [r2] - b _08008FA8 -_08008FA0: - cmp r3, 0x2 - bne _08008FA8 - strb r4, [r6] - adds r6, 0x1 -_08008FA8: - adds r7, r1, 0 - adds r0, r5, 0 - cmp r5, 0 - bge _08008FB2 - adds r0, 0xF -_08008FB2: - asrs r5, r0, 4 - cmp r5, 0 - bgt _08008F54 -_08008FB8: - movs r0, 0xFF - strb r0, [r6] - adds r0, r6, 0 - add sp, 0x4 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_8008F18 - - thumb_func_start StringExpandPlaceholders -StringExpandPlaceholders: @ 8008FCC - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 -_08008FD2: - ldrb r2, [r5] - adds r5, 0x1 - adds r0, r2, 0 - subs r0, 0xFA - cmp r0, 0x5 - bhi _080090A6 - lsls r0, 2 - ldr r1, _08008FE8 @ =_08008FEC - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08008FE8: .4byte _08008FEC - .align 2, 0 -_08008FEC: - .4byte _080090A6 - .4byte _080090A6 - .4byte _08009018 - .4byte _08009004 - .4byte _080090A6 - .4byte _080090AC -_08009004: - ldrb r0, [r5] - adds r5, 0x1 - bl GetExpandedPlaceholder - adds r1, r0, 0 - adds r0, r4, 0 - bl StringExpandPlaceholders - adds r4, r0, 0 - b _08008FD2 -_08009018: - strb r2, [r4] - adds r4, 0x1 - ldrb r2, [r5] - adds r5, 0x1 - strb r2, [r4] - adds r4, 0x1 - subs r0, r2, 0x4 - cmp r0, 0x14 - bhi _0800909C - lsls r0, 2 - ldr r1, _08009034 @ =_08009038 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08009034: .4byte _08009038 - .align 2, 0 -_08009038: - .4byte _0800908C - .4byte _0800909C - .4byte _0800909C - .4byte _08008FD2 - .4byte _0800909C - .4byte _08008FD2 - .4byte _0800909C - .4byte _08009094 - .4byte _0800909C - .4byte _0800909C - .4byte _0800909C - .4byte _08008FD2 - .4byte _0800909C - .4byte _0800909C - .4byte _0800909C - .4byte _0800909C - .4byte _0800909C - .4byte _08008FD2 - .4byte _08008FD2 - .4byte _08008FD2 - .4byte _08008FD2 -_0800908C: - ldrb r0, [r5] - strb r0, [r4] - adds r5, 0x1 - adds r4, 0x1 -_08009094: - ldrb r0, [r5] - strb r0, [r4] - adds r5, 0x1 - adds r4, 0x1 -_0800909C: - ldrb r0, [r5] - strb r0, [r4] - adds r5, 0x1 - adds r4, 0x1 - b _08008FD2 -_080090A6: - strb r2, [r4] - adds r4, 0x1 - b _08008FD2 -_080090AC: - movs r0, 0xFF - strb r0, [r4] - adds r0, r4, 0 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end StringExpandPlaceholders - - thumb_func_start StringBraille -StringBraille: @ 80090B8 - push {r4-r6,lr} - sub sp, 0xC - adds r5, r0, 0 - adds r6, r1, 0 - ldr r1, _080090F0 @ =gUnknown_8231E64 - mov r0, sp - movs r2, 0x4 - bl memcpy - add r4, sp, 0x4 - ldr r1, _080090F4 @ =gUnknown_8231E68 - adds r0, r4, 0 - movs r2, 0x5 - bl memcpy - adds r0, r5, 0 - mov r1, sp -_080090DA: - bl StringCopy - adds r5, r0, 0 -_080090E0: - ldrb r0, [r6] - adds r6, 0x1 - cmp r0, 0xFE - beq _080090F8 - cmp r0, 0xFF - bne _080090FE - b _0800910A - .align 2, 0 -_080090F0: .4byte gUnknown_8231E64 -_080090F4: .4byte gUnknown_8231E68 -_080090F8: - adds r0, r5, 0 - adds r1, r4, 0 - b _080090DA -_080090FE: - strb r0, [r5] - adds r5, 0x1 - adds r0, 0x40 - strb r0, [r5] - adds r5, 0x1 - b _080090E0 -_0800910A: - strb r0, [r5] - adds r0, r5, 0 - add sp, 0xC - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end StringBraille - - thumb_func_start sub_8009118 -sub_8009118: @ 8009118 - ldr r0, _0800911C @ =gUnknownStringVar - bx lr - .align 2, 0 -_0800911C: .4byte gUnknownStringVar - thumb_func_end sub_8009118 - - thumb_func_start sub_8009120 -sub_8009120: @ 8009120 - ldr r0, _08009128 @ =gSaveBlock2Ptr - ldr r0, [r0] - bx lr - .align 2, 0 -_08009128: .4byte gSaveBlock2Ptr - thumb_func_end sub_8009120 - - thumb_func_start sub_800912C -sub_800912C: @ 800912C - ldr r0, _08009130 @ =gStringVar1 - bx lr - .align 2, 0 -_08009130: .4byte gStringVar1 - thumb_func_end sub_800912C - - thumb_func_start sub_8009134 -sub_8009134: @ 8009134 - ldr r0, _08009138 @ =gStringVar2 - bx lr - .align 2, 0 -_08009138: .4byte gStringVar2 - thumb_func_end sub_8009134 - - thumb_func_start sub_800913C -sub_800913C: @ 800913C - ldr r0, _08009140 @ =gStringVar3 - bx lr - .align 2, 0 -_08009140: .4byte gStringVar3 - thumb_func_end sub_800913C - - thumb_func_start sub_8009144 -sub_8009144: @ 8009144 - push {lr} - ldr r0, _08009154 @ =gSaveBlock2Ptr - ldr r0, [r0] - ldrb r0, [r0, 0x8] - cmp r0, 0 - beq _0800915C - ldr r0, _08009158 @ =gUnknown_8415A22 - b _0800915E - .align 2, 0 -_08009154: .4byte gSaveBlock2Ptr -_08009158: .4byte gUnknown_8415A22 -_0800915C: - ldr r0, _08009164 @ =gUnknown_8415A21 -_0800915E: - pop {r1} - bx r1 - .align 2, 0 -_08009164: .4byte gUnknown_8415A21 - thumb_func_end sub_8009144 - - thumb_func_start sub_8009168 -sub_8009168: @ 8009168 - push {lr} - ldr r0, _08009188 @ =gSaveBlock1Ptr - ldr r0, [r0] - ldr r2, _0800918C @ =0x00003a4c - adds r1, r0, r2 - ldrb r0, [r1] - cmp r0, 0xFF - bne _080091A0 - ldr r0, _08009190 @ =gSaveBlock2Ptr - ldr r0, [r0] - ldrb r0, [r0, 0x8] - cmp r0, 0 - bne _08009198 - ldr r0, _08009194 @ =gUnknown_8415A5C - b _080091A2 - .align 2, 0 -_08009188: .4byte gSaveBlock1Ptr -_0800918C: .4byte 0x00003a4c -_08009190: .4byte gSaveBlock2Ptr -_08009194: .4byte gUnknown_8415A5C -_08009198: - ldr r0, _0800919C @ =gUnknown_8415A58 - b _080091A2 - .align 2, 0 -_0800919C: .4byte gUnknown_8415A58 -_080091A0: - adds r0, r1, 0 -_080091A2: - pop {r1} - bx r1 - thumb_func_end sub_8009168 - - thumb_func_start sub_80091A8 -sub_80091A8: @ 80091A8 - ldr r0, _080091AC @ =gUnknown_8415A2C - bx lr - .align 2, 0 -_080091AC: .4byte gUnknown_8415A2C - thumb_func_end sub_80091A8 - - thumb_func_start sub_80091B0 -sub_80091B0: @ 80091B0 - ldr r0, _080091B4 @ =gUnknown_8415A36 - bx lr - .align 2, 0 -_080091B4: .4byte gUnknown_8415A36 - thumb_func_end sub_80091B0 - - thumb_func_start sub_80091B8 -sub_80091B8: @ 80091B8 - ldr r0, _080091BC @ =gUnknown_8415A31 - bx lr - .align 2, 0 -_080091BC: .4byte gUnknown_8415A31 - thumb_func_end sub_80091B8 - - thumb_func_start sub_80091C0 -sub_80091C0: @ 80091C0 - ldr r0, _080091C4 @ =gUnknown_8415A43 - bx lr - .align 2, 0 -_080091C4: .4byte gUnknown_8415A43 - thumb_func_end sub_80091C0 - - thumb_func_start sub_80091C8 -sub_80091C8: @ 80091C8 - ldr r0, _080091CC @ =gUnknown_8415A3C - bx lr - .align 2, 0 -_080091CC: .4byte gUnknown_8415A3C - thumb_func_end sub_80091C8 - - thumb_func_start sub_80091D0 -sub_80091D0: @ 80091D0 - ldr r0, _080091D4 @ =gUnknown_8415A50 - bx lr - .align 2, 0 -_080091D4: .4byte gUnknown_8415A50 - thumb_func_end sub_80091D0 - - thumb_func_start sub_80091D8 -sub_80091D8: @ 80091D8 - ldr r0, _080091DC @ =gUnknown_8415A49 - bx lr - .align 2, 0 -_080091DC: .4byte gUnknown_8415A49 - thumb_func_end sub_80091D8 - - thumb_func_start GetExpandedPlaceholder -GetExpandedPlaceholder: @ 80091E0 - push {lr} - cmp r0, 0xD - bhi _080091F8 - ldr r1, _080091F4 @ =gUnknown_8231E70 - lsls r0, 2 - adds r0, r1 - ldr r0, [r0] - bl _call_via_r0 - b _080091FA - .align 2, 0 -_080091F4: .4byte gUnknown_8231E70 -_080091F8: - ldr r0, _08009200 @ =gUnknown_8415A20 -_080091FA: - pop {r1} - bx r1 - .align 2, 0 -_08009200: .4byte gUnknown_8415A20 - thumb_func_end GetExpandedPlaceholder - - thumb_func_start StringFill -StringFill: @ 8009204 - push {lr} - adds r3, r0, 0 - lsls r1, 24 - lsrs r1, 24 - lsls r2, 16 - lsrs r2, 16 - movs r0, 0 - cmp r0, r2 - bcs _08009224 -_08009216: - strb r1, [r3] - adds r3, 0x1 - adds r0, 0x1 - lsls r0, 16 - lsrs r0, 16 - cmp r0, r2 - bcc _08009216 -_08009224: - movs r0, 0xFF - strb r0, [r3] - adds r0, r3, 0 - pop {r1} - bx r1 - thumb_func_end StringFill - - thumb_func_start StringCopyPadded -StringCopyPadded: @ 8009230 - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - lsls r2, 24 - lsrs r2, 24 - lsls r3, 16 - lsrs r3, 16 - b _08009250 -_08009240: - strb r1, [r4] - adds r5, 0x1 - adds r4, 0x1 - cmp r3, 0 - beq _08009250 - subs r0, r3, 0x1 - lsls r0, 16 - lsrs r3, r0, 16 -_08009250: - ldrb r1, [r5] - adds r0, r1, 0 - cmp r0, 0xFF - bne _08009240 - subs r0, r3, 0x1 - lsls r0, 16 - lsrs r3, r0, 16 - ldr r0, _08009280 @ =0x0000ffff - cmp r3, r0 - beq _08009274 - adds r1, r0, 0 -_08009266: - strb r2, [r4] - adds r4, 0x1 - subs r0, r3, 0x1 - lsls r0, 16 - lsrs r3, r0, 16 - cmp r3, r1 - bne _08009266 -_08009274: - movs r0, 0xFF - strb r0, [r4] - adds r0, r4, 0 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_08009280: .4byte 0x0000ffff - thumb_func_end StringCopyPadded - - thumb_func_start StringFillWithTerminator -StringFillWithTerminator: @ 8009284 - push {lr} - lsls r2, r1, 16 - lsrs r2, 16 - movs r1, 0xFF - bl StringFill - pop {r1} - bx r1 - thumb_func_end StringFillWithTerminator - - thumb_func_start StringCopyN_Multibyte -StringCopyN_Multibyte: @ 8009294 - push {r4,r5,lr} - adds r4, r0, 0 - adds r3, r1, 0 - subs r2, 0x1 - movs r5, 0x1 - negs r5, r5 - b _080092BA -_080092A2: - strb r0, [r4] - adds r3, 0x1 - adds r4, 0x1 - subs r0, r3, 0x1 - ldrb r0, [r0] - cmp r0, 0xF9 - bne _080092B8 - ldrb r0, [r3] - strb r0, [r4] - adds r3, 0x1 - adds r4, 0x1 -_080092B8: - subs r2, 0x1 -_080092BA: - cmp r2, r5 - beq _080092C6 - ldrb r0, [r3] - adds r1, r0, 0 - cmp r1, 0xFF - bne _080092A2 -_080092C6: - movs r0, 0xFF - strb r0, [r4] - adds r0, r4, 0 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end StringCopyN_Multibyte - - thumb_func_start StringLength_Multibyte -StringLength_Multibyte: @ 80092D4 - push {lr} - adds r2, r0, 0 - movs r3, 0 - b _080092E6 -_080092DC: - cmp r1, 0xF9 - bne _080092E2 - adds r2, 0x1 -_080092E2: - adds r2, 0x1 - adds r3, 0x1 -_080092E6: - ldrb r1, [r2] - adds r0, r1, 0 - cmp r0, 0xFF - bne _080092DC - adds r0, r3, 0 - pop {r1} - bx r1 - thumb_func_end StringLength_Multibyte - - thumb_func_start WriteColorChangeControlCode -WriteColorChangeControlCode: @ 80092F4 - push {lr} - adds r3, r0, 0 - lsls r2, 24 - lsrs r2, 24 - movs r0, 0xFC - strb r0, [r3] - adds r3, 0x1 - cmp r1, 0x1 - beq _08009316 - cmp r1, 0x1 - bcc _08009310 - cmp r1, 0x2 - beq _0800931C - b _08009320 -_08009310: - movs r0, 0x1 - strb r0, [r3] - b _0800931E -_08009316: - movs r0, 0x3 - strb r0, [r3] - b _0800931E -_0800931C: - strb r1, [r3] -_0800931E: - adds r3, 0x1 -_08009320: - strb r2, [r3] - adds r3, 0x1 - movs r0, 0xFF - strb r0, [r3] - adds r0, r3, 0 - pop {r1} - bx r1 - thumb_func_end WriteColorChangeControlCode - - thumb_func_start GetExtCtrlCodeLength -GetExtCtrlCodeLength: @ 8009330 - push {lr} - lsls r0, 24 - lsrs r1, r0, 24 - movs r0, 0 - cmp r1, 0x18 - bhi _08009342 - ldr r0, _08009348 @ =gUnknown_8231EA8 - adds r0, r1, r0 - ldrb r0, [r0] -_08009342: - pop {r1} - bx r1 - .align 2, 0 -_08009348: .4byte gUnknown_8231EA8 - thumb_func_end GetExtCtrlCodeLength - - thumb_func_start SkipExtCtrlCode -SkipExtCtrlCode: @ 800934C - push {r4,lr} - adds r4, r0, 0 - b _08009360 -_08009352: - adds r4, 0x1 - ldrb r0, [r4] - bl GetExtCtrlCodeLength - lsls r0, 24 - lsrs r0, 24 - adds r4, r0 -_08009360: - ldrb r0, [r4] - cmp r0, 0xFC - beq _08009352 - adds r0, r4, 0 - pop {r4} - pop {r1} - bx r1 - thumb_func_end SkipExtCtrlCode - - thumb_func_start StringCompareWithoutExtCtrlCodes -StringCompareWithoutExtCtrlCodes: @ 8009370 - push {r4-r6,lr} - adds r4, r0, 0 - adds r5, r1, 0 - movs r6, 0 - b _08009392 -_0800937A: - cmp r1, r0 - bcs _08009388 - movs r6, 0x1 - negs r6, r6 - cmp r0, 0xFF - bne _08009388 - movs r6, 0x1 -_08009388: - ldrb r0, [r4] - cmp r0, 0xFF - beq _080093B2 - adds r4, 0x1 - adds r5, 0x1 -_08009392: - adds r0, r4, 0 - bl SkipExtCtrlCode - adds r4, r0, 0 - adds r0, r5, 0 - bl SkipExtCtrlCode - adds r5, r0, 0 - ldrb r1, [r4] - ldrb r0, [r5] - cmp r1, r0 - bls _0800937A - movs r6, 0x1 - cmp r1, 0xFF - bne _080093B2 - subs r6, 0x2 -_080093B2: - adds r0, r6, 0 - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end StringCompareWithoutExtCtrlCodes - - thumb_func_start ConvertInternationalString -ConvertInternationalString: @ 80093BC - push {r4,lr} - adds r4, r0, 0 - lsls r1, 24 - lsrs r1, 24 - cmp r1, 0x1 - bne _0800941C - bl StripExtCtrlCodes - adds r0, r4, 0 - bl StringLength - lsls r0, 24 - lsrs r2, r0, 24 - adds r1, r2, 0 - adds r0, r1, 0x1 - lsls r0, 24 - lsrs r2, r0, 24 - adds r3, r2, 0 - adds r1, r4, r1 - movs r0, 0xFC - strb r0, [r1] - adds r0, r3, 0x1 - lsls r0, 24 - lsrs r2, r0, 24 - adds r3, r4, r3 - movs r0, 0x16 - strb r0, [r3] - adds r0, r2, 0x1 - lsls r0, 24 - adds r2, r4, r2 - movs r1, 0xFF - strb r1, [r2] - movs r1, 0xFF - lsls r1, 24 - adds r0, r1 - b _0800940E -_08009404: - adds r1, r2, r4 - ldrb r0, [r1] - strb r0, [r1, 0x2] - subs r0, r2, 0x1 - lsls r0, 24 -_0800940E: - lsrs r2, r0, 24 - cmp r2, 0xFF - bne _08009404 - movs r0, 0xFC - strb r0, [r4] - movs r0, 0x15 - strb r0, [r4, 0x1] -_0800941C: - pop {r4} - pop {r0} - bx r0 - thumb_func_end ConvertInternationalString - - thumb_func_start StripExtCtrlCodes -StripExtCtrlCodes: @ 8009424 - push {r4-r6,lr} - adds r5, r0, 0 - movs r4, 0 - movs r6, 0 - ldrb r0, [r5] - cmp r0, 0xFF - beq _08009474 -_08009432: - adds r0, r5, r4 - ldrb r0, [r0] - cmp r0, 0xFC - bne _08009454 - adds r0, r4, 0x1 - lsls r0, 16 - lsrs r4, r0, 16 - adds r0, r5, r4 - ldrb r0, [r0] - bl GetExtCtrlCodeLength - lsls r0, 24 - lsrs r0, 24 - adds r0, r4, r0 - lsls r0, 16 - lsrs r4, r0, 16 - b _0800946C -_08009454: - adds r2, r6, 0 - adds r0, r2, 0x1 - lsls r0, 16 - lsrs r6, r0, 16 - adds r2, r5, r2 - adds r1, r4, 0 - adds r0, r1, 0x1 - lsls r0, 16 - lsrs r4, r0, 16 - adds r1, r5, r1 - ldrb r0, [r1] - strb r0, [r2] -_0800946C: - adds r0, r5, r4 - ldrb r0, [r0] - cmp r0, 0xFF - bne _08009432 -_08009474: - adds r1, r5, r6 - movs r0, 0xFF - strb r0, [r1] - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end StripExtCtrlCodes - - .align 2, 0 @ Don't pad with nop. |