Commit graph

5644 commits

Author SHA1 Message Date
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 () 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 ()
* 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 ()
* 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
Stenzek 59a13d91ea
Image: Don't use libjpeg stdio functions
Fixes I/O in debug builds.
2024-04-03 23:01:53 +10:00
Stenzek cb6be52404
GameDatabase: Warn if CPU mode is enabled and unnecessary 2024-04-03 22:58:20 +10:00
Stenzek bd19276cf5
Qt: Fix loading/saving state to file on Windows 2024-04-03 22:58:20 +10:00
Anderson Cardoso 38249a3357
Atualização Português do Brasil ()
Atualizado para a última versão.
2024-04-03 22:57:23 +10:00
zkdpower fa644a05b3
Update the Simple-Chinese translation to latest. () 2024-04-03 22:57:12 +10:00
KamFretoZ cb26acbc6c
Qt: Port over Cobalt Sky theme from PCSX2 () 2024-04-03 22:56:59 +10:00
Stenzek 41cc60e87e
VulkanDevice: Use vkCmdClearAttachments() to avoid render pass restart 2024-04-01 18:12:53 +10:00
Stenzek 5ec1331831
Qt: Update glyph ranges 2024-04-01 18:12:53 +10:00
zkdpower 3a0bc36f9f
Update the Simple-Chinese Translation to latest. () 2024-04-01 18:12:52 +10:00
Stenzek a89c514d3f
Qt: Minor typo corrections 2024-04-01 18:12:52 +10:00
Stenzek 74f3c8d1aa
GPU/HW: Enable feedback loops for rendering 2024-04-01 18:12:52 +10:00
Stenzek 72ab669e70
GPUDevice: Add support for feedback loops 2024-04-01 13:55:19 +10:00
Stenzek 71a07a5a8e
CPU/NewRec: Fix lwl/lwr on ARM 2024-03-31 23:49:40 +10:00
Stenzek 86927ea3eb
Qt: Use window modality for message boxes
Stops them opening in the middle of the screen on MacOS.
2024-03-31 23:37:49 +10:00
Stenzek f0f1473b6e
Qt: Fix native message boxes on MacOS 2024-03-31 23:12:14 +10:00
Anderson Cardoso 578490648b
Atualização Português do Brasil ()
- Confirmação de mensagens OSD
2024-03-31 15:53:24 +10:00
Stenzek 0b99db6730
Qt: Ensure settings are writable before running setup wizard 2024-03-31 15:51:30 +10:00
Stenzek 693982d755
SettingsInterface: Add Error to Save() 2024-03-31 15:50:29 +10:00
Stenzek eb504143c1
FileSystem: Add Error to CreateDirectory()/RenamePath() 2024-03-31 15:50:13 +10:00
Stenzek 3ecc19c43f
GPU: Fix HW readback counter 2024-03-31 14:02:44 +10:00
Stenzek 8ebda3cdc8
CPU/NewRec: Fix register corruption in swl/swr 2024-03-31 13:55:19 +10:00
Stenzek a3013efbca
CPU/NewRec: Fix PGXP desync
Wobbly geometry in Threads of Fate.
2024-03-30 00:46:38 +10:00
Stenzek 979b7bd36f
FileSystem: Use PathCchCanonicalizeEx() for GetWin32Path() 2024-03-30 00:46:38 +10:00
Stenzek ab445ec69d
FileSystem: Handle paths longer than MAX_PATH on Windows 2024-03-29 16:23:03 +10:00
Stenzek f9f9447013
SPU: Ignore End+Mute flag for noise channels
Fixes the noise effects cutting out too early in Motor Toon Grand Prix.
2024-03-29 15:08:14 +10:00
Stenzek 2b7008bd93
GPU/HW: Fix box downsampling with FMVs 2024-03-29 12:37:10 +10:00
Stenzek c41563c7dc
Pad: Fix unconditional memory card replug on load state 2024-03-29 12:34:42 +10:00
Stenzek e54ad1956a
GPU/HW: Fix height incorrect doubling in interleaved 480i mode 2024-03-29 12:17:13 +10:00