Commit graph

309 commits

Author SHA1 Message Date
Stenzek a96111eaeb Misc: Swap make_array() for size deduction 2023-10-02 13:33:33 +10:00
Stenzek e2efec12b7 CDImageCHD: Add SSE/NEON implementation of CopyAndSwap() 2023-10-01 17:24:34 +10:00
Stenzek 01e505ec8b Common: Add intrin.h 2023-10-01 17:24:34 +10:00
Stenzek b1bb33a566 Common: Move CPU macros to types.h 2023-10-01 13:57:25 +10:00
Stenzek c1e6616e5f Misc: Warning fixes 2023-09-30 15:44:14 +10:00
Stenzek 4ad777f54f Qt: Add log window 2023-09-30 15:09:07 +10:00
Stenzek 28c13c0ac4 Common: Fix incorrect sign extension in sjis2ascii() 2023-09-30 12:20:46 +10:00
Stenzek 9112b6a850 CDImageCHD: Cache parent hashes 2023-09-27 21:01:09 +10:00
Stenzek a115b40ef7 Common: Split some routines into CocoaTools 2023-09-24 12:21:19 +10:00
Stenzek 2b89c11f5b CDImageCHD: printf -> fmt 2023-09-23 14:16:45 +10:00
Stenzek 9517638bcb GPUDevice: Don't recreate device on SW switch in GLES: 2023-09-23 14:14:52 +10:00
Stenzek 2a5b3aa695 OpenGLDevice: Fix reused pipeline creation failing without cache 2023-09-23 14:14:52 +10:00
Stenzek 7edb57ca15 Settings: Add Default renderer option 2023-09-23 14:14:52 +10:00
Stenzek c986d0ea78 OpenGLDevice: Persist GL_SCISSOR_TEST enabled 2023-09-23 14:14:52 +10:00
Stenzek 8dc9c225d7 OpenGLDevice: Keep scissor active on present clear
And disable depth test if set to always (match DX11).
2023-09-23 14:14:52 +10:00
Stenzek 6d18863d65 OpenGLDevice: Set unpack row length on create 2023-09-23 14:14:52 +10:00
Stenzek b678fcd874 GPUDevice: Move debug messages over to fmt 2023-09-23 14:14:52 +10:00
Stenzek 184b0a1a52 Misc: Swap most C format strings for fmt 2023-09-23 14:14:52 +10:00
Stenzek 92440bdfcf Log: Add fmt overloads 2023-09-23 14:14:52 +10:00
Stenzek ac0601f408 Common: Drop String, add SmallString 2023-09-23 14:14:52 +10:00
Stenzek 3c68543491 Bus: 16KB page compatibility for mmap fastmem 2023-09-23 14:14:52 +10:00
Stenzek 5bbb7cf906 OpenGLDevice: Fix crash when driver doesn't support binaries 2023-09-21 01:04:26 +10:00
Stenzek 45265c474c OpenGLDevice: Fix framebuffer clear getting delayed 2023-09-20 21:38:39 +10:00
Stenzek 0e0beec1f4 OpenGLDevice: Fix PBO and non-PBO path for SW renderer 2023-09-20 19:35:46 +10:00
Stenzek 3cd28f433b Controller: Use std::span 2023-09-20 17:11:29 +10:00
Stenzek 7e07d2feb8 GunCon: Add relative pointer binding 2023-09-20 17:11:29 +10:00
Stenzek 3a47c1eb52 Fullscreen: Light mode corrections 2023-09-20 00:10:08 +10:00
Stenzek 846f74c86d Achievements: Backports from PCSX2 2023-09-18 22:38:11 +10:00
Stenzek 76772ec39e PostProcessing/FX: Fix incorrect RCP_BUFFER{WIDTH,HEIGHT} 2023-09-18 22:38:11 +10:00
Stenzek 68b59ee748 CMake: Swap USE_ and WITH_ for ENABLE_
Consistency.
2023-09-17 12:36:52 +10:00
Stenzek d7bccfe9a4 ImGuiManager: Easing for OSD messages 2023-09-17 00:55:11 +10:00
Stenzek a37e89b52f CMake: Remove unsupported options 2023-09-16 19:00:29 +10:00
Stenzek c773c763ef Achievements: Switch to rc_client 2023-09-16 19:00:29 +10:00
Stenzek 631d1e7433 ImGuiFullscreen: Less jarring notifications 2023-09-16 19:00:29 +10:00
Stenzek a2f19143da MetalDevice: Support multisampling 2023-09-16 19:00:28 +10:00
Stenzek 6fbea12ed3 MetalDevice: Implement GPU timing 2023-09-16 19:00:28 +10:00
Stenzek b30c86ed75 Build: Improve MacOS support 2023-09-16 19:00:28 +10:00
Stenzek e6d5fa43af D3D11Device: Fix crash when switching renderers 2023-09-06 11:22:18 +10:00
Stenzek 519367555b Misc: Replace deprecated std::is_pod 2023-09-05 22:10:50 +10:00
Stenzek 60aca2fc4d Misc: Swap LIKELY/UNLIKELY macros for attributes 2023-09-05 22:10:50 +10:00
Stenzek adc124c759 Misc: Unreachable code warning fixes 2023-09-05 22:10:50 +10:00
Stenzek 605aa3c53a Misc: Swap gsl::span for std::span 2023-09-05 22:10:50 +10:00
Stenzek 391307efaa Common: Drop fallback path for HeterogeneousContainers 2023-09-05 21:37:04 +10:00
Stenzek d6cf88c14f VulkanDevice: Fix persistent descriptor allocation error 2023-09-05 20:17:32 +10:00
Stenzek 9d37332111 VulkanDevice: Prefer 8-bit formats for swap chain 2023-09-05 20:00:23 +10:00
Stenzek 80e3d29ab8 Misc: clang-cl warning clean-up 2023-09-03 14:30:26 +10:00
Stenzek 0076ab5cc4 System: Restore context after pumping messages 2023-09-03 13:14:22 +10:00
Stenzek 7ad1b8d093 GPU: Add wireframe rendering/overlay 2023-09-02 22:26:03 +10:00
Stenzek e804b5e701 GPUDevice: Support geometry shaders 2023-09-02 22:09:22 +10:00
Stenzek 5480e42cd1 ImGuiManager: Fix changing global scale through FSUI 2023-09-02 21:44:08 +10:00
Stenzek ea68c5b4b5 Build: Use dependency package on Windows 2023-09-02 21:44:08 +10:00
Stenzek cee4f93097 Build: Use precompiled headers 2023-09-02 21:44:08 +10:00
Stenzek 817129328b dep: Move WinPixEventRuntime to root 2023-09-02 21:44:07 +10:00
Stenzek 0da14a5442 GPU/Vulkan: Fix MSAA
And disable sample rate shading ("SSAA") on AMD, Intel, and broken
mobile drivers, because it doesn't work.
2023-09-01 21:25:12 +10:00
Stenzek 09e7a5843f GPU: Add scaling shader support
Currently only Bilinear (Sharp).
2023-08-31 23:38:11 +10:00
Stenzek a11c9faba9 OpenGLDevice: Lazily compile shaders 2023-08-30 22:20:39 +10:00
Stenzek 358f87a74d PostProcessing/ReShade: Fix up for GL/Vulkan 2023-08-30 02:04:07 +10:00
Stenzek 22eecc2b0a VulkanDevice: Fix multi-texture+UBO push descriptors 2023-08-30 02:03:22 +10:00
Stenzek df4d441b4b OpenGLDevice: Fix pipeline cache leaving fields uninitialized 2023-08-30 02:02:09 +10:00
Stenzek 8a40c7bf94 PostProcessing: Add ReShade .fx shader support 2023-08-30 00:44:01 +10:00
Stenzek b217f64bcf PostProcessing: Refactor config to use separate sections 2023-08-30 00:44:01 +10:00
Stenzek 8db8baf33f GPUDevice: Move display logic to GPU 2023-08-30 00:44:00 +10:00
Stenzek 6c185ca17b GPUDevice: Remove mouse pointer position 2023-08-30 00:44:00 +10:00
Stenzek 259193a8e5 GPUDevice: Move software cursor to ImGuiManager 2023-08-30 00:44:00 +10:00
Stenzek e23c9875d5 Misc: Split core and util Host 2023-08-30 00:44:00 +10:00
Stenzek 779e78ae61 MetalDevice: Forgot a mutability parameter 2023-08-26 21:51:53 +10:00
Stenzek 106c13635b MetalDevice: Fix initial depth state not being bound 2023-08-26 21:33:30 +10:00
Stenzek edc61b0095 GPUDevice: Fix crash when saving state with display off 2023-08-25 21:04:36 +10:00
Stenzek 8a0033dfb3 MetalDevice: Avoid inline texture uploads when unnecessary 2023-08-24 19:00:01 +10:00
Stenzek 1b9e72e3a6 MetalDevice: Fix render command encoder leak
and subsequent crash on shutdown.
2023-08-24 18:04:52 +10:00
Stenzek d750e4d417 VulkanDevice: Fix for MacOS 2023-08-24 18:04:48 +10:00
Stenzek 64998b49dc Util: Make Shift-JIS table static 2023-08-24 18:01:32 +10:00
Stenzek dc9c99438b Misc: Post-refactor cleanups 2023-08-24 18:01:32 +10:00
Stenzek 7a1af36e8d GPUDevice: Fix incorrect suffix on D3D shader cache 2023-08-23 17:31:41 +10:00
Stenzek 76b5b8ad06 MSBuild: Support building with clang-cl 2023-08-21 22:38:55 +10:00
Stenzek e3d9ba4c99 Rewrite host GPU abstraction
- Don't have to repeat the same thing for 4 renderers.
 - Add native Metal renderer.
2023-08-20 21:55:38 +10:00
Stenzek e57ad0b6aa Host: Backport translations cache
Note: You'll need a new command line for lupdate.

..\..\..\dep\msvc\qt\6.5.0\msvc2022_64\bin\lupdate.exe ../ ../../core/ ../../util/ -tr-function-alias QT_TRANSLATE_NOOP+=TRANSLATE,QT_TRANSLATE_NOOP+=TRANSLATE_SV,QT_TRANSLATE_NOOP+=TRANSLATE_STR,QT_TRANSLATE_NOOP+=TRANSLATE_FS,QT_TRANSLATE_N_NOOP3+=TRANSLATE_FMT,QT_TRANSLATE_NOOP+=TRANSLATE_NOOP -ts duckstation-qt_LANGUAGE.ts
2023-08-20 12:40:47 +10:00
Stenzek 39f64a03ee Common: Error/FileSystem backports 2023-08-20 12:40:47 +10:00
Stenzek a00a4391ca Common: DynamicHeapArray/FixedHeapArray 2023-08-19 21:18:28 +10:00
Stenzek bb60170d9a Move frontend-common to util/core 2023-08-16 01:13:00 +10:00
Stenzek 5b980dafa5 System: Refactor main loop
Reduces JIT exits.
Improves runahead performance.
2023-08-16 01:13:00 +10:00
Stenzek 4ebd34fcb3 MSBuild: Use project referencing instead of .lib linking 2023-08-16 01:12:59 +10:00
Stenzek 165b277421 CDImageCHD: Support loading parent/delta CHDs 2023-08-12 14:46:09 +10:00
Stenzek 06a8349162 dep/libchdr: Re-add progress precaching 2023-08-12 14:46:09 +10:00
Stenzek 4b70853daa dep: Bump libchdr to 54bfb87 2023-08-12 14:46:09 +10:00
Stenzek 9aa6c24620 System: Store game hash as well as serial 2023-05-15 23:39:07 +10:00
Stenzek 33f5d9cb9c System: Remove BIOS from save state
Makes the states smaller, as well as not creating potential piracy
issues when sending across the wire.
2023-03-16 19:34:01 +10:00
Connor McLaughlin 395e9a934b InputManager: Support inverted full axis
i.e. pedals
2023-01-15 15:13:54 +10:00
Connor McLaughlin 4eb6b90825 AudioStream: Fix building without SSE on Linux 2022-12-20 21:25:15 +10:00
Connor McLaughlin 8c7a192128 Misc: Add copyright/license statement to applicable files
Should've did this in the beginning.
2022-12-04 21:03:49 +10:00
Connor McLaughlin 239b585d8c AudioStream: Fix several-second-looping bug on underrun 2022-09-18 11:56:22 +10:00
Connor McLaughlin 3a5bf6d29b System: Move overlay checking to common 2022-08-27 16:52:24 +10:00
Connor McLaughlin cab51c6764 FullscreenUI: Re-enable most previously-missing settings 2022-08-26 01:26:55 +10:00
Connor McLaughlin 7bbacd2392 Misc: Remove unused code 2022-08-22 19:55:38 +10:00
Connor McLaughlin e2ecfa64e9 IniSettingsInterface: Make writes atomic
Fixes potential settings corruption if we crash while saving.
2022-08-10 17:48:35 +10:00
Connor McLaughlin 1db24e8014 IniSettingsInterface: Prevent multiple threads loading/saving at once 2022-08-10 17:26:52 +10:00
Connor McLaughlin 916900be5d Misc: More warning fixes 2022-08-10 14:33:31 +10:00
Connor McLaughlin 477bb3d554 Misc: Clean up a few warnings 2022-08-10 13:41:13 +10:00
Connor McLaughlin 4f5722c932 AudioStream: Fix compiling with clang/arm64 2022-07-31 16:38:45 +10:00
Connor McLaughlin 66caaf6103 AudioStream: Fix null output 2022-07-29 22:39:38 +10:00
Connor McLaughlin d012f65d4f AudioStream: Fix possible NaN in forced tempo update 2022-07-29 22:16:22 +10:00
Connor McLaughlin be5b979713 AudioStream: Make speed changes less poppy 2022-07-29 21:16:02 +10:00
Connor McLaughlin f6ff7e48c1 Build: Fix compiling for arm64/linux 2022-07-28 22:38:08 +10:00
Connor McLaughlin 68b5dd869c SPU: Add time stretched audio output 2022-07-28 22:10:47 +10:00
Connor McLaughlin 9b22f0564f Misc: Remove backported license text
For anyone trying to start drama, I have copyright over this code and
never signed a CLA, therefore can relicense it how I see fit (in this
case is no license, i.e. no rights, although the entire DuckStation as
is currently distributed is GPLv3).
2022-07-23 13:55:09 +10:00
Connor McLaughlin a1edddc59d CDROM: Revamp/improve preload image procedure 2022-07-23 13:55:09 +10:00
Connor McLaughlin 8d7fdae683 CDImagePPF: Precache underlying image when requested 2022-07-23 13:55:09 +10:00
Connor McLaughlin b42b5501f6 UI: Massive revamp, new features and improvements 2022-07-22 21:19:54 +10:00
Connor McLaughlin b7fbde31a7 Move utility classes from common to own static lib 2022-07-21 17:29:58 +10:00