diff options
author | PikalaxALT <pikalax1@gmail.com> | 2017-05-16 13:40:50 -0400 |
---|---|---|
committer | PikalaxALT <pikalax1@gmail.com> | 2017-05-16 13:40:50 -0400 |
commit | 0c82a4aaab1bff5f4893c2e116a5a68112edc36a (patch) | |
tree | 0c093d86888666dc831b62a3d67eb23cba082e92 | |
parent | f9893ea59564835ebf8560b40928e19bfbdcc39d (diff) |
get sub_80BB970 matching
-rw-r--r-- | include/global.fieldmap.h | 4 | ||||
-rwxr-xr-x | src/secret_base_80bb4ac.c | 95 |
2 files changed, 4 insertions, 95 deletions
diff --git a/include/global.fieldmap.h b/include/global.fieldmap.h index 508d7e4ed..0b72bbec5 100644 --- a/include/global.fieldmap.h +++ b/include/global.fieldmap.h @@ -104,7 +104,7 @@ struct CoordEvent struct BgEvent { - s16 x, y; + u16 x, y; u8 unk4; u8 kind; // 0x2 padding for the union beginning. @@ -119,7 +119,7 @@ struct BgEvent } hiddenItem; // secret base type - u16 secretBaseId; + u32 secretBaseId; } bgUnion; }; diff --git a/src/secret_base_80bb4ac.c b/src/secret_base_80bb4ac.c index 14ceb5d84..f618b1bba 100755 --- a/src/secret_base_80bb4ac.c +++ b/src/secret_base_80bb4ac.c @@ -172,7 +172,6 @@ void sub_80BB8CC(void) { VarSet(VAR_SECRET_BASE_MAP, gMapHeader.name); } -#ifdef NONMATCHING void sub_80BB970(struct MapEvents *events) { u16 bgevidx, idx, jdx; s16 tile_id; @@ -183,103 +182,13 @@ void sub_80BB970(struct MapEvents *events) { tile_id = MapGridGetMetatileIdAt(events->bgEvents[bgevidx].x + 7, events->bgEvents[bgevidx].y + 7); for (idx=0; idx<7; idx++) { if (gUnknown_083D1358[idx].unk_083D1358_0 == tile_id) { - MapGridSetMetatileIdAt((events->bgEvents[bgevidx].x + 7), (events->bgEvents[bgevidx].y + 7), gUnknown_083D1358[idx].unk_083D1358_1 | 0xc00); + MapGridSetMetatileIdAt(events->bgEvents[bgevidx].x + 7, events->bgEvents[bgevidx].y + 7, gUnknown_083D1358[idx].unk_083D1358_1 | 0xc00); break; } } + break; } - break; } } } } -#else -__attribute__((naked)) -void sub_80BB970(struct MapEvents *events) { - asm(".syntax unified\n\ - push {r4-r7,lr}\n\ - adds r5, r0, 0\n\ - movs r2, 0\n\ - b _080BBA06\n\ - _080BB978:\n\ - ldr r0, [r5, 0x10]\n\ - lsls r1, r2, 1\n\ - adds r1, r2\n\ - lsls r1, 2\n\ - adds r3, r1, r0\n\ - ldrb r0, [r3, 0x5]\n\ - adds r7, r2, 0x1\n\ - cmp r0, 0x8\n\ - bne _080BBA02\n\ - movs r2, 0\n\ - ldr r4, _080BB9E0 @ =gSaveBlock1\n\ - adds r6, r1, 0\n\ - _080BB990:\n\ - lsls r0, r2, 2\n\ - adds r0, r2\n\ - lsls r0, 5\n\ - adds r0, r4\n\ - ldr r1, _080BB9E4 @ =0x00001a08\n\ - adds r0, r1\n\ - ldrb r1, [r0]\n\ - ldr r0, [r3, 0x8]\n\ - cmp r1, r0\n\ - bne _080BB9F8\n\ - ldrh r0, [r3]\n\ - adds r0, 0x7\n\ - ldrh r1, [r3, 0x2]\n\ - adds r1, 0x7\n\ - bl MapGridGetMetatileIdAt\n\ - movs r3, 0\n\ - lsls r0, 16\n\ - asrs r4, r0, 16\n\ - _080BB9B6:\n\ - ldr r0, _080BB9E8 @ =gUnknown_083D1358\n\ - lsls r1, r3, 2\n\ - adds r2, r1, r0\n\ - ldrh r0, [r2]\n\ - cmp r0, r4\n\ - bne _080BB9EC\n\ - ldr r1, [r5, 0x10]\n\ - adds r1, r6, r1\n\ - ldrh r0, [r1]\n\ - adds r0, 0x7\n\ - ldrh r1, [r1, 0x2]\n\ - adds r1, 0x7\n\ - ldrh r3, [r2, 0x2]\n\ - movs r4, 0xC0\n\ - lsls r4, 4\n\ - adds r2, r4, 0\n\ - orrs r2, r3\n\ - bl MapGridSetMetatileIdAt\n\ - b _080BBA02\n\ - .align 2, 0\n\ - _080BB9E0: .4byte gSaveBlock1\n\ - _080BB9E4: .4byte 0x00001a08\n\ - _080BB9E8: .4byte gUnknown_083D1358\n\ - _080BB9EC:\n\ - adds r0, r3, 0x1\n\ - lsls r0, 16\n\ - lsrs r3, r0, 16\n\ - cmp r3, 0x6\n\ - bls _080BB9B6\n\ - b _080BBA02\n\ - _080BB9F8:\n\ - adds r0, r2, 0x1\n\ - lsls r0, 16\n\ - lsrs r2, r0, 16\n\ - cmp r2, 0x13\n\ - bls _080BB990\n\ - _080BBA02:\n\ - lsls r0, r7, 16\n\ - lsrs r2, r0, 16\n\ - _080BBA06:\n\ - ldrb r0, [r5, 0x3]\n\ - cmp r2, r0\n\ - bcc _080BB978\n\ - pop {r4-r7}\n\ - pop {r0}\n\ - bx r0\n\ - .syntax divided\n"); -} -#endif |