Commit graph

5872 commits

Author SHA1 Message Date
Stenzek 3be02c53c1
GPU: Improve CRTC hblank accuracy
And implement Timer0 gating, it was missing previously.
2024-04-28 15:25:24 +10:00
Stenzek 5d20f4514d
PostProcessing: Use ShaderGen GLSL version string 2024-04-28 15:25:24 +10:00
Stenzek 295081fe62
Misc: Replace offsetof with constexpr-friendly OFFSETOF
Fixes build with clang-18.
2024-04-28 15:25:24 +10:00
Stenzek dc84c58c7c
D3D11Device: Fix GPU usage without vsync 2024-04-28 15:25:24 +10:00
Stenzek 7478f69c58
RegTest: Fix build again 2024-04-28 15:25:24 +10:00
Valtekken 5c48218866
Italian translation - Small consistency fixes (#3191)
Missed a few inconsistencies in the translation when I reworked it, they're now fixed.
2024-04-28 15:24:59 +10:00
Stenzek c9a0f7d6f2
Qt: Fix empty box on no-controller type 2024-04-27 14:12:11 +10:00
Stenzek 3e99084770
Settings: Fix double source of truth for controller names 2024-04-27 13:21:11 +10:00
Stenzek 5477f2eae2
HeapArray: Fix swap() not swapping size
Even though it's not used.
2024-04-27 13:18:36 +10:00
Stenzek f1f4bac8a8
Qt: Fix input profile ctype change not saving 2024-04-27 13:15:35 +10:00
Stenzek d80aa91d49
ImGuiOverlays: Fix >1 controller display 2024-04-27 12:41:47 +10:00
Stenzek 1fbb848c52
Misc: Add gstreamer fallback to PlaySoundAsync() 2024-04-26 20:49:45 +10:00
Stenzek 2fc9a6d834
CPU/NewRec: Work around clang <16 structured binding capture bug 2024-04-26 19:23:46 +10:00
Anderson Cardoso f7238a85b5
Atualização Português do Brasil (#3190)
Atualizado para a última versão.
2024-04-26 12:45:14 +10:00
Stenzek d2b9195c66
MemorySettingsInterface: Warning fix 2024-04-25 15:06:41 +10:00
Stenzek 1cdfca155d
Qt: Clean and remove empty game settings 2024-04-25 14:02:16 +10:00
Stenzek d6ffdb0242
RegTest: Build fix 2024-04-25 13:31:44 +10:00
Stenzek 5e9a47f82b
Qt: Add volume reset button 2024-04-25 13:24:04 +10:00
Stenzek 7548113afd
System: Move COM init to common code 2024-04-25 12:56:02 +10:00
Stenzek 425235fd31
INISettingsInterface: Fix file leak on Linux 2024-04-25 02:17:33 +10:00
Stenzek 4139bf63d8
AudioStream: Backport changes 2024-04-25 01:13:51 +10:00
Stenzek 921f5119b2
Qt: Handle sliders in per-game settings 2024-04-25 01:13:43 +10:00
Anderson Cardoso 6e78db3872
Atualização Português do Brasil (#3186)
Atualizado para a última versão
2024-04-23 16:27:04 +10:00
Marcin Mitura bfe3cf48b1
Polish localization updates (#3188)
Comply to latest changes:
- Translate new strings,
- Remove obsolete.
2024-04-23 16:26:58 +10:00
RSDuck 89c0d4900b
Fix post processing menu in the fullscreen UI (#3187) 2024-04-23 16:26:46 +10:00
Stenzek 52bdbf35db
Qt: Fix rare crash during update download
Thanks to Silent for debugging.
2024-04-23 16:26:04 +10:00
Stenzek b4999975db
System: Fix pause-on-start running unthrottled 2024-04-23 14:44:08 +10:00
Stenzek 106f2c10ba
Qt: Add tooltip for stretch/expansion advanced settings 2024-04-22 01:55:33 +10:00
Stenzek eb91fe31e2
Hotkeys: Add OSD toggle hotkey 2024-04-22 01:52:02 +10:00
Stenzek 3b8afb39f6
System: Don't try to fast boot non-PS1 discs 2024-04-22 01:44:04 +10:00
Stenzek 3fa2bd1d3a
System: Confirm shutdown if memory card is being written 2024-04-22 01:41:42 +10:00
Stenzek a5613fc815
System: Add OSD message when all enhancements are disabled 2024-04-22 00:38:46 +10:00
Stenzek b26a9556f7
System: Improve reset determinism 2024-04-22 00:19:44 +10:00
Stenzek 35f0d7f623
CPU: Update debug dispatcher flag on init 2024-04-22 00:08:16 +10:00
Stenzek 0fbc1a3a8a
AudioStream: Add surround expansion via FreeSurround 2024-04-21 23:30:46 +10:00
Stenzek d3c12fecb3
Qt: Move dump audio on startup out of settings 2024-04-21 20:28:20 +10:00
Stenzek 7d80cabf9f
BIOS: Remove questionable hashes
And add PS2 hashes.
2024-04-21 14:03:55 +10:00
Stenzek 8867bb129a
CMake: Tidy up build system
And fix Windows CMake... who knows how long for.
2024-04-20 21:19:31 +10:00
Stenzek 61301733d8
Qt: Purplerain -> Purple Rain 2024-04-20 18:34:50 +10:00
Valtekken a2d81bb9af
Final third of the translation (#3185) 2024-04-20 18:33:23 +10:00
Anderson Cardoso b478fd93b4
New Theme Added (#3184)
Added new theme : Purple Rain
2024-04-20 18:33:12 +10:00
Stenzek 1a0f6f62e5
Qt: Clarify controller settings labels 2024-04-20 18:32:36 +10:00
Stenzek 17b9736899
Misc: Use a 128b cache line size on Apple Silicon
Turns out it's not 64 bytes like I assumed. The things you learn.
2024-04-18 20:38:36 +10:00
Stenzek fd21dd9729
Qt: Shrink text box size in memory scanner 2024-04-18 20:38:36 +10:00
Stenzek 7135a641e9
Qt: Allow opening cheat manager while shutdown 2024-04-18 20:38:35 +10:00
Stenzek 60f12e77fa
Achievements: Fix fullscreen window height 2024-04-18 20:38:35 +10:00
Stenzek 8e9e855747
CDImageM3u: Fix forward slash entries on Windows 2024-04-18 20:38:35 +10:00
Valtekken d918705233
Massive Italian translation rework, part 2 (#3183)
* Massive Italian translation rework, part 2

At this point this is more of a complete retranslation than anything else, but it's almost done. Stops at line 9140, missing the final third.

* Small fixes

* Missing semicolon

Got distracted on typing out "&apos;", missing the semicolon and fucking up the whole build

* Another missing semicolon

Ditto.

* Wrong keystroke

Typed "&" instead of "%"
2024-04-18 00:42:35 +10:00
Stenzek 3bb36f95e2
FullscreenUI: Get rid of extra scrollbar in save state selector 2024-04-18 00:41:37 +10:00
Stenzek f666816943
ImGuiOverlays: Fix possible crash in save state selector 2024-04-18 00:40:31 +10:00
Stenzek 84b24c6228
Achievements: Fix HC mode activating on reset of non-cheevo game 2024-04-18 00:40:06 +10:00
Marcin Mitura ef05a80fd2
Polish localization updates (#3182)
Comply to latest changes:
- Translate new strings
2024-04-17 16:35:02 +10:00
zkdpower 79a7a8c444
Update the Simple-Chinese translation to latest. (#3181) 2024-04-17 16:34:51 +10:00
Anderson Cardoso f9b194477f
Atualização Português do Brasil (#3180)
Atualizado para a última versão.
2024-04-17 16:34:32 +10:00
Stenzek a5a72cd7ec
AudioStream: Fix a couple of errors in ReadFrames() resampler 2024-04-17 00:49:44 +10:00
Stenzek c1bf1e5369
Qt: Add binding layout for NegConRumble 2024-04-16 15:40:31 +10:00
Stenzek 147f48cc64
Qt: Simplify controller binding layout construction
And make it generate widgets when there's no template.
2024-04-16 15:40:31 +10:00
Víctor "IlDucci 1c392444a7
Spanish (Spain) translation update 2024/01/25 (#3102)
Updating the Spanish (Spain) translation with the latest strings. I should point out that between my last update and this one, the Spanish flag was removed from the Language menu selection.
2024-04-16 15:40:31 +10:00
Matheus Fraguas 07c012aee5
Negcon rumble (#3177)
* Implemented NeGcon with rumble. Code is a mix of the existing NeGcon AnalogController modes.

* Fix negcon id reply and analog/digital toggle.

* Implemented NeGcon with rumble. Code is a mix of the existing NeGcon AnalogController modes.

* Fix negcon id reply and analog/digital toggle.

* Update macros

* Code cleanup
2024-04-16 15:40:31 +10:00
Stenzek 4d8ed49b24
FullscreenUI: Fix gaps between some UI elements
By rounding sizes up to the nearest pixel.
2024-04-16 15:40:31 +10:00
Stenzek d2d6e397e6
NoGUI: Purge unused code 2024-04-16 15:40:30 +10:00
Stenzek 4e0c417add
FullscreenUI: Add "Open Containing Directory" 2024-04-16 12:49:54 +10:00
Stenzek 6e7a4c3909
FullscreenUI: Exit fullscreen for open-in-file-browser 2024-04-16 12:49:54 +10:00
Anderson Cardoso bc4b7f2af9
Atualização Português do Brasil (#3175)
Confirmadas 2 linhas de texto no modo big duck mode.
2024-04-16 12:49:54 +10:00
KamFretoZ 79ccd5f3c3
FullscreenUI: Wire up Open in File Browser functionality (#3178) 2024-04-16 12:49:54 +10:00
Valtekken 5ed362bd84
Massive Italian translation rework, part 1 (#3179) 2024-04-16 12:49:54 +10:00
Stenzek 797b82dcfa
Updater: Ensure forward slashes are converted to backslashes
Old versions may run the updater with forward slashes.
2024-04-16 12:28:37 +10:00
Stenzek 9eb9fc9dce
Qt: Fix drag/drop on Windows 2024-04-16 12:28:22 +10:00
Stenzek be1d558be1
GPU/HW: Fix black screen in Metal after vertex ID wraparound 2024-04-15 23:30:58 +10:00
Stenzek 9fd2994b73
Log: Fix crash with >1 instance + file log 2024-04-14 21:18:47 +10:00
Stenzek 4bcc5a312a
System: Remove log spam 2024-04-14 17:25:23 +10:00
Stenzek 5f915e1cbe
MetalDevice: Use shared SPIRV-Cross 2024-04-14 17:25:23 +10:00
Stenzek 3dedf5fdd5
FullscreenUI: Add missing latency stats option 2024-04-14 17:25:23 +10:00
Stenzek e9107bd140
VulkanDevice: Add env var for non-semantic debug info
Backport of 070068366f
2024-04-14 17:25:23 +10:00
Anderson Cardoso 06a29f6d95
Atualização Português do Brasil (#3174)
Atualizado para a última versão.
2024-04-14 16:26:08 +10:00
Marcin Mitura 6d167f1ffb
Polish localization updates (#3173)
Comply to latest changes:
- Translate new strings,
- Remove obsolete.
2024-04-14 16:25:59 +10:00
Stenzek c149d66d4d
System: Add 'Reduce Input Latency' option
i.e. pre-frame sleep.
2024-04-13 19:57:25 +10:00
Stenzek 6258cb9e0e
FullscreenUI: Various minor bug fixes 2024-04-13 19:57:25 +10:00
PugsyMAME 7adbedd341
Renamed Mem Scanner Op Text&added Virtual Address (#3172)
* Renamed Mem Scanner Op Text&added Virtual Address

Renamed the Memory Scanner Operator Text for clarity. Replaced '...' with 'Value' and 'Previous' with 'Previous Result'.
Also changed "Any Value" to "Any Value ('New Search' or 'Reset Result Value')", Any Valur should really be at the top of the index and the Previous Results should come before the other Value operators. But that's a job for another time.
The Virtual Address extra will display the virtual address of DuckStation's PSX RAM so it can be easily edited with the likes of HXD or another tool where the location of the virtual memory needs to be known.

* Replaced Mem Scanner Op Text with latest English text

Not touched the translations, just added the updated english text for the Memory Scanner "Operator:" text

* Rearranged  Memory Scanner Operator class

Re-arranged Memory Scanner Operator class into a more logical order - with likely frequency of use moving item up the list.

New Order:-
Better Order:-
Any Value ('New Search' or 'Reset Result Value')         x    Any.
Less Than Previous Result                                x    LessThanLast,
Less or Equal to Previous Result                         x    LessEqualLast,
Greater Than Previous Result                             x    GreaterThanLast,
Greater or Equal to Previous Result                      x    GreaterEqualLast,
Not Equal to Previous Result (Changed Value)             x    NotEqualLast,
Equal to Previous Result (Unchanged Value)               x    EqualLast,
Decreased By Value                                       x    DecreasedBy,
Increased By Value                                       x    IncreasedBy,
Changed By Value                                         x    ChangedBy,
Equal to Value                                           x    Equal,
Not Equal to Value                                       x    NotEqual,
Less Than Value                                          x    LessThan,
Less or Equal to Value	                                 x    LessEqual,
Greater Than Value                                       x    GreaterThan,
Greater or Equal to Value                                x    GreaterEqual

* Rearranged  Memory Scanner Operator class

Changes operator order to:-
Any Value ('New Search' or 'Reset Result Value')        
Less Than Previous Result                               
Less or Equal to Previous Result                        
Greater Than Previous Result                            
Greater or Equal to Previous Result                     
Not Equal to Previous Result (Changed Value)            
Equal to Previous Result (Unchanged Value)              
Decreased By Value                                      
Increased By Value                                      
Changed By Value                                        
Equal to Value                                          
Not Equal to Value                                      
Less Than Value                                         
Less or Equal to Value	                                
Greater Than Value                                      
Greater or Equal to Value

* Memory Scanner line references updates

Updated <location filename="../memoryscannerwindow.ui" line="???"/> line numbers for the Memory Scanner operation re-ordering.
These are currently the only 4 translation files that make reference to memoryscannerwindow.ui, the other 12 still reference cheatmanagerdialog.ui so not replicated for them as this would only partially fix them - so I left them alone as I hope there's some automated tools to handle it.

* Update src/duckstation-qt/memoryscannerwindow.cpp
2024-04-13 19:57:12 +10:00
zkdpower 01e06b338d
Update the Simple-Chinese translation to latest. 2024-04-12 21:07:16 +10:00
Stenzek f4fef36eba
MetalDevice: Use shader to clear current depth target 2024-04-12 21:07:16 +10:00
Stenzek e5a024ba85
MetalDevice: Add support for framebuffer fetch 2024-04-12 21:07:16 +10:00
shikulja 42ac79d42a
Update Russian translation (#3169) 2024-04-12 19:56:32 +10:00
Marcin Mitura 349ff42ce2
Polish localization updates (#3168)
Comply to latest changes:
- Translate VSync string,
- Remove obsolete.
Silent is based :3
2024-04-11 23:42:56 +10:00
Anderson Cardoso 4591fe8f84
Atualização Português do Brasil (#3167)
Atualizado para a última versão.
2024-04-11 23:42:43 +10:00
Stenzek bbdc31cad6
Qt: String fix 2024-04-11 23:21:50 +10:00
Anderson Cardoso 5a2215d305
Atualização Português do Brasil (#3165)
Atualizado para a última versão.
2024-04-11 22:54:57 +10:00
Marcin Mitura 7d85284626
Polish localization updates (#3166)
Comply to latest changes:
- Translate new strings,
- Remove obsolete strings.
2024-04-11 22:54:40 +10:00
Stenzek c017d04423
Qt: "Display Vertical Sync" => "Vertical Sync" 2024-04-11 22:53:02 +10:00
Stenzek e646096180
VulkanDevice: Fix validation errors 2024-04-11 22:53:02 +10:00
Stenzek 7344661801
GPUDevice: Split submission and presentation 2024-04-11 22:53:02 +10:00
Stenzek 3e9ac99d54
Qt: Fix 6.7 deprecation warnings 2024-04-11 21:55:50 +10:00
Marcin Mitura 9bee24e083
Polish localization updates (#3164)
Comply to latest changes:
- Correct not fitting string,
- Translate new strings,
- Remove obsolete.
2024-04-11 21:38:28 +10:00
Stenzek 509a8a074c
GPUDevice: Remove unused file 2024-04-11 21:33:40 +10:00
Stenzek 88270771da
System: Combine VRR and Optimal Frame Pacing
GSync/FreeSync display users should:
 - DISABLE VSync.
 - ENABLE Optimal Frame Pacing.
2024-04-11 21:33:40 +10:00
Stenzek 2ad67ad3ee
OpenGLContext: Add SupportsNegativeSwapInterval() 2024-04-11 20:31:57 +10:00
Stenzek 7b93edada1
Qt: Purge controller bind migration
About a year and a half is long enough.
2024-04-11 20:09:52 +10:00
Stenzek fec36471b8
Settings: Use RealPath() for directories 2024-04-11 14:44:43 +10:00
Stenzek e2d87f554b
FileSystem: Canonicalize() after RealPath() 2024-04-11 14:44:29 +10:00
Stenzek 57f6bda59b
ImGuiFullscreen: Use popup background for all popups 2024-04-11 13:50:04 +10:00
Stenzek 164062f80d
Build: Use C++20 for everything except reshadefx 2024-04-11 13:46:25 +10:00
Stenzek 1b1e42d003
System: Add Error to boot/load/save state 2024-04-11 13:42:10 +10:00
Stenzek f75a5605eb
SmallString: Add vformat overloads 2024-04-11 13:42:00 +10:00
Stenzek 1809885927
FullscreenUI: Fix crash with language select on Linux 2024-04-11 12:52:56 +10:00
Stenzek 44a4f2703a
ImGuiFullscreen: Add popup background colour 2024-04-11 12:44:33 +10:00
Bobby Smith ae223403bb Qt: fix "Deinterlacing" description 2024-04-11 12:20:51 +10:00
Bobby Smith b58862a64a Disable cheats by default 2024-04-11 12:20:51 +10:00
Stenzek 8c741d2d48
Qt: Update glyph range for zh-CN and purge old obsolete strings 2024-04-10 20:28:00 +10:00
zkdpower 05d2ad5800
Update the Simple-Chinese translation to latest. 2024-04-10 20:20:52 +10:00
Stenzek 440a1700c0
System: Interrupt execution when loading state and reset 2024-04-10 20:18:30 +10:00
Stenzek 417bf0c3bc
DMA: Better enforce CPU runtime during linked list
and get rid of the hack for Newman Haas.
2024-04-10 20:11:23 +10:00
KamFretoZ bbd7c9e2a9
BPM: Light Mode color scheme update (#3161) 2024-04-10 18:20:25 +10:00
Marcin Mitura b209e6b0a8
Polish localization updates (#3160)
* Polish localization updates

- Match latest changes,
- Correct typos,
- Remove vanished strings.

* Polish localization updates

- Match latest changes:
* Correct typos,
* Remove obsolete strings.
2024-04-10 17:37:36 +10:00
Stenzek a57ed3c91c
Qt: Add correct Cheat Manager UI file 2024-04-10 17:06:36 +10:00
Stenzek 4598bc789b
Qt: Split Cheat Manager and Memory Scanner
And make them persistent across system invocations.
2024-04-10 14:05:46 +10:00
Stenzek e936e7498a
VulkanDevice: Fix incorrect null texture bind condition 2024-04-10 12:14:29 +10:00
Marcin Mitura 6965bc54f4
Polish localization updates (#3158)
- Comply new FullscreenUI,
- Remove vanished strings.
2024-04-10 12:13:50 +10:00
Bobby Smith ad45ace97d
Qt: fix "Show Controller Input" and "Show Settings" descriptions (#3159) 2024-04-10 12:13:39 +10:00
Anderson Cardoso 5fb81753dd
Autalização Português do Brasil (#3157)
Atualizado para a última versão.
2024-04-10 12:13:25 +10:00
Stenzek 26c1d4b787
Qt: Icon fix 2024-04-10 00:07:25 +10:00
Stenzek e9ae49b3c4
FullscreenUI: Regenerate strings 2024-04-10 00:07:13 +10:00
Stenzek bf4e8feb25
FullscreenUI: Redo landing page and add help bar 2024-04-09 23:49:24 +10:00
Stenzek de1a1af908
FullscreenUI: Avoid per-frame memory allocations with SmallString 2024-04-09 19:54:25 +10:00
Stenzek 631fca3042
SettingsInterface: Add SmallString overloads 2024-04-09 19:54:25 +10:00
Stenzek 6b7cf6a432
SmallString: Add missing methods 2024-04-09 19:54:25 +10:00
Marcin Mitura daab121a14
misc: translation file cleanup (#3155) 2024-04-09 19:53:11 +10:00
Marcin Mitura 841a6e1f17
lupdate translation file. (#3153) 2024-04-07 19:10:46 +10:00
Stenzek 71f50566f3
System: Consider pending ticks when using global ticks 2024-04-07 19:01:48 +10:00
Stenzek 8a1b4d8bee
DMA: Halt linked list transfers during pad transfer
Plenty of games seem to suffer from this issue where they have a linked list
DMA going while polling the controller. Having a large slice size causes the
serial transfer to complete before the silly busy wait in the BIOS poll routine
returns, resulting in it thinking that the controller is disconnected. Some
games are very sensitive to this (e.g. Newman Haas Racing), to the point that
even using a slice size of 1 is insufficient for avoiding the race, probably
due to the linked list layout.

Therefore, without major refactoring to ensure the CPU runs every DMA block,
and the associated performance penalty, we just halt the DMA until the serial
transfers have completed. To reduce the chances of this significantly affecting
timing, we add accumulate the ticks that have been "lost", and allow them to be
"used up" when the transfer does happen.
2024-04-07 18:55:03 +10:00
Stenzek 8bdeb8bdac
MemoryCardImage: Handle 128KB GME files 2024-04-07 17:06:42 +10:00
Stenzek 1ee5f737ed
MemoryCardImage: Report errors to caller 2024-04-07 13:23:00 +10:00
Stenzek 9dd686a994
ByteStream: Add error feedback 2024-04-07 13:10:34 +10:00
Stenzek 99b0fb5911
GPU/HW: Move pipelines to end of struct
Helps keep the rest in range for ARM32's 4K displacement.
2024-04-06 21:51:52 +10:00
Marcin Mitura 79e96ff5e6
Polish localization updates (#3152) 2024-04-06 21:51:32 +10:00
Stenzek 69f79c3a4f
Deps: Speed up shaderc build
Mainly for flatpak...
2024-04-06 00:12:16 +10:00
Stenzek d9b1d39638
Updater: Add missing CoInitializeEx() call 2024-04-05 20:02:39 +10:00
Stenzek d8bf0c81a7
Updater: Use IFileOperation 2024-04-05 19:26:12 +10:00
Stenzek 26c76d184f
Qt: Fix toolbar position not saving 2024-04-05 19:21:56 +10:00
shikulja d3b552e759
Update Russian translation (#3149)
* Update ts

* Update Russian translation
2024-04-05 17:54:27 +10:00
Stenzek 98241cb6ba
GPUDevice: Swap out glslang for shaderc 2024-04-05 17:53:24 +10:00
Stenzek 69c9133cd4
Common: Fix double free on opening invalid zip file 2024-04-05 17:23:29 +10:00
Stenzek bdafbe0b28
Qt: Fix crash on shutdown settings save 2024-04-05 17:23:29 +10:00
Stenzek ffbb14f508
dep/imgui: Use FreeType rasterizer 2024-04-05 17:23:28 +10:00
Stenzek 69588bf7a6
Deps: Include freetype/harfbuzz shared libraries 2024-04-05 17:23:28 +10:00
Stenzek 5c56d4e869
Deps: Update to Qt 6.7.0 and SDL 2.30.2 2024-04-05 17:23:28 +10:00
Stenzek 0a17cf7db8
Qt: More missing toNativeSeparators() calls 2024-04-04 16:59:52 +10:00
Stenzek 1097eab600
GPU/HW: Don't create shader blend pipelines if disallowed 2024-04-04 13:25:33 +10:00
Stenzek c2a08bdb1d
CPU/NewRec: Fix ARM32 (again) 2024-04-04 13:25:33 +10:00
Stenzek a432308908
GPU: Fix GLES compile error 2024-04-04 13:25:33 +10:00
Anderson Cardoso 5e1c5277b3
Atualização Português do Brasil (#3148)
* Atualização Português do Brasil

Atualizado para a última versão.

* Atualização Português do Brasil

Atualizado para a última versão.
- Novo tema
- OSD sobre PGXP atualizada
2024-04-04 11:27:04 +10:00