Commit graph

6364 commits

Author SHA1 Message Date
Stenzek 0b5287f199
Bus: Implement RAM_SIZE register
Fixes Rock-Climbing - Mitouhou e no Chousen - Alps Hen (Japan) crashing
on boot. Silly game does a 512 word DMA from CDROM to 0x001FFF04, with the
mapped memory size set to 4MB, expecting the DMA to trigger a bus error,
because if it doesn't, then your kernel memory goes bye bye.

A bunch of other games do set the upper 4MB to be unmapped, but this
change appears to have no effect on them. As expected, they're probably
doing the correct thing.
2024-07-24 00:14:17 +10:00
Stenzek dce1221021
Bus: Log when RAM_SIZE changes 2024-07-23 23:00:44 +10:00
Stenzek 68575d15a4
CDROM: Shift instead of divide in ZigZagInterpolate 2024-07-23 22:10:04 +10:00
Stenzek 5ec9c8a397
CDROM: Fix handling of 8-bit ADPCM and decoder overruns
Fixes pops in menu music in Simple 1500 Series Vol. 92 - The Tozan
RPG - Ginrei no Hasha.

I haven't seen anything that _properly_ uses 8-bit ADPCM yet. The above
game does, but only in the inaudible portion of the start of the track.
2024-07-23 21:54:22 +10:00
Stenzek 861d4a5aa2
FullscreenUI: Reorder graphics settings to match Qt 2024-07-23 21:11:01 +10:00
Stenzek 5e8870ec69
D3D12: Avoid redundant render pass restarts 2024-07-23 21:11:01 +10:00
Stenzek 0407f939fc
CPU: Fix loading recompiler-saved states with interpreter 2024-07-23 21:11:01 +10:00
Anderson Cardoso b7bfbc0cf6
Atualização Português do Brasil (#3258)
Atualizado para a última versão.
2024-07-23 14:47:20 +10:00
Stenzek 2a617c505a
GPU/HW: Support using ROV for accurate blending 2024-07-23 14:46:06 +10:00
Stenzek 1006fa00da
GPUDevice: Add support for Raster Ordered Views 2024-07-23 14:46:06 +10:00
Stenzek e743c5d1b1
GPU/HW: Force update CLUT on save state
Fixes switching from hardware->software renderer in games that are
drawing without reloading the CLUT.
2024-07-22 21:25:14 +10:00
Stenzek 298f39a0c8
GPU/HW: Fully report shader/pipeline creation failures 2024-07-22 15:43:18 +10:00
Stenzek ba6b65401d
GPUDevice: Improve pipeline error reporting 2024-07-22 15:43:06 +10:00
Stenzek deed0c9713
GameDatabase: Merge compatibility messages 2024-07-22 14:59:55 +10:00
Stenzek fe55446c25
ImGuiManager: Fix stutter when multiple OSD messages lapse 2024-07-22 14:59:55 +10:00
zkdpower 28c74f1325
update the Simple-Chinese translation to latest. (#3257) 2024-07-22 14:38:58 +10:00
Stenzek 533022bb7d
Qt: Ensure fullscreen UI is stopped on exiting 2024-07-21 20:29:38 +10:00
Stenzek 2938602d75
Qt: Remove BIOS search directory from per-game settings
Rather than just disabling it and confusing the user.
2024-07-21 16:22:30 +10:00
Stenzek b4136d2834
TimingEvents: Avoid heap allocation in SortEvents() 2024-07-21 16:15:40 +10:00
Stenzek 022b2fc013
Qt: Disable incompatible settings in game properties 2024-07-21 16:10:39 +10:00
Stenzek ad374ef5e2
Sockets: Use epoll on Linux 2024-07-21 16:10:39 +10:00
Stenzek 78800870bc
Sockets: Properly handle POLLHUP events
Stops client socket leaking.
2024-07-21 16:10:39 +10:00
Stenzek 6b78364eab
Sockets: Ignore SIGPIPE on Linux
Stops our process terminating if the socket is disconnected
mid-write.
2024-07-21 16:10:39 +10:00
dreamsyntax d9ada75d4f
Qt: Toggle for DualSense Player LED (#3254) 2024-07-21 16:07:36 +10:00
Stenzek 3172eac8df
PINE: Disable nagle buffering 2024-07-21 13:43:21 +10:00
Stenzek cc667cd88c
Sockets: Add SetNagleBuffering() 2024-07-21 13:43:14 +10:00
Stenzek f2e88ce0e5
PINE: Add MsgReadBytes/MsgWriteBytes 2024-07-21 13:34:10 +10:00
Stenzek 79644bfb2a
CPU: Add Safe{Read,Write}MemoryBytes 2024-07-21 13:33:54 +10:00
Stenzek f1f89d3f0f
BinarySpanReaderWriter: Add subspan methods 2024-07-21 13:33:41 +10:00
Stenzek 52f9e8556a
CDROM: Deactivate command attempt before queueing another
Reduces chances of ending up with unordered events.
2024-07-20 22:35:32 +10:00
Stenzek efd8aab437
TimingEvents: Fix events ending up out-of-order 2024-07-20 22:35:32 +10:00
Stenzek 9b77a9aff7
TimingEvents: Move interrupt dispatch to end of loop
Saves another iteration.
2024-07-20 13:42:01 +10:00
Stenzek 4f7ddfaae6
TimingEvents: Remove pointer indirection
Probably should move this to one big array for locality.
2024-07-19 22:56:41 +10:00
Stenzek 56dd9878e1
Misc: RISC-V build fixes 2024-07-19 22:25:57 +10:00
Stenzek 0815aedca2
FileSystem: Drop use of stat64()
We define _FILE_OFFSET_BITS on 32-bit Linux anyway.
2024-07-19 22:25:57 +10:00
Stenzek 2e96931c32
CPU/CodeCache: Dynamically compute BIOS memory access timing
The timings can change if the game does so. Instead of forcing the
blocks to recompile, we can just manually multiply size * word_time.

Improves stability of Nightmare Creatures booting, and fixes corrupted
text in Formula Circus when using the cached interpreter.
2024-07-19 22:25:57 +10:00
Stenzek 5f36c2948f
Updater: Fix missing newline on MacOS 2024-07-19 17:47:51 +10:00
Stenzek d9a224ef6c
GameList: Fix bogus entries on disc change due to disc set 2024-07-19 15:51:25 +10:00
Stenzek 6a920b268e
CDROM: Handle BFRD clears inbetween DMA transfers
Fixes disc detection in Metal Gear Solid: Special Missions.
2024-07-19 15:51:25 +10:00
Stenzek f0945ca3ca
BIOS: Refactor loading/hashing of images
Fixes identification of PS2 BIOSes. However, they are not (yet) fastboot
compatible.
2024-07-19 15:51:25 +10:00
Stenzek 19063d4288
Bus: Mirror BIOS area up to 4MB
Fixes bus error when using PS2 BIOS.
2024-07-19 15:51:25 +10:00
Stenzek 7217536fdd
MD5Digest: Span-ify 2024-07-19 15:51:25 +10:00
Stenzek 41e15539f9
FileSystem: Add Error parameter to more functions 2024-07-19 15:51:25 +10:00
Stenzek a6cf320776
Qt: Fix scan percent dropping back to 0% at end 2024-07-19 15:51:25 +10:00
Stenzek 6176a21ff1
ProgressCallback: Eliminate redundancy and drop C format strings 2024-07-19 15:51:25 +10:00
Stenzek 24ef76bfee
StringUtil: Purge StdStringFromFormat() 2024-07-19 14:01:16 +10:00
Stenzek 567b86ce79
Host: Purge ReportFormattedDebuggerMessage() 2024-07-19 14:00:29 +10:00
Stenzek aa94b07f30
Qt: Purge format string usage from AutoUpdaterDialog 2024-07-19 13:54:00 +10:00
Stenzek ca2a8f1e1f
Host: Purge C format string error overloads 2024-07-19 13:45:33 +10:00
Stenzek 00ccea84b8
GPUDevice: Replace remaining StdStringFromFromFormat() with fmt 2024-07-19 13:44:09 +10:00
Stenzek c286112966
Updater: Replace all StdStringFromFormat() with fmt 2024-07-19 13:28:48 +10:00
Stenzek 92038da3d5
CDROM: Handle speed change while reading
Fixes level music in Croc 2 demo.
2024-07-18 00:31:19 +10:00
Anderson Cardoso 0a86aba1cb
Atualização Português do Brasil (#3253)
Atualizado para a última versão.
2024-07-17 23:52:25 +10:00
Stenzek 9a89ab3bab
GameDatabase: Add deinterlacing mode override 2024-07-17 20:57:36 +10:00
Stenzek f1ca914512
CDROM: Further adjust IRQ delay
Fixes audio dropouts in Crime Crackers, Ogre Battle seems fine now as
well.
2024-07-17 20:57:36 +10:00
Stenzek 9392c19a70
CDROM: Handle audio sectors in 2X mode
Fixes menu background in 360 Three Sixty.
2024-07-17 20:57:35 +10:00
Stenzek 44b9d16d9f
CDROM: Defer set of autopause track
Pitball's menu music starts mid-second, and there's no pregap,
so the first couple of reports are for the previous track.

It doesn't enable autopause until receiving a couple, and it's
actually playing the track it wants.
2024-07-17 20:57:35 +10:00
Stenzek fb747d6ded
CDROM: Drop setloc on double Play
And limit the locations position is updated while seeking.

Fixes menu music in Hot Wheels: Extreme Racing.
2024-07-17 20:57:35 +10:00
Stenzek bc30569a6d
SPU: Reverb input should be muted when SPU muted
Fixes pause menu in Bubsy 3D, Tuning Car Battle Spec R.
2024-07-17 20:57:17 +10:00
Stenzek 889427e7f6
Qt: Disable a couple of unusable per-game settings 2024-07-15 22:17:42 +10:00
Stenzek 00cc3b65fc
Qt: Fix a few places per-game settings were not checked 2024-07-15 22:17:42 +10:00
Stenzek 5381ad9cd1
Qt: Adjust controller diagrams 2024-07-15 22:17:42 +10:00
Stenzek fae6b7ae86
System: Fix double error on load/boot cancel 2024-07-14 21:32:10 +10:00
Stenzek fee888758f
System: Purge unused RecreateSystem() 2024-07-14 21:30:52 +10:00
Stenzek 154a5b35b8
CDImageCHD: Refactor mode conversion to string_view
Incorrect length found by PVS-Studio.
2024-07-14 21:29:57 +10:00
Stenzek 640ed4a2d3
CPU/Recompiler: Eliminate redundant speculative reg read 2024-07-14 21:26:17 +10:00
Stenzek 59a2309a83
GPU: Use half width vector types where appropriate 2024-07-14 21:25:48 +10:00
Stenzek d70f5ddb32
GSVector: Remove unused functions 2024-07-14 21:25:48 +10:00
Stenzek df979d4648
Build: Fix DiscordRPC not being included in Mac bundle 2024-07-14 21:25:26 +10:00
Stenzek 500fbe5ef1
Achievements: Fix potential uninitialized data read 2024-07-14 21:25:25 +10:00
Stenzek 8698298499
CPU/NewRec: Fix incorrect condition in GenerateCall() 2024-07-14 21:25:25 +10:00
Stenzek a5a320720a
GPU/HW: Fix incorrect dirty rect union
Reduces GPU usage during screen waves effect in Um Jammer Lammy from
over 70% down to 3% on my 7900GRE at 9x.
2024-07-14 18:26:02 +10:00
Stenzek 5d4f6e44d2
Qt: Use device pixel ratio when scaling gameicons 2024-07-14 18:26:02 +10:00
Stenzek 594962d247
Qt: Scale down custom icon pixmaps
Don't want it going outside of the control bounds.
2024-07-14 18:26:02 +10:00
Stenzek fd0626aa6d
GameList: Re-extract memcard icon if deleted
But don't keep trying if the game doesn't have a save.
2024-07-14 18:26:02 +10:00
Stenzek ff77bd029f
ImGuiFullscreen: Don't upload failed-loaded images 2024-07-14 00:01:06 +10:00
Stenzek afea18f65e
Image: Fix crash loading corrupted/invalid JPEG files 2024-07-14 00:00:48 +10:00
Stenzek b7da118f96
Qt: Don't boot system twice on rapid clicking 2024-07-13 20:47:03 +10:00
Stenzek 5da6c926d9
GameList: Always open icon cache with r+b on Linux
Fixes flock() error on startup.
2024-07-13 18:32:42 +10:00
Stenzek 2cfa535784
System: Fix certain GPU settings not applying until unpause 2024-07-13 17:52:42 +10:00
Mrlinkwii 0f0cc4ea17
Qt: Re-add QDarkStyle theme option (#3250) 2024-07-13 12:55:01 +10:00
Stenzek 7c45ad3fed
GameList: Add dedicated gameicons directory 2024-07-11 17:17:25 +10:00
Stenzek 2ac2ad605e
CPU/Recompiler: Break blocks on invalid instructions 2024-07-11 17:17:25 +10:00
Stenzek 3b9c489787
CPU: Pass instruction query values by reference 2024-07-11 17:17:25 +10:00
Anderson Cardoso 58470cea09
Atualização Português do Brasil (#3249)
Atualizado para a última versão.
2024-07-11 17:17:12 +10:00
Stenzek 226a8eac81
MemoryCardIconCache: Ignore shared cards 2024-07-10 21:47:02 +10:00
Stenzek 11f7bfc461
CPU/PGXP: Refactor add/sub for small speedup 2024-07-10 20:56:42 +10:00
Stenzek e5c62b8baf
CPU/PGXP: Fix incorrect Y on invalid add/sub 2024-07-10 20:56:21 +10:00
Stenzek 5881133cf5
CPU/PGXP: Set valid on bitwise ops from lowprec 2024-07-10 19:10:56 +10:00
Stenzek 9be7a37416
GSVector: SIMD-ify YUVToRGB
Almost 10x speedup on the function alone, 15% in practice ingame.
2024-07-10 15:18:42 +10:00
Stenzek 18b0b11094
CommonTests: Add GSVector MDEC YUVToRGB test 2024-07-10 15:18:42 +10:00
Anderson Cardoso 989a19d144
Atualização Português do Brasil (#3246)
* Atualização Português do Brasil

Atualizado para a última versão.

* Atualização Português do Brasil

Atualizado para a última versão.
2024-07-09 21:49:17 +10:00
Stenzek a56ebf24b2
Qt: Fix incorrect sort indicator on loading 2024-07-09 21:49:17 +10:00
Stenzek 93836636a1
Qt: Center type icon in game list 2024-07-09 21:49:17 +10:00
Stenzek addadbabc6
Qt: Use memory card icon as window icon 2024-07-09 21:49:12 +10:00
Stenzek 9143116616
Qt: Show memory card icons in game list
You can disable it if you really hate it.
2024-07-09 21:38:38 +10:00
Stenzek 8659c8cca6
Core: Add MemoryCardIconCache 2024-07-09 21:38:38 +10:00
Stenzek ec851c9d6d
FileSystem: Add FTruncate64() 2024-07-09 21:38:38 +10:00
Stenzek de27e5de92
GPU: Add option to disable PGXP on 2D polygons 2024-07-09 20:37:58 +10:00
Stenzek f0e2d1a9fa
CPU/PGXP: Rewrite SLTI/SLTIU handlers
Don't read uninitialized memory...
2024-07-09 20:14:08 +10:00
Stenzek d922a43127
CPU/PGXP: Don't force valid input on slt/sltu 2024-07-09 19:45:44 +10:00
Stenzek 3b7844be5a
CPU/PGXP: Don't force valid inputs on mult/div 2024-07-09 19:21:47 +10:00
Stenzek d831cb69a9
CPU/PGXP: Normalize variable names 2024-07-09 19:16:16 +10:00
Stenzek 5410a42fd7
CPU/PGXP: Explicitly handle addi rt, zero, nnnn 2024-07-09 19:07:17 +10:00
Stenzek b6f7420018
CPU/PGXP: Don't force inputs to valid on add/sub 2024-07-08 17:18:27 +10:00
Stenzek 7f21226a99
GameDatabase: Warn if vertex cache is enabled but unnecessary 2024-07-07 14:29:29 +10:00
Stenzek d63ae8718f
GPU: Always calculate draw rect
Stops postfx shaders that depend on the draw rect going into NaN
territory.
2024-07-07 12:46:09 +10:00
Stenzek 6f50e12ea2
PostProcessing/FX: Remove debug shader dump 2024-07-07 12:46:09 +10:00
Nik Chizhov a3d600d5c3 fix: moved vairable access 2024-07-07 12:45:49 +10:00
Nik Chizhov 5cdcdb565f fix: string to c-string to string 2024-07-07 12:45:49 +10:00
Nik Chizhov 40048cbbc8 fix: remove duplicated code 2024-07-07 12:45:49 +10:00
Nik Chizhov e4470a9929 fix: out-of-border access 2024-07-07 12:45:49 +10:00
PugsyMAME d372609bdc
Add memory contents to "Addr=" string in debugger
Tweaks the format of the addr= string in the debugger/trace so that it includes the memory contents.
It will also take the 2nd character of the opcode and if it's b or h it will size it accordingly.
so
addr=800BC2D0
becomes
addr=800BC2D0[00000000]  or addr=800BC2D0[0000]  or addr=800BC2D0[00]

This change amongst other things will facilitate a widescreen cheat scanner, that will take a lot of the work away from making widescreen cheats.
2024-07-06 22:51:59 +10:00
Stenzek ed5a99066f
GPU: Cull off-screen sprites/lines
And further optimizations to culling in general.
2024-07-06 22:13:46 +10:00
Stenzek bc73dacea4
System: Use socket multiplier for sleeping when connected
Should significantly reduce PINE latency.
2024-07-06 21:56:30 +10:00
Stenzek 1fd8d2701d
Sockets: Add HasAnyClientSockets() 2024-07-06 21:56:30 +10:00
Stenzek b06fceffa4
GDB/PINE: Fix listen socket leak on shutdown 2024-07-06 21:56:30 +10:00
Stenzek 9a70003b70
MSBuild: Silence MSVC warning C4324 2024-07-06 19:45:16 +10:00
Stenzek eba0794b4f
FileSystem: Add Error to file writing 2024-07-06 19:36:15 +10:00
Stenzek 29b3fa2b95
GSVector: Add {min,max}v_{u8,u16} 2024-07-06 19:36:15 +10:00
Anderson Cardoso b9155ec5ac
Atualização Português do Brasil (#3242)
Atualizado para a última versão.
2024-07-06 19:34:58 +10:00
shikulja c51db5c6a7
Update Russian translation (#3241)
* Update ts

* Update Russian translation

* .
2024-07-06 19:34:48 +10:00
Stenzek 23962fd07e
GTE: Pack local config in struct 2024-07-06 19:33:38 +10:00
Stenzek b6a264b8b4
TimingEvents: Pack state in struct 2024-07-06 19:18:25 +10:00
Stenzek a57101c1f0
Timers: Pack state in struct 2024-07-06 19:18:25 +10:00
Stenzek f5cae1957b
MDEC: Pack state in struct 2024-07-06 19:18:25 +10:00
Stenzek e1a4c7dfdd
DMA: Pack state in struct 2024-07-06 19:18:25 +10:00
Stenzek 536b48d706
SPU: Pack state in struct 2024-07-06 19:18:25 +10:00
Stenzek 77488db3dc
Misc: Align CPU state and SPU voices to cache lines
Fixes the ~12% performance regression from the texture replacement
namespace'ify commit. Apparently LTO was placing the CPU struct in the
middle of a cache line...
2024-07-06 18:49:37 +10:00
Stenzek 4c0250716d
GPU/HW: Ensure buffers are freed prior to recreating 2024-07-04 21:54:44 +10:00
Stenzek 3749b812a3
GPUDevice: Add ExecuteAndWaitForGPUIdle() 2024-07-04 21:54:19 +10:00
Stenzek 9fcc98a60a
InputSource: Explicitly construct binding key 2024-07-04 21:40:32 +10:00
Stenzek c02bf0f662
CPU/NewRec/RV64: Compile fix 2024-07-04 21:40:19 +10:00
Stenzek 487eb102b7
Common: __m128 shouldn't be used in nosimd 2024-07-04 19:18:47 +10:00
Stenzek 87f2995f3d
TextureReplacements: Namespace-ify 2024-07-04 15:52:32 +10:00
Stenzek 69c35c9fcd
Deps: Remove rapidjson from in-tree 2024-07-04 15:52:32 +10:00
Stenzek f6d3a7987d
System: Load discord-rpc dynamically 2024-07-04 15:52:32 +10:00
Stenzek 00d2d862c2
Build: Use shared discord-rpc 2024-07-04 15:52:32 +10:00
Stenzek eb8df23366
Qt: Fix gap in advanced graphics settings on Linux 2024-07-04 13:25:27 +10:00
Stenzek 4b61a3cbf3
Qt: Unrestrict resolution scale up to device limits 2024-07-04 13:25:27 +10:00
Stenzek 7927ec647f
Qt: Fix a couple of instances of inconsistent sorting 2024-07-04 13:25:26 +10:00
Stenzek 63b30e2925
Qt: Annotate unofficial release builds 2024-07-04 13:25:26 +10:00
Stenzek d178853392
PostProcessing/FX: Fix incorrect draw rect 2024-07-04 00:32:22 +10:00
Stenzek 3c230ba1bf
PlatformMisc: Swap include order for Mac 2024-07-03 16:04:05 +10:00
Stenzek e0509ebd9f
Common: Remove Rectangle class 2024-07-03 15:54:32 +10:00
Stenzek 29533650a8
MetalDevice: Rectangle -> GSVector4i 2024-07-03 15:54:32 +10:00
Stenzek 2bcb85d431
GPU/HW: Push all draws/writes through a common path 2024-07-03 15:44:12 +10:00
Stenzek 9ef7e8c5d0
GPU/HW: Use GSVector instead of Rectangle 2024-07-03 15:44:12 +10:00
Stenzek ef152c47a6
GPU/HW: Interpolate native texture coordinates when upscaling 2024-07-03 15:44:12 +10:00
Stenzek 2a7de25505
Common: Remove gsvector.h dependency on assert.h 2024-07-03 15:44:12 +10:00
Stenzek 044d7a4797
GPU: Eliminate heap allocation on state load 2024-07-03 00:24:12 +10:00
Stenzek f9bf2e8239
GPU: Use GSVector for SW scanout 2024-07-03 00:24:12 +10:00
Stenzek 0968610ba7
CDROM: Use GSVector 2024-07-03 00:24:12 +10:00
Stenzek 69471950f0
ImGuiOverlays: Use GSVector 2024-07-03 00:24:12 +10:00
Stenzek faa151d5ad
CDImageCHD: Use GSVector 2024-07-03 00:24:12 +10:00
Stenzek 0654b2dc43
AudioStream: Use GSVector 2024-07-03 00:24:12 +10:00
Stenzek b094c9cd87
MDEC: Vectorize IDCT 2024-07-03 00:24:12 +10:00
Stenzek 0ae6ddcf7f
Common: Add GSVector
Mostly based on PCSX2.
2024-07-03 00:24:12 +10:00
Stenzek baab966b4e
System: Check for SSE4.1 in early hardware checks 2024-07-03 00:24:12 +10:00
Stenzek 173a61039c
System: Use cpuinfo for cache line size check 2024-07-03 00:24:12 +10:00
Stenzek aabe39d0f8
GPU: Allow DMAs in Mode 1
Exact behaviour is still unknown, but it works on console (Nicolas
Noble's torus demo).
2024-07-02 16:56:11 +10:00
Stenzek e1f90e6baf
MDEC: Store scale/IDCT matrix transposed 2024-07-02 16:56:10 +10:00
Stenzek 6d6659c85e
MDEC: Increase intermediate IDCT precision 2024-07-02 16:56:07 +10:00
Stenzek da2dc5fa1e
FIFOQueue: Optimize PopRange() for trivially-copyable types 2024-07-02 14:26:16 +10:00
Stenzek 1963d80d2c
RegTest: Fix crash on startup 2024-07-01 01:07:27 +10:00
Stenzek e169189441
GPU/HW: Fix possible crash when changing texture filtering 2024-07-01 01:07:27 +10:00
Nikolai Chizhov 037519936a
GL/ContextEGL: Fix red_size to blue_size (#3238) 2024-07-01 00:28:05 +10:00
Stenzek 422102989c
CMake: Remove unused macro 2024-06-30 16:55:04 +10:00
Stenzek 44142ab4f9
CPU/Recompiler: Prefer adrp over trampoline for +/-4GB branches 2024-06-30 16:45:51 +10:00
Stenzek f3671d21f3
CPU/CodeCache: Reduce far code size when using NewRec 2024-06-30 16:45:51 +10:00
Stenzek 9b42ad3859
CPU/CodeCache: Purge JitCodeBuffer 2024-06-30 16:45:51 +10:00
Stenzek be8fbafd71
CPU/CodeCache: Always dynamically allocate code buffer
Reduces .bss size.
2024-06-30 16:45:51 +10:00
Stenzek 0d3e674500
Qt: Move resources out of exe into rcc file 2024-06-30 16:45:51 +10:00
Stenzek 890f3fcf5d
Common/Log: Make actually writing unlikely
Move it out of the hot path.
2024-06-30 16:45:51 +10:00
Anderson Cardoso 07e9a01e87
Atualização Português do Brasil (#3237)
- Novas opções de vídeo e pós-processamento traduzidas;
- Removido obsoletos;
- Atualizado para a última versão.
2024-06-30 16:45:19 +10:00
Stenzek 34d5cdec96
GPU/HW: Expose depth buffer to internal postprocessing 2024-06-29 14:25:36 +10:00
Stenzek e39a2d00bf
GPU/HW: Use D32F for PGXP depth
16-bit isn't accurate enough for post processing.
2024-06-29 13:09:45 +10:00
Stenzek d8bd35e8d6
GPUDevice: Add D24S8/D32F/D32FS8 types 2024-06-29 13:09:45 +10:00
Stenzek 3f25db79b8
D3D11Device: Make depth targets sampleable 2024-06-29 13:09:45 +10:00
Stenzek 1cb3e6bd49
ShaderGen: Support multiple render target output 2024-06-29 13:09:45 +10:00
Stenzek 80d1056ddf
GPU: Add virtual call when buffers are swapped 2024-06-28 21:15:47 +10:00
Stenzek 0c3cf1f5f8
PostProcessing: Split into internal and display chains 2024-06-28 20:17:15 +10:00
Stenzek 810ce1ce57
GPU: Remove duplicate display params fields
And enable postfx when the DAC is turned off.
2024-06-28 20:17:15 +10:00
Stenzek 3877486712
System: Ensure titles are sanitized for screenshots 2024-06-28 19:44:27 +10:00
Anderson Cardoso 41f40248d2
Atualização Português do Brasil (#3235)
* Atualização Português do Brasil

- Feito ajustes de consistência no texto;
- Novas linhas movidas adicionadas;
- Atualizado para versão atual.

* Atualização Português do Brasil

Atualizado para a última versão.
2024-06-28 13:53:28 +10:00
Stenzek 8c72fd57f1
GPUDevice: Disable SPIR-V optimization on GLSL output
SSO causes SPIRV-Cross to redeclare builtins, which we don't want
(breaks on Mesa).
2024-06-28 13:52:01 +10:00
Stenzek dd420cbfcf
Common: Alloc failures in HeapArray are unlikely 2024-06-28 13:12:50 +10:00
Stenzek a89ec0eaf9
Achievements: Always recompute state data size on save
It can be smaller, or, apparently fail in some cases...
2024-06-28 13:12:27 +10:00
Ilham Nurjaman 12f2ff931b
Indonesian Translation 2024-06-27 12:38:41 +10:00
Stenzek ebf50edb79
System: Allocate JIT space before fastmem area
On Intel MacOS 14, the fastmem area gets allocated close to the
executable base, leaving no region free +/- 2GB for the JIT area.
2024-06-26 17:11:27 +10:00
Stenzek 8c1228a7aa
Qt: Tidy up theme change workaround 2024-06-24 13:25:16 +10:00
Stenzek db305660c1
Achievements: Implement disc change without state reset 2024-06-24 13:16:50 +10:00
Stenzek b9ff358ab3
Achievements: Support scratchpad memory 2024-06-24 13:16:50 +10:00
Stenzek e7e09023e2
Achievements: Avoid malloc on state save/load 2024-06-24 13:16:50 +10:00
Anderson Cardoso dd4b282ec5
Atualização Português do Brasil (#3233)
- Feito ajustes de consistência no texto;
- Novas linhas movidas adicionadas;
- Atualizado para versão atual.
2024-06-24 10:17:14 +10:00
Stenzek 6021e435ba
Qt: Work around QList<QPair> marshalling issue 2024-06-24 00:55:00 +10:00
Stenzek 6bfd862cb3
GPUDevice: Fix transpiled interface linking with OpenGL 2024-06-23 23:39:56 +10:00
Stenzek 1797050f97
VulkanDevice: Release swap chain images on resize 2024-06-23 16:17:31 +10:00
Stenzek 6892c3d095
Qt: Work around theme swap bug with Classic Windows 2024-06-23 13:43:50 +10:00
Stenzek e8541648ce
Deps: Bump versions 2024-06-23 13:20:48 +10:00
Stenzek 966cce1581
Postprocessing: Sort shader list lexiographically 2024-06-23 13:20:47 +10:00
Stenzek ea3fa7fe3d
Postprocessing/FX: Fix locating shaders in subdirectories 2024-06-23 13:20:47 +10:00
Stenzek 63055f1e7f
FullscreenUI: Add sprite texture filtering option 2024-06-23 13:10:10 +10:00
Anderson Cardoso d8b7e25994
Atualização Português do Brasil (#3227)
Atualizado para a última versão.
2024-06-23 11:12:58 +10:00
Víctor "IlDucci 7491ba656e
Spanish (Spain) Translation update 2024/06/19 (#3229)
- Translated all new strings.
- Backported a number of strings from PCSX2's Spanish (Spain) translation.
2024-06-23 11:12:29 +10:00
TheUbMunster 4827e548be
BinarySpanReaderWriter: Fix off-by-one error (#3230)
fix off-by-one error
2024-06-23 11:12:04 +10:00
Stenzek ccb76d1451
GameList: Add custom title/regions
Largely inspired by https://github.com/PCSX2/pcsx2/pull/9330, but almost
entirely rewritten.
2024-06-17 23:45:02 +10:00
Stenzek 01fc3258a3
CPU/Recompiler: Warning fix for ARM64/Clang 2024-06-17 17:13:23 +10:00
Stenzek 70d7d4ab67
MSBuild: Enable Vulkan on Windows ARM64
Apparently there are drivers now/in the works.
2024-06-17 17:13:23 +10:00
Stenzek 1ae79c89e3
System: Refactor unsafe settings warning
And warn about round upscaled texture coordinates option.
2024-06-17 17:02:55 +10:00
Stenzek a5f8684bcd
BIOS: Add further detail to missing BIOS message 2024-06-17 16:47:21 +10:00
Stenzek 34f20798a1
GPU/HW: Add separate 3D/2D (sprite) texture filtering 2024-06-17 15:56:56 +10:00
Stenzek be4abb016f
GPU/HW: Reduce multiple setting source of truth 2024-06-17 15:49:12 +10:00
Stenzek 6870010351
GPU/HW: Remove log spam 2024-06-16 21:15:37 +10:00
Stenzek e9a47233f7
GPUDevice: Compile warning fix 2024-06-16 20:49:30 +10:00
Stenzek 3d6b9e18c5
Settings: Include cheats in disable-all-enhancements 2024-06-16 19:22:09 +10:00
Stenzek 8455c9c3c6
GPU/HW: Add 'Force Round Upscaled Texture Coordinates' 2024-06-16 19:09:46 +10:00
Stenzek 1582b2ae5d
GPU/HW: Make texture filtering a fragment shadergen parameter 2024-06-16 19:09:46 +10:00
Stenzek 5be2e68ab9
Qt: Update glyph ranges 2024-06-16 17:15:46 +10:00
Anderson Cardoso 451d15a812
Atualização Português do Brasil (#3224)
Atualizado para a última versão.
2024-06-16 17:14:22 +10:00
nishinji d16470d761
Update Japanese translation (#3225) 2024-06-16 17:14:10 +10:00
Stenzek c1792108f4
GPU/HW: Eliminate raw texture pipeline permutations 2024-06-16 17:09:24 +10:00
Stenzek 54097fc14e
Postprocessing/FX: Expose 'viewportoffset' uniform 2024-06-16 00:00:01 +10:00
Stenzek 964b94960e
Postprocessing/FX: Ensure RT isn't bound as sampler
Prevents possible Vulkan spec violation in some shaders.
2024-06-15 23:55:33 +10:00
Stenzek ef69c31e9f
GPUDevice: Support transpiling shaders at compile time
And use it for GLSL postprocessing shaders.
2024-06-14 21:21:34 +10:00
Stenzek f0c2832d03
Dep: Update vixl to 662828c 2024-06-14 17:42:24 +10:00
Stenzek d51b880052
Postprocessing/FX: Fix incorrect pixel size uniforms 2024-06-14 00:38:08 +10:00
Stenzek 277147199e
Qt: Fix checked state on startup for disc merging 2024-06-13 22:15:53 +10:00
Stenzek 8124fb2ef5
CDROM: Fix incorrect sector dropped log message 2024-06-13 18:35:02 +10:00
Stenzek 9a88cbce09
Pad: Fix incorrect card mismatch OSD message 2024-06-13 18:35:02 +10:00
Stenzek c86f6eb639
Achievements: Fix incorrect data source for mastery points 2024-06-13 18:35:02 +10:00
Stenzek ac1bb905fe
GPU: Set idle bit during VRAM upload
Tenga Seiha does a bunch of completely-invalid VRAM writes on boot, then
expects GPU idle to be set. It's unclear what actually happens, I need to
write another test, but for now, just skip these uploads. Not setting GPU
idle during the write command breaks Doom, so that's not an option.
2024-06-13 18:35:02 +10:00
Stenzek facce0d8cb
PostProcessing: Expose aspect-correct pixel sizes
That consider the display aspect ratio/padding when sampling pixels in
the input (window size).
2024-06-11 23:32:19 +10:00
Ilham Nurjaman c2eed018c1
Indonesian Translation (#3221) 2024-06-11 14:06:37 +10:00
Stenzek 354b250642
PostProcessing: Add native width/height inputs
Available in GLSL as GetNativeSize(), GetUpscaleMultiplier(), and in
reshade as native_width/native_height/upscale_multiplier.

GetPaddedOriginalSize() is now deprecated, as it does not make since
since the postfx shader runs with a window-sized off-screen target as an
input, not the internal render texture.
2024-06-11 14:04:45 +10:00
Stenzek bac2ac0151
FullscreenUI: Fix incorrect padding calculation in pause menu
Fixes scrollbars appearing in menu.
2024-06-11 13:12:37 +10:00
Stenzek b464b6d668
FullscreenUI: Fix loading undo state from menu 2024-06-11 13:07:47 +10:00
Stenzek f41c238c53
VulkanDevice: Disable VK_KHR_dynamic_rendering_local_read on AMD
Like everything else on RDNA3, it appears to be broken and causes GPU
hangs/resets.
2024-06-10 17:44:10 +10:00
Stenzek 0879dff93a
Updater: Add icon/rc file 2024-06-10 13:10:11 +10:00
Stenzek e11f73ede2
Updater: Add VC runtime check 2024-06-10 13:02:20 +10:00
Stenzek 484c1dccd4
Qt: Use 64-bit comparison for VC runtime check 2024-06-10 13:01:32 +10:00
Stenzek a2e6a48d2e
Qt: Add very-early VC++ runtime version check
Yay for ABI breaks.
2024-06-09 20:55:47 +10:00
Stenzek 8595175267
CDROM: Improve accuracy of sector redelivery on DMA complete
Fixes hang in loading in Syphon Filter 2/3.
2024-06-09 19:47:51 +10:00
Stenzek 34861074c1
CDROM: Ensure complete IRQs for Init go through
Fixes booting games with OpenBIOS and its Init spam.
2024-06-08 16:58:08 +10:00
Stenzek 0675716162
D3D11Device: Fix redundant SRV set on RT change 2024-06-07 12:07:58 +10:00
Marcin Mitura 05395c8c1a
Polish localization updates (#3220)
## Comply to the latest changes:
- Translate new strings,
- Remove obsolete,
- Correct some machine translations.
2024-06-07 12:07:43 +10:00
Stenzek 7222c21cd9
CDROM: Further refine interrupt delay 2024-05-31 23:59:44 +10:00
Stenzek 3e3572c410
DMA: Fix range check in mode0 when decrementing
Fixes lag on startup in Clone (Euro Demo 42).
2024-05-31 23:08:07 +10:00
Stenzek c637e2b337
System: Fix title after loading state for EXE-boot 2024-05-31 21:08:45 +10:00
Stenzek e70f155054
MemoryCard: Implement GetID command 2024-05-31 21:08:21 +10:00