Connor McLaughlin
2b66492ed8
HostInterface: Add proper turbo speed setting
2020-11-03 22:59:26 +10:00
Connor McLaughlin
2c8a4ff154
HostDisplay: Add an option to decouple display fps from emulator fps
...
Makes Android so much faster...
2020-11-03 16:17:45 +10:00
Connor McLaughlin
d102b2facd
Qt: Fix selecting fullscreen mode breaking other backend borderless
2020-11-03 16:17:45 +10:00
Connor McLaughlin
414bc30f24
HostDisplay: Implement exclusive fullscreen for D3D11 renderer
2020-11-02 00:56:05 +10:00
Connor McLaughlin
ed0777cd8d
OpenGLHostDisplay: Make sure vsync is on at startup
2020-10-31 14:27:58 +10:00
Connor McLaughlin
fdb770a596
ImGui: Get rid of serializing GL calls in OpenGL renderer
...
Gives a 25% performance improvement on NVIDIA.
2020-10-31 14:27:58 +10:00
Connor McLaughlin
2eaebd8921
GPU: Implement support for multisample antialiasing
2020-10-31 14:27:58 +10:00
Connor McLaughlin
7210b0826a
GameSettings: Make DMA/GPU tweak settings overridable
2020-10-30 00:44:40 +10:00
Connor McLaughlin
29467d40c8
DMA: Add debug window
2020-10-30 00:44:39 +10:00
Connor McLaughlin
62dbaaf02c
Qt: Fix power off button not exiting in batch mode
2020-10-30 00:44:39 +10:00
Connor McLaughlin
7ce55ca800
Android: Fix race/crash when switching away/back to the emulation activity
2020-10-27 11:58:46 +10:00
Albert Liu
f69889264d
Core: Make some additional OSD messages translatable
2020-10-22 02:07:48 -07:00
Connor McLaughlin
b694577c38
Qt: Add new cheat manager
2020-10-21 01:11:30 +10:00
Albert Liu
9b8fbeb087
CommonHostInterface: Activate hotkeys on press instead of release
2020-10-19 16:35:12 -07:00
Connor McLaughlin
49cea927f0
Build: Add ARM64 platform for Windows
2020-10-14 00:48:48 +10:00
Connor McLaughlin
a372a1d782
GameList: Fix progress disappearing when scanning >1 directory
2020-10-12 00:40:06 +10:00
Connor McLaughlin
ad61815cad
GameList: Don't keep cache open after rewriting
2020-10-11 20:55:49 +10:00
Connor McLaughlin
1db1d64a1f
GameSettings: Simplify controller type check
2020-10-11 14:38:31 +10:00
Connor McLaughlin
303357df27
GameSettings: Only replace analog -> digital controller when forcing
...
e.g. Die Hard Trilogy can also work with Konami Justifier.
2020-10-11 12:46:12 +10:00
Connor McLaughlin
d39c9f5d1c
Clean up some compiler warnings
2020-10-11 12:21:08 +10:00
Connor McLaughlin
c89d94c2ff
Move Cubeb AudioStream to FrontendCommon
...
This way it doesn't need to be built for libretro.
2020-10-11 12:21:08 +10:00
Connor McLaughlin
cb6502afa3
Qt: Simplify settings version check
2020-10-09 18:26:21 +10:00
Albert Liu
94d7d4cead
Qt: Show dialog on startup for settings version mismatch
...
For the QMessageBox to appear, error reporting is performed again after
main window creation.
2020-10-07 20:43:50 -07:00
Connor McLaughlin
a3f2f13fa9
GameSettings: Add CD-ROM Read Speedup
2020-10-05 00:18:10 +10:00
Connor McLaughlin
0b858658ca
GameSettings: Add per-game input bindings from profiles
...
This just affects the **bindings**. You will still have to set the
controller type per game if this is different from the global default.
2020-10-05 00:18:10 +10:00
Connor McLaughlin
7278f055cb
FrontendCommon: Attempt two at hotkey translation
2020-10-05 00:18:10 +10:00
Connor McLaughlin
55f0915534
Qt: Hopefully fix save state slot hotkeys being untranslatable
2020-10-04 00:12:01 +10:00
Connor McLaughlin
968c835249
CommonHostInterface: Add reset hotkey
2020-10-04 00:12:01 +10:00
Connor McLaughlin
36511fda18
Qt: Add set cover image option to context menu
2020-10-04 00:12:01 +10:00
Connor McLaughlin
ca0bfc39a2
CDROM: Add a setting and hotkey to mute CD audio
2020-10-04 00:12:01 +10:00
Connor McLaughlin
c051538d03
HostInterface: Mark some more OSD messages as being translatable
2020-10-03 01:06:04 +10:00
Connor McLaughlin
caf100ec0d
Qt: Make hotkey categories translatable
2020-10-03 01:06:04 +10:00
Connor McLaughlin
5bc61849eb
FrontendCommon: Add duck icon to loading screens
2020-10-02 00:01:51 +10:00
Connor McLaughlin
9a23c5547a
GameSettings: Add CPU overclocking as game option
2020-09-30 23:48:34 +10:00
Connor McLaughlin
2c971ce0c7
VulkanHostDisplay: Fix errors for shaders with many options
2020-09-30 22:52:55 +10:00
Connor McLaughlin
8342fec2c8
VulkanHostDisplay: Execute command buffer before reloading post shaders
2020-09-27 01:34:29 +10:00
Connor McLaughlin
f26e75fa37
GameSettings: Add force 4:3 for 24-bit
2020-09-26 15:21:17 +10:00
Connor McLaughlin
e7cfc69975
Cheats: Fix parsing of Retroarch cheats
2020-09-26 01:13:48 +10:00
Connor McLaughlin
699242b1a7
GameList: Fix compatibility xml saving
2020-09-24 22:16:23 +10:00
Connor McLaughlin
41f36d0673
GameList: Fix cover search from game serial/code
2020-09-24 12:33:11 +10:00
Connor McLaughlin
b193374dd4
GameList: Add method to look up a cover image
2020-09-24 00:31:44 +10:00
Connor McLaughlin
f022bdb328
PostProcessingShader: Fix a compile warning
2020-09-23 20:19:38 +10:00
Silent
92d0dabf54
Make path separators in UI more consistent
2020-09-20 00:08:17 +02:00
Connor McLaughlin
d274c553c5
OpenGLHostDisplay: Fix incorrect top alignment
2020-09-20 01:36:49 +10:00
Silent
67392a37ec
Fix Discord RPC not reporting the game title
2020-09-19 15:00:03 +02:00
Connor McLaughlin
67d0bbedb1
ControllerInterface: Don't use a minimum strength of 0.01
2020-09-17 19:56:11 +10:00
Connor McLaughlin
3096f0953f
PostProcessing: Use ints-for-bools CPU-side as well
2020-09-16 11:52:23 +10:00
Connor McLaughlin
3bd9f85af8
PostProcessingShaderGen: Use ints instead of bools for options
2020-09-16 11:52:23 +10:00
Connor McLaughlin
352a3405e8
OpenGLHostDisplay: Fix offset image in libretro
2020-09-16 01:14:56 +10:00
Silent
a35a2838b6
Fix XML loading not handling UTF-8 paths
2020-09-14 20:33:56 +02:00
Connor McLaughlin
daa5e02853
GameSettings: Add trait for disabling PGXP texture correction
2020-09-15 00:31:35 +10:00
Connor McLaughlin
51c595759f
GameList: Fix incorrect serialization of some options
2020-09-15 00:31:35 +10:00
Connor McLaughlin
bb6af3c8fc
Merge pull request #845 from CookiePLMonster/fix-resume
...
Fix issues with a -resume parameter
2020-09-14 00:11:42 +10:00
Connor McLaughlin
9c28b3e167
CommonHostInterface: Add post processing toggle hotkeys
2020-09-13 22:31:31 +10:00
Connor McLaughlin
441f26706e
Qt: Move post processing to its own setting category
2020-09-13 22:27:30 +10:00
Connor McLaughlin
7a5f167c1c
VulkanHostDisplay: Fix a possible crash at shutdown with large post shaders
2020-09-13 20:21:23 +10:00
Connor McLaughlin
2492eb8678
FrontendCommon: Add a hotkey to reload post processing
2020-09-13 20:21:05 +10:00
Connor McLaughlin
c1006bd0ff
PostProcessing: Allow fragment coordinate access from shader
2020-09-13 18:50:40 +10:00
Connor McLaughlin
60ed9e7191
PostProcessingShader: Fix errors in shader parsing
2020-09-13 18:39:40 +10:00
Connor McLaughlin
a053f389bd
VulkanHostDisplay: Don't choke when we lose the surface
2020-09-13 14:37:00 +10:00
Connor McLaughlin
26dff586f3
OpenGLHostDisplay: Fix vertical alignment
2020-09-13 14:36:31 +10:00
Connor McLaughlin
c9372a674a
More build fixes...
2020-09-13 12:40:32 +10:00
Connor McLaughlin
a1f527eddf
VulkanHostDisplay: Build fix for libretro
2020-09-13 12:27:34 +10:00
Connor McLaughlin
68d08ddbcb
Merge branch 'postprocessing'
2020-09-13 12:14:21 +10:00
Connor McLaughlin
3847be86b0
Fix a bunch of random warnings
2020-09-13 11:54:51 +10:00
Silent
95d5417017
Fix -resume causing a quiet exit if there is no resume savestate
2020-09-12 19:58:37 +02:00
Connor McLaughlin
2819715260
FrontendCommon: Add a post processing implementation
2020-09-13 01:23:43 +10:00
Silent
cf513c1c24
Simplify quicksave/quickload logic
2020-09-12 16:07:22 +02:00
Connor McLaughlin
6f250a4ff7
GPU/HW: Add JINC2 and xBRZ texture filtering options
...
Shaders ported from beetle-psx.
2020-09-12 00:26:34 +10:00
Connor McLaughlin
5b17ad11a7
GameList: Fix cache corruption after scanning for new games
2020-09-10 00:23:24 +10:00
Connor McLaughlin
03f052e12e
FrontendCommon: Add auto cheat loading option
2020-09-09 23:44:02 +10:00
Connor McLaughlin
9a52c54c2f
Vulkan: Don't force debug device/validation layers
2020-09-08 17:22:34 +10:00
Connor McLaughlin
455f359125
FrontendCommon: Fix descriptor/image validation errors in imgui render
2020-09-08 11:44:54 +10:00
Connor McLaughlin
9bb278b166
CommonHostInterface: Fix crash on shutdown when using save state selector
2020-09-06 21:03:27 +10:00
Connor McLaughlin
d5d79e952c
Fix CMake build
2020-09-06 18:37:10 +10:00
Connor McLaughlin
726e5d46b1
Merge pull request #821 from CookiePLMonster/d3d11-memleaks
...
Fix D3D11 resource leaks
2020-09-06 17:59:20 +10:00
Connor McLaughlin
75ad685ae8
CommonHostInterface: Fix incorrect version error string in save state selector
2020-09-06 17:48:58 +10:00
Connor McLaughlin
2c36750a0e
VulkanHostDisplay: Fix imgui image textures not rendering
2020-09-06 17:47:23 +10:00
Connor McLaughlin
ac6b9dc87f
dep/imgui: Move implementations to frontend-common
2020-09-06 17:28:19 +10:00
Silent
33df4ab1bd
Seek before reading save state screenshot
...
Fixes corrupted thumbnails in the save state UI
2020-09-05 21:46:46 +02:00
Silent
89e0290d06
Fix resource leaks in AutoStagingTexture::EnsureSize and D3D11HostDisplay::DownloadTexture
2020-09-04 23:44:19 +02:00
Connor McLaughlin
a2eaaf0e89
PGXP: Allocate large storage dynamically
...
This causes performance issues on ARM otherwise.
2020-09-03 00:11:40 +10:00
Connor McLaughlin
b2057ac6cc
GameSettings: Add disallow force NTSC timings trait
2020-09-02 00:03:53 +10:00
Connor McLaughlin
c9cefe4020
GameSettings: Add a bunch more user settings
2020-09-02 00:00:48 +10:00
Connor McLaughlin
bf85fbe331
GameSettings: Fix widescreen hack not saving to cache
2020-09-01 20:32:55 +10:00
Connor McLaughlin
0af22825ad
FrontendCommon: Drop imgui deps for libretro build
2020-09-01 12:48:57 +10:00
Connor McLaughlin
6bbbb96d4b
Move GameList to FrontendCommon
...
Reduces libretro core dependencies further.
2020-09-01 12:46:44 +10:00
Connor McLaughlin
2b902f6d09
Merge pull request #806 from CookiePLMonster/axis-to-button-map
...
Allow mapping axes to buttons
2020-08-29 23:35:18 +10:00
Silent
057bf986c4
Allow mapping half axes to buttons
...
This allows to bind pressure sensitive NeGcon buttons to keyboard,
mouse and controller buttons
2020-08-29 14:19:28 +02:00
Connor McLaughlin
547cc4dbf6
Qt: Clear OSD messages on system stop
2020-08-29 22:19:09 +10:00
Connor McLaughlin
5115c75f88
CommonHostInterface: Clear input map before changing interface
...
Should hopefully fix the crash when changing controller backends.
2020-08-24 00:22:49 +10:00
Silent
8def7420c4
XInput: Try to use XInput 1.3 if 1.4 is not present
...
This simple change enables the use of Guide button
for Windows 7 users, provided they have DirectX End-User
Runtimes installed. XInput 9.1.0 does not have the hidden
XInputGetStateEx export, so it was not possible to poll for
Guide button.
2020-08-22 22:52:54 +02:00
Silent
1c4bbc8cde
XInput: Do not use XINPUT_CAPS_FFB_SUPPORTED
...
There are several reasons for this:
1. XINPUT_CAPS_FFB_SUPPORTED flag was introduced in Windows 8,
and therefore only supported by XInput 1.4
2. Despite the name, this flag does NOT indicate whether normal rumble
is supported. This flag is reserved for more complex force feedback,
and according to MSDN it may have went unused on Windows.
This fixes a future (the method is not used yet) bug where
XInputControllerInterface::GetControllerRumbleMotorCount would
erroreously report no rumble support.
2020-08-22 22:46:12 +02:00
Connor McLaughlin
3c46f7b44c
ControllerInterface: Add XInput controller backend
2020-08-22 16:50:19 +10:00
Connor McLaughlin
ab002e78e1
Support translating strings in emulator core
2020-08-22 13:06:20 +10:00
Hugo Hromic
1e10bef09e
SDLControllerInterface: Add support for optional game controller database
...
If an optional "gamecontrollerdb.txt" file exists in the user directory,
then SDL game controller mappings will be loaded from it.
There is an officially endorsed community sourced database in
https://github.com/gabomdq/SDL_GameControllerDB
2020-08-21 23:51:07 +01:00
Connor McLaughlin
bca609a2a6
Qt: Add option to disable per-game settings
2020-08-21 00:09:37 +10:00
Connor McLaughlin
60d3fffec1
Add per-game overrides (mainly for compatibility)
2020-08-21 00:09:37 +10:00
Connor McLaughlin
3ca1d5b275
CommonHostInterface: Fix lag when OSD message display disabled
2020-08-16 01:40:18 +10:00
Connor McLaughlin
10a46a7fd8
OSD: Add option to show display resolution
2020-08-16 00:20:11 +10:00
Connor McLaughlin
f5fb8186c7
Switch some messages to the OSD and increase durations
2020-08-16 00:20:10 +10:00
Connor McLaughlin
c5db7db182
Build: Compile source as UTF-8 with MSVC
2020-08-15 00:04:38 +10:00
jpchow26
2a43b8b182
Update ini_settings_interface.cpp ( #734 )
...
* Update ini_settings_interface.cpp
Fix compiler error on Windows.
2020-08-11 02:59:58 +10:00
Connor McLaughlin
5c6e92cdfc
GPU/HW: Disable coordinate clamping when unnecessary
2020-08-10 23:28:37 +10:00
Connor McLaughlin
ac42510780
INISettingsInterface: Fix saving/loading with Unicode paths
2020-08-09 04:40:21 +10:00
Connor McLaughlin
fbdc9ae631
CommonHostInterface: Remove additional API reset/restore on screenshot
2020-08-04 21:08:56 +10:00
Connor McLaughlin
0c1b637549
PGXP: Add initial implementation
2020-08-02 00:25:07 +10:00
Connor McLaughlin
b6f871d2b9
JIT optimizations and refactoring ( #675 )
...
* CPU/Recompiler: Use rel32 call where possible for no-args
* JitCodeBuffer: Support using preallocated buffer
* CPU/Recompiler/AArch64: Use bl instead of blr for short branches
* CPU/CodeCache: Allocate recompiler buffer in program space
This means we don't need 64-bit moves for every call out of the
recompiler.
* GTE: Don't store as u16 and load as u32
* CPU/Recompiler: Add methods to emit global load/stores
* GTE: Convert class to namespace
* CPU/Recompiler: Call GTE functions directly
* Settings: Turn into a global variable
* GPU: Replace local pointers with global
* InterruptController: Turn into a global pointer
* System: Replace local pointers with global
* Timers: Turn into a global instance
* DMA: Turn into a global instance
* SPU: Turn into a global instance
* CDROM: Turn into a global instance
* MDEC: Turn into a global instance
* Pad: Turn into a global instance
* SIO: Turn into a global instance
* CDROM: Move audio FIFO to the heap
* CPU/Recompiler: Drop ASMFunctions
No longer needed since we have code in the same 4GB window.
* CPUCodeCache: Turn class into namespace
* Bus: Local pointer -> global pointers
* CPU: Turn class into namespace
* Bus: Turn into namespace
* GTE: Store registers in CPU state struct
Allows relative addressing on ARM.
* CPU/Recompiler: Align code storage to page size
* CPU/Recompiler: Fix relative branches on A64
* HostInterface: Local references to global
* System: Turn into a namespace, move events out
* Add guard pages
* Android: Fix build
2020-07-31 17:09:18 +10:00
Connor McLaughlin
3edb8e113e
StringUtil: Add wide string<->utf8 conversion for Windows
2020-07-31 16:04:00 +10:00
Connor McLaughlin
8665a24eee
CommonHostInterface: Fix crash when there's no controller interface
2020-07-26 23:59:47 +10:00
Albert Liu
79576ca956
AnalogController: Expose axis scale setting to frontend
2020-07-24 19:18:41 -07:00
Connor McLaughlin
4a3e5ed644
VulkanHostDisplay: Fix custom crosshair rendering on NVIDIA
2020-07-24 02:40:46 +10:00
Albert Liu
855fc9a31c
CommonHostInterface: Prevent some potential null pointer dereferences
2020-07-21 17:14:11 -07:00
Connor McLaughlin
68d98af497
Qt: Remove usage of QString where possible for settings
2020-07-21 20:10:06 +10:00
Connor McLaughlin
eb7da791ea
CommonHostInterface: Fix command line help not printing on Windows
2020-07-21 20:09:54 +10:00
Albert Liu
79adabeb91
CommonHostInterface: Bump to settings version 3
...
This is required for phasing out QSettings usage because game paths were
being saved using the QSettings multi-value format, which is
incompatible with SimpleIni.
2020-07-16 20:35:49 -07:00
Connor McLaughlin
8febf5df04
D3D11HostDisplay: Fix reversed feature level order
2020-07-12 00:44:13 +10:00
Connor McLaughlin
d6ec1fd84e
Build fix
2020-07-10 14:46:44 +10:00
Connor McLaughlin
c01854e9d1
Define LIBRETRO macro when building core, skip swap chain
2020-07-10 14:02:45 +10:00
Connor McLaughlin
a5fe740e30
Fix a bunch of compiler warnings
2020-07-09 13:30:16 +10:00
Connor McLaughlin
60a739e305
D3D11HostDisplay: Add __has_include check for dxgi1_5.h
2020-07-09 13:24:56 +10:00
Connor McLaughlin
5984f977ca
D3D11HostDisplay: Ensure we only get feature level 10-11
2020-07-09 13:00:31 +10:00
Connor McLaughlin
97a946bd62
CommonHostInterface: Implement frame step hotkey
2020-07-08 02:05:36 +10:00
Connor McLaughlin
76cb52407b
SDLControllerInterface: Init joystick API as well
2020-07-06 02:47:33 +10:00
Connor McLaughlin
b9ffca1ddf
libretro: Vulkan renderer support
2020-07-04 22:14:07 +10:00
Connor McLaughlin
2c4fce3f0d
D3D11HostDisplay: Don't create swap chain for headless
2020-07-04 17:37:50 +10:00
Albert Liu
0a0a2024fd
SDLControllerInterface: Prefer cbutton.which for button events
...
Functionally the same as caxis.which due to SDL_Event union, but prefer
using SDL_ControllerButtonEvent members for button events.
2020-07-02 17:45:44 -07:00
Connor McLaughlin
655dff84e2
VulkanHostDisplay: Fix software cursor rendering
2020-07-01 01:57:25 +10:00
Connor McLaughlin
400ee3d9b3
OpenGLHostDisplay: Fix software cursor rendering
2020-07-01 01:57:25 +10:00
Connor McLaughlin
8cd9e0887e
libretro: Use framebuffer view dimensions not texture dimensions
2020-07-01 01:57:25 +10:00
Connor McLaughlin
ed6065d7f5
D3D11HostDisplay: Fix software cursor rendering
2020-07-01 00:56:46 +10:00
Connor McLaughlin
4dc9e10777
HostInterface: Support per-controller-type settings
2020-07-01 00:56:46 +10:00
Connor McLaughlin
2a38090e7a
HostDisplay: Move most backend logic to FrontendCommon
2020-06-30 03:03:56 +10:00
Albert Liu
1a45ee3018
CommonHostInterface: Use largeImage fields in Discord presence payload
...
Fixes application icon not showing up in Discord Rich Presence.
2020-06-26 22:28:48 -07:00
Connor McLaughlin
58b0e6859a
Frontend: Reset/restore GPU state before saving screenshot
...
Fixes driver crashes in Vulkan.
2020-06-27 02:59:58 +10:00
Albert Liu
293c2f50cd
ControllerInterface: Make axis-to-button deadzone customizable
2020-06-23 08:15:17 -07:00
Albert Liu
6b7c068f83
ControllerInterface: Implement axis scaling for axis-to-axis mappings
...
This feature allows us to work around analog stick range issues at the
intercardinal directions in certain titles (e.g. Rockman DASH 2) caused
by modern controllers having a tighter logical range of reporting than
PS1 analog controllers.
2020-06-23 08:14:37 -07:00
Connor McLaughlin
eaca5eca07
GPU/Vulkan: Use Metal layer instead NSView on macOS.
2020-06-22 15:58:07 +10:00
Connor McLaughlin
f846817848
Vulkan: Fix crash when opening settings window -> resizing
2020-06-22 15:58:00 +10:00
Connor McLaughlin
1455e793d5
Vulkan: Fix crash when drag-resizing window
2020-06-22 15:57:54 +10:00
Connor McLaughlin
77291096db
Settings: Add GPU adapter option and hook up to D3D11/Vulkan
2020-06-20 03:34:19 +10:00
Connor McLaughlin
1b5f8db2fc
Vulkan/Context: Support specifying GPU to use
2020-06-20 03:34:19 +10:00
Connor McLaughlin
7fce9b102e
FrontendCommon: Add GPU enumeration methods to D3D11/Vulkan host displays
2020-06-20 03:34:19 +10:00
Connor McLaughlin
1e26ded73c
SDL: Use FrontendCommon D3D11 host display wrapper
2020-06-20 03:34:19 +10:00
Connor McLaughlin
6eb2079088
FrontendCommon: Add D3D11 helper for host display
2020-06-20 03:33:34 +10:00
Connor McLaughlin
6aacf0019a
FrontendCommon: Add a Vulkan host display interface
2020-06-19 00:18:19 +10:00
Connor McLaughlin
63cc4ab197
CommonHostInterface: Release save state selector before display
...
This can have GPU objects, so needs to be released first.
2020-06-19 00:16:59 +10:00
Albert Liu
8a94fc944a
CommonHostInterface: Fix minor log message typo
2020-06-16 09:53:18 -07:00
Connor McLaughlin
8d2c7db224
Qt: Source input profiles from program and user directory
...
This way Linux users as well as Windows users who use the Documents
user directory can use the shipped input profiles.
2020-06-12 02:47:40 +10:00
Connor McLaughlin
075380f8e0
Move most helper logic from base HostInterface to FrontendCommon
2020-06-09 02:35:37 +10:00