Commit Graph

352 Commits

Author SHA1 Message Date
SimoZ64
010bb5e0bb Mem and Regs not part of cpu anymore. 2025-08-01 21:05:11 +02:00
irisz64
c662c3ff20 Initial work on a ErrorData structure to use globally 2025-08-01 17:43:42 +02:00
irisz64
cc1078d9e8 These can be Utility functions 2025-08-01 16:21:18 +02:00
irisz64
79de6f20b6 Tooltip in comment now works! 2025-07-31 17:25:22 +02:00
irisz64
1d117bf96b Initial work for comment detail in debugger 2025-07-31 14:42:43 +02:00
irisz64
cad486e1b9 No need for const-referencing here 2025-07-31 09:29:10 +02:00
irisz64
0d9a2fc584 Tidy up Debugger + breakpoints initial work 2025-07-30 11:30:39 +02:00
SimoZ64
ff4cd66bdb Things to neat up that I noticed with Hazel <3 2025-07-29 22:46:34 +02:00
irisz64
3061334004 Huge refactor: Make Core a singleton 2025-07-29 11:08:05 +02:00
irisz64
e0e887ce90 Have a default path for saves 2025-07-29 09:34:28 +02:00
SimoZ64
bf330959e8 Start work on a debug view 2025-07-28 22:46:04 +02:00
irisz64
86c30f36e2 Make PIF stuff a little less annoying to read 2025-07-28 17:44:57 +02:00
irisz64
ad9814bb3c Make Scheduler a singleton 2025-07-28 13:44:13 +02:00
irisz64
9dec9c03b4 Small RDP accuracy improvement 2025-07-26 00:26:40 +02:00
irisz64
ef05bcfac6 Fix compilation on Linux + minor nits 2025-07-26 00:26:29 +02:00
irisz64
741b9adfbf [Mem] New handlers using if-range checks instead of switch 2025-07-24 15:49:13 +02:00
SimoZ64
3b5ed1a160 Micro-optimization: RDP access wrappers are now force inlined 2025-07-23 22:31:56 +02:00
SimoZ64
27dc6cfddf Small optimizations: Enable LTO + don't make those two functions virtual in CPU. Around 3 fps improvement 2025-07-23 22:08:10 +02:00
irisz64
a3b4e2f374 minor perf improvements 2025-07-22 17:05:55 +02:00
irisz64
f7ec6df924 use a little more c++20/23 features 2025-07-22 16:07:00 +02:00
irisz64
3520a309ed ew global variable 2025-07-22 12:46:50 +02:00
irisz64
8549d5a21c get rid of fmt dependency since we are on C++23 2025-07-22 11:33:42 +02:00
irisz64
559e3eaa6e whatever 2025-07-08 16:15:39 +02:00
irisz64
c51725e42f we can emit the instruction inside the delay slot before actually emitting the branch 2025-07-08 09:06:49 +02:00
irisz64
d072d37733 Actually mark scratch registers + comment out branches for now + rework compilation loop a bit 2025-07-07 15:54:04 +02:00
irisz64
f91b0d0242 [JIT] implement setPC like regs 2025-07-07 11:19:36 +02:00
irisz64
6e69a37a62 register constant check optimization + disable branch likely's for now 2025-07-07 10:36:16 +02:00
irisz64
dd6c28c9d9 should do like interpreter here 2025-07-06 21:51:50 +02:00
irisz64
46c2aa2994 i'll have to rethink the branches and jumps 2025-07-06 20:31:42 +02:00
SimoneN64
451ff7c4aa forgot to disable this line on arm 2025-07-06 08:14:51 +02:00
SimoZ64
d6b78232a6 of course if the reg is marked constant, actually read its value at compile time, not emit code to read it at run time, idiot 2025-07-04 21:57:50 +02:00
irisz64
444e2f56a3 Some JIT fixes 2025-07-04 17:07:54 +02:00
irisz64
92eff7f198 Make CPU respect chosen option (JIT, etc) 2025-07-03 10:52:35 +02:00
SimoZ64
4f618d35e0 remove stupid abstraction 2025-06-28 13:48:18 +02:00
SimoZ64
1be357e607 gamepad works now finally. Ready for merge in dev 2025-06-27 12:18:44 +02:00
irisz64
7ca337ca48 switch to INI for settings (easier), make settings a singleton thingy, slightly simplify core pause/stop/reset. Drop support for remappable inputs for now 2025-06-27 00:50:47 +02:00
irisz64
67c761d34b make it single threaded for now...
Hmm don't quite get it

idfk
2025-05-26 17:21:53 +02:00
SimoZ64
6cf2e7ab70 can't use shared_ptr on SDL_Window 2025-05-07 17:22:01 +02:00
SimoZ64
b4c5c7a3e4 Compiles! 2025-05-05 22:15:45 +02:00
SimoZ64
95bf6d292b [JIT]: Fix compilation 2025-02-26 10:40:27 +01:00
SimoneN64
7d27351609 [Apple Arm] Disable JIT stuff under ARM64 for now 2025-02-09 20:53:17 +01:00
SimoneN64
921956268e [Apple Arm] fix remaining issues. Now to figure out how to handle the JIT situation... 2025-02-09 20:38:25 +01:00
SimoneN64
e57edb6a9a [Apple Arm] introduce sse2neon 2025-02-07 19:32:13 +01:00
Simone Coco
3b06950ba3 [JIT]: Introduce pipeline simulation like in the interpreter (still borked) 2025-01-29 13:29:42 +01:00
SimoneN64
bb498e599e [JIT]: Registers::Write<bool> handler for Xbyak register write op 2025-01-28 00:35:15 +01:00
SimoneN64
7ddce3b909 [JIT]: Properly reset 2025-01-28 00:34:53 +01:00
SimoneN64
178029b4f2 [JIT]: Non-constant SLT 2025-01-28 00:34:45 +01:00
SimoneN64
009dd1458d [JIT]: Stupid mov bug + start debugging with capstone 2025-01-28 00:12:01 +01:00
SimoneN64
d4ad92a67d [JIT]: Fix argument bug in LW 2025-01-23 23:40:05 +01:00
SimoneN64
a1a19e72cd [JIT]: Implement LHU 2025-01-23 23:39:53 +01:00