diff --git a/README.md b/README.md index 62debd5..6c0189d 100644 --- a/README.md +++ b/README.md @@ -3,7 +3,8 @@ this is a loader module for ghidra for N64 roms (.z64, .n64, .v64) - fixes endianess (little, big, mixed) at loading - loads ram, rom and boot section into ghidra -- it can use a signature/pattern file to scan for symbol hints for ghidra +- it can use a pattern file to scan for symbol hints +- it can load symbol files from N64sym this allows a rom to be labeled, disassembled and decompiled diff --git a/example_n64sym.txt b/example_n64sym.txt new file mode 100644 index 0000000..4111053 --- /dev/null +++ b/example_n64sym.txt @@ -0,0 +1,852 @@ +70002ACC rmonmisc_text_010C +70003698 __osSpSetPc +700081AC n_alLoadParam +7006A1EC guRotateRPYF +7006BAC4 __osPiRelAccess +7006BBE8 __osGIORawInterrupt +7006BF18 n_alSynRemovePlayer +7006D340 __osPiGetAccess +7007A390 sqrtf +7007A3A0 cosf +7007A4E8 cosf_text_0148 +7007AC00 guMtxF2L +7007AC98 guMtxL2F +7007AD40 guMtxIdentF +7007AE80 guMtxCatF +7007AF5C guMtxXFMF +7007B280 perspective_text_0170 +7007B438 perspective_text_0328 +7007BB70 sinf +7007BC48 sinf_text_00D8 +7007BD08 sinf_text_0198 +7007C1A0 osGetCount +7007C1B0 osInvalDCache +7007C2C0 osSetIntMask +7007C3B0 osWritebackDCache +7007C430 osWritebackDCacheAll +7007C460 osCreateMesgQueue +7007C490 osCreateThread +7007C5A8 destroythread_text_0048 +7007C5F8 destroythread_text_0098 +7007C630 osGetTime +7007C8BC initialize_text_01FC +7007C8D0 osRecvMesg +7007C9D4 recvmesg_text_0104 +7007CA00 osSendMesg +7007CB0C sendmesg_text_010C +7007CB30 osSetEventMesg +7007CB90 osStartThread +7007CC34 startthread_text_00A4 +7007CC88 startthread_text_00F8 +7007CD48 stopthread_text_0098 +7007CD70 __osDequeueThread +7007CD9C thread_text_002C +7007CDB0 __osTimerServicesInit +7007CE04 __osTimerInterrupt +7007CE24 timerintr_text_0074 +7007CF30 timerintr_text_0180 +7007CF40 __osSetTimerIntr +7007CFA0 __osInsertTimer +7007D008 timerintr_text_0300 +7007D0B0 osVirtualToPhysical +7007D0F8 virtualtophysical_text_0048 +7007D110 osYieldThread +7007D1B0 init_lpfilter +7007D254 alFxNew +7007D32C drvrnew_text_017C +7007D58C drvrnew_text_03DC +7007D6A4 drvrnew_text_04F4 +7007D6EC alEnvmixerNew +7007D7A4 alLoadNew +7007D854 alResampleNew +7007D8E0 alAuxBusNew +7007D93C alMainBusNew +7007D998 alSaveNew +7007DAAC load_text_00CC +7007DB14 load_text_0134 +7007DD50 load_text_0370 +7007DD9C load_text_03BC +7007DDC0 load_text_03E0 +7007DDF4 load_text_0414 +7007DEF4 load_text_0514 +7007DFB4 load_text_05D4 +7007E128 load_text_0748 +7007E198 load_text_07B8 +7007E1C0 alLoadParam +7007E358 load_text_0978 +7007E360 load_text_0980 +7007E36C load_text_098C +7007E420 load_text_0A40 +7007E5CC alAuxBusParam +7007E7F4 env_text_01F4 +7007E90C env_text_030C +7007EA3C env_text_043C +7007EAA8 env_text_04A8 +7007EB4C alEnvmixerParam +7007EBF8 env_text_05AC +7007EC08 env_text_05BC +7007EC10 env_text_05C4 +7007EC20 env_text_0620 +7007EEC8 env_text_08C8 +7007EEFC env_text_08FC +7007EFF8 env_text_0980 +7007F024 env_text_0A24 +7007F29C env_text_0C24 +7007F2A4 env_text_0CA4 +7007F320 env_text_0CA8 +7007F330 alFilterNew +7007F490 alMainBusParam +7007F688 resample_text_01C8 +7007F6AC alResampleParam +7007F754 resample_text_0294 +7007F75C resample_text_029C +7007F90C reverb_text_019C +7007FB20 alFxParam +7007FD14 reverb_text_0568 +7007FD24 reverb_text_05B4 +7007FF08 reverb_text_075C +7007FF3C reverb_text_07CC +70080054 reverb_text_08A8 +700800AC reverb_text_093C +700801E8 reverb_text_0A3C +7008021C reverb_text_0AAC +700802B8 reverb_text_0B0C +70080450 alSaveParam +70080470 save_text_00C8 +700804DC alLink +700804FC alUnlink +70080550 heapinit_text_0020 +70080570 alHeapDBAlloc +700805C0 alCopy +70080600 alSynNew +70080760 synthesizer_text_0160 +70080A48 synthesizer_text_0448 +70080A7C __allocParam +70080AA8 __freeParam +70080AC0 synthesizer_text_04C0 +70080B14 _freePVoice +70080B54 synthesizer_text_0554 +70080B9C _timeToSamples +70080BE8 synthesizer_text_05E8 +70080C90 alSynDelete +70080DEC synallocvoice_text_00FC +70080E18 synallocvoice_text_0128 +70080EB8 synallocvoice_text_01C8 +70081260 alSynAllocFX +7008139C aisetfreq_text_008C +7008148C aisetnextbuf_text_004C +70081540 __osSpSetPc +70081568 spsetpc_text_0028 +70081570 osSpTaskLoad +7008177C osSpTaskStartGo +700817B0 osSpTaskYield +700817D0 osSpTaskYielded +70081820 osViGetCurrentFramebuffer +70081860 osViGetNextFramebuffer +700818A0 osCreateViManager +70081A8C vimgr_text_01EC +70081BD0 osViSetEvent +70081C30 osViSetMode +70081DF0 osViSwapBuffer +70081E40 __osViSwapContext +70081EC4 viswapcontext_text_0084 +70081F58 viswapcontext_text_0118 +70081F8C viswapcontext_text_014C +70082130 osViBlack +70082174 viblack_text_0044 +70082190 __osSiRawReadIo +70082220 __osSiRawWriteIo +70082454 contreaddata_text_0124 +70082684 controller_text_0174 +700826AC __osContGetInitData +70082760 controller_text_0250 +70082820 osPfsChecker +70082980 pfschecker_text_0160 +700829D0 pfschecker_text_01B0 +70082C38 pfschecker_text_0418 +70082C40 pfschecker_text_0420 +70082C6C pfschecker_text_044C +70082DC4 pfschecker_text_05A4 +700831AC pfsallocatefile_text_027C +70083290 pfsallocatefile_text_0360 +700832C0 pfsallocatefile_text_0390 +70083360 pfsallocatefile_text_0430 +7008345C pfsallocatefile_text_052C +7008348C pfsallocatefile_text_055C +70083728 pfsdeletefile_text_0208 +7008374C pfsdeletefile_text_022C +700837C0 pfsdeletefile_text_02A0 +700838EC pfsdeletefile_text_03CC +7008399C pfsdeletefile_text_0474 +70083D40 pfsreadwritefile_text_0380 +70083DC8 pfsreadwritefile_text_0408 +70083F74 pfsfilestate_text_0184 +70084000 pfsfilestate_text_0210 +70084030 osPfsFindFile +7008410C pfssearchfile_text_00DC +7008414C pfssearchfile_text_011C +70084190 pfssearchfile_text_0160 +70084298 pfsisplug_text_00D8 +7008433C pfsisplug_text_017C +700843E0 pfsisplug_text_0240 +700844A0 osPfsFreeBlocks +7008458C pfsfreeblocks_text_00EC +70084690 pfsnumfiles_text_00E0 +70084860 pfsinitpak_text_01B0 +70084A20 pfsrepairid_text_01A0 +70084A40 __osPfsGetStatus +70084B04 pfsgetstatus_text_00C4 +70084B20 pfsgetstatus_text_00E0 +70084BB0 pfsgetstatus_text_0170 +70084D80 motor_text_0150 +7008529C motor_text_066C +7008541C motor_text_07EC +7008545C motor_text_082C +70085480 osPiRawReadIo +700856B0 osEPiRawStartDma +700857E8 epirawdma_text_0138 +70085854 epirawdma_text_01A4 +70085860 epirawdma_text_01B0 +700858B8 epidma_text_0038 +70085904 epidma_text_0084 +70085BF0 devmgr_text_0030 +70085F18 devmgr_text_0358 +70085F80 __osPiCreateAccessQueue +70086108 pidma_text_0098 +70086120 bcopy +70086440 bzero +700864E0 strchr +70086510 string_text_0030 +70086518 strlen +7008653C memcpy +7008683C sched_text_020C +700868A0 sched_text_0270 +7008696C sched_text_033C +7008699C sched_text_036C +70086A30 sched_text_0400 +70086A6C sched_text_043C +70086B24 sched_text_04F4 +70086B7C sched_text_0564 +70086C9C sched_text_0634 +70086CB0 sched_text_0680 +70086D60 sched_text_0714 +70086DE4 sched_text_07B4 +70086E0C sched_text_07DC +70086F40 sched_text_0848 +70086F78 sched_text_0948 +70087144 sched_text_0A4C +70087190 guNormalize +700878A4 __osEnqueueAndYield +700879AC __osEnqueueThread +700879F4 __osPopThread +70087A04 __osDispatchThread +70087B90 __osGetSR +70087BA0 osInvalICache +70087C20 __osDisableInt +70087C40 __osRestoreInt +70087C60 __osProbeTLB +70087D20 __osSetCompare +70087D30 __osSetFpcCsr +70087D40 __osSetSR +70087D50 osMapTLBRdb +70087DB0 osGetThreadPri +70087DD0 osJamMesg +70087EE0 jammesg_text_0110 +70087F10 __osResetGlobalIntMask +70087F60 __osSetGlobalIntMask +70087FA0 osSetThreadPri +70088070 osSetTimer +70088110 __assert +70088120 __osAiDeviceBusy +70088140 osDpSetNextBuffer +700881E0 __osSpDeviceBusy +70088200 __osSpGetStatus +70088210 __osSpSetStatus +70088220 __osSpRawStartDma +700882F0 sprawdma_text_00D0 +70088320 __osViInit +700883B4 vi_text_0094 +70088430 __osViGetCurrentContext +70088440 __osSiDeviceBusy +70088460 __osSiRawStartDma +700884E0 sirawdma_text_0080 +70088520 __osSiCreateAccessQueue +70088574 __osSiGetAccess +700885E0 __osSiRelAccess +70088610 __osContAddressCrc +70088658 __osContDataCrc +700886C0 __osContRamRead +70088818 contramread_text_0158 +700888A8 contramread_text_01E8 +700888AC contramread_text_01EC +700888F4 contramread_text_0234 +70088A40 contramread_text_0380 +70088A90 __osContRamWrite +70088C08 contramwrite_text_0178 +70088CB0 contramwrite_text_0220 +70088E08 contramwrite_text_0378 +70088E50 __osSumcalc +70088E88 __osIdCheckSum +70088ECC contpfs_text_007C +70089184 contpfs_text_0334 +700891AC contpfs_text_035C +700892EC contpfs_text_049C +70089310 __osGetId +700894DC contpfs_text_068C +700894F0 __osCheckId +700895A4 contpfs_text_0754 +700895B4 __osPfsRWInode +70089700 contpfs_text_08B0 +7008985C contpfs_text_0A0C +7008988C __osPfsSelectBank +7008998C pirawdma_text_00AC +70089998 pirawdma_text_00B8 +700899B0 osPiGetCmdQueue +700899D0 osEPiRawReadIo +70089B18 epirawread_text_0148 +70089B60 osEPiRawWriteIo +70089C74 epirawwrite_text_0114 +7008A0A0 leointerrupt_text_03F0 +7008A194 leointerrupt_text_04E4 +7008A198 leointerrupt_text_04E8 +7008A1A4 leointerrupt_text_04F4 +7008A1BC leointerrupt_text_050C +7008A28C leointerrupt_text_05DC +7008A340 _Printf +7008A37C xprintf_text_003C +7008A38C xprintf_text_004C +7008A3E8 xprintf_text_00A8 +7008A4C0 xprintf_text_0180 +7008A568 xprintf_text_0228 +7008A590 xprintf_text_0250 +7008A8B0 xprintf_text_0570 +7008A998 xprintf_text_0658 +7008AA34 xprintf_text_06F4 +7008AA98 xprintf_text_0758 +7008AAC8 xprintf_text_0788 +7008AB2C xprintf_text_07EC +7008ABD8 xprintf_text_0898 +7008AD5C xprintf_text_0A1C +7008AD70 __osDpDeviceBusy +7008AD90 _Litob +7008AE04 xlitob_text_0074 +7008AEB4 xlitob_text_0124 +7008AFE0 _Ldtob +7008B054 xldtob_text_0074 +7008B1B4 xldtob_text_01D4 +7008B200 xldtob_text_0220 +7008B294 xldtob_text_02B4 +7008B324 xldtob_text_0344 +7008B3D0 xldtob_text_03F0 +7008B3F0 xldtob_text_0410 +7008B420 xldtob_text_0440 +7008B4B0 xldtob_text_04DC +7008B4B8 xldtob_text_04D8 +7008B8E0 xldtob_text_0900 +7008B9E8 xldtob_text_0A08 +7008BA60 ldiv +7008BAE4 lldiv +7008D3E0 __divdi3 +7008D550 __udivdi3 +7008D570 __umoddi3 +80000300 osTvType +80000308 osRomBase +8000030C osResetType +8000031C osAppNMIBuffer +80000450 aspMainTextStart +80001270 rspbootTextStart +80002ACC __rmonPanic +800031E0 n_alSeqpDelete +80008F38 __dummy +80009430 __osGetActiveQueue +8000D7C4 ptstart +80014A70 osAfterPreNMI +8001850C MusPtrBankGetCurrent +80023F7C myfree +80028B30 osViExtendVStart +8003B708 n_alResampleParam +8003B728 __udiv_w_sdiv +8003D2D8 osBbUsbDevGetHandle +80069360 osSetTime +8006A360 guRotateRPY +8006BA90 __osGIOInterrupt +8006D3DC __osSiGetAccess +8006D418 __osSiRelAccess +80075C8C Fstereo +80075CEC Fprint +80076E88 MusFxBankNumberOfEffects +80076EB4 MusFxBankSetPtrBank +80076EBC MusFxBankGetPtrBank +80076F14 osGetRegionBufSize +8007A390 _nsqrtf +8007A3A0 __cosf +8007A4F0 guLookAtF +8007A870 guLookAt +8007AC00 guMtxF2L +8007AC98 guMtxL2F +8007AD40 guMtxIdentF +8007AD90 guMtxIdent +8007AE80 guMtxCatF +8007AF5C guMtxXFMF +8007B010 guMtxCatL +8007B084 guMtxXFML +8007B110 guPerspectiveF +8007B2C0 guPerspective +8007B490 guRotateF +8007B5EC guRotate +8007B770 guRotateRPYF +8007B8F8 guRotateRPY +8007BA90 guScaleF +8007BAF0 guScale +8007BB70 __sinf +8007BD10 guTranslateF +8007BD64 guTranslate +8007BDE0 guPositionF +8007BFB8 guPosition +8007C1A0 osGetCount +8007C2C0 osSetIntMask +8007C360 osUnmapTLBAll +8007C430 osWritebackDCacheAll +8007C460 osCreateMesgQueue +8007C490 osCreateThread +8007C560 osDestroyThread +8007C630 osGetTime +8007C6C0 osInitialize +8007C8D0 osRecvMesg +8007CA00 osSendMesg +8007CB30 osSetEventMesg +8007CB90 osStartThread +8007CCB0 osStopThread +8007CD70 __osDequeueThread +8007CDB0 __osTimerServicesInit +8007CE04 __osTimerInterrupt +8007CF40 __osSetTimerIntr +8007CFA0 __osInsertTimer +8007D0B0 osVirtualToPhysical +8007D110 osYieldThread +8007D160 osGetMemSize +8007D1B0 init_lpfilter +8007D254 alFxNew +8007D6EC alEnvmixerNew +8007D7A4 alLoadNew +8007D854 alResampleNew +8007D8E0 alAuxBusNew +8007D93C alMainBusNew +8007D998 alSaveNew +8007D9E0 alAdpcmPull +8007DE24 load_text_0444 +8007E1C0 alLoadParam +8007E36C _decodeChunk +8007E4F0 alAuxBusPull +8007E5CC alAuxBusParam +8007E600 alEnvmixerPull +8007EB4C alEnvmixerParam +8007EC20 _pullSubFrame +8007EF20 _frexpf +8007F000 _ldexpf +8007F024 _getRate +8007F2A4 _getVol +8007F330 alFilterNew +8007F350 alMainBusPull +8007F490 alMainBusParam +8007F4C0 alResamplePull +8007F6AC alResampleParam +8007F770 alFxPull +8007FB20 alFxParam +8007FB34 alFxParamHdl +8007FD24 _loadOutputBuffer +8007FF3C _loadBuffer +800800AC _saveBuffer +8008021C _filterBuffer +800802B8 _doModFunc +80080350 alSavePull +80080450 alSaveParam +80080480 alInit +800804AC alClose +800804DC alLink +800804FC alUnlink +80080530 alHeapInit +80080570 alHeapDBAlloc +800805C0 alCopy +80080600 alSynNew +800808CC alAudioFrame +80080A7C __allocParam +80080AA8 __freeParam +80080AC0 _collectPVoices +80080B14 _freePVoice +80080B54 _timeToSamplesNoRound +80080B9C _timeToSamples +80080BE8 __nextSampleTime +80080C90 alSynDelete +80080CA0 alSynAddPlayer +80080CF0 alSynAllocVoice +80080E18 _allocatePVoice +80080ED0 alSynStopVoice +80080F50 alSynStartVoice +80080FF0 alSynSetPitch +80081080 alSynSetVol +80081140 alSynSetFXMix +800811D0 alSynSetPan +80081260 alSynAllocFX +80081300 osAiGetLength +80081310 osAiSetFrequency +80081440 osAiSetNextBuffer +800814E0 osDpSetStatus +800814F0 osDpGetCounters +80081540 __osSpSetPc +80081570 osSpTaskLoad +8008177C osSpTaskStartGo +800817B0 osSpTaskYield +800817D0 osSpTaskYielded +80081820 osViGetCurrentFramebuffer +800818A0 osCreateViManager +80081A38 vimgr_text_0198 +80081BD0 osViSetEvent +80081C30 osViSetMode +80081C80 osViSetSpecialFeatures +80081DF0 osViSwapBuffer +80081E40 __osViSwapContext +80082130 osViBlack +80082190 __osSpRawReadIo +80082220 __osSiRawWriteIo +80082290 osContStartQuery +80082310 osContGetQuery +80082330 osContStartReadData +800823B8 osContGetReadData +80082454 __osPackReadData +80082510 osContInit +800826AC __osContGetInitData +80082760 __osPackRequestData +80082820 osPfsChecker +80082C6C corrupted_init +80082DC4 corrupted +80082F30 osPfsAllocateFile +800832C0 __osPfsDeclearPage +8008348C __osClearPage +80083520 osPfsDeleteFile +8008374C __osPfsReleasePages +800838EC __osBlockSum +800839C0 osPfsReadWriteFile +80083DF0 osPfsFileState +80084030 osPfsFindFile +800841C0 osPfsIsPlug +8008433C __osPfsRequestData +800844A0 osPfsFreeBlocks +800845B0 osPfsNumFiles +800846B0 osPfsInitPak +80084880 osPfsRepairId +80084A40 __osPfsGetStatus +80084B20 __osPfsRequestOneChannel +80084BB0 __osPfsGetOneChannelData +80084C30 osMotorStop +80084FB0 osMotorInit +80085480 osPiRawReadIo +80085520 osCreatePiManager +800856B0 osEPiRawStartDma +80085880 osEPiStartDma +80085920 osCartRomInit +80085A00 osLeoDiskInit +80085B00 osDriveRomInit +80085BC0 __osDevMgrMain +80085F80 __osSiCreateAccessQueue +80085FD4 __osSiGetAccess +80086070 osPiStartDma +80086120 _bcopy +80086440 _bzero +800864E0 strchr +80086518 strlen +8008653C memcpy +80086570 sprintf +800865C8 proutSprintf +80086614 osSyncPrintf +80086630 osCreateScheduler +80086778 osScAddClient +800867D0 osScRemoveClient +80086860 osScGetCmdQ +80086868 sched_text_0238 +8008696C __scHandleRetrace +80086A6C __scHandleRSP +80086B7C __scHandleRDP +80086C5C __scTaskReady +80086CB0 __scTaskComplete +80086D60 __scAppendList +80086E0C __scExec +80086F40 __scYield +80086F78 __scSchedule +80087190 guNormalize +80087240 __osExceptionPreamble +80087250 __osException +80087870 handle_CpU +800879F4 __osPopThread +80087B80 __osCleanupThread +80087B90 __osGetSR +80087C20 __osDisableInt +80087C40 __osRestoreInt +80087C60 __osProbeTLB +80087D20 __osSetCompare +80087D30 __osSetFpcCsr +80087D40 __osSetSR +80087D50 osMapTLBRdb +80087DB0 osGetThreadPri +80087DD0 osJamMesg +80087F10 __osResetGlobalIntMask +80087F60 __osSetGlobalIntMask +80087FA0 osSetThreadPri +80088070 osSetTimer +80088120 __osAiDeviceBusy +80088140 osDpSetNextBuffer +800881E0 __osSpDeviceBusy +80088200 __osSpGetStatus +80088210 __osSpSetStatus +80088220 __osSpRawStartDma +80088320 __osViInit +80088440 __osSiDeviceBusy +80088460 __osSiRawStartDma +80088610 __osContAddressCrc +80088658 __osContDataCrc +800886C0 __osContRamRead +800888F4 __osPackRamReadData +80088A90 __osContRamWrite +80088CB0 __osPackRamWriteData +80088E50 __osSumcalc +80088E88 __osIdCheckSum +80088ECC __osRepairPackId +800891AC __osCheckPackId +80089310 __osGetId +800894F0 __osCheckId +800895B4 __osPfsRWInode +8008988C __osPfsSelectBank +800898E0 osPiRawStartDma +800899B0 osPiGetCmdQueue +800899D0 osEPiRawReadIo +80089B60 osEPiRawWriteIo +80089CB0 __osLeoInterrupt +8008A1BC __osLeoAbnormalResume +8008A28C __osLeoResume +8008A340 _Printf +8008A8B0 _Putfld +8008AD70 __osDpDeviceBusy +8008AD90 _Litob +8008AFE0 _Ldtob +8008B420 _Ldunscale +8008B4B8 _Genld +8008BA60 ldiv +8008BAE4 lldiv +8008E598 __osActiveQueue +8008EE20 __additional_scanline +800911A4 __osCurrentTime +80091270 __osSiAccessQueueEnabled +800915B0 rotate_data_0000 +800915C0 rotaterpy_data_0000 +800915D0 position_data_0000 +800915E0 initialize_data_0000 +800915E4 initialize_data_0004 +800915E8 osViClock +800915F0 __OSGlobalIntMask +80091600 __osThreadTail +80091608 __osRunQueue +8009160C __osActiveQueue +80091610 __osRunningThread +80091620 timerintr_data_0000 +80091630 drvrnew_data_0000 +80091698 drvrnew_data_0068 +80091720 drvrnew_data_00F0 +80091748 drvrnew_data_0118 +80091770 drvrnew_data_0140 +80091798 drvrnew_data_0168 +800917C0 env_data_0000 +800918E0 alGlobals +800918F0 aisetnextbuf_data_0000 +80091900 vimgr_data_0000 +80091904 vimgr_data_0004 +80091908 vimgr_data_0008 +8009190C vimgr_data_000C +80091910 vimgr_data_0010 +80091914 vimgr_data_0014 +80091918 vimgr_data_0018 +80091920 osViModeTable +80092640 controller_data_0000 +80092650 motor_data_0000 +80092660 pimgr_data_0000 +80092664 pimgr_data_0004 +80092668 pimgr_data_0008 +8009266C pimgr_data_000C +80092670 pimgr_data_0010 +80092674 pimgr_data_0014 +80092678 pimgr_data_0018 +8009267C __osPiTable +80092680 __osCurrentHandle +80092690 __osPiAccessQueueEnabled +800926A4 sched_data_0004 +800926A8 sched_data_0008 +800926AC sched_data_000C +800926D0 vi_data_0000 +800926D2 vi_data_0002 +800926D4 vi_data_0004 +80092702 vi_data_0032 +80092704 vi_data_0034 +80092708 vi_data_0038 +80092730 __osViCurr +80092734 __osViNext +80092750 osViModeNtscLan1 +800927A0 osViModePalLan1 +800927F0 osViModeMpalLan1 +80092840 xprintf_data_0000 +80092864 xprintf_data_0024 +80092890 xlitob_data_0000 +800928A4 xlitob_data_0014 +80095E78 cosf_rodata_0008 +80095E80 cosf_rodata_0010 +80095E88 cosf_rodata_0018 +80095E90 cosf_rodata_0020 +80095E98 cosf_rodata_0028 +80095EA0 cosf_rodata_0030 +80095EA8 cosf_rodata_0038 +80095EB0 cosf_rodata_0040 +80095EB8 cosf_rodata_0048 +80095EC0 cosf_rodata_0050 +80095ED0 lookat_rodata_0000 +80095EE0 lookat_rodata_0010 +80095EF0 perspective_rodata_0000 +80095EF8 perspective_rodata_0008 +80095F00 perspective_rodata_0010 +80095F08 perspective_rodata_0018 +80095F10 perspective_rodata_0020 +80095F18 perspective_rodata_0028 +80095F20 perspective_rodata_0030 +80095F28 perspective_rodata_0038 +80095F38 sinf_rodata_0008 +80095F40 sinf_rodata_0010 +80095F48 sinf_rodata_0018 +80095F50 sinf_rodata_0020 +80095F58 sinf_rodata_0028 +80095F60 sinf_rodata_0030 +80095F68 sinf_rodata_0038 +80095F70 sinf_rodata_0040 +80095F78 sinf_rodata_0048 +80095F80 sinf_rodata_0050 +80095F90 __osRcpImTable +80096010 drvrnew_rodata_0000 +80096018 drvrnew_rodata_0008 +80096030 drvrnew_rodata_0020 +80096038 drvrnew_rodata_0028 +80096040 drvrnew_rodata_0030 +80096050 env_rodata_0000 +80096054 env_rodata_0004 +80096060 env_rodata_0010 +800960A8 env_rodata_0048 +800960B0 env_rodata_0050 +800960B8 env_rodata_0058 +800960C0 env_rodata_0060 +80096100 env_rodata_00A0 +80096108 env_rodata_00A8 +80096110 env_rodata_00B0 +80096118 env_rodata_00B8 +80096120 env_rodata_00C0 +80096128 env_rodata_00C8 +80096130 env_rodata_00D0 +80096138 env_rodata_00D8 +80096140 env_rodata_00E0 +80096148 env_rodata_00E8 +80096150 resample_rodata_0000 +80096158 resample_rodata_0008 +80096180 reverb_rodata_0000 +80096184 reverb_rodata_0004 +80096190 reverb_rodata_0000 +800961B0 reverb_rodata_0020 +800961B8 reverb_rodata_0028 +800961C0 reverb_rodata_0030 +800961C8 reverb_rodata_0038 +800961D0 reverb_rodata_0040 +800961D8 reverb_rodata_0048 +800961E0 save_rodata_0000 +800961E4 save_rodata_0004 +800961F0 synthesizer_rodata_0000 +800961F8 synthesizer_rodata_0008 +80096200 synthesizer_rodata_0010 +80096208 synthesizer_rodata_0018 +80096210 synthesizer_rodata_0020 +80096214 synthesizer_rodata_0024 +80096230 aisetfreq_rodata_0000 +80096240 viswapcontext_rodata_0000 +80096250 sprawread_rodata_0000 +80096254 sprawread_rodata_0004 +80096260 sirawwrite_rodata_0000 +80096264 sirawwrite_rodata_0004 +80096274 pirawread_rodata_0000 +80096278 pirawread_rodata_0004 +80096288 devmgr_rodata_0000 +800962A8 sched_rodata_0000 +800962AC sched_rodata_0004 +800962B8 sched_rodata_0000 +800962E0 __libm_qnan_f +80096340 sprawdma_rodata_0000 +80096344 sprawdma_rodata_0004 +80096350 sirawdma_rodata_0000 +80096354 sirawdma_rodata_0004 +80096360 epirawread_rodata_0000 +80096364 epirawread_rodata_0004 +80096378 xprintf_rodata_0000 +80096380 xprintf_rodata_0008 +80096398 xprintf_rodata_0020 +800963A0 xprintf_rodata_0028 +800964F0 xldtob_rodata_0000 +80096538 xldtob_rodata_0048 +8009653C xldtob_rodata_004C +80096540 xldtob_rodata_0050 +80096548 xldtob_rodata_0058 +80096550 xldtob_rodata_0060 +8009BC08 __osSiAccessQueue +8009BDB4 lookat_rodata_0008 +8009BDD4 lookat_rodata_0018 +8009C110 sptask_bss_0000 +8009C114 sptask_bss_0004 +8009C120 sptask_bss_0010 +8009C128 sptask_bss_0018 +8009C12C sptask_bss_001C +8009C130 sptask_bss_0020 +8009C138 sptask_bss_0028 +8009C13C sptask_bss_002C +8009C140 sptask_bss_0030 +8009C148 sptask_bss_0038 +8009C14C sptask_bss_003C +8009C150 vimgr_bss_0000 +8009C158 vimgr_bss_0008 +8009D310 vimgr_bss_11C0 +8009D328 vimgr_bss_11D8 +8009D340 vimgr_bss_11F0 +8009D342 vimgr_bss_11F2 +8009D344 vimgr_bss_11F4 +8009D358 vimgr_bss_1208 +8009D35A vimgr_bss_120A +8009D35C vimgr_bss_120C +8009D370 pimgr_bss_0000 +8009E520 pimgr_bss_11B0 +8009E538 pimgr_bss_11C8 +8009E540 siacs_bss_0000 +8009ED78 __osBaseCounter +8009ED80 DriveRomHandle +8009EDF8 _motorstopbuf +800ACE00 __osContPifRam +800ACE3C __osContPifRam +800AFE80 __osViIntrCount +800B19D8 _MotorStartData +800B1AE0 _motorstartbuf +800B51E0 __osDiskHandle +800B5D68 __osMaxControllers +800B5DEC __osCurrentTime +800BBF24 gzip_data_0000 +800BC298 __osPiAccessQueue +800BF648 __osContLastCmd +800BF64C __osEepromTimerMsg +800BFB40 __osTimerCounter +800C09AC player_bss_003C +800C0A80 LeoDiskHandle +800C6940 _MotorStopData +800C6A50 __osEventStateTab +800C6A94 __osEventStateTab +800C72C0 __osFinalrom +800C72E0 __osPfsPifRam +800C731C __osPfsPifRam +800C8740 __osEepromTimerQ +800C9F98 CartRomHandle diff --git a/signatures.txt b/example_signatures.txt similarity index 100% rename from signatures.txt rename to example_signatures.txt diff --git a/src/main/java/n64loaderwv/N64LoaderWVLoader.java b/src/main/java/n64loaderwv/N64LoaderWVLoader.java index 8528428..bd9530e 100644 --- a/src/main/java/n64loaderwv/N64LoaderWVLoader.java +++ b/src/main/java/n64loaderwv/N64LoaderWVLoader.java @@ -176,8 +176,25 @@ protected void load(ByteProvider provider, LoadSpec loadSpec, List