diff --git a/decompressed.pal.yaml b/decompressed.pal.yaml index 9e4f156c..709d0a64 100644 --- a/decompressed.pal.yaml +++ b/decompressed.pal.yaml @@ -175,188 +175,188 @@ segments: - [0xF51FC0, hasm, code_155F0] - [0xF52000, c, overlay] - [0xF52140, c, code_15770] - - [0xF52500, bin, untouched] -# # - [0xF2ED80, c, code_15B30] #DONE -# # - [0xF2FCA0, c, memory] #DONE -# # - [0xF31360, c, code_18110] #DONE -# # - [0xF31460, c, code_18210] #DONE -# # - [0xF31560, c, code_18310] #DONE -# # - [0xF315A0, c, code_18350] #DONE -# # - [0xF350E0, c, code_1BE90] #DONE -# # - [0xF367E0, c, code_1D590] #DONE -# # - [0xF36810, hasm, code_1D5C0] #DONE -# # - [0xF36820, c, code_1D5D0] #DONE -# # - [0xF375B0, c, code_1E360] #DONE -# # - [0xF37930, c, code_1E6E0] #DONE -# # - [0xF37A70, hasm, code_1E820] #DONE -# # - [0xF37B10, c, audio/n_sl] #DONE -# # - [0xF37BA0, c, audio/n_synthesizer] #DONE -# # - [0xF38580, c, audio/event] #DONE -# # - [0xF38860, c, audio/n_synaddplayer] #DONE -# # - [0xF38A30, c, audio/n_synallocvoice] #DONE -# # - [0xF38C30, c, audio/n_synsetvol] #DONE -# # - [0xF38CD0, c, audio/n_synstartvoice] #DONE -# # - [0xF38D50, c, audio/n_synsetpan] #DONE -# # - [0xF38DD0, c, audio/n_synsetpitch] #DONE -# # - [0xF38E50, c, audio/n_synsetfxmix] #DONE -# # - [0xF38EE0, c, audio/n_synstopvoice] #DONE -# # - [0xF38F50, c, audio/n_synfreevoice] #DONE -# # - [0xF38FF0, c, audio/n_csplayer] #DONE -# # - [0xF3A460, c, audio/cspsetbank] #DONE -# # - [0xF3A4A0, c, audio/cspstop] #DONE -# # - [0xF3A4D0, c, audio/n_csq] #DONE -# # - [0xF3AB70, c, audio/cspsetseq] #DONE -# # - [0xF3ABB0, c, audio/cspplay] #DONE -# # - [0xF3ABE0, c, audio/cspsetvol] #DONE -# # - [0xF3AC20, c, audio/code_219D0] #DONE -# # - [0xF3AC60, c, audio/cspsettempo] #DONE -# # - [0xF3ACD0, c, audio/code_21A80] #DONE -# # - [0xF3AD00, c, audio/cspgettempo] #DONE -# # - [0xF3AD40, c, audio/code_21AF0] #DONE -# # - [0xF3ADA0, c, audio/code_21B50] #DONE -# # - [0xF3AE40, c, audio/n_syndelete] #DONE -# # - [0xF3AEA0, c, audio/n_synallocfx] #DONE -# # - [0xF3AF00, c, audio/n_reverb] #DONE -# # - [0xF3B990, c, audio/n_auxbus] #DONE -# # - [0xF3BA40, c, audio/n_drvrNew] #DONE -# # - [0xF3BFA0, c, audio/n_save] #DONE -# # - [0xF3BFF0, c, audio/n_envresample] #DONE -# # - [0xF3C090, c, audio/n_env] #DONE -# # - [0xF3CA40, c, audio/n_seqplayer] #DONE -# # - [0xF3E5B0, c, audio/n_synstartvoiceparam] #DONE -# # - [0xF3E690, c, audio/n_mainbus] #DONE -# # - [0xF3E710, c, audio/n_load] #DONE -# # - [0xF3E8D0, c, audio/n_adpcm] #DONE -# # - [0xF3EE90, c, audio/n_resample] #DONE -# # - [0xF3F070, c, audio/n_seq] #DONE -# # - [0xF3F360, c, audio/n_synsetpriority] #DONE -# # - [0xF3F370, asm, os/invaldcache] #DONE -# # - [0xF3F410, asm, os/writebackdcacheall] #DONE -# # - [0xF3F440, c, os/initialize] #DONE -# # - [0xF3F6D0, c, os/createthread] #DONE -# # - [0xF3F820, c, gu/sinf] #DONE -# # - [0xF3F9E0, c, audio/cents2ratio] #DONE -# # - [0xF3FA30, c, audio/heapinit] #DONE -# # - [0xF3FA70, hasm, ultra/parameters] #DONE -# # - [0xF3FAD0, c, os/createmesgqueue] #DONE -# # - [0xF3FB00, c, io/aisetfreq] #DONE -# # - [0xF3FC60, c, audio/sl] #DONE -# # - [0xF3FD20, c, audio/heapalloc] #DONE -# # - [0xF3FD80, c, os/recvmesg] #DONE -# # - [0xF3FEC0, c, io/aigetlen] #DONE -# # - [0xF3FED0, c, os/virtualtophysical] #DONE -# # - [0xF3FF50, c, io/aisetnextbuf] #DONE -# # - [0xF40000, c, os/pidma] #DONE -# # - [0xF40110, c, os/stopthread] #DONE -# # - [0xF401D0, c, os/startthread] #DONE -# # - [0xF40320, hasm, os/writebackdcache] #DONE -# # - [0xF403A0, hasm, invaldcache] #DONE -# # - [0xF40450, c, io/pimgr] #DONE -# # - [0xF405E0, c, os/destroythread] #DONE -# # - [0xF406E0, c, os/sendmesg] #DONE -# # - [0xF40830, c, os/settreadpri] #DONE -# # - [0xF40910, c, gu/mtxutil] #DONE -# # - [0xF40B80, c, gu/sqrtf] #DONE -# # - [0xF40B90, c, gu/cosf] #DONE -# # - [0xF40D00, hasm, ultra/setintmask] #DONE -# # - [0xF40DA0, c, io/dpsetstat] #DONE -# # - [0xF40DB0, c, io/sptask] #DONE -# # - [0xF410A0, c, io/dpgetstat] #DONE -# # - [0xF410A0, c, io/vigetcurrframebuf] #DONE -# # - [0xF410F0, c, os/stoptimer] #DONE -# # - [0xF411E0, c, os/settimer] #DONE -# # - [0xF412C0, c, ll] #DONE -# # - [0xF41580, c, io/sptaskyielded] #DONE -# # - [0xF41600, c, io/sptaskyield] #DONE -# # - [0xF41620, c, io/visetmode] #DONE -# # - [0xF41690, c, os/seteventmesg] #DONE -# # - [0xF41700, c, io/vimgr] #DONE -# # - [0xF41A60, c, io/visetspecial] #DONE -# # - [0xF41C20, c, io/viswapbuf] #DONE -# # - [0xF41C70, c, io/visetevent] #DONE -# # - [0xF41CE0, c, io/vigetnextframebuf] #DONE -# # - [0xF41D20, c, io/viblack] #DONE -# # - [0xF41D90, c, gu/ortho] #DONE -# # - [0xF41F50, c, gu/translate] #DONE -# # - [0xF41FF0, c, gu/rotate] #DONE -# # - [0xF421E0, c, io/contreaddata] #DONE -# # - [0xF42440, c, io/controller] #DONE -# # - [0xF42800, c, io/contsetch] #DONE -# # - [0xF42870, c, audio/bnkf] #DONE -# # - [0xF42AC0, c, os/gettime] #DONE -# # - [0xF42B50, c, audio/cseq] #DONE -# # - [0xF43610, c, io/motor] #DONE -# # - [0xF43C30, c, io/pfsinit] #DONE -# # - [0xF43CF0, hasm, invalicache] #DONE -# # - [0xF43D70, c, io/conteeplongwrite] #DONE -# # - [0xF43EA0, c, io/conteeplongread] #DONE -# # - [0xF43F30, c, io/piread] #DONE -# # - [0xF43F70, c, audio/copy] #DONE -# # - [0xF43FF0, c, audio/drvrNew] #DONE -# # - [0xF44790, c, audio/reverb] #DONE -# # - [0xF453E0, c, syncprintf] #DONE -# # - [0xF45420, c, audio/seq] #DONE -# # - [0xF45A40, hasm, setsr] #DONE -# # - [0xF45A50, hasm, getsr] #DONE -# # - [0xF45A60, hasm, setfpccsr] #DONE -# # - [0xF45A70, c, io/sirawread] #DONE -# # - [0xF45AC0, c, io/sirawwrite] #DONE -# # - [0xF45B10, hasm, ultra/exceptasm] #DONE -# # - [0xF46480, c, io/pirawread] #DONE -# # - [0xF464E0, hasm, interrupt] #DONE -# # - [0xF46520, c, os/thread] #DONE -# # - [0xF46560, c, audio/synthesizer] #DONE -# # - [0xF46C40, c, audio/syndelete] #DONE -# # - [0xF46C50, hasm, probetlb] #DONE -# # - [0xF46D10, c, io/ai] #DONE -# # - [0xF46D40, c, os/jammesg] #DONE -# # - [0xF46E90, c, io/pigetcmdq] #DONE -# # - [0xF46EC0, c, io/cartrominit] #DONE -# # - [0xF46FC0, c, io/leodiskinit] #DONE -# # - [0xF470C0, c, io/piacs] #DONE -# # - [0xF47180, c, os/getthreadpri] #DONE -# # - [0xF471A0, c, io/pirawdma] #DONE -# # - [0xF47280, c, io/epirawdma] #DONE -# # - [0xF474B0, c, io/devmgr] #DONE -# # - [0xF47940, hasm, bcopy] #DONE -# # - [0xF47C50, c, io/spsetstat] #DONE -# # - [0xF47C60, c, io/spsetpc] #DONE -# # - [0xF47CA0, c, io/sprawdma] #DONE -# # - [0xF47D30, c, io/sp] #DONE -# # - [0xF47D60, c, io/vi] #DONE -# # - [0xF47EA0, c, os/timerintr] #DONE -# # - [0xF482A0, hasm, setcompare] #DONE -# # - [0xF482B0, c, io/spgetstat] #DONE -# # - [0xF482C0, c, io/vigetcurrcontext] #DONE -# # - [0xF482D0, c, io/viswapcontext] #DONE -# # - [0xF48630, hasm, getcount] #DONE -# # - [0xF48640, c, gu/normalize] #DONE -# # - [0xF486D0, c, io/siacs] #DONE -# # - [0xF48790, c, io/sirawdma] #DONE -# # - [0xF48840, c, io/pfsisplug] #DONE -# # - [0xF48BB0, c, io/crc] #DONE -# # - [0xF48D30, c, io/contramwrite] #DONE -# # - [0xF490B0, c, io/contramread] #DONE -# # - [0xF49440, c, io/pfsgetstatus] #DONE -# # - [0xF49550, c, io/contpfs] #DONE -# # - [0xF4A2B0, c, io/pfschecker] #DONE -# # - [0xF4AD10, c, io/conteepwrite] #DONE -# # - [0xF4B260, c, io/conteepread] #DONE -# # - [0xF4B5C0, c, audio/filter] #DONE -# # - [0xF4B5E0, c, audio/env] #DONE -# # - [0xF4C160, c, audio/load] #DONE -# # - [0xF4CCB0, c, audio/resample] #DONE -# # - [0xF4CFB0, c, audio/auxbus] #DONE -# # - [0xF4D0C0, c, audio/mainbus] #DONE -# # - [0xF4D210, c, audio/save] #DONE -# # - [0xF4D2D0, c, io/si] #DONE -# # - [0xF4D300, c, io/leointerrupt] #DONE -# # - [0xF4DB80, c, audio/synallocfx] #DONE -# # - [0xF4DC20, c, os/resetglobalintmask] #DONE -# # - [0xF4DC80, c, io/epirawwrite] #DONE -# # - [0xF4DCD0, c, io/epirawread] #DONE -# # - [0xF4DD20, c, os/setglobalintmask] #DONE -# # - [0xF4DD70, c, os/yieldthread] #DONE + - [0xF52500, c, code_15B30] + - [0xF53420, c, memory] + - [0xF54AE0, c, code_18110] + - [0xF54BE0, c, code_18210] + - [0xF54CE0, c, code_18310] + - [0xF54D20, c, code_18350] + - [0xF58860, c, code_1BE90] + - [0xF59F60, c, code_1D590] + - [0xF59F90, hasm, code_1D5C0] + - [0xF59FA0, c, code_1D5D0] + - [0xF5AD30, c, code_1E360] + - [0xF5B0B0, c, code_1E6E0] + - [0xF5B1F0, hasm, code_1E820] + - [0xF5B290, c, audio/n_sl] + - [0xF5B320, c, audio/n_synthesizer] + - [0xF5BD00, c, audio/event] + - [0xF5BFE0, c, audio/n_synaddplayer] + - [0xF5C1B0, c, audio/n_synallocvoice] + - [0xF5C3B0, c, audio/n_synsetvol] + - [0xF5C450, c, audio/n_synstartvoice] + - [0xF5C4D0, c, audio/n_synsetpan] + - [0xF5C550, c, audio/n_synsetpitch] + - [0xF5C5D0, c, audio/n_synsetfxmix] + - [0xF5C660, c, audio/n_synstopvoice] + - [0xF5C6D0, c, audio/n_synfreevoice] + - [0xF5C770, c, audio/n_csplayer] + - [0xF5DBE0, c, audio/cspsetbank] + - [0xF5DC20, c, audio/cspstop] + - [0xF5DC50, c, audio/n_csq] + - [0xF5E2F0, c, audio/cspsetseq] + - [0xF5E330, c, audio/cspplay] + - [0xF5E360, c, audio/cspsetvol] + - [0xF5E3A0, c, audio/code_219D0] + - [0xF5E3E0, c, audio/cspsettempo] + - [0xF5E450, c, audio/code_21A80] + - [0xF5E480, c, audio/cspgettempo] + - [0xF5E4C0, c, audio/code_21AF0] + - [0xF5E520, c, audio/code_21B50] + - [0xF5E5C0, c, audio/n_syndelete] + - [0xF5E620, c, audio/n_synallocfx] + - [0xF5E680, c, audio/n_reverb] + - [0xF5F110, c, audio/n_auxbus] + - [0xF5F1C0, c, audio/n_drvrNew] + - [0xF5F720, c, audio/n_save] + - [0xF5F770, c, audio/n_envresample] + - [0xF5F810, c, audio/n_env] + - [0xF601C0, c, audio/n_seqplayer] + - [0xF61D30, c, audio/n_synstartvoiceparam] + - [0xF61E10, c, audio/n_mainbus] + - [0xF61E90, c, audio/n_load] + - [0xF62050, c, audio/n_adpcm] + - [0xF62610, c, audio/n_resample] + - [0xF627F0, c, audio/n_seq] + - [0xF62AE0, c, audio/n_synsetpriority] + - [0xF62AF0, asm, os/invaldcache] + - [0xF62B90, asm, os/writebackdcacheall] + - [0xF62BC0, c, os/initialize] + - [0xF62E50, hasm, ultra/parameters] + - [0xF62EB0, c, os/createthread] + - [0xF63000, c, gu/sinf] + - [0xF631C0, c, audio/cents2ratio] + - [0xF63210, c, audio/heapinit] + - [0xF63250, c, os/createmesgqueue] + - [0xF63280, c, io/aisetfreq] + - [0xF633E0, c, audio/sl] + - [0xF634A0, c, audio/heapalloc] + - [0xF63500, c, os/recvmesg] + - [0xF63640, c, io/aigetlen] + - [0xF63650, c, os/virtualtophysical] + - [0xF636D0, c, io/aisetnextbuf] + - [0xF63780, c, os/pidma] + - [0xF63890, c, os/stopthread] + - [0xF63950, c, os/startthread] + - [0xF63AA0, hasm, os/writebackdcache] + - [0xF63B20, hasm, invaldcache] + - [0xF63BD0, c, io/pimgr] + - [0xF63D60, c, os/destroythread] + - [0xF63E60, c, os/sendmesg] + - [0xF63FB0, c, os/settreadpri] + - [0xF64090, c, gu/mtxutil] + - [0xF64300, c, gu/sqrtf] + - [0xF64310, c, gu/cosf] + - [0xF64480, hasm, ultra/setintmask] + - [0xF64520, c, io/dpsetstat] + - [0xF64530, c, io/sptask] + - [0xF64820, c, io/dpgetstat] + - [0xF64830, c, io/vigetcurrframebuf] + - [0xF64870, c, os/stoptimer] + - [0xF64960, c, os/settimer] + - [0xF64A40, c, ll] + - [0xF64C50, c, io/sptaskyielded] + - [0xF64CD0, c, io/sptaskyield] + - [0xF64CF0, c, io/visetmode] + - [0xF64D60, c, os/seteventmesg] + - [0xF64DD0, c, io/vimgr] + - [0xF65130, c, io/visetspecial] + - [0xF652F0, c, io/viswapbuf] + - [0xF65340, c, io/visetevent] + - [0xF653B0, c, io/vigetnextframebuf] + - [0xF653F0, c, io/viblack] + - [0xF65460, c, gu/ortho] + - [0xF65620, c, gu/translate] + - [0xF656C0, c, gu/rotate] + - [0xF658B0, c, io/contreaddata] + - [0xF65B10, c, io/controller] + - [0xF65ED0, c, io/contsetch] + - [0xF65F40, c, audio/bnkf] + - [0xF66190, c, os/gettime] + - [0xF66220, c, audio/cseq] + - [0xF66CE0, c, io/motor] + - [0xF67300, c, io/pfsinit] + - [0xF673C0, hasm, invalicache] + - [0xF67440, c, io/conteeplongwrite] + - [0xF67570, c, io/conteeplongread] + - [0xF67600, c, io/piread] + - [0xF67640, c, audio/copy] + - [0xF676C0, bin, untouched] + # - [0xF43FF0, c, audio/drvrNew] + # - [0xF44790, c, audio/reverb] + # - [0xF453E0, c, syncprintf] + # - [0xF45420, c, audio/seq] + # - [0xF45A40, hasm, setsr] + # - [0xF45A50, hasm, getsr] + # - [0xF45A60, hasm, setfpccsr] + # - [0xF45A70, c, io/sirawread] + # - [0xF45AC0, c, io/sirawwrite] + # - [0xF45B10, hasm, ultra/exceptasm] + # - [0xF46480, c, io/pirawread] + # - [0xF464E0, hasm, interrupt] + # - [0xF46520, c, os/thread] + # - [0xF46560, c, audio/synthesizer] + # - [0xF46C40, c, audio/syndelete] + # - [0xF46C50, hasm, probetlb] + # - [0xF46D10, c, io/ai] + # - [0xF46D40, c, os/jammesg] + # - [0xF46E90, c, io/pigetcmdq] + # - [0xF46EC0, c, io/cartrominit] + # - [0xF46FC0, c, io/leodiskinit] + # - [0xF470C0, c, io/piacs] + # - [0xF47180, c, os/getthreadpri] + # - [0xF471A0, c, io/pirawdma] + # - [0xF47280, c, io/epirawdma] + # - [0xF474B0, c, io/devmgr] + # - [0xF47940, hasm, bcopy] + # - [0xF47C50, c, io/spsetstat] + # - [0xF47C60, c, io/spsetpc] + # - [0xF47CA0, c, io/sprawdma] + # - [0xF47D30, c, io/sp] + # - [0xF47D60, c, io/vi] + # - [0xF47EA0, c, os/timerintr] + # - [0xF482A0, hasm, setcompare] + # - [0xF482B0, c, io/spgetstat] + # - [0xF482C0, c, io/vigetcurrcontext] + # - [0xF482D0, c, io/viswapcontext] + # - [0xF48630, hasm, getcount] + # - [0xF48640, c, gu/normalize] + # - [0xF486D0, c, io/siacs] + # - [0xF48790, c, io/sirawdma] + # - [0xF48840, c, io/pfsisplug] + # - [0xF48BB0, c, io/crc] + # - [0xF48D30, c, io/contramwrite] + # - [0xF490B0, c, io/contramread] + # - [0xF49440, c, io/pfsgetstatus] + # - [0xF49550, c, io/contpfs] + # - [0xF4A2B0, c, io/pfschecker] + # - [0xF4AD10, c, io/conteepwrite] + # - [0xF4B260, c, io/conteepread] + # - [0xF4B5C0, c, audio/filter] + # - [0xF4B5E0, c, audio/env] + # - [0xF4C160, c, audio/load] + # - [0xF4CCB0, c, audio/resample] + # - [0xF4CFB0, c, audio/auxbus] + # - [0xF4D0C0, c, audio/mainbus] + # - [0xF4D210, c, audio/save] + # - [0xF4D2D0, c, io/si] + # - [0xF4D300, c, io/leointerrupt] + # - [0xF4DB80, c, audio/synallocfx] + # - [0xF4DC20, c, os/resetglobalintmask] + # - [0xF4DC80, c, io/epirawwrite] + # - [0xF4DCD0, c, io/epirawread] + # - [0xF4DD20, c, os/setglobalintmask] + # - [0xF4DD70, c, os/yieldthread] - [0xF71750, bin, n_aspMain_text] - [0xF723B0, bin, gSPF3DEX_fifo_text] - [0xF737E0, bin, gSPL3DEX_fifo_text] @@ -381,35 +381,35 @@ segments: - [0xF74DF0, .data, code_11AC0] - [0xF75380, .data, overlaymanager] - [0xF75620, .data, code_13990] - - [0xF75630, bin, remain_core1_data] -# # - [0xF51DB0, .data, code_15B30] -# # - [0xF51DC0, .data, memory] -# # - [0xF51DF0, .data, code_18310] -# # - [0xF524E0, .data, code_18350] -# # - [0xF52660, .data, code_1BE90] -# # - [0xF52670, .data, code_1D5D0] -# # - [0xF52690, .data, code_1E360] -# # - [0xF526A0, .data, data_1E820] -# # - [0xF526B0, .data, audio/n_sl] -# # - [0xF526C0, .data, audio/n_drvrNew] -# # - [0xF52850, .data, audio/n_env] -# # - [0xF52950, .data, os/initialize] -# # - [0xF52970, .data, audio/sl] -# # - [0xF52980, .data, io/aisetnextbuf] -# # - [0xF52990, .data, io/pimgr] -# # - [0xF529C0, .data, io/vimgr] -# # - [0xF529E0, .data, io/controller] -# # - [0xF529F0, .data, audio/drvrNew] -# # - [0xF52B80, .data, ultra/exceptasm] -# # - [0xF52BA0, .data, os/thread] -# # - [0xF52BC0, .data, io/piacs] -# # - [0xF52BD0, .data, io/vi] -# # - [0xF52C40, .data, os/timerintr] -# # - [0xF52C50, .data, io/siacs] -# # - [0xF52C60, .data, audio/env] -# # - [0xF52D60, .data, io/vimodepallan1] -# # - [0xF52DB0, .data, io/vimodempallan1] -# # - [0xF52DB0, .data, io/vimodentsclan1] + - [0xF75630, .data, code_15B30] + - [0xF75640, .data, memory] + - [0xF75670, .data, code_18310] + - [0xF75D60, .data, code_18350] + - [0xF75EE0, .data, code_1BE90] + - [0xF75EF0, .data, code_1D5D0] + - [0xF75F10, .data, code_1E360] + - [0xF75F20, .data, data_1E820] + - [0xF75F30, .data, audio/n_sl] + - [0xF75F40, .data, audio/n_drvrNew] + - [0xF760D0, .data, audio/n_env] + - [0xF761D0, .data, os/initialize] + - [0xF761F0, .data, audio/sl] + - [0xF76200, .data, io/aisetnextbuf] + - [0xF76210, .data, io/pimgr] + - [0xF76240, .data, io/vimgr] + - [0xF76260, .data, io/controller] + - [0xF76270, bin, remain_core1_data] + # - [0xF529F0, .data, audio/drvrNew] + # - [0xF52B80, .data, ultra/exceptasm] + # - [0xF52BA0, .data, os/thread] + # - [0xF52BC0, .data, io/piacs] + # - [0xF52BD0, .data, io/vi] + # - [0xF52C40, .data, os/timerintr] + # - [0xF52C50, .data, io/siacs] + # - [0xF52C60, .data, audio/env] + # - [0xF52D60, .data, io/vimodepallan1] + # - [0xF52DB0, .data, io/vimodempallan1] + # - [0xF52DB0, .data, io/vimodentsclan1] - [0xF766D0, .rodata, code_1D00] - [0xF766F0, .rodata, code_3250] - [0xF76700, .rodata, code_3A70] @@ -423,33 +423,34 @@ segments: - [0xF77220, .rodata, rumblemanager] - [0xF77230, .rodata, overlaymanager] - [0xF772B0, .rodata, code_13990] - - [0xF772D0, bin, remain_core1_rodata] -# # - [0xF53A70, .rodata, code_18350] -# # - [0xF53B70, .rodata, code_1BE90] -# # - [0xF53BA0, .rodata, code_1D5D0] -# # - [0xF53C00, .rodata, audio/n_synthesizer] -# # - [0xF53C10, .rodata, audio/n_csplayer] -# # - [0xF53F80, .rodata, audio/n_reverb] -# # - [0xF53FB0, .rodata, audio/n_drvrNew] -# # - [0xF53FD0, .rodata, audio/n_env] -# # - [0xF54020, .rodata, audio/n_seqplayer] -# # - [0xF543D0, .rodata, audio/n_resample] -# # - [0xF543E0, .rodata, gu/sinf] -# # - [0xF54430, .rodata, audio/cents2ratio] -# # - [0xF54440, .rodata, gu/cosf] -# # - [0xF54490, .rodata, ultra/setintmask] -# # - [0xF54510, .rodata, gu/rotate] -# # - [0xF54520, .rodata, audio/cseq] -# # - [0xF54530, .rodata, audio/drvrNew] -# # - [0xF54550, .rodata, audio/reverb] -# # - [0xF54580, .rodata, audio/seq] -# # - [0xF54590, .rodata, ultra/exceptasm] -# # - [0xF545E0, hasm, ultra/libm_vals] # Nothing in this file, just here so splat sees it's ASM -# # - [0xF545E0, .rodata, ultra/libm_vals] -# # - [0xF545F0, .rodata, audio/synthesizer] -# # - [0xF54600, .rodata, io/devmgr] -# # - [0xF54620, .rodata, audio/env] -# # - [0xF54670, .rodata, audio/resample] + - [0xF772D0, .rodata, code_18350] + - [0xF773D0, .rodata, code_1BE90] + - [0xF77400, .rodata, code_1D5D0] + - [0xF77460, .rodata, audio/n_synthesizer] + - [0xF77470, .rodata, audio/n_csplayer] + - [0xF777E0, .rodata, audio/n_reverb] + - [0xF77810, .rodata, audio/n_drvrNew] + - [0xF77830, .rodata, audio/n_env] + - [0xF77880, .rodata, audio/n_seqplayer] + - [0xF77C30, .rodata, audio/n_resample] + - [0xF77C40, .rodata, gu/sinf] + - [0xF77C90, .rodata, audio/cents2ratio] + - [0xF77CA0, .rodata, gu/cosf] + - [0xF77CF0, .rodata, ultra/setintmask] + - [0xF77D70, .rodata, ll] + - [0xF77D80, .rodata, gu/rotate] + - [0xF77D90, .rodata, audio/cseq] + - [0xF77DA0, bin, remain_core1_rodata] + # - [0xF54530, .rodata, audio/drvrNew] + # - [0xF54550, .rodata, audio/reverb] + # - [0xF54580, .rodata, audio/seq] + # - [0xF54590, .rodata, ultra/exceptasm] + # - [0xF545E0, hasm, ultra/libm_vals] # Nothing in this file, just here so splat sees it's ASM + # - [0xF545E0, .rodata, ultra/libm_vals] + # - [0xF545F0, .rodata, audio/synthesizer] + # - [0xF54600, .rodata, io/devmgr] + # - [0xF54620, .rodata, audio/env] + # - [0xF54670, .rodata, audio/resample] - [0xF77F20, bin, n_aspMain_data] - [0xF781D0, bin, gSPF3DEX_fifo_data] - [0xF789D0, bin, gSPL3DEX_fifo_data] @@ -475,28 +476,28 @@ segments: - [0xF791D0, .bss, overlaymanager] - [0xF791D0, .bss, code_13990] - [0xF791D0, .bss, code_15770] -# # - [0xF791D0, .bss, code_15B30] -# # - [0xF791D0, .bss, memory] -# # - [0xF791D0, .bss, code_18210] -# # - [0xF791D0, .bss, code_1D5D0] -# # - [0xF791D0, .bss, code_1E360] -# # - [0xF791D0, .bss, os/initialize] -# # - [0xF791D0, .bss, io/pimgr] -# # - [0xF791D0, .bss, io/sptask] -# # - [0xF791D0, .bss, os/seteventmesg] -# # - [0xF791D0, .bss, io/vimgr] -# # - [0xF791D0, .bss, gu/rotate] -# # - [0xF791D0, .bss, io/controller] -# # - [0xF791D0, .bss, io/motor] -# # - [0xF791D0, .bss, io/cartrominit] -# # - [0xF791D0, .bss, io/leodiskinit] -# # - [0xF791D0, .bss, io/piacs] -# # - [0xF791D0, .bss, os/timerintr] -# # - [0xF791D0, .bss, io/siacs] -# # - [0xF791D0, .bss, io/pfsisplug] -# # - [0xF791D0, .bss, io/conteepread] -# # - [0xF791D0, .bss, os/kdebugserver] -# # - [0xF791D0, .bss, io/leointerrupt] + - [0xF791D0, .bss, code_15B30] + - [0xF791D0, .bss, memory] + - [0xF791D0, .bss, code_18210] + - [0xF791D0, .bss, code_1D5D0] + - [0xF791D0, .bss, code_1E360] + - [0xF791D0, .bss, os/initialize] + - [0xF791D0, .bss, io/pimgr] + - [0xF791D0, .bss, io/sptask] + - [0xF791D0, .bss, os/seteventmesg] + - [0xF791D0, .bss, io/vimgr] + - [0xF791D0, .bss, gu/rotate] + - [0xF791D0, .bss, io/controller] + - [0xF791D0, .bss, io/motor] + # - [0xF791D0, .bss, io/cartrominit] + # - [0xF791D0, .bss, io/leodiskinit] + # - [0xF791D0, .bss, io/piacs] + # - [0xF791D0, .bss, os/timerintr] + # - [0xF791D0, .bss, io/siacs] + # - [0xF791D0, .bss, io/pfsisplug] + # - [0xF791D0, .bss, io/conteepread] + # - [0xF791D0, .bss, os/kdebugserver] + # - [0xF791D0, .bss, io/leointerrupt] - name: core2 dir: core2 type: code diff --git a/manual_syms.pal.txt b/manual_syms.pal.txt index 082f09ca..70761365 100644 --- a/manual_syms.pal.txt +++ b/manual_syms.pal.txt @@ -13,16 +13,15 @@ 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 */ -func_8023DA20 = 0x8023E620; -D_803FBE00 = 0x803FBE00; -D_803FFE00 = 0x803FFE00; -D_803FFE10 = 0x803FFE10; -gOverlayTable = 0x803FFE10; -D_803A5D00 = 0x803A5D00; /* framebuffers */ +D_8000E800 = 0x8000E800; +D_8002D500 = 0x8002D500; +D_8023DA00 = 0x8023E600; /* confirm */ +func_8023DA20 = 0x8023E620; +D_803FBE00 = 0x803FBE00; +D_803FFE00 = 0x803FFE00; +D_803FFE10 = 0x803FFE10; +gOverlayTable = 0x803FFE10; +D_803A5D00 = 0x803A5D00; /* framebuffers */ /* Renames for the boot segment */ boot_D_8002D500 = D_8002D500; @@ -32,165 +31,97 @@ boot_D_803FFE00 = D_803FFE00; boot_gOverlayTable = gOverlayTable; boot_func_8023DA20 = func_8023DA20; +/* Temporary*/ /* Temporary Correct*/ -func_80253010 = 0x80252c60; -func_80253034 = 0x80252c84; -overlay_load = 0x80252Ca0; -func_802535A8 = 0x802531f8; -func_80254008 = 0x80253c58; -func_80254028 = 0x80253c78; -func_8025425C = 0x80253eac; -memcpy = 0x80254258; -heap_get_size = 0x80254320; -func_802546DC = 0x8025432c; -heap_init = 0x80254360; -malloc = 0x802548f8; -free = 0x80254d40; -func_80255198 = 0x80254de8; -func_80255524 = 0x80255174; -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; -ml_vec3f_normalize_copy = 0x80256008; -ml_vec3f_normalize = 0x802560a0; -ml_vec3f_set_length_copy = 0x80256230; -ml_vec3f_pitch_rotate_copy = 0x802564bc; -ml_vec3f_yaw_rotate_copy = 0x80256550; -func_80256E24 = 0x80256a74; -ml_init = 0x80257074; -ml_map_f = 0x80257768; -func_802585E0 = 0x80258230; -ml_sin_deg = 0x8025840c; -ml_cos_deg = 0x8025843c; -mlNormalizeAngle = 0x8025846c; -ml_vec3f_copy = 0x802587f4; -ml_vec3f_diff_copy = 0x80258810; -ml_vec3f_diff = 0x80258844; -ml_vec3f_add = 0x80258898; -func_8025A104 = 0x80259d54; -func_8025A55C = 0x8025a1ac; -func_8025A6CC = 0x8025a31c; -func_8025A864 = 0x8025a4b4; -func_8025A9D4 = 0x8025a624; -func_8025ABB8 = 0x8025a808; -func_8025AD7C = 0x8025a9cc; -func_8025ADBC = 0x8025aa0c; -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; -sns_get_item_state = 0x8025b470; -n_alInit = 0x8025bf70; -n_alAudioFrame = 0x8025c118; -alEvtqPostEvent = 0x8025ca4c; -alEvtqNextEvent = 0x8025cb70; -alEvtqNew = 0x8025cbfc; -n_alSynAddSndPlayer = 0x8025cd80; -n_alSynAllocVoice = 0x8025ce58; -n_alSynSetVol = 0x8025d050; -n_alSynStartVoice = 0x8025d0f0; -n_alSynSetPan = 0x8025d170; -n_alSynSetPitch = 0x8025d1f0; -n_alSynSetFXMix = 0x8025d270; -n_alSynStopVoice = 0x8025d300; -n_alSynFreeVoice = 0x8025d370; -n_alCSPNew = 0x8025e70c; -alCSPSetBank = 0x8025e880; -alCSPStop = 0x8025e8c0; -n_alCSeqNew = 0x8025ed0c; -alCSPSetSeq = 0x8025ef90; -alCSPPlay = 0x8025efd0; -alCSPSetVol = 0x8025f000; -func_8025F3F0 = 0x8025f040; -alCSPSetTempo = 0x8025f080; -func_8025F4A0 = 0x8025f0f0; -alCSPGetTempo = 0x8025f120; -func_8025F510 = 0x8025f160; -func_8025F570 = 0x8025f1c0; -func_8025F5C0 = 0x8025f210; - -bzero = 0x80263790; -osWriteBackDCacheAll = 0x80263830; -__osInitialize_common = 0x80263860; -osCreateThread = 0x80263b50; -sinf = 0x80263ca0; -alCents2Ratio = 0x80263e60; -alHeapInit = 0x80263eb0; -osCreateMesgQueue = 0x80263ef0; -osAiSetFrequency = 0x80263f20; -alUnlink = 0x80264080; -alLink = 0x802640b0; -alHeapDBAlloc = 0x80264140; -osRecvMesg = 0x802641a0; -osAiGetLength = 0x802642e0; -osVirtualToPhysical = 0x802642f0; -osAiSetNextBuffer = 0x80264370; -osPiStartDma = 0x80264420; -osStopThread = 0x80264530; -osStartThread = 0x802645f0; -osWritebackDCache = 0x80264740; -osInvalDCache = 0x802647C0; -osCreatePiManager = 0x80264870; -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; -osCreateViManager = 0x80265a70; -osViSetSpecialFeatures = 0x80265dd0; -osViSwapBuffer = 0x80265f90; -osViSetEvent = 0x80265fe0; -osViGetNextFramebuffer = 0x80266050; -osViBlack = 0x80266090; -guOrtho = 0x80266254; -guTranslate = 0x80266308; -guRotate = 0x802664f4; -osContStartReadData = 0x80266550; -osContGetReadData = 0x80266614; -osContInit = 0x802667b0; -osContSetCh = 0x80266b70; -alBnkfNew = 0x80266ce4; -osGetTime = 0x80266e30; -alCSeqGetTicks = 0x8026769c; -osMotorStop = 0x80267980; -osMotorStart = 0x80267ae8; -osMotorInit = 0x80267dd0; -osPfsInit = 0x80267fa0; -osInvalICache = 0x80268060; +_init_lpfilter = 0x80268620; +_doModFunc = 0x80268b00; +rmonPrintf = 0x8026976c; +alSeqSetLoc = 0x802697ac; +alSeqGetTicks = 0x802697c8; +__alSeqNextDelta = 0x80269c00; +__osSetSR = 0x80269db0; +__osGetSR = 0x80269dc0; +__osSetFpcCsr = 0x80269dd0; +__osSiRawReadIo = 0x80269de0; +__osSiRawWriteIo = 0x80269e30; +func_8026A2E0 = 0x80269e80; +__osEnqueueAndYield = 0x8026a4ac; +__osEnqueueThread = 0x8026a5ac; +__osPopThread = 0x8026a5f4; +__osDispatchThread = 0x8026a604; +__osCleanupThread = 0x8026A780; +osMapTLBRdb = 0x8026a790; +osPiRawReadIo = 0x8026a7f0; +__ull_div = 0x8026a8b8; +__ll_mul = 0x8026a9b8; +__osDisableInt = 0x8026ab10; +__osDequeueThread = 0x8026ab50; +__osRestoreInt = 0x8026ab30; +alSynNew = 0x8026af70; +alSynDelete = 0x8026b270; +__osProbeTLB = 0x8026b280; +__osAiDeviceBusy = 0x8026b340; +osJamMesg = 0x8026b370; +osPiGetCmdQueue = 0x8026b4c0; +__osPiCreateAccessQueue = 0x8026b6f0; +__osPiGetAccess = 0x8026b740; +__osPiRelAccess = 0x8026b784; +osGetThreadPri = 0x8026b7b0; +osPiRawStartDma = 0x8026B7D0; +osEPiRawStartDma = 0x8026b8b0; +__osDevMgrMain = 0x8026bae0; +bcopy = 0x8026bf70; +__osSpSetStatus = 0x8026c280; +__osSpDeviceBusy = 0x8026c360; +__osSpRawStartDma = 0x8026c2d0; +__osSpSetPc = 0x8026c290; +__osViInit = 0x8026c390; +__osTimerServicesInit = 0x8026c4d0; +__osTimerInterrupt = 0x8026c55c; +__osSetTimerIntr = 0x8026c6d4; +__osInsertTimer = 0x8026c748; +__osSetCompare = 0x8026c8d0; +__osSpGetStatus = 0x8026c8e0; +__osViGetCurrentContext = 0x8026c8f0; +__osViSwapContext = 0x8026c900; +osGetCount = 0x8026cc60; +guNormalize = 0x8026cc70; +__osSiCreateAccessQueue = 0x8026cd00; +__osSiGetAccess = 0x8026cd50; +__osSiRelAccess = 0x8026cd94; +__osSiRawStartDma = 0x8026cdc0; +__osContAddressCrc = 0x8026d1e0; +__osContRamWrite = 0x8026d360; +__osContRamRead = 0x8026d6e0; +__osPfsGetStatus = 0x8026da70; +__osGetId = 0x8026e1f4; +osPfsChecker = 0x8026e8e0; +osEepromWrite = 0x8026f340; +osEepromRead = 0x8026f890; -D_80276574 = 0x802762c4; -framebuffer_width = 0x802762d8; -framebuffer_height = 0x802762dc; -n_syn = 0x80276bd4; -osClockRate = 0x80276e70; -osViClock = 0x80276e78; +__osThreadTail = 0x802770c0; +__osRunQueue = 0x802770c8; +__osActiveQueue = 0x802770cc; +__osRunningThread = 0x802770d0; +__osPiAccessQueueEnabled = 0x802770e0; +__osViCurr = 0x80277150; +__osViNext = 0x80277154; +__osTimerList = 0x80277160; +__libm_qnan_f = 0x80278AF0; +__osPiDevMgr = 0x80276eb0; +CartRomHandle = 0x80285A00; +LeoDiskHandle = 0x80285A80; +__osPiAccessQueue = 0x80285b08; +__osCurrentTime = 0x80285b40; +__osBaseCounter = 0x80285b48; +__osViIntrCount = 0x80285b4c; +__osPfsPifRam = 0x80285b80; core2_VRAM = 0x80286db0; core2_TEXT_START = 0x80286db0; +animCache_flushStale = 0x80287f40; +animBinCache_flushStale = 0x8028855c; player_getPosition = 0x8028e7c4; player_getPosition_s32 = 0x8028e95c; player_getWaterState = 0x8028eca4; @@ -214,17 +145,33 @@ func_802E4214 = 0x802E4404; func_802E4384 = 0x802e4574; func_802E4424 = 0x802E4614; game_defrag = 0x802e4ac8; +func_802E49E0 = 0x802e4bd0; getGameMode = 0x802e4bec; func_802E4A08 = 0x802e4bf8; +func_802E6820 = 0x802e6a04; +freelist_clear = 0x802edc20; +freelist_at = 0x802edc5c; +freelist_size = 0x802edc74; +freelist_next = 0x802edc84; +freelist_elementIsAlive = 0x802eddf8; +freelist_free = 0x802ede44; +freelist_new = 0x802ede64; +freelist_freeElement = 0x802edebc; +freelist_defrag = 0x802edee0; +func_802F1294 = 0x802f1474; +printbuffer_defrag = 0x802f560c; func_802F9AA8 = 0x802f9c88; func_802F9F80 = 0x802fa160; func_802F9FD0 = 0x802fa1b0; func_802FA060 = 0x802fa240; func_80309B48 = 0x80309ce8; func_80309D58 = 0x80309ef8; +func_8030A850 = 0x8030a9f0; gctransition_done = 0x8030bf38; gctransition_8030BDC0 = 0x8030bf60; gctransition_reset = 0x8030c07c; +func_8030C704 = 0x8030c8a4; +func_8030C710 = 0x8030c8b0; func_8030D90C = 0x8030daac; func_8030DA44 = 0x8030dbe4; sfxsource_setSfxId = 0x8030dc20; @@ -252,27 +199,38 @@ levelSpecificFlags_validateCRC1 = 0x8032243c; func_8032274C = 0x80322b4c; func_80322758 = 0x80322b58; func_80323240 = 0x80323690; +timedFunc_set_1 = 0x80325334; +timedFunc_set_2 = 0x80325370; timedFunc_set_3 = 0x803253b4; marker_getActor = 0x80329db0; +func_8032AD7C = 0x8032b1d4; +func_803306C8 = 0x80330b18; map_get = 0x80334d10; func_80335134 = 0x80335584; sfxInstruments_init = 0x80335670; assetcache_release = 0x8033b828; +assetcache_update_ptr = 0x8033b9c4; +func_8033B61C = 0x8033ba6c; func_8033B788 = 0x8033bbd8; assetcache_get = 0x8033bbe8; assetCache_init = 0x8033bfd4; func_8033BD6C = 0x8033C1BC; +func_8033BD8C = 0x8033c1dc; +savedata_8033CA9C = 0x8033ceec; +savedata_8033CE40 = 0x8033d15c; func_8033DD04 = 0x8033e154; func_8033DD90 = 0x8033e1e0; time_getDelta = 0x8033e1ec; func_8033EF58 = 0x8033f3a8; func_8033EFB0 = 0x8033f400; +func_8033F000 = 0x8033f450; demo_readInput = 0x8034a334; randf = 0x8034a7e0; func_8034C630 = 0x8034ca90; func_8034E698 = 0x8034eaf8; D_803727F4 = 0x80372d74; D_80379B90 = 0x8037A560; + core2_TEXT_END = 0x80363a00; core2_DATA_START = 0x80363a00; core2_RODATA_END = 0x8037A560; diff --git a/src/core1/code_0.c b/src/core1/code_0.c index 98d718b9..252a1f21 100644 --- a/src/core1/code_0.c +++ b/src/core1/code_0.c @@ -102,7 +102,7 @@ void func_8023DBDC(void){ void core1_init(void){ #if VERSION == VERSION_PAL - D_80000300 = 0; + osTvType = 0; #endif func_80255C30(); func_8023E00C(func_8023DBA4()); diff --git a/src/core1/code_18350.c b/src/core1/code_18350.c index 336d2147..aa4c2067 100644 --- a/src/core1/code_18350.c +++ b/src/core1/code_18350.c @@ -1,10 +1,16 @@ #include #include "functions.h" #include "variables.h" +#include "version.h" /* .data*/ +#if VERSION == VERSION_USA_1_0 u32 D_80276CB0 = 0xD22FFFD8; //WHAT IS THIS? u32 D_80276CB4 = 0xDEFEF692; //WHAT IS THIS? +#elif VERSION == VERSION_PAL +u32 D_80276CB0 = 0x90FA97CB; //WHAT IS THIS? +u32 D_80276CB4 = 0x8D96D002; //WHAT IS THIS? +#endif u16 *D_80276CB8 = NULL; //! ml_acosPrecValTblPtr //! Might not be 90, but 91 or 92? Initial lowerIdx is OOB if 90 f32 ml_acosValTbl[90] = { //D_80276CBC diff --git a/src/core1/code_1BE90.c b/src/core1/code_1BE90.c index be7cb5f5..2b3bf856 100644 --- a/src/core1/code_1BE90.c +++ b/src/core1/code_1BE90.c @@ -2,7 +2,7 @@ #include "functions.h" #include "variables.h" - +#include "version.h" extern func_8024FDDC(u8, s32); @@ -540,19 +540,20 @@ void func_8025AB00(void){ } void comusic_8025AB44(enum comusic_e comusic_id, s32 arg1, s32 arg2){ - func_8025AC20(comusic_id, arg1, arg2, 0.0f, "comusic.c", 0x39e); + func_8025AC20(comusic_id, arg1, arg2, 0.0f, "comusic.c", VER_SELECT(0x39e, 0x39f, 0, 0)); + } void comusic_8025AB78(enum comusic_e comusic_id, s32 arg1, s32 arg2, s32 arg3){ - func_8025AC7C(comusic_id, arg1, arg2, 0.0f, arg3, "comusic.c", 0x3a3); + func_8025AC7C(comusic_id, arg1, arg2, 0.0f, arg3, "comusic.c", VER_SELECT(0x3a3, 0x3a4, 0, 0)); } void func_8025ABB8(enum comusic_e comusic_id, s32 arg1, s32 arg2, s32 arg3){ - func_8025AC7C(comusic_id, arg1, arg2, 0.0f, (s32)&(__find_track(comusic_id)->unk1C[arg3]), "comusic.c", 0x3aa); + func_8025AC7C(comusic_id, arg1, arg2, 0.0f, (s32)&(__find_track(comusic_id)->unk1C[arg3]), "comusic.c", VER_SELECT(0x3aa, 0x3ab,0,0)); } void func_8025AC20(enum comusic_e comusic_id, s32 arg1, s32 arg2, f32 arg3, char* arg4, s32 char5){ - func_8025AC7C(comusic_id, arg1, arg2, 0.0f, (s32) __find_track(comusic_id)->unk1C, "comusic.c", 0x3b1); + func_8025AC7C(comusic_id, arg1, arg2, 0.0f, (s32) __find_track(comusic_id)->unk1C, "comusic.c", VER_SELECT(0x3b1, 0x3b2,0,0)); } void func_8025AC7C(enum comusic_e comusic_id, s32 arg1, s32 arg2, f32 arg3, s32 arg4, char* arg5, s32 arg6){ diff --git a/src/core1/ll.c b/src/core1/ll.c index a50fc92d..c257d1b4 100644 --- a/src/core1/ll.c +++ b/src/core1/ll.c @@ -1,3 +1,5 @@ +#include "version.h" +#if VERSION == VERSION_USA_1_0 unsigned long long __ull_rshift(unsigned long long a0, unsigned long long a1) { return a0 >> a1; @@ -51,3 +53,46 @@ long long __ll_rshift(long long a0, long long a1) { return a0 >> a1; } + +#elif VERSION == VERSION_PAL + +long long __d_to_ll(double a0) +{ + return a0; +} + +long long __f_to_ll(float a0) +{ + return a0; +} + +unsigned long long __d_to_ull(double a0) +{ + return a0; +} + +unsigned long long __f_to_ull(float a0) +{ + return a0; +} + +double __ll_to_d(long long a0) +{ + return a0; +} + +float __ll_to_f(long long a0) +{ + return a0; +} + +double __ull_to_d(unsigned long long a0) +{ + return a0; +} + +float __ull_to_f(unsigned long long a0) +{ + return a0; +} +#endif \ No newline at end of file diff --git a/src/core1/memory.c b/src/core1/memory.c index c0c3d9a9..507259a2 100644 --- a/src/core1/memory.c +++ b/src/core1/memory.c @@ -2,7 +2,7 @@ #include "functions.h" #include "variables.h" #include "SnS.h" - +#include "version.h" /* * Every chunk of allocated memory is prefixed with a HeapHeader. * @@ -16,9 +16,12 @@ extern void func_80253010(void *dest, void *src, s32 size); #define chunkSize(s) ((u32)(s)->next - (u32)(s) - sizeof(HeapHeader)) +#if VERSION == VERSION_USA_1_0 #define HEAP_SIZE 0x210520 +#elif VERSION == VERSION_PAL +#define HEAP_SIZE 0x211120 +#endif #define LAST_HEAP_BLOCK HEAP_SIZE/sizeof(EmptyHeapBlock) - 1 - typedef enum { HEAP_BLOCK_EMPTY = 0, HEAP_BLOCK_USED = 1, diff --git a/symbol_addrs.pal.txt b/symbol_addrs.pal.txt index d436dd59..885c19de 100644 --- a/symbol_addrs.pal.txt +++ b/symbol_addrs.pal.txt @@ -15,18 +15,18 @@ __osProbeTLB = 0x80003BD0; __osDisableInt = 0x80003FC0; __osRestoreInt = 0x80003FE0; bk_boot_BSS_START = 0x80005270; -___osGetSR = 0x8025AFE0; -bzero = 0x80263B40; -osWriteBackDCacheAll = 0x80263BE0; -osVirtualToPhysical = 0x802646A0; -osRecvMesg = 0x80264550; -osPiStartDma = 0x802647D0; -osWritebackDCache = 0x80264AF0; -osInvalDCache = 0x80264B70; -osDestroyThread = 0x80264DB0; -osSetThreadPri = 0x80265000; -osSetIntMask = 0x802654D0; -osInvalICache = 0x802684C0; +func_80253010 = 0x80252c60; +func_80253034 = 0x80252c84; +___osGetSR = 0x8025AC30; +func_8025C29C = 0x8025beec; +bzero = 0x80263790; +osWriteBackDCacheAll = 0x80263830; +osWritebackDCache = 0x80264740; +osInvalDCache = 0x802647C0; +osSetIntMask = 0x80265120; +osInvalICache = 0x80268060; + + __osSetSR = 0x8026A210; __osGetSR = 0x8026A220; __osSetFpcCsr = 0x8026A230; @@ -42,6 +42,13 @@ __osProbeTLB = 0x8026B420; bcopy = 0x8026C110; __osSetCompare = 0x8026CA70; osGetCount = 0x8026CE00; + + +D_80276E70 = 0x80276bc0; + + + + __osShutdown = 0x8027712C; __OSGlobalIntMask = 0x80277130; __osRunQueue = 0x80277378;