Commit Graph

2120 Commits

Author SHA1 Message Date
Zuckerwatte1 86f6184375 Add 12gb DRAM option (#90)
This adds the option to allow the emulator to use 12gb of RAM for something like really big texture packs.

Co-authored-by: smiRaphi <neogt404@gmail.com>
Reviewed-on: http://vub63vv26q6v27xzv2dtcd25xumubshogm67yrpaz2rculqxs7jlfqad.onion/torzu-emu/torzu/pulls/90
Co-authored-by: Zuckerwatte1 <zuckerwatte1@noreply.localhost>
Co-committed-by: Zuckerwatte1 <zuckerwatte1@noreply.localhost>
2024-12-15 15:14:54 +00:00
lui 9efce71072 externals: update fmt to 11.0.2 and vcpkg to 2024.09.30 (#68)
Updated to fmt 11 with the required source changes for it to work.

Also updated vcpkg for this, and as an added benefit it fixes the `Unable to find a valid Visual Studio instance` error, and the VS 2019 build tools are no longer required. Just make sure to delete the existing downloaded vcpkg tool and binaries in `externals/vcpkg` if you have compiled before, or else it will continue to use the old version and give the error.

Reviewed-on: http://vub63vv26q6v27xzv2dtcd25xumubshogm67yrpaz2rculqxs7jlfqad.onion/torzu-emu/torzu/pulls/68
Co-authored-by: lui <lui@vub63vv26q6v27xzv2dtcd25xumubshogm67yrpaz2rculqxs7jlfqad.onion>
Co-committed-by: lui <lui@vub63vv26q6v27xzv2dtcd25xumubshogm67yrpaz2rculqxs7jlfqad.onion>
2024-11-03 12:25:47 +00:00
lui 1a0d98f984 renderer: add area sampling scaling method (#57)
Adds Area Sampling to the list of scaling options. Works well to achieve a high-quality, smooth super-sampling effect. Dolphin has had this for a while, and now Ryujinx has recently added it too, so I decided to port it.

Not sure if adding the extra uniform to the OpenGL WindowAdaptPass was a good idea or not, or if using the push constants under Vulkan was either, but I wasn't sure about the best way to get the window size for use in the shader, and other scaling methods still work fine. Implementation seems to work fine under both Vulkan and OpenGL, but might still need some minor tweaks to the shader. Should definitely do some testing before merging, I have tested on an Nvidia RTX 3080 under Windows.

Adapted from these two PRs:
https://github.com/Ryujinx/Ryujinx/pull/7304
https://github.com/dolphin-emu/dolphin/pull/11999

Reviewed-on: http://vub63vv26q6v27xzv2dtcd25xumubshogm67yrpaz2rculqxs7jlfqad.onion/torzu-emu/torzu/pulls/57
Co-authored-by: lui <lui@vub63vv26q6v27xzv2dtcd25xumubshogm67yrpaz2rculqxs7jlfqad.onion>
Co-committed-by: lui <lui@vub63vv26q6v27xzv2dtcd25xumubshogm67yrpaz2rculqxs7jlfqad.onion>
2024-10-03 13:25:58 +00:00
echosys ab4c093976 Fix Android crash caused by incorrect type in progress dialog callbacks (#58)
Bug discovered via an incomplete fix in Sudachi.

Some Progress Dialog callbacks pass the wrong type (Double instead of Long) from C++ to Java code causing a crash at runtime.
To fix this a new function is implemented to convert to a Java Long and that is used instead of the function that converts to a Double.

Reviewed-on: http://vub63vv26q6v27xzv2dtcd25xumubshogm67yrpaz2rculqxs7jlfqad.onion/torzu-emu/torzu/pulls/58
Co-authored-by: echosys <echosys@noreply.localhost>
Co-committed-by: echosys <echosys@noreply.localhost>
2024-10-03 12:08:28 +00:00
echosys 7e27e6476d Add option to only optimize SPIRV during load (#13)
Adds a new option "On Load" to the "Optimize SPIRV output" option that turns on optimizations during the loading of the shader cache from disk, but turns it off after that.
The previous checkbox states have been named "Never" for unchecked and "Always" for checked.

The idea is that once the shader cache has most of the shaders in a game cached they can be optimized during initial game startup (where a performance hit matters less) and the few shaders that get compiled during runtime are not optimized to reduce performance hits.

Most of the commit is adding the setting to the Android app, the main logic is in the `gl_shader_cache.cpp` and `vk_pipeline_cache.cpp` files.

Reviewed-on: http://vub63vv26q6v27xzv2dtcd25xumubshogm67yrpaz2rculqxs7jlfqad.onion/torzu-emu/torzu/pulls/13
Co-authored-by: echosys <echosys@noreply.localhost>
Co-committed-by: echosys <echosys@noreply.localhost>
2024-07-19 19:14:19 +00:00
spectranator f064967e32 Fixed multiplayer lobby list (thanks to anonymous contributor!) 2024-06-30 17:14:51 +02:00
spectranator 2184968eb4 Applied clang-format 2024-05-13 23:11:32 +02:00
spectranator 036a7edb2c Removed custom fibers implementation due to issues caused on Windows
Looks like the Windows ATL doesn't play along well at all. What a bummer.
2024-05-08 07:58:20 +02:00
spectranator 1df1841ad1 Disabled problematic MSVC warning-to-errors 2024-05-07 18:57:50 +02:00
spectranator 2ad113f22c Added option to synchronize core tick speed to max speed percentage 2024-04-27 15:02:53 +02:00
darktux 47e20e1ae6 Fixed potential null-dereference in Fiber::DestroyThreadFiber() 2024-04-11 18:37:31 +02:00
darktux fac1dbc7e6 Optionally optimize generated SPIRV with spirv-opt (#10)
Reviewed-on: http://y2nlvhmmk5jnsvechppxnbyzmmv3vbl7dvzn6ltwcdbpgxixp3clkgqd.onion/darktux/torzu/pulls/10
Co-authored-by: darktux <darktux@y2nlvhmmk5jnsvechppxnbyzmmv3vbl7dvzn6ltwcdbpgxixp3clkgqd.onion>
Co-committed-by: darktux <darktux@y2nlvhmmk5jnsvechppxnbyzmmv3vbl7dvzn6ltwcdbpgxixp3clkgqd.onion>
2024-04-10 22:04:09 +00:00
darktux 53ad973d6a Removed Fiber::YieldTo debug round counter 2024-04-08 00:40:46 +02:00
darktux 68ced8ab4f Disabled MCO_USE_VMEM_ALLOCATOR because standard stack size seems to suffice 2024-04-06 01:18:21 +02:00
darktux d02da8726d Remove accidental use of standard format instead of libfmt format 2024-04-05 01:58:30 +02:00
darktux 566ba0cb2b Save memory by using dyamic stack size in Fiber 2024-04-05 01:58:30 +02:00
darktux 22acf85d05 Fix GCC builds with Debug build type
When compiling with -DCMAKE_BUILD_TYPE=Debug, GCC would (correctly) fail to
compile intrinsics in stb and host1x due to lack of optimizations.

Sadly, the compilation error given is bogus and Clang completing the builds
without issues does raise some eyebrows.

Therefore, force optimizations for the offending files under GCC when
creating Debug builds.

Signed-off-by: voidanix <voidanix@keyedlimepie.org>
2024-04-05 01:58:30 +02:00
darktux 1c88616a03 Updated copyright headers 2024-04-05 01:58:30 +02:00
darktux 40824a903d Fixed minicoro.h formatting 2024-04-05 01:58:30 +02:00
darktux f2592ff593 clang-formated new fiber.cpp and minicoro.h 2024-04-05 01:58:30 +02:00
darktux b07b266b87 Implemented rewindless Fiber without Boost (using minicoro) 2024-04-05 01:58:30 +02:00
darktux 3857ff1aa8 Removed telemetry and anonymized SCM (git) strings 2024-04-05 01:58:30 +02:00
darktux fc18b71a20 Port changes from Early Access 2024-04-05 01:58:29 +02:00
darktux 372918fe0f Replaced API URL 2024-04-05 01:58:29 +02:00
liamwhite 79edad2533
Merge pull request #13159 from liamwhite/web-error
core: enable error applet, add stubs for web applet
2024-02-26 12:44:55 -05:00
Liam 25c3bbba0e settings: remove global override for smash on amdvlk 2024-02-26 11:16:18 -05:00
Liam dc50b95a47 settings: enable error applet 2024-02-24 22:56:08 -05:00
wheremyfoodat ed315fb8a5
common/ring_buffer: Include <limits> header 2024-02-24 02:34:09 +02:00
liamwhite 215e887be0
Merge pull request #13100 from liamwhite/audio-ipc
audio: move to new ipc
2024-02-23 11:34:21 -05:00
Narr the Reg 984396a21a
Merge pull request #13001 from liamwhite/scaled-availability
vulkan_device: don't use fixed cap for memory limits
2024-02-22 11:31:17 -06:00
Liam c575a85233 audio: rewrite IAudioDevice 2024-02-20 22:15:38 -05:00
FearlessTobi 310c1f50be scope_exit: Make constexpr
Allows the use of the macro in constexpr-contexts.
Also avoids some potential problems when nesting braces inside it.
2024-02-19 16:00:46 +01:00
Liam 56810541f0 vulkan_device: don't use fixed cap for memory limits 2024-02-18 18:59:13 -05:00
t895 50ecad547e android: Input mapping 2024-02-17 12:32:33 -05:00
Narr the Reg 2ff45cd0da
Merge pull request #12756 from liamwhite/applet-multiprocess-hwc
general: applet multiprocess
2024-02-11 20:58:28 -06:00
liamwhite 7ec7ff0f30
Merge pull request #12920 from t895/jni-common
android: Move JNI setup and helpers to common
2024-02-09 11:49:25 -05:00
Liam fa12384350 general: add default configurations for applet mode 2024-02-09 09:20:53 -05:00
t895 c8e8c614a0 common: fs: Expand android macros 2024-02-08 14:13:46 -05:00
t895 e7c4c8b993 android: Move JNI setup and helpers to common 2024-02-08 13:45:26 -05:00
liamwhite 263dfa95e4
Merge pull request #12914 from FernandoS27/vc-refactor
VideoCore Refactor Part 1.
2024-02-08 10:59:59 -05:00
Fernando Sahmkow fa47ac1c9f Common: Rename SplitRangeSet to OverlapRangeSet 2024-02-05 23:01:17 +01:00
Liam 0e950baf41 typed_address: test values are unsigned 2024-02-05 12:47:10 -05:00
Fernando Sahmkow 0d5a3abeae Buffer Cache: Refactor to use Range sets instead 2024-02-05 11:06:52 +01:00
Fernando Sahmkow 01ba6cf610 Common: Introduce Range Sets 2024-02-04 20:01:50 +01:00
Fernando Sahmkow 4841dc0b74 VideoCore: Move Slot Vector to Common 2024-02-04 20:01:47 +01:00
Narr the Reg fb3ef957bb service: fs: Skip non user id folders 2024-02-02 13:25:38 -06:00
liamwhite 22492b68b7
Merge pull request #12869 from FernandoS27/smmu-fixes
SMMU: A set of different fixes.
2024-01-31 11:22:29 -05:00
Liam 8f848f43e9 smmu: use new range mutex construction for protecting counters 2024-01-31 16:38:51 +01:00
t895 e8be665f11 settings: Allow audio sink, input, and output to be set per game 2024-01-31 09:31:19 -05:00
liamwhite 90cb852908
Merge pull request #12814 from Kelebek1/time_new_ipc
Move time services to new IPC and add debug printing
2024-01-29 09:08:46 -05:00