Difference between revisions of "SCUS 942.21 Routines"
Jump to navigation
Jump to search
(→SCUS_942.21 RAM: New title for routine at 0005d3c4 - 0005d410 thanks to the fucking question mark issue) |
|||
(161 intermediate revisions by 9 users not shown) | |||
Line 1: | Line 1: | ||
− | == SCUS_942.21 | + | == 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]]: | |
− | + | [[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]]: | |
− | + | [[00014278 - 00014354]]: | |
− | + | [[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 Custom 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]]: | ||
+ | [[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 | ||
+ | [[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]]: | ||
+ | [[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]]: | ||
+ | [[0001b8b0 - 0001b934]]: | ||
+ | [[0001b938 - 0001b9d0]]: | ||
+ | [[0001b9d4 - 0001bab4]]: | ||
+ | [[0001bab8 - 0001bb58]]: | ||
+ | LIBGTE (Geometry Transformation Engine) | ||
+ | [[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]] | ||
+ | [[0001dad0 - 0001db54]]: PadInit? | ||
+ | [[0001db58 - 0001db84]]: [[Get Inverted Button Input]] | [[Get Buttons pressed Layer?]] | [[PadRead]] | ||
+ | [[0001db88 - 0001dba4]]: [[PadStop]] | ||
+ | [[0001dba8 - 0001dcec]]: [[VSync call|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) | ||
+ | [[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!!!! [[https://problemkaputt.de/psxspx-bios-event-functions.htm 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]] | ||
+ | ... | ||
+ | [[00044414 - 000444d8]]: [[C51 Malloc]] <- allocate memory | ||
+ | [[000444dc - 000445fc]]: [[? 0x444dc]] <-- realloc? | ||
+ | [[00044600 - 0004466c]]: [[C52 Free]] <- free memory | ||
+ | ^these aren't actually from the library, but custom defined. maybe from another import? | ||
− | + | 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]] | ||
− | + | [[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: | ||
+ | 00040934 - start of meaningful code | ||
+ | [[00040934 - 00040970]]: | ||
+ | [[00040974 - 000409a0]]: | ||
+ | [[000409a4 - 000409c0]]: | ||
+ | [[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]]: | ||
+ | [[0004146c - 00041594]]: [[Get EFC FNT (deprecated)]] | ||
+ | [[00041598 - 00041770]]: | ||
+ | [[00041774 - 0004188c]]: | ||
+ | [[00041890 - 00041b18]]: | ||
+ | [[00041b1c - 00041d7c]]: | ||
+ | [[00041d80 - 00041e94]]: | ||
+ | [[00041e98 - 00042280]]: | ||
+ | [[00042284 - 000424bc]]: | ||
+ | [[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]]? note: this, like the RAM malloc that is used, is likely a custom defined function. | ||
+ | [[00044384 - 000443ec]]: [[SMD Realloc]]? [[SMD Free]]? | ||
+ | [[000443f0 - 00044410]]: | ||
+ | ... | ||
+ | [[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]]: | ||
+ | [[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]] | ||
+ | 00045938 - end of meaningful code | ||
+ | 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: [[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?]] |
Latest revision as of 03:28, 23 July 2024
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: 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: 00014278 - 00014354: 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 Custom 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: 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
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: 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: 0001b8b0 - 0001b934: 0001b938 - 0001b9d0: 0001b9d4 - 0001bab4: 0001bab8 - 0001bb58:
LIBGTE (Geometry Transformation Engine)
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
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)
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 ... 00044414 - 000444d8: C51 Malloc <- allocate memory 000444dc - 000445fc: ? 0x444dc <-- realloc? 00044600 - 0004466c: C52 Free <- free memory ^these aren't actually from the library, but custom defined. maybe from another import?
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
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: 00040934 - start of meaningful code 00040934 - 00040970: 00040974 - 000409a0: 000409a4 - 000409c0: 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: 0004146c - 00041594: Get EFC FNT (deprecated) 00041598 - 00041770: 00041774 - 0004188c: 00041890 - 00041b18: 00041b1c - 00041d7c: 00041d80 - 00041e94: 00041e98 - 00042280: 00042284 - 000424bc: 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? note: this, like the RAM malloc that is used, is likely a custom defined function. 00044384 - 000443ec: SMD Realloc? SMD Free? 000443f0 - 00044410:
...
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: 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 00045938 - end of meaningful code 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: 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?