Thomas
e8c0b7f9c5
Store configuration file in AppData root if not in working directory ( #693 )
...
* Store configuration file in AppData root if not in working directory
This fixes MacOS app bundles, as the emulator cannot write the config
file into the app bundle.
* Remove duplicate fs calls
* I'm an idiot sandwich
---------
Co-authored-by: wheremyfoodat <44909372+wheremyfoodat@users.noreply.github.com>
2024-12-26 23:26:37 +02:00
wheremyfoodat
7c5f7954e5
Libretro: Add system language option
2024-12-25 12:41:55 +02:00
wheremyfoodat
4cfc5fb32a
Make system language configurable
2024-12-10 20:28:49 +02:00
wheremyfoodat
bfdc6f0240
Qt: Add translation support ( #664 )
...
* Translation PoC
* i18n but better
* More Greek translation
* Add proper translation UI
* Linux CI: Install qt6-tools-dev
2024-12-04 21:08:33 +02:00
wheremyfoodat
5f822b32d5
Add volume curve setting ( #658 )
...
* Add volume curve setting
* Qt: Add missing translations
2024-12-03 14:16:57 +02:00
Jonian Guveli
156328fbfb
[WIP] Qt: Add config window controls ( #655 )
...
* Qt: Add config window controls
* Fix Windows build
* Fix audio slider
* Qt configs: Make thread-safe, properly update audio enable & renderdoc settings
* Qt configs: Add `connectCheckbox` function
* Qt configs: Add `connectCheckbox` function
* Rename spuLayout
* Add Discord RPC reloading
* Allow configuring the app icon
* Qt: Serialize icon & theme, properly set them
* Add rnap and rcow icons
* Qt: Fix forceShadergen config
---------
Co-authored-by: wheremyfoodat <44909372+wheremyfoodat@users.noreply.github.com>
2024-12-01 23:06:47 +02:00
wheremyfoodat
18f3865f8b
Add option to print DSP fw
2024-11-30 21:51:46 +02:00
wheremyfoodat
3b6190b69a
Add volume slider & mute audio settings
2024-11-28 19:10:55 +02:00
wheremyfoodat
b251f84ab1
DSP: Add option to enable/disable AAC
2024-11-28 19:10:55 +02:00
wheremyfoodat
818271c7ad
Qt: Optionally remember window pos/size
2024-10-31 17:34:21 +02:00
wheremyfoodat
238d84ba3b
DSP: Default to HLE
2024-10-20 21:45:08 +03:00
wheremyfoodat
49a94a13c5
Moar shader decompiler ( #559 )
...
* Renderer: Add prepareForDraw callback
* Add fmt submodule and port shader decompiler instructions to it
* Add shader acceleration setting
* Hook up vertex shaders to shader cache
* Shader decompiler: Fix redundant compilations
* Shader Decompiler: Fix vertex attribute upload
* Shader compiler: Simplify generated code for reading and faster compilation
* Further simplify shader decompiler output
* Shader decompiler: More smallen-ing
* Shader decompiler: Get PICA uniforms uploaded to the GPU
* Shader decompiler: Readd clipping
* Shader decompiler: Actually `break` on control flow instructions
* Shader decompiler: More control flow handling
* Shader decompiler: Fix desitnation mask
* Shader Decomp: Remove pair member capture in lambda (unsupported on NDK)
* Disgusting changes to handle the fact that hw shader shaders are 2x as big
* Shader decompiler: Implement proper output semantic mapping
* Moar instructions
* Shader decompiler: Add FLR/SLT/SLTI/SGE/SGEI
* Shader decompiler: Add register indexing
* Shader decompiler: Optimize mova with both x and y masked
* Shader decompiler: Add DPH/DPHI
* Fix shader caching being broken
* PICA decompiler: Cache VS uniforms
* Simply vertex cache code
* Simplify vertex cache code
* Shader decompiler: Add loops
* Shader decompiler: Implement safe multiplication
* Shader decompiler: Implement LG2/EX2
* Shader decompiler: More control flow
* Shader decompiler: Fix JMPU condition
* Shader decompiler: Convert main function to void
* PICA: Start implementing GPU vertex fetch
* More hw VAO work
* More hw VAO work
* More GPU vertex fetch code
* Add GL Stream Buffer from Duckstation
* GL: Actually upload data to stream buffers
* GPU: Cleanup immediate mode handling
* Get first renders working with accelerated draws
* Shader decompiler: Fix control flow analysis bugs
* HW shaders: Accelerate indexed draws
* Shader decompiler: Add support for compilation errors
* GLSL decompiler: Fall back for LITP
* Add Renderdoc scope classes
* Fix control flow analysis bug
* HW shaders: Fix attribute fetch
* Rewriting hw vertex fetch
* Stream buffer: Fix copy-paste mistake
* HW shaders: Fix indexed rendering
* HW shaders: Add padding attributes
* HW shaders: Avoid redundant glVertexAttrib4f calls
* HW shaders: Fix loops
* HW shaders: Make generated shaders slightly smaller
* Fix libretro build
* HW shaders: Fix android
* Remove redundant ubershader checks
* Set accelerate shader default to true
* Shader decompiler: Don't declare VS input attributes as an array
* Change ubuntu-latest to Ubuntu 24.04 because Microsoft screwed up their CI again
* fix merge conflict bug
2024-10-19 16:53:51 +03:00
wheremyfoodat
2754df9b94
Add renderdoc API support ( #585 )
...
* Add renderdoc API support
* FIx renderdoc include directory
* Fix RenderDoc linking
* Fix Renderdoc linking (again)
* Maybe fix renderdoc
2024-08-23 05:30:25 +03:00
wheremyfoodat
c694ce9a25
Improved git versioning
2024-08-20 13:20:14 +03:00
wheremyfoodat
69c79a7f6c
Ubershader: Add lighting shadergen override
2024-07-20 03:40:50 +03:00
wheremyfoodat
aad7bb817e
Add setting for ubershaders
2024-07-17 02:25:38 +03:00
wheremyfoodat
0ecdf00e64
Add accurate shader multiplication option
2024-07-16 22:14:01 +03:00
Auxy6858
429dc2a944
Added rom path ( #474 )
...
* Added app icon to the window
* Added Roms path
Added an option to the config to set a folder that opens when selecting a game instead of having to navigate to the folder manually every time.
* Clear up PR
* Clear up PR
---------
Co-authored-by: wheremyfoodat <44909372+wheremyfoodat@users.noreply.github.com>
2024-03-26 18:40:10 +02:00
Ada
ff1eaed0a4
peeve: guarantee toml order ( #451 )
2024-03-08 18:08:41 +02:00
wheremyfoodat
d459cb1d6c
Get audio output working with LLE DSP ( #419 )
...
* Implement audio output
* Semi-proper audio output
* Add audio enable and vsync settings
* Add audio enable and vsync settings
* Optimize audio output a bit
* Make max ring buffer timeout smaller
* Make max ring buffer timeout smaller
* Revert to spinlocking for audio sync
* Sleep emulator thread if too many samples queued
* Fix Teakra submodule breaking
* Don't start audio device too soon
* Fix IWYU errors
* Fix compilation errors on GCC/Clang
* Ignore std::hardware_destructive_interference_size on Android NDK
* Fix more IWYU errors
2024-02-24 03:26:23 +02:00
wheremyfoodat
7a5bb2859e
Make DSP backends properly configurable
2024-02-19 17:57:21 +02:00
wheremyfoodat
99e06d8325
Make shader JIT off-by-default for arm64 temporarily
2024-01-12 18:40:00 +02:00
wheremyfoodat
070d5b1c6d
Fix configuration file path on Android
2023-11-28 12:08:25 +02:00
wheremyfoodat
20b692ae72
Add portable build option
2023-09-16 23:05:35 +03:00
wheremyfoodat
48b19b2588
Add SD card configs
2023-08-19 19:31:40 +03:00
wheremyfoodat
51b2b8eee5
Make battery stuff configurable
2023-08-18 22:17:33 +03:00
wheremyfoodat
2f191e8fa2
Enable shader JIT by default
2023-08-13 00:48:00 +03:00
wheremyfoodat
1c11e2df40
Add Discord RPC ( #161 )
...
* Add discord-rpc submodule
* Add Discord RPC
* Fix up Discord status
* Fix CMake because MacOS sucks
* Slightly less hacky fix
2023-08-08 00:23:39 +03:00
wheremyfoodat
c339c7d1c5
Bonk
2023-07-18 23:11:20 +03:00
wheremyfoodat
77b0382d0c
Cleanup, C string -> std::string
2023-07-18 22:23:28 +03:00
Wunkolo
0b60cf6901
Migrate RenderType string functions to static Renderer functions
...
Also fix some IWYU build errors
2023-07-18 10:02:07 -07:00
Wunkolo
528ed510c2
Add string-based renderer backend configuration
...
Rather than using integer-indices, just use plaintext case-insensitive
names and leave the actual enum indexes as an implementation detail.
2023-07-17 18:02:01 -07:00
Wunkolo
2c57936c50
Fix EmulatorConfig
initialization order
...
`config` was being consumed much too early before it has a chance to
call `load`. This caused GPU to read weird uninitialized data, and then
`load` called, and then further initialization to occur based on default
data and the data inside of `config.toml`. `EmulatorConfig` needs to be
loaded in first before any sort of initialization happens, by adding a
new constructor so that it can be initialized sooner.
2023-07-17 10:23:19 -07:00
Wunkolo
ceff20f57f
Add configurable Renderer backend
...
There are still some initialization errors to work through, such as
config not being initialized properly by the time GPU tries to utilize
it too. Also some life-time issues. But manually forcing it to use the
Null backnd successfully works and allows games to be "played"
headlessly.
2023-07-17 10:13:34 -07:00
wheremyfoodat
e4f3c3beda
Bonk config.cpp
2023-07-10 22:01:49 +03:00
Wunkolo
5372fe6e43
config: Use error_code
prototype of filesystem::exists
...
The non-error-code version of these functions are susceptible to
throwing an exception in the case of system errors like permission
issues or underlying device errors.
2023-07-10 11:33:29 -07:00
wheremyfoodat
c4878ec4b4
Update comments
...
Co-Authored-By: Mireille <13669774+fleroviux@users.noreply.github.com>
2023-07-08 16:38:44 +03:00
wheremyfoodat
bc3377ac78
Add config class
2023-07-08 16:16:00 +03:00