Move asm/Runtime/PPCEABI/H code into asm/Runtime

Former-commit-id: 19206f91f9
This commit is contained in:
Phillip Stephens 2022-04-06 01:17:53 -07:00
parent fc22b7d051
commit 57eb04bb05
73 changed files with 97 additions and 73 deletions

View File

@ -1,6 +1,6 @@
.include "macros.inc" .include "macros.inc"
.section extab_, "wa" # 0x800035A0 - 0x800035E0 .section .extab, "wa" # 0x800035A0 - 0x800035E0
.global __destroy_arr_extab .global __destroy_arr_extab
__destroy_arr_extab: __destroy_arr_extab:
# ROM: 0x3C8120 # ROM: 0x3C8120

View File

@ -1,6 +1,6 @@
.include "macros.inc" .include "macros.inc"
.section extabindex_, "wa" # 0x800035E0 - 0x80003640 .section .extabindex, "wa" # 0x800035E0 - 0x80003640
lbl_extabindex: lbl_extabindex:
# ROM: 0x3C8160 # ROM: 0x3C8160
.4byte __destroy_arr .4byte __destroy_arr

View File

@ -1697,6 +1697,7 @@ lbl_803D8560:
.global lbl_803D8568 .global lbl_803D8568
lbl_803D8568: lbl_803D8568:
.incbin "baserom.dol", 0x3D5568, 0x8 .incbin "baserom.dol", 0x3D5568, 0x8
# -- END TEXT --
.global lbl_803D8570 .global lbl_803D8570
lbl_803D8570: lbl_803D8570:
.incbin "baserom.dol", 0x3D5570, 0x18 .incbin "baserom.dol", 0x3D5570, 0x18

View File

@ -1923,6 +1923,7 @@ lbl_805A96AC:
.global lbl_805A96B0 .global lbl_805A96B0
lbl_805A96B0: lbl_805A96B0:
.skip 0x8 .skip 0x8
# -- END .TEXT -- #
.global lbl_805A96B8 .global lbl_805A96B8
lbl_805A96B8: lbl_805A96B8:
.skip 0x4 .skip 0x4

View File

@ -5594,6 +5594,7 @@ lbl_805A8A5D:
.global lbl_805A8A60 .global lbl_805A8A60
lbl_805A8A60: lbl_805A8A60:
.incbin "baserom.dol", 0x3F6400, 0x8 .incbin "baserom.dol", 0x3F6400, 0x8
# -- END .TEXT -- #
.global lbl_805A8A68 .global lbl_805A8A68
lbl_805A8A68: lbl_805A8A68:
.incbin "baserom.dol", 0x3F6408, 0x8 .incbin "baserom.dol", 0x3F6408, 0x8

View File

@ -12998,6 +12998,7 @@ lbl_805AEB18:
.global lbl_805AEB1C .global lbl_805AEB1C
lbl_805AEB1C: lbl_805AEB1C:
.incbin "baserom.dol", 0x3FB3BC, 0x4 .incbin "baserom.dol", 0x3FB3BC, 0x4
#-- END .TEXT --#
.global lbl_805AEB20 .global lbl_805AEB20
lbl_805AEB20: lbl_805AEB20:
.incbin "baserom.dol", 0x3FB3C0, 0x4 .incbin "baserom.dol", 0x3FB3C0, 0x4

View File

@ -8,9 +8,8 @@ SECTIONS
GROUP: GROUP:
{ {
.init ALIGN(0x20):{} .init ALIGN(0x20):{}
/* TODO: should be extab and extabindex */ .extab ALIGN(0x20):{}
extab_ ALIGN(0x20):{} .extabindex ALIGN(0x20):{}
extabindex_ ALIGN(0x20):{}
.text ALIGN(0x20):{} .text ALIGN(0x20):{}
.ctors ALIGN(0x20):{} .ctors ALIGN(0x20):{}
.dtors ALIGN(0x20):{} .dtors ALIGN(0x20):{}
@ -42,4 +41,5 @@ FORCEFILES
misc_io.o misc_io.o
printf.o printf.o
uart_console_io.o uart_console_io.o
iram_image.o
} }

View File

@ -5,8 +5,8 @@ PHDRS
{ {
init PT_LOAD; init PT_LOAD;
text PT_LOAD; text PT_LOAD;
extab_ PT_LOAD; extab PT_LOAD;
extabindex_ PT_LOAD; extabindex PT_LOAD;
ctors PT_LOAD; ctors PT_LOAD;
dtors PT_LOAD; dtors PT_LOAD;
rodata PT_LOAD; rodata PT_LOAD;
@ -21,8 +21,8 @@ SECTIONS
{ {
.init 0x80003100 : { *(.init) } : init .init 0x80003100 : { *(.init) } : init
.text 0x80003640 : { *(.text) } : text .text 0x80003640 : { *(.text) } : text
extab_ 0x800035A0 : { *(extab_) } : extab_ .extab 0x800035A0 : { *(.extab) } : extab
extabindex_ 0x800035E0 : { *(extabindex_) } : extabindex_ .extabindex 0x800035E0 : { *(.extabindex) } : extabindex
.ctors 0x803CB1C0 : { *(.ctors) } : ctors .ctors 0x803CB1C0 : { *(.ctors) } : ctors
.dtors 0x803CB380 : { *(.dtors) } : dtors .dtors 0x803CB380 : { *(.dtors) } : dtors
.rodata 0x803CB3A0 : { *(.rodata) } : rodata .rodata 0x803CB3A0 : { *(.rodata) } : rodata

View File

@ -1,7 +1,7 @@
INIT_O_FILES :=\ INIT_O_FILES :=\
$(BUILD_DIR)/src/os/__start.o\ $(BUILD_DIR)/src/os/__start.o\
$(BUILD_DIR)/src/os/__ppc_eabi_init.o\ $(BUILD_DIR)/src/os/__ppc_eabi_init.o\
$(BUILD_DIR)/asm/Runtime/PPCEABI/H/__mem.o $(BUILD_DIR)/asm/Runtime/__mem.o
KYOTO_CWD :=\ KYOTO_CWD :=\
$(BUILD_DIR)/asm/Kyoto_CWD/main.o\ $(BUILD_DIR)/asm/Kyoto_CWD/main.o\
@ -93,67 +93,67 @@ VI_FILES :=\
$(BUILD_DIR)/asm/Dolphin/vi.o $(BUILD_DIR)/asm/Dolphin/vi.o
MSL_PPCEABI_BARE_H :=\ MSL_PPCEABI_BARE_H :=\
$(BUILD_DIR)/asm/Runtime/PPCEABI/H/sbss.o\ $(BUILD_DIR)/asm/Runtime/sbss.o\
$(BUILD_DIR)/asm/Runtime/PPCEABI/H/__va_arg.o\ $(BUILD_DIR)/asm/Runtime/__va_arg.o\
$(BUILD_DIR)/asm/Runtime/PPCEABI/H/global_destructor_chain.o\ $(BUILD_DIR)/asm/Runtime/global_destructor_chain.o\
$(BUILD_DIR)/asm/Runtime/PPCEABI/H/CPlusLibPPC.o\ $(BUILD_DIR)/asm/Runtime/CPlusLibPPC.o\
$(BUILD_DIR)/asm/Runtime/PPCEABI/H/NMWException.o\ $(BUILD_DIR)/asm/Runtime/NMWException.o\
$(BUILD_DIR)/asm/Runtime/PPCEABI/H/ptmf.o\ $(BUILD_DIR)/asm/Runtime/ptmf.o\
$(BUILD_DIR)/asm/Runtime/PPCEABI/H/runtime.o\ $(BUILD_DIR)/asm/Runtime/runtime.o\
$(BUILD_DIR)/asm/Runtime/PPCEABI/H/__init_cpp_exceptions.o\ $(BUILD_DIR)/asm/Runtime/__init_cpp_exceptions.o\
$(BUILD_DIR)/asm/Runtime/PPCEABI/H/Gecko_ExceptionPPC.o\ $(BUILD_DIR)/asm/Runtime/Gecko_ExceptionPPC.o\
$(BUILD_DIR)/asm/Runtime/PPCEABI/H/abort_exit.o\ $(BUILD_DIR)/asm/Runtime/abort_exit.o\
$(BUILD_DIR)/asm/Runtime/PPCEABI/H/alloc.o\ $(BUILD_DIR)/asm/Runtime/alloc.o\
$(BUILD_DIR)/asm/Runtime/PPCEABI/H/ansi_files.o\ $(BUILD_DIR)/asm/Runtime/ansi_files.o\
$(BUILD_DIR)/asm/Runtime/PPCEABI/H/ansi_fp.o\ $(BUILD_DIR)/asm/Runtime/ansi_fp.o\
$(BUILD_DIR)/asm/Runtime/PPCEABI/H/arith.o\ $(BUILD_DIR)/asm/Runtime/arith.o\
$(BUILD_DIR)/asm/Runtime/PPCEABI/H/buffer_io.o\ $(BUILD_DIR)/asm/Runtime/buffer_io.o\
$(BUILD_DIR)/asm/Runtime/PPCEABI/H/ctype.o\ $(BUILD_DIR)/asm/Runtime/ctype.o\
$(BUILD_DIR)/asm/Runtime/PPCEABI/H/direct_io.o\ $(BUILD_DIR)/asm/Runtime/direct_io.o\
$(BUILD_DIR)/asm/Runtime/PPCEABI/H/file_io.o\ $(BUILD_DIR)/asm/Runtime/file_io.o\
$(BUILD_DIR)/asm/Runtime/PPCEABI/H/FILE_POS.o\ $(BUILD_DIR)/asm/Runtime/FILE_POS.o\
$(BUILD_DIR)/asm/Runtime/PPCEABI/H/mbstring.o\ $(BUILD_DIR)/asm/Runtime/mbstring.o\
$(BUILD_DIR)/asm/Runtime/PPCEABI/H/mem.o\ $(BUILD_DIR)/asm/Runtime/mem.o\
$(BUILD_DIR)/asm/Runtime/PPCEABI/H/mem_funcs.o\ $(BUILD_DIR)/asm/Runtime/mem_funcs.o\
$(BUILD_DIR)/asm/Runtime/PPCEABI/H/misc_io.o\ $(BUILD_DIR)/asm/Runtime/misc_io.o\
$(BUILD_DIR)/asm/Runtime/PPCEABI/H/printf.o\ $(BUILD_DIR)/asm/Runtime/printf.o\
$(BUILD_DIR)/asm/Runtime/PPCEABI/H/qsort.o\ $(BUILD_DIR)/asm/Runtime/qsort.o\
$(BUILD_DIR)/asm/Runtime/PPCEABI/H/rand.o\ $(BUILD_DIR)/asm/Runtime/rand.o\
$(BUILD_DIR)/asm/Runtime/PPCEABI/H/sscanf.o\ $(BUILD_DIR)/asm/Runtime/sscanf.o\
$(BUILD_DIR)/asm/Runtime/PPCEABI/H/string.o\ $(BUILD_DIR)/asm/Runtime/string.o\
$(BUILD_DIR)/asm/Runtime/PPCEABI/H/strtold.o\ $(BUILD_DIR)/asm/Runtime/strtold.o\
$(BUILD_DIR)/asm/Runtime/PPCEABI/H/uart_console_io.o\ $(BUILD_DIR)/asm/Runtime/uart_console_io.o\
$(BUILD_DIR)/asm/Runtime/PPCEABI/H/widechar_io.o\ $(BUILD_DIR)/asm/Runtime/widechar_io.o\
$(BUILD_DIR)/asm/Runtime/PPCEABI/H/e_acos.o\ $(BUILD_DIR)/asm/Runtime/e_acos.o\
$(BUILD_DIR)/asm/Runtime/PPCEABI/H/e_asin.o\ $(BUILD_DIR)/asm/Runtime/e_asin.o\
$(BUILD_DIR)/asm/Runtime/PPCEABI/H/e_atan2.o\ $(BUILD_DIR)/asm/Runtime/e_atan2.o\
$(BUILD_DIR)/asm/Runtime/PPCEABI/H/e_exp.o\ $(BUILD_DIR)/asm/Runtime/e_exp.o\
$(BUILD_DIR)/asm/Runtime/PPCEABI/H/e_fmod.o\ $(BUILD_DIR)/asm/Runtime/e_fmod.o\
$(BUILD_DIR)/asm/Runtime/PPCEABI/H/e_log.o\ $(BUILD_DIR)/asm/Runtime/e_log.o\
$(BUILD_DIR)/asm/Runtime/PPCEABI/H/e_pow.o\ $(BUILD_DIR)/asm/Runtime/e_pow.o\
$(BUILD_DIR)/asm/Runtime/PPCEABI/H/e_rem_pio2.o\ $(BUILD_DIR)/asm/Runtime/e_rem_pio2.o\
$(BUILD_DIR)/asm/Runtime/PPCEABI/H/k_cos.o\ $(BUILD_DIR)/asm/Runtime/k_cos.o\
$(BUILD_DIR)/asm/Runtime/PPCEABI/H/k_rem_pio2.o\ $(BUILD_DIR)/asm/Runtime/k_rem_pio2.o\
$(BUILD_DIR)/asm/Runtime/PPCEABI/H/k_sin.o\ $(BUILD_DIR)/asm/Runtime/k_sin.o\
$(BUILD_DIR)/asm/Runtime/PPCEABI/H/k_tan.o\ $(BUILD_DIR)/asm/Runtime/k_tan.o\
$(BUILD_DIR)/asm/Runtime/PPCEABI/H/s_atan.o\ $(BUILD_DIR)/asm/Runtime/s_atan.o\
$(BUILD_DIR)/asm/Runtime/PPCEABI/H/s_copysign.o\ $(BUILD_DIR)/asm/Runtime/s_copysign.o\
$(BUILD_DIR)/asm/Runtime/PPCEABI/H/s_cos.o\ $(BUILD_DIR)/asm/Runtime/s_cos.o\
$(BUILD_DIR)/asm/Runtime/PPCEABI/H/s_floor.o\ $(BUILD_DIR)/asm/Runtime/s_floor.o\
$(BUILD_DIR)/asm/Runtime/PPCEABI/H/s_frexp.o\ $(BUILD_DIR)/asm/Runtime/s_frexp.o\
$(BUILD_DIR)/asm/Runtime/PPCEABI/H/s_ldexp.o\ $(BUILD_DIR)/asm/Runtime/s_ldexp.o\
$(BUILD_DIR)/asm/Runtime/PPCEABI/H/s_modf.o\ $(BUILD_DIR)/asm/Runtime/s_modf.o\
$(BUILD_DIR)/asm/Runtime/PPCEABI/H/s_nextafter.o\ $(BUILD_DIR)/asm/Runtime/s_nextafter.o\
$(BUILD_DIR)/asm/Runtime/PPCEABI/H/s_sin.o\ $(BUILD_DIR)/asm/Runtime/s_sin.o\
$(BUILD_DIR)/asm/Runtime/PPCEABI/H/s_tan.o\ $(BUILD_DIR)/asm/Runtime/s_tan.o\
$(BUILD_DIR)/asm/Runtime/PPCEABI/H/s_acos.o\ $(BUILD_DIR)/asm/Runtime/s_acos.o\
$(BUILD_DIR)/asm/Runtime/PPCEABI/H/s_asin.o\ $(BUILD_DIR)/asm/Runtime/s_asin.o\
$(BUILD_DIR)/asm/Runtime/PPCEABI/H/s_atan2.o\ $(BUILD_DIR)/asm/Runtime/s_atan2.o\
$(BUILD_DIR)/asm/Runtime/PPCEABI/H/s_exp.o\ $(BUILD_DIR)/asm/Runtime/s_exp.o\
$(BUILD_DIR)/asm/Runtime/PPCEABI/H/s_fmod.o\ $(BUILD_DIR)/asm/Runtime/s_fmod.o\
$(BUILD_DIR)/asm/Runtime/PPCEABI/H/s_log.o\ $(BUILD_DIR)/asm/Runtime/s_log.o\
$(BUILD_DIR)/asm/Runtime/PPCEABI/H/s_pow.o\ $(BUILD_DIR)/asm/Runtime/s_pow.o\
$(BUILD_DIR)/asm/Runtime/PPCEABI/H/s_cosf.o\ $(BUILD_DIR)/asm/Runtime/s_cosf.o\
MUSYX_FILES :=\ MUSYX_FILES :=\
$(BUILD_DIR)/asm/musyx/sbss.o\ $(BUILD_DIR)/asm/musyx/sbss.o\

View File

@ -1,4 +1,9 @@
char dspSlave[] = #include "src/musyx/iram_image.h"
#ifdef __cpluplus
extern "C" {
#endif
static const char dspSlave[] =
{ {
0x00, 0x00, 0x00, 0x00, 0x02, 0x9F, 0x0C, 0x10, 0x02, 0x9F, 0x0C, 0x1F, 0x02, 0x9F, 0x0C, 0x3B, 0x02, 0x9F, 0x0C, 0x4A, 0x02, 0x9F, 0x0C, 0x50, 0x02, 0x9F, 0x0C, 0x82, 0x02, 0x9F, 0x0C, 0x88, 0x00, 0x00, 0x00, 0x00, 0x02, 0x9F, 0x0C, 0x10, 0x02, 0x9F, 0x0C, 0x1F, 0x02, 0x9F, 0x0C, 0x3B, 0x02, 0x9F, 0x0C, 0x4A, 0x02, 0x9F, 0x0C, 0x50, 0x02, 0x9F, 0x0C, 0x82, 0x02, 0x9F, 0x0C, 0x88,
0x13, 0x02, 0x13, 0x03, 0x12, 0x04, 0x13, 0x05, 0x13, 0x06, 0x8E, 0x00, 0x8C, 0x00, 0x8B, 0x00, 0x00, 0x92, 0x00, 0xFF, 0x81, 0x00, 0x89, 0x00, 0x00, 0x9E, 0x0E, 0x80, 0x00, 0xFE, 0x0E, 0x1B, 0x13, 0x02, 0x13, 0x03, 0x12, 0x04, 0x13, 0x05, 0x13, 0x06, 0x8E, 0x00, 0x8C, 0x00, 0x8B, 0x00, 0x00, 0x92, 0x00, 0xFF, 0x81, 0x00, 0x89, 0x00, 0x00, 0x9E, 0x0E, 0x80, 0x00, 0xFE, 0x0E, 0x1B,
@ -210,4 +215,7 @@ char dspSlave[] =
0x0 0x0
}; };
int dspSlaveLength = sizeof(dspSlave); static const int dspSlaveLength = sizeof(dspSlave);
#ifdef __cpluplus
}
#endif

12
src/musyx/iram_image.h Normal file
View File

@ -0,0 +1,12 @@
#ifndef MUSYX_IRAM_IMAGE_H
#define MUSYX_IRAM_IMAGE_H
#ifdef __cpluplus
extern "C" {
#endif
static const char dspSlave[];
static const int dspSlaveLength;
#ifdef __cpluplus
}
#endif
#endif