mirror of
https://github.com/hedge-dev/UnleashedRecomp.git
synced 2026-04-26 20:31:41 +00:00
Add controller buttons as config option & handle loading screen.
This commit is contained in:
parent
c193179158
commit
2651bfa5a1
8 changed files with 54 additions and 3 deletions
|
|
@ -2614,7 +2614,7 @@ static void ProcSetViewport(const RenderCommand& cmd)
|
|||
|
||||
static void SetTexture(GuestDevice* device, uint32_t index, GuestTexture* texture)
|
||||
{
|
||||
if (texture != nullptr && texture->patchedTexture != nullptr)
|
||||
if (Config::ControllerButtons == EControllerButtons::PlayStation && texture != nullptr && texture->patchedTexture != nullptr)
|
||||
texture = texture->patchedTexture.get();
|
||||
|
||||
RenderCommand cmd;
|
||||
|
|
|
|||
|
|
@ -131,6 +131,22 @@ CONFIG_DEFINE_ENUM_LOCALE(ETimeOfDayTransition)
|
|||
}
|
||||
};
|
||||
|
||||
CONFIG_DEFINE_LOCALE(ControllerButtons)
|
||||
{
|
||||
{ ELanguage::English, { "Controller Buttons", "[PLACEHOLDER]" } }
|
||||
};
|
||||
|
||||
CONFIG_DEFINE_ENUM_LOCALE(EControllerButtons)
|
||||
{
|
||||
{
|
||||
ELanguage::English,
|
||||
{
|
||||
{ EControllerButtons::Xbox, { "XBOX", "[PLACEHOLDER]" } },
|
||||
{ EControllerButtons::PlayStation, { "PLAYSTATION", "[PLACEHOLDER]" } }
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
CONFIG_DEFINE_LOCALE(SkipIntroLogos)
|
||||
{
|
||||
{ ELanguage::English, { "Skip Intro Logos", "Skip the logos during the game's boot sequence.\n\n[TO BE REMOVED]" } }
|
||||
|
|
|
|||
|
|
@ -101,3 +101,20 @@ PPC_FUNC(sub_82BD06C8)
|
|||
{
|
||||
ctx.r3.u64 = 0;
|
||||
}
|
||||
|
||||
void LoadingScreenControllerMidAsmHook()
|
||||
{
|
||||
static constexpr size_t STR_ADDRESSES[] =
|
||||
{
|
||||
0x820301AC, // 360_sonic1
|
||||
0x820301B8, // 360_sonic2
|
||||
0x820301C4, // 360_sonic3
|
||||
0x820301D0, // 360_evil
|
||||
0x820301DC, // 360_robo
|
||||
0x820301E8, // 360_super
|
||||
};
|
||||
|
||||
const char* prefix = Config::ControllerButtons == EControllerButtons::PlayStation ? "ps3" : "360";
|
||||
for (auto address : STR_ADDRESSES)
|
||||
memcpy(g_memory.Translate(address), prefix, 3);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -790,6 +790,7 @@ static void DrawConfigOptions()
|
|||
DrawConfigOption(rowCount++, yOffset, &Config::InvertCameraX, true);
|
||||
DrawConfigOption(rowCount++, yOffset, &Config::InvertCameraY, true);
|
||||
DrawConfigOption(rowCount++, yOffset, &Config::AllowBackgroundInput, true);
|
||||
DrawConfigOption(rowCount++, yOffset, &Config::ControllerButtons, true);
|
||||
break;
|
||||
case 2: // AUDIO
|
||||
DrawConfigOption(rowCount++, yOffset, &Config::MusicVolume, true);
|
||||
|
|
|
|||
|
|
@ -24,6 +24,7 @@ public:
|
|||
CONFIG_DEFINE_LOCALISED("Input", bool, XButtonHoming, true);
|
||||
CONFIG_DEFINE_LOCALISED("Input", bool, AllowCancellingUnleash, false);
|
||||
CONFIG_DEFINE_LOCALISED("Input", bool, AllowBackgroundInput, false);
|
||||
CONFIG_DEFINE_ENUM_LOCALISED("Input", EControllerButtons, ControllerButtons, EControllerButtons::Xbox);
|
||||
|
||||
CONFIG_DEFINE_LOCALISED("Audio", float, MusicVolume, 1.0f);
|
||||
CONFIG_DEFINE_LOCALISED("Audio", float, EffectsVolume, 1.0f);
|
||||
|
|
|
|||
|
|
@ -67,6 +67,18 @@ CONFIG_DEFINE_ENUM_TEMPLATE(ETimeOfDayTransition)
|
|||
{ "PlayStation", ETimeOfDayTransition::PlayStation }
|
||||
};
|
||||
|
||||
enum class EControllerButtons : uint32_t
|
||||
{
|
||||
Xbox,
|
||||
PlayStation
|
||||
};
|
||||
|
||||
CONFIG_DEFINE_ENUM_TEMPLATE(EControllerButtons)
|
||||
{
|
||||
{ "Xbox", EControllerButtons::Xbox },
|
||||
{ "PlayStation", EControllerButtons::PlayStation }
|
||||
};
|
||||
|
||||
enum class EVoiceLanguage : uint32_t
|
||||
{
|
||||
English,
|
||||
|
|
|
|||
|
|
@ -553,4 +553,8 @@ jump_address = 0x825854FC
|
|||
name = "TitleMenuAddInstallOptionMidAsmHook"
|
||||
address = 0x8258547C
|
||||
registers = ["r3"]
|
||||
jump_address = 0x82585480
|
||||
jump_address = 0x82585480
|
||||
|
||||
[[midasm_hook]]
|
||||
name = "LoadingScreenControllerMidAsmHook"
|
||||
address = 0x824DC9D4
|
||||
|
|
|
|||
|
|
@ -1 +1 @@
|
|||
Subproject commit d45116bb0b5c5075da9b3c166fdf73af2415e880
|
||||
Subproject commit bcad34ee648f69c448b204cb38337e7ef2e0aa18
|
||||
Loading…
Add table
Reference in a new issue