ameerj
958ede1ed9
astc_decoder: Optimize the use EncodingData
This buffer was a list of EncodingData structures sorted by their bit length, with some duplication from the cpu decoder implementation.
We can take advantage of its sorted property to optimize its usage in the shader.
Thanks to wwylele for the optimization idea.
5 years ago
ameerj
f4409c9db9
astc.h: Move data to cpp implementation
Moves leftover values that are no longer used by the gpu decoder back to the cpp implementation.
5 years ago
Mai M
4b027d3868
Merge pull request #6788 from Morph1984/hle_api_12.1.0
hle: api_version: Update HOS version to 12.1.0
4 years ago
lat9nq
1f81d4415c
settings: Use std::clamp where possible
Addresses PR review
Co-authored-by: PixelyIon <pixelyion@protonmail.com>
4 years ago
Morph
057a4a8a06
hle: api_version: Update HOS version to 12.1.0
Keeps us up to date with reporting the system version.
4 years ago
lat9nq
3314d63af4
settings: Remove unnecessary std::move usages
Addresses review feedback.
Co-authored-by: Mai M. <mathew1800@gmail.com>
4 years ago
bunnei
8177751c0e
Merge pull request #6752 from Morph1984/pt-br
service: ns, set: Add PT_BR (Brazilian Portuguese)
4 years ago
bunnei
1e83edaf6b
Merge pull request #6775 from lat9nq/cmd-remove-global-core
emu_window: Remove global system instance
4 years ago
bunnei
828d9370b2
Merge pull request #6759 from ReinUsesLisp/pipeline-statistics
renderer_vulkan: Add setting to log pipeline statistics
4 years ago
lat9nq
9194f2f342
settings: Fix function virtualization
Fixes a theoretical scenario where a Setting is using the BasicSetting's
GetValue function. In practice this probably only happens on yuzu-cmd,
where there is no need for a Setting's additional features. Need to fix
regardless.
4 years ago
lat9nq
62e78f36c7
settings: Implement setting ranges
Clamps the setting's values against the specified minimum and maximum
values.
4 years ago
bunnei
3adc830cf6
Merge pull request #6770 from Morph1984/swkbd_buffer_size
applet_swkbd: Correct string buffer size calculation
4 years ago
lat9nq
d15ff8a89b
emu_window: Remove global system instance
It was just the one in emu_window_sdl2, but since _gl and _vk inherit
from it, they all needed adjustments.
Leaves just the one auto system& in main().
4 years ago
Morph
ac09092898
applet_swkbd: Correct string buffer size calculation
The buffer size here does not include the initial 8 bytes.
4 years ago
Morph
743b6b53d9
configure_system: Add Brazilian Portuguese to the list of languages
4 years ago
Morph
2359f8283a
service: set: Correct 4.0.0 max_entries to 0x40 (64) instead of 17
4 years ago
Morph
58a79102ae
service: ns, set: Add PT_BR (Brazilian Portuguese)
4 years ago
Morph
bef5d608a9
Merge pull request #6767 from ReinUsesLisp/fold-float-pack
shader: Fold UnpackFloat2x16 and PackFloat2x16
4 years ago
bunnei
9a7c2869d8
Merge pull request #6722 from ReinUsesLisp/xmad-opts
shader: Fold integer FMA from Nvidia's pattern
4 years ago
ReinUsesLisp
ecc05bdcb6
shader: Fold UnpackFloat2x16 and PackFloat2x16
Simplifies the code a bit when possible. These instructions should be
no-ops codegen wise.
4 years ago
Ameer J
f2b7818cf0
Merge pull request #6751 from Morph1984/languagecode
service: ns: Map ZH_TW and ZH_CN to Traditional/Simplified Chinese
4 years ago
bunnei
56a35a0886
Merge pull request #6742 from Morph1984/uuid
common: uuid: Return a lower-case hex string in Format
4 years ago
ReinUsesLisp
2eaec1b7ee
vk_rasterizer: Flip viewport on Y_NEGATE
Matches OpenGL's behavior. I don't believe this register flips geometry,
but we have to try to match behavior on both backends.
4 years ago
ameerj
9629e74364
renderers: Add explicit invert_y bool to screenshot callback
OpenGL and Vulkan images render in different coordinate systems. This allows us to specify the coordinate system of the screenshot within each renderer
4 years ago
ameerj
6733ae9aab
renderer_vulkan: Implement screenshots
4 years ago
ameerj
317f238e1d
vk_blit_screen: Add public CreateFramebuffer method
4 years ago
ameerj
870a92bd78
vk_blit_screen: Make Draw method more generic
Allows specifying the framebuffer and render area dimensions, rather than being hard coded for the render window.
4 years ago
bunnei
b1e3c13f5a
Merge pull request #6760 from ReinUsesLisp/fp16-collect
shader: Mark ConvertF16F32 and ConvertF32F16 as fp16 instructions
4 years ago
bunnei
a31bcb8371
Merge pull request #6758 from jbeich/fastmem
host_memory: enable fastmem on FreeBSD
4 years ago
bunnei
0821c4c02d
Merge pull request #6700 from lat9nq/fullscreen-enum
general: Implement FullscreenMode enumeration
4 years ago
Morph
5b9d80faea
Merge pull request #6671 from jls47/master
applets/web: Addressing QT Navigation issues in Linux
4 years ago
Ameer J
257666fc4b
Merge pull request #6753 from jbeich/libusb
cmake: unbreak libusb detection on FreeBSD
4 years ago
ReinUsesLisp
d84b81fdfb
shader: Mark ConvertF16F32 and ConvertF32F16 as fp16 instructions
Fixes instances where fp16 types are not declared on SPIR-V but they are
used. This shouldn't happen on master, as it's been uncovered by an
additional optimization pass.
4 years ago
ReinUsesLisp
482c1ec8e5
renderer_vulkan: Add setting to log pipeline statistics
Use VK_KHR_pipeline_executable_properties when enabled and available to
log statistics about the pipeline cache in a game.
For example, this is on Turing GPUs when generating a pipeline cache
from Super Smash Bros. Ultimate:
Average pipeline statistics
==========================================
Code size: 6433.167
Register count: 32.939
More advanced results could be presented, at the moment it's just an
average of all 3D and compute pipelines.
4 years ago
bunnei
4dfbd2579c
Merge pull request #6749 from lioncash/rtarget
render_target: Add missing initializer for size extent
4 years ago
bunnei
f2d0cb5498
Merge pull request #6730 from Morph1984/buf_to_stdstring
common: fs: fs_util: Add BufferToUTF8String
4 years ago
Jan Beich
471ddd0674
host_memory: Add workaround for FreeBSD 12
src/common/host_memory.cpp:360:14: error: use of undeclared identifier
'memfd_create'
fd = memfd_create("HostMemory", 0);
^
4 years ago
Jan Beich
112a8e017d
host_memory: Enable Linux implementation on FreeBSD
HW.Memory <Critical> common/host_memory.cpp:HostMemory:492: Fastmem unavailable, falling back to VirtualBuffer for memory allocation
4 years ago
Rodrigo Locatti
100a39edb6
Merge pull request #6748 from lioncash/engine-init
video_core/engine: Consistently initialize rasterizer pointers
4 years ago
Rodrigo Locatti
b944f2b0d3
Merge pull request #6744 from lioncash/exc
exception: Make constructors explicit
4 years ago
bunnei
f55b0d994e
Merge pull request #6745 from lioncash/copies
video_core: Remove some unused variables
4 years ago
bunnei
354327be3f
Merge pull request #6747 from lioncash/wrapper
vulkan_wrapper: Fix SetObjectName() always indicating objects as images
4 years ago
jls47
20083ccd43
qt_web_browser: Fix lambda capture for HIDButton
4 years ago
jls47
85e29934fd
qt_web_browser: Focus on the first link element
Focusing on the first link element fixes element navigation upon loading the web applet in games such as Super Mario Odyssey
4 years ago
Jan Beich
4daba0bf26
cmake: don't use pkg-config directly with non-reference libusb
CMake Error at externals/libusb/CMakeLists.txt:120 (add_library):
Cannot find source file:
libusb/libusb/core.c
Tried extensions .c .C .c++ .cc .cpp .cxx .cu .mpp .m .M .mm .h .hh .h++
.hm .hpp .hxx .in .txx .f .F .for .f77 .f90 .f95 .f03 .ispc
CMake Error at externals/libusb/CMakeLists.txt:120 (add_library):
No SOURCES given to target: usb
ld: error: undefined symbol: libusb_interrupt_transfer
>>> referenced by gc_adapter.cpp
>>> gc_adapter.cpp.o:(GCAdapter::Adapter::SendVibrations()) in archive src/input_common/libinput_common.a
>>> referenced by gc_adapter.cpp
>>> gc_adapter.cpp.o:(GCAdapter::Adapter::GetGCEndpoint(libusb_device*)) in archive src/input_common/libinput_common.a
>>> referenced by gc_adapter.cpp
>>> gc_adapter.cpp.o:(GCAdapter::Adapter::AdapterInputThread()) in archive src/input_common/libinput_common.a
ld: error: undefined symbol: libusb_error_name
>>> referenced by gc_adapter.cpp
>>> gc_adapter.cpp.o:(GCAdapter::Adapter::SendVibrations()) in archive src/input_common/libinput_common.a
ld: error: undefined symbol: libusb_control_transfer
>>> referenced by gc_adapter.cpp
>>> gc_adapter.cpp.o:(GCAdapter::Adapter::CheckDeviceAccess()) in archive src/input_common/libinput_common.a
ld: error: undefined symbol: libusb_kernel_driver_active
>>> referenced by gc_adapter.cpp
>>> gc_adapter.cpp.o:(GCAdapter::Adapter::CheckDeviceAccess()) in archive src/input_common/libinput_common.a
ld: error: undefined symbol: libusb_close
>>> referenced by gc_adapter.cpp
>>> gc_adapter.cpp.o:(GCAdapter::Adapter::CheckDeviceAccess()) in archive src/input_common/libinput_common.a
>>> referenced by gc_adapter.cpp
>>> gc_adapter.cpp.o:(GCAdapter::Adapter::ClearLibusbHandle()) in archive src/input_common/libinput_common.a
>>> referenced by gc_adapter.cpp
>>> gc_adapter.cpp.o:(GCAdapter::Adapter::Reset()) in archive src/input_common/libinput_common.a
>>> referenced by gc_adapter.cpp
>>> gc_adapter.cpp.o:(GCAdapter::Adapter::Setup()) in archive src/input_common/libinput_common.a
>>> referenced by gc_adapter.cpp
>>> gc_adapter.cpp.o:(GCAdapter::Adapter::AdapterScanThread()) in archive src/input_common/libinput_common.a
ld: error: undefined symbol: libusb_detach_kernel_driver
>>> referenced by gc_adapter.cpp
>>> gc_adapter.cpp.o:(GCAdapter::Adapter::CheckDeviceAccess()) in archive src/input_common/libinput_common.a
ld: error: undefined symbol: libusb_claim_interface
>>> referenced by gc_adapter.cpp
>>> gc_adapter.cpp.o:(GCAdapter::Adapter::CheckDeviceAccess()) in archive src/input_common/libinput_common.a
ld: error: undefined symbol: libusb_get_config_descriptor
>>> referenced by gc_adapter.cpp
>>> gc_adapter.cpp.o:(GCAdapter::Adapter::GetGCEndpoint(libusb_device*)) in archive src/input_common/libinput_common.a
ld: error: undefined symbol: libusb_release_interface
>>> referenced by gc_adapter.cpp
>>> gc_adapter.cpp.o:(GCAdapter::Adapter::ClearLibusbHandle()) in archive src/input_common/libinput_common.a
>>> referenced by gc_adapter.cpp
>>> gc_adapter.cpp.o:(GCAdapter::Adapter::Reset()) in archive src/input_common/libinput_common.a
>>> referenced by gc_adapter.cpp
>>> gc_adapter.cpp.o:(GCAdapter::Adapter::Setup()) in archive src/input_common/libinput_common.a
>>> referenced by gc_adapter.cpp
>>> gc_adapter.cpp.o:(GCAdapter::Adapter::AdapterScanThread()) in archive src/input_common/libinput_common.a
ld: error: undefined symbol: libusb_init
>>> referenced by gc_adapter.cpp
>>> gc_adapter.cpp.o:(GCAdapter::Adapter::Adapter()) in archive src/input_common/libinput_common.a
ld: error: undefined symbol: libusb_open_device_with_vid_pid
>>> referenced by gc_adapter.cpp
>>> gc_adapter.cpp.o:(GCAdapter::Adapter::Setup()) in archive src/input_common/libinput_common.a
ld: error: undefined symbol: libusb_get_device
>>> referenced by gc_adapter.cpp
>>> gc_adapter.cpp.o:(GCAdapter::Adapter::Setup()) in archive src/input_common/libinput_common.a
ld: error: undefined symbol: libusb_exit
>>> referenced by gc_adapter.cpp
>>> gc_adapter.cpp.o:(GCAdapter::Adapter::Reset()) in archive src/input_common/libinput_common.a
5 years ago
Morph
6c7b6b7be0
service: ns: Remove unused ns_language header
4 years ago
Morph
ae8a88d10c
service: ns: Map ZH_TW and ZH_CN to Traditional/Simplified Chinese
4 years ago
Lioncash
2fa5f631c3
render_target: Add missing initializer for size extent
Everything else has a default constructor that does the straightforward
thing of initializing most members to a default value, except for the
size.
We explicitly initialize the size (and others, for consistency), to
prevent potential uninitialized reads from occurring. Particularly given
the largeish surface area that this struct is used in.
4 years ago
Lioncash
23ec5faf24
video_core/engine: Consistently initialize rasterizer pointers
Ensures all of the engines have consistent and deterministic
initialization of the rasterizer pointers.
4 years ago
Lioncash
be66e2a272
vulkan_wrapper: Fix SetObjectName() always indicating objects as images
We should be using the passed in object type instead.
4 years ago