Commit Graph

60 Commits

Author SHA1 Message Date
refractionpcsx2 71eaef35e3 GSDumpRunner: Fix dump runner not starting 2023-12-27 19:10:47 +00:00
Stenzek d9abe10308 Misc: Remove explicit PCH include, switch to SPDX 2023-12-24 14:03:14 +10:00
refractionpcsx2 fdc0370cdf Perfmon: Fix statistics for GS dump runner to ignore idle frames 2023-12-23 19:17:01 +00:00
refractionpcsx2 18fea6440e DumpRunner: Fix script handling of paths containing square brackets 2023-12-23 18:40:38 +00:00
Stenzek af1a4ab07a FullscreenUI: Use PromptFont for keyboard/controller icons 2023-12-11 16:55:29 +10:00
lightningterror 724f92562c GSDumpRunner: Fix trailing whitespace warning.
Codacy.
2023-12-10 16:34:40 +01:00
Stenzek 3e8e1ed596 GS/HW: Don't align dirty rectangles to block sizes when updating
Don't align the area we write to the target to the block size. If the format matches, the writes don't need
to be block aligned. We still read the whole thing in, because that's the granularity that ReadTexture
operates at, but discard those pixels when updating the framebuffer. Onimusha 2 does this dance where it
uploads the left 4 pixels to the middle of the image, then moves it to the left, and because we process
the move in hardware, local memory never gets updated, and thus is stale.
2023-10-18 01:08:34 +10:00
Stenzek 0f542809a4 FullscreenUI: Use Qt Cover Downloader
The ImGui-based one was pretty janky, didn't support pasting, etc.
2023-10-02 15:28:24 +10:00
Stenzek 93a4e67813 Host: Remove resource read wrappers
No more wx, no need to abstract this.
2023-10-01 17:45:54 +10:00
refractionpcsx2 a5127c7c07 Build: Fix GS Dump Runner building 2023-09-24 22:06:58 +01:00
Stenzek e4a017fc00 Qt: Add callback for forcing achievements re-login 2023-07-27 20:40:58 +10:00
lightningterror a47563b12f GSRunner: Fixes runner compile.
Pad include from previous refactor.
2023-07-26 21:56:56 +02:00
Stenzek 24171787f8 ImGuiManager: Add software cursor support
Can be used to render a crosshair for GunCon.
2023-07-26 13:20:44 +10:00
Stenzek 4ef69248d0 GSRunner: Add readbacks to stats 2023-07-26 13:18:04 +10:00
Stenzek abadb7f80f GSRunner: Fix Unicode command line on Win32 2023-07-24 00:55:54 +10:00
Stenzek 1929b20a6c GSRunner: Add modal comparison
Click on a dump to open.
Left/right arrow keys switch between dumps.
Space bar toggles between before/after.
Escape closes.
2023-07-22 05:15:21 +01:00
Stenzek 3991ff5d3a GSRunner: Fix incorrect total/average counters 2023-07-22 05:15:21 +01:00
Stenzek d5776e8946 GSRunner: Dump/compare stats 2023-07-20 19:24:36 +10:00
Stenzek 1fa3111e67 Qt: Sync video capture state 2023-07-07 12:34:58 +10:00
Stenzek 6beaec8ba1 Common: Remove Exceptions
The satisfaction is immeasurable.
2023-06-30 21:37:44 +10:00
Stenzek 55e73bb4b9 MTGS: Convert to namespace 2023-06-25 12:54:14 +10:00
Stenzek f7bc05c735 Host: Add message translation functions 2023-06-20 22:46:00 +10:00
Stenzek 36c27188a4 VMManager: Refactor and improve boot process
[SAVEVERSION+] VM struct changes.

 - Serial/title is now linked to disc, instead of running ELF.
 - Save states can be created during BIOS boot.
 - Patches now apply based on the executing CRC, and only after the
   entry point starts executing (fixes multi-game discs).
 - Add "Fast Forward Boot" option.
 - Split achievements download and activation, downloads occur on
   initialization, but are not activated until after the ELF loads.
 - Prevent HostFS access while in PS1 mode.
 - Remove multiple sources of truth for ELF/CRC/etc.
 - Move ELF state from global scope to VMManager.
 - Prevent game fixes and hw fixes being active while booting game.
 - Simplify game update.
 - Flush recompilers after ELF loads. No point keeping boot code around
   which gets overwritten.
2023-06-17 17:38:43 +10:00
Stenzek 81da9fb5a4 Patch: Add new toggleable cheat and patch interface 2023-05-31 16:38:14 +01:00
Stenzek 90a6088d61 GSRunner: Fix log file writing
Wasn't getting flushed/closed on shutdown.
2023-05-21 08:52:45 +01:00
Stenzek 0f05967190 CommonHost: Purge and move functions to appropriate locations 2023-05-16 12:58:19 +01:00
Stenzek 512d24cea6 Misc: More build system cleanups
Set UTF-8 source file format globally.
Set permissive/compliance mode globally.
Get rid of include of base 3rdparty directory, be explicit.
Get rid of duplicated properties.
Get rid of leftover plugin property files.
2023-05-16 12:58:19 +01:00
refractionpcsx2 f4e338f9fb Build: Fix GS Runner compilation.
Stuff got moved, GS Runner wasn't told :)
2023-05-14 02:45:30 +01:00
Stenzek 1964bbc03a MSBuild: Rename pcsx2core to pcsx2
No need to differentiate it, since wx is gone.
2023-05-13 07:12:12 +01:00
Stenzek 083969a3d2 GS: Move DirectX helpers from common to GS 2023-05-06 03:40:00 +01:00
Stenzek befbf57191 GS: Refactor exclusive fullscreen yet again
Also acquire render window as late as possible.
Limits the duration that the main window isn't displaying anything.
2023-04-26 16:00:39 +01:00
Stenzek cd4434135e GSRunner: Don't skip dumps with dots in their filename 2023-04-08 13:36:45 +01:00
Stenzek 3cae728aba Qt: Recreate new window immediately when switching APIs 2023-04-08 12:42:34 +02:00
Stenzek 398cf43782 GS: Combine HostDisplay with GSDevice
GS/DX11: Don't throw bad_alloc on surface creation fail

GS: Link device and host display construction/destruction

FullscreenUI: Replace HostDisplayTexture with GSTexture

GS: Purge HostDisplayTexture

GS: Move everything in HostDisplay to GSDevice

GS: Move ImGui rendering to GSDevice

GS: Get rid of reset/store API state
2023-04-06 08:48:07 +01:00
Stenzek b453a6a46d GS/Vulkan: Actually disable shader cache when requested 2023-03-13 20:29:05 +00:00
Stenzek ac02bcbe33 GSRunner: Default to window but surfaceless when scripted 2023-03-13 20:29:05 +00:00
Stenzek 9efdeae3ac GSRunner: Reduce log spam 2023-03-13 20:29:05 +00:00
Stenzek 54e59e2f7b GSRunner: Support upscale parameter 2023-03-13 20:29:05 +00:00
Stenzek c7352d9e10 GS: Attempt to recreate device if GPU crashes 2023-02-11 15:33:55 +00:00
Stenzek 26d6c33163 GSRunner: Clear bindings and disable game settings 2023-02-09 17:29:47 +01:00
refractionpcsx2 52a1396e29 GSDumpRunner: Fix new options, add missing Preload Frame 2023-02-07 23:40:01 +00:00
refractionpcsx2 aea5c09825 GSDumpRunner: Ability to enable manual hw hacks for testing 2023-02-07 22:31:36 +00:00
refractionpcsx2 8c3c9a1219 GSDumpRunner: Tweaks to reduce console messages and redundant frame dumps 2023-02-07 22:31:36 +00:00
Stenzek f447aded57 Qt: Better handle VM-requesting-shutdown case
This was a bit wonky in batch mode before. Now all possible exit paths
close the application at the same point.
2023-01-28 13:40:55 +00:00
Silent f73b497b67 Host/VMManager: Remove save state cache invalidation and just populate lists every time
Fixes issues where inexistant save states are listed in dropdowns
2023-01-27 13:52:58 +00:00
Connor McLaughlin 4932834441 GSRunner: Release globals on shutdown 2023-01-23 16:49:24 +01:00
Stenzek ac3e7fbf44 MSBuild: Support building with clang-cl 2023-01-03 12:16:50 +00:00
Stenzek f240660a6e CMake: Post-WX cleanup
- Remove unused build options

 - Disable setcap by default
    Applications should not need to call sudo as part of the build process.

 - Rename XDG_STD to USE_LEGACY_USER_DIRECTORY
    By default, we use ~/.config/PCSX2 now.

 - Default Wayland support to on
    I don't think there's any systems worth supporting that don't have it.

 - Rework "install" logic
    Linux no longer installs to GIT_ROOT/bin, it builds direct to BUILD/bin.
    Saves a file copy, and running make install before running your developer
    build was always silly.

 - Don't require install target to build appimage
    AppImage creator now just adds the entire bin directory as-is.
    Everything needed is in there.
2023-01-02 14:13:42 +00:00
Stenzek 6aeca2c1e3 GSRunner: Warning fixes for clang-cl 2022-12-25 09:27:44 +00:00
Connor McLaughlin fc14b8f0da USB: Move to Qt (with *significant* refactoring) 2022-12-18 03:47:00 +00:00