bunnei
66e023fba2
Merge pull request #2167 from lioncash/namespace
...
common: Move Quaternion, Rectangle, Vec2, Vec3, and Vec4 into the Common namespace
2019-02-27 11:19:53 +07:00
bunnei
b27e6ad912
Merge pull request #2171 from lioncash/pragma
...
gl_shader_disk_cache: Remove #pragma once from cpp file
2019-02-27 11:19:17 +07:00
Lioncash
16ea93c11e
vk_memory_manager: Reorder constructor initializer list in terms of member declaration order
...
Reorders members in the order that they would actually be initialized
in. Silences a -Wreorder warning.
2019-02-27 11:08:19 +07:00
Lioncash
a6a783b3dc
gl_rasterizer: Reorder constructor initializer list in terms of member declaration order
...
Orders the members in the order they would actually be initialized in.
Silences a -Wreorder warning.
2019-02-27 11:08:19 +07:00
Lioncash
e7eff72e83
gl_shader_disk_cache: Remove #pragma once from cpp file
...
This is only necessary in headers. Silences a warning with clang.
2019-02-27 11:02:49 +07:00
Lioncash
46b3209abb
core/frontend/emu_window: Make ClipToTouchScreen a const member function
...
This member function doesn't modify instance state, so it can have the
const specifier applied to it.
2019-02-27 08:54:42 +07:00
Lioncash
0e1b5acc6a
audio_core/audio_renderer: Name previously unknown parameters of AudioRendererParameter
...
Provides names for previously unknown entries (aside from the two u8
that appear to be padding bytes, and a single word that also appears
to be reserved or padding).
This will be useful in subsequent changes when unstubbing behavior related
to the audio renderer services.
2019-02-27 06:09:07 +07:00
Lioncash
b9238edd0d
common/math_util: Move contents into the Common namespace
...
These types are within the common library, so they should be within the
Common namespace.
2019-02-27 03:38:39 +07:00
Lioncash
e56f32a071
externals: Update cubeb to 6f2420de8f155b10330cf973900ac7bdbfee589d
...
Keeps the audio library we use up to date.
2019-02-27 01:21:51 +07:00
Lioncash
1b855efd5e
common/vector_math: Move Vec[x] types into the Common namespace
...
These types are within the common library, so they should be using the
Common namespace.
2019-02-26 22:38:36 +07:00
Lioncash
a1574aabd5
common/quaternion: Move Quaternion into the Common namespace
...
Quaternion is within the common library, so it should be using the
Common namespace.
2019-02-26 22:31:17 +07:00
ReinUsesLisp
0ad3c031f4
gl_rasterizer_cache: Move format conversion to its own file
2019-02-26 20:08:27 +07:00
ReinUsesLisp
0ccd490fcd
decoders: Minor style changes
2019-02-26 20:08:27 +07:00
bunnei
10d1d58390
Merge pull request #2164 from ReinUsesLisp/configure-blit
...
renderer_opengl: Update pixel format tracking
2019-02-26 12:12:10 +07:00
ReinUsesLisp
d91e35a50a
renderer_opengl: Update pixel format tracking
2019-02-26 03:47:16 +07:00
ReinUsesLisp
5219edd715
maxwell_3d: Use std::bitset to manage dirty flags
2019-02-26 03:01:48 +07:00
ReinUsesLisp
730eb1dad7
vk_stream_buffer: Remove copy code path
2019-02-26 02:09:43 +07:00
bunnei
c3471bf618
Merge pull request #2156 from FreddyFunk/patch-1
...
file_sys/vfs_vector: Fix ignored offset on Write
2019-02-25 18:28:58 +07:00
bunnei
da1b45de34
Merge pull request #2158 from lioncash/table
...
service/vi: Update IManagerDisplayService's function table
2019-02-25 18:27:43 +07:00
bunnei
1cffd3848b
Merge pull request #2160 from lioncash/audio-warn
...
audio_core: Resolve compilation warnings
2019-02-25 18:25:36 +07:00
bunnei
93c1630570
Merge pull request #2159 from lioncash/warn
...
shader/track: Resolve variable shadowing warnings
2019-02-25 13:26:00 +07:00
Lioncash
d29f9e9709
kernel/handle_table: Make local variables as const where applicable
...
Makes immutable state explicit.
2019-02-25 11:12:38 +07:00
Lioncash
5167d1577d
kernel/handle_table: Allow process capabilities to limit the handle table size
...
The kernel allows restricting the total size of the handle table through
the process capability descriptors. Until now, this functionality wasn't
hooked up. With this, the process handle tables become properly restricted.
In the case of metadata-less executables, the handle table will assume
the maximum size is requested, preserving the behavior that existed
before these changes.
2019-02-25 11:12:32 +07:00
Lioncash
4f8cd74061
kernel/handle-table: In-class initialize data members
...
Directly initializes members where applicable.
2019-02-25 10:14:05 +07:00
Lioncash
0220862ba5
kernel/handle_table: Resolve truncation warnings
...
Avoids implicit truncation warnings from u32 -> u16 (the truncation is
desirable behavior here).
2019-02-25 09:53:21 +07:00
Lioncash
04d7b7e09d
audio_core/cubeb_sink: Initialize CubebSinkStream's last_frame data member
...
Ensures that all member variables are initialized in a deterministic
manner across the board.
2019-02-25 09:40:37 +07:00
Lioncash
8250f9bb1c
audio_core/cubeb_sink: Add override specifier to destructor
...
CubebSinkStream inherits from a base class with a virtual destructor, so
override can be appended to CubebSinkStream's destructor.
2019-02-25 09:38:27 +07:00
Lioncash
7cdeec20ec
audio_core/cubeb_sink: Resolve variable shadowing warnings in SamplesInQueue
...
The name of the parameter was shadowing the member variable of the same
name. Instead, alter the name of the parameter to prevent said
shadowing.
2019-02-25 09:28:51 +07:00
Lioncash
a12f4efa2f
audio_core/codec: Resolve truncation warnings within DecodeADPCM
...
The assignments here were performing an implicit truncation from int to
s16. Make it explicit that this is desired behavior.
2019-02-25 09:24:39 +07:00
Lioncash
c1b2e35625
shader/track: Resolve variable shadowing warnings
2019-02-25 09:10:59 +07:00
Lioncash
be7dad5e7e
service/vi: Update IManagerDisplayService's function table
...
Amends it to add the 7.0.0+ CreateStrayLayer function.
2019-02-25 08:09:00 +07:00
bunnei
c07987dfab
Merge pull request #2118 from FernandoS27/ipa-improve
...
shader_decompiler: Improve Accuracy of Attribute Interpolation.
2019-02-24 23:04:22 +07:00
bunnei
c4243c07cc
Merge pull request #2119 from FernandoS27/fix-copy
...
rasterizer_cache_gl: Only do fast layered copy on the same format.
2019-02-24 23:03:52 +07:00
bunnei
c6170565b5
Merge pull request #2155 from FearlessTobi/port-4655
...
Port citra-emu/citra#4655 : "Remove GCC version checks"
2019-02-24 23:03:13 +07:00
bunnei
57985fb16a
Merge pull request #2144 from lioncash/factor
...
service/vi: Convert Display and Layer structs into classes
2019-02-24 23:02:50 +07:00
Frederic L
517933adcb
file_sys/vfs_vector: Fix ignored offset on Write
2019-02-25 00:27:49 +07:00
tgsm
030814b1cb
Remove GCC version checks
...
Citra can't be compiled using GCC <7 because of required C++17 support, so these version checks don't need to exist anymore.
2019-02-24 15:24:06 +07:00
bunnei
90c780e6f3
Merge pull request #2139 from degasus/dma_pusher
...
video_core/dma_pusher: The full list of headers at once.
2019-02-24 04:15:49 +07:00
ReinUsesLisp
33a0597603
vk_stream_buffer: Implement a stream buffer
...
This manages two kinds of streaming buffers: one for unified memory
models and one for dedicated GPUs. The first one skips the copy from the
staging buffer to the real buffer, since it creates an unified buffer.
This implementation waits for all fences to finish their operation
before "invalidating". This is suboptimal since it should allocate
another buffer or start searching from the beginning. There is room for
improvement here.
This could also handle AMD's "pinned" memory (a heap with 256 MiB) that
seems to be designed for buffer streaming.
2019-02-24 04:27:51 +07:00
ReinUsesLisp
281a8bf259
vk_resource_manager: Minor VKFenceWatch changes
2019-02-24 04:19:04 +07:00
bunnei
f7090bacc5
Merge pull request #2146 from ReinUsesLisp/vulkan-scheduler
...
vk_scheduler: Implement a scheduler
2019-02-23 23:32:43 +07:00
bunnei
d062991643
Merge pull request #2150 from ReinUsesLisp/fixup-layer-swizzle
...
gl_rasterizer_cache: Fixup parameter order in layered swizzle
2019-02-23 23:31:34 +07:00
bunnei
4ab978d670
Merge pull request #2151 from ReinUsesLisp/fixup-vk-memory-manager
...
vk_memory_manager: Fixup commit interval allocation
2019-02-23 23:29:53 +07:00
ReinUsesLisp
92050c4d86
vk_memory_manager: Fixup commit interval allocation
...
VKMemoryCommitImpl was using as the end of its interval "begin + end".
That ended up wasting memory.
2019-02-24 01:04:41 +07:00
ReinUsesLisp
abef11a540
gl_rasterizer_cache: Fixup parameter order in layered swizzle
2019-02-23 23:27:30 +07:00
ReinUsesLisp
f546fb35ed
vk_scheduler: Implement a scheduler
...
The scheduler abstracts command buffer and fence management with an
interface that's able to do OpenGL-like operations on Vulkan command
buffers.
It returns by value a command buffer and fence that have to be used for
subsequent operations until Flush or Finish is executed, after that the
current execution context (the pair of command buffers and fences) gets
invalidated a new one must be fetched. Thankfully validation layers will
quickly detect if this is skipped throwing an error due to modifications
to a sent command buffer.
2019-02-22 01:33:32 +07:00
bunnei
94b27bb8a5
Merge pull request #2138 from ReinUsesLisp/vulkan-memory-manager
...
vk_memory_manager: Implement memory manager
2019-02-21 22:26:54 +07:00
Lioncash
90528f1326
service/nvflinger: Store BufferQueue instances as regular data members
...
The NVFlinger service is already passed into services that need to
guarantee its lifetime, so the BufferQueue instances will already live
as long as they're needed. Making them std::shared_ptr instances in this
case is unnecessary.
2019-02-21 22:09:46 +07:00
Lioncash
fd15730767
service/vi/vi_layer: Convert Layer struct into a class
...
Like the previous changes made to the Display struct, this prepares the
Layer struct for changes to its interface. Given Layer will be given
more invariants in the future, we convert it into a class to better
signify that.
2019-02-21 12:13:09 +07:00
Lioncash
fa4dc2cf42
service/nvflinger: Move display specifics over to vi_display
...
With the display and layer structures relocated to the vi service, we
can begin giving these a proper interface before beginning to properly
support the display types.
This converts the display struct into a class and provides it with the
necessary functions to preserve behavior within the NVFlinger class.
2019-02-21 12:13:04 +07:00