Difference between revisions of "SCUS 942.21 Routines"
Jump to navigation
Jump to search
(74 intermediate revisions by 5 users not shown) | |||
Line 1: | Line 1: | ||
+ | == SCUS_942.21 Data Tables == | ||
+ | |||
+ | [[SCUS 942.21 Data Tables]] | ||
+ | |||
== SCUS_942.21 RAM == | == SCUS_942.21 RAM == | ||
00010a30 - 00010b3c: [[main]] -> [[start]] | 00010a30 - 00010b3c: [[main]] -> [[start]] | ||
[[00010b40 - 00010ba4]]: | [[00010b40 - 00010ba4]]: | ||
− | [[00010ba8 - 00011bac]]: | + | [[00010ba8 - 00011bac]]: [[Battle.bin entry point (deprecated)]] |
− | [[00011bb0 - 00011bbc]]: | + | [[00011bb0 - 00011bbc]]: [[Put Stack pointer]] |
− | [[00011bc0 - 00011bcc]]: | + | [[00011bc0 - 00011bcc]]: [[Get Stack pointer]] |
00011bd0 - 00011bf0: [[Load Data From Disc (0x11bd0)]] | 00011bd0 - 00011bf0: [[Load Data From Disc (0x11bd0)]] | ||
[[00011bf4 - 00011dd4]]: [[Load Data From Disc (0x11bf4)]] | [[00011bf4 - 00011dd4]]: [[Load Data From Disc (0x11bf4)]] | ||
− | [[00011dd8 - 00011e14]]: | + | [[00011dd8 - 00011e14]]: [[Reset and Pause CDROM]] |
− | [[00011e18 - 00011e34]]: [[ | + | [[00011e18 - 00011e34]]: [[Reset CD Subsystems]] |
− | [[00011e38 - 0001201c]]: | + | [[00011e38 - 0001201c]]: [[Open File to RAM Centre]] |
− | [[00012020 - 000120f0]]: | + | [[00012020 - 000120f0]]: [[Draw Now Loading Message]] |
+ | ==SUZUKI Music Library== | ||
[[000120f4 - 00012168]]: | [[000120f4 - 00012168]]: | ||
[[0001216c - 000121c8]]: | [[0001216c - 000121c8]]: | ||
− | [[000121cc - 000121d0]]: | + | [[000121cc - 000121d0]]: jr r31 |
− | [[000121d4 - 000121d8]]: | + | [[000121d4 - 000121d8]]: jr r31 |
[[000121dc - 00012280]]: | [[000121dc - 00012280]]: | ||
[[00012284 - 00012334]]: | [[00012284 - 00012334]]: | ||
Line 22: | Line 27: | ||
[[000123cc - 00012440]]: | [[000123cc - 00012440]]: | ||
[[00012444 - 000124a8]]: | [[00012444 - 000124a8]]: | ||
− | [[000124ac - 000124b0]]: | + | [[000124ac - 000124b0]]: jr r31 |
− | [[000124b4 - 000124b8]]: | + | [[000124b4 - 000124b8]]: jr r31 |
− | [[000124bc - 000124c0]]: | + | [[000124bc - 000124c0]]: jr r31 |
− | [[000124c4 - 000124c8]]: | + | [[000124c4 - 000124c8]]: jr r31 |
[[000124cc - 00012514]]: | [[000124cc - 00012514]]: | ||
00012518 - 0001255c: [[Play Sound Effect (Inner Routine)]] | [[Cursor Sound Effects?]] | 00012518 - 0001255c: [[Play Sound Effect (Inner Routine)]] | [[Cursor Sound Effects?]] | ||
Line 75: | Line 80: | ||
[[00014148 - 0001417c]]: | [[00014148 - 0001417c]]: | ||
[[00014180 - 00014200]]: | [[00014180 - 00014200]]: | ||
− | [[00014204 - 00014208]]: | + | [[00014204 - 00014208]]: jr r31 |
[[0001420c - 00014238]]: | [[0001420c - 00014238]]: | ||
− | [[0001423c - 00014274]]: | + | [[0001423c - 00014274]]: [[Set Global Music Variables]] |
− | [[00014278 - 00014354]]: | + | [[00014278 - 00014354]]: [[Find space for SMD to MUS]] |
[[00014358 - 000143a8]]: | [[00014358 - 000143a8]]: | ||
[[000143ac - 00014428]]: | [[000143ac - 00014428]]: | ||
[[0001442c - 000144cc]]: | [[0001442c - 000144cc]]: | ||
[[000144d0 - 00014540]]: | [[000144d0 - 00014540]]: | ||
− | [[00014544 - 00014548]]: | + | [[00014544 - 00014548]]: jr r31 |
− | [[0001454c - 00014568]]: | + | [[0001454c - 00014568]]: [[SpuMalloc with extra steps]] |
− | [[0001456c - 0001458c]]: | + | [[0001456c - 0001458c]]: [[SpuFree with extra steps]] |
[[00014590 - 00014814]]: | [[00014590 - 00014814]]: | ||
[[00014818 - 000148b0]]: | [[00014818 - 000148b0]]: | ||
Line 97: | Line 102: | ||
[[00015324 - 00015860]]: | [[00015324 - 00015860]]: | ||
[[00015864 - 00015868]]: | [[00015864 - 00015868]]: | ||
− | [[0001586c - 00015870]]: | + | SMD Instructions |
− | [[00015874 - 00015898]]: | + | [[0001586c - 00015870]]: [[SMD No Instruction]] |
− | [[0001589c - 000158b4]]: | + | [[00015874 - 00015898]]: [[Rest]] |
− | [[000158b8 - 000158bc]]: | + | [[0001589c - 000158b4]]: [[Fermata]] |
+ | [[000158b8 - 000158bc]]: [[SMD No Instruction 2]] | ||
[[000158c0 - 000158e4]]: | [[000158c0 - 000158e4]]: | ||
− | [[000158e8 - 000158ec]]: | + | [[000158e8 - 000158ec]]: [[SMD No Instruction 3]] |
− | [[000158f0 - 000158f4]]: | + | [[000158f0 - 000158f4]]: [[SMD No Instruction 4]] |
− | [[000158f8 - 000159d8]]: | + | [[000158f8 - 000159d8]]: [[Tacet]] |
− | [[000159dc - 000159ec]]: | + | [[000159dc - 000159ec]]: [[Loop]] |
− | [[000159f0 - 00015a0c]]: | + | [[000159f0 - 00015a0c]]: [[Octave]] |
− | [[00015a10 - 00015a24]]: | + | [[00015a10 - 00015a24]]: [[Raise Octave]] |
− | [[00015a28 - 00015a3c]]: | + | [[00015a28 - 00015a3c]]: [[Lower Octave]] |
− | [[00015a40 - 00015a84]]: | + | [[00015a40 - 00015a84]]: [[Time Signature]] |
[[00015a88 - 00015a98]]: | [[00015a88 - 00015a98]]: | ||
[[00015a9c - 00015ab4]]: | [[00015a9c - 00015ab4]]: | ||
− | [[00015ab8 - 00015afc]]: | + | [[00015ab8 - 00015afc]]: [[Repeat]] |
− | [[00015b00 - 00015b68]]: | + | [[00015b00 - 00015b68]]: [[Coda]] |
− | [[00015b6c - 00015bb4]]: | + | [[00015b6c - 00015bb4]]: [[To Coda]] |
[[00015bb8 - 00015bf8]]: | [[00015bb8 - 00015bf8]]: | ||
[[00015bfc - 00015c34]]: | [[00015bfc - 00015c34]]: | ||
[[00015c38 - 00015cac]]: | [[00015c38 - 00015cac]]: | ||
− | [[00015cb0 - 00015cd4]]: | + | [[00015cb0 - 00015cd4]]: [[Tempo]] |
[[00015cd8 - 00015d00]]: | [[00015cd8 - 00015d00]]: | ||
[[00015d04 - 00015d40]]: | [[00015d04 - 00015d40]]: | ||
Line 125: | Line 131: | ||
[[00015dd0 - 00015de0]]: | [[00015dd0 - 00015de0]]: | ||
[[00015de4 - 00015e2c]]: | [[00015de4 - 00015e2c]]: | ||
− | [[00015e30 - 00015e64]]: | + | [[00015e30 - 00015e64]]: [[Instrument]] |
[[00015e68 - 00015e94]]: | [[00015e68 - 00015e94]]: | ||
− | [[00015e98 - 00015e9c]]: | + | [[00015e98 - 00015e9c]]: [[SMD No Instruction 5]] |
− | [[00015ea0 - 00015ea4]]: | + | [[00015ea0 - 00015ea4]]: [[SMD No Instruction 6]] |
[[00015ea8 - 00015ebc]]: | [[00015ea8 - 00015ebc]]: | ||
[[00015ec0 - 00015ed4]]: | [[00015ec0 - 00015ed4]]: | ||
Line 138: | Line 144: | ||
[[00016060 - 00016088]]: | [[00016060 - 00016088]]: | ||
[[0001608c - 000160e0]]: | [[0001608c - 000160e0]]: | ||
− | [[000160e4 - 0001610c]]: | + | [[000160e4 - 0001610c]]: [[Cue]] |
[[00016110 - 00016138]]: | [[00016110 - 00016138]]: | ||
− | [[0001613c - 00016170]]: | + | [[0001613c - 00016170]]: [[Naturale]] |
[[00016174 - 000161a4]]: | [[00016174 - 000161a4]]: | ||
− | [[000161a8 - 000161c0]]: | + | [[000161a8 - 000161c0]]: [[Attack Time]] |
[[000161c4 - 000161dc]]: | [[000161c4 - 000161dc]]: | ||
− | [[000161e0 - 000161f8]]: | + | [[000161e0 - 000161f8]]: [[Sustain]] |
[[000161fc - 00016218]]: | [[000161fc - 00016218]]: | ||
− | [[0001621c - 00016234]]: | + | [[0001621c - 00016234]]: [[Sustain 2]] |
[[00016238 - 0001625c]]: | [[00016238 - 0001625c]]: | ||
[[00016260 - 00016278]]: | [[00016260 - 00016278]]: | ||
Line 159: | Line 165: | ||
[[000163d4 - 000163e8]]: | [[000163d4 - 000163e8]]: | ||
[[000163ec - 0001641c]]: | [[000163ec - 0001641c]]: | ||
− | [[00016420 - 000164d0]]: | + | [[00016420 - 000164d0]]: [[Pitch Shift]] |
[[000164d4 - 000165a8]]: | [[000164d4 - 000165a8]]: | ||
[[000165ac - 000165e0]]: | [[000165ac - 000165e0]]: | ||
[[000165e4 - 000165f8]]: | [[000165e4 - 000165f8]]: | ||
[[000165fc - 00016610]]: | [[000165fc - 00016610]]: | ||
− | [[00016614 - 0001663c]]: | + | [[00016614 - 0001663c]]: [[Dynamic]] |
[[00016640 - 0001667c]]: | [[00016640 - 0001667c]]: | ||
[[00016680 - 000166c4]]: | [[00016680 - 000166c4]]: | ||
Line 172: | Line 178: | ||
[[0001686c - 00016880]]: | [[0001686c - 00016880]]: | ||
[[00016884 - 00016898]]: | [[00016884 - 00016898]]: | ||
− | [[0001689c - 000168b8]]: | + | [[0001689c - 000168b8]]: [[Balance]] |
[[000168bc - 000168e8]]: | [[000168bc - 000168e8]]: | ||
[[000168ec - 00016938]]: | [[000168ec - 00016938]]: | ||
Line 191: | Line 197: | ||
[[00016e48 - 00016ea0]]: | [[00016e48 - 00016ea0]]: | ||
[[00016ea4 - 00016fb0]]: | [[00016ea4 - 00016fb0]]: | ||
− | [[00016fb4 - 00017094]]: | + | |
+ | [[00016fb4 - 00017094]]: [[Set Instrument]] | ||
[[00017098 - 000170d4]]: | [[00017098 - 000170d4]]: | ||
[[000170d8 - 00017114]]: | [[000170d8 - 00017114]]: | ||
Line 208: | Line 215: | ||
[[000178f4 - 0001791c]]: | [[000178f4 - 0001791c]]: | ||
[[00017920 - 00017b48]]: | [[00017920 - 00017b48]]: | ||
− | [[00017b4c - 00017bf4]]: | + | [[00017b4c - 00017bf4]]: [[Set All Voices Release Shift to 6]] |
[[00017bf8 - 00017c38]]: | [[00017bf8 - 00017c38]]: | ||
[[00017c3c - 00017c88]]: | [[00017c3c - 00017c88]]: | ||
Line 251: | Line 258: | ||
[[00019378 - 000193a0]]: | [[00019378 - 000193a0]]: | ||
[[000193a4 - 00019400]]: | [[000193a4 - 00019400]]: | ||
− | [[00019404 - 00019424]]: | + | ==LIBSPU Sound Processing Unit Library== |
− | [[00019428 - 00019444]]: | + | [[00019404 - 00019424]]: [[_spuDataCallback]] |
− | [[00019448 - 000194c0]]: | + | [[00019428 - 00019444]]: [[SsUtReverbOn]] |
− | [[000194c4 - 00019514]]: | + | [[00019448 - 000194c0]]: [[SpuQuit]] |
− | [[00019518 - 000197dc]]: | + | [[000194c4 - 00019514]]: [[SpuInitMalloc]] |
− | [[000197e0 - 00019adc]]: | + | [[00019518 - 000197dc]]: [[SpuMalloc]] |
− | [[00019ae0 - 00019b58]]: | + | [[000197e0 - 00019adc]]: [[_spu_gcSPU]] |
− | [[00019b5c - 00019b7c]]: | + | [[00019ae0 - 00019b58]]: [[SpuFree]] |
− | [[00019b80 - 00019d84]]: | + | [[00019b5c - 00019b7c]]: [[SpuSetNoiseVoice]] |
− | [[00019d88 - 00019dd4]]: | + | [[00019b80 - 00019d84]]: [[_SpuSetAnyVoice]] |
+ | [[00019d88 - 00019dd4]]: [[SpuSetNoiseClock]] | ||
[[00019dd8 - 00019e34]]: | [[00019dd8 - 00019e34]]: | ||
− | [[00019e38 - 00019f04]]: | + | [[00019e38 - 00019f04]]: [[SpuSetReverb]] |
[[00019f08 - 00019f84]]: | [[00019f08 - 00019f84]]: | ||
[[00019f88 - 0001a010]]: | [[00019f88 - 0001a010]]: | ||
− | [[0001a014 - 0001a520]]: | + | [[0001a014 - 0001a520]]: [[SpuSetReverbModeParam]] |
− | [[0001a524 - 0001a9f0]]: | + | [[0001a524 - 0001a9f0]]: [[_spu_setReverbAttr]] |
− | [[0001a9f4 - 0001aa40]]: | + | [[0001a9f4 - 0001aa40]]: [[SpuGetReverbModeParam]] |
− | [[0001aa44 - 0001aab8]]: | + | [[0001aa44 - 0001aab8]]: [[SpuSetReverbDepth]] |
− | [[0001aabc - 0001aadc]]: | + | [[0001aabc - 0001aadc]]: [[SpuSetReverbVoice]] |
− | [[0001aae0 - 0001ac78]]: | + | [[0001aae0 - 0001ac78]]: [[SpuClearReverbWorkArea]] |
− | [[0001ac7c - 0001acec]]: | + | [[0001ac7c - 0001acec]]: [[SpuReadDecodedData]] |
− | [[0001acf0 - 0001aef0]]: | + | [[0001acf0 - 0001aef0]]: [[Set Voices to Release]] |
[[0001aef4 - 0001af60]]: | [[0001aef4 - 0001af60]]: | ||
[[0001af64 - 0001afc0]]: | [[0001af64 - 0001afc0]]: | ||
[[0001afc4 - 0001b014]]: | [[0001afc4 - 0001b014]]: | ||
− | [[0001b018 - 0001b048]]: | + | [[0001b018 - 0001b048]]: [[SpuSetTransferMode]] |
− | [[0001b04c - 0001b06c]]: | + | [[0001b04c - 0001b06c]]: [[SpuSetTransferCallback]] |
− | [[0001b070 - 0001b090]]: | + | [[0001b070 - 0001b090]]: [[SpuSetPitchLFOVoice]] |
[[0001b094 - 0001b424]]: | [[0001b094 - 0001b424]]: | ||
[[0001b428 - 0001b4ac]]: | [[0001b428 - 0001b4ac]]: | ||
Line 286: | Line 294: | ||
[[0001b720 - 0001b798]]: | [[0001b720 - 0001b798]]: | ||
[[0001b79c - 0001b824]]: | [[0001b79c - 0001b824]]: | ||
− | [[0001b828 - 0001b8ac]]: | + | [[0001b828 - 0001b8ac]]: [[Set Voice Release Shift]] |
[[0001b8b0 - 0001b934]]: | [[0001b8b0 - 0001b934]]: | ||
[[0001b938 - 0001b9d0]]: | [[0001b938 - 0001b9d0]]: | ||
[[0001b9d4 - 0001bab4]]: | [[0001b9d4 - 0001bab4]]: | ||
[[0001bab8 - 0001bb58]]: | [[0001bab8 - 0001bb58]]: | ||
− | [[0001bb5c - 0001bb94]]: | + | ==LIBGTE Geometry Transformation Engine Library== |
− | [[0001bb98 - 0001bc24]]: | + | [[0001bb5c - 0001bb94]]: [[rsin]] |
− | [[0001bc28 - 0001bcc4]]: | + | [[0001bb98 - 0001bc24]]: [[sin_1]] |
− | [[0001bcc8 - 0001be18]]: | + | [[0001bc28 - 0001bcc4]]: [[rcos]] |
− | [[0001be1c - 0001beb4]]: | + | [[0001bcc8 - 0001be18]]: [[csqrt_1]] |
− | [[0001beb8 - 0001bf34]]: | + | [[0001be1c - 0001beb4]]: [[csqrt]] |
− | 0001bf38 - 0001bfb8: [[Frame Timing Related? (0x1bf38)]] | + | [[0001beb8 - 0001bf34]]: [[InitGeom]] |
+ | 0001bf38 - 0001bfb8: [[Frame Timing Related? (0x1bf38)]] [[SquareRoot0]] | ||
[[0001bfb4 - 0001bfb8]]: | [[0001bfb4 - 0001bfb8]]: | ||
− | [[0001bfc8 - 0001c048]]: | + | [[0001bfc8 - 0001c048]]: [[InvSquareRoot]] |
0001c04c - 0001c050: [[Return -1]] | 0001c04c - 0001c050: [[Return -1]] | ||
− | [[0001c054 - 0001c090]]: | + | [[0001c054 - 0001c090]]: [[VectorNormalS]] & VectorNormal 8001c068 |
− | [[0001c094 - 0001c0c0]]: | + | [[0001c094 - 0001c0c0]]: [[VectorNormalSS]] |
[[0001c0c4 - 0001c17c]]: | [[0001c0c4 - 0001c17c]]: | ||
− | [[0001c180 - 0001c260]]: | + | [[0001c180 - 0001c260]]: [[MatrixNormal]] |
− | 0001c268 - 0001c2e4: [[Get Square root of r4 dealing with 4096]] | + | 0001c268 - 0001c2e4: [[Get Square root of r4 dealing with 4096]] [[SquareRoot12]] |
[[0001c2e8 - 0001c2f0]]: | [[0001c2e8 - 0001c2f0]]: | ||
[[0001c2f4 - 0001c2f8]]: | [[0001c2f4 - 0001c2f8]]: | ||
− | [[0001c308 - 0001c464]]: | + | [[0001c308 - 0001c464]]: [[CompMatrix]] |
− | [[0001c468 - 0001c570]]: | + | [[0001c468 - 0001c570]]: [[MulMatrix0]] |
− | [[0001c574 - 0001c654]]: | + | [[0001c574 - 0001c654]]: [[MulRotMatrix0]] |
− | [[0001c658 - 0001c73c]]: | + | [[0001c658 - 0001c73c]]: [[MulRotMatrix]] |
− | [[0001c740 - 0001c84c]]: | + | [[0001c740 - 0001c84c]]: [[SetMulMatrix]] |
− | [[0001c850 - 0001c9ac]]: | + | [[0001c850 - 0001c9ac]]: [[ApplyMatrixLV]] |
− | [[0001c9b0 - 0001c9dc]]: | + | [[0001c9b0 - 0001c9dc]]: [[ApplyRotMatrix]] |
− | [[0001c9e0 - 0001cb00]]: | + | [[0001c9e0 - 0001cb00]]: [[ScaleMatrixL]] |
− | [[0001cb04 - 0001cb3c]]: [[? 0x1cb04]] | + | [[0001cb04 - 0001cb3c]]: [[? 0x1cb04]] [[PushMatrixL]] |
− | [[0001cb40 - 0001cba0]]: [[? 0x1cba4]] | + | [[0001cb40 - 0001cba0]]: |
− | + | [[0001cba4 - 0001cbd8]]: [[? 0x1cba4]] [[PopMatrix]] | |
[[0001cbdc - 0001cc40]]: | [[0001cbdc - 0001cc40]]: | ||
− | [[0001cc44 - 0001cc88]]: | + | [[0001cc44 - 0001cc88]]: [[ReadRotMatrix]] |
− | [[0001cc8c - 0001ccd0]]: | + | [[0001cc8c - 0001ccd0]]: [[ReadLightMatrix]] |
− | [[0001ccd4 - 0001cd18]]: | + | [[0001ccd4 - 0001cd18]]: [[ReadColorMatrix]] |
− | [[0001cd28 - 0001ce30]]: | + | [[0001cd28 - 0001ce30]]: [[MulMatrix]] |
− | [[0001ce38 - 0001cf40]]: | + | [[0001ce38 - 0001cf40]]: [[MulMatrix2]] |
[[0001cf48 - 0001cf68]]: | [[0001cf48 - 0001cf68]]: | ||
− | [[0001cf78 - 0001d098]]: | + | [[0001cf78 - 0001d098]]: [[ScaleMatrix]] |
− | + | 0001d0a8 - 0001d0d4: [[Store Rotation matrix elements to GTE]] [[SetRotMatrix]] | |
− | + | 0001d0d8 - 0001d104: [[Store Light Source Matrix Elements to GTE]] [[SetLightMatrix]] | |
− | + | 0001d108 - 0001d134: [[Store Light Color matrix source RGB's to GTE]] [[SetColorMatrix]] | |
− | 0001d0a8 - 0001d0d4: [[Store Rotation matrix elements to GTE]] | + | 0001d138 - 0001d154: [[Store Translation Vectors to GTE]] [[SetTransMatrix]] |
− | 0001d0d8 - 0001d104: [[Store Light Source Matrix Elements to GTE]] | + | 0001d158 - 0001d160: [[Get Projection Plane distance from GTE]] [[ReadGeomScreen]] |
− | 0001d108 - 0001d134: [[Store Light Color matrix source RGB's to GTE]] | + | 0001d164 - 0001d184: [[Store Background RGB to GTE]] [[SetBackColor]] |
− | 0001d138 - 0001d154: [[Store Translation Vectors to GTE]] | + | 0001d188 - 0001d1a4: [[Store far color RGB to GTE]] [[SetFarColor]] |
− | 0001d158 - 0001d160: [[Get Projection Plane distance from GTE]] | + | 0001d1a8 - 0001d1bc: [[Store Screen offsets to GTE]] |
− | 0001d164 - 0001d184: [[Store Background RGB to GTE]] | ||
− | 0001d188 - 0001d1a4: [[Store far color RGB to GTE]] | ||
− | 0001d1a8 - 0001d1bc: [[Store Screen offsets to GTE]] | ||
0001d1c0 - 0001d1d0: [[Store Projection plane distance in GTE]] | 0001d1c0 - 0001d1d0: [[Store Projection plane distance in GTE]] | ||
− | 0001d1d4 - 0001d1fc: [[Multiply vector and store results]] | + | 0001d1d4 - 0001d1fc: [[Multiply vector and store results]] [[LightColor]] |
− | 0001d200 - 0001d224: [[Depth Cue Color Light]] | + | 0001d200 - 0001d224: [[Depth Cue Color Light]] [[DpqColorLight]] |
− | 0001d228 - 0001d260: [[Depth Cue Triple]] | + | 0001d228 - 0001d260: [[Depth Cue Triple]] [[DpqColor3]] |
0001d264 - 0001d284: [[interpolate]] | 0001d264 - 0001d284: [[interpolate]] | ||
− | 0001d288 - 0001d2ac: [[square vector]] | + | 0001d288 - 0001d2ac: [[square vector]] [[Square12]] |
− | 0001d2b0 - 0001d2d4: [[square matrix/vector (duplicate routine?]] | + | 0001d2b0 - 0001d2d4: [[square matrix/vector (duplicate routine?]] [[Square0]] |
0001d2d8 - 0001d2f4: [[SMP 11 AverageSZ3]] | 0001d2d8 - 0001d2f4: [[SMP 11 AverageSZ3]] | ||
0001d2f8 - 0001d318: [[SMP 12 AverageSZ4]] | 0001d2f8 - 0001d318: [[SMP 12 AverageSZ4]] | ||
− | 0001d31c - 0001d370: [[calculate outer product of 2 vectors]] | + | 0001d31c - 0001d370: [[calculate outer product of 2 vectors]] [[OuterProduct12]] |
− | 0001d374 - 0001d3c8: [[calculate outer product of 2 vectors 2]] | + | 0001d374 - 0001d3c8: [[calculate outer product of 2 vectors 2]] [[OuterProduct0]] |
− | 0001d3cc - 0001d3e0: [[Get leading 0 or 1 count]] | + | 0001d3cc - 0001d3e0: [[Get leading 0 or 1 count]] [[Lzc]] |
− | [[0001d3e4 - 0001d414]]: | + | [[0001d3e4 - 0001d414]]: [[RotTransSV]] |
− | [[0001d418 - 0001d44c]]: | + | [[0001d418 - 0001d44c]]: [[SquareSS12]] |
− | [[0001d450 - 0001d484]]: | + | [[0001d450 - 0001d484]]: [[SquareSS0]] |
− | [[0001d488 - 0001d4b4]]: | + | [[0001d488 - 0001d4b4]]: [[SquareSL12]] |
− | [[0001d4b8 - 0001d4e4]]: | + | [[0001d4b8 - 0001d4e4]]: [[SquareSL0]] |
− | [[0001d4e8 - 0001d510]]: | + | [[0001d4e8 - 0001d510]]: [[RotTransPers]] |
− | [[0001d514 - 0001d568]]: | + | [[0001d514 - 0001d568]]: [[RotTransPers3]] |
− | + | 0001d578 - 0001d59c: [[0x1d578]] [[RotTrans]] | |
− | 0001d578 - 0001d59c: [[0x1d578]] | + | 0001d56c - 0001d59c: ? |
− | + | [[0001d5a0 - 0001d5c8]]: [[NormalClip]] | |
− | [[0001d5a0 - 0001d5c8]]: | + | [[0001d5cc - 0001d64c]]: [[RotTransPers4]] |
− | [[0001d5cc - 0001d64c]]: | + | [[0001d650 - 0001d8e0]]: [[RotMatrix]] |
− | [[0001d650 - 0001d8e0]]: | + | [[0001d8e4 - 0001da64]]: [[ratan2]] |
− | [[0001d8e4 - 0001da64]]: | + | [[0001da68 - 0001dacc]]: [[_patch_gte]] |
− | [[0001da68 - 0001dacc]]: | + | ==LIBETC Callbacks Management Library== |
− | [[0001dad0 - 0001db54]]: | + | [[0001dad0 - 0001db54]]: PadInit? |
− | [[0001db58 - 0001db84]]: [[Get Inverted Button Input]] | [[Get Buttons pressed Layer?]] | + | [[0001db58 - 0001db84]]: [[Get Inverted Button Input]] | [[Get Buttons pressed Layer?]] | [[PadRead]] |
− | [[0001db88 - 0001dba4]]: | + | [[0001db88 - 0001dba4]]: [[PadStop]] |
− | [[0001dba8 - 0001dcec]]: [[ | + | [[0001dba8 - 0001dcec]]: [[VSync call|VSync call]] [[VSYNC]] |
− | [[0001dcf0 - 0001dd88]]: [[Wait for Vertical Sync]] | + | [[0001dcf0 - 0001dd88]]: [[Wait for Vertical Sync]] [[v_wait]] |
− | [[0001dd8c - 0001ddb8]]: | + | [[0001dd8c - 0001ddb8]]: [[ResetCallback]] |
− | [[0001ddbc - 0001dde8]]: | + | [[0001ddbc - 0001dde8]]: [[InterruptCallback]] |
[[0001ddec - 0001de18]]: [[DMA Callback]] | [[0001ddec - 0001de18]]: [[DMA Callback]] | ||
[[0001de1c - 0001de4c]]: [[Vsync Callback]] | [[0001de1c - 0001de4c]]: [[Vsync Callback]] | ||
Line 397: | Line 403: | ||
[[0001e884 - 0001e890]]: get video mode? | [[0001e884 - 0001e890]]: get video mode? | ||
[[0001e894 - 0001e8c0]]: [[StSetRing]] | [[0001e894 - 0001e8c0]]: [[StSetRing]] | ||
+ | ==LIBCD Basic CD-ROM & Streaming Library== | ||
[[0001e8c4 - 0001e950]]: [[CdInit]] | [[0001e8c4 - 0001e950]]: [[CdInit]] | ||
[[0001e954 - 0001e978]]: [[def_cbsync]] | [[0001e954 - 0001e978]]: [[def_cbsync]] | ||
Line 417: | Line 424: | ||
[[0001ecc0 - 0001ede8]]: [[CdControlf]] | [[0001ecc0 - 0001ede8]]: [[CdControlf]] | ||
[[0001edec - 0001ef2c]]: [[CdControlb]] | [[0001edec - 0001ef2c]]: [[CdControlb]] | ||
− | |||
− | |||
− | |||
− | |||
[[0001ef30 - 0001ef50]]: [[S 022 CDGetSector2]] <- [[CdMix]] | [[0001ef30 - 0001ef50]]: [[S 022 CDGetSector2]] <- [[CdMix]] | ||
0001ef54 - 0001ef74: [[Load file into RAM 1]] <- [[S 021 CDGetSector]] | 0001ef54 - 0001ef74: [[Load file into RAM 1]] <- [[S 021 CDGetSector]] | ||
Line 431: | Line 434: | ||
[[0001f938 - 0001fc00]]: [[CD Ready]] | [[0001f938 - 0001fc00]]: [[CD Ready]] | ||
[[0001fc04 - 00020048]]: [[S 016 CdControl]] | [[0001fc04 - 00020048]]: [[S 016 CdControl]] | ||
− | [[0002004c - 000200d0]]: [[S 022 CDGetSector2 Inner]] | + | [[0002004c - 000200d0]]: [[S 022 CDGetSector2 Inner]] [[CD vol]] |
[[000200d4 - 000201b0]]: [[CD Flush]] | [[000200d4 - 000201b0]]: [[CD Flush]] | ||
[[000201b4 - 000202a4]]: [[CD initvol]] | [[000201b4 - 000202a4]]: [[CD initvol]] | ||
Line 440: | Line 443: | ||
[[00020750 - 0002075c]]: [[CD set test parmnum]] | [[00020750 - 0002075c]]: [[CD set test parmnum]] | ||
[[00020760 - 0002083c]]: [[callback]] | [[00020760 - 0002083c]]: [[callback]] | ||
− | |||
− | |||
[[00020840 - 00020a60]]: [[Cb read]] | [[00020840 - 00020a60]]: [[Cb read]] | ||
[[00020a64 - 00020c38]]: [[Cd read retry]] | [[00020a64 - 00020c38]]: [[Cd read retry]] | ||
Line 462: | Line 463: | ||
[[00021c90 - 00021e48]]: [[dma execute]] | [[00021c90 - 00021e48]]: [[dma execute]] | ||
[[00021e4c - 00021f10]]: [[StRingStatus]] | [[00021e4c - 00021f10]]: [[StRingStatus]] | ||
− | [[00021f14 - 00021f1c]]: | + | [[00021f14 - 00021f1c]]: [[InitHeap]] |
− | [[00021f24 - 00021f2c]]: | + | [[00021f24 - 00021f2c]]: [[FlushCache]] |
− | [[00021f34 - 00021f3c]]: | + | [[00021f34 - 00021f3c]]: [[_bu_init]] |
− | [[00021f44 - 00021f4c]]: | + | [[00021f44 - 00021f4c]]: [[_96_remove]] |
− | [[00021f54 - 00021f5c]]: | + | [[00021f54 - 00021f5c]]: [[SetMem]] |
− | [[00021f64 - 00021f6c]]: | + | [[00021f64 - 00021f6c]]: [[DeliverEvent]] < NOT related to Game events!!!! [[https://problemkaputt.de/psxspx-bios-event-functions.htm BIOS_events]] |
− | [[00021f74 - 00021f7c]]: | + | [[00021f74 - 00021f7c]]: [[OpenEvent]] |
− | [[00021f84 - 00021f8c]]: | + | [[00021f84 - 00021f8c]]: [[CloseEvent]] |
− | [[00021f94 - 00021f9c]]: | + | [[00021f94 - 00021f9c]]: [[WaitEvent]] |
− | [[00021fa4 - 00021fac]]: | + | [[00021fa4 - 00021fac]]: [[TestEvent]] |
− | [[00021fb4 - 00021fbc]]: | + | [[00021fb4 - 00021fbc]]: [[EnableEvent]] |
− | [[00021fc4 - 00021fcc]]: | + | [[00021fc4 - 00021fcc]]: [[DisableEvent]] |
− | [[00021fd4 - 00021fdc]]: | + | [[00021fd4 - 00021fdc]]: [[stopPAD]] |
− | [[00021fe4 - 00021fec]]: | + | [[00021fe4 - 00021fec]]: [[PAD_init]] |
00021ff4 - 00021ffc: [[PAD_dr]] (Gets controller button state) | 00021ff4 - 00021ffc: [[PAD_dr]] (Gets controller button state) | ||
− | [[00022004 - 0002200c]]: | + | [[00022004 - 0002200c]]: [[ReturnFromException]] |
− | [[00022014 - 0002201c]]: | + | [[00022014 - 0002201c]]: [[ResetEntryInt]] |
− | [[00022024 - 0002202c]]: | + | [[00022024 - 0002202c]]: [[HookEntryInt]] |
− | [[00022034 - 00022040]]: | + | [[00022034 - 00022040]]: [[Enter Critical Section]] |
− | [[00022044 - 00022050]]: | + | [[00022044 - 00022050]]: [[Exit Critical Section]] |
[[00022054 - 000221b0]]: [[open]] [[lseek]] [[read]] [[write]] [[close]] [[format]] [[firstfile]] [[nextfile]] [[delete]] [[get error]] | [[00022054 - 000221b0]]: [[open]] [[lseek]] [[read]] [[write]] [[close]] [[format]] [[firstfile]] [[nextfile]] [[delete]] [[get error]] | ||
000220f4 - 000220fc: [[Change Clear Pad]] | 000220f4 - 000220fc: [[Change Clear Pad]] | ||
00022104 - 0002210c: [[Change Clear RCnt]] | 00022104 - 0002210c: [[Change Clear RCnt]] | ||
− | + | [[00022114 - 000221b0]]: [[SetRCnt]] | |
[[000221b4 - 000221e8]]: [[GetRCnt]] | [[000221b4 - 000221e8]]: [[GetRCnt]] | ||
[[000221ec - 0002221c]]: [[StartRCnt]] | [[000221ec - 0002221c]]: [[StartRCnt]] | ||
Line 491: | Line 492: | ||
[[00022254 - 00022288]]: [[ResetRCnt]] | [[00022254 - 00022288]]: [[ResetRCnt]] | ||
− | LIBC | + | ==LIBC Standard GCC C Library== |
− | 0002228c - 00022294: [[Write String to Terminal]] | + | 0002228c - 00022294: [[Write String to Terminal]] [[puts]] <not as helpful a title. |
+ | [[0002229c - 000222a8]] [[setjmp]] | ||
+ | [[000222ac - 000222b8]] [[strcat]] | ||
+ | [[000222bc - 000222c8]] [[strcmp]] | ||
+ | [[000222cc - 000222d8]] [[strcpy]] | ||
+ | [[0002228c - 00022b94]] <- redundant. encompasses many calls. | ||
000222dc - 000222e4: [[bcopy]] (Copies data from one section of memory to another; like memmove) | 000222dc - 000222e4: [[bcopy]] (Copies data from one section of memory to another; like memmove) | ||
+ | 000222ec - 000222f8: [[bzero]] | ||
000222fc - 00022304: C43 [[memset]] | 000222fc - 00022304: C43 [[memset]] | ||
0002230c - 00022314: C47 [[rand]] | [[Random Number Generator]] | 0002230c - 00022314: C47 [[rand]] | [[Random Number Generator]] | ||
0002231c - 00022324: C48 [[srand]] (Sets RNG seed/state) | 0002231c - 00022324: C48 [[srand]] (Sets RNG seed/state) | ||
− | [[ | + | 0002232c - 00022338: [[printf]]? |
+ | 0002233c - 00022b94: [[sprintf]] | ||
00022b98 - 00022ba4: [[C27 strlen]] | 00022b98 - 00022ba4: [[C27 strlen]] | ||
00022ba8 - 00022bb4: [[C46 memchr]] | 00022ba8 - 00022bb4: [[C46 memchr]] | ||
[[00022bb8 - 00022c20]]: [[Memmove]] | [[00022bb8 - 00022c20]]: [[Memmove]] | ||
− | |||
− | |||
− | |||
− | |||
− | + | ==LIBGPU Basic Graphics Library== | |
− | LIBGPU | ||
[[00022c24 - 00022d0c]]: [[E00 LoadTpage]] | [[00022c24 - 00022d0c]]: [[E00 LoadTpage]] | ||
[[00022d10 - 00022d74]]: [[E01 LoadClut]] | [[00022d10 - 00022d74]]: [[E01 LoadClut]] | ||
Line 593: | Line 596: | ||
[[000259bc - 00025a00]]: [[Calculate GP0(E5h) Set Drawing Offset (X,Y)]] <-- Called by SYS set draw offset -> [[get ofs]] | [[000259bc - 00025a00]]: [[Calculate GP0(E5h) Set Drawing Offset (X,Y)]] <-- Called by SYS set draw offset -> [[get ofs]] | ||
[[00025a04 - 00025a84]]: [[Dereference RECT *tw]] --> [[get tw]] | [[00025a04 - 00025a84]]: [[Dereference RECT *tw]] --> [[get tw]] | ||
− | |||
− | |||
[[00025a88 - 00025b40]]: [[get dx]] | [[00025a88 - 00025b40]]: [[get dx]] | ||
[[00025b44 - 00025b58]]: [[_status]] | [[00025b44 - 00025b58]]: [[_status]] | ||
Line 621: | Line 622: | ||
[[00027308 - 00027424]]: [[get TIM addr]] | [[00027308 - 00027424]]: [[get TIM addr]] | ||
[[00027428 - 000275bc]]: [[get TMD addr]] | [[00027428 - 000275bc]]: [[get TMD addr]] | ||
+ | ==LIBCARD Memory Card Library== | ||
[[000275c0 - 0002873c]]: [[unpack packet]] | [[000275c0 - 0002873c]]: [[unpack packet]] | ||
[[00028740 - 000287b4]]: [[card info]] [[card load]] [[card auto]] [[card status]] [[card clear]] | [[00028740 - 000287b4]]: [[card info]] [[card load]] [[card auto]] [[card status]] [[card clear]] | ||
− | [[000287b8 - | + | [[000287b8 - 000287c4]]: [[card write]] |
− | [[0002882c - 00028860]]: | + | 000287c8 - 000287d4: [[new card]] |
− | [[00028864 - 00028890]]: | + | 000287d8 - 00028828: [[init_card_earlysafe]] |
+ | [[0002882c - 00028860]]: [[StartCARD_earlysafe]] | ||
+ | [[00028864 - 00028890]]: [[StopCARD_earlysafe]] | ||
[[00028894 - 00028918]]: [[init card]] [[start card]] [[stop card]] | [[00028894 - 00028918]]: [[init card]] [[start card]] [[stop card]] | ||
− | [[0002891c - 000289a0]]: | + | [[0002891c - 000289a0]]: [[early_card_irq_patch]] |
− | [[000289a4 - 000289d0]]: | + | [[000289a4 - 000289d0]]: |
− | [[000289d4 - 00028a3c]]: | + | [[000289d4 - 00028a3c]]: [[patch_card_specific_delay]] |
[[00028a40 - 00028a54]]: | [[00028a40 - 00028a54]]: | ||
− | [[00028a64 - 00028ac8]]: | + | [[00028a64 - 00028ac8]]: [[patch_uninstall_early_card_irq_handler]] |
00028acc - 00040970: | 00028acc - 00040970: | ||
− | 00040934 - | + | ==MURATA Main Program== |
− | [[00040974 - 000409a0]]: | + | [[00040934 - 00040970]]: [[Between Gamestates: turn off sound, quit SPU]] |
− | [[000409a4 - 000409c0]]: | + | [[00040974 - 000409a0]]: [[Between Gamestate quit sound, get stack pointer]] |
− | [[000409c4 - 000409fc]]: | + | [[000409a4 - 000409c0]]: [[Call Battle.bin entry point (deprecated)]] |
− | [[00040a00 - 00040b84]]: | + | [[000409c4 - 000409fc]]: [[Get BATTLE.BIN]] |
− | [[00040b88 - 00040bd4]]: | + | [[00040a00 - 00040b84]]: [[Initialise FFT Game state]] |
+ | [[00040b88 - 00040bd4]]: Main? decompiler read it as such. | ||
00040bd8 - 00041380: [[Build Image Data for Now Loading message]] | 00040bd8 - 00041380: [[Build Image Data for Now Loading message]] | ||
− | [[00041384 - 000413a4]]: | + | [[00041384 - 000413a4]]: [[Build now loading at 128, 00]] |
− | [[000413a8 - 00041468]]: | + | [[000413a8 - 00041468]]: [[Add Now Loading Message to OTAG List]] |
− | [[0004146c - 00041594]]: | + | [[0004146c - 00041594]]: [[Get EFC FNT (deprecated)]] |
− | [[00041598 - 00041770]]: | + | [[00041598 - 00041770]]: [[Initialise Drawing & Display Environments]] |
− | [[00041774 - 0004188c]]: | + | [[00041774 - 0004188c]]: [[Draw Squaresoft Logo]] |
− | [[00041890 - 00041b18]]: | + | [[00041890 - 00041b18]]: [[Build & Draw Squaresoft Logo]] |
− | [[00041b1c - 00041d7c]]: | + | [[00041b1c - 00041d7c]]: [[Draw Squaresoft Logo & Fade out]] |
− | [[00041d80 - 00041e94]]: | + | [[00041d80 - 00041e94]]: [[Draw SCEAP.DAT]] |
− | [[00041e98 - 00042280]]: | + | [[00041e98 - 00042280]]: [[Build & Draw SCEAP.DAT]] |
− | [[00042284 - 000424bc]]: | + | [[00042284 - 000424bc]]: [[Reset Frame Buffer]] |
− | [[000424c0 - 00042504]]: | + | [[000424c0 - 00042504]]: [[Reset CDROM, CPU RAM]] |
− | [[00042508 - 00042580]]: | + | [[00042508 - 00042580]]: [[Open Zodiac.BIN and move to Frame buffer]] |
− | [[00042584 - 0004268c]]: | + | [[00042584 - 0004268c]]: [[Initialise Game Environment]] |
[[00042690 - 000427a0]]: | [[00042690 - 000427a0]]: | ||
− | [[000427a4 - 0004287c]]: | + | [[000427a4 - 0004287c]]: [[Open ENTD with event ID]] |
− | [[00042880 - 0004292c]]: | + | [[00042880 - 0004292c]]: [[Get Current ENTD Data Pointer]] |
− | [[00042930 - 00042a0c]]: | + | [[00042930 - 00042a0c]]: |
00042a10 - 00042aac: [[Starting Inventory]] | 00042a10 - 00042aac: [[Starting Inventory]] | ||
[[00042ab0 - 00042b18]]: [[? 0x42ab0]] (Starting new game related) | [[00042ab0 - 00042b18]]: [[? 0x42ab0]] (Starting new game related) | ||
Line 666: | Line 671: | ||
[[0004315c - 000434d8]]: | [[0004315c - 000434d8]]: | ||
[[000434dc - 000435a8]]: | [[000434dc - 000435a8]]: | ||
− | [[000435ac - 000435b0]]: | + | [[000435ac - 000435b0]]: jr r31 |
− | [[000435b4 - 000435b8]]: | + | [[000435b4 - 000435b8]]: jr r31 |
− | [[000435bc - 000435c0]]: | + | [[000435bc - 000435c0]]: jr r31 |
[[000435c4 - 0004365c]]: | [[000435c4 - 0004365c]]: | ||
[[00043660 - 00043704]]: | [[00043660 - 00043704]]: | ||
− | [[00043708 - 0004370c]]: | + | [[00043708 - 0004370c]]: jr r31 |
[[00043710 - 000437d4]]: | [[00043710 - 000437d4]]: | ||
[[000437d8 - 000438cc]]: | [[000437d8 - 000438cc]]: | ||
Line 696: | Line 701: | ||
[[00044018 - 00044034]]: [[Play Sound Effect (Ability Learned)]] | [[00044018 - 00044034]]: [[Play Sound Effect (Ability Learned)]] | ||
[[00044038 - 0004405c]]: | [[00044038 - 0004405c]]: | ||
− | [[00044060 - 00044088]]: | + | [[00044060 - 00044088]]: [[__builtin_delete]] edited from source; does not accept arguments. not referenced. |
[[0004408c - 000440c8]]: | [[0004408c - 000440c8]]: | ||
[[000440cc - 000440f0]]: | [[000440cc - 000440f0]]: | ||
[[000440f4 - 00044124]]: | [[000440f4 - 00044124]]: | ||
[[00044128 - 00044150]]: | [[00044128 - 00044150]]: | ||
− | [[00044154 - 000442b8]]: | + | [[00044154 - 000442b8]]: [[Open Permanent sound files]] |
− | [[000442bc - 00044380]]: | + | [[000442bc - 00044380]]: [[SMD Malloc]]? |
− | [[00044384 - 000443ec]]: | + | [[00044384 - 000443ec]]: [[SMD Realloc]]? [[SMD Free]]? |
− | [[000443f0 - 00044410]]: | + | [[000443f0 - 00044410]]: |
− | + | [[00044414 - 000444d8]]: [[C51 Malloc]] <- allocate memory | |
+ | [[000444dc - 000445fc]]: [[? 0x444dc]] <-- realloc? | ||
+ | [[00044600 - 0004466c]]: [[C52 Free]] <- free memory | ||
[[00044670 - 00044690]]: | [[00044670 - 00044690]]: | ||
[[00044694 - 000446c4]]: [[Load Data From Disc (0x44694)]] | [[00044694 - 000446c4]]: [[Load Data From Disc (0x44694)]] | ||
− | [[000446c8 - 000446d4]]: | + | [[000446c8 - 000446d4]]: [[Check File Still Loading]] |
− | [[000446d8 - 000447b8]]: | + | [[000446d8 - 000447b8]]: [[Get SMD]] |
− | [[000447bc - 0004489c]]: | + | [[000447bc - 0004489c]]: [[Get TIM]] |
− | [[000448a0 - 00044950]]: | + | [[000448a0 - 00044950]]: [[Get WD]] |
− | [[00044954 - 0004498c]]: | + | [[00044954 - 0004498c]]: [[Get DAT as WD]] |
− | [[00044990 - 000449c8]]: | + | [[00044990 - 000449c8]]: [[Get BIN as TIM]] |
− | [[000449cc - 000449e8]]: | + | [[000449cc - 000449e8]]: [[C52 Free but with extra steps]] |
− | [[000449ec - 000449f4]]: | + | [[000449ec - 000449f4]]: jr r31 |
− | [[000449f8 - 000449fc]]: | + | [[000449f8 - 000449fc]]: jr r31 |
− | [[00044a00 - 00044a04]]: | + | [[00044a00 - 00044a04]]: jr r31 |
− | [[00044a08 - 00044a30]]: | + | [[00044a08 - 00044a30]]: Error exception? used but deprecated. |
[[00044a34 - 00044a5c]]: [[? 0x44a34]] | [[00044a34 - 00044a5c]]: [[? 0x44a34]] | ||
− | [[00044a60 - 00044a78]]: [[ | + | [[00044a60 - 00044a78]]: [[Get OTAG list]] |
− | [[00044a7c - 00044ac8]]: | + | [[00044a7c - 00044ac8]]: [[Set Otag List]] |
[[00044acc - 00044b64]]: | [[00044acc - 00044b64]]: | ||
[[00044b68 - 00044b9c]]: | [[00044b68 - 00044b9c]]: | ||
[[00044ba0 - 00044e7c]]: | [[00044ba0 - 00044e7c]]: | ||
− | [[00044e80 - 00045130]]: | + | [[00044e80 - 00045130]]: [[Build ZODIAC.BIN image]] |
− | [[00045134 - 00045150]]: | + | [[00045134 - 00045150]]: [[Call Build ZODIAC.BIN Image]] |
− | [[00045154 - 000451c8]]: | + | [[00045154 - 000451c8]]: [[Open Frame.BIN and move to frame buffer]] |
− | [[000451cc - 00045230]]: | + | [[000451cc - 00045230]]: [[Open WORLD.BIN & WLDCORE.BIN]] |
− | [[00045234 - 00045264]]: | + | [[00045234 - 00045264]]: [[Open WORLD.BIN]] |
− | [[00045268 - 000452e8]]: | + | [[00045268 - 000452e8]]: [[Open WORLD file]] |
[[000452ec - 000454c8]]: | [[000452ec - 000454c8]]: | ||
000454cc - 0004571c: | 000454cc - 0004571c: | ||
− | [[00045720 - 000458b4]]: | + | [[00045720 - 000458b4]]: [[Initialise memory card events]] |
− | [[000458b8 - 000458fc]]: | + | [[000458b8 - 000458fc]]: [[Get OPEN.BIN to RAM 1]] |
− | [[00045900 - 00045938]]: | + | [[00045900 - 00045938]]: [[Get OPEN.BIN to RAM 2]] |
− | + | ==Miscellaneous Shared Routines== | |
0004593c - 0004f1cc: | 0004593c - 0004f1cc: | ||
0004f1d0 - 0004f20c: [[Geomancy_tiles_type_to_ability_table]] | 0004f1d0 - 0004f20c: [[Geomancy_tiles_type_to_ability_table]] | ||
Line 785: | Line 792: | ||
0005cc64 - 0005cc94: [[Store X into Y ]] (r4 = Loading Pointer, r5 = Storing Pointer) | 0005cc64 - 0005cc94: [[Store X into Y ]] (r4 = Loading Pointer, r5 = Storing Pointer) | ||
0005cc98 - 0005ce70: [[Calculate Random Equipment]] | 0005cc98 - 0005ce70: [[Calculate Random Equipment]] | ||
− | 0005ce74 - 0005d0b8: [[Calculate Learned Abilities]] | + | 0005ce74 - 0005d0b8: [[Learn Job Abilities]] | [[Calculate Learned Abilities]] |
0005d0bc - 0005d3c0: [[Calculate Unit's R/S/M]] | 0005d0bc - 0005d3c0: [[Calculate Unit's R/S/M]] | ||
− | 0005d3c4 - 0005d410: [[Find Skillset's Job ID ( | + | 0005d3c4 - 0005d410: [[Find Skillset's Job ID (Possibly unused)]] |
0005d414 - 0005d46c: [[Status Initialization]] | 0005d414 - 0005d46c: [[Status Initialization]] | ||
0005d470 - 0005d4cc: [[Nullify CT/Initialize Death Counter]] | 0005d470 - 0005d4cc: [[Nullify CT/Initialize Death Counter]] |
Latest revision as of 08:18, 16 October 2024
Contents
- 1 SCUS_942.21 Data Tables
- 2 SCUS_942.21 RAM
- 3 SUZUKI Music Library
- 4 LIBSPU Sound Processing Unit Library
- 5 LIBGTE Geometry Transformation Engine Library
- 6 LIBETC Callbacks Management Library
- 7 LIBCD Basic CD-ROM & Streaming Library
- 8 LIBC Standard GCC C Library
- 9 LIBGPU Basic Graphics Library
- 10 LIBCARD Memory Card Library
- 11 MURATA Main Program
- 12 Miscellaneous Shared Routines
SCUS_942.21 Data Tables
SCUS 942.21 Data Tables
SCUS_942.21 RAM
00010a30 - 00010b3c: main -> start 00010b40 - 00010ba4: 00010ba8 - 00011bac: Battle.bin entry point (deprecated) 00011bb0 - 00011bbc: Put Stack pointer 00011bc0 - 00011bcc: Get Stack pointer 00011bd0 - 00011bf0: Load Data From Disc (0x11bd0) 00011bf4 - 00011dd4: Load Data From Disc (0x11bf4) 00011dd8 - 00011e14: Reset and Pause CDROM 00011e18 - 00011e34: Reset CD Subsystems 00011e38 - 0001201c: Open File to RAM Centre 00012020 - 000120f0: Draw Now Loading Message
SUZUKI Music Library
000120f4 - 00012168: 0001216c - 000121c8: 000121cc - 000121d0: jr r31 000121d4 - 000121d8: jr r31 000121dc - 00012280: 00012284 - 00012334: 00012338 - 0001237c: 00012380 - 000123c8: 000123cc - 00012440: 00012444 - 000124a8: 000124ac - 000124b0: jr r31 000124b4 - 000124b8: jr r31 000124bc - 000124c0: jr r31 000124c4 - 000124c8: jr r31 000124cc - 00012514: 00012518 - 0001255c: Play Sound Effect (Inner Routine) | Cursor Sound Effects? 00012560 - 000125a4: 000125a8 - 00012608: Play Sound Effect (Inner Routine For Ability Learned) 0001260c - 00012660: 00012664 - 000126e4: 000126e8 - 00012744: 00012748 - 000127b0: 000127b4 - 0001285c: 00012860 - 00012910: 00012914 - 0001298c: 00012990 - 00012a1c: 00012a20 - 00012aac: 00012ab0 - 00012b68: 00012b6c - 00012c54: 00012c58 - 00012cb0: 00012cb4 - 00012d3c: 00012d40 - 00012e78: 00012e7c - 00012e84: 00012e88 - 00012f04: 00012f08 - 00013010: 00013014 - 00013090: 00013094 - 00013110: 00013114 - 000131ec: 000131f0 - 000131f4: 000131f8 - 0001325c: 00013260 - 000132cc: 000132d0 - 00013324: 00013328 - 0001339c: 000133a0 - 000133d0: 000133d4 - 0001347c: 00013480 - 00013538: 0001353c - 00013540: 00013544 - 000135a4: 000135a8 - 000135f8: 000135fc - 00013630: 00013634 - 00013638: 0001363c - 000136bc: 000136c0 - 00013784: 00013788 - 000137d4: 000137d8 - 000138a8: 000138ac - 00013b1c: 00013b20 - 00013f70: Play Sound Effect (Worker Routine) | Cursor Sound Effects? 00013f74 - 00013fbc: 00013fc0 - 00014020: 00014024 - 00014074: 00014078 - 00014144: 00014148 - 0001417c: 00014180 - 00014200: 00014204 - 00014208: jr r31 0001420c - 00014238: 0001423c - 00014274: Set Global Music Variables 00014278 - 00014354: Find space for SMD to MUS 00014358 - 000143a8: 000143ac - 00014428: 0001442c - 000144cc: 000144d0 - 00014540: 00014544 - 00014548: jr r31 0001454c - 00014568: SpuMalloc with extra steps 0001456c - 0001458c: SpuFree with extra steps 00014590 - 00014814: 00014818 - 000148b0: 000148b4 - 000149d8: 000149dc - 00014f14: 00014f18 - 00014f54: 00014f58 - 00014ff4: 00014ff8 - 00015094: 00015098 - 00015134: 00015138 - 00015320: 00015324 - 00015860: 00015864 - 00015868:
SMD Instructions
0001586c - 00015870: SMD No Instruction 00015874 - 00015898: Rest 0001589c - 000158b4: Fermata 000158b8 - 000158bc: SMD No Instruction 2 000158c0 - 000158e4: 000158e8 - 000158ec: SMD No Instruction 3 000158f0 - 000158f4: SMD No Instruction 4 000158f8 - 000159d8: Tacet 000159dc - 000159ec: Loop 000159f0 - 00015a0c: Octave 00015a10 - 00015a24: Raise Octave 00015a28 - 00015a3c: Lower Octave 00015a40 - 00015a84: Time Signature 00015a88 - 00015a98: 00015a9c - 00015ab4: 00015ab8 - 00015afc: Repeat 00015b00 - 00015b68: Coda 00015b6c - 00015bb4: To Coda 00015bb8 - 00015bf8: 00015bfc - 00015c34: 00015c38 - 00015cac: 00015cb0 - 00015cd4: Tempo 00015cd8 - 00015d00: 00015d04 - 00015d40: 00015d44 - 00015d80: 00015d84 - 00015dcc: 00015dd0 - 00015de0: 00015de4 - 00015e2c: 00015e30 - 00015e64: Instrument 00015e68 - 00015e94: 00015e98 - 00015e9c: SMD No Instruction 5 00015ea0 - 00015ea4: SMD No Instruction 6 00015ea8 - 00015ebc: 00015ec0 - 00015ed4: 00015ed8 - 00015f14: 00015f18 - 00015f40: 00015f44 - 00015fb0: 00015fb4 - 00016030: 00016034 - 0001605c: 00016060 - 00016088: 0001608c - 000160e0: 000160e4 - 0001610c: Cue 00016110 - 00016138: 0001613c - 00016170: Naturale 00016174 - 000161a4: 000161a8 - 000161c0: Attack Time 000161c4 - 000161dc: 000161e0 - 000161f8: Sustain 000161fc - 00016218: 0001621c - 00016234: Sustain 2 00016238 - 0001625c: 00016260 - 00016278: 0001627c - 00016294: 00016298 - 000162b0: 000162b4 - 000162d4: 000162d8 - 00016300: 00016304 - 0001632c: 00016330 - 00016360: 00016364 - 000163b8: 000163bc - 000163d0: 000163d4 - 000163e8: 000163ec - 0001641c: 00016420 - 000164d0: Pitch Shift 000164d4 - 000165a8: 000165ac - 000165e0: 000165e4 - 000165f8: 000165fc - 00016610: 00016614 - 0001663c: Dynamic 00016640 - 0001667c: 00016680 - 000166c4: 000166c8 - 00016768: 0001676c - 00016830: 00016834 - 00016868: 0001686c - 00016880: 00016884 - 00016898: 0001689c - 000168b8: Balance 000168bc - 000168e8: 000168ec - 00016938: 0001693c - 00016970: 00016974 - 00016a10: 00016a14 - 00016ad4: 00016ad8 - 00016aec: 00016af0 - 00016b04: 00016b08 - 00016b7c: 00016b80 - 00016bf4: 00016bf8 - 00016c6c: 00016c70 - 00016cb4: 00016cb8 - 00016d60: 00016d64 - 00016dbc: 00016dc0 - 00016de8: 00016dec - 00016e10: 00016e14 - 00016e44: 00016e48 - 00016ea0: 00016ea4 - 00016fb0:
00016fb4 - 00017094: Set Instrument 00017098 - 000170d4: 000170d8 - 00017114: 00017118 - 00017420: 00017424 - 00017498: 0001749c - 00017630: 00017634 - 00017644: 00017648 - 0001768c: 00017690 - 000176e0: 000176e4 - 00017740: 00017744 - 000177bc: 000177c0 - 00017808: 0001780c - 00017874: 00017878 - 000178e0: 000178e4 - 000178f0: 000178f4 - 0001791c: 00017920 - 00017b48: 00017b4c - 00017bf4: Set All Voices Release Shift to 6 00017bf8 - 00017c38: 00017c3c - 00017c88: 00017c8c - 00017d48: 00017d4c - 00017da0: 00017da4 - 00017e34: 00017e38 - 00017e78: 00017e7c - 00017eb4: Get Sound Effect Data For ability effects? 00017eb8 - 00017f40: 00017f44 - 00017f68: 00017f6c - 00018054: 00018058 - 0001808c: 00018090 - 0001813c: 00018140 - 0001823c: 00018240 - 000182fc: 00018300 - 000183bc: 000183c0 - 000183fc: 00018400 - 00018488: 0001848c - 000184dc: 000184e0 - 000184ec: 000184f0 - 0001850c: 00018510 - 00018514: 00018518 - 00018650: 00018654 - 00018658: 0001865c - 000186b8: 000186bc - 000186c0: 000186c4 - 000186e0: 000186e4 - 000187d8: 000187dc - 00018854: 00018858 - 00018ae8: 00018aec - 00018cb4: 00018cb8 - 00018d84: 00018d88 - 00018e40: 00018e44 - 000190d0: 000190d4 - 00019158: 0001915c - 000191c0: 000191c4 - 00019208: 0001920c - 000192ac: 000192b0 - 000192e8: 000192ec - 00019348: 0001934c - 00019374: 00019378 - 000193a0: 000193a4 - 00019400:
LIBSPU Sound Processing Unit Library
00019404 - 00019424: _spuDataCallback 00019428 - 00019444: SsUtReverbOn 00019448 - 000194c0: SpuQuit 000194c4 - 00019514: SpuInitMalloc 00019518 - 000197dc: SpuMalloc 000197e0 - 00019adc: _spu_gcSPU 00019ae0 - 00019b58: SpuFree 00019b5c - 00019b7c: SpuSetNoiseVoice 00019b80 - 00019d84: _SpuSetAnyVoice 00019d88 - 00019dd4: SpuSetNoiseClock 00019dd8 - 00019e34: 00019e38 - 00019f04: SpuSetReverb 00019f08 - 00019f84: 00019f88 - 0001a010: 0001a014 - 0001a520: SpuSetReverbModeParam 0001a524 - 0001a9f0: _spu_setReverbAttr 0001a9f4 - 0001aa40: SpuGetReverbModeParam 0001aa44 - 0001aab8: SpuSetReverbDepth 0001aabc - 0001aadc: SpuSetReverbVoice 0001aae0 - 0001ac78: SpuClearReverbWorkArea 0001ac7c - 0001acec: SpuReadDecodedData 0001acf0 - 0001aef0: Set Voices to Release 0001aef4 - 0001af60: 0001af64 - 0001afc0: 0001afc4 - 0001b014: 0001b018 - 0001b048: SpuSetTransferMode 0001b04c - 0001b06c: SpuSetTransferCallback 0001b070 - 0001b090: SpuSetPitchLFOVoice 0001b094 - 0001b424: 0001b428 - 0001b4ac: 0001b4b0 - 0001b624: 0001b628 - 0001b6a0: 0001b6a4 - 0001b71c: 0001b720 - 0001b798: 0001b79c - 0001b824: 0001b828 - 0001b8ac: Set Voice Release Shift 0001b8b0 - 0001b934: 0001b938 - 0001b9d0: 0001b9d4 - 0001bab4: 0001bab8 - 0001bb58:
LIBGTE Geometry Transformation Engine Library
0001bb5c - 0001bb94: rsin 0001bb98 - 0001bc24: sin_1 0001bc28 - 0001bcc4: rcos 0001bcc8 - 0001be18: csqrt_1 0001be1c - 0001beb4: csqrt 0001beb8 - 0001bf34: InitGeom 0001bf38 - 0001bfb8: Frame Timing Related? (0x1bf38) SquareRoot0 0001bfb4 - 0001bfb8: 0001bfc8 - 0001c048: InvSquareRoot 0001c04c - 0001c050: Return -1 0001c054 - 0001c090: VectorNormalS & VectorNormal 8001c068 0001c094 - 0001c0c0: VectorNormalSS 0001c0c4 - 0001c17c: 0001c180 - 0001c260: MatrixNormal 0001c268 - 0001c2e4: Get Square root of r4 dealing with 4096 SquareRoot12 0001c2e8 - 0001c2f0: 0001c2f4 - 0001c2f8: 0001c308 - 0001c464: CompMatrix 0001c468 - 0001c570: MulMatrix0 0001c574 - 0001c654: MulRotMatrix0 0001c658 - 0001c73c: MulRotMatrix 0001c740 - 0001c84c: SetMulMatrix 0001c850 - 0001c9ac: ApplyMatrixLV 0001c9b0 - 0001c9dc: ApplyRotMatrix 0001c9e0 - 0001cb00: ScaleMatrixL 0001cb04 - 0001cb3c: ? 0x1cb04 PushMatrixL 0001cb40 - 0001cba0: 0001cba4 - 0001cbd8: ? 0x1cba4 PopMatrix 0001cbdc - 0001cc40: 0001cc44 - 0001cc88: ReadRotMatrix 0001cc8c - 0001ccd0: ReadLightMatrix 0001ccd4 - 0001cd18: ReadColorMatrix 0001cd28 - 0001ce30: MulMatrix 0001ce38 - 0001cf40: MulMatrix2 0001cf48 - 0001cf68: 0001cf78 - 0001d098: ScaleMatrix 0001d0a8 - 0001d0d4: Store Rotation matrix elements to GTE SetRotMatrix 0001d0d8 - 0001d104: Store Light Source Matrix Elements to GTE SetLightMatrix 0001d108 - 0001d134: Store Light Color matrix source RGB's to GTE SetColorMatrix 0001d138 - 0001d154: Store Translation Vectors to GTE SetTransMatrix 0001d158 - 0001d160: Get Projection Plane distance from GTE ReadGeomScreen 0001d164 - 0001d184: Store Background RGB to GTE SetBackColor 0001d188 - 0001d1a4: Store far color RGB to GTE SetFarColor 0001d1a8 - 0001d1bc: Store Screen offsets to GTE 0001d1c0 - 0001d1d0: Store Projection plane distance in GTE 0001d1d4 - 0001d1fc: Multiply vector and store results LightColor 0001d200 - 0001d224: Depth Cue Color Light DpqColorLight 0001d228 - 0001d260: Depth Cue Triple DpqColor3 0001d264 - 0001d284: interpolate 0001d288 - 0001d2ac: square vector Square12 0001d2b0 - 0001d2d4: square matrix/vector (duplicate routine? Square0 0001d2d8 - 0001d2f4: SMP 11 AverageSZ3 0001d2f8 - 0001d318: SMP 12 AverageSZ4 0001d31c - 0001d370: calculate outer product of 2 vectors OuterProduct12 0001d374 - 0001d3c8: calculate outer product of 2 vectors 2 OuterProduct0 0001d3cc - 0001d3e0: Get leading 0 or 1 count Lzc 0001d3e4 - 0001d414: RotTransSV 0001d418 - 0001d44c: SquareSS12 0001d450 - 0001d484: SquareSS0 0001d488 - 0001d4b4: SquareSL12 0001d4b8 - 0001d4e4: SquareSL0 0001d4e8 - 0001d510: RotTransPers 0001d514 - 0001d568: RotTransPers3 0001d578 - 0001d59c: 0x1d578 RotTrans 0001d56c - 0001d59c: ? 0001d5a0 - 0001d5c8: NormalClip 0001d5cc - 0001d64c: RotTransPers4 0001d650 - 0001d8e0: RotMatrix 0001d8e4 - 0001da64: ratan2 0001da68 - 0001dacc: _patch_gte
LIBETC Callbacks Management Library
0001dad0 - 0001db54: PadInit? 0001db58 - 0001db84: Get Inverted Button Input | Get Buttons pressed Layer? | PadRead 0001db88 - 0001dba4: PadStop 0001dba8 - 0001dcec: VSync call VSYNC 0001dcf0 - 0001dd88: Wait for Vertical Sync v_wait 0001dd8c - 0001ddb8: ResetCallback 0001ddbc - 0001dde8: InterruptCallback 0001ddec - 0001de18: DMA Callback 0001de1c - 0001de4c: Vsync Callback 0001de50 - 0001de7c: Vsync Callbacks 0001de80 - 0001deac: Stop Callback 0001deb0 - 0001dedc: Restart Callback 0001dee0 - 0001deec: Check Callback 0001def0 - 0001df04: get intr mask 0001df08 - 0001df20: set intr mask 0001df24 - 0001dffc: start intr 0001e000 - 0001e1e4: trap intr 0001e1e8 - 0001e338: set intr 0001e33c - 0001e3e4: stop intr 0001e3e8 - 0001e46c: restart intr 0001e470 - 0001e498: memclr? 0001e49c - 0001e4f0: start intr vsync 0001e4f4 - 0001e568: trap intr vsync 0001e56c - 0001e594: set intr vsync 0001e598 - 0001e5c0: another memclr? 0001e5c4 - 0001e610: start intr DMA 0001e614 - 0001e794: trap intr DMA 0001e798 - 0001e83c: set intr DMA 0001e840 - 0001e868: another memclr? 0001e86c - 0001e880: set video mode? 0001e884 - 0001e890: get video mode? 0001e894 - 0001e8c0: StSetRing
LIBCD Basic CD-ROM & Streaming Library
0001e8c4 - 0001e950: CdInit 0001e954 - 0001e978: def_cbsync 0001e97c - 0001e9a0: def_cbready 0001e9a4 - 0001e9c8: def_cbread 0001e9cc - 0001e9d8: CdStatus 0001e9dc - 0001e9e8: CdMode 0001e9ec - 0001e9f8: CdLastCom 0001e9fc - 0001ea08: CdLastPos 0001ea0c - 0001ea74: CdReset 0001ea78 - 0001ea94: CdFlush 0001ea98 - 0001eaac: CdSetDebug 0001eab0 - 0001eae0: CdComstr 0001eae4 - 0001eb14: CdIntstr 0001eb18 - 0001eb34: CdSync 0001eb38 - 0001eb54: CdReady 0001eb58 - 0001eb6c: CdSyncCallback 0001eb70 - 0001eb84: CdReadyCallback 0001eb88 - 0001ecbc: CdControl 0001ecc0 - 0001ede8: CdControlf 0001edec - 0001ef2c: CdControlb 0001ef30 - 0001ef50: S 022 CDGetSector2 <- CdMix 0001ef54 - 0001ef74: Load file into RAM 1 <- S 021 CDGetSector 0001ef78 - 0001ef98: CdDataCallback 0001ef9c - 0001efb8: CDDataSync 0001efbc - 0001f0bc: S 002 CDIntToPos 0001f0c0 - 0001f13c: SYS CDPosToInt 0001f140 - 0001f6b4: getintr 0001f6b8 - 0001f934: CD Sync 0001f938 - 0001fc00: CD Ready 0001fc04 - 00020048: S 016 CdControl 0002004c - 000200d0: S 022 CDGetSector2 Inner CD vol 000200d4 - 000201b0: CD Flush 000201b4 - 000202a4: CD initvol 000202a8 - 000202f4: CD initintr 000202f8 - 000204e0: CD init 000204e4 - 0002064c: CD datasync 00020650 - 0002074c: Load file into RAM <- S 021 CDGetSector inner? 00020750 - 0002075c: CD set test parmnum 00020760 - 0002083c: callback 00020840 - 00020a60: Cb read 00020a64 - 00020c38: Cd read retry 00020c3c - 00020d40: CdRead 00020d44 - 00020e0c: CdReadSync 00020e10 - 00020e24: CdReadCallback 00020e28 - 00020eb8: CdRead2 00020ebc - 00020ed8: StCdInterrupt2 00020edc - 00020f38: StClearRing 00020f3c - 00020f90: 00020f94 - 00021020: data ready callback 00021024 - 00021080: StGetBacklog 00021084 - 00021108: StSetStream 0002110c - 000211c4: StFreeRing 000211c8 - 00021204: init ring status 00021208 - 000212c8: StGetNext 000212cc - 000212e8: StSetMask? 000212ec - 00021c58: StCdInterrupt 00021c5c - 00021c8c: mem2mem 00021c90 - 00021e48: dma execute 00021e4c - 00021f10: StRingStatus 00021f14 - 00021f1c: InitHeap 00021f24 - 00021f2c: FlushCache 00021f34 - 00021f3c: _bu_init 00021f44 - 00021f4c: _96_remove 00021f54 - 00021f5c: SetMem 00021f64 - 00021f6c: DeliverEvent < NOT related to Game events!!!! [BIOS_events] 00021f74 - 00021f7c: OpenEvent 00021f84 - 00021f8c: CloseEvent 00021f94 - 00021f9c: WaitEvent 00021fa4 - 00021fac: TestEvent 00021fb4 - 00021fbc: EnableEvent 00021fc4 - 00021fcc: DisableEvent 00021fd4 - 00021fdc: stopPAD 00021fe4 - 00021fec: PAD_init 00021ff4 - 00021ffc: PAD_dr (Gets controller button state) 00022004 - 0002200c: ReturnFromException 00022014 - 0002201c: ResetEntryInt 00022024 - 0002202c: HookEntryInt 00022034 - 00022040: Enter Critical Section 00022044 - 00022050: Exit Critical Section 00022054 - 000221b0: open lseek read write close format firstfile nextfile delete get error 000220f4 - 000220fc: Change Clear Pad 00022104 - 0002210c: Change Clear RCnt 00022114 - 000221b0: SetRCnt 000221b4 - 000221e8: GetRCnt 000221ec - 0002221c: StartRCnt 00022220 - 00022250: StopRCnt 00022254 - 00022288: ResetRCnt
LIBC Standard GCC C Library
0002228c - 00022294: Write String to Terminal puts <not as helpful a title. 0002229c - 000222a8 setjmp 000222ac - 000222b8 strcat 000222bc - 000222c8 strcmp 000222cc - 000222d8 strcpy 0002228c - 00022b94 <- redundant. encompasses many calls. 000222dc - 000222e4: bcopy (Copies data from one section of memory to another; like memmove) 000222ec - 000222f8: bzero 000222fc - 00022304: C43 memset 0002230c - 00022314: C47 rand | Random Number Generator 0002231c - 00022324: C48 srand (Sets RNG seed/state) 0002232c - 00022338: printf? 0002233c - 00022b94: sprintf 00022b98 - 00022ba4: C27 strlen 00022ba8 - 00022bb4: C46 memchr 00022bb8 - 00022c20: Memmove
LIBGPU Basic Graphics Library
00022c24 - 00022d0c: E00 LoadTpage 00022d10 - 00022d74: E01 LoadClut 00022d78 - 00022ddc: E02 LoadClut2 00022de0 - 00022eac: E03 SetDefDrawEnv 00022eb0 - 00022ee8: E04 SetDefDispEnv 00022eec - 00022f28: FONT SetDumpFnt 00022f2c - 00022fcc: FONT FntLoad 00022fd0 - 00023284: FONT FntOpen 00023288 - 000235a8: FONT FntFlush 000235ac - 00023988: FONT FntPrint 0002398c - 00023a50: P00 GetTpage 00023a54 - 00023a68: P01 GetClut 00023a6c - 00023b38: P02 DumpTpage 00023b3c - 00023b78: P03 DumpClut 00023b7c - 00023b94: P04 NextPrim 00023b98 - 00023bb0: P05 IsEndPrim 00023bb4 - 00023bec: P06 AddPrim 00023bf0 - 00023c28: P07 AddPrims 00023c2c - 00023c4c: P08 CatPrim 00023c50 - 00023c64: P09 TermPrim 00023c68 - 00023c8c: P10 SetSemiTrans 00023c90 - 00023cb4: P11 SetShadeTex 00023cb8 - 00023cc8: P12 SetPolyF3 00023ccc - 00023cdc: P13 SetPolyFT3 00023ce0 - 00023cf0: P14 SetPolyG3 00023cf4 - 00023d04: P15 SetPolyGT3 00023d08 - 00023d18: P16 SetPolyF4 00023d1c - 00023d2c: P17 SetPolyFT4 00023d30 - 00023d40: P18 SetPolyG4 00023d44 - 00023d54: P19 SetPolyGT4 00023d58 - 00023d68: P20 SetSprt8 00023d6c - 00023d7c: P21 SetSprt16 00023d80 - 00023d90: P22 SetSprt 00023d94 - 00023da4: P23 SetTile1 00023da8 - 00023db8: P24 SetTile8 00023dbc - 00023dcc: P25 SetTile16 00023dd0 - 00023de0: P26 SetTile 00023de4 - 00023df4: P27 SetLineF2 00023df8 - 00023e08: P28 SetLineG2 00023e0c - 00023e28: P29 SetLineF3 00023e2c - 00023e48: P30 SetLineG3 00023e4c - 00023e68: P31 SetLineF4 00023e6c - 00023e88: P32 SetLineG4 00023e8c - 00023e9c: SetBlockFill 00023ea0 - 00023eb8: SetDrawMove 00023ebc - 00023f6c: P33 SetDrawTPage 00023f70 - 00023fd0: P34 SetDrawMove -> SetDrawLoad 00023fd4 - 00024008: P36 MargePrim (where is P35?) 0002400c - 00024188: P37 DumpDrawEnv 0002418c - 00024234: P37 DumpDispEnv 00024238 - 0002438c: SYS ResetGraph 00024390 - 000244a0: SYS SetGraphReverse 000244a4 - 0002450c: SYS SetGraphDebug 00024510 - 000245b8: SYS SetGraphQueue 000245bc - 000245c8: SYS GetGraphType 000245cc - 000245d8: SYS GetGraphDebug 000245dc - 00024634: SYS DrawSyncCallback 00024638 - 000246d0: SYS SetDispMask 000246d4 - 0002473c: SYS DrawSync 00024740 - 00024864: SYS Manip Image Inner -> SYS CheckRECT 00024868 - 000248f8: SYS ClearImage 000248fc - 0002495c: SYS LoadImage 00024960 - 000249c0: SYS StoreImage 000249c4 - 00024a84: SYS MoveImage 00024a88 - 00024b3c: SYS ClearOtag 00024b40 - 00024bd4: SYS ClearOtagR 00024bd8 - 00024c34: SYS DrawPrim 00024c38 - 00024ca8: SYS DrawOtag 00024cac - 00024d6c: SYS PutDrawEnv 00024d70 - 00024e48: SYS DrawOtagEnv 00024e4c - 00024e80: SYS GetDrawEnv 00024e84 - 00025330: SYS PutDispEnv 00025334 - 00025368: SYS GetDispEnv 0002536c - 0002539c: SYS GetODE 000253a0 - 000253d8: P38 SetTexWindow 000253dc - 0002545c: SYS SetDrawArea 00025460 - 000254a0: SYS SetDrawOffset 000254a4 - 000254c8: P40 SetDrawSTP 000254cc - 00025520: P41 SetDrawMode 00025524 - 000257c4: SetDrawEnv 000257c8 - 00025820: get mode 00025824 - 000258ec: Calculate GP0(E3h) Set Drawing Area top left } -> get cs 000258f0 - 000259b8: Calculate GP0(E4h) Set Drawing Area bottom right } Called by SYS set draw area -> get ce 000259bc - 00025a00: Calculate GP0(E5h) Set Drawing Offset (X,Y) <-- Called by SYS set draw offset -> get ofs 00025a04 - 00025a84: Dereference RECT *tw --> get tw 00025a88 - 00025b40: get dx 00025b44 - 00025b58: _status 00025b5c - 00025c40: _otc 00025c44 - 00025e58: _clr 00025e5c - 000260ac: _dws 000260b0 - 00026348: _drs 0002634c - 00026370: _ctl 00026374 - 00026384: get ctl 00026388 - 000263d4: _cwb 000263d8 - 00026420: _cwc 00026424 - 00026450: _param 00026454 - 00026474: _addque 00026478 - 00026758: _addque2 0002675c - 00026a54: _exeque 00026a58 - 00026b90: _reset 00026b94 - 00026cd8: _sync 00026cdc - 00026d0c: set alarm 00026d10 - 00026e78: get alarm 00026e7c - 00026f54: _version 00026f58 - 00026f80: memset, again? 00026f84 - 00026fb0: GPU cw, memcpy (again?), OpenTIM 00026fb4 - 00027018: ReadTIM 0002701c - 00027058: OpenTMD 0002705c - 00027304: ReadTMD 00027308 - 00027424: get TIM addr 00027428 - 000275bc: get TMD addr
LIBCARD Memory Card Library
000275c0 - 0002873c: unpack packet 00028740 - 000287b4: card info card load card auto card status card clear 000287b8 - 000287c4: card write 000287c8 - 000287d4: new card 000287d8 - 00028828: init_card_earlysafe 0002882c - 00028860: StartCARD_earlysafe 00028864 - 00028890: StopCARD_earlysafe 00028894 - 00028918: init card start card stop card 0002891c - 000289a0: early_card_irq_patch 000289a4 - 000289d0: 000289d4 - 00028a3c: patch_card_specific_delay 00028a40 - 00028a54: 00028a64 - 00028ac8: patch_uninstall_early_card_irq_handler 00028acc - 00040970:
MURATA Main Program
00040934 - 00040970: Between Gamestates: turn off sound, quit SPU 00040974 - 000409a0: Between Gamestate quit sound, get stack pointer 000409a4 - 000409c0: Call Battle.bin entry point (deprecated) 000409c4 - 000409fc: Get BATTLE.BIN 00040a00 - 00040b84: Initialise FFT Game state 00040b88 - 00040bd4: Main? decompiler read it as such. 00040bd8 - 00041380: Build Image Data for Now Loading message 00041384 - 000413a4: Build now loading at 128, 00 000413a8 - 00041468: Add Now Loading Message to OTAG List 0004146c - 00041594: Get EFC FNT (deprecated) 00041598 - 00041770: Initialise Drawing & Display Environments 00041774 - 0004188c: Draw Squaresoft Logo 00041890 - 00041b18: Build & Draw Squaresoft Logo 00041b1c - 00041d7c: Draw Squaresoft Logo & Fade out 00041d80 - 00041e94: Draw SCEAP.DAT 00041e98 - 00042280: Build & Draw SCEAP.DAT 00042284 - 000424bc: Reset Frame Buffer 000424c0 - 00042504: Reset CDROM, CPU RAM 00042508 - 00042580: Open Zodiac.BIN and move to Frame buffer 00042584 - 0004268c: Initialise Game Environment 00042690 - 000427a0: 000427a4 - 0004287c: Open ENTD with event ID 00042880 - 0004292c: Get Current ENTD Data Pointer 00042930 - 00042a0c: 00042a10 - 00042aac: Starting Inventory 00042ab0 - 00042b18: ? 0x42ab0 (Starting new game related) 00042b1c - 00042b28: Store Three Consecutive Halfwords 00042b2c - 00042b38: 00042b3c - 00042d14: 00042d18 - 00042dd0: 00042dd4 - 00043158: 0004315c - 000434d8: 000434dc - 000435a8: 000435ac - 000435b0: jr r31 000435b4 - 000435b8: jr r31 000435bc - 000435c0: jr r31 000435c4 - 0004365c: 00043660 - 00043704: 00043708 - 0004370c: jr r31 00043710 - 000437d4: 000437d8 - 000438cc: 000438d0 - 00043954: 00043958 - 000439bc: 000439c0 - 00043a34: 00043a38 - 00043a8c: 00043a90 - 00043b40: 00043b44 - 00043b50: 00043b54 - 00043b9c: 00043ba0 - 00043be4: 00043be8 - 00043c38: 00043c3c - 00043c84: 00043c88 - 00043cd0: 00043cd4 - 00043d1c: 00043d20 - 00043d7c: 00043d80 - 00043ddc: 00043de0 - 00043efc: 00043f00 - 00043f34: 00043f38 - 00043f4c: 00043f50 - 00043f84: 00043f88 - 00043ff4: 00043ff8 - 00044014: Play Sound Effect | Play Sound Effect? (value in r4 decides sound effect) 00044018 - 00044034: Play Sound Effect (Ability Learned) 00044038 - 0004405c: 00044060 - 00044088: __builtin_delete edited from source; does not accept arguments. not referenced. 0004408c - 000440c8: 000440cc - 000440f0: 000440f4 - 00044124: 00044128 - 00044150: 00044154 - 000442b8: Open Permanent sound files 000442bc - 00044380: SMD Malloc? 00044384 - 000443ec: SMD Realloc? SMD Free? 000443f0 - 00044410: 00044414 - 000444d8: C51 Malloc <- allocate memory 000444dc - 000445fc: ? 0x444dc <-- realloc? 00044600 - 0004466c: C52 Free <- free memory 00044670 - 00044690: 00044694 - 000446c4: Load Data From Disc (0x44694) 000446c8 - 000446d4: Check File Still Loading 000446d8 - 000447b8: Get SMD 000447bc - 0004489c: Get TIM 000448a0 - 00044950: Get WD 00044954 - 0004498c: Get DAT as WD 00044990 - 000449c8: Get BIN as TIM 000449cc - 000449e8: C52 Free but with extra steps 000449ec - 000449f4: jr r31 000449f8 - 000449fc: jr r31 00044a00 - 00044a04: jr r31 00044a08 - 00044a30: Error exception? used but deprecated. 00044a34 - 00044a5c: ? 0x44a34 00044a60 - 00044a78: Get OTAG list 00044a7c - 00044ac8: Set Otag List 00044acc - 00044b64: 00044b68 - 00044b9c: 00044ba0 - 00044e7c: 00044e80 - 00045130: Build ZODIAC.BIN image 00045134 - 00045150: Call Build ZODIAC.BIN Image 00045154 - 000451c8: Open Frame.BIN and move to frame buffer 000451cc - 00045230: Open WORLD.BIN & WLDCORE.BIN 00045234 - 00045264: Open WORLD.BIN 00045268 - 000452e8: Open WORLD file 000452ec - 000454c8: 000454cc - 0004571c: 00045720 - 000458b4: Initialise memory card events 000458b8 - 000458fc: Get OPEN.BIN to RAM 1 00045900 - 00045938: Get OPEN.BIN to RAM 2
0004593c - 0004f1cc: 0004f1d0 - 0004f20c: Geomancy_tiles_type_to_ability_table 0004f210 - 00059abc: 00059854 - 00059abc: Initialize Status Check Data 00059ac0 - 00059ac4: 00059ac8 - 00059aec: Clear Party | Initialize Party ID to FF 00059af0 - 00059b14: Get Party Data Pointer 00059b18 - 00059bac: Unit Initialization 00059bb0 - 00059d58: Save Unit to Party | Add Unit to Party/Store Unit's Party Data 00059d5c - 00059e14: Find Free Party Index | Find Free Party Slot 00059e18 - 00059ed0: Create Monster Egg 00059ed4 - 00059f90: Generate Party Unit In Empty Slot | Find Empty Party Slot and Generate Unit 00059f94 - 00059fdc: Find Unit's Party Data Location 00059fe0 - 00059ff8: Remove Unit from Party 00059ffc - 0005a3dc: Out of Battle Unit Generation 0005a3e0 - 0005a3fc: Generate Unit's Base Raw Stats Prep 0005a400 - 0005a444: Prep for Generating Base Raw Stats 0005a448 - 0005a51c: Generate Unit's Base Raw Stats 0005a520 - 0005a564: Transfer Job's Growths/Mults to Unit 0005a568 - 0005a634: Get Ability ID From Skillset | Load Ability From Skillset 0005a638 - 0005a728: Store Skillset's Abilities 0005a72c - 0005a880: Calculate Ability Pointers and Type 0005a884 - 0005a8a0: Get Item Data Pointer 0005a8a4 - 0005a8d0: Get Job Data Pointer 0005a8d4 - 0005a9b0: Initialize Unit's Job Data 0005a9b4 - 0005aafc: Unit Battle Initialization 0005ab00 - 0005ab44: Equipment/Move/Jump +X/Name Storing/Generation 0005ab48 - 0005ac18: Store Ramza's Name/Birthday/Zodiac 0005ac1c - 0005b034: ENTD Data Calculation 0005b038 - 0005b0cc: Prep for Initializing Unit's Job Data 0005b0d0 - 0005b2b0: Initialize Unit's Battle Data 0005b2b4 - 0005b4fc: Calculate Unit Jobs and Skillsets from ENTD | Calculate ENTD Unit Jobs 0005b500 - 0005b5d8: Get Random Unlocked Job | Sprite Set and Random Secondary Job Calculation 0005b5dc - 0005b79c: Transfer Job's Data to Unit's Data 0005b7a0 - 0005b828: Enable Unit's R/S/M Flags 0005b82c - 0005b87c: R/S/M Flag Setting 0005b880 - 0005ba6c: Calculate Actual Stats (Used for Stat Capping as well) 0005ba70 - 0005bdac: Calculate Unit's Abilities 0005bdb0 - 0005bdec: Monster Equipment Storing 0005bdf0 - 0005c278: Calculate/Store ENTD Unit Equipment 0005c27c - 0005c394: Equippable Item Setting (Support/Female-only) 0005c398 - 0005c5c4: Equipment Stat Setting 0005c5c8 - 0005c8e8: Equipment Attribute Setting 0005c8ec - 0005c980: Move/Jump +X Calculation (can be used to load data at start of battle) 0005c984 - 0005cbcc: Store/Generate Character Names 0005cbd0 - 0005cc60: Calculate Highest Party Level 0005cc64 - 0005cc94: Store X into Y (r4 = Loading Pointer, r5 = Storing Pointer) 0005cc98 - 0005ce70: Calculate Random Equipment 0005ce74 - 0005d0b8: Learn Job Abilities | Calculate Learned Abilities 0005d0bc - 0005d3c0: Calculate Unit's R/S/M 0005d3c4 - 0005d410: Find Skillset's Job ID (Possibly unused) 0005d414 - 0005d46c: Status Initialization 0005d470 - 0005d4cc: Nullify CT/Initialize Death Counter 0005d4d0 - 0005d5b8: Float/Current Statuses/Status Immunities/Status CT 0005d5bc - 0005d5dc: Status Setting/Checking + Equip/R/S/M Stats Prep 0005d5e0 - 0005d600: Status Setting/Checking + Equip/R/S/M Stats Prep 2 (Level Up) 0005d604 - 0005d624: Status Setting/Checking + Equip/R/S/M Stats Prep 3 0005d628 - 0005d87c: Status Setting/Checking + Equip/R/S/M Stats 0005d880 - 0005d8f8: Check if Unit Leveled UP 0005d8fc - 0005da0c: Level Unit to Specific Level 0005da10 - 0005db6c: Level Up Section 0005db70 - 0005dc10: Status CT Setting 0005dc14 - 0005dd44: Calculate Unlocked Jobs 0005dd48 - 0005ded4: Proposition JP Gain 0005ded8 - 0005def0: Store 3-Byte Data 0005def4 - 0005df34: Calculate Job Level 0005df38 - 0005dfa8: Initialize Unit's Job Levels 0005dfac - 0005dfd0: Initialize Some Unit Data 0005dfd4 - 0005e014: Minimum SP Capping/War Trophy Nulling/Status Initialization 0005e018 - 0005e04c: Get Ability's Range 0005e050 - 0005e084: Get Ability's AoE 0005e088 - 0005e0c8: Calculate Unit's Palette/Portrait (return Portrait) 0005e0cc - 0005e11c: Pass/Fail Roll | Check if Random is greater/equal to Chance 0005e120 - 0005e1ac: Get Unit's Portrait/Palette **changes sprite that's loaded in battle 0005e1b0 - 0005e1fc: Does Unit Have Status In Set | Status Checks (r5 = set to check) 0005e200 - 0005e228: Get Known Abilities 0005e22c - 0005e250: Copy Byte Data (20 Bytes) (Used Action data) | Transfer Target ID? Through Mount Data 0005e254 - 0005e284: Store X Byte into Y 0005e288 - 0005e474: Get Total Equipment Quantity (Equip Change/Formation Screen?) 0005e478 - 0005e4e4: Initialize Unit's X/Y+Facing/Battle Rewards 0005e4e8 - 0005e5d4: Find Action Highest Order Status Effect | Get Lowest Order Status' 0x08 Check Data? (Status Checks 2) 0005e5d8 - 0005e640: Calculate Zodiac Symbol 0005e644 - 0005e66c: Data Nullifying (requires r5 = Limit, and r4 = Starting location) 0005e670 - 0005e6c8: Increase Casualties/Injured Counters 0005e6cc - 0005e740: Inflicted Status Changes 0005e744 - 0005e774: Store Current Statuses 0005e778 - 0005e7a4: Transfer Last Ability Used CT 0005e7a8 - 0005e8e4: Status infliction/removal? 0005e8e8 - 0005e908: ? removed code?