100 Commits
Author SHA1 Message Date
Ziemas 777a812fbe Performancemetrics: Add include for std::abs 2026-10-05 10:19:28 -04:00
Ziemas b67a81f6e7 DEV9: Fix DMA size weirdness 2026-09-03 14:16:13 +02:00
Ziemas e35bdddab2 IOP: Clear jit cache on DEV9 DMA 2026-09-03 14:16:13 +02:00
Ziemas ca03806a4c EE/IOP: Fix loading elf's through relative path 2026-08-13 14:52:05 -04:00
Ziemas 86d76bbf59 GameDB: Patch The Gift to fix sound RPC 2026-07-16 16:45:38 +02:00
Ziemas e23416aa92 IR3000A: Use SmallString with Zydis formatter 2026-06-27 14:26:08 -04:00
Ziemas 9a9cfca706 IR5900: Use SmallString with Zydis formatter 2026-06-27 14:26:08 -04:00
Ziemas 59feb88ef7 IR5900: fix recMemcheck to not cache loaded reg
This functions calls out of the JIT, so it will get stomped on by
something else.
2026-06-27 14:26:08 -04:00
Ziemas 247cda0e26 IR3000A: DUMP_BLOCKS: Symbolize text ptr relative 2026-06-27 14:26:08 -04:00
Ziemas 9f3233224e IR5900: DUMP_BLOCKS: Symbolize text ptr relative 2026-06-27 14:26:08 -04:00
Ziemas a3f3e8733d GS: fix build with libstdc++ 16 2026-05-06 18:05:51 -04:00
Ziemas 70f6169eff StackWalker: Fix bugs.
Fixes incorrect stack tracing in cases where we are stoppen on certain instructions.
2026-04-28 19:58:38 -04:00
Ziemas a1a3cd9d1b DebugData: Remove stack getters
They're not used and the naming is confused, we can readd these if we
actually want to use them.
2026-04-28 19:57:48 -04:00
Ziemas 86c5d2ae2a DebugInterface: Allow stack tracing any IOP thread 2026-04-28 19:57:48 -04:00
Ziemas d759055231 DebugInterface: Enable stack tracing any EE thread 2026-04-28 19:57:48 -04:00
Ziemas c6474852d5 DebugData: Add function for getting register state 2026-04-28 19:57:48 -04:00
Ziemas a2ac576711 DebugData: Add struct for the saved thread context 2026-04-28 19:57:48 -04:00
Ziemas 1b6924a033 DebugData: Rename EE sleep state to match IOP 2026-04-28 19:57:48 -04:00
Ziemas 8e5e053b81 DebugData: Fix EE thread struct 2026-04-28 19:57:48 -04:00
Ziemas 3e60e46ae4 IOP Jit: Error on jmup to unaligned address 2026-03-20 11:13:15 -04:00
Ziemas 194037bd4e IOP Jit: Add fallback for unmapped recLUT pages 2026-03-20 11:13:15 -04:00
Ziemas db6cb43336 vif: warn on invalid unpack instead for crashing 2026-03-20 12:18:56 +01:00
Ziemas ec8f3b0414 EE JIT: Error on jump to unaligned address 2026-03-17 11:31:56 -04:00
Ziemas dde3c73af7 EE JIT: Add fallback for unmapped recLUT pages.
This prevents guest from segfaulting pcsx2 by jumping to random memory.
2026-03-17 11:31:56 -04:00
Ziemas f0723a6ec9 vu: 64bit cycle fixes
[SAVEVERSION+]
2026-03-15 08:27:44 -04:00
Ziemas 2c0bb98cac SPU: Speed up DMA 2026-03-11 15:56:49 +01:00
Ziemas 1bf53e6432 AudioStream: Remove manual volume vectorization
Surely the compiler will do this fine now that it's a simple loop.
2026-03-10 10:39:02 +01:00
Ziemas 58a4f1e5e9 SPU: Do DC filtering with float samples 2026-03-10 10:39:02 +01:00
Ziemas ea304becf6 AudioStream: Remove now rendundant copying 2026-03-10 10:39:02 +01:00
Ziemas b0a7d6994b AudioStream/GSCapture: Use float output 2026-03-10 10:39:02 +01:00
Ziemas 608922dc41 IOP: Override memory size argument to IOPBOOT
This makes the extended IOP ram accessible on regular bootroms
2026-03-08 14:46:09 -04:00
Ziemas 438937ace3 Debugger: Fix IOP thread list mem size check 2026-03-08 14:46:09 -04:00
Ziemas 50605bd0e9 IOP JIT: Switch LUT to DynamicHeapArray 2026-03-08 14:46:09 -04:00
Ziemas c1d46b1866 IOP: TOOL config registers 2026-03-08 14:46:09 -04:00
Ziemas e47b32b2e6 Memory: Combine main and extra memory arrays
There doesn't seem to be any particular reason to not combine them into
one, less sketchy than accessing the extra array by going past the end
of the main one too.
2026-03-08 14:46:09 -04:00
Ziemas f0dc40ac15 USB: Use Ps2MemSize instead of sizeof 2026-03-08 14:46:09 -04:00
Ziemas 15a502cf36 IOP: Enable extension of RAM to devkit spec (8MB) 2026-03-08 14:46:09 -04:00
Ziemas baecf73f4b IopCounters: Cast to u64 to get full 64-bit mask 2026-03-07 09:31:05 -05:00
Ziemas 9a2561d9cf IOP: Switch to 64bit cycle counter
[SAVEVERSION+]
2026-03-07 09:31:05 -05:00
Ziemas 14db91f756 mvu: fix missed 64bit conversion 2026-03-07 09:28:55 -05:00
Ziemas 99df8cacbf iR5900: resolve old TODO 2026-03-07 09:28:55 -05:00
Ziemas f576962dd8 EE: Switch to 64 bit cycle counter
[SAVEVERSION+]
2026-03-07 09:28:55 -05:00
Ziemas 1275a9ebaf iR3000A: rename "willbranch3" to link_next_block 2026-03-05 10:35:45 -05:00
Ziemas 3104fc20da IOP: Use names for interrupt registers 2026-03-05 10:35:45 -05:00
Ziemas 22cdc36aff Debugger: Show ID of waited object in thread list 2026-03-04 20:48:51 -05:00
Ziemas f5b33d376b Debugger: Fix IOP thread list offsets 2026-03-04 20:48:51 -05:00
Ziemas a39a0fd268 SPU: Move the isa selection for reverb resampling
Collect them all in SPU2::InternalReset.
2026-02-12 12:12:07 -05:00
Ziemas f14e061438 SPU: Multi-isa mixer 2026-02-12 12:12:07 -05:00
Ziemas 0356b8a73e SPU: Convert V_Core::Mix to free function 2026-02-12 12:12:07 -05:00
Ziemas 1d9b7c0387 SPU: Remove old comment 2026-02-12 12:12:07 -05:00
Ziemas 2164078b2d SPU: Moved mixer definitions to top of file 2026-02-12 12:12:07 -05:00
Ziemas 9437e1ac41 SPU: Fix and simplify SPU IRQ's
The IRQ handling was bugged due to not resetting has_to_call_irq when
toggling the IRQ enable bit. But I don't see why we need that anyway, we
can just use the IRQ bit in SPDIF info to track that state.
2026-02-08 09:07:31 -05:00
Ziemas 329c6d42be SIO2: Rename registers
Based on reverse engineering by frno7
2026-02-08 09:03:49 -05:00
Ziemas 45490d903a SPU: Slow down DMA 2026-01-29 22:26:28 -05:00
Ziemas 10fc9a790d SPU: Emulate voice decode buffers
This makes the timing of NAX advancing more similar to console since it
emulates the decode buffer behaviour of it rushing ahead of playback
until the buffer is full.

It also makes interpolation of the first four samples more correct by
using real data instead of the zero filled previous values.

[SAVEVERSION+]
2026-01-28 12:18:43 -05:00
Ziemas c42330eebf SPU: Remove unused voice struct members
Might as well If the saveversion is already being bumped.

[SAVEVERSION+]
2026-01-28 12:18:43 -05:00
Ziemas 680e05fead SPU: clang-format mixer.cpp 2026-01-28 12:18:43 -05:00
Ziemas ad6d0f7a6b EE JIT: Fix LUT weirdness 2026-01-13 19:37:18 -05:00
Ziemas e1ba9bacda SPU: Deduplicate DMA counter code 2025-12-05 09:42:26 -05:00
Ziemas 169022923c SPU: Remove redundant update on DMA
The SPU will update the counters and run to the current cycle by itself
when DMA happens, so this should be redundant.
2025-12-05 09:41:44 -05:00
Ziemas 0f5ff68679 SPU: Remove KON delay/check key once per T 2025-11-02 14:36:54 -05:00
Ziemas 37f28e95b6 Core: Calculate EE/IOPmemSize based on structs 2025-09-11 12:45:12 +02:00
Ziemas 1870193615 Core: Fix EEmemSize
It's got desynced from the actual size of the EEVM_MemoryAllocMess
struct at some point.
2025-09-11 12:45:12 +02:00
Ziemas b69e6da105 Debugger: add 3 operand mult to assembler 2025-07-19 15:28:31 -04:00
Ziemas 2ad71d046b Debugger: Fix copying out of sorted thread view 2025-07-16 09:47:09 +02:00
Ziemas 7835ebd14f debugger: don't refresh thread/module when paused 2025-06-29 16:52:17 -04:00
Ziemas fd67049cf9 debugger: sanity check module list 2025-06-29 16:52:17 -04:00
Ziemas c2f05371e4 debugger: update thread list on refresh 2025-06-29 16:52:17 -04:00
Ziemas 5c9c071086 debugger: set thread list vertical resize 2025-06-29 16:52:17 -04:00
Ziemas f7677105ed debugger: cache thread list in model 2025-06-29 16:52:17 -04:00
Ziemas 9e2a73c7a7 debugger: use monospace font for thread list 2025-06-29 16:52:17 -04:00
Ziemas c9f5f03d02 debugger: update module list on Refresh event 2025-06-29 16:52:17 -04:00
Ziemas c313736334 debugger: set vertical resize of module list 2025-06-29 16:52:17 -04:00
Ziemas 1eb9a60b4a debugger: cache module list in model 2025-06-29 16:52:17 -04:00
Ziemas e50fe50daf debugger: display iop module list 2025-06-29 16:52:17 -04:00
Ziemas 643c83c2a0 debugger: Find and build IOP module list 2025-06-29 16:52:17 -04:00
Ziemas 1094222d3f Debugger: Don't check frame count in isAlive 2025-06-22 20:19:13 +02:00
Ziemas 7abd2009b0 debugger: fix thread view row lookup 2025-05-20 11:57:11 -04:00
Ziemas fe0b401edd vtlb: silence backpatch log spam
Since this works well right now I don't think we need this.
2025-05-07 19:46:33 +02:00
Ziemas 69f8e82c3f gs: Missing cmath include 2025-05-07 19:31:44 +02:00
Ziemas d373cb602d IOP Debug: allow reading ROM 2025-03-22 11:42:26 -04:00
Ziemas 4a44d2668c SDL Audio: Set app name hint 2025-02-16 16:41:51 -05:00
Ziemas 741046079c DebugInterface: isValidAddres on physical
Mask off the segment bits
2025-01-25 09:56:35 -05:00
Ziemas 2e3501366f iR3000A/iR5900: Partial revert of 8c98f5d928 ("Remove mid block jumping") 2025-01-17 10:42:48 -05:00
Ziemas ef7169dbbf host: fix gcc build 2025-01-17 10:42:13 -05:00
Ziemas 33a475a456 DebugTools: Fix GCC build, missing include 2024-12-24 13:47:49 +01:00
Ziemas 67c5f0229b EE: vtlb handler for writes to IOP mem 2024-10-21 11:14:29 -04:00
Ziemas 35ada362d4 IOP/EE: Add SBUS interrupts
Lets the CPUs trigger an interrupt on the other.
2024-10-14 09:15:42 -04:00
Ziemas 5c83edb7b2 ExpressionParser: Add missing include in header 2024-09-11 09:09:38 -04:00
Ziemas 086bbf95dc Misc: Fix building with gcc14 (#11278) 2024-05-21 12:25:11 +10:00
Ziemas fd81349dab SPU: Only fire IRQ for Reverb reads when FxEnable 2024-05-03 21:35:51 +01:00
Ziemas 01849565aa SPU: VolumeSlide: disregard phase when exp + decr 2024-01-21 00:05:50 +10:00
Ziemas e1bfd95f63 MipsStackWalk: Detect leaf functions. 2023-10-26 19:25:13 +01:00
Ziemas 715bc94bd9 MipsStackWalk: Fix IOP stack walking 2023-10-26 19:25:13 +01:00
Ziemas e19c9a967d MipsStackWalk: clang-format 2023-10-26 19:25:13 +01:00
Ziemas 83c18d0cb6 DebugInterface: Fix r3000 isValidAddress 2023-10-26 19:25:13 +01:00
Ziemas 09574b3937 SPU2: Temporary CDDA fix 2023-10-20 16:46:12 +01:00
Ziemas e2d4e384e3 SPU2: Minor cleanup
Remove useless RegWrite_Reverb

Update some comments and remove some useless ones.
2023-10-20 16:46:12 +01:00
Ziemas 6bff6016ff SPU2: Rearrange interpolation table
Being able to contiguously access the terms we need might come in handy
for SIMD fun later.
2023-10-20 16:46:12 +01:00
Ziemas d920fe6c5e SPU2: Pass reverb input by value 2023-10-20 00:34:39 +01:00