Commit graph

164 commits

Author SHA1 Message Date
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 922e17f677.
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
Connor McLaughlin b9954a943a CommonHostInterface: Default hotkeys for new save state UI
- F1: Load
- F2: Save
- F3: Select Previous
- F4: Select Next
2020-04-21 03:07:53 +10:00
Connor McLaughlin 2a710798cc CommonHostInterface: Add save state selector UI 2020-04-21 03:07:40 +10:00
Connor McLaughlin 277c03aca0 Add auto-generated Git version to window titles 2020-04-17 02:10:56 +10:00