Merge pull request #1035 from ogniK5377/audio-dev-revision-info
GetAudioDeviceServiceWithRevisionInfo (Used by Bloodstained: Curse of the Moon)
This commit is contained in:
commit
4cafc24a4e
|
@ -190,7 +190,8 @@ AudRenU::AudRenU() : ServiceFramework("audren:u") {
|
||||||
{1, &AudRenU::GetAudioRendererWorkBufferSize, "GetAudioRendererWorkBufferSize"},
|
{1, &AudRenU::GetAudioRendererWorkBufferSize, "GetAudioRendererWorkBufferSize"},
|
||||||
{2, &AudRenU::GetAudioDevice, "GetAudioDevice"},
|
{2, &AudRenU::GetAudioDevice, "GetAudioDevice"},
|
||||||
{3, nullptr, "OpenAudioRendererAuto"},
|
{3, nullptr, "OpenAudioRendererAuto"},
|
||||||
{4, nullptr, "GetAudioDeviceServiceWithRevisionInfo"},
|
{4, &AudRenU::GetAudioDeviceServiceWithRevisionInfo,
|
||||||
|
"GetAudioDeviceServiceWithRevisionInfo"},
|
||||||
};
|
};
|
||||||
RegisterHandlers(functions);
|
RegisterHandlers(functions);
|
||||||
}
|
}
|
||||||
|
@ -274,6 +275,16 @@ void AudRenU::GetAudioDevice(Kernel::HLERequestContext& ctx) {
|
||||||
LOG_DEBUG(Service_Audio, "called");
|
LOG_DEBUG(Service_Audio, "called");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void AudRenU::GetAudioDeviceServiceWithRevisionInfo(Kernel::HLERequestContext& ctx) {
|
||||||
|
IPC::ResponseBuilder rb{ctx, 2, 0, 1};
|
||||||
|
|
||||||
|
rb.Push(RESULT_SUCCESS);
|
||||||
|
rb.PushIpcInterface<Audio::IAudioDevice>();
|
||||||
|
|
||||||
|
LOG_WARNING(Service_Audio, "(STUBBED) called"); // TODO(ogniK): Figure out what is different
|
||||||
|
// based on the current revision
|
||||||
|
}
|
||||||
|
|
||||||
bool AudRenU::IsFeatureSupported(AudioFeatures feature, u32_le revision) const {
|
bool AudRenU::IsFeatureSupported(AudioFeatures feature, u32_le revision) const {
|
||||||
u32_be version_num = (revision - Common::MakeMagic('R', 'E', 'V', '0')); // Byte swap
|
u32_be version_num = (revision - Common::MakeMagic('R', 'E', 'V', '0')); // Byte swap
|
||||||
switch (feature) {
|
switch (feature) {
|
||||||
|
|
|
@ -22,6 +22,7 @@ private:
|
||||||
void OpenAudioRenderer(Kernel::HLERequestContext& ctx);
|
void OpenAudioRenderer(Kernel::HLERequestContext& ctx);
|
||||||
void GetAudioRendererWorkBufferSize(Kernel::HLERequestContext& ctx);
|
void GetAudioRendererWorkBufferSize(Kernel::HLERequestContext& ctx);
|
||||||
void GetAudioDevice(Kernel::HLERequestContext& ctx);
|
void GetAudioDevice(Kernel::HLERequestContext& ctx);
|
||||||
|
void GetAudioDeviceServiceWithRevisionInfo(Kernel::HLERequestContext& ctx);
|
||||||
|
|
||||||
enum class AudioFeatures : u32 {
|
enum class AudioFeatures : u32 {
|
||||||
Splitter,
|
Splitter,
|
||||||
|
|
Reference in New Issue