From b5d6e8b0f8c1163bdeb09d421585089409dc7bf0 Mon Sep 17 00:00:00 2001 From: David Benepe Date: Mon, 24 May 2021 18:02:35 -0500 Subject: [PATCH] unknown_00BC20.c data section --- data/dkr.data.s | 289 ++++++++++++++++++++++--------------------- src/unknown_00BC20.c | 110 +++++++++++++--- 2 files changed, 242 insertions(+), 157 deletions(-) diff --git a/data/dkr.data.s b/data/dkr.data.s index a62acbe7..abe2796d 100644 --- a/data/dkr.data.s +++ b/data/dkr.data.s @@ -134,153 +134,160 @@ ############## unknown_00BC20.c (.data) ############## -glabel D_800DC6F0 -.word 0x80000000 -.word 0x001E000F +# glabel D_800DC6F0 +# .word 0x80000000 +# .word 0x001E000F +# +# glabel D_800DC6F8 +# .word 0x03000000 +# .word 0x001E000F +# +# glabel D_800DC700 +# .word 0x00000000 +# .word 0x00000000 +# +# glabel D_800DC708 +# .word 0x00000000 +# .word 0x00000000 +# .word 0x00010000 +# .word 0x00000000 +# +# glabel D_800DC718 +# .word 0x00000000 +# +# glabel D_800DC71C +# .word 0x00000000 +# +# glabel D_800DC720 +# .word 0x00000000 +# +# glabel D_800DC724 +# .word 0x2A300000 +# +# glabel D_800DC728 +# .word 0xFFFF0000 +# +# glabel D_800DC72C +# .word 0x00000000 +# +# glabel D_800DC730 +# .word 0x00000000 +# +# glabel D_800DC734 +# .word 0x00000000 +# +# glabel D_800DC738 +# .word 0x00000000 +# +# glabel D_800DC73C +# .word 0x00000000 +# +# glabel D_800DC740 +# .word 0x00000000 +# +# glabel D_800DC744 +# .word 0x00000000 +# +# glabel D_800DC748 +# .word 0x00000000 +# +# glabel D_800DC74C +# .word 0x00000000 +# .word 0x00000000 +# +# glabel D_800DC754 +# .word 0x00000000 +# .word 0x00000000 +# +# glabel D_800DC75C +# .word 0x00000000 +# +# glabel D_800DC760 +# .word 0x00000009 +# +# glabel D_800DC764 +# .word 0x00000000 +# +# glabel D_800DC768 +# .word 0x00000000 -glabel D_800DC6F8 -.word 0x03000000 -.word 0x001E000F +# .word 0x3F800000 +# .word 0x3F350529 +# .word 0x3F350529 +# .word 0x3F800000 +# .word 0x00000000 +# .word 0x3F350529 +# .word 0xBF350529 +# .word 0x00000000 +# .word 0xBF800000 +# .word 0xBF350529 +# .word 0xBF350529 +# .word 0xBF800000 +# .word 0x00000000 +# .word 0xBF350529 +# .word 0x3F350529 +# .word 0x00010002 +# .word 0x00030004 +# .word 0x00510054 +# .word 0x00550056 +# .word 0x00ED00FF +# .word 0x00370038 +# .word 0x0039003A +# .word 0x00570058 +# .word 0x0059005A +# .word 0x00F300FD +# .word 0x00420043 +# .word 0x00440045 +# .word 0x005B005C +# .word 0x005D005E +# .word 0x00F40101 +# .word 0x00010002 +# .word 0x00030004 +# .word 0x00510054 +# .word 0x00550056 +# .word 0x00ED00FF +# .word 0x00010002 +# .word 0x00030004 +# .word 0x00510054 +# .word 0x00550056 +# .word 0x00ED00FF +# .word 0x00D900DF +# .word 0x00E00105 +# .word 0x008A00DA +# .word 0x00E80115 +# .word 0x01180000 +# .word 0x00050106 +# .word 0x02070005 +# .word 0x0106010B +# .word 0x010B0207 +# .word 0x000C020D +# .word 0x01010101 +# .word 0x01010101 +# .word 0x01010000 -glabel D_800DC700 -.word 0x00000000 -.word 0x00000000 +# .word 0x09010203 +# .word 0x04050700 -glabel D_800DC708 -.word 0x00000000 -.word 0x00000000 -.word 0x00010000 -.word 0x00000000 +# glabel D_800DC848 +# .word 0x00000000 +# .word 0xFF401000 +# .word 0x1040FF00 +# .word 0x10FF4000 +# +# glabel D_800DC858 +# .word 0x00000000 +# .word 0x0028FFFF +# +# glabel D_800DC860 +# .word 0x80000000 +# .word 0x00280000 +# +# .word 0, 0 # Padding -glabel D_800DC718 -.word 0x00000000 +###################################################### -glabel D_800DC71C -.word 0x00000000 +############## unknown_0255E0.c (.data) ############## -glabel D_800DC720 -.word 0x00000000 - -glabel D_800DC724 -.word 0x2A300000 - -glabel D_800DC728 -.word 0xFFFF0000 - -glabel D_800DC72C -.word 0x00000000 - -glabel D_800DC730 -.word 0x00000000 - -glabel D_800DC734 -.word 0x00000000 - -glabel D_800DC738 -.word 0x00000000 - -glabel D_800DC73C -.word 0x00000000 - -glabel D_800DC740 -.word 0x00000000 - -glabel D_800DC744 -.word 0x00000000 - -glabel D_800DC748 -.word 0x00000000 - -glabel D_800DC74C -.word 0x00000000 -.word 0x00000000 - -glabel D_800DC754 -.word 0x00000000 -.word 0x00000000 - -glabel D_800DC75C -.word 0x00000000 - -glabel D_800DC760 -.word 0x00000009 - -glabel D_800DC764 -.word 0x00000000 - -glabel D_800DC768 -.word 0x00000000 -.word 0x3F800000 -.word 0x3F350529 -.word 0x3F350529 -.word 0x3F800000 -.word 0x00000000 -.word 0x3F350529 -.word 0xBF350529 -.word 0x00000000 -.word 0xBF800000 -.word 0xBF350529 -.word 0xBF350529 -.word 0xBF800000 -.word 0x00000000 -.word 0xBF350529 -.word 0x3F350529 -.word 0x00010002 -.word 0x00030004 -.word 0x00510054 -.word 0x00550056 -.word 0x00ED00FF -.word 0x00370038 -.word 0x0039003A -.word 0x00570058 -.word 0x0059005A -.word 0x00F300FD -.word 0x00420043 -.word 0x00440045 -.word 0x005B005C -.word 0x005D005E -.word 0x00F40101 -.word 0x00010002 -.word 0x00030004 -.word 0x00510054 -.word 0x00550056 -.word 0x00ED00FF -.word 0x00010002 -.word 0x00030004 -.word 0x00510054 -.word 0x00550056 -.word 0x00ED00FF -.word 0x00D900DF -.word 0x00E00105 -.word 0x008A00DA -.word 0x00E80115 -.word 0x01180000 -.word 0x00050106 -.word 0x02070005 -.word 0x0106010B -.word 0x010B0207 -.word 0x000C020D -.word 0x01010101 -.word 0x01010101 -.word 0x01010000 -.word 0x09010203 -.word 0x04050700 - -glabel D_800DC848 -.word 0x00000000 -.word 0xFF401000 -.word 0x1040FF00 -.word 0x10FF4000 - -glabel D_800DC858 -.word 0x00000000 -.word 0x0028FFFF - -glabel D_800DC860 -.word 0x80000000 -.word 0x00280000 -.word 0x00000000 -.word 0x00000000 .word 0x00000000 .word 0x80000000 .word 0x0028FFFF diff --git a/src/unknown_00BC20.c b/src/unknown_00BC20.c index 57639ede..aa57f7cd 100644 --- a/src/unknown_00BC20.c +++ b/src/unknown_00BC20.c @@ -7,24 +7,100 @@ #include "fast3d.h" -extern s32 D_800DC700; -extern s16 D_800DC708; -extern s32 D_800DC718; -extern s8 D_800DC71C; -extern s16 D_800DC724; -extern s16 D_800DC728; -extern s16 D_800DC72C; -extern u8 D_800DC730; -extern u8 D_800DC738; -extern s8 D_800DC73C; -extern s8 D_800DC740; -extern s8 D_800DC744; -extern s8 D_800DC748; -extern s32 D_800DC760; -extern s8 D_800DC848; +/************ .data ************/ + +/* Size: 0x8 bytes */ +typedef struct unknown800DC6F0 { + union { + s8 unk00; + s32 dummy_force_alignment; // Not sure of a better way to do this. + }; + u16 unk04; + u16 unk06; +} unknown800DC6F0; + +unknown800DC6F0 D_800DC6F0 = { -128, 0x1E, 0x0F }; +unknown800DC6F0 D_800DC6F8 = { 3, 0x1E, 0x0F }; + +s32 D_800DC700 = 0; +s32 D_800DC704 = 0; // Currently unknown, might be a different type. +s16 D_800DC708 = 0; +s32 D_800DC70C = 0; // Currently unknown, might be a different type. +s16 D_800DC710 = 1; +s32 D_800DC714 = 0; // Currently unknown, might be a different type. +s32 D_800DC718 = 0; +s8 D_800DC71C = 0; +s32 D_800DC720 = 0; // Currently unknown, might be a different type. +s16 D_800DC724 = 0x2A30; +s16 D_800DC728 = -1; +s16 D_800DC72C = 0; +u8 D_800DC730 = 0; +s32 D_800DC734 = 0; // Currently unknown, might be a different type. +u8 D_800DC738 = 0; +s8 D_800DC73C = 0; +s8 D_800DC740 = 0; +s8 D_800DC744 = 0; +s8 D_800DC748 = 0; +s32 D_800DC74C = 0; // Currently unknown, might be a different type. +s32 D_800DC750 = 0; // Currently unknown, might be a different type. +s32 D_800DC754 = 0; // Currently unknown, might be a different type. +s32 D_800DC758 = 0; // Currently unknown, might be a different type. +s32 D_800DC75C = 0; // Currently unknown, might be a different type. +s32 D_800DC760 = 9; // Currently unknown, might be a different type. +s32 D_800DC764 = 0; // Currently unknown, might be a different type. +s32 D_800DC768 = 0; // Currently unknown, might be a different type. + +f32 D_800DC76C[15] = { + 1.0f, 0.70711f, 0.70711f, 1.0f, + 0.0f, 0.70711f, -0.70711f, 0.0f, + -1.0f, -0.70711f, -0.70711f, -1.0f, + 0.0f, -0.70711f, 0.70711f +}; + +u16 D_800DC7A8[76] = { + 0x0001, 0x0002, 0x0003, 0x0004, + 0x0051, 0x0054, 0x0055, 0x0056, + 0x00ED, 0x00FF, 0x0037, 0x0038, + 0x0039, 0x003A, 0x0057, 0x0058, + 0x0059, 0x005A, 0x00F3, 0x00FD, + 0x0042, 0x0043, 0x0044, 0x0045, + 0x005B, 0x005C, 0x005D, 0x005E, + 0x00F4, 0x0101, 0x0001, 0x0002, + 0x0003, 0x0004, 0x0051, 0x0054, + 0x0055, 0x0056, 0x00ED, 0x00FF, + 0x0001, 0x0002, 0x0003, 0x0004, + 0x0051, 0x0054, 0x0055, 0x0056, + 0x00ED, 0x00FF, 0x00D9, 0x00DF, + 0x00E0, 0x0105, 0x008A, 0x00DA, + 0x00E8, 0x0115, 0x0118, 0x0000, + 0x0005, 0x0106, 0x0207, 0x0005, + 0x0106, 0x010B, 0x010B, 0x0207, + 0x000C, 0x020D, 0x0101, 0x0101, + 0x0101, 0x0101, 0x0101, 0x0000 +}; + +s8 D_800DC840[8] = { 9, 1, 2, 3, 4, 5, 7, 0 }; + +s8 D_800DC848 = 0; +s32 D_800DC84C = 0xFF401000; // Currently unknown, might be a different type. + +s32 D_800DC850 = 0x1040FF00; // Currently unknown, might be a different type. +s32 D_800DC854 = 0x10FF4000; // Currently unknown, might be a different type. +s32 D_800DC858 = 0; // Currently unknown, might be a different type. +s32 D_800DC85C = 0x0028FFFF; // Currently unknown, might be a different type. + +u8 D_800DC860 = 0x80; +u16 D_800DC864 = 0x0028; + +/************ .rodata ************/ + extern f32 D_800E514C; extern f32 D_800E5150; +/*********************************/ + +/************ .bss ************/ + extern s16 D_8011AC20[12]; extern s16 D_8011AD4E; extern s8 D_8011AD20[4]; @@ -74,7 +150,7 @@ extern s8 D_8011AE00; extern s8 D_8011AE01; extern s8 D_8011AE02; extern s8 D_8011AE03; -u32 *D_8011AE08[16]; +extern u32 *D_8011AE08[16]; extern s32 (*D_8011AE48)[8]; // Unknown number of entries. extern u8 (*D_8011AE4C)[8]; // Unknown number of entries. extern Player **objPtrList; // Not sure about the number of elements @@ -147,6 +223,8 @@ extern u32* D_8011B020[10]; extern s16 D_8011D5AC; +/******************************/ + extern s32 osTvType; void func_8000C460(void);