Commit Graph

360 Commits

Author SHA1 Message Date
Henrik Rydgård bebcec8314 EmuScreen: Clarify some logic, add some checks 2025-04-29 16:46:14 +02:00
Henrik Rydgård dbe6ec80a0 Fix some bad "for (auto x : y)" usage 2025-04-29 16:46:14 +02:00
Henrik Rydgård 52a7709fb5 Log cleanup. Fix very minor memory leak 2025-04-14 22:38:22 +02:00
Henrik Rydgård a4e6e84a0a Move achievement handling to EmuScreen and the main thread. Fixes black screen. 2025-04-09 18:07:13 +02:00
Henrik Rydgård 24b30cc709 Mostly remove coreState management from System.cpp 2025-04-05 09:18:56 +02:00
Henrik Rydgård 5e18576f59 Separate imports and exports for listing. 2025-04-02 10:09:19 +02:00
Henrik Rydgård 426e289193 Plugins must be initialized before memory, so they can change the size. Fixes #20185 2025-04-02 09:38:24 +02:00
Henrik Rydgård 940e2375aa Libretro: Correctly update the boot process
Made untested changes after #20183 - surprise, it didn't work.

Thanks @Duarte475 for reporting.

Fixes #20189
2025-03-31 14:16:17 +02:00
Henrik Rydgård a79f986411 More module loading cleanup, choose better filenames for dumped PRX files 2025-03-31 12:09:25 +02:00
Henrik Rydgård f236a6982b Fix ordering issue 2025-03-30 16:40:34 +02:00
Henrik Rydgård 5f30793845 Refactor a little more. 2025-03-30 15:15:37 +02:00
Henrik Rydgård 088a02bfdb Cleanup a lot of the bootup state management. 2025-03-30 14:02:29 +02:00
Henrik Rydgård ee90d2acc1 PSP boot: Move more of the startup process into the loading thread. Simplifies the code a bit. 2025-03-30 11:22:16 +02:00
Henrik Rydgård 19c7d795a7 Inline the big load switch into CPU_Init. This let me see that much of it could be simplified away. 2025-03-30 10:02:06 +02:00
Henrik Rydgård 42a58eaeb7 Clean up and reorder the boot process a bit, return better errors on bad files. 2025-03-30 01:07:12 +01:00
Henrik Rydgård 7314a65cc5 Remove the "invalid_" state bool in EmuScreen 2025-03-28 11:11:28 +01:00
Henrik Rydgård cf059ff84c Stub a lua console, add the sol lua wrapper library 2025-03-27 08:59:37 +01:00
Henrik Rydgård b05d6171d4 Add a consistent feature check - only desktops get to use CacheFullISOInRAM. 2025-03-27 01:02:28 +01:00
Henrik Rydgård 8d9b3f28f2 Reintroduce "cache ISO in RAM" 2025-03-27 00:46:31 +01:00
Henrik Rydgård a50b303a38 Redesign the recent files API a bit. 2025-03-26 17:59:30 +01:00
Henrik Rydgård e2e99caeee Some minor reordering, reduce the calls to Identify_File 2025-03-26 09:24:14 +01:00
Henrik Rydgård 0df7a850a1 Only load PARAM.SFO once during startup 2025-03-26 09:24:14 +01:00
Henrik Rydgård 05b1cf3b80 Startup cleanup, part 1 2025-03-26 09:24:14 +01:00
Henrik Rydgård 4eaad7d5af Remove the "Cache full ISO in RAM" feature
It's been broken for years and nobody has even noticed enough to report
it.
2025-03-26 09:06:33 +01:00
Henrik Rydgård 8403597efd Fix an unrelated issue where "Cache full iso in RAM" didn't actually work until resetting 2025-03-25 22:19:28 +01:00
Henrik Rydgård ef4e04c8a1 Pass more filename information into elf loading. Allow dumping PRX into elf. 2025-03-19 10:42:32 +01:00
Henrik Rydgård c4241e283a Prepare to generalize file dumping 2025-03-19 09:46:25 +01:00
Henrik Rydgård 2cc631338b Correctly unload GE framedumps. Additionally, look up the title when possible and show in titlebar. 2025-03-06 14:58:33 +01:00
Henrik Rydgård c36375d6c8 Don't enable "full iso ram caching" for filetypes other than ISO. 2025-03-06 13:57:05 +01:00
Henrik Rydgård 360c5459b5 Linux: Fix problem with memstick directory creation
CreateDir may not be enough so use CreateFullPath
2025-02-06 11:36:57 -06:00
Henrik Rydgård 3e198c53b2 More include cleanup 2024-12-18 13:57:26 +01:00
Henrik Rydgård b2a8b4168b Core: Minor changes to stepping (and some log changes) 2024-12-10 01:06:19 +01:00
Henrik Rydgård 83af54950f Move more core-related stuff into Core.cpp/h 2024-12-08 11:54:58 +01:00
Henrik Rydgård df91f699fc Move the core loop to Core.cpp 2024-12-08 11:47:12 +01:00
Henrik Rydgård b3d08977d5 Delete unused code 2024-12-08 11:25:00 +01:00
Henrik Rydgård b3346df646 ImDebugger: Add a window to inspect upcoming CoreTiming events 2024-12-07 16:28:27 +01:00
Henrik Rydgård 9ed8d8871e Ge stepping without wait: Tex/Prim stepping works. Draw/Single have issues. 2024-12-05 00:36:48 +01:00
Henrik Rydgård c25e6b3933 Add "Split syscall" mechanism 2024-12-05 00:05:39 +01:00
Henrik Rydgård 63c0305301 Delete unused enum, add a new parameter bool 2024-12-03 22:35:36 +01:00
Henrik Rydgård 0df2a40487 Remove the "GPUInterface" base class. Not really useful, GPUCommon is pretty much the same thing. 2024-12-02 11:12:14 +01:00
Henrik Rydgård 102d62deab More GE debugging prep 2024-12-02 10:34:26 +01:00
Henrik Rydgård e94defbb15 Get the CORE_RUNNING_GE coreState working! 2024-12-01 22:49:18 +01:00
Henrik Rydgård 96c4a10e8c Add two new core states, rename RUNNING to RUNNING_CPU and similar for stepping. 2024-12-01 21:04:21 +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 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 f23ec1cf23 Initial build setup for including lua 2024-11-05 11:20:43 +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 e93427c433 CPU_Init: Bail out earlier if we fail to identify a file. 2024-10-31 23:56:36 +01:00
Henrik Rydgård 14bb7a6062 Reduce Windows debugger crashes on shutdown 2024-10-29 11:20:03 +01:00