Commit Graph

13432 Commits

Author SHA1 Message Date
Henrik Rydgård
5a3eeb9d9b ImDebugger: Fix issue with HLE Modules window always showing, more granular sleep logging 2024-11-21 15:48:18 +01:00
Henrik Rydgård
0e3c1df9b3 Add a way to access the ImDebugger from the DevMenu 2024-11-21 15:48:18 +01:00
Henrik Rydgård
59a56d66c7 Add a "reason" argument to sleep_ms().
sleep_ms() should generally be avoided when possible. This can be used to try
to track down unnecessary sleeps by adding some logging.

This commit on its own doesn't actually add any logging.
2024-11-21 15:28:51 +01:00
Henrik Rydgård
2eaffcf510 ImDebugger: Add atrac context viewer 2024-11-15 15:59:16 +01:00
Henrik Rydgård
ffe05bdf58 Memmap error message improvements 2024-11-15 15:59:16 +01:00
Henrik Rydgård
30207aa25c Stackwalk safety fix. Stackwalk logic fix (although probably not very important) 2024-11-15 15:59:08 +01:00
Henrik Rydgård
0776ee01a8 ImDebugger: Add initial HLE module explorer window` 2024-11-15 14:49:19 +01:00
Henrik Rydgård
b56626727e
Merge pull request #19627 from hrydgard/consider-kernel-vram-invalid
Some checks are pending
Build / build-windows (ARM64) (push) Waiting to run
Build / build-windows (x64) (push) Waiting to run
Build / build-uwp (push) Waiting to run
Build / test-windows (push) Blocked by required conditions
Build / build (./b.sh --headless --unittest --fat --no-png --no-sdl2, clang, clang++, test, macos, macos-latest) (push) Waiting to run
Build / build (./b.sh --headless --unittest, clang, clang++, test, clang-normal, ubuntu-latest) (push) Waiting to run
Build / build (./b.sh --headless --unittest, gcc, g++, gcc-normal, ubuntu-latest) (push) Waiting to run
Build / build (./b.sh --ios, clang, clang++, ios, ios, macos-latest) (push) Waiting to run
Build / build (./b.sh --libretro_android ppsspp_libretro, clang, clang++, android, android-libretro, ubuntu-latest) (push) Waiting to run
Build / build (./b.sh --qt, gcc, g++, qt, qt, ubuntu-latest) (push) Waiting to run
Build / build (cd android && ./ab.sh -j2 APP_ABI=arm64-v8a OPENXR=1, clang, clang++, android, android-vr, ubuntu-latest) (push) Waiting to run
Build / build (cd android && ./ab.sh -j2 APP_ABI=arm64-v8a UNITTEST=1 HEADLESS=1, clang, clang++, android, android-arm64, ubuntu-latest) (push) Waiting to run
Build / build (cd android && ./ab.sh -j2 APP_ABI=armeabi-v7a UNITTEST=1 HEADLESS=1, clang, clang++, android, android-arm32, ubuntu-latest) (push) Waiting to run
Build / build (cd android && ./ab.sh -j2 APP_ABI=x86_64 UNITTEST=1 HEADLESS=1, clang, clang++, android, android-x86_64, ubuntu-latest) (push) Waiting to run
Build / build (make -C libretro -f Makefile -j2, clang, clang++, libretro, clang-libretro, ubuntu-latest) (push) Waiting to run
Build / build (make -C libretro -f Makefile -j2, gcc, g++, libretro, gcc-libretro, ubuntu-latest) (push) Waiting to run
Build / test (macos-latest) (push) Blocked by required conditions
Build / test (ubuntu-latest) (push) Blocked by required conditions
Build / build_test_headless_alpine (push) Waiting to run
Generate Docker Layer / build (push) Waiting to run
Memory::IsValidAddress: Consider VRAM with a kernel flag invalid.
2024-11-13 10:03:31 +01:00
Henrik Rydgård
39a07a033c Make imdebugger visibility a config option instead of emuscreen state 2024-11-12 12:20:47 +01:00
Henrik Rydgård
df104e7e31 Fix crash due to null break reason 2024-11-12 11:25:35 +01:00
Henrik Rydgård
d2ffac57dc Memory::IsValidAddress: Consider VRAM with a kernel flag invalid.
We don't have it mapped in our memory map, so this can actually crash
checked reads like Read_U32.

Since it isn't mapped, and it can't possibly be valid in retail PSP
games to access VRAM this way, I don't think this will cause any
problems.

However, if it does, we'll have to add the corresponding mappings to the
memory map.
2024-11-12 10:41:14 +01:00
Henrik Rydgård
9056fea501 Disable the ImGui debugger if RetroAchievements hardcore mode is enabled. 2024-11-10 19:00:13 +01:00
Henrik Rydgård
80474fd0f0 Some cosmetic fixes to the ImGui debugger 2024-11-07 20:11:23 +01:00
Henrik Rydgård
8081ebc265 Crashfixes 2024-11-07 19:56:32 +01:00
Henrik Rydgård
ace7cae79a
Merge pull request #19609 from hrydgard/imgui-debugger
Some checks are pending
Build / build-windows (ARM64) (push) Waiting to run
Build / build-windows (x64) (push) Waiting to run
Build / build-uwp (push) Waiting to run
Build / test-windows (push) Blocked by required conditions
Build / build (./b.sh --headless --unittest --fat --no-png --no-sdl2, clang, clang++, test, macos, macos-latest) (push) Waiting to run
Build / build (./b.sh --headless --unittest, clang, clang++, test, clang-normal, ubuntu-latest) (push) Waiting to run
Build / build (./b.sh --headless --unittest, gcc, g++, gcc-normal, ubuntu-latest) (push) Waiting to run
Build / build (./b.sh --ios, clang, clang++, ios, ios, macos-latest) (push) Waiting to run
Build / build (./b.sh --libretro_android ppsspp_libretro, clang, clang++, android, android-libretro, ubuntu-latest) (push) Waiting to run
Build / build (./b.sh --qt, gcc, g++, qt, qt, ubuntu-latest) (push) Waiting to run
Build / build (cd android && ./ab.sh -j2 APP_ABI=arm64-v8a OPENXR=1, clang, clang++, android, android-vr, ubuntu-latest) (push) Waiting to run
Build / build (cd android && ./ab.sh -j2 APP_ABI=arm64-v8a UNITTEST=1 HEADLESS=1, clang, clang++, android, android-arm64, ubuntu-latest) (push) Waiting to run
Build / build (cd android && ./ab.sh -j2 APP_ABI=armeabi-v7a UNITTEST=1 HEADLESS=1, clang, clang++, android, android-arm32, ubuntu-latest) (push) Waiting to run
Build / build (cd android && ./ab.sh -j2 APP_ABI=x86_64 UNITTEST=1 HEADLESS=1, clang, clang++, android, android-x86_64, ubuntu-latest) (push) Waiting to run
Build / build (make -C libretro -f Makefile -j2, clang, clang++, libretro, clang-libretro, ubuntu-latest) (push) Waiting to run
Build / build (make -C libretro -f Makefile -j2, gcc, g++, libretro, gcc-libretro, ubuntu-latest) (push) Waiting to run
Build / test (macos-latest) (push) Blocked by required conditions
Build / test (ubuntu-latest) (push) Blocked by required conditions
Build / build_test_headless_alpine (push) Waiting to run
Generate Docker Layer / build (push) Waiting to run
ImGui debugger
2024-11-07 12:53:47 +01:00
Henrik Rydgård
dd26bcf1af Cache symbols and use a clipper to speed up the symbol list. 2024-11-07 11:11:47 +01:00
Henrik Rydgård
99eb0bbd64 Improve register view, fix follow PC, some cleanup 2024-11-07 11:10:16 +01:00
Henrik Rydgård
9c92978fcc ImGui debugger: assorted work 2024-11-07 11:10:16 +01:00
Henrik Rydgård
84a0293e54 Add basic register view 2024-11-07 11:10:16 +01:00
Henrik Rydgård
cf6d06c56a Start work on imdbg 2024-11-07 11:10:12 +01:00
Henrik Rydgård
271d2b41fa Bugfix taking screenshots of rotated framebuffers, common in Vulkan on many Android devices 2024-11-07 10:17:56 +01:00
Henrik Rydgård
36328d0ec4 Remove the separate lua vcxproj. Somehow cursed on the buildbot :/ 2024-11-06 20:18:05 +01:00
Henrik Rydgård
c8d43198d3 RAIntegration: Fix the filename in the not-found messages. 2024-11-06 14:47:48 +01:00
Henrik Rydgård
55aa1ff66e Warning fixes 2024-11-06 11:59:34 +01:00
Henrik Rydgård
2daca0fedf
Merge pull request #19589 from hrydgard/refactor-execution
Refactor execution: No longer freeze the "EmuThread" when paused in the debugger
2024-11-05 13:10:06 +01:00
Henrik Rydgård
3a5968ba33 Don't block the render thread while the CPU is paused. This is a prereq for imgui debuggers. 2024-11-05 12:53:21 +01:00
Henrik Rydgård
e19ad1f359 Remove return value from Core_PerformStep 2024-11-05 12:53:21 +01:00
Henrik Rydgård
f23ec1cf23 Initial build setup for including lua 2024-11-05 11:20:43 +01:00
Henrik Rydgård
c459d43f14
Merge pull request #19569 from hrydgard/imgui-integration
ImGui integration prototype
2024-11-05 10:18:30 +01:00
Henrik Rydgård
0228e7f570
Merge pull request #19576 from hrydgard/rearchitect-stepping
Move CPU stepping logic out of the disassembler window code
2024-11-05 10:18:08 +01:00
Henrik Rydgård
caf27a5c0d Add a mappable key for toggling the imgui interface. For now it's called Toggle debugger. 2024-11-04 23:33:03 +01:00
Henrik Rydgård
cebb2ea96e Add missing return statement from PBPReader::GetSubFileAsString. Compiler should have rejected this.. 2024-11-04 01:15:00 +01:00
Henrik Rydgård
785ce86f76 Apply that to breaking execution as well. 2024-11-03 17:54:55 +01:00
Henrik Rydgård
5598228462 Better notification mechanism to scroll the disasm window after step 2024-11-03 17:54:55 +01:00
Henrik Rydgård
828523165f Rework the step functions. 2024-11-03 17:54:54 +01:00
Henrik Rydgård
73aba606e7 Harmonize the various step functions in the disasm window 2024-11-03 17:54:54 +01:00
Henrik Rydgård
69177f7fa6 Same with Step Out 2024-11-03 17:54:54 +01:00
Henrik Rydgård
251fc8d905 Same with Step Over 2024-11-03 17:54:54 +01:00
Henrik Rydgård
c787149472 Start moving the CPU debug-step logic to Core.cpp 2024-11-03 17:54:51 +01:00
Henrik Rydgård
d3e9398cb3 Split Core_EnableStepping into Core_Break and Core_Resume 2024-11-03 17:53:42 +01:00
Henrik Rydgård
1f8549045d Default Discord rich presence to off 2024-11-02 21:36:30 +01:00
Henrik Rydgård
eb5769c162 PBPReader sanity checks 2024-11-01 20:35:34 +01:00
Henrik Rydgård
dd8f9b682f Don't crash on trying to re-record a GE dump 2024-11-01 20:27:09 +01:00
Henrik Rydgård
2e53d2f9f9 NPDRM: Logging cleanup, remove assert (turn into debug assert) 2024-11-01 20:10:23 +01:00
Henrik Rydgård
e93427c433 CPU_Init: Bail out earlier if we fail to identify a file. 2024-10-31 23:56:36 +01:00
Henrik Rydgård
f690cb99a4 If upnp is disabled, poll the check less aggressively. TODO: should wait for a cond instead. 2024-10-31 23:15:08 +01:00
Henrik Rydgård
f14551ef33 Logging improvement in NPDRMBlockDevice 2024-10-31 00:38:06 +01:00
Henrik Rydgård
7bb0c58e8d Default to no reporting server, oops 2024-10-29 13:20:11 +01:00
Henrik Rydgård
dc122f8595 ReportScreen: Calculate the disc CRC while filling out the form.
Prevents a temporary hang after the refactor.
2024-10-29 13:01:54 +01:00
Henrik Rydgård
14bb7a6062 Reduce Windows debugger crashes on shutdown 2024-10-29 11:20:03 +01:00