Complete decomp of quest_log
This commit is contained in:
-367
@@ -1,367 +0,0 @@
|
||||
.include "asm/macros.inc"
|
||||
.include "constants/constants.inc"
|
||||
|
||||
.syntax unified
|
||||
|
||||
.text
|
||||
|
||||
thumb_func_start sub_81155A4
|
||||
sub_81155A4: @ 81155A4
|
||||
push {r4,lr}
|
||||
adds r2, r0, 0
|
||||
adds r4, r1, 0
|
||||
movs r0, 0x26
|
||||
adds r1, r2, 0
|
||||
bl sub_8113DE0
|
||||
adds r2, r0, 0
|
||||
cmp r2, 0
|
||||
beq _081155D6
|
||||
ldrh r0, [r4, 0x4]
|
||||
strh r0, [r2]
|
||||
ldrh r0, [r4, 0x6]
|
||||
strh r0, [r2, 0x2]
|
||||
ldr r1, [r4]
|
||||
lsrs r0, r1, 16
|
||||
strh r0, [r2, 0x4]
|
||||
strh r1, [r2, 0x6]
|
||||
ldrb r0, [r4, 0x8]
|
||||
strb r0, [r2, 0x8]
|
||||
ldrb r0, [r4, 0x9]
|
||||
strb r0, [r2, 0x9]
|
||||
adds r0, r2, 0
|
||||
adds r0, 0xA
|
||||
b _081155D8
|
||||
_081155D6:
|
||||
movs r0, 0
|
||||
_081155D8:
|
||||
pop {r4}
|
||||
pop {r1}
|
||||
bx r1
|
||||
thumb_func_end sub_81155A4
|
||||
|
||||
thumb_func_start sub_81155E0
|
||||
sub_81155E0: @ 81155E0
|
||||
push {r4-r7,lr}
|
||||
adds r1, r0, 0
|
||||
movs r0, 0x26
|
||||
bl sub_8113E88
|
||||
adds r5, r0, 0
|
||||
adds r7, r5, 0
|
||||
adds r7, 0x8
|
||||
ldrh r0, [r5, 0x4]
|
||||
lsls r0, 16
|
||||
ldrh r1, [r5, 0x6]
|
||||
adds r6, r0, r1
|
||||
bl UnkTextUtil_Reset
|
||||
ldr r4, _0811563C @ =gStringVar1
|
||||
ldrb r1, [r5, 0x8]
|
||||
adds r0, r4, 0
|
||||
bl sub_80C4DF8
|
||||
ldrb r0, [r7, 0x1]
|
||||
cmp r0, 0
|
||||
bne _08115690
|
||||
ldr r0, _08115640 @ =gSaveBlock2Ptr
|
||||
ldr r1, [r0]
|
||||
movs r0, 0
|
||||
bl UnkTextUtil_SetPtrI
|
||||
movs r0, 0x1
|
||||
adds r1, r4, 0
|
||||
bl UnkTextUtil_SetPtrI
|
||||
ldrh r0, [r5]
|
||||
bl ItemId_GetItem
|
||||
adds r1, r0, 0
|
||||
movs r0, 0x2
|
||||
bl UnkTextUtil_SetPtrI
|
||||
ldrh r0, [r5, 0x2]
|
||||
cmp r0, 0x1
|
||||
bne _08115648
|
||||
ldr r1, _08115644 @ =gUnknown_841A8D4
|
||||
movs r0, 0x3
|
||||
bl UnkTextUtil_SetPtrI
|
||||
b _08115670
|
||||
.align 2, 0
|
||||
_0811563C: .4byte gStringVar1
|
||||
_08115640: .4byte gSaveBlock2Ptr
|
||||
_08115644: .4byte gUnknown_841A8D4
|
||||
_08115648:
|
||||
ldr r4, _0811567C @ =gStringVar2
|
||||
ldrh r1, [r5, 0x2]
|
||||
adds r0, r4, 0
|
||||
movs r2, 0
|
||||
movs r3, 0x3
|
||||
bl ConvertIntToDecimalStringN
|
||||
movs r0, 0x4
|
||||
adds r1, r4, 0
|
||||
bl UnkTextUtil_SetPtrI
|
||||
ldr r4, _08115680 @ =gStringVar3
|
||||
ldr r1, _08115684 @ =gUnknown_841A8DD
|
||||
adds r0, r4, 0
|
||||
bl UnkTextUtil_StringExpandPlaceholders
|
||||
movs r0, 0x3
|
||||
adds r1, r4, 0
|
||||
bl UnkTextUtil_SetPtrI
|
||||
_08115670:
|
||||
ldr r0, _08115688 @ =gStringVar4
|
||||
ldr r1, _0811568C @ =gUnknown_841A858
|
||||
bl UnkTextUtil_StringExpandPlaceholders
|
||||
b _081156C4
|
||||
.align 2, 0
|
||||
_0811567C: .4byte gStringVar2
|
||||
_08115680: .4byte gStringVar3
|
||||
_08115684: .4byte gUnknown_841A8DD
|
||||
_08115688: .4byte gStringVar4
|
||||
_0811568C: .4byte gUnknown_841A858
|
||||
_08115690:
|
||||
movs r0, 0
|
||||
adds r1, r4, 0
|
||||
bl UnkTextUtil_SetPtrI
|
||||
ldrh r0, [r5]
|
||||
bl ItemId_GetItem
|
||||
adds r1, r0, 0
|
||||
movs r0, 0x1
|
||||
bl UnkTextUtil_SetPtrI
|
||||
ldr r4, _081156CC @ =gStringVar2
|
||||
adds r0, r4, 0
|
||||
adds r1, r6, 0
|
||||
movs r2, 0
|
||||
movs r3, 0x6
|
||||
bl ConvertIntToDecimalStringN
|
||||
movs r0, 0x2
|
||||
adds r1, r4, 0
|
||||
bl UnkTextUtil_SetPtrI
|
||||
ldr r0, _081156D0 @ =gStringVar4
|
||||
ldr r1, _081156D4 @ =gUnknown_841A896
|
||||
bl UnkTextUtil_StringExpandPlaceholders
|
||||
_081156C4:
|
||||
adds r0, r7, 0x2
|
||||
pop {r4-r7}
|
||||
pop {r1}
|
||||
bx r1
|
||||
.align 2, 0
|
||||
_081156CC: .4byte gStringVar2
|
||||
_081156D0: .4byte gStringVar4
|
||||
_081156D4: .4byte gUnknown_841A896
|
||||
thumb_func_end sub_81155E0
|
||||
|
||||
thumb_func_start sub_81156D8
|
||||
sub_81156D8: @ 81156D8
|
||||
push {r4,lr}
|
||||
adds r2, r0, 0
|
||||
adds r4, r1, 0
|
||||
movs r0, 0x28
|
||||
adds r1, r2, 0
|
||||
bl sub_8113DE0
|
||||
adds r2, r0, 0
|
||||
cmp r2, 0
|
||||
beq _081156F8
|
||||
ldrh r0, [r4]
|
||||
strh r0, [r2]
|
||||
ldrb r0, [r4, 0x2]
|
||||
strb r0, [r2, 0x2]
|
||||
adds r0, r2, 0x4
|
||||
b _081156FA
|
||||
_081156F8:
|
||||
movs r0, 0
|
||||
_081156FA:
|
||||
pop {r4}
|
||||
pop {r1}
|
||||
bx r1
|
||||
thumb_func_end sub_81156D8
|
||||
|
||||
thumb_func_start sub_8115700
|
||||
sub_8115700: @ 8115700
|
||||
push {r4-r6,lr}
|
||||
adds r1, r0, 0
|
||||
movs r0, 0x28
|
||||
bl sub_8113E88
|
||||
adds r4, r0, 0
|
||||
adds r5, r4, 0x2
|
||||
ldr r0, _08115738 @ =gStringVar1
|
||||
ldrb r1, [r4, 0x2]
|
||||
bl sub_80C4DF8
|
||||
ldr r6, _0811573C @ =gStringVar2
|
||||
ldrh r0, [r4]
|
||||
bl ItemId_GetItem
|
||||
adds r1, r0, 0
|
||||
adds r0, r6, 0
|
||||
bl StringCopy
|
||||
ldr r0, _08115740 @ =gStringVar4
|
||||
ldr r1, _08115744 @ =gUnknown_841B03F
|
||||
bl StringExpandPlaceholders
|
||||
adds r5, 0x2
|
||||
adds r0, r5, 0
|
||||
pop {r4-r6}
|
||||
pop {r1}
|
||||
bx r1
|
||||
.align 2, 0
|
||||
_08115738: .4byte gStringVar1
|
||||
_0811573C: .4byte gStringVar2
|
||||
_08115740: .4byte gStringVar4
|
||||
_08115744: .4byte gUnknown_841B03F
|
||||
thumb_func_end sub_8115700
|
||||
|
||||
thumb_func_start sub_8115748
|
||||
sub_8115748: @ 8115748
|
||||
push {r4,lr}
|
||||
lsls r0, 16
|
||||
lsrs r2, r0, 16
|
||||
ldr r0, _08115764 @ =gUnknown_203ADFA
|
||||
ldrb r0, [r0]
|
||||
subs r0, 0x2
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
cmp r0, 0x1
|
||||
bls _08115792
|
||||
movs r1, 0
|
||||
ldr r4, _08115768 @ =gUnknown_203B049
|
||||
ldr r0, _0811576C @ =gUnknown_8456C50
|
||||
b _08115778
|
||||
.align 2, 0
|
||||
_08115764: .4byte gUnknown_203ADFA
|
||||
_08115768: .4byte gUnknown_203B049
|
||||
_0811576C: .4byte gUnknown_8456C50
|
||||
_08115770:
|
||||
movs r0, 0
|
||||
b _08115790
|
||||
_08115774:
|
||||
adds r0, 0x2
|
||||
adds r1, 0x1
|
||||
_08115778:
|
||||
cmp r1, 0x10
|
||||
bgt _08115792
|
||||
ldrh r3, [r0]
|
||||
cmp r2, r3
|
||||
bne _08115774
|
||||
adds r0, r2, 0
|
||||
bl FlagGet
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _08115770
|
||||
movs r0, 0x1
|
||||
_08115790:
|
||||
strb r0, [r4]
|
||||
_08115792:
|
||||
pop {r4}
|
||||
pop {r0}
|
||||
bx r0
|
||||
thumb_func_end sub_8115748
|
||||
|
||||
thumb_func_start sub_8115798
|
||||
sub_8115798: @ 8115798
|
||||
push {r4,lr}
|
||||
sub sp, 0x4
|
||||
ldr r0, _081157D0 @ =gUnknown_203ADFA
|
||||
ldrb r0, [r0]
|
||||
subs r0, 0x2
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
cmp r0, 0x1
|
||||
bls _081157C6
|
||||
ldr r4, _081157D4 @ =gUnknown_203B049
|
||||
ldrb r0, [r4]
|
||||
cmp r0, 0
|
||||
beq _081157C6
|
||||
ldr r0, _081157D8 @ =gMapHeader
|
||||
ldrb r1, [r0, 0x14]
|
||||
mov r0, sp
|
||||
strh r1, [r0]
|
||||
movs r0, 0x2A
|
||||
mov r1, sp
|
||||
bl sub_8113550
|
||||
movs r0, 0
|
||||
strb r0, [r4]
|
||||
_081157C6:
|
||||
add sp, 0x4
|
||||
pop {r4}
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_081157D0: .4byte gUnknown_203ADFA
|
||||
_081157D4: .4byte gUnknown_203B049
|
||||
_081157D8: .4byte gMapHeader
|
||||
thumb_func_end sub_8115798
|
||||
|
||||
thumb_func_start sub_81157DC
|
||||
sub_81157DC: @ 81157DC
|
||||
push {r4,lr}
|
||||
adds r2, r0, 0
|
||||
adds r4, r1, 0
|
||||
movs r0, 0x2A
|
||||
adds r1, r2, 0
|
||||
bl sub_8113DE0
|
||||
adds r2, r0, 0
|
||||
cmp r2, 0
|
||||
beq _081157F8
|
||||
ldrh r0, [r4]
|
||||
strh r0, [r2]
|
||||
adds r0, r2, 0x2
|
||||
b _081157FA
|
||||
_081157F8:
|
||||
movs r0, 0
|
||||
_081157FA:
|
||||
pop {r4}
|
||||
pop {r1}
|
||||
bx r1
|
||||
thumb_func_end sub_81157DC
|
||||
|
||||
thumb_func_start sub_8115800
|
||||
sub_8115800: @ 8115800
|
||||
push {r4,lr}
|
||||
adds r1, r0, 0
|
||||
movs r0, 0x2A
|
||||
bl sub_8113E88
|
||||
adds r4, r0, 0
|
||||
ldr r0, _08115828 @ =gStringVar1
|
||||
ldrb r1, [r4]
|
||||
bl sub_80C4DF8
|
||||
ldr r0, _0811582C @ =gStringVar4
|
||||
ldr r1, _08115830 @ =gUnknown_841B064
|
||||
bl StringExpandPlaceholders
|
||||
adds r4, 0x2
|
||||
adds r0, r4, 0
|
||||
pop {r4}
|
||||
pop {r1}
|
||||
bx r1
|
||||
.align 2, 0
|
||||
_08115828: .4byte gStringVar1
|
||||
_0811582C: .4byte gStringVar4
|
||||
_08115830: .4byte gUnknown_841B064
|
||||
thumb_func_end sub_8115800
|
||||
|
||||
thumb_func_start sub_8115834
|
||||
sub_8115834: @ 8115834
|
||||
push {lr}
|
||||
adds r1, r0, 0
|
||||
ldrb r0, [r1]
|
||||
adds r1, 0x1
|
||||
cmp r0, 0xFC
|
||||
bne _08115868
|
||||
ldrb r0, [r1]
|
||||
adds r1, 0x1
|
||||
cmp r0, 0x15
|
||||
bne _08115868
|
||||
movs r2, 0
|
||||
b _08115854
|
||||
_0811584C:
|
||||
adds r1, 0x1
|
||||
adds r2, 0x1
|
||||
cmp r2, 0x4
|
||||
bgt _0811585A
|
||||
_08115854:
|
||||
ldrb r0, [r1]
|
||||
cmp r0, 0xFC
|
||||
bne _0811584C
|
||||
_0811585A:
|
||||
movs r0, 0xFC
|
||||
strb r0, [r1]
|
||||
adds r1, 0x1
|
||||
movs r0, 0x16
|
||||
strb r0, [r1]
|
||||
movs r0, 0xFF
|
||||
strb r0, [r1, 0x1]
|
||||
_08115868:
|
||||
pop {r0}
|
||||
bx r0
|
||||
thumb_func_end sub_8115834
|
||||
|
||||
.align 2, 0 @ Don't pad with nop.
|
||||
@@ -220,7 +220,6 @@ SECTIONS {
|
||||
asm/mailbox_pc.o(.text);
|
||||
asm/menu.o(.text);
|
||||
src/quest_log.o(.text);
|
||||
asm/quest_log.o(.text);
|
||||
asm/link_rfu_3.o(.text);
|
||||
asm/pokemon_special_anim.o(.text);
|
||||
asm/party_menu.o(.text);
|
||||
|
||||
+179
-2
@@ -261,6 +261,8 @@ u16 * sub_81151C0(u16 *, const u16 *);
|
||||
const u16 * sub_81151DC(const u16 *);
|
||||
u16 * sub_8115280(u16 *, const u16 *);
|
||||
const u16 * sub_81152BC(const u16 *);
|
||||
bool8 sub_81153A8(u16, u16 *);
|
||||
bool8 sub_81153E4(u16, u16 *);
|
||||
u16 * sub_8115410(u16 *, const u16 *);
|
||||
const u16 * sub_8115460(const u16 *);
|
||||
u16 * sub_81154DC(u16 *, const u16 *);
|
||||
@@ -272,8 +274,6 @@ const u16 * sub_8115700(const u16 *);
|
||||
u16 * sub_81157DC(u16 *, const u16 *);
|
||||
const u16 * sub_8115800(const u16 *);
|
||||
void sub_8115834(u8 *);
|
||||
bool8 sub_81153A8(u16, u16 *);
|
||||
bool8 sub_81153E4(u16, u16 *);
|
||||
|
||||
extern const u8 gUnknown_841A155[];
|
||||
extern const u8 gUnknown_841A16F[];
|
||||
@@ -4829,6 +4829,72 @@ const u16 * sub_8115518(const u16 * a0)
|
||||
return (const u16 *)(r7 + 2);
|
||||
}
|
||||
|
||||
u16 * sub_81155A4(u16 * a0, const u16 * a1)
|
||||
{
|
||||
a0 = sub_8113DE0(38, a0);
|
||||
if (a0 == NULL)
|
||||
return NULL;
|
||||
a0[0] = a1[2];
|
||||
a0[1] = a1[3];
|
||||
a0[2] = *((const u32 *)a1) >> 16;
|
||||
a0[3] = *((const u32 *)a1);
|
||||
*((u8 *)a0 + 8) = *((const u8 *)a1 + 8);
|
||||
*((u8 *)a0 + 9) = *((const u8 *)a1 + 9);
|
||||
return a0 + 5;
|
||||
}
|
||||
|
||||
const u16 * sub_81155E0(const u16 * a0) {
|
||||
const u16 *r5 = sub_8113E88(38, a0);
|
||||
const u8 *r7 = (const u8 *) r5 + 8;
|
||||
u32 r6 = (r5[2] << 16) + r5[3];
|
||||
UnkTextUtil_Reset();
|
||||
sub_80C4DF8(gStringVar1, r7[0]);
|
||||
if (r7[1] == 0) {
|
||||
UnkTextUtil_SetPtrI(0, gSaveBlock2Ptr->playerName);
|
||||
UnkTextUtil_SetPtrI(1, gStringVar1);
|
||||
UnkTextUtil_SetPtrI(2, ItemId_GetItem(r5[0])->name);
|
||||
if (r5[1] == 1)
|
||||
UnkTextUtil_SetPtrI(3, gUnknown_841A8D4);
|
||||
else
|
||||
{
|
||||
ConvertIntToDecimalStringN(gStringVar2, r5[1], STR_CONV_MODE_LEFT_ALIGN, 3);
|
||||
UnkTextUtil_SetPtrI(4, gStringVar2);
|
||||
UnkTextUtil_StringExpandPlaceholders(gStringVar3, gUnknown_841A8DD);
|
||||
UnkTextUtil_SetPtrI(3, gStringVar3);
|
||||
}
|
||||
UnkTextUtil_StringExpandPlaceholders(gStringVar4, gUnknown_841A858);
|
||||
}
|
||||
else
|
||||
{
|
||||
UnkTextUtil_SetPtrI(0, gStringVar1);
|
||||
UnkTextUtil_SetPtrI(1, ItemId_GetItem(r5[0])->name);
|
||||
ConvertIntToDecimalStringN(gStringVar2, r6, STR_CONV_MODE_LEFT_ALIGN, 6);
|
||||
UnkTextUtil_SetPtrI(2, gStringVar2);
|
||||
UnkTextUtil_StringExpandPlaceholders(gStringVar4, gUnknown_841A896);
|
||||
}
|
||||
return (const u16 *)(r7 + 2);
|
||||
}
|
||||
|
||||
u16 * sub_81156D8(u16 * a0, const u16 * a1)
|
||||
{
|
||||
a0 = sub_8113DE0(40, a0);
|
||||
if (a0 == NULL)
|
||||
return NULL;
|
||||
a0[0] = a1[0];
|
||||
*((u8 *)a0 + 2) = *((const u8 *)a1 + 2);
|
||||
return a0 + 2;
|
||||
}
|
||||
|
||||
const u16 * sub_8115700(const u16 * a0)
|
||||
{
|
||||
const u16 * r4 = sub_8113E88(40, a0);
|
||||
const u8 * r5 = (const u8 *)r4 + 2;
|
||||
sub_80C4DF8(gStringVar1, r5[0]);
|
||||
StringCopy(gStringVar2, ItemId_GetItem(r4[0])->name);
|
||||
StringExpandPlaceholders(gStringVar4, gUnknown_841B03F);
|
||||
return (const u16 *)(r5 + 2);
|
||||
}
|
||||
|
||||
const u16 gUnknown_8456C50[] = {
|
||||
0x0891,
|
||||
0x0892,
|
||||
@@ -4848,3 +4914,114 @@ const u16 gUnknown_8456C50[] = {
|
||||
0x08a0,
|
||||
0x08a1
|
||||
};
|
||||
|
||||
#ifdef NONMATCHING
|
||||
void sub_8115748(u16 a0)
|
||||
{
|
||||
s32 i;
|
||||
if (gUnknown_203ADFA == 2 || gUnknown_203ADFA == 3)
|
||||
return;
|
||||
for (i = 0; i < 17; i++)
|
||||
{
|
||||
if (a0 != gUnknown_8456C50[i])
|
||||
continue;
|
||||
if (!FlagGet(a0))
|
||||
gUnknown_203B049 = TRUE;
|
||||
else
|
||||
gUnknown_203B049 = FALSE;
|
||||
break;
|
||||
}
|
||||
}
|
||||
#else
|
||||
NAKED
|
||||
void sub_8115748(u16 a0)
|
||||
{
|
||||
asm_unified("\tpush {r4,lr}\n"
|
||||
"\tlsls r0, 16\n"
|
||||
"\tlsrs r2, r0, 16\n"
|
||||
"\tldr r0, =gUnknown_203ADFA\n"
|
||||
"\tldrb r0, [r0]\n"
|
||||
"\tsubs r0, 0x2\n"
|
||||
"\tlsls r0, 24\n"
|
||||
"\tlsrs r0, 24\n"
|
||||
"\tcmp r0, 0x1\n"
|
||||
"\tbls _08115792\n"
|
||||
"\tmovs r1, 0\n"
|
||||
"\tldr r4, =gUnknown_203B049\n"
|
||||
"\tldr r0, =gUnknown_8456C50\n"
|
||||
"\tb _08115778\n"
|
||||
"\t.pool\n"
|
||||
"_08115770:\n"
|
||||
"\tmovs r0, 0\n"
|
||||
"\tb _08115790\n"
|
||||
"_08115774:\n"
|
||||
"\tadds r0, 0x2\n"
|
||||
"\tadds r1, 0x1\n"
|
||||
"_08115778:\n"
|
||||
"\tcmp r1, 0x10\n"
|
||||
"\tbgt _08115792\n"
|
||||
"\tldrh r3, [r0]\n"
|
||||
"\tcmp r2, r3\n"
|
||||
"\tbne _08115774\n"
|
||||
"\tadds r0, r2, 0\n"
|
||||
"\tbl FlagGet\n"
|
||||
"\tlsls r0, 24\n"
|
||||
"\tcmp r0, 0\n"
|
||||
"\tbne _08115770\n"
|
||||
"\tmovs r0, 0x1\n"
|
||||
"_08115790:\n"
|
||||
"\tstrb r0, [r4]\n"
|
||||
"_08115792:\n"
|
||||
"\tpop {r4}\n"
|
||||
"\tpop {r0}\n"
|
||||
"\tbx r0");
|
||||
}
|
||||
#endif // NONMATCHING
|
||||
|
||||
void sub_8115798(void)
|
||||
{
|
||||
u16 sp0;
|
||||
if (gUnknown_203ADFA != 2 && gUnknown_203ADFA != 3)
|
||||
{
|
||||
if (gUnknown_203B049)
|
||||
{
|
||||
sp0 = gMapHeader.regionMapSectionId;
|
||||
sub_8113550(42, &sp0);
|
||||
gUnknown_203B049 = FALSE;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
u16 * sub_81157DC(u16 * a0, const u16 * a1)
|
||||
{
|
||||
a0 = sub_8113DE0(42, a0);
|
||||
if (a0 == NULL)
|
||||
return NULL;
|
||||
a0[0] = a1[0];
|
||||
return a0 + 1;
|
||||
}
|
||||
|
||||
const u16 * sub_8115800(const u16 * a0)
|
||||
{
|
||||
const u16 * r4 = sub_8113E88(42, a0);
|
||||
sub_80C4DF8(gStringVar1, r4[0]);
|
||||
StringExpandPlaceholders(gStringVar4, gUnknown_841B064);
|
||||
return r4 + 1;
|
||||
}
|
||||
|
||||
void sub_8115834(u8 * a0)
|
||||
{
|
||||
s32 i;
|
||||
if (*a0++ == EXT_CTRL_CODE_BEGIN && *a0++ == EXT_CTRL_CODE_JPN)
|
||||
{
|
||||
for (i = 0; i < 5; i++)
|
||||
{
|
||||
if (*a0 == EXT_CTRL_CODE_BEGIN)
|
||||
break;
|
||||
a0++;
|
||||
}
|
||||
*a0++ = EXT_CTRL_CODE_BEGIN;
|
||||
*a0++ = EXT_CTRL_CODE_ENG;
|
||||
*a0++ = EOS;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user