From a2f2e6e2f29b761fea907a0973155658decbdd1b Mon Sep 17 00:00:00 2001 From: David Benepe Date: Mon, 24 May 2021 14:35:24 -0500 Subject: [PATCH] unknown_003260.c data section --- data/dkr.data.s | 104 +++++++++++++++++++----------------- src/unknown_003260.c | 35 +++++++++--- tools/python/generate_ld.py | 3 +- 3 files changed, 85 insertions(+), 57 deletions(-) diff --git a/data/dkr.data.s b/data/dkr.data.s index 2b038995..57c02c8f 100644 --- a/data/dkr.data.s +++ b/data/dkr.data.s @@ -50,63 +50,67 @@ # .word 0x00000000 # glabel D_800DC66C # .word 0x00000100 - +# # glabel D_800DC670 # .word 0x00000000 - -# .word 0, 0, 0 # File Padding? +# +# .word 0, 0, 0 # Padding ###################################################### -glabel D_800DC680 -.word 0x00000000 +############## unknown_003260.c (.data) ############## -glabel D_800DC684 -.word 0x00000000 +# glabel D_800DC680 +# .word 0x00000000 +# +# glabel D_800DC684 +# .word 0x00000000 +# +# glabel D_800DC688 +# .word 0x00000000 +# +# glabel D_800DC68C +# .word 0x00000000 +# +# glabel D_800DC690 +# .word 0x00035281 +# +# glabel D_800DC694 +# .word 0x00000FD0 +# +# glabel D_800DC698 +# .word 0x00000000 +# +# glabel D_800DC69C +# .word 0x00000000 +# +# glabel D_800DC6A0 +# .word 0x00000001 +# .word 0x00000000 +# .word 0x00000000 +# .word 0x00000000 +# +# glabel D_800DC6B0 +# .word 0x00000000 +# +# glabel D_800DC6B4 +# .word 0x00000000 +# +# glabel D_800DC6B8 +# .word 0x00000000 +# +# glabel gAlSndPlayer +# .word 0x80119BD0 +# +# glabel sfxVolumeSlider +# .word 0x00000100 +# +# glabel D_800DC6C4 +# .word 0x00000000 +# +# .word 0, 0 # Padding -glabel D_800DC688 -.word 0x00000000 - -glabel D_800DC68C -.word 0x00000000 - -glabel D_800DC690 -.word 0x00035281 - -glabel D_800DC694 -.word 0x00000FD0 - -glabel D_800DC698 -.word 0x00000000 - -glabel D_800DC69C -.word 0x00000000 - -glabel D_800DC6A0 -.word 0x00000001 -.word 0x00000000 -.word 0x00000000 -.word 0x00000000 - -glabel D_800DC6B0 -.word 0x00000000 - -glabel D_800DC6B4 -.word 0x00000000 - -glabel D_800DC6B8 -.word 0x00000000 - -glabel gAlSndPlayer -.word 0x80119BD0 - -glabel sfxVolumeSlider -.word 0x00000100 - -glabel D_800DC6C4 -.word 0x00000000 -.word 0x00000000 -.word 0x00000000 +###################################################### glabel D_800DC6D0 .word 0x01000000 diff --git a/src/unknown_003260.c b/src/unknown_003260.c index dc60353b..d5ca6b96 100644 --- a/src/unknown_003260.c +++ b/src/unknown_003260.c @@ -65,7 +65,6 @@ typedef struct unk80119240 } unk800DC6B0; */ - typedef struct audioMgrConfig_s{ u32 unk00; u32 unk04; @@ -74,13 +73,35 @@ typedef struct audioMgrConfig_s{ u16 unk10; } audioMgrConfig; +/************ .data ************/ +s32 D_800DC680 = 0; // Currently unknown, might be a different type. +s32 D_800DC684 = 0; // Currently unknown, might be a different type. +s32 D_800DC688 = 0; // Currently unknown, might be a different type. +s32 D_800DC68C = 0; // Currently unknown, might be a different type. +s32 D_800DC690 = 0x35281; // Currently unknown, might be a different type. +s32 D_800DC694 = 0xFD0; // Currently unknown, might be a different type. +s32 D_800DC698 = 0; // Currently unknown, might be a different type. +s32 D_800DC69C = 0; // Currently unknown, might be a different type. +s32 D_800DC6A0 = 1; // Currently unknown, might be a different type. +s32 D_800DC6A4 = 0; // Currently unknown, might be a different type. +s32 D_800DC6A8 = 0; // Currently unknown, might be a different type. +s32 D_800DC6AC = 0; // Currently unknown, might be a different type. + +s32 D_800DC6B0 = 0; // Currently unknown, might be a different type. +s32 D_800DC6B4 = 0; // Currently unknown, might be a different type. +unk800DC6BC_40* D_800DC6B8 = NULL; +unk800DC6BC* gAlSndPlayer = (unk800DC6BC*)0x80119BD0; // What variable is 0x80119BD0? + +s32 sfxVolumeSlider = 0x100; +s32 D_800DC6C4 = 0; // Currently unknown, might be a different type. + +/*******************************/ + +/*** No .rodata section ***/ + +/************ .bss ************/ -extern u32 D_800DC6A0; -//extern unk800DC6B0* D_800DC6B0; -extern unk800DC6BC_40* D_800DC6B8; -extern unk800DC6BC* gAlSndPlayer; -extern s32 sfxVolumeSlider; extern s32 D_80115F90; extern ALHeap* D_80115F94; extern OSThread audioThread; @@ -97,6 +118,8 @@ extern OSMesg D_80119B08; extern u16* D_80119C28; extern f32 D_80126170; +/******************************/ + void *alHeapDBAlloc(u8 *, s32, ALHeap *, s32, s32); #if 1 diff --git a/tools/python/generate_ld.py b/tools/python/generate_ld.py index 396a7e9b..1b63de4f 100644 --- a/tools/python/generate_ld.py +++ b/tools/python/generate_ld.py @@ -75,7 +75,8 @@ class GenerateLD: def gen_data_section(self): self.gen_line('.main_data 0x80000400 : AT(romPos) SUBALIGN(16)') self.gen_open_block() - self.gen_line(BUILD_DIR + '/src/unknown_001050.o(.data);') + for file in self.files: + self.gen_line(file[0] + '(.data);') self.gen_line(BUILD_DIR + '/data/dkr.data.o(.data);') self.gen_close_block() self.gen_line('romPos += SIZEOF(.main_data);')