Commit graph

744 commits

Author SHA1 Message Date
Connor McLaughlin 287b1e1abc D3D12HostDisplay: IDXGIDevice is not a parent of ID3D12Device 2021-10-29 14:00:30 +10:00
Connor McLaughlin 25f69e7f8c CDROM: Special case immediate GetlocP after play/read before int
Fixes CDDA in Mad Panic Coaster.
2021-10-29 13:16:42 +10:00
Connor McLaughlin ccf5006bc8
Merge pull request #2668 from CookiePLMonster/dump-verification
Implement image verification
2021-10-25 17:30:20 +10:00
Connor McLaughlin ff34fb22e5 CommonHostInterface: Save/load autofire to input profiles 2021-10-25 17:27:41 +10:00
Connor McLaughlin 3b66acd395 CommonHostInterface: Remove unused variable in DrawEnhancementsOverlay 2021-10-25 17:27:41 +10:00
Silent 85ea9a629a
Add image verification
"Verify Dump" is now removed, now both hash calculation
and image verification are done in one step.
After a successful hash calculation, the button is replaced with
a "Search on Redump.org" button that opens a web browser
on Redump's search page.
2021-10-23 22:19:39 +02:00
Connor McLaughlin c0a29f7bfd Fix a few warnings over the place 2021-09-26 09:56:17 +10:00
Connor McLaughlin bacd834840 Cheevos: Use safe memory access routines 2021-09-15 12:24:33 +10:00
Silent 4fb39b6d9e
CommonHostInterface: Fix broken word wrap in DrawOSDMessages 2021-09-13 22:45:41 +02:00
Connor McLaughlin d1977b20a4 SDLControllerInterface: Fix compilation on older SDL versions (ugh) 2021-09-08 11:46:04 +10:00
Connor McLaughlin 4b31806bc9 SDLControllerInterface: Add option for PS4/PS5 enhanced mode 2021-09-08 11:29:25 +10:00
Silent 6c70d7b8b3
Cheats: Call ApplyOnDisable on disabling cheats from the list
Fixes an inconsistency in disabling cheats between the list
and the Cheat Manager.
2021-08-25 18:15:32 +02:00
Connor McLaughlin abe9c0d438 GameList: Use display name for exe/psf titles 2021-08-21 16:58:10 +10:00
Connor McLaughlin 521d20bcd2 CommonHostInterface: Add display enhancement settings option 2021-08-15 14:23:20 +10:00
Connor McLaughlin bba6ad4a84 CommonHostInterface: Remove EnumerateOSDMessages() 2021-08-15 14:23:20 +10:00
Connor McLaughlin e6ea6358a0 CommonHostInterface: De-duplicate OSD messages from FS UI 2021-08-15 14:23:20 +10:00
Connor McLaughlin 4d9aa5ecdf CommonHostInterface: De-duplicate stats overlay from FS UI 2021-08-15 14:23:20 +10:00
Connor McLaughlin eaad87ab4f CommonHostInterface: Make timer resolution increased static 2021-08-15 14:23:20 +10:00
Connor McLaughlin 28d3c0768a NoGUI: Move default quick menu bind out of CommonHostInterface 2021-08-15 14:23:20 +10:00
Connor McLaughlin 929aa2f3d1 OpenGLHostDisplay: Fix 16-bit display on GLES2 2021-08-12 21:31:40 +10:00
Connor McLaughlin 3f3607548f CommonHostInterface: Make status indicators toggleable 2021-08-12 21:31:40 +10:00
Connor McLaughlin 1acaff2160 CommonHostInterface: Add FF/Rewind/Pause indicators to non-fullscreen-UI 2021-08-12 21:31:40 +10:00
Connor McLaughlin 4f190aa902 CommonHostInterface: Move fonts/logo to resources directory 2021-08-12 21:31:40 +10:00
Connor McLaughlin 50a09384e1 CommonHostInterface: Add onscreen indicator for rewind 2021-08-07 12:07:04 +10:00
Connor McLaughlin 8bea6e1530 GPU/Vulkan: Fix warnings introduced by #2438 2021-08-07 12:01:02 +10:00
Connor McLaughlin 653453b1ee CommonHostInterface: Silence fast forward/turbo messages when using FS UI 2021-08-07 11:59:35 +10:00
Connor McLaughlin c6c9abcb1c
Merge pull request #2438 from Wunkolo/vk-debug
GPU/Vulkan: Add debug utility functions
2021-08-07 11:32:20 +10:00
Wunkolo 98089180c0 GPU/Vulkan: Add debug utility functions
Adds a way to set the name of vulkan
objects, and automatically determining their `VkObjectType` enum value
at compile-time. As well as a utility-object for creating debug-scopes
for `VkQueue` and `VkCommandBuffer` objects. `DebugScope` objects will
automatically emit `Begin` and `End` commands within the ctor and dtor
and allow for C++ scopes to name and color sections of a vulkan command.
These DebugScopes are also able to be nested within each other and will
automatically pick a color depending on the current recursive depth.

These functions are all null-stubbed in non-debug compilations.
2021-08-01 10:56:56 -07:00
Connor McLaughlin b9d238d28b CommonHostInterface: Fix crash in FS UI when scale changes 2021-08-02 00:54:00 +10:00
Connor McLaughlin b8bd545ee9 CommonHostInterface: Fix debug console toggling not applying 2021-07-29 13:44:48 +10:00
Connor McLaughlin 0af334bba5 Qt: Fix game properties being inaccessible in batch mode 2021-07-27 18:24:54 +10:00
Connor McLaughlin 21938e14c6 CPU/Recompiler: Implement block linking 2021-07-24 13:07:11 +10:00
Connor McLaughlin 607cb8dbb7 VulkanHostDisplay: Don't crash when headless 2021-07-23 18:33:52 +10:00
Connor McLaughlin 09c65b48b8 D3D12HostDisplay: Fix headless rendering 2021-07-23 18:08:57 +10:00
Connor McLaughlin be9427499b D3D11HostDisplay: Fix headless rendering 2021-07-23 18:07:30 +10:00
Connor McLaughlin e17c93ab04 D3D12HostDisplay: Fix incorrect resource state in DownloadTexture() 2021-07-22 13:58:03 +10:00
Connor McLaughlin cebf8957e6 D3D12HostDisplay: Implement RenderScreenshot() 2021-07-22 13:58:03 +10:00
Connor McLaughlin a747e15ac7 D3D12HostDisplay: Fix possible panic on fullscreen switch 2021-07-22 13:36:08 +10:00
Connor McLaughlin 3cc7802897 GameList: Scan hidden files 2021-07-21 20:26:00 +10:00
Connor McLaughlin b01d49fa52 CommonHostInterface: Enable rewind for Android 2021-07-17 20:14:40 +10:00
Connor McLaughlin efaf3d6ce5 Qt: Display warning before allowing cheats 2021-07-17 15:13:35 +10:00
Connor McLaughlin 21460c1924 FullscreenUI: Disable exclusive fullscreen resolution for UWP
It's not supported.
2021-07-16 23:34:39 +10:00
Connor McLaughlin ab9109f3b1 FullscreenUI: Add undo load state to load menu 2021-07-13 22:41:29 +10:00
Connor McLaughlin 921c5cdfbf CommonHostInterface: Always wait for audio buffer fill
Fixes underflows on booting, at the cost of enforcing the
user-configured minimum latency.
2021-07-13 22:41:29 +10:00
Connor McLaughlin 5fa07999e7 D3D12HostDisplay: Fix debug violation in DestroyRenderSurface() 2021-07-13 14:17:04 +10:00
Silent 382595ff71
Fix POST messages
Fixes rich presence in RetroAchievements
2021-07-12 20:36:33 +02:00
Connor McLaughlin a32ef4a963 CDROMAsyncReader: Support reading ahead more sectors 2021-07-12 21:14:06 +10:00
Connor McLaughlin b10379fc7c FullscreenUI: Fix swapped audio/enhancement titles 2021-07-11 17:20:41 +10:00
Connor McLaughlin efd4c70664 XAudio2OutputStream: Fix volume not applying 2021-07-11 17:19:29 +10:00
Connor McLaughlin b0adcb5ea6 FrontendCommon: Add HTTPDownloaderUWP 2021-07-11 15:20:38 +10:00
Connor McLaughlin 99018b51b4 FrontendCommon: Support UWP in helper classes 2021-07-11 15:20:38 +10:00
Connor McLaughlin 281f7c5789 Build: Add UWP configurations 2021-07-11 14:13:59 +10:00
Connor McLaughlin 4bec982ca8 D3D12HostDisplay: Fix incorrect height when streaming updates 2021-07-11 13:43:47 +10:00
Connor McLaughlin 14e7f8fd13 GPU: Add D3D12 renderer 2021-07-10 21:45:10 +10:00
Connor McLaughlin 5da9edceb9 Build: Unify MSBuild options in props files 2021-07-10 21:45:10 +10:00
Connor McLaughlin 7caa5c09dd Qt: Add option to reset to defaults 2021-07-09 13:07:41 +10:00
Connor McLaughlin 8f3162675f Warning fixes 2021-07-07 19:54:13 +10:00
Connor McLaughlin 0c4629bda2 CommonHostInterface: Compile warning fix 2021-07-04 22:17:46 +10:00
Connor McLaughlin 9756168940 CommonHostInterface: Don't reset volume when fast forwarding 2021-07-04 21:53:02 +10:00
Connor McLaughlin 8be2b66ebb CommonHostInterface: Remove system paused/resumed message 2021-07-04 16:02:16 +10:00
Connor McLaughlin 4ebca591fd FullscreenUI: Fix enable toggle not applying 2021-07-04 14:46:51 +10:00
Connor McLaughlin 7366d0fcff FullscreenUI: Fix start file running inside UI call 2021-07-04 14:46:51 +10:00
Connor McLaughlin 3da6c604d7 CommonHostInterface: Scale full axis to half axis bindings 2021-07-03 21:09:10 +10:00
Connor McLaughlin 4ddab3609d FullscreenUI: Fix settings menu offscreen with debug menu 2021-07-03 16:50:51 +10:00
Connor McLaughlin 24306be757 CommonHostInterface: Add save state backup option 2021-07-03 16:50:51 +10:00
Connor McLaughlin 762ab3ff43 CommonHostInterface: Add undo load state feature 2021-07-03 16:50:51 +10:00
Connor McLaughlin 0d86d85752 FullscreenUI: Support binding half axes 2021-07-03 15:11:45 +10:00
Connor McLaughlin 0ceb0f7a4a SDLControllerInterface: Support half axis bindings 2021-07-03 15:04:14 +10:00
Connor McLaughlin a51fc5a149 XInputControllerInterface: Support half axis bindings 2021-07-03 15:04:02 +10:00
Connor McLaughlin 895f4d6fea EvdevInputControllerInterface: Support half axis bindings 2021-07-03 15:03:36 +10:00
Connor McLaughlin b5baee7c8c DInputControllerInterface: Support half axis bindings 2021-07-03 15:03:21 +10:00
Connor McLaughlin 4f96eb80a6 FullscreenUI: Move sync to host refresh to display settings 2021-07-03 13:18:11 +10:00
Connor McLaughlin 62d7608ef2 CommonHostInterface: Fix uncapped fps during pause in fullscreen UI 2021-07-03 13:18:11 +10:00
Connor McLaughlin b2a5f35d44 GameList: Add ability to exclude/filter paths 2021-07-02 12:24:27 +10:00
Connor McLaughlin 435865b45d FullscreenUI: Redesign settings window 2021-06-30 19:12:56 +10:00
Connor McLaughlin 7967b940d6 FullscreenUI: Fix autofire locking menu up 2021-06-30 19:12:47 +10:00
Connor McLaughlin 5865064387 FrontendCommon: Add XAudio2 audio backend 2021-06-30 15:15:49 +10:00
Connor McLaughlin 911e9a37f1 WIN32 macro -> _WIN32 2021-06-30 14:38:07 +10:00
Connor McLaughlin 06b009f361 Warning fixes 2021-06-27 13:51:22 +10:00
Silent 67c92471d6 Slightly decrease spacing between header entries in Leaderboards
When Hardcore Mode was disabled and a specific leaderboard was previewed,
the Hardcore Mode notice text slightly overlapped the board legend.
2021-06-22 21:45:07 +10:00
Silent 5e9fc91669 Add support for measured achievements
These achievements show a progress bar in the Achievements screen
2021-06-22 21:45:07 +10:00
Silent d567f1e870 Upgrade rcheevos to v10.1.0 2021-06-22 21:45:07 +10:00
Connor McLaughlin 9d26a85967 OpenGLHostDisplay: Disable PBOs for streaming on Broadcom GPUs
glTexImage2D takes an extra 2-3ms when using PBOs for some reason,
despite the extra copy application-side...
2021-06-21 22:16:33 +10:00
Connor McLaughlin 2ab38aa47c FullscreenUI: Fix unpausing when closing achievement list 2021-06-21 12:16:27 +10:00
Connor McLaughlin 19dcd07f87 FullscreenUI: Fix compiling without cheevos 2021-06-21 12:16:27 +10:00
Connor McLaughlin 0f564885dc CMake: Link to IOKit on Mac 2021-06-20 19:21:51 +10:00
Connor McLaughlin 9027864d3d CommonHostInterface: Remove achievements/leaderboards hotkeys on Android 2021-06-20 19:18:01 +10:00
Connor McLaughlin d9412f9fcd FrontendCommon: Add option to inhibit screensaver 2021-06-20 15:50:59 +10:00
Connor McLaughlin 531845a0c7 FullscreenUI: Add rich presence to quick menu 2021-06-20 14:01:10 +10:00
Connor McLaughlin 8f5b2f24cf Cheevos: Update rich presence in test mode (but don't ping) 2021-06-20 13:40:15 +10:00
Connor McLaughlin a072455903 CommonHostInterface: Add hotkeys for opening leaderboards/achievements 2021-06-20 13:33:30 +10:00
Connor McLaughlin 1fe85a0d91
Merge pull request #2281 from CookiePLMonster/leaderboards-hardcore-only
Allow submitting entries to Leaderboards only in Hardcore Mode.
2021-06-20 01:19:56 +10:00
Connor McLaughlin 995bab72c4
Merge pull request #2279 from CookiePLMonster/retroachievements-discord-rpc
Show RetroAchievements rich presence in Discord-RPC
2021-06-20 01:18:51 +10:00
Silent 99fbd2827b
Allow submitting entries to Leaderboards only in Hardcore Mode.
This is a requirement from RetroAchievements.
2021-06-19 17:15:47 +02:00
Silent c86b7309d4
Show RetroAchievements rich presence in Discord-RPC 2021-06-19 14:13:10 +02:00
Connor McLaughlin e7b113f454 System: Don't reset performance counters when turboing 2021-06-19 21:15:50 +10:00
Silent c97aafb79d
Leaderboards: Implement missing teardown 2021-06-19 12:30:07 +02:00
Silent cce40a85dd
Implemented Leaderboards UI 2021-06-19 01:30:36 +02:00
Silent e361212bbf
Basic leaderboard integration
No UI yet, only sends unlocks to the server.
2021-06-17 20:43:50 +02:00
Connor McLaughlin 0e01a65e78
Merge pull request #2251 from CookiePLMonster/fullscreen-ui-exit-crash
Fix a crash when shutting down emulation from the Hardcore mode confirmation prompt
2021-06-15 23:09:16 +10:00
Silent ee0e7f15c1
Fix a crash when shutting down emulation from the Hardcore mode confirmation prompt 2021-06-15 11:37:02 +02:00
Connor McLaughlin 093904f930 CubebAudioStream: Set paused flag on main thread 2021-06-13 22:30:39 +10:00
Connor McLaughlin e1d9f93172 Cheevos: Suffix unofficial achievements in popup 2021-06-13 18:32:13 +10:00
Connor McLaughlin 0ba405ef2d
Merge pull request #2243 from CookiePLMonster/unofficial-achievements
Add an "Unofficial Test Mode" to allow unlocking non-core achievements
2021-06-13 18:25:50 +10:00
Silent 6c52031966
Add an "Unofficial Test Mode" to allow unlocking non-core achievements 2021-06-09 20:15:19 +02:00
Silent 283021f1a2
Don't allow resuming from Fullscreen UI when Hardcore mode is active 2021-06-09 19:13:07 +02:00
Silent 7d8f3d26a6
Do not allow loading save states via commandline in Hardcore mode 2021-06-08 18:43:43 +02:00
Silent d52b0e5dbb
Disallow underclocking in Hardcore mode 2021-06-08 18:38:51 +02:00
Silent 35b35c9212
Hide "Load" from the save state UI legend in Hardcore mode 2021-06-08 18:38:51 +02:00
Silent e21f2644d0
Refactor SystemBootParameters ownership 2021-06-08 18:38:12 +02:00
Connor McLaughlin 20afc1c4a1 Android: Handle some possible surface loss cases 2021-06-07 18:40:32 +10:00
Connor McLaughlin 350049826f Fix a bunch of compiler warnings 2021-06-04 13:14:30 +10:00
Connor McLaughlin 9845f1d76a DInputControllerInterface: Fix crash on shutdown 2021-06-03 14:05:11 +10:00
Connor McLaughlin 9aa386e96c System: Add option to load/apply image patches 2021-06-01 21:55:37 +10:00
Connor McLaughlin d64bc193fd SaveStateSelectorUI: Make select/next hotkeys apply immediately 2021-05-30 13:21:25 +10:00
Connor McLaughlin e8a21d32dc CommonHostInterface: Use string list for autofire bindings
Fixes autofire bindings on Android.
2021-05-25 14:14:37 +10:00
Connor McLaughlin 0979149236 EvdevControllerInterface: Implement axes 2021-05-25 13:20:15 +10:00
Connor McLaughlin 8f23a79d36 CommonHostInterface: Add public method to activate autofire 2021-05-24 21:25:08 +10:00
Connor McLaughlin 3f2c034869 CommonHostInterface: Fix always using playlist title for running game 2021-05-24 21:24:22 +10:00
Connor McLaughlin 3dc7ef92c2 GameSettings: Add CD-ROM seek speedup 2021-05-23 16:18:34 +10:00
Connor McLaughlin 98e4c181ca CDROM: Add seek speedup enhancement 2021-05-23 16:18:34 +10:00
Connor McLaughlin 817c7ef96a FrontendCommon: Mark host display files as final
Libretro has its own display classes now.
2021-05-23 16:18:15 +10:00
Connor McLaughlin 69cfcd22a2 CDImageCue: Replace libcue with in-house cue parser 2021-05-21 14:52:55 +10:00
Connor McLaughlin 2bde6d8e10 Android: Expose some of the GameSettings traits 2021-05-20 13:28:36 +10:00
Connor McLaughlin a6d76e787f GameSettings: Add trait for sw-renderer-for-readbacks 2021-05-20 13:28:36 +10:00
Connor McLaughlin 5d877250e9 GPU/HW: Add an option to use software renderer for readbacks 2021-05-20 13:28:36 +10:00
Connor McLaughlin 0e59a14c82 OpenGLHostDisplay: Fix crash when context creation fails 2021-05-20 12:19:29 +10:00
Connor McLaughlin 67f352339c CommonHostInterface: Add swap memory cards hotkey 2021-05-20 12:19:28 +10:00
Connor McLaughlin f3cceca805 NoGUI: Implement mouse cursor hiding in fullscreen 2021-05-20 12:19:28 +10:00
Connor McLaughlin 2fe1f3c2f7 VulkanHostDisplay: Wait for GPU idle on surface change 2021-05-20 12:19:28 +10:00
Connor McLaughlin c43957d385 FullscreenUI: Add controller autofire settings 2021-05-20 12:19:28 +10:00
Connor McLaughlin 01c869b704 CommonHostInterface: Implement controller autofire 2021-05-20 12:19:28 +10:00
Connor McLaughlin f5bec87f79 CommonHostInterface: Add Toggle PGXP CPU Mode hotkey 2021-05-20 12:19:28 +10:00
Connor McLaughlin fd462ab778 VulkanHostDisplay: Fix crash in RenderScreenshot() when display disabled 2021-05-20 12:19:27 +10:00
Connor McLaughlin 1f206421e8 CommonHostInterface: Prevent crash with fullscreen UI enabled 2021-05-20 12:19:27 +10:00
Connor McLaughlin 3d972955a7 FullscreenUI: Fix empty cheat menu leaving system paused 2021-05-20 12:19:27 +10:00
Connor McLaughlin a6d2324f0e ControllerInterface: Don't fire events when fullscreen UI active 2021-05-20 12:19:27 +10:00
Connor McLaughlin 00ffffe8c0 VulkanHostDisplay: Handle surface changes if this happens 2021-05-20 12:19:27 +10:00
Connor McLaughlin 08a815ad7b FullscreenUI: Make show status indicator setting local 2021-05-20 12:19:26 +10:00
Connor McLaughlin 172ba1fc32 CommonHostInterface: Fix controller masking for Start Disc 2021-05-20 12:19:26 +10:00
ValadAmoleo 1fa4460590 Added a toggle for persistent message. (#2106)
* Added a toggle for persistent message.

Added a toggle to display settings to disable persistent messages (ff, pause) in the fullscreen UI.

* Moved toggle for the icons to advanced settings.

Moved the toggle to the advanced settings as suggested.  Renamed the option from "show persistent messages" to "show speed icons", so that it's much more specific.
2021-05-20 12:19:26 +10:00
Connor McLaughlin 8dd36f4474 CommonHostInterface: Fix translatability of widescreen hack toggle message 2021-05-20 12:19:23 +10:00
ValadAmoleo 057c264d97 Widescreen Hotkey (#2080)
* Widescreen Hotkey

Added the ability to toggle Widescreen Hack and set the Aspect Ratio via a hotkey.

This is in response to Discussion #1912 (https://github.com/stenzek/duckstation/discussions/1912)

* Widescreen Hotkey Uses Settings

The Widescreen Hotkey now looks at the user's global or game settings when toggling.  This means:
When disabling the widescreen hack it uses a non-wide ratio as set by the user if available or auto if unavailable.
When enabling the widescreen hack it uses a wide ratio as set by the user if available or 16:9 if unavailable.

* Avoids loading the entire settings now.

Specifically loads the aspect ratio setting.
2021-05-20 12:19:23 +10:00
Connor McLaughlin e226464a35 GameSettings: Add GPU renderer and 8MB RAM options 2021-05-08 03:45:14 +10:00
Connor McLaughlin e84fe4d948 D3D11HostDisplay: Fix alpha channel of lightgun crosshair 2021-05-08 03:24:18 +10:00
Connor McLaughlin 8a39969a61 SDLControllerInterface: Prevent crash with out-of-range buttons 2021-05-08 03:24:18 +10:00
Connor McLaughlin e5a6103f74 ControllerInterface: Move axes/constants to derived class 2021-05-08 03:24:18 +10:00
Connor McLaughlin 9ff1f153be CommonHostInterface: Remove some rarely used default hotkeys 2021-05-08 03:24:18 +10:00
Connor McLaughlin e382df0d41 Support expanding RAM to 8MB (dev console) 2021-05-03 12:43:33 +10:00
Connor McLaughlin 19b84cbe4d GameList: Support getting covers without list entry 2021-05-02 14:57:52 +10:00