early-access version 3433

This commit is contained in:
pineappleEA 2023-03-02 23:00:14 +01:00
parent 013c54bb11
commit ca8aec7c45
4 changed files with 9 additions and 7 deletions

View file

@ -1,7 +1,7 @@
yuzu emulator early access yuzu emulator early access
============= =============
This is the source code for early-access 3432. This is the source code for early-access 3433.
## Legal Notice ## Legal Notice

View file

@ -308,7 +308,8 @@ static void ApplyReverbEffect(const ReverbInfo::ParameterVersion2& params, Rever
} }
Common::FixedPoint<50, 14> pre_delay_sample{ Common::FixedPoint<50, 14> pre_delay_sample{
state.pre_delay_line.Read() * Common::FixedPoint<50, 14>::from_base(params.late_gain)}; state.pre_delay_line.TapOut(state.pre_delay_time) *
Common::FixedPoint<50, 14>::from_base(params.late_gain)};
std::array<Common::FixedPoint<50, 14>, ReverbInfo::MaxDelayLines> mix_matrix{ std::array<Common::FixedPoint<50, 14>, ReverbInfo::MaxDelayLines> mix_matrix{
state.prev_feedback_output[2] + state.prev_feedback_output[1] + pre_delay_sample, state.prev_feedback_output[2] + state.prev_feedback_output[1] + pre_delay_sample,

View file

@ -104,7 +104,8 @@ public:
} }
void Write(const Common::FixedPoint<50, 14> sample) { void Write(const Common::FixedPoint<50, 14> sample) {
*(input++) = sample; *input = sample;
input++;
if (input >= buffer_end) { if (input >= buffer_end) {
input = buffer.data(); input = buffer.data();
} }

View file

@ -79,12 +79,10 @@ public:
return; return;
} }
sample_count = delay_time; sample_count = delay_time;
input = &buffer[(output - buffer.data() + sample_count) % (sample_count_max + 1)]; input = &buffer[0];
} }
Common::FixedPoint<50, 14> Tick(const Common::FixedPoint<50, 14> sample) { Common::FixedPoint<50, 14> Tick(const Common::FixedPoint<50, 14> sample) {
Write(sample);
auto out_sample{Read()}; auto out_sample{Read()};
output++; output++;
@ -92,6 +90,7 @@ public:
output = buffer.data(); output = buffer.data();
} }
Write(sample);
return out_sample; return out_sample;
} }
@ -100,7 +99,8 @@ public:
} }
void Write(const Common::FixedPoint<50, 14> sample) { void Write(const Common::FixedPoint<50, 14> sample) {
*(input++) = sample; *input = sample;
input++;
if (input >= buffer_end) { if (input >= buffer_end) {
input = buffer.data(); input = buffer.data();
} }