core1/code_8C50
This commit is contained in:
@@ -160,8 +160,8 @@ segments:
|
|||||||
- [0xF44940, c, code_7090]
|
- [0xF44940, c, code_7090]
|
||||||
- [0xF44b60, c, code_72B0]
|
- [0xF44b60, c, code_72B0]
|
||||||
- [0xF45810, c, code_7F60]
|
- [0xF45810, c, code_7F60]
|
||||||
- [0xF46500, bin, untouched]
|
- [0xF46500, c, code_8C50]
|
||||||
# # - [0xF21EA0, c, code_8C50] #DONE
|
- [0xF475C0, bin, untouched]
|
||||||
# # - [0xF22F80, c, code_9D30] #DONE
|
# # - [0xF22F80, c, code_9D30] #DONE
|
||||||
# # - [0xF23E00, c, code_ABB0] #DONE
|
# # - [0xF23E00, c, code_ABB0] #DONE
|
||||||
# # - [0xF260B0, c, code_CE60] #DONE
|
# # - [0xF260B0, c, code_CE60] #DONE
|
||||||
@@ -358,9 +358,9 @@ segments:
|
|||||||
# # - [0xF4DCD0, c, io/epirawread] #DONE
|
# # - [0xF4DCD0, c, io/epirawread] #DONE
|
||||||
# # - [0xF4DD20, c, os/setglobalintmask] #DONE
|
# # - [0xF4DD20, c, os/setglobalintmask] #DONE
|
||||||
# # - [0xF4DD70, c, os/yieldthread] #DONE
|
# # - [0xF4DD70, c, os/yieldthread] #DONE
|
||||||
# # - [0xF4DDC0, bin, n_aspMain_text]
|
- [0xF71750, bin, n_aspMain_text]
|
||||||
# # - [0xF4EA20, bin, gSPF3DEX_fifo_text]
|
- [0xF723B0, bin, gSPF3DEX_fifo_text]
|
||||||
# # - [0xF4FE50, bin, gSPL3DEX_fifo_text]
|
- [0xF737E0, bin, gSPL3DEX_fifo_text]
|
||||||
- [0xF747D0, linker_offset, DATA_START] #data Section
|
- [0xF747D0, linker_offset, DATA_START] #data Section
|
||||||
- [0xF747D0, .data, code_0]
|
- [0xF747D0, .data, code_0]
|
||||||
- [0xF74830, .data, code_660]
|
- [0xF74830, .data, code_660]
|
||||||
@@ -373,8 +373,8 @@ segments:
|
|||||||
- [0xF74AA0, .data, code_7090]
|
- [0xF74AA0, .data, code_7090]
|
||||||
- [0xF74AB0, bin, data_37ED0] #unreferenced
|
- [0xF74AB0, bin, data_37ED0] #unreferenced
|
||||||
- [0xF74AC0, .data, code_7F60]
|
- [0xF74AC0, .data, code_7F60]
|
||||||
- [0xF74AD0, bin, remain_core1_data]
|
- [0xF74AD0, .data, code_8C50]
|
||||||
# # - [0xF51140, .data, code_8C50]
|
- [0xF74C60, bin, remain_core1_data]
|
||||||
# # - [0xF51280, .data, code_9D30]
|
# # - [0xF51280, .data, code_9D30]
|
||||||
# # - [0xF51430, .data, code_ABB0]
|
# # - [0xF51430, .data, code_ABB0]
|
||||||
# # - [0xF51440, .data, code_CE60]
|
# # - [0xF51440, .data, code_CE60]
|
||||||
@@ -453,9 +453,9 @@ segments:
|
|||||||
# # - [0xF54600, .rodata, io/devmgr]
|
# # - [0xF54600, .rodata, io/devmgr]
|
||||||
# # - [0xF54620, .rodata, audio/env]
|
# # - [0xF54620, .rodata, audio/env]
|
||||||
# # - [0xF54670, .rodata, audio/resample]
|
# # - [0xF54670, .rodata, audio/resample]
|
||||||
# # - [0xF546B0, bin, n_aspMain_data]
|
- [0xF77F20, bin, n_aspMain_data]
|
||||||
# # - [0xF54960, bin, gSPF3DEX_fifo_data]
|
- [0xF781D0, bin, gSPF3DEX_fifo_data]
|
||||||
# # - [0xF55160, bin, gSPL3DEX_fifo_data]
|
- [0xF789D0, bin, gSPL3DEX_fifo_data]
|
||||||
- [0xF791D0, .bss, code_0]
|
- [0xF791D0, .bss, code_0]
|
||||||
- [0xF791D0, .bss, code_660]
|
- [0xF791D0, .bss, code_660]
|
||||||
- [0xF791D0, .bss, inflate]
|
- [0xF791D0, .bss, inflate]
|
||||||
@@ -466,7 +466,7 @@ segments:
|
|||||||
- [0xF791D0, .bss, code_5650]
|
- [0xF791D0, .bss, code_5650]
|
||||||
- [0xF791D0, .bss, code_7090]
|
- [0xF791D0, .bss, code_7090]
|
||||||
- [0xF791D0, .bss, code_72B0]
|
- [0xF791D0, .bss, code_72B0]
|
||||||
# # - [0xF791D0, .bss, code_8C50]
|
- [0xF791D0, .bss, code_8C50]
|
||||||
# # - [0xF791D0, .bss, code_ABB0]
|
# # - [0xF791D0, .bss, code_ABB0]
|
||||||
# # - [0xF791D0, .bss, code_CE60]
|
# # - [0xF791D0, .bss, code_CE60]
|
||||||
# # - [0xF791D0, .bss, code_E360]
|
# # - [0xF791D0, .bss, code_E360]
|
||||||
|
@@ -1,5 +1,4 @@
|
|||||||
/* Microcode renames to match ucode.h names */
|
/* Microcode renames to match ucode.h names */
|
||||||
/*
|
|
||||||
n_aspMainTextStart = _binary_bin_core1_n_aspMain_text_bin_start;
|
n_aspMainTextStart = _binary_bin_core1_n_aspMain_text_bin_start;
|
||||||
n_aspMainTextEnd = _binary_bin_core1_n_aspMain_text_bin_end;
|
n_aspMainTextEnd = _binary_bin_core1_n_aspMain_text_bin_end;
|
||||||
gSPF3DEX_fifoTextStart = _binary_bin_core1_gSPF3DEX_fifo_text_bin_start;
|
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;
|
gSPF3DEX_fifoDataEnd = _binary_bin_core1_gSPF3DEX_fifo_data_bin_end;
|
||||||
gSPL3DEX_fifoDataStart = _binary_bin_core1_gSPL3DEX_fifo_data_bin_start;
|
gSPL3DEX_fifoDataStart = _binary_bin_core1_gSPL3DEX_fifo_data_bin_start;
|
||||||
gSPL3DEX_fifoDataEnd = _binary_bin_core1_gSPL3DEX_fifo_data_bin_end;
|
gSPL3DEX_fifoDataEnd = _binary_bin_core1_gSPL3DEX_fifo_data_bin_end;
|
||||||
*/
|
|
||||||
|
|
||||||
/* Fixed-address buffers */
|
/* Fixed-address buffers */
|
||||||
|
D_80000300 = 0x80000300;
|
||||||
D_8000E800 = 0x8000E800;
|
D_8000E800 = 0x8000E800;
|
||||||
D_8002D500 = 0x8002D500;
|
D_8002D500 = 0x8002D500;
|
||||||
D_8023DA00 = 0x8023DA00; /* confirm */
|
D_8023DA00 = 0x8023DA00; /* confirm */
|
||||||
@@ -34,8 +33,9 @@ boot_gOverlayTable = gOverlayTable;
|
|||||||
boot_func_8023DA20 = func_8023DA20;
|
boot_func_8023DA20 = func_8023DA20;
|
||||||
|
|
||||||
/* Temporary Correct*/
|
/* Temporary Correct*/
|
||||||
D_80000300 = 0x80000300;
|
func_8024BDAC = 0x8024ba3c;
|
||||||
func_8024BE30 = 0x8024BAC0;
|
func_8024BE30 = 0x8024BAC0;
|
||||||
|
func_8024BFAC = 0x8024bc18;
|
||||||
func_8024C428 = 0x8024C078;
|
func_8024C428 = 0x8024C078;
|
||||||
viewport_get_position_vec3f = 0x8024c21c;
|
viewport_get_position_vec3f = 0x8024c21c;
|
||||||
veiwport_get_position_vec3w = 0x8024c240;
|
veiwport_get_position_vec3w = 0x8024c240;
|
||||||
@@ -43,10 +43,12 @@ viewport_get_rotation_vec3f = 0x8024c3b4;
|
|||||||
func_8024E71C = 0x8024e36c;
|
func_8024E71C = 0x8024e36c;
|
||||||
pfsManager_update = 0x8024e418;
|
pfsManager_update = 0x8024e418;
|
||||||
pfsManager_init = 0x8024ecac;
|
pfsManager_init = 0x8024ecac;
|
||||||
|
pfsManager_getStartReadData = 0x8024ee00;
|
||||||
musicInstruments_init = 0x8024f130;
|
musicInstruments_init = 0x8024f130;
|
||||||
func_80250650 = 0x802502a0;
|
func_80250650 = 0x802502a0;
|
||||||
rumbleManager_80250C08 = 0x80250858;
|
rumbleManager_80250C08 = 0x80250858;
|
||||||
rumbleManager_init = 0x802508d4;
|
rumbleManager_init = 0x802508d4;
|
||||||
|
rumbleManager_80250FC0 = 0x80250c10;
|
||||||
overlayManagerloadCore2 = 0x80250f58;
|
overlayManagerloadCore2 = 0x80250f58;
|
||||||
func_802535A8 = 0x802531f8;
|
func_802535A8 = 0x802531f8;
|
||||||
func_80254008 = 0x80253c58;
|
func_80254008 = 0x80253c58;
|
||||||
@@ -61,6 +63,7 @@ func_80255ACC = 0x8025571c;
|
|||||||
write_file_blocks = 0x80255780;
|
write_file_blocks = 0x80255780;
|
||||||
func_80255C30 = 0x80255880;
|
func_80255C30 = 0x80255880;
|
||||||
func_80255CD8 = 0x80255928;
|
func_80255CD8 = 0x80255928;
|
||||||
|
func_80255D0C = 0x8025595c;
|
||||||
func_80255D44 = 0x80255994;
|
func_80255D44 = 0x80255994;
|
||||||
ml_dotProduct_vec3f = 0x80255c84;
|
ml_dotProduct_vec3f = 0x80255c84;
|
||||||
ml_distance_vec3f = 0x80255cb4;
|
ml_distance_vec3f = 0x80255cb4;
|
||||||
@@ -76,7 +79,9 @@ ml_vec3f_diff_copy = 0x80258810;
|
|||||||
ml_vec3f_diff = 0x80258844;
|
ml_vec3f_diff = 0x80258844;
|
||||||
ml_vec3f_add = 0x80258898;
|
ml_vec3f_add = 0x80258898;
|
||||||
func_8025AFB0 = 0x8025AC00;
|
func_8025AFB0 = 0x8025AC00;
|
||||||
|
func_8025AFB8 = 0x8025ac08;
|
||||||
sns_find_and_parse_payload = 0x8025ae30;
|
sns_find_and_parse_payload = 0x8025ae30;
|
||||||
|
___osGetSR = 0x8025ac30;
|
||||||
sns_write_payload_over_heap = 0x8025b350;
|
sns_write_payload_over_heap = 0x8025b350;
|
||||||
DEBUG_use_special_bootmap = 0x8025b460;
|
DEBUG_use_special_bootmap = 0x8025b460;
|
||||||
n_alInit = 0x8025bf70;
|
n_alInit = 0x8025bf70;
|
||||||
@@ -98,7 +103,6 @@ osWriteBackDCacheAll = 0x80263830;
|
|||||||
__osInitialize_common = 0x80263860;
|
__osInitialize_common = 0x80263860;
|
||||||
osCreateThread = 0x80263b50;
|
osCreateThread = 0x80263b50;
|
||||||
sinf = 0x80263ca0;
|
sinf = 0x80263ca0;
|
||||||
guMtxIdentF = 0x80264e30;
|
|
||||||
alCents2Ratio = 0x80263e60;
|
alCents2Ratio = 0x80263e60;
|
||||||
alHeapInit = 0x80263eb0;
|
alHeapInit = 0x80263eb0;
|
||||||
osCreateMesgQueue = 0x80263ef0;
|
osCreateMesgQueue = 0x80263ef0;
|
||||||
@@ -120,13 +124,27 @@ osDestroyThread = 0x80264a00;
|
|||||||
osSendMesg = 0x80264b00;
|
osSendMesg = 0x80264b00;
|
||||||
osSetThreadPri = 0x80264c50;
|
osSetThreadPri = 0x80264c50;
|
||||||
guMtxF2L = 0x80264d30;
|
guMtxF2L = 0x80264d30;
|
||||||
|
guMtxIdentF = 0x80264e30;
|
||||||
gu_sqrtf = 0x80264fa0;
|
gu_sqrtf = 0x80264fa0;
|
||||||
cosf = 0x80264fb0;
|
cosf = 0x80264fb0;
|
||||||
osSetIntMask = 0x80265120;
|
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_width = 0x802762d8;
|
||||||
framebuffer_height = 0x802762dc;
|
framebuffer_height = 0x802762dc;
|
||||||
n_syn = 0x80276bd4;
|
n_syn = 0x80276bd4;
|
||||||
|
osClockRate = 0x80276e70;
|
||||||
osViClock = 0x80276e78;
|
osViClock = 0x80276e78;
|
||||||
|
|
||||||
core2_TEXT_START = 0x80286db0;
|
core2_TEXT_START = 0x80286db0;
|
||||||
|
@@ -292,9 +292,8 @@ void audioManager_init(void){
|
|||||||
if(osTvType != OS_TV_NTSC)
|
if(osTvType != OS_TV_NTSC)
|
||||||
osViClock = 0x2e6025c;
|
osViClock = 0x2e6025c;
|
||||||
#elif VERSION == VERSION_PAL
|
#elif VERSION == VERSION_PAL
|
||||||
PAL_EXCLUSIVE(
|
|
||||||
osViClock = 0x2f5b2d2;
|
osViClock = 0x2f5b2d2;
|
||||||
)
|
#endif
|
||||||
audioManager_create();
|
audioManager_create();
|
||||||
sfxInstruments_init();
|
sfxInstruments_init();
|
||||||
musicInstruments_init();
|
musicInstruments_init();
|
||||||
@@ -610,6 +609,7 @@ void func_802403F0(void) {
|
|||||||
void *audioManager_getThread_PAL(void){
|
void *audioManager_getThread_PAL(void){
|
||||||
return &audioManager.thread;
|
return &audioManager.thread;
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
void audioManager_stopThread(void){
|
void audioManager_stopThread(void){
|
||||||
if(D_80275774){
|
if(D_80275774){
|
||||||
|
@@ -1,7 +1,7 @@
|
|||||||
#include <ultra64.h>
|
#include <ultra64.h>
|
||||||
#include "functions.h"
|
#include "functions.h"
|
||||||
#include "variables.h"
|
#include "variables.h"
|
||||||
|
#include "version.h"
|
||||||
|
|
||||||
typedef struct {
|
typedef struct {
|
||||||
s32 unk0;
|
s32 unk0;
|
||||||
@@ -283,7 +283,11 @@ void func_80246D78(void){
|
|||||||
|
|
||||||
if(D_802806D0){
|
if(D_802806D0){
|
||||||
osStopTimer(&D_802806B0);
|
osStopTimer(&D_802806B0);
|
||||||
|
#if VERSION == VERSION_USA_1_0
|
||||||
osSetTimer(&D_802806B0, ((osClockRate / 60)* 2) / 3, 0, &D_8027FB60, CORE1_8C50_EVENT_CONT_TIMER);
|
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}
|
{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;
|
static s32 D_802806D4;
|
||||||
|
|
||||||
if(!D_802806D4){
|
if(!D_802806D4){
|
||||||
D_802806D4 = TRUE;
|
D_802806D4 = TRUE;
|
||||||
|
#if VERSION == VERSION_USA_1_0
|
||||||
if(osTvType != OS_TV_NTSC){
|
if(osTvType != OS_TV_NTSC){
|
||||||
osViSetMode(&D_802759A8);
|
osViSetMode(&D_802759A8);
|
||||||
} else {
|
} else {
|
||||||
osViSetMode(&D_802759F8);
|
osViSetMode(&D_802759F8);
|
||||||
}
|
}
|
||||||
|
#elif VERSION == VERSION_PAL
|
||||||
|
// if(&D_802759A8){}
|
||||||
|
osViSetMode(&D_80275A48);
|
||||||
|
#endif
|
||||||
rumbleManager_80250FC0(); //stop controller motors
|
rumbleManager_80250FC0(); //stop controller motors
|
||||||
do{
|
do{
|
||||||
osDpSetStatus(DPC_STATUS_FLUSH);
|
osDpSetStatus(DPC_STATUS_FLUSH);
|
||||||
|
Reference in New Issue
Block a user