core1/code_8C50

This commit is contained in:
Banjo Kazooie
2024-09-04 20:12:37 -05:00
parent 06e1330e71
commit 5593309d99
4 changed files with 67 additions and 21 deletions

View File

@@ -160,8 +160,8 @@ segments:
- [0xF44940, c, code_7090]
- [0xF44b60, c, code_72B0]
- [0xF45810, c, code_7F60]
- [0xF46500, bin, untouched]
# # - [0xF21EA0, c, code_8C50] #DONE
- [0xF46500, c, code_8C50]
- [0xF475C0, bin, untouched]
# # - [0xF22F80, c, code_9D30] #DONE
# # - [0xF23E00, c, code_ABB0] #DONE
# # - [0xF260B0, c, code_CE60] #DONE
@@ -358,9 +358,9 @@ segments:
# # - [0xF4DCD0, c, io/epirawread] #DONE
# # - [0xF4DD20, c, os/setglobalintmask] #DONE
# # - [0xF4DD70, c, os/yieldthread] #DONE
# # - [0xF4DDC0, bin, n_aspMain_text]
# # - [0xF4EA20, bin, gSPF3DEX_fifo_text]
# # - [0xF4FE50, bin, gSPL3DEX_fifo_text]
- [0xF71750, bin, n_aspMain_text]
- [0xF723B0, bin, gSPF3DEX_fifo_text]
- [0xF737E0, bin, gSPL3DEX_fifo_text]
- [0xF747D0, linker_offset, DATA_START] #data Section
- [0xF747D0, .data, code_0]
- [0xF74830, .data, code_660]
@@ -373,8 +373,8 @@ segments:
- [0xF74AA0, .data, code_7090]
- [0xF74AB0, bin, data_37ED0] #unreferenced
- [0xF74AC0, .data, code_7F60]
- [0xF74AD0, bin, remain_core1_data]
# # - [0xF51140, .data, code_8C50]
- [0xF74AD0, .data, code_8C50]
- [0xF74C60, bin, remain_core1_data]
# # - [0xF51280, .data, code_9D30]
# # - [0xF51430, .data, code_ABB0]
# # - [0xF51440, .data, code_CE60]
@@ -453,9 +453,9 @@ segments:
# # - [0xF54600, .rodata, io/devmgr]
# # - [0xF54620, .rodata, audio/env]
# # - [0xF54670, .rodata, audio/resample]
# # - [0xF546B0, bin, n_aspMain_data]
# # - [0xF54960, bin, gSPF3DEX_fifo_data]
# # - [0xF55160, bin, gSPL3DEX_fifo_data]
- [0xF77F20, bin, n_aspMain_data]
- [0xF781D0, bin, gSPF3DEX_fifo_data]
- [0xF789D0, bin, gSPL3DEX_fifo_data]
- [0xF791D0, .bss, code_0]
- [0xF791D0, .bss, code_660]
- [0xF791D0, .bss, inflate]
@@ -466,7 +466,7 @@ segments:
- [0xF791D0, .bss, code_5650]
- [0xF791D0, .bss, code_7090]
- [0xF791D0, .bss, code_72B0]
# # - [0xF791D0, .bss, code_8C50]
- [0xF791D0, .bss, code_8C50]
# # - [0xF791D0, .bss, code_ABB0]
# # - [0xF791D0, .bss, code_CE60]
# # - [0xF791D0, .bss, code_E360]

View File

@@ -1,5 +1,4 @@
/* Microcode renames to match ucode.h names */
/*
n_aspMainTextStart = _binary_bin_core1_n_aspMain_text_bin_start;
n_aspMainTextEnd = _binary_bin_core1_n_aspMain_text_bin_end;
gSPF3DEX_fifoTextStart = _binary_bin_core1_gSPF3DEX_fifo_text_bin_start;
@@ -12,9 +11,9 @@ gSPF3DEX_fifoDataStart = _binary_bin_core1_gSPF3DEX_fifo_data_bin_start;
gSPF3DEX_fifoDataEnd = _binary_bin_core1_gSPF3DEX_fifo_data_bin_end;
gSPL3DEX_fifoDataStart = _binary_bin_core1_gSPL3DEX_fifo_data_bin_start;
gSPL3DEX_fifoDataEnd = _binary_bin_core1_gSPL3DEX_fifo_data_bin_end;
*/
/* Fixed-address buffers */
D_80000300 = 0x80000300;
D_8000E800 = 0x8000E800;
D_8002D500 = 0x8002D500;
D_8023DA00 = 0x8023DA00; /* confirm */
@@ -34,8 +33,9 @@ boot_gOverlayTable = gOverlayTable;
boot_func_8023DA20 = func_8023DA20;
/* Temporary Correct*/
D_80000300 = 0x80000300;
func_8024BDAC = 0x8024ba3c;
func_8024BE30 = 0x8024BAC0;
func_8024BFAC = 0x8024bc18;
func_8024C428 = 0x8024C078;
viewport_get_position_vec3f = 0x8024c21c;
veiwport_get_position_vec3w = 0x8024c240;
@@ -43,10 +43,12 @@ viewport_get_rotation_vec3f = 0x8024c3b4;
func_8024E71C = 0x8024e36c;
pfsManager_update = 0x8024e418;
pfsManager_init = 0x8024ecac;
pfsManager_getStartReadData = 0x8024ee00;
musicInstruments_init = 0x8024f130;
func_80250650 = 0x802502a0;
rumbleManager_80250C08 = 0x80250858;
rumbleManager_init = 0x802508d4;
rumbleManager_80250FC0 = 0x80250c10;
overlayManagerloadCore2 = 0x80250f58;
func_802535A8 = 0x802531f8;
func_80254008 = 0x80253c58;
@@ -61,6 +63,7 @@ func_80255ACC = 0x8025571c;
write_file_blocks = 0x80255780;
func_80255C30 = 0x80255880;
func_80255CD8 = 0x80255928;
func_80255D0C = 0x8025595c;
func_80255D44 = 0x80255994;
ml_dotProduct_vec3f = 0x80255c84;
ml_distance_vec3f = 0x80255cb4;
@@ -76,7 +79,9 @@ ml_vec3f_diff_copy = 0x80258810;
ml_vec3f_diff = 0x80258844;
ml_vec3f_add = 0x80258898;
func_8025AFB0 = 0x8025AC00;
func_8025AFB8 = 0x8025ac08;
sns_find_and_parse_payload = 0x8025ae30;
___osGetSR = 0x8025ac30;
sns_write_payload_over_heap = 0x8025b350;
DEBUG_use_special_bootmap = 0x8025b460;
n_alInit = 0x8025bf70;
@@ -98,7 +103,6 @@ osWriteBackDCacheAll = 0x80263830;
__osInitialize_common = 0x80263860;
osCreateThread = 0x80263b50;
sinf = 0x80263ca0;
guMtxIdentF = 0x80264e30;
alCents2Ratio = 0x80263e60;
alHeapInit = 0x80263eb0;
osCreateMesgQueue = 0x80263ef0;
@@ -120,13 +124,27 @@ osDestroyThread = 0x80264a00;
osSendMesg = 0x80264b00;
osSetThreadPri = 0x80264c50;
guMtxF2L = 0x80264d30;
guMtxIdentF = 0x80264e30;
gu_sqrtf = 0x80264fa0;
cosf = 0x80264fb0;
osSetIntMask = 0x80265120;
osDpSetStatus = 0x802651c0;
osSpTaskLoad = 0x802652ec;
osSpTaskStartGo = 0x8026547c;
osDpGetStatus = 0x802654c0;
osViGetCurrentFramebuffer = 0x802654d0;
osStopTimer = 0x80265510;
osSetTimer = 0x80265600;
__d_to_ull = 0x80265718;
__ull_to_d = 0x80265884;
osSpTaskYielded = 0x802658f0;
osSpTaskYield = 0x80265970;
osViSetMode = 0x80265990;
osSetEventMesg = 0x80265a00;
framebuffer_width = 0x802762d8;
framebuffer_height = 0x802762dc;
n_syn = 0x80276bd4;
osClockRate = 0x80276e70;
osViClock = 0x80276e78;
core2_TEXT_START = 0x80286db0;

View File

@@ -292,9 +292,8 @@ void audioManager_init(void){
if(osTvType != OS_TV_NTSC)
osViClock = 0x2e6025c;
#elif VERSION == VERSION_PAL
PAL_EXCLUSIVE(
osViClock = 0x2f5b2d2;
)
#endif
audioManager_create();
sfxInstruments_init();
musicInstruments_init();
@@ -610,6 +609,7 @@ void func_802403F0(void) {
void *audioManager_getThread_PAL(void){
return &audioManager.thread;
}
#endif
void audioManager_stopThread(void){
if(D_80275774){

View File

@@ -1,7 +1,7 @@
#include <ultra64.h>
#include "functions.h"
#include "variables.h"
#include "version.h"
typedef struct {
s32 unk0;
@@ -283,7 +283,11 @@ void func_80246D78(void){
if(D_802806D0){
osStopTimer(&D_802806B0);
#if VERSION == VERSION_USA_1_0
osSetTimer(&D_802806B0, ((osClockRate / 60)* 2) / 3, 0, &D_8027FB60, CORE1_8C50_EVENT_CONT_TIMER);
#elif VERSION == VERSION_PAL
osSetTimer(&D_802806B0, ((osClockRate / 60.0)* 2) / 3, 0, &D_8027FB60, CORE1_8C50_EVENT_CONT_TIMER);
#endif
}
}
@@ -389,16 +393,40 @@ void func_8024730C(void){
{640, 1024, 0x2501FF, 0xE0204, 2}
}
};
#if VERSION == VERSION_PAL
static OSViMode D_80275A48 = {
OS_VI_PAL_LPN1, /* type */
{
VI_CTRL_TYPE_16 | VI_CTRL_GAMMA_DITHER_ON | VI_CTRL_GAMMA_ON | 0x3200, /*ctrl*/
320, /*width*/
0x404233A, /*burst*/
0x271, /*vSync*/
0x150C69, /* hSync*/
0xC6F0C6E, /* leap*/
0x800300, /* hStart*/
0, /* xScale*/
0, /* vCurrent*/
},
{
{640, 1024, 0x5F0239, 0x9026B, 2},
{640, 1024, 0x5F0239, 0x9026B, 2}
}
};
#endif
static s32 D_802806D4;
if(!D_802806D4){
D_802806D4 = TRUE;
#if VERSION == VERSION_USA_1_0
if(osTvType != OS_TV_NTSC){
osViSetMode(&D_802759A8);
} else {
osViSetMode(&D_802759F8);
}
#elif VERSION == VERSION_PAL
// if(&D_802759A8){}
osViSetMode(&D_80275A48);
#endif
rumbleManager_80250FC0(); //stop controller motors
do{
osDpSetStatus(DPC_STATUS_FLUSH);