diff options
author | Seth Barberee <seth.barberee@gmail.com> | 2020-09-16 17:01:21 -0500 |
---|---|---|
committer | Seth Barberee <seth.barberee@gmail.com> | 2020-09-16 17:01:21 -0500 |
commit | ff099968a1e6f1e6ce7c4dbd7d6cf041caf33c55 (patch) | |
tree | 99a5d7291f6cadae94faf0d4ef63749c96cf0a09 /src/input.c | |
parent | 190c3562b9df62ab57297c46348f3739563c9868 (diff) |
nonmatching input be GONE. Just one func left
Diffstat (limited to 'src/input.c')
-rw-r--r-- | src/input.c | 208 |
1 files changed, 73 insertions, 135 deletions
diff --git a/src/input.c b/src/input.c index 9455eb2..99d894b 100644 --- a/src/input.c +++ b/src/input.c @@ -1,174 +1,73 @@ #include "global.h" #include "input.h" -extern struct Input gUnknown_2025600; -extern struct test gUnknown_20255F0; -extern struct test gUnknown_2025638; -extern struct test gUnknown_2025648; -extern struct test3 gUnknown_2025668; -extern u32 gUnknown_202562C; - -#ifndef NONMATCHING -NAKED -#endif +EWRAM_DATA struct Input gUnknown_2025600; +EWRAM_DATA struct UnkInputStruct1 gUnknown_20255F0; +EWRAM_DATA struct UnkInputStruct1 gUnknown_2025638; +EWRAM_DATA struct UnkInputStruct1 gUnknown_2025648; +EWRAM_DATA struct UnkInputStruct2 gUnknown_2025668; +EWRAM_DATA u32 gUnknown_202562C; + void InitInput(void) { -#ifdef NONMATCHING gUnknown_20255F0.unk0 = 0; - gUnknown_20255F0.unk1 = 0; gUnknown_20255F0.unk2 = 0; - gUnknown_20255F0.unk3 = 0; + gUnknown_20255F0.unk4 = 0; + gUnknown_20255F0.unk6 = 0; gUnknown_2025638.unk0 = 0; - gUnknown_2025638.unk1 = 0; gUnknown_2025638.unk2 = 0; - gUnknown_2025638.unk3 = 0; + gUnknown_2025638.unk4 = 0; + gUnknown_2025638.unk6 = 0; gUnknown_202562C = 4854977; // ????? (0x4a14c1) - gUnknown_2025600.unk16 = 0; // TODO: should be str but generates strh + gUnknown_2025600.unk20 = 0; gUnknown_2025600.unk0 = 0xffff; // probably a mask - gUnknown_2025600.unk1 = -1; gUnknown_2025600.unk2 = -1; - gUnknown_2025600.unk3 = -1; - gUnknown_2025600.unk14 = -1; - gUnknown_2025600.unk15 = -1; gUnknown_2025600.unk4 = -1; - gUnknown_2025600.unk5 = -1; gUnknown_2025600.unk6 = -1; - gUnknown_2025600.unk7 = -1; + gUnknown_2025600.unk1C = -1; + gUnknown_2025600.unk1E = -1; gUnknown_2025600.unk8 = -1; - gUnknown_2025600.unk9 = -1; + gUnknown_2025600.unkA = -1; + gUnknown_2025600.unkC = -1; + gUnknown_2025600.unkE = -1; gUnknown_2025600.unk10 = -1; - gUnknown_2025600.unk11 = -1; - gUnknown_2025600.unk18 = 0; - gUnknown_2025600.unk19 = 0; + gUnknown_2025600.unk12 = -1; + gUnknown_2025600.unk14 = -1; + gUnknown_2025600.unk16 = -1; + gUnknown_2025600.unk28 = 0; + gUnknown_2025600.unk29 = 0; gUnknown_2025668.unk0 = 0; - gUnknown_2025668.unk1 = 0; -#else - asm_unified("\tldr r0, =gUnknown_20255F0\n" - "\tmovs r3, 0\n" - "\tmovs r2, 0\n" - "\tstrh r2, [r0] \n" - "\tstrh r2, [r0, 0x2]\n" - "\tstrh r2, [r0, 0x4]\n" - "\tstrh r2, [r0, 0x6]\n" - "\tldr r0, =gUnknown_2025638\n" - "\tstrh r2, [r0]\n" - "\tstrh r2, [r0, 0x2]\n" - "\tstrh r2, [r0, 0x4]\n" - "\tstrh r2, [r0, 0x6]\n" - "\tldr r1, =gUnknown_202562C\n" - "\tldr r0, =0x4a14c1\n" - "\tstr r0, [r1]\n" - "\tldr r0, =gUnknown_2025600\n" - "\tstr r2, [r0, 0x20]\n" - "\tldr r1, =0xffff\n" - "\tstrh r1, [r0] \n" - "\tmovs r1, 0x1\n" - "\tnegs r1, r1\n" - "\tstrh r1, [r0, 0x2]\n" - "\tstrh r1, [r0, 0x4]\n" - "\tstrh r1, [r0, 0x6]\n" - "\tstrh r1, [r0, 0x1C]\n" - "\tstrh r1, [r0, 0x1E]\n" - "\tstrh r1, [r0, 0x8]\n" - "\tstrh r1, [r0, 0xA]\n" - "\tstrh r1, [r0, 0xC]\n" - "\tstrh r1, [r0, 0xE]\n" - "\tstrh r1, [r0, 0x10]\n" - "\tstrh r1, [r0, 0x12]\n" - "\tstrh r1, [r0, 0x14]\n" - "\tstrh r1, [r0, 0x16]\n" - "\tadds r1, r0, 0\n" - "\tadds r1, 0x28\n" - "\tstrb r3, [r1]\n" - "\tadds r0, 0x29\n" - "\tstrb r3, [r0]\n" - "\tldr r0, =gUnknown_2025668\n" - "\tstrh r2, [r0]\n" - "\tstrh r2, [r0, 0x2]\n" - "\tbx lr\n" - "\t.align 2, 0\n" - "\t.pool"); -#endif + gUnknown_2025668.unk2 = 0; } -#ifndef NONMATCHING -NAKED -#endif void sub_800485C(void) { -#ifdef NONMATCHING gUnknown_20255F0 = gUnknown_2025638; - // TODO missing: - // ldr r0, [r0] - // str r0, [r1] - gUnknown_2025638.unk0 = 0; - gUnknown_2025638.unk1 = 0; gUnknown_2025638.unk2 = 0; - gUnknown_2025638.unk3 = 0; + gUnknown_2025638.unk4 = 0; + gUnknown_2025638.unk6 = 0; gUnknown_2025600.unk0 = 0xffff; - gUnknown_2025600.unk1 = -1; gUnknown_2025600.unk2 = -1; - gUnknown_2025600.unk3 = -1; gUnknown_2025600.unk4 = -1; - gUnknown_2025600.unk5 = -1; gUnknown_2025600.unk6 = -1; - gUnknown_2025600.unk7 = -1; gUnknown_2025600.unk8 = -1; - gUnknown_2025600.unk9 = -1; + gUnknown_2025600.unkA = -1; + gUnknown_2025600.unkC = -1; + gUnknown_2025600.unkE = -1; gUnknown_2025600.unk10 = -1; - gUnknown_2025600.unk11 = -1; - - gUnknown_2025600.unk18 = 0; - gUnknown_2025600.unk19 = 0; -#else - asm_unified("\tpush {r4,r5,lr}\n" - "\tldr r2, =gUnknown_2025638\n" - "\tldr r1, =gUnknown_20255F0\n" - "\tadds r0, r2, 0\n" - "\tldm r0!, {r3-r5}\n" - "\tstm r1!, {r3-r5}\n" - "\tldr r0, [r0]\n" - "\tstr r0, [r1]\n" - "\tmovs r3, 0\n" - "\tmovs r0, 0\n" - "\tstrh r0, [r2]\n" - "\tstrh r0, [r2, 0x2]\n" - "\tstrh r0, [r2, 0x4]\n" - "\tstrh r0, [r2, 0x6]\n" - "\tldr r0, =gUnknown_2025600\n" - "\tldr r1, =0xffff\n" - "\tstrh r1, [r0]\n" - "\tmovs r1, 0x1\n" - "\tnegs r1, r1\n" - "\tstrh r1, [r0, 0x2]\n" - "\tstrh r1, [r0, 0x4]\n" - "\tstrh r1, [r0, 0x6]\n" - "\tstrh r1, [r0, 0x8]\n" - "\tstrh r1, [r0, 0xA]\n" - "\tstrh r1, [r0, 0xC]\n" - "\tstrh r1, [r0, 0xE]\n" - "\tstrh r1, [r0, 0x10]\n" - "\tstrh r1, [r0, 0x12]\n" - "\tstrh r1, [r0, 0x14]\n" - "\tstrh r1, [r0, 0x16]\n" - "\tadds r1, r0, 0\n" - "\tadds r1, 0x28\n" - "\tstrb r3, [r1]\n" - "\tadds r0, 0x29\n" - "\tstrb r3, [r0]\n" - "\tpop {r4,r5}\n" - "\tpop {r0}\n" - "\tbx r0\n" - "\t.align 2, 0\n" - "\t.pool"); -#endif + gUnknown_2025600.unk12 = -1; + gUnknown_2025600.unk14 = -1; + gUnknown_2025600.unk16 = -1; + + gUnknown_2025600.unk28 = 0; + gUnknown_2025600.unk29 = 0; } // Unused @@ -204,3 +103,42 @@ u8 sub_80048CC(void) { return 0; } + +void sub_80048D0(void) +{ + gUnknown_20255F0.unk4 = 0; + gUnknown_2025648.unkC = 0; + gUnknown_2025648.unk8 = 0; + gUnknown_2025668.unk0 = 0x3e7; + gUnknown_2025668.unk2 = 0x3e7; + +} + +void sub_80048F8(void) +{ + gUnknown_20255F0.unk2 = 0; + gUnknown_2025638.unk2 = 0; + gUnknown_2025648.unk2 = 0; +} + +void sub_8004914(void) +{ + gUnknown_2025600.unk20 = 0x5; + gUnknown_2025600.unk24 = 0; + gUnknown_2025600.unk0 = 0xffff; + gUnknown_2025600.unk2 = -1; + gUnknown_2025600.unk4 = -1; + gUnknown_2025600.unk6 = -1; + gUnknown_2025600.unk8 = -1; + gUnknown_2025600.unkA = -1; + gUnknown_2025600.unkC = -1; + gUnknown_2025600.unkE = -1; + gUnknown_2025600.unk10 = -1; + gUnknown_2025600.unk12 = -1; + gUnknown_2025600.unk14 = -1; + gUnknown_2025600.unk16 = -1; + + gUnknown_2025600.unk28 = 0; + gUnknown_2025600.unk29 = 0; + +} |