78 Commits
Author SHA1 Message Date
SourMesen e391fd8f9a Code: Add auto-formatting rules for C++ (clang-format) and enforce in CI via "clang-format" and "dotnet format" (#78)
* Code: Add auto-formatting rules for C++ projects (clang-format) and enforce code style via "clang-format" and "dotnet format"

* fix ui format warnings
2026-04-30 06:03:55 -07:00
SourMesen 8e4dd329ac Debugger: Lua - Added new APIs: getCpuState, setCpuState, getMasterClock, getCpuCycleCount (#58)
getCpuState/setCpuState allow the same functionality as getState/setState, but limited to only the CPU's state, making them much faster (some performance optimizations to the serialization & Lua code were also done)
getMasterClock/getCpuCycleCount are very fast alternatives to getState when all the script needs is a cycle count.
2026-04-26 18:00:08 -07:00
Sour de8a0819d6 Debugger: SNES - Fixed stack overflow crash when hitting a SPC breakpoint 2025-05-06 12:29:55 +09:00
Sour 36bd1611c6 Debugger: Catch up APU for all consoles when breaking, to allow register viewer/etc. to display up-to-date values 2025-04-03 22:41:27 +09:00
Sour ad548465c6 Debugger: NES - Added new "break on..." options
Invalid VRAM access, Invalid OAM write, DMA controller read, Unstable opcodes
2025-03-27 21:16:02 +09:00
Sour 762e5ea617 Debugger: NES header editor - Fixed incorrect values for VS system roms 2025-02-11 21:46:30 +09:00
Sour 614e61a2d1 Debugger: Fixed issues with step over/out in some scenarios (bank swapping, recursive functions, etc.)
Only break when both the stack pointer and the return address match what the debugger was expecting, instead of just the return address
2024-12-07 17:46:28 +09:00
Sour de20208abe NES: Added option to enable CPU test mode registers 2024-09-28 16:55:45 +09:00
Sour ff874bc86d Debugger: NES Header Editor - Fixed behavior/crash when opening header editor with softpatched roms or compressed files 2024-07-19 21:37:51 +09:00
Sour 074034aa66 Debugger: Use cpu-specific cycle counts for profiler data
Fixed SNES co-processors (including the SPC) reporting their profiling data based on SNES master clocks, which wasn't accurate/reliable
2024-06-23 16:21:49 +09:00
Sour aa9c459630 Debugger: Step Back - Allow stepping back 1 scanline/frame at a time + remove restriction that caused step back to only work for up to 30 frames 2024-01-26 23:39:31 +09:00
Sour 1cd6d078a7 Debugger: NES - Fixed/improved display for DMC/OAM DMA reads 2023-07-18 18:21:03 +09:00
Sour 44233413a1 Debugger: Prevent load state/reset counters from triggering uninit ram read break on all reads 2023-04-15 15:34:24 -04:00
Sour 6e82199b0f Debugger: Prevent dummy reads from triggering uninit read breakpoint (NES/PCE) 2023-04-13 22:28:22 -04:00
Sour 7090fcdb71 Debugger: Warn when "save rom as" fails 2023-04-11 22:33:02 -04:00
Sour a7640e28d2 Debugger: NES - Fixed "save rom as" not working properly with CHR ROM games 2023-03-17 21:54:17 -04:00
Eldred Habert 097e2d40c7 Fix build errors with GCC (#2)
* Delete libevdev as well with `make clean`
* Fix explicit specialization is non-namespace scope
* Fix declaration of CgbFlag changing its meaning
* Fix declaration of NesHeader changing its meaning
2023-01-28 17:59:08 -05:00
Sour e96d6f3ca5 NES: Added HD pack builder tool 2022-12-29 18:28:33 +09:00
Sour 9751895751 Debugger: Allow saving/loading save states without forcing the emulator to run until the next vertical blank 2022-12-27 16:29:16 +09:00
Sour 49d3aebba1 Disable breakpoints/debugger while rewinding 2022-10-15 13:12:33 -04:00
Sour 3fe77d271a Debugger: Added "memaddress" token in expressions 2022-09-28 18:20:45 -04:00
Sour 048d292777 Debugger: NES - Prevent sprite DMA reads from being shown as DMC DMA reads on event viewer 2022-09-14 19:25:37 -04:00
Sour c3dd78b5ab Debugger: Implemented step back for all main CPUs 2022-09-11 14:50:40 -04:00
Sour 7108bdde36 Refactoring - Moved some leftover files out of the root folder 2022-09-08 21:48:49 -04:00
Sour 152abf690b Rename stdafx.h to pch.h 2022-09-08 21:29:52 -04:00
Sour 7b394aa686 Debugger: Added "bring to front on pause" option 2022-08-26 18:20:34 -04:00
Sour d384118da4 Debugger: Fixed call stack issues when NMI/IRQ land on JSR/RTI/RTS/etc calls 2022-08-25 20:38:21 -04:00
Sour 4fc5b2051e Debugger: Lua - Implemented step, reset 2022-08-04 19:10:30 -04:00
Sour efdbd7b82d Debugger: Profiler - Make GB tab use GB clock rather than SNES master clock 2022-07-27 23:52:54 -04:00
Sour 3fbd18e237 NES: Rename MiscUnlicensed to Unlicensed, move some other mappers to folders 2022-07-24 20:09:09 -04:00
Sour 948aec1d3a Linux: Fixed compilation warnings and crash when closing emulator (EmuApi.Release was called too early and other threads/timer could call IsPaused after it was called) 2022-07-13 19:53:48 -04:00
Sour 61fbae131c Debugger: Added controllers tool 2022-07-09 19:39:35 -04:00
Sour 63cbe9bd73 Debugger: Instruction progression (+ step 1 cpu cycle for snes/sa1/pce) 2022-07-08 00:09:01 -04:00
Sour 22afe145d5 Debugger: Add "run one cpu cycle" in debugger (NES-only for now) 2022-07-06 20:30:47 -04:00
Sour b36edfb024 Debugger: CX4 call stack/profiler support 2022-07-04 17:14:05 -04:00
Sour f84f1c67c1 Debugger: Added actions to jump to nmi/irq/etc. vectors 2022-07-03 12:59:12 -04:00
Sour 008ed9077d Debugger: Refactor debug config 2022-07-01 12:34:00 -04:00
Sour 2576ff4a6b Debugger: Added "navigate to" options in memory tools 2022-06-27 21:42:05 -04:00
Sour 60889176b7 Debugger: Added "draw partial frame" option 2022-06-26 21:57:03 -04:00
Sour 5414afdbb4 Debugger: Added "Show jump labels" option 2022-06-26 14:44:59 -04:00
Sour deb6668da9 Debugger: Merged NES CDL files into a single file, show code/data percentages in status bar, fixed some with reset/load/save cdl 2022-06-12 16:22:20 -04:00
Sour 78ca62ed75 Debugger: Support for CDL in CHR ROM games (NES), option to hide used/unused tiles from tile viewer (when CDL data is available) 2022-06-12 00:26:03 -04:00
Sour fcd7e64582 Debugger: Fixed CDL behavior for SGB, refactor some of the CDL code 2022-06-11 15:19:24 -04:00
Sour d5d61b0472 Debugger - Memory mappings, predictive breakpoints, disassembly fixes/improvements, refactoring 2022-04-10 16:07:53 -04:00
Sour 191304e025 wip - everything to review 2022-04-06 18:37:35 -04:00
Sour b9d367e91a Debugger: Implement/refactor is jump/is return/etc logic for all CPUs 2022-03-24 21:39:00 -04:00
Sour 56b05cced6 Debugger: Implemented "move program counter" for most CPUs 2022-02-24 23:00:08 -05:00
Sour 92734d6015 Debugger: Exp. eval refactoring to allow getting more data than just the CPU's state 2022-02-21 21:27:14 -05:00
Sour 50cdababc0 Debugger: Implemented predictive breakpoints for GB 2022-02-20 22:25:35 -05:00
Sour ba0b5a89a5 Debugger: Code refactoring, fixes for marked breakpoints 2022-02-20 11:11:44 -05:00