Commit graph

1969 commits

Author SHA1 Message Date
Connor McLaughlin be5b979713 AudioStream: Make speed changes less poppy 2022-07-29 21:16:02 +10:00
Connor McLaughlin 68b5dd869c SPU: Add time stretched audio output 2022-07-28 22:10:47 +10:00
Connor McLaughlin 97506a811e ImGuiManager: Fix default OSD scale 2022-07-28 22:10:47 +10:00
Connor McLaughlin a461ba8be6 System: Update speed limiter on boot 2022-07-28 22:10:46 +10:00
Connor McLaughlin 6b8b08ef61 System: Fix invalid memory read in SW thread stats 2022-07-28 22:10:46 +10:00
Connor McLaughlin 6386004b2c FullscreenUI: Fix incorrect vsync state on unpause 2022-07-26 21:46:18 +10:00
Connor McLaughlin c2f4b7e7b8 CDROM: Only apply extra remove delay on disc swap 2022-07-26 20:14:45 +10:00
Connor McLaughlin 1057e42956 CDROM: Add additional time to auto disc swap 2022-07-26 18:52:25 +10:00
Connor McLaughlin 8af4f4f01a Common: ScopeGuard -> ScopedGuard 2022-07-26 18:37:16 +10:00
Connor McLaughlin 4295a70a89 Settings: Fix another typo in path saving 2022-07-26 17:39:52 +10:00
Connor McLaughlin 0b4c009d5b Settings: Fix some incorrect folder config keys 2022-07-25 22:44:13 +10:00
Connor McLaughlin a8f5146010 GameDatabase: Add some missing OSD message keys 2022-07-25 18:06:17 +10:00
Silent bea9fe4b00
NeGcon: Fix default mappings
I is typically used to "proceed" or "accelerate",
and that is better suited for R2 than L2.
2022-07-23 10:54:54 +02:00
Connor McLaughlin fc40397818 GPU: Don't set empty post chain 2022-07-23 13:55:09 +10:00
Connor McLaughlin be03998be0 System: Fix title not showing for non-database discs 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 a5f5be1a60 Qt: Fix directory setting changes 2022-07-23 01:28:19 +10:00
Connor McLaughlin 75b4891f78 Qt: Fix Apply Game Settings option 2022-07-23 00:13:55 +10:00
Connor McLaughlin 701780e2ef Qt: Regression fixes 2022-07-22 22:53:06 +10:00
Connor McLaughlin b42b5501f6 UI: Massive revamp, new features and improvements 2022-07-22 21:19:54 +10:00
Connor McLaughlin af91fcf195 Backport more common classes 2022-07-21 17:29:58 +10:00
Connor McLaughlin 462eb2c155 Add Host/HostSettings 2022-07-21 17:29:58 +10:00
Connor McLaughlin 6a6ab6529a Backport SettingsInterface 2022-07-21 17:29:58 +10:00
Connor McLaughlin 0c0bd4c995 dep: Update imgui to v1.88 2022-07-21 17:29:58 +10:00
Connor McLaughlin b7fbde31a7 Move utility classes from common to own static lib 2022-07-21 17:29:58 +10:00
Connor McLaughlin d2ca454576 Sync filesystem.h/path.h 2022-07-21 17:29:57 +10:00
Connor McLaughlin f89529015c dep: Move Vulkan loader to common 2022-07-21 17:29:57 +10:00
Connor McLaughlin fd3507c16d Core: Replace Timestamp usage with fmt 2022-07-21 17:29:57 +10:00
Connor McLaughlin b5bf3593c4 ByteStream: Move routines from FileSystem to ByteStream 2022-07-21 17:29:57 +10:00
wheremyfoodat d959899022 Allow .ps-exe suffix for executables. 2022-07-16 19:05:17 +03:00
Silent 3a70e4d57d
Add keys to more OSD messages:
* Resolution scale
* Multisampling
* Switching software/hardware rendering
* Switching PGXP CPU
* Switching post processing
* Switching widescreen hack
2022-05-09 23:42:28 +02:00
Connor McLaughlin 44d47e898e
Merge pull request #2824 from stenzek/raintegration
Cheevos: Add RAIntergration support
2022-04-18 19:32:43 +10:00
Connor McLaughlin 296f613b4e Cheevos: Rework functions into namespace 2022-04-18 19:13:38 +10:00
Connor McLaughlin 9a5ef2d0a2 Cheevos: Add RAIntergration support 2022-04-18 19:13:33 +10:00
Silent 506796a335
Add 5106, 5146, 5186 codes for indirect reads from a register code 2022-04-15 19:04:02 +02:00
Connor McLaughlin 9ab64ecdb3 CDImage: Add Precache() method 2022-04-03 21:09:36 +10:00
Connor McLaughlin 859a156b3c Various build fixes 2022-03-27 17:38:48 +10:00
Connor McLaughlin a55b5022c7 System: Include cheevos state in save states 2022-03-27 16:59:02 +10:00
Connor McLaughlin 584525cb11 Cheevos: Move to core 2022-03-27 16:59:02 +10:00
Connor McLaughlin c43df29abc ImGuiFullscreen: Move to core 2022-03-27 16:59:02 +10:00
Connor McLaughlin fd76f437b3 Core: Purge WITH_IMGUI define 2022-03-27 16:59:02 +10:00
Brian Blakely 717ee3103f M3U: Preloading to RAM for single-disc playlists. 2022-03-27 16:58:51 +10:00
Connor McLaughlin 46737acecd CPU: Prevent mismatched va_start/va_end in log 2022-01-06 22:47:10 +10:00
Connor McLaughlin 541947c6f8 CPU/CodeCache: Fix currently-invalidated blocks breaking memory states 2022-01-06 22:47:10 +10:00
Connor McLaughlin fa9e50d7c1 HostInterface: Don't disable fastmem for runahead 2021-12-25 14:28:33 +10:00
Connor McLaughlin 25ea24853f HostInterface: Don't disable recompiler for runahead 2021-12-25 14:28:33 +10:00
Connor McLaughlin 4513c7a23d System: Invalidate instead of flushing code cache on memory state 2021-12-25 14:28:33 +10:00
Connor McLaughlin c440593788 CPU/CodeCache: Add InvalidateAll() method 2021-12-25 14:28:32 +10:00
Connor McLaughlin fe2062ff9f System: Warning fix 2021-12-25 14:28:32 +10:00
Connor McLaughlin bbf67ef544 CPU: Warning fix 2021-12-25 14:28:32 +10:00
Connor McLaughlin d55c86ccd8 HostInterface: Fix Linux build 2021-11-26 11:43:58 +10:00
Connor McLaughlin 7522304360 HostInterface: Add keyed OSD messages 2021-11-26 11:31:59 +10:00
Connor McLaughlin c346dfe8a4 SPU: Drop OOB register warnings to dev level 2021-11-26 11:31:59 +10:00
Albert Liu 1f07ea6ecc MDEC: EOB is optional for complete blocks 2021-11-14 20:46:05 -08:00
Connor McLaughlin 13453ee6d8
Merge pull request #2715 from stenzek/pvd-hash
System: Use exe hash plus pvd hash for image hash code
2021-11-10 12:34:55 +10:00
Connor McLaughlin 14eecae680 System: Use exe hash plus pvd hash for image hash code 2021-11-09 12:54:30 +10:00
Albert Liu 3273ca36ef AnalogController: Simulate status byte toggling 2021-11-07 12:31:27 -08:00
Albert Liu ab496ef8fe AnalogController: Don't re-enable legacy rumble on manual toggles 2021-11-07 12:31:27 -08:00
Connor McLaughlin 946481c2aa System: Add a workaround for PSF files with incorrect header 2021-11-06 10:48:23 +10:00
Connor McLaughlin ec31690587 CDROM: Fix incorrect delay on setmode while shell opening 2021-11-05 15:19:23 +10:00
Connor McLaughlin 6bb7672168
Merge pull request #2683 from CookiePLMonster/fix-is-valid-psexe-header
Fixup IsValidPSExeHeader
2021-10-29 13:17:35 +10:00
Connor McLaughlin 25f69e7f8c CDROM: Special case immediate GetlocP after play/read before int
Fixes CDDA in Mad Panic Coaster.
2021-10-29 13:16:42 +10:00
Silent bcbe93a462
Fixup IsValidPSExeHeader 2021-10-28 19:16:55 +02:00
Connor McLaughlin 5cef81b2a0 GPU: Reduce log level of IRQ request command 2021-10-25 17:27:41 +10:00
Connor McLaughlin 355d7664d2 System: Fix unused variable warning 2021-10-25 17:27:41 +10:00
Connor McLaughlin 48e55ab87b MDEC: Fix warnings in gcc debug build 2021-10-25 17:27:41 +10:00
gameblabla 6a005f0a4e
Set DSRINPUTLEVEL and CTSINPUTLEVEL to true for Armored Core
Without this, Armored Core will assume that a link cable is plugged in
and make the local multiplayer unavailable.
In the future, we should have proper link support but for now,
let's just do this instead to at least allow people to play it locally.

Many thanks to Albert Liu for the proper fix :
previously, we were just reporting 0xFFFFFF for SIO STAT.

Co-authored-by: Albert Liu <45282415+ggrtk@users.noreply.github.com>
2021-10-24 12:09:59 +02:00
Connor McLaughlin 13c5ee8bfb GPU: Fix incorrect value for status bit 13
Fixes openbios boot animation.
2021-09-29 10:48:55 +10:00
Connor McLaughlin 497a5b8dd1 GPU: Don't reset CRTC state on soft reset 2021-09-29 10:48:25 +10:00
Connor McLaughlin 8864b48c02
Merge pull request #2624 from CookiePLMonster/fix-safe-unaligned-writes
Make DoSafeMemoryAccess return true properly for RAM, BIOS, dcache writes
2021-09-26 09:57:26 +10:00
Connor McLaughlin c0a29f7bfd Fix a few warnings over the place 2021-09-26 09:56:17 +10:00
Silent 270899dbdb
Make DoSafeMemoryAccess return true properly for RAM, BIOS, dcache writes
Fixes broken cheats when writing to unaligned addresses,
maybe also achievements.
2021-09-24 10:07:04 +02:00
Connor McLaughlin f7f121f036 Bus: Handle unaligned accesses in safe memory routines 2021-09-15 12:24:33 +10:00
Connor McLaughlin e12474ac91 Cheats: Use safe memory access routines 2021-09-10 15:53:15 +10:00
Connor McLaughlin 8dcd68b0a8 CPU: Make Safe{Read,Write}Memory{Byte,Halfword,Word} truely safe 2021-09-10 15:53:14 +10:00
Connor McLaughlin d2e90b0516 CPU/Recompiler: Reduce register usage of SWL/SWR
Fixes crash in Ape Escape on AArch32.
2021-09-10 15:53:11 +10:00
Connor McLaughlin 8769a55298 SPU: Add a couple more reverb registers to debug window 2021-09-01 15:05:05 +10:00
Connor McLaughlin 1e88d04430 GPU: Set display parameters even when disabled 2021-08-24 11:57:14 +10:00
Connor McLaughlin 461e6aa50b GPU: Update display on reset 2021-08-24 11:57:12 +10:00
Connor McLaughlin 75e9506803 System: Get rid of double GPU reset 2021-08-24 11:57:11 +10:00
Connor McLaughlin 628dc36e77 GPU: Add GPU::GetFullDisplayResolution() 2021-08-24 11:57:09 +10:00
Connor McLaughlin a44e9d16fb CDROM: Fix second response event getting lost on state load 2021-08-24 11:57:06 +10:00
Connor McLaughlin 2bb43ffac7
Merge pull request #2547 from PugsyMAME/master
New F6 Cheat Type (IF,ELSE IF, ELSE structure)
2021-08-23 02:18:52 +10:00
Connor McLaughlin f85387345e PGXP: Fix memory past 2MB 2021-08-23 02:18:06 +10:00
PugsyMAME 0ebb791323
New F6 Cheat Type (IF,ELSE IF, ELSE structure)
Cheat Type F6 lets you perform cheats in IF / ELSE IF / ELSE constructs along 
with multiple conditions for each one.

It supports conditions  D0, D1, D2, D3, E0, E1, E2, E3, A0, A1, A2, A3, D7 and 
two new types that will only be available in the F6 conditions :- 
E4 & E5 which are bit comparisons on bytes (set and clear). 

Any of those types which are "block conditionals" like D7 will be treated as a 
single condition with the other conditions so you wont need to worry about 
extra 00000000 FFFFs just for them (infact you can drop them completely apart
from the last 00000000 FFFF, which you can also drop if you have no trailing
cheat lines after the end of the construct.


#IF / ELSE IF / ELSE Statement Example with Notes
80001000 00000001   Setup Test Condition 1
80001004 00000002   Setup Test Condition 2
80001008 00000003   Setup Test Condition 3
8000100C 00000004   Setup Test Condition 4

                    1F = IF, last two digits determine the number of conditions to check
                    F600000x  x = 0 All conditions must be true, x = 1 At least One condition must be true                  
F6000000 1F000004   Check the next 4 lines as the conditions for the IF loop to be taken

D0001000 00000001  )
D0001004 00000002  )Conditions
D0001008 00000003  )
D000100C 00000004  )

80001010 00005555    Poke(s)
00000000 0000FFFF  End of IF Statement

F6000000 E15E1F02  E15E1F = ELSE IF (same format as IF) - Can have multiple ELSE IF Blocks or none at all
D0001008 00000003  )
D000100C 00000005  )Conditions
80001010 00008888     Poke(s)
00000000 0000FFFF  End of ELSE IF Statement 

F6000000 E15E0000  E15E = ELSE (no need for conditions - this will poke if the others dont)
80001010 0000AAAA    Poke(s)
00000000 0000FFFF End of ELSE Statement



#Multiple Test Using Joypad Left Thumb Directions, Look at Address 1100 in Debugger
F6000000 1F000001  
D7020002 00100000
90001100 50205055
90001104 53534552 
90001108 20204445
9000110C 20202020
F6000000 E15E1F01
D7020002 00400000
90001100 4E574F44
90001104 45525020
90001108 44455353
9000110C 20202020
F6000000 E15E1F01
D7020002 00800000
90001100 5446454C
90001104 45525020
90001108 44455353
9000110C 20202020
F6000000 E15E1F01
D7020002 00200000
90001100 48474952
90001104 52502054
90001108 45535345
9000110C 20202044
F6000000 E15E0000
90001100 20202020
90001104 20202020
90001108 20202020
9000110C 20202020
00000000 0000FFFF
2021-08-21 15:08:34 +01:00
Silent ebe862561d
Fix A0, A1, A2, A3 cheats 2021-08-19 22:21:07 +02:00
Connor McLaughlin 18241978ea CDROM: Cancel command second response when queuing new command
Fixes Wipeout corrupting parts of the TOC.
2021-08-18 00:25:19 +10:00
Connor McLaughlin 3236917479 HostInterface: Enable 8MB RAM should be disabled by all enhancements 2021-08-15 14:23:20 +10:00
Connor McLaughlin 521d20bcd2 CommonHostInterface: Add display enhancement settings option 2021-08-15 14:23:20 +10:00
Connor McLaughlin 1ee3882afd HostInterface: Default show status indicators to true 2021-08-15 14:23:20 +10:00
Connor McLaughlin 0491c893d9 HostInterface: Fix compile error on Android 32-bit 2021-08-15 14:23:20 +10:00
Connor McLaughlin 3f3607548f CommonHostInterface: Make status indicators toggleable 2021-08-12 21:31:40 +10:00
Connor McLaughlin c4f0dafb1f System: Don't time memory load/save states by default
Reduces log spam.
2021-08-12 21:31:40 +10:00
Connor McLaughlin 4fac032ff6 SPU: Add a macro to enable per-voice dumping 2021-08-07 13:21:53 +10:00
Connor McLaughlin 50a09384e1 CommonHostInterface: Add onscreen indicator for rewind 2021-08-07 12:07:04 +10:00
Connor McLaughlin 8bea6e1530 GPU/Vulkan: Fix warnings introduced by #2438 2021-08-07 12:01:02 +10:00
Connor McLaughlin 81a90d66f5 HostInterface: Disable rewind on 32-bit ARM/Android 2021-08-07 11:58:05 +10:00
Connor McLaughlin 66cfd98685
Merge pull request #2460 from PugsyMAME/master
Fixed cheat type 52 only working with 1st subtype
2021-08-07 11:35:58 +10:00
Wunkolo 98089180c0 GPU/Vulkan: Add debug utility functions
Adds a way to set the name of vulkan
objects, and automatically determining their `VkObjectType` enum value
at compile-time. As well as a utility-object for creating debug-scopes
for `VkQueue` and `VkCommandBuffer` objects. `DebugScope` objects will
automatically emit `Begin` and `End` commands within the ctor and dtor
and allow for C++ scopes to name and color sections of a vulkan command.
These DebugScopes are also able to be nested within each other and will
automatically pick a color depending on the current recursive depth.

These functions are all null-stubbed in non-debug compilations.
2021-08-01 10:56:56 -07:00
PugsyMAME 106dc2951d
Fixed cheat type 52 only working with 1st subtype
Fixed typo in ExtCheatRegistersCompare, which made it so that only 52 type 5200 worked,
2021-07-31 11:14:15 +01:00
Connor McLaughlin a542fa85d6 CPU/CodeCache: Fix crash when switching from interpreter to recompiler 2021-07-31 13:29:02 +10:00
Connor McLaughlin b41d56d305 TimingEvent: Fix event list getting unsorted on Delay 2021-07-31 13:25:03 +10:00
Connor McLaughlin 5bf24265aa CPU/CodeCache: Fix compilation without recompiler 2021-07-27 13:11:46 +10:00
Connor McLaughlin c9f8828448 CPU/CodeCache: Drop block linking warning to dev level 2021-07-27 13:11:42 +10:00
Connor McLaughlin 5ff9783626 CPU/Recompiler/ARM: Optimize icache check 2021-07-24 14:07:37 +10:00
Connor McLaughlin e2db78b0ef CPU/Recompiler/AArch64: Fix assertion tripping in debug builds 2021-07-24 13:30:35 +10:00
Connor McLaughlin d9d41de81b CPU/Recompiler: Skip updating current_instruction_pc 2021-07-24 13:30:35 +10:00
Connor McLaughlin 21938e14c6 CPU/Recompiler: Implement block linking 2021-07-24 13:07:11 +10:00
Connor McLaughlin 29bc0c950a System: Reset before loading save state on boot 2021-07-24 13:07:09 +10:00
Connor McLaughlin 9628f0d9d0 CPU/Recompiler: Reduce register usage of LWL/LWR/SWL/SWR 2021-07-24 13:06:53 +10:00
Connor McLaughlin 53299e3c7b CPU/Interpreter: Load delay check should be a debug assertion 2021-07-24 13:04:54 +10:00
Connor McLaughlin 6081e2415f CPU/Recompiler: Simplify PC addressing 2021-07-24 13:03:45 +10:00
Connor McLaughlin 033d85cd90 CPU/Recompiler: Simplify fast map addressing 2021-07-24 13:03:43 +10:00
Connor McLaughlin d230e7d22f HostInterface: Fix SetUserDirectoryToProgramDirectory() 2021-07-23 18:07:18 +10:00
Connor McLaughlin 89a11519fb D3D12: Use clears instead of draws for simple VRAM fills 2021-07-22 13:58:03 +10:00
Connor McLaughlin a0fa3a3994 HostInterface: Don't save screenshot when switching renderers 2021-07-22 13:58:03 +10:00
Connor McLaughlin 70209db402 GPU/HW: Implement oversized VRAM fills in hardware
Fixes downscaling in Bugs and Taz PAL.
2021-07-21 19:24:10 +10:00
Connor McLaughlin 7ea78ad2df CPU/CodeCache: Fix incorrect macro for code buffer size 2021-07-20 00:00:43 +10:00
Connor McLaughlin 3cf12e8f0d Controller: Round floating point axis values instead of flooring 2021-07-17 20:38:23 +10:00
Connor McLaughlin 0000750527 System: Fix rewind rate with vsync off 2021-07-17 20:14:40 +10:00
Connor McLaughlin e9374646e9 GPU/SW: Fix performance regression on 32-bit ARM 2021-07-17 14:03:04 +10:00
Connor McLaughlin 30db081a64 CPU: Simulate stalls from GTE instructions 2021-07-16 12:27:31 +10:00
Anderson_Cardoso 41fc84ae51
Update information about SBI file
A simple update message to make it more clear for end users in regard SBI files.
2021-07-14 10:55:07 -03:00
Connor McLaughlin c2c204c845 CDROM: Fix async readahead causing lockups in some games 2021-07-14 01:25:49 +10:00
Connor McLaughlin 9723e617f9 GPU/D3D12: Implement VRAM write replacements 2021-07-13 14:17:04 +10:00
Connor McLaughlin 18df8d48e7 GPU/OpenGL: Use linear sampling for VRAM write replacement blit 2021-07-13 14:17:04 +10:00
Connor McLaughlin d432accf81 GPU/D3D11: Use linear sampling for VRAM write replacement blit 2021-07-13 14:17:04 +10:00
Connor McLaughlin bb2e459f9f Warning fixes 2021-07-12 22:44:02 +10:00
Connor McLaughlin c962e9899d CDROM: Reject invalid Setloc commands
Fixes delays in Simple 1500 Series Vol. 31 - The Sound Novel.
2021-07-12 21:14:06 +10:00
Connor McLaughlin a32ef4a963 CDROMAsyncReader: Support reading ahead more sectors 2021-07-12 21:14:06 +10:00
Connor McLaughlin 552b0098ef GPU/HW: Fix incorrect initial transparency mode
Fixes broken menus in Road Rash after loading state.
2021-07-12 21:14:06 +10:00
Connor McLaughlin 1405ba8a6b GPU/SW: Specialize rasterizing functions further 2021-07-11 21:23:12 +10:00
Connor McLaughlin b35a1308c4 Core: Make XAudio2 the default backend for UWP 2021-07-11 15:20:38 +10:00
Connor McLaughlin ca747d8d7a CPU/CodeCache: Support UWP 2021-07-11 15:20:38 +10:00
Connor McLaughlin c0352eb19f GPU/HW: Clear host display texture on interlace switch 2021-07-11 14:09:11 +10:00
Connor McLaughlin 928b5694ed GPU/D3D12: Fix VRAM getting trashed on interlace switch 2021-07-11 14:07:33 +10:00
Connor McLaughlin 05259bc851 HostInterface: Refresh display on settings change/state load 2021-07-11 14:03:14 +10:00
Connor McLaughlin bf63be27c6 GPU/D3D12: Fix incorrect descriptor for VRAM copy 2021-07-11 13:43:59 +10:00
Connor McLaughlin 096a92ba84 GPU/HW: Simplify shader compile progress updates 2021-07-11 13:21:41 +10:00
Connor McLaughlin 98af6e7228 GPU/ShaderGen: Use [unroll] for resolve loops 2021-07-11 13:08:25 +10:00
Connor McLaughlin 719710ef98 GPU/D3D12: Fix multisampled resolve 2021-07-11 13:07:55 +10:00
Connor McLaughlin 2937c72721 GPU/D3D12: Fix incorrect samples for textures 2021-07-11 13:07:44 +10:00
Connor McLaughlin 14e7f8fd13 GPU: Add D3D12 renderer 2021-07-10 21:45:10 +10:00
Connor McLaughlin 5da9edceb9 Build: Unify MSBuild options in props files 2021-07-10 21:45:10 +10:00
Connor McLaughlin 79dccc9d05 GPU/SW: Fix regression with non-transparent triangles 2021-07-10 13:23:12 +10:00
Connor McLaughlin cf51557b7f GPU/Vulkan: Fix possible out-of-range pipeline with depth buffer 2021-07-09 13:07:41 +10:00
Connor McLaughlin 8f3162675f Warning fixes 2021-07-07 19:54:13 +10:00
Connor McLaughlin 2f3512aa33 GPU/D3D11: Fix incorrect state being used with depth buffer on 2021-07-05 21:44:08 +10:00
Connor McLaughlin acb108f3ea GPU/SW: Improve software blending precision 2021-07-05 21:44:03 +10:00
Connor McLaughlin 6e9ebfa5b5 GPU/D3D11: Fix possible buffer overwrite when reading back 2021-07-04 21:40:44 +10:00