Albert Liu
f9dc1a7e80
Core: Add Multitap support
2021-02-26 21:04:12 -08:00
Connor McLaughlin
b4e4e5891d
Qt: Fix controller navigation for fullscreen UI
2021-02-27 01:17:44 +10:00
Connor McLaughlin
0ec2c87a0e
Implement RetroAchivements
2021-02-27 00:44:53 +10:00
Connor McLaughlin
a7e4d55d02
Move game settings apply to CommonHostInterface
2021-02-24 01:22:04 +10:00
Connor McLaughlin
8318cdb3c1
Move ImGui setup to common, and enable fullscreen UI in Qt
2021-02-24 01:22:03 +10:00
Connor McLaughlin
1fc53ff622
CommonHostInterface: Move settings interface pointer to base class
2021-02-24 01:21:43 +10:00
Connor McLaughlin
7501e89b7a
System: Add path/image to game change notification
2021-02-24 01:21:43 +10:00
Connor McLaughlin
77090865c1
OSD: Draw shadows on stats overlays (FPS/Resolution)
...
Makes it more visible on white backgrounds.
2021-02-24 01:21:43 +10:00
Connor McLaughlin
175abd4914
CommonHostInterface: Filter OSD messages in acquire for disabled case
2021-02-24 01:21:43 +10:00
Connor McLaughlin
75776f9b33
Merge pull request #1657 from CookiePLMonster/savestate-ui-legend
...
Save State UI: Add legend showing hotkeys
2021-02-24 01:21:24 +10:00
Silent
78f9136fb8
Save State UI: Cache legend strings
2021-02-22 19:34:51 +01:00
Connor McLaughlin
caae06dbf4
Merge pull request #1646 from piepacker/jake/osd_locking_opt
...
optimize locking mechanism for OSD messages (deadlock-proofing)
2021-02-22 12:21:12 +10:00
Connor McLaughlin
8c7aec2edf
CommonHostInterface: Ensure game list is loaded before booting
...
Fixes a possible race/crash when starting with a filename in NoGUI.
2021-02-19 01:37:56 +10:00
Jake Stine
c3c4181074
optimize locking mechanism for OSD messages, use EnumerateOSDMessages more generally
2021-02-15 16:53:40 -08:00
Silent
82469ac425
Fix a missing comma in the PGXP message
...
+ translations fixed to account for that
2021-02-15 23:36:39 +01:00
Connor McLaughlin
d4143399eb
OpenGLHostDisplay: Support fullscreen mode enumeration (DRM only)
2021-02-14 18:36:21 +10:00
Connor McLaughlin
c8efade20c
CommonHostInterface: Don't draw OSD/FPS as windows
...
Slight performance improvement.
2021-02-12 01:01:30 +10:00
Connor McLaughlin
de688615ff
Qt: Add Clear and Reset buttons to cheat manager
2021-02-12 01:01:30 +10:00
Connor McLaughlin
5f6fce9d98
CommonHostInterface: Remove Rewind hotkey on Android
...
It's not enablable in the UI anywhere.
2021-02-11 01:40:00 +10:00
Connor McLaughlin
701edb335a
Various warning fixes
2021-02-06 19:19:55 +10:00
Connor McLaughlin
1e8752759d
NoGUI: Set default settings if missing
2021-02-02 01:47:27 +10:00
Connor McLaughlin
91092847f8
CommonHostInterface: Restore display skip on exit/pause
...
Fixes CPU usage/controller moving too quickly in menus after fast
forwarding in big duck mode.
2021-02-01 02:08:52 +10:00
Connor McLaughlin
590513350c
NoGUI: Start in fullscreen when option or command line flag is set
2021-02-01 01:10:32 +10:00
Connor McLaughlin
61e4e6f140
Add "Fullscreen UI"
2021-01-31 17:10:27 +10:00
Connor McLaughlin
3a7d9f1725
CommonHostInterface: Add controller nav helpers
2021-01-31 17:10:27 +10:00
Connor McLaughlin
2dbb3325ff
CommonHostInterface: Tweak frame boundary for loading screen
2021-01-31 17:10:27 +10:00
Connor McLaughlin
e1bf362d13
CommonHostInterface: Extract ff/turbo hotkeys to functions
2021-01-31 17:10:27 +10:00
Connor McLaughlin
bed1abf0b8
CommonHostInterface: Add media path to save state info
2021-01-31 17:10:27 +10:00
Connor McLaughlin
556cd6d168
CommonHostInterface: Add enumerator for OSD messages
2021-01-31 17:10:27 +10:00
Connor McLaughlin
5aeabf028b
Qt: Install crash handler on startup
2021-01-31 17:00:57 +10:00
Connor McLaughlin
4bb3fb48f9
System: Add a new throttler/pacer which can catch up on lost time
...
This can result in worse frame pacing, so if you have a decent machine
you'll probably want to turn on "display all frames" in display
settings.
But, it's sadly needed for Android.
2021-01-28 21:04:23 +10:00
Connor McLaughlin
6eeca57a06
CommonHostInterface: Wrap OSD messages
2021-01-25 01:15:46 +10:00
Connor McLaughlin
516d685dd0
System: Add memory-only save states and rewind
2021-01-25 01:15:45 +10:00
Connor McLaughlin
6c6fdeb15e
HostDisplay: Make textures have levels/layers/samples attributes
2021-01-24 20:41:40 +10:00
Connor McLaughlin
cbee8fab66
CommonHostInterface: Throttle rumble updates to changes or every 100ms
...
These updates appear to be synchronous, and limit how fast we can fast
forward when controllers are connected via bluetooth.
2021-01-19 00:27:34 +10:00
Connor McLaughlin
37f9f118c4
Android: Add 'Open Pause Menu' hotkey
2021-01-13 19:26:24 +10:00
Connor McLaughlin
b5ffbfe826
Qt: Fix audio sliders not applying correctly
2021-01-13 02:37:04 +10:00
Connor McLaughlin
16ad54143b
HostInterface: Don't sleep when syncing to host refresh
2021-01-12 02:19:23 +10:00
Connor McLaughlin
bc5fb850d4
AudioStream: Reset resampler state on emptying buffers
2021-01-11 03:58:14 +10:00
Connor McLaughlin
43d01776dc
HostInterface: Add "Sync To Host Refresh Rate" option
2021-01-11 03:50:44 +10:00
Connor McLaughlin
54f5563321
Qt: Add turbo speed setting
2021-01-11 01:57:10 +10:00
Connor McLaughlin
a5f9aa11e1
Settings: Add audio resampling when running at non-standard speed
2021-01-11 01:14:32 +10:00
Connor McLaughlin
4fafb34251
CommonHostInterface: Move input map update to frontend
...
Fixes controller state getting reset when loading input profile.
2021-01-09 14:54:53 +10:00
Connor McLaughlin
b0398f5aa7
Qt: Add shutdown without saving menu option
2021-01-09 00:23:02 +10:00
Albert Liu
d860c14267
CommonHostInterface: Update rumble every frame regardless of change
...
Fixes SDL rumble cutting off early when a game sends the same motor
strength values every frame over a long duration.
2021-01-07 18:30:43 -08:00
johnnyruz
f7b0c0f493
Add cli parameter to override default settings file ( #1375 )
...
* Add cli parameter to specify alternate settings file
* fix issue with error message string parameter
2021-01-05 00:46:16 +10:00
Connor McLaughlin
e464a8c332
CommonHostInterface: Disable some hotkeys on Android
2020-12-30 19:42:14 +10:00
Connor McLaughlin
a3e4c61a0b
CommonHostInterface: Add a method to get top-level window handle
2020-12-29 22:49:52 +10:00
Connor McLaughlin
41b803ed2b
FrontendCommon: Add a hotkey to reload texture replacements
2020-12-26 00:47:03 +10:00
Connor McLaughlin
d320d5c830
GameSettings: Add game settings/hotkey for PGXP depth
2020-12-23 01:39:49 +10:00
Albert Liu
189656cbc4
CommonHostInterface: Fully clear controller section before loading profile
2020-12-22 03:24:51 +10:00
Albert Liu
a5f04f2a8e
CommonHostInterface: Don't save/load input profile rumble for motorless controller types
2020-12-22 03:24:51 +10:00
Connor McLaughlin
81aad196e8
HostInterface: Add -nocontroller CLI option to disable controller interface
...
Can use with buggy drivers where SDL is causing crashes.
2020-12-19 17:02:01 +10:00
Connor McLaughlin
fa0f177e51
HostInterface: Move PauseSystem from common to base
2020-12-17 11:57:47 +10:00
Connor McLaughlin
907e0de35a
FrontendCommon: Fix volume hotkeys starting at 0% when muted
2020-12-12 11:50:20 +10:00
Connor McLaughlin
98766a490f
Log: Change success to verbose and move down in ordering
2020-12-09 01:03:32 +10:00
Connor McLaughlin
678146b907
HostInterface: Add separate volume control for fast forwarding
2020-12-09 01:03:32 +10:00
Connor McLaughlin
c8f33e340b
Revert "CommonHostInterface: Don't use sleep throttle when syncing to audio at standard speed"
...
This reverts commit 922e17f6776aad24ea8886c7098b3e0a100c489f.
2020-12-07 02:44:23 +10:00
Connor McLaughlin
737a87b483
CommonHostInterface: Add a hotkey to toggle all cheats
2020-12-06 23:32:32 +10:00
Connor McLaughlin
922e17f677
CommonHostInterface: Don't use sleep throttle when syncing to audio at standard speed
2020-12-06 18:18:18 +10:00
Connor McLaughlin
eaafd0a00c
Cheats: Support parsing built-in database
2020-11-30 01:15:44 +10:00
Connor McLaughlin
16a6c1706e
Qt: Fix manual redump database downloading/updating
2020-11-28 00:42:09 +10:00
Connor McLaughlin
5f69216f70
HostInterface: Add OpenPackageFile method
2020-11-28 00:14:45 +10:00
Albert Liu
32e47fba93
System: Limit maximum loadable save state version
2020-11-26 19:51:45 -08:00
Connor McLaughlin
24fef20485
CommonHostInterface: Compress screenshots in background/use worker thread
2020-11-27 01:40:50 +10:00
Connor McLaughlin
df14fa4d75
CommonHostInterface: Fix compatible/old version save states not showing in browser
2020-11-27 01:40:50 +10:00
Connor McLaughlin
3185c5df0f
Merge pull request #1078 from CookiePLMonster/sdl-joystick-support
...
Add SDL_Joystick support
2020-11-21 18:37:20 +10:00
Connor McLaughlin
e4d2b7331b
CommonHostInterface: Add resize window to scale functions
2020-11-19 00:40:02 +10:00
Silent
2880b71b48
Support for SDL Joysticks
...
This enables use of non-controller peripherals,
such as DirectInput steering wheels or flight sticks
2020-11-15 16:12:39 +01:00
Albert Liu
d87ab23fec
ControllerInterface: Move axis scaling into AnalogController class
2020-11-11 23:55:23 -08:00
Connor McLaughlin
8cb89636eb
Android: Empty audio buffers when returning from activity
2020-11-08 00:22:35 +10:00
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
414bc30f24
HostDisplay: Implement exclusive fullscreen for D3D11 renderer
2020-11-02 00:56:05 +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
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
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
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
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
e7cfc69975
Cheats: Fix parsing of Retroarch cheats
2020-09-26 01:13:48 +10:00
Connor McLaughlin
b193374dd4
GameList: Add method to look up a cover image
2020-09-24 00:31:44 +10:00
Silent
92d0dabf54
Make path separators in UI more consistent
2020-09-20 00:08:17 +02:00
Silent
67392a37ec
Fix Discord RPC not reporting the game title
2020-09-19 15:00:03 +02: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
2492eb8678
FrontendCommon: Add a hotkey to reload post processing
2020-09-13 20:21:05 +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
Connor McLaughlin
03f052e12e
FrontendCommon: Add auto cheat loading option
2020-09-09 23:44:02 +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
75ad685ae8
CommonHostInterface: Fix incorrect version error string in save state selector
2020-09-06 17:48:58 +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
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
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
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
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
5c6e92cdfc
GPU/HW: Disable coordinate clamping when unnecessary
2020-08-10 23:28:37 +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
Albert Liu
855fc9a31c
CommonHostInterface: Prevent some potential null pointer dereferences
2020-07-21 17:14:11 -07:00
Connor McLaughlin
eb7da791ea
CommonHostInterface: Fix command line help not printing on Windows
2020-07-21 20:09:54 +10:00
Connor McLaughlin
a5fe740e30
Fix a bunch of compiler warnings
2020-07-09 13:30:16 +10:00
Connor McLaughlin
97a946bd62
CommonHostInterface: Implement frame step hotkey
2020-07-08 02:05:36 +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
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
Albert Liu
e1e3cf4f5a
CommonHostInterface: Simplify input profile saving
2020-05-27 17:49:06 -07:00
Connor McLaughlin
b17a5832e5
System: Simplify save state booting
...
Fixes memory card warning messages on load state.
2020-05-27 02:01:11 +10:00
Connor McLaughlin
6477e5fb54
CommonHostInterface: Add volume up/down/mute hotkeys
2020-05-10 00:54:23 +10:00
Connor McLaughlin
c67e877d82
CommonHostInterface: Fix -state command line parameter not working
2020-05-08 00:57:46 +10:00
Connor McLaughlin
2d6bdc1f82
Qt: Fix rumble not stopping on power off
2020-05-01 16:42:47 +10:00
Connor McLaughlin
1ed86f4897
Frontends: Add Discord Presence support
2020-05-01 01:01:53 +10:00
Connor McLaughlin
d8ab587153
HostInterface: Modify settings loading interface to support per-frontend settings
2020-05-01 01:01:50 +10:00
Connor McLaughlin
63692a012f
Qt: Add "New..." to input profile save button
...
This will ensure the profile gets saved to the correct location.
2020-04-27 01:05:03 +10:00
Connor McLaughlin
fce35d6dbe
CommonHostInterface: Support mouse bindings
2020-04-26 17:21:49 +10:00
Connor McLaughlin
a111e36ad7
CommonHostInterface: Add proper fast forward toggle
2020-04-26 01:22:44 +10:00