From 9893dfdb9fa8ba73f0e4dfbd37ab8091306f38ce Mon Sep 17 00:00:00 2001 From: David Benepe Date: Mon, 24 May 2021 19:02:23 -0500 Subject: [PATCH] unknown_032760.c data section --- data/dkr.data.s | 330 ++++++++++++++++++++++--------------------- src/unknown_032760.c | 104 +++++++++++++- 2 files changed, 265 insertions(+), 169 deletions(-) diff --git a/data/dkr.data.s b/data/dkr.data.s index 37cbebf2..474287e3 100644 --- a/data/dkr.data.s +++ b/data/dkr.data.s @@ -365,171 +365,175 @@ ############## unknown_032760.c (.data) ############## -glabel D_800DC950 -.word 0x00000000 +# glabel D_800DC950 +# .word 0x00000000 +# +# glabel D_800DC954 +# .word 0x00000000 +# +# glabel D_800DC958 +# .word 0x00000000 +# +# glabel D_800DC95C +# .word 0x00000000 +# +# glabel D_800DC960 +# .word 0x00000000 +# +# glabel D_800DC964 +# .word 0x00000000 +# +# glabel D_800DC968 +# .word 0x00000000 +# .word 0x00000000 +# +# glabel D_800DC970 +# .word 0x40FFFFFF +# .word 0x00070003 +# +# glabel D_800DC978 +# .word 0x00000000 +# .word 0x001EFFFF +# +# glabel D_800DC980 +# .word 0xFF000100 +# .word 0x0000FFFF +# .word 0xFFFF0100 +# .word 0x01000000 +# .word 0xFFFFFFFF +# .word 0x0100FF00 +# .word 0x0000FFFF +# .word 0xFFFFFF00 +# .word 0xFF000000 +# .word 0xFFFFFFFF +# +# glabel D_800DC9A8 +# .word 0x00000040 +# .word 0xFFC00000 +# .word 0xFFC0FFC0 +# .word 0x00000040 +# .word 0x00200000 +# .word 0xFFC00020 +# .word 0x00000040 +# .word 0x00400000 +# .word 0xFFC00040 +# .word 0x00000000 +# +# glabel D_800DC9D0 +# .word 0x00000301 +# .word 0x00040000 +# .word 0x00010004 +# .word 0x00040004 +# .word 0x00000203 +# .word 0x00040000 +# .word 0x00010000 +# .word 0x00010004 +# .word 0x00020503 +# .word 0x00010000 +# .word 0x00000004 +# .word 0x00010004 +# .word 0x00020405 +# .word 0x00010000 +# .word 0x00000000 +# .word 0x00000004 +# .word 0x00000103 +# .word 0x00040000 +# .word 0x00040004 +# .word 0x00010004 +# .word 0x00000302 +# .word 0x00040000 +# .word 0x00010004 +# .word 0x00010000 +# .word 0x00020305 +# .word 0x00010000 +# .word 0x00010004 +# .word 0x00000004 +# .word 0x00020504 +# .word 0x00010000 +# .word 0x00000004 +# .word 0x00000000 +# +# glabel D_800DCA50 +# .word 0x02050603 +# .word 0x0A080709 +# .word 0x02050603 +# .word 0x0A080709 +# .word 0x0B000000 +# +# glabel D_800DCA64 +# .word 0x02050603 +# .word 0x0A080709 +# .word 0x0C000000 +# +# glabel D_800DCA70 +# .word 0x02050603 +# .word 0x0A080709 +# .word 0x0B0C0000 +# +# glabel D_800DCA7C +# .word 0x00000000 +# .word 0x00000000 +# .word 0x00000000 +# +# glabel D_800DCA88 +# .word 0x00000000 +# .word 0x00000000 +# .word 0x00000000 +# .word 0x00000101 +# .word 0x02000000 +# .word 0x00010102 +# .word 0x02000000 +# .word 0x00000000 +# +# glabel D_800DCAA8 +# .word 0x00000301 +# .word 0x00000000 +# .word 0xFFFFFFFF +# .word 0x0000FFFF +# .word 0x00000203 +# .word 0x00000000 +# .word 0xFFFF0000 +# .word 0xFFFFFFFF +# .word 0x00020503 +# .word 0xFFFF0000 +# .word 0x0000FFFF +# .word 0xFFFFFFFF +# .word 0x00020405 +# .word 0xFFFF0000 +# .word 0x00000000 +# .word 0x0000FFFF +# .word 0x00000103 +# .word 0x00000000 +# .word 0x0000FFFF +# .word 0xFFFFFFFF +# .word 0x00000302 +# .word 0x00000000 +# .word 0xFFFFFFFF +# .word 0xFFFF0000 +# .word 0x00020305 +# .word 0xFFFF0000 +# .word 0xFFFFFFFF +# .word 0x0000FFFF +# .word 0x00020504 +# .word 0xFFFF0000 +# .word 0x0000FFFF +# .word 0x00000000 +# +# glabel D_800DCB28 +# .word 0xFFC00000 +# .word 0x0020FFC0 +# .word 0x0000FFE0 +# .word 0x00000000 +# .word 0x00200000 +# .word 0x0000FFE0 +# .word 0x00400000 +# .word 0x00200040 +# .word 0x0000FFE0 +# .word 0x00000000 -glabel D_800DC954 -.word 0x00000000 +###################################################### -glabel D_800DC958 -.word 0x00000000 - -glabel D_800DC95C -.word 0x00000000 - -glabel D_800DC960 -.word 0x00000000 - -glabel D_800DC964 -.word 0x00000000 - -glabel D_800DC968 -.word 0x00000000 -.word 0x00000000 - -glabel D_800DC970 -.word 0x40FFFFFF -.word 0x00070003 - -glabel D_800DC978 -.word 0x00000000 -.word 0x001EFFFF - -glabel D_800DC980 -.word 0xFF000100 -.word 0x0000FFFF -.word 0xFFFF0100 -.word 0x01000000 -.word 0xFFFFFFFF -.word 0x0100FF00 -.word 0x0000FFFF -.word 0xFFFFFF00 -.word 0xFF000000 -.word 0xFFFFFFFF - -glabel D_800DC9A8 -.word 0x00000040 -.word 0xFFC00000 -.word 0xFFC0FFC0 -.word 0x00000040 -.word 0x00200000 -.word 0xFFC00020 -.word 0x00000040 -.word 0x00400000 -.word 0xFFC00040 -.word 0x00000000 - -glabel D_800DC9D0 -.word 0x00000301 -.word 0x00040000 -.word 0x00010004 -.word 0x00040004 -.word 0x00000203 -.word 0x00040000 -.word 0x00010000 -.word 0x00010004 -.word 0x00020503 -.word 0x00010000 -.word 0x00000004 -.word 0x00010004 -.word 0x00020405 -.word 0x00010000 -.word 0x00000000 -.word 0x00000004 -.word 0x00000103 -.word 0x00040000 -.word 0x00040004 -.word 0x00010004 -.word 0x00000302 -.word 0x00040000 -.word 0x00010004 -.word 0x00010000 -.word 0x00020305 -.word 0x00010000 -.word 0x00010004 -.word 0x00000004 -.word 0x00020504 -.word 0x00010000 -.word 0x00000004 -.word 0x00000000 - -glabel D_800DCA50 -.word 0x02050603 -.word 0x0A080709 -.word 0x02050603 -.word 0x0A080709 -.word 0x0B000000 - -glabel D_800DCA64 -.word 0x02050603 -.word 0x0A080709 -.word 0x0C000000 - -glabel D_800DCA70 -.word 0x02050603 -.word 0x0A080709 -.word 0x0B0C0000 - -glabel D_800DCA7C -.word 0x00000000 -.word 0x00000000 -.word 0x00000000 - -glabel D_800DCA88 -.word 0x00000000 -.word 0x00000000 -.word 0x00000000 -.word 0x00000101 -.word 0x02000000 -.word 0x00010102 -.word 0x02000000 -.word 0x00000000 - -glabel D_800DCAA8 -.word 0x00000301 -.word 0x00000000 -.word 0xFFFFFFFF -.word 0x0000FFFF -.word 0x00000203 -.word 0x00000000 -.word 0xFFFF0000 -.word 0xFFFFFFFF -.word 0x00020503 -.word 0xFFFF0000 -.word 0x0000FFFF -.word 0xFFFFFFFF -.word 0x00020405 -.word 0xFFFF0000 -.word 0x00000000 -.word 0x0000FFFF -.word 0x00000103 -.word 0x00000000 -.word 0x0000FFFF -.word 0xFFFFFFFF -.word 0x00000302 -.word 0x00000000 -.word 0xFFFFFFFF -.word 0xFFFF0000 -.word 0x00020305 -.word 0xFFFF0000 -.word 0xFFFFFFFF -.word 0x0000FFFF -.word 0x00020504 -.word 0xFFFF0000 -.word 0x0000FFFF -.word 0x00000000 - -glabel D_800DCB28 -.word 0xFFC00000 -.word 0x0020FFC0 -.word 0x0000FFE0 -.word 0x00000000 -.word 0x00200000 -.word 0x0000FFE0 -.word 0x00400000 -.word 0x00200040 -.word 0x0000FFE0 -.word 0x00000000 +############## unknown_043920.c (.data) ############## glabel D_800DCB50 .word 0x00000310 diff --git a/src/unknown_032760.c b/src/unknown_032760.c index edac00c9..89ef0279 100644 --- a/src/unknown_032760.c +++ b/src/unknown_032760.c @@ -5,12 +5,102 @@ #include "macros.h" #include "structs.h" -extern s32 D_800DC950; -extern s32 D_800DC954; -extern s32 D_800DC958; -extern s32 D_800DC95C; -extern s32 D_800DC960; -extern s32 D_800DC964; +/************ .data ************/ + +s32 D_800DC950 = 0; +s32 D_800DC954 = 0; +s32 D_800DC958 = 0; +s32 D_800DC95C = 0; +s32 D_800DC960 = 0; +s32 D_800DC964 = 0; +s32 D_800DC968 = 0; // Currently unknown, might be a different type. +s32 D_800DC96C = 0; // Currently unknown, might be a different type. + +// Unsure about the signed/unsigned with these arrays. +u16 D_800DC970[4] = { + 0x40FF, 0xFFFF, 0x0007, 0x0003 +}; +u16 D_800DC978[4] = { + 0x0000, 0x0000, 0x001E, 0xFFFF +}; +u16 D_800DC980[20] = { + 0xFF00, 0x0100, 0x0000, 0xFFFF, + 0xFFFF, 0x0100, 0x0100, 0x0000, + 0xFFFF, 0xFFFF, 0x0100, 0xFF00, + 0x0000, 0xFFFF, 0xFFFF, 0xFF00, + 0xFF00, 0x0000, 0xFFFF, 0xFFFF +}; +u16 D_800DC9A8[20] = { + 0x0000, 0x0040, 0xFFC0, 0x0000, + 0xFFC0, 0xFFC0, 0x0000, 0x0040, + 0x0020, 0x0000, 0xFFC0, 0x0020, + 0x0000, 0x0040, 0x0040, 0x0000, + 0xFFC0, 0x0040, 0x0000, 0x0000 +}; +u16 D_800DC9D0[64] = { + 0x0000, 0x0301, 0x0004, 0x0000, + 0x0001, 0x0004, 0x0004, 0x0004, + 0x0000, 0x0203, 0x0004, 0x0000, + 0x0001, 0x0000, 0x0001, 0x0004, + 0x0002, 0x0503, 0x0001, 0x0000, + 0x0000, 0x0004, 0x0001, 0x0004, + 0x0002, 0x0405, 0x0001, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0004, + 0x0000, 0x0103, 0x0004, 0x0000, + 0x0004, 0x0004, 0x0001, 0x0004, + 0x0000, 0x0302, 0x0004, 0x0000, + 0x0001, 0x0004, 0x0001, 0x0000, + 0x0002, 0x0305, 0x0001, 0x0000, + 0x0001, 0x0004, 0x0000, 0x0004, + 0x0002, 0x0504, 0x0001, 0x0000, + 0x0000, 0x0004, 0x0000, 0x0000 +}; +s8 D_800DCA50[17] = { + 2, 5, 6, 3, 10, 8, 7, 9, + 2, 5, 6, 3, 10, 8, 7, 9, 11 +}; +s8 D_800DCA64[9] = { + 2, 5, 6, 3, 10, 8, 7, 9, 12 +}; +s8 D_800DCA70[10] = { + 2, 5, 6, 3, 10, 8, 7, 9, 11, 12 +}; +s32 D_800DCA7C[3] = { // Not sure about typing + 0, 0, 0 +}; +s32 D_800DCA88[8] = { // Definitly not s32, but I'm not sure what this is yet. + 0, 0, 0, 0x00000101, + 0x02000000, 0x00010102, 0x02000000, 0x00000000 +}; +u16 D_800DCAA8[64] = { + 0x0000, 0x0301, 0x0000, 0x0000, + 0xFFFF, 0xFFFF, 0x0000, 0xFFFF, + 0x0000, 0x0203, 0x0000, 0x0000, + 0xFFFF, 0x0000, 0xFFFF, 0xFFFF, + 0x0002, 0x0503, 0xFFFF, 0x0000, + 0x0000, 0xFFFF, 0xFFFF, 0xFFFF, + 0x0002, 0x0405, 0xFFFF, 0x0000, + 0x0000, 0x0000, 0x0000, 0xFFFF, + 0x0000, 0x0103, 0x0000, 0x0000, + 0x0000, 0xFFFF, 0xFFFF, 0xFFFF, + 0x0000, 0x0302, 0x0000, 0x0000, + 0xFFFF, 0xFFFF, 0xFFFF, 0x0000, + 0x0002, 0x0305, 0xFFFF, 0x0000, + 0xFFFF, 0xFFFF, 0x0000, 0xFFFF, + 0x0002, 0x0504, 0xFFFF, 0x0000, + 0x0000, 0xFFFF, 0x0000, 0x0000 +}; +u16 D_800DCB28[20] = { + 0xFFC0, 0x0000, 0x0020, 0xFFC0, + 0x0000, 0xFFE0, 0x0000, 0x0000, + 0x0020, 0x0000, 0x0000, 0xFFE0, + 0x0040, 0x0000, 0x0020, 0x0040, + 0x0000, 0xFFE0, 0x0000, 0x0000 +}; + +/*******************************/ + +/************ .bss ************/ extern f32 D_8011D4D0; extern s32 D_8011D4D4; @@ -18,6 +108,8 @@ extern s32 D_8011D4D8; extern s32 D_8011D4DC; extern s16 D_8011D4E2; +/******************************/ + Settings* get_settings(); Player_64 *func_800BE654(s16, f32, f32); void func_80000FDC(s32, s32, f32);