early-access version 4163
This commit is contained in:
		| @@ -1,7 +1,7 @@ | ||||
| yuzu emulator early access | ||||
| ============= | ||||
|  | ||||
| This is the source code for early-access 4162. | ||||
| This is the source code for early-access 4163. | ||||
|  | ||||
| ## Legal Notice | ||||
|  | ||||
|   | ||||
| @@ -67,11 +67,15 @@ public: | ||||
|         oboe::AudioStreamBuilder builder; | ||||
|  | ||||
|         const auto result = ConfigureBuilder(builder, direction)->openStream(temp_stream); | ||||
|         ASSERT(result == oboe::Result::OK); | ||||
|  | ||||
|         if (result == oboe::Result::OK) { | ||||
|             return temp_stream->getChannelCount() >= 6 ? 6 : 2; | ||||
|         } | ||||
|  | ||||
|         LOG_ERROR(Audio_Sink, "Failed to open {} stream. Using default channel count 2", | ||||
|                   direction == oboe::Direction::Output ? "output" : "input"); | ||||
|         return 2; | ||||
|     } | ||||
|  | ||||
| protected: | ||||
|     oboe::DataCallbackResult onAudioReady(oboe::AudioStream*, void* audio_data, | ||||
|                                           s32 num_buffer_frames) override { | ||||
|   | ||||
| @@ -10,6 +10,8 @@ | ||||
| #include "common/polyfill_thread.h" | ||||
| #include "common/thread.h" | ||||
|  | ||||
| #include "core/hle/service/vi/vsync_manager.h" | ||||
|  | ||||
| namespace Core { | ||||
| class System; | ||||
| } | ||||
| @@ -26,7 +28,6 @@ namespace Service::VI { | ||||
|  | ||||
| class Container; | ||||
| class DisplayList; | ||||
| class VsyncManager; | ||||
|  | ||||
| class Conductor { | ||||
| public: | ||||
|   | ||||
| @@ -125,9 +125,11 @@ VkRect2D GetScissorState(const Maxwell& regs, size_t index, u32 up_scale = 1, u3 | ||||
|         return value < 0 ? std::min<s32>(converted_value - acumm, -1) | ||||
|                          : std::max<s32>(converted_value + acumm, 1); | ||||
|     }; | ||||
|     const bool lower_left = regs.window_origin.mode != Maxwell::WindowOrigin::Mode::UpperLeft; | ||||
|     const s32 y_adj = lower_left ? scale_up(regs.surface_clip.height - (src.max_y - src.min_y)) : 0; | ||||
|     if (src.enable) { | ||||
|         scissor.offset.x = scale_up(static_cast<s32>(src.min_x)); | ||||
|         scissor.offset.y = scale_up(static_cast<s32>(src.min_y)); | ||||
|         scissor.offset.y = scale_up(static_cast<s32>(src.min_y)) + y_adj; | ||||
|         scissor.extent.width = scale_up(src.max_x - src.min_x); | ||||
|         scissor.extent.height = scale_up(src.max_y - src.min_y); | ||||
|     } else { | ||||
|   | ||||
		Reference in New Issue
	
	Block a user