diff options
author | DizzyEggg <jajkodizzy@wp.pl> | 2018-02-18 19:12:09 +0100 |
---|---|---|
committer | DizzyEggg <jajkodizzy@wp.pl> | 2018-02-18 19:12:09 +0100 |
commit | d7c486aa18a77b62aeb8c78a7d71bef9ba7edf8c (patch) | |
tree | c2a71dcad2005066be275f500a5f16fd9434a987 /src/decoration.c | |
parent | ef3a7a06b4e6192a6072b4ab221a54484bee91dc (diff) |
match some functions
Diffstat (limited to 'src/decoration.c')
-rw-r--r-- | src/decoration.c | 111 |
1 files changed, 13 insertions, 98 deletions
diff --git a/src/decoration.c b/src/decoration.c index c1b12a4d3..e4d867a34 100644 --- a/src/decoration.c +++ b/src/decoration.c @@ -2507,30 +2507,27 @@ void sub_812A040(u8 left, u8 top, u8 right, u8 bottom) } } -#ifdef NONMATCHING void sub_812A0E8(u8 taskId) { u8 i; u8 xOff; u8 yOff; - u8 decor; - register u8 decor asm("r1"); - struct DecorRearrangementDataBuffer *data; + u8 var1; + u32 var2; sCurDecorSelectedInRearrangement = 0; if (sub_8129FC8(taskId) != TRUE) { - for (i = 0; i < gUnknown_0203A17C.size; i ++) + for (i = 0; i < gUnknown_0203A17C.size; i++) { - decor = gUnknown_0203A17C.items[i]; - if (decor != DECOR_NONE) + var1 = gUnknown_0203A17C.items[i]; + if (var1 != DECOR_NONE) { - data = &sDecorRearrangementDataBuffer[0]; - sub_8129D8C(decor, data); - if (sub_8129E74(taskId, i, data) == TRUE) + sub_8129D8C(var1, &sDecorRearrangementDataBuffer[0]); + if (sub_8129E74(taskId, i, &sDecorRearrangementDataBuffer[0]) == TRUE) { - data->idx = i; - sCurDecorSelectedInRearrangement ++; + sDecorRearrangementDataBuffer[0].idx = i; + sCurDecorSelectedInRearrangement++; break; } } @@ -2539,95 +2536,13 @@ void sub_812A0E8(u8 taskId) { xOff = gUnknown_0203A17C.pos[sDecorRearrangementDataBuffer[0].idx] >> 4; yOff = gUnknown_0203A17C.pos[sDecorRearrangementDataBuffer[0].idx] & 0x0F; - sub_812A040(xOff, yOff - sDecorRearrangementDataBuffer[0].height + 1, xOff + sDecorRearrangementDataBuffer[0].width - 1, yOff); // Arithmetic register swap at the r2 argument: `add r2, r0, r2` instead of `add r2, r2, r0` + var1 = yOff - sDecorRearrangementDataBuffer[0].height + 1; + var2 = sDecorRearrangementDataBuffer[0].width + xOff - 1; + + sub_812A040(xOff, var1, var2, yOff); } } } -#else -ASM_DIRECT void sub_812A0E8(u8 taskId) -{ - asm_unified("\tpush {r4-r7,lr}\n" - "\tlsls r0, 24\n" - "\tlsrs r6, r0, 24\n" - "\tldr r4, =sCurDecorSelectedInRearrangement\n" - "\tmovs r0, 0\n" - "\tstrb r0, [r4]\n" - "\tadds r0, r6, 0\n" - "\tbl sub_8129FC8\n" - "\tlsls r0, 24\n" - "\tlsrs r0, 24\n" - "\tcmp r0, 0x1\n" - "\tbeq _0812A18C\n" - "\tmovs r5, 0\n" - "\tldr r0, =gUnknown_0203A17C\n" - "\tldrb r1, [r0, 0x8]\n" - "\tcmp r5, r1\n" - "\tbcs _0812A15A\n" - "\tadds r7, r4, 0\n" - "_0812A10E:\n" - "\tldr r0, [r0]\n" - "\tadds r0, r5\n" - "\tldrb r1, [r0]\n" - "\tcmp r1, 0\n" - "\tbeq _0812A14C\n" - "\tldr r4, =sDecorRearrangementDataBuffer\n" - "\tadds r0, r1, 0\n" - "\tadds r1, r4, 0\n" - "\tbl sub_8129D8C\n" - "\tadds r0, r6, 0\n" - "\tadds r1, r5, 0\n" - "\tadds r2, r4, 0\n" - "\tbl sub_8129E74\n" - "\tlsls r0, 24\n" - "\tlsrs r0, 24\n" - "\tcmp r0, 0x1\n" - "\tbne _0812A14C\n" - "\tstrb r5, [r4]\n" - "\tldrb r0, [r7]\n" - "\tadds r0, 0x1\n" - "\tstrb r0, [r7]\n" - "\tb _0812A15A\n" - "\t.pool\n" - "_0812A14C:\n" - "\tadds r0, r5, 0x1\n" - "\tlsls r0, 24\n" - "\tlsrs r5, r0, 24\n" - "\tldr r0, =gUnknown_0203A17C\n" - "\tldrb r1, [r0, 0x8]\n" - "\tcmp r5, r1\n" - "\tbcc _0812A10E\n" - "_0812A15A:\n" - "\tldr r0, =sCurDecorSelectedInRearrangement\n" - "\tldrb r0, [r0]\n" - "\tcmp r0, 0\n" - "\tbeq _0812A18C\n" - "\tldr r0, =gUnknown_0203A17C\n" - "\tldr r2, =sDecorRearrangementDataBuffer\n" - "\tldrb r1, [r2]\n" - "\tldr r0, [r0, 0x4]\n" - "\tadds r0, r1\n" - "\tldrb r1, [r0]\n" - "\tlsrs r0, r1, 4\n" - "\tmovs r3, 0xF\n" - "\tands r3, r1\n" - "\tldrb r1, [r2, 0x2]\n" - "\tsubs r1, r3, r1\n" - "\tadds r1, 0x1\n" - "\tlsls r1, 24\n" - "\tlsrs r1, 24\n" - "\tldrb r2, [r2, 0x1]\n" - "\tadds r2, r0\n" - "\tsubs r2, 0x1\n" - "\tlsls r2, 24\n" - "\tlsrs r2, 24\n" - "\tbl sub_812A040\n" - "_0812A18C:\n" - "\tpop {r4-r7}\n" - "\tpop {r0}\n" - "\tbx r0\n" - "\t.pool"); -} -#endif void sub_812A1A0(u8 taskId) { |