Skip to content

Commit

Permalink
Initial approximate PSP split
Browse files Browse the repository at this point in the history
  • Loading branch information
Xeeynamo committed Mar 3, 2025
1 parent 11d145c commit b0f40ec
Show file tree
Hide file tree
Showing 7 changed files with 334 additions and 312 deletions.
7 changes: 6 additions & 1 deletion config/splat.pspeu.ric.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,12 @@ segments:
subalign: 8
subsegments:
- [0x80, c, 80]
- [0x90, c, 90]
- [0x410, c, 410]
- [0x4B60, c, 4B60]
- [0x6DB0, c, 6DB0]
- [0x28400, data]
- [0x30100, .rodata, 80]
- [0x30100, .rodata, 410]
- [0x30158, .rodata, 6DB0]
- {type: bss, vram: 0x92D6600}
- [0x30400]
4 changes: 4 additions & 0 deletions config/symbols.pspeu.ric.txt
Original file line number Diff line number Diff line change
@@ -1,3 +1,6 @@
RicDebugEnter = 0x092A6290;
RicDebugExit = 0x092A62D8;
RicDebug = 0x092A6328;
func_80158B04 = 0x092A6610;
RicHandleStand = 0x092A6728;
RicHandleWalk = 0x092A6AF8;
Expand All @@ -17,6 +20,7 @@ RicHandleGenericSubwpnCrash = 0x092A96D8;
RicHandleThrowDaggers = 0x092A9738;
RicHandleDeadPrologue = 0x092A9840;
RicHandleSlide = 0x092A9EA0;
func_8015BB80 = 0x092AA248;
func_8015BCD0 = 0x092AA388;
RicHandleSlideKick = 0x092AA678;
RicHandleBladeDash = 0x092AA9F8;
Expand Down
51 changes: 51 additions & 0 deletions src/ric_psp/410.c
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
// SPDX-License-Identifier: AGPL-3.0-or-later
#include "../ric/ric.h"
#include <player.h>

INCLUDE_ASM("ric_psp/nonmatchings/410", func_80158B04);

INCLUDE_ASM("ric_psp/nonmatchings/410", RicHandleStand);

INCLUDE_ASM("ric_psp/nonmatchings/410", RicHandleWalk);

INCLUDE_ASM("ric_psp/nonmatchings/410", RicHandleRun);

INCLUDE_ASM("ric_psp/nonmatchings/410", RicHandleJump);

INCLUDE_ASM("ric_psp/nonmatchings/410", RicHandleFall);

INCLUDE_ASM("ric_psp/nonmatchings/410", RicHandleCrouch);

INCLUDE_ASM("ric_psp/nonmatchings/410", func_80159BC8);

INCLUDE_ASM("ric_psp/nonmatchings/410", func_80159C04);

INCLUDE_ASM("ric_psp/nonmatchings/410", RicHandleHit);

INCLUDE_ASM("ric_psp/nonmatchings/410", RicHandleBossGrab);

INCLUDE_ASM("ric_psp/nonmatchings/410", RicHandleDead);

INCLUDE_ASM("ric_psp/nonmatchings/410", RicHandleStandInAir);

INCLUDE_ASM("ric_psp/nonmatchings/410", RicHandleEnableFlameWhip);

INCLUDE_ASM("ric_psp/nonmatchings/410", RicHandleHydrostorm);

INCLUDE_ASM("ric_psp/nonmatchings/410", RicHandleGenericSubwpnCrash);

INCLUDE_ASM("ric_psp/nonmatchings/410", RicHandleThrowDaggers);

INCLUDE_ASM("ric_psp/nonmatchings/410", RicHandleDeadPrologue);

INCLUDE_ASM("ric_psp/nonmatchings/410", RicHandleSlide);

INCLUDE_ASM("ric_psp/nonmatchings/410", func_8015BB80);

INCLUDE_ASM("ric_psp/nonmatchings/410", func_8015BCD0);

INCLUDE_ASM("ric_psp/nonmatchings/410", RicHandleSlideKick);

INCLUDE_ASM("ric_psp/nonmatchings/410", RicHandleBladeDash);

INCLUDE_ASM("ric_psp/nonmatchings/410", RicHandleHighJump);
13 changes: 13 additions & 0 deletions src/ric_psp/4B60.c
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
// SPDX-License-Identifier: AGPL-3.0-or-later
#include "../ric/ric.h"
#include <player.h>

INCLUDE_ASM("ric_psp/nonmatchings/4B60", RicEntitySubwpnAxe);

INCLUDE_ASM("ric_psp/nonmatchings/4B60", RicEntityCrashAxe);

INCLUDE_ASM("ric_psp/nonmatchings/4B60", RicEntitySubwpnDagger);

INCLUDE_ASM("ric_psp/nonmatchings/4B60", func_pspeu_092ACE78);

INCLUDE_ASM("ric_psp/nonmatchings/4B60", DestroyEntity);
249 changes: 249 additions & 0 deletions src/ric_psp/6DB0.c
Original file line number Diff line number Diff line change
@@ -0,0 +1,249 @@
// SPDX-License-Identifier: AGPL-3.0-or-later
#include "../ric/ric.h"
#include <player.h>

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", GetTeleportToOtherCastle);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", func_80156DE4);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", RicInit);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", CheckStageCollision);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", func_pspeu_092ADEA0);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", func_pspeu_092AE150);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", RicMain);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", func_8015CC70);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", RicSetCrouch);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", RicSetStand);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", func_pspeu_092AF600);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", RicSetWalk);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", RicSetFall);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", RicSetJump);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", func_pspeu_092AF9D0);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", func_pspeu_092AFA90);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", func_pspeu_092AFB68);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", func_pspeu_092AFDA8);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", RicDoCrash);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", RicSetDeadPrologue);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", func_pspeu_092B05A8);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", func_pspeu_092B0640);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", func_pspeu_092B06F8);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", func_8015C4AC);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", func_pspeu_092B0A10);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", RicSetStep);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", RicSetAnimation);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", RicDecelerateX);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", RicCheckFacing);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", RicSetSpeedX);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", func_8015CAAC);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", RicSetInvincibilityFrames);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", DisableAfterImage);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", func_8015CC28);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", RicCheckInput);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", RicGetPlayerSensor);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", func_pspeu_092B1CD0);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", func_pspeu_092B2590);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", func_pspeu_092B2DD8);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", func_pspeu_092B3118);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", ReboundStoneBounce1);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", ReboundStoneBounce2);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", RicEntitySubwpnReboundStone);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", RicEntitySubwpnThrownVibhuti);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", func_pspeu_092B4688);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", RicEntitySubwpnAgunea);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", RicEntityAguneaHitEnemy);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", RicEntityVibhutiCrashCloud);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", RicEntityCrashVibhuti);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", RicEntityCrashReboundStoneParticles);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", func_8016D9C4);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", RicEntityCrashReboundStoneExplosion);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", RicEntityCrashReboundStone);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", RicEntityCrashBibleBeam);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", RicEntityCrashBible);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", func_8016F198);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", RicEntityCrashStopwatchDoneSparkle);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", RicEntityStopwatchCrashLightning);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", RicEntityCrashStopwatch);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", func_pspeu_092BA338);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", func_pspeu_092BA540);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", RicEntityAguneaLightning);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", RicEntityAguneaCircle);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", RicEntitySubwpnStopwatchCircle);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", RicEntitySubwpnStopwatch);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", RicEntitySubwpnBibleTrail);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", RicEntitySubwpnBible);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", func_pspeu_092BE4C8);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", func_pspeu_092BE570);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", func_pspeu_092BE628);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", func_pspeu_092BE6F0);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", RicSetSubweaponParams);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", func_pspeu_092BE888);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", func_pspeu_092BEA38);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", RicEntityHitByHoly);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", RicEntityHitByDark);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", RicEntityDummy);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", RicUpdatePlayerEntities);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", RicCreateEntFactoryFromEntity);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", RicEntityFactory);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", RicEntitySlideKick);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", func_80160D2C);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", RicEntityBladeDash);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", func_80160F0C);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", RicEntitySmokePuff);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", RicEntityHitByCutBlood);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", func_80161C2C);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", func_80161EF8);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", RicEntityApplyMariaPowerAnim);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", func_801623E0);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", func_80162604);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", RicEntityMariaPowers);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", RicEntityNotImplemented4);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", RicEntityMaria);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", func_pspeu_092C2E98);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", RicEntityPlayerBlinkWhite);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", func_801641A0);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", RicEntityShrinkingPowerUpRing);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", RicEntityHitByIce);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", RicEntityHitByLightning);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", func_pspeu_092C73B0);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", func_pspeu_092C77B8);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", RicEntityTeleport);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", RicEntityCrashCrossBeam);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", func_pspeu_092C8D48);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", RicEntityNotImplemented3);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", func_80167A70);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", RicEntityCrashHydroStorm);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", func_pspeu_092C9988);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", func_pspeu_092C9B88);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", RicEntitySubwpnHolyWater);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", RicEntitySubwpnHolyWaterFlame);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", RicEntityWhip);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", RicEntityArmBrandishWhip);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", func_80167964);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", RicEntityNotImplemented1);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", RicEntityNotImplemented2);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", RicEntitySubwpnCrashCross);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", RicEntityRevivalColumn);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", RicEntitySubwpnCross);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", func_80169C10);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", RicEntitySubwpnCrossTrail);

INCLUDE_ASM("ric_psp/nonmatchings/6DB0", RicEntitySubwpnCrashCrossParticles);
Loading

0 comments on commit b0f40ec

Please sign in to comment.