diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/trade.c | 210 |
1 files changed, 14 insertions, 196 deletions
diff --git a/src/trade.c b/src/trade.c index a50024249..c5cde0b39 100644 --- a/src/trade.c +++ b/src/trade.c @@ -515,30 +515,31 @@ void sub_8047CE8(void) nullsub_5(3, 0); } -#ifdef NONMATCHING void sub_8047D58(void) { - u8 language; struct SpriteTemplate spriteTemplate; int i; - s16 x; u8 mpId; + u16 slen; + int language; - language = StringLength(gSaveBlock2.playerName) <= 5 ? 0 : 1; - for (i = 0, x = gTradeUnknownSpriteCoords[language][0][0]; i < 3; x += 32, i ++) + slen = StringLength(gSaveBlock2.playerName); + language = slen <= 5 ? 0 : 1; + for (i = 0; i < 3; i ++) { spriteTemplate = gSpriteTemplate_820C0EC; spriteTemplate.tileTag += i; - CreateSprite(&spriteTemplate, x, gTradeUnknownSpriteCoords[language][0][1], 1); + CreateSprite(&spriteTemplate, gTradeUnknownSpriteCoords[language][0][0] + 32 * i, gTradeUnknownSpriteCoords[language][0][1], 1); } mpId = GetMultiplayerId(); - language = StringLength(gLinkPlayers[mpId ^ 1].name) <= 5 ? 0 : 1; - for (i = 0, x = gTradeUnknownSpriteCoords[language][1][0]; i < 3; x += 32, i ++) + slen = StringLength(gLinkPlayers[mpId ^ 1].name); + language = slen <= 5 ? 0 : 1; + for (i = 0; i < 3; i ++) { spriteTemplate = gSpriteTemplate_820C0EC; spriteTemplate.tileTag += i + 3; - CreateSprite(&spriteTemplate, x, gTradeUnknownSpriteCoords[language][1][1], 1); + CreateSprite(&spriteTemplate, gTradeUnknownSpriteCoords[language][1][0] + 32 * i, gTradeUnknownSpriteCoords[language][1][1], 1); } nullsub_5(5, 0); } @@ -547,204 +548,21 @@ void sub_8047E44(void) { struct SpriteTemplate spriteTemplate; int i; - s16 x; - for (i = 0, x = 0xd6; i < 2; x += 32, i ++) + for (i = 0; i < 2; i ++) { spriteTemplate = gSpriteTemplate_820C0EC; spriteTemplate.tileTag += i + 6; - CreateSprite(&spriteTemplate, x, 0x98, 1); + CreateSprite(&spriteTemplate, 0xd6 + 32 * i, 0x98, 1); } - for (i = 0, x = 0x18; i < 5; x += 32, i ++) + for (i = 0; i < 5; i ++) { spriteTemplate = gSpriteTemplate_820C0EC; spriteTemplate.tileTag += i + 8; - CreateSprite(&spriteTemplate, x, 0x96, 1); + CreateSprite(&spriteTemplate, 0x18 + 32 * i, 0x96, 1); } } -#else -__attribute__((naked)) void sub_8047D58(void) -{ - asm_unified("\tpush {r4-r7,lr}\n" - "\tmov r7, r8\n" - "\tpush {r7}\n" - "\tsub sp, 0x18\n" - "\tldr r0, _08047E30 @ =gSaveBlock2\n" - "\tbl StringLength\n" - "\tlsls r0, 16\n" - "\tlsrs r0, 16\n" - "\tmovs r1, 0\n" - "\tcmp r0, 0x5\n" - "\tbls _08047D72\n" - "\tmovs r1, 0x1\n" - "_08047D72:\n" - "\tmovs r5, 0\n" - "\tlsls r2, r1, 2\n" - "\tmov r6, sp\n" - "\tldr r0, _08047E34 @ =gTradeUnknownSpriteCoords\n" - "\tadds r1, r0, 0x1\n" - "\tadds r1, r2\n" - "\tmov r8, r1\n" - "\tadds r0, r2, r0\n" - "\tldrb r0, [r0]\n" - "\tlsls r4, r0, 16\n" - "_08047D86:\n" - "\tmov r1, sp\n" - "\tldr r0, _08047E38 @ =gSpriteTemplate_820C0EC\n" - "\tldm r0!, {r2,r3,r7}\n" - "\tstm r1!, {r2,r3,r7}\n" - "\tldm r0!, {r2,r3,r7}\n" - "\tstm r1!, {r2,r3,r7}\n" - "\tldrh r0, [r6]\n" - "\tadds r0, r5\n" - "\tstrh r0, [r6]\n" - "\tasrs r1, r4, 16\n" - "\tmov r0, sp\n" - "\tmov r3, r8\n" - "\tldrb r2, [r3]\n" - "\tmovs r3, 0x1\n" - "\tbl CreateSprite\n" - "\tmovs r7, 0x80\n" - "\tlsls r7, 14\n" - "\tadds r4, r7\n" - "\tadds r5, 0x1\n" - "\tcmp r5, 0x2\n" - "\tble _08047D86\n" - "\tbl GetMultiplayerId\n" - "\tlsls r0, 24\n" - "\tmovs r1, 0x80\n" - "\tlsls r1, 17\n" - "\teors r1, r0\n" - "\tlsrs r1, 24\n" - "\tlsls r0, r1, 3\n" - "\tsubs r0, r1\n" - "\tlsls r0, 2\n" - "\tldr r1, _08047E3C @ =gLinkPlayers + 0x8\n" - "\tadds r0, r1\n" - "\tbl StringLength\n" - "\tlsls r0, 16\n" - "\tlsrs r0, 16\n" - "\tmovs r1, 0\n" - "\tcmp r0, 0x5\n" - "\tbls _08047DDA\n" - "\tmovs r1, 0x1\n" - "_08047DDA:\n" - "\tmovs r5, 0\n" - "\tlsls r2, r1, 2\n" - "\tmov r6, sp\n" - "\tldr r0, _08047E40 @ =gTradeUnknownSpriteCoords + 0x3\n" - "\tadds r1, r2, r0\n" - "\tmov r8, r1\n" - "\tsubs r0, 0x1\n" - "\tadds r0, r2, r0\n" - "\tldrb r0, [r0]\n" - "\tlsls r4, r0, 16\n" - "_08047DEE:\n" - "\tmov r1, sp\n" - "\tldr r0, _08047E38 @ =gSpriteTemplate_820C0EC\n" - "\tldm r0!, {r2,r3,r7}\n" - "\tstm r1!, {r2,r3,r7}\n" - "\tldm r0!, {r2,r3,r7}\n" - "\tstm r1!, {r2,r3,r7}\n" - "\tadds r0, r5, 0x3\n" - "\tldrh r1, [r6]\n" - "\tadds r0, r1\n" - "\tstrh r0, [r6]\n" - "\tasrs r1, r4, 16\n" - "\tmov r0, sp\n" - "\tmov r3, r8\n" - "\tldrb r2, [r3]\n" - "\tmovs r3, 0x1\n" - "\tbl CreateSprite\n" - "\tmovs r7, 0x80\n" - "\tlsls r7, 14\n" - "\tadds r4, r7\n" - "\tadds r5, 0x1\n" - "\tcmp r5, 0x2\n" - "\tble _08047DEE\n" - "\tmovs r0, 0x5\n" - "\tmovs r1, 0\n" - "\tbl nullsub_5\n" - "\tadd sp, 0x18\n" - "\tpop {r3}\n" - "\tmov r8, r3\n" - "\tpop {r4-r7}\n" - "\tpop {r0}\n" - "\tbx r0\n" - "\t.align 2, 0\n" - "_08047E30: .4byte gSaveBlock2\n" - "_08047E34: .4byte gTradeUnknownSpriteCoords\n" - "_08047E38: .4byte gSpriteTemplate_820C0EC\n" - "_08047E3C: .4byte gLinkPlayers + 0x8\n" - "_08047E40: .4byte gTradeUnknownSpriteCoords + 0x3"); -} - -__attribute__((naked)) void sub_8047E44(void) -{ - asm_unified("\tpush {r4-r7,lr}\n" - "\tsub sp, 0x18\n" - "\tmovs r4, 0\n" - "\tmov r5, sp\n" - "\tmovs r6, 0xD6\n" - "\tlsls r6, 16\n" - "_08047E50:\n" - "\tmov r1, sp\n" - "\tldr r0, _08047EBC @ =gSpriteTemplate_820C0EC\n" - "\tldm r0!, {r2,r3,r7}\n" - "\tstm r1!, {r2,r3,r7}\n" - "\tldm r0!, {r2,r3,r7}\n" - "\tstm r1!, {r2,r3,r7}\n" - "\tadds r0, r4, 0x6\n" - "\tldrh r1, [r5]\n" - "\tadds r0, r1\n" - "\tstrh r0, [r5]\n" - "\tasrs r1, r6, 16\n" - "\tmov r0, sp\n" - "\tmovs r2, 0x98\n" - "\tmovs r3, 0x1\n" - "\tbl CreateSprite\n" - "\tmovs r2, 0x80\n" - "\tlsls r2, 14\n" - "\tadds r6, r2\n" - "\tadds r4, 0x1\n" - "\tcmp r4, 0x1\n" - "\tble _08047E50\n" - "\tmovs r4, 0\n" - "\tmov r5, sp\n" - "\tmovs r6, 0xC0\n" - "\tlsls r6, 13\n" - "_08047E84:\n" - "\tmov r1, sp\n" - "\tldr r0, _08047EBC @ =gSpriteTemplate_820C0EC\n" - "\tldm r0!, {r2,r3,r7}\n" - "\tstm r1!, {r2,r3,r7}\n" - "\tldm r0!, {r2,r3,r7}\n" - "\tstm r1!, {r2,r3,r7}\n" - "\tadds r0, r4, 0\n" - "\tadds r0, 0x8\n" - "\tldrh r3, [r5]\n" - "\tadds r0, r3\n" - "\tstrh r0, [r5]\n" - "\tasrs r1, r6, 16\n" - "\tmov r0, sp\n" - "\tmovs r2, 0x96\n" - "\tmovs r3, 0x1\n" - "\tbl CreateSprite\n" - "\tmovs r7, 0x80\n" - "\tlsls r7, 14\n" - "\tadds r6, r7\n" - "\tadds r4, 0x1\n" - "\tcmp r4, 0x4\n" - "\tble _08047E84\n" - "\tadd sp, 0x18\n" - "\tpop {r4-r7}\n" - "\tpop {r0}\n" - "\tbx r0\n" - "\t.align 2, 0\n" - "_08047EBC: .4byte gSpriteTemplate_820C0EC"); -} -#endif void sub_8047EC0(void) { |