mirror of
https://git.suyu.dev/suyu/suyu
synced 2024-10-31 04:17:52 +00:00
audio: Use WriteBuffer instead of BufferDescriptorB.
This commit is contained in:
parent
f16bb1dfcf
commit
d6e52581ac
2 changed files with 3 additions and 9 deletions
|
@ -99,8 +99,6 @@ private:
|
||||||
void GetReleasedAudioOutBuffer_1(Kernel::HLERequestContext& ctx) {
|
void GetReleasedAudioOutBuffer_1(Kernel::HLERequestContext& ctx) {
|
||||||
LOG_WARNING(Service_Audio, "(STUBBED) called");
|
LOG_WARNING(Service_Audio, "(STUBBED) called");
|
||||||
|
|
||||||
const auto& buffer = ctx.BufferDescriptorB()[0];
|
|
||||||
|
|
||||||
// TODO(st4rk): This is how libtransistor currently implements the
|
// TODO(st4rk): This is how libtransistor currently implements the
|
||||||
// GetReleasedAudioOutBuffer, it should return the key (a VAddr) to the app and this address
|
// GetReleasedAudioOutBuffer, it should return the key (a VAddr) to the app and this address
|
||||||
// is used to know which buffer should be filled with data and send again to the service
|
// is used to know which buffer should be filled with data and send again to the service
|
||||||
|
@ -112,7 +110,7 @@ private:
|
||||||
queue_keys.pop_back();
|
queue_keys.pop_back();
|
||||||
}
|
}
|
||||||
|
|
||||||
Memory::WriteBlock(buffer.Address(), &key, sizeof(u64));
|
ctx.WriteBuffer(&key, sizeof(u64));
|
||||||
|
|
||||||
IPC::ResponseBuilder rb{ctx, 3};
|
IPC::ResponseBuilder rb{ctx, 3};
|
||||||
rb.Push(RESULT_SUCCESS);
|
rb.Push(RESULT_SUCCESS);
|
||||||
|
@ -158,10 +156,8 @@ void AudOutU::ListAudioOuts(Kernel::HLERequestContext& ctx) {
|
||||||
LOG_WARNING(Service_Audio, "(STUBBED) called");
|
LOG_WARNING(Service_Audio, "(STUBBED) called");
|
||||||
IPC::RequestParser rp{ctx};
|
IPC::RequestParser rp{ctx};
|
||||||
|
|
||||||
auto& buffer = ctx.BufferDescriptorB()[0];
|
|
||||||
const std::string audio_interface = "AudioInterface";
|
const std::string audio_interface = "AudioInterface";
|
||||||
|
ctx.WriteBuffer(audio_interface.c_str(), audio_interface.size());
|
||||||
Memory::WriteBlock(buffer.Address(), &audio_interface[0], audio_interface.size());
|
|
||||||
|
|
||||||
IPC::ResponseBuilder rb = rp.MakeBuilder(3, 0, 0);
|
IPC::ResponseBuilder rb = rp.MakeBuilder(3, 0, 0);
|
||||||
|
|
||||||
|
|
|
@ -69,9 +69,7 @@ private:
|
||||||
response_data.state_entries[i].state = 5;
|
response_data.state_entries[i].state = 5;
|
||||||
}
|
}
|
||||||
|
|
||||||
auto& buffer = ctx.BufferDescriptorB()[0];
|
ctx.WriteBuffer(&response_data, response_data.total_size);
|
||||||
|
|
||||||
Memory::WriteBlock(buffer.Address(), &response_data, response_data.total_size);
|
|
||||||
|
|
||||||
IPC::ResponseBuilder rb{ctx, 2};
|
IPC::ResponseBuilder rb{ctx, 2};
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue