Commit Graph

375 Commits

Author SHA1 Message Date
irisz64
b6426f2c8a eventually figure out why xbyak complains about certains movs 2025-12-19 14:02:31 +01:00
IrisZ64
219c46e475 fix jit boogs 2025-12-18 21:36:45 +01:00
irisz64
b4a17416e4 fix stuff 2025-12-18 15:27:05 +01:00
irisz64
c2d6d5a8a9 JIT stuff that I do not know how to comment 2025-12-18 11:20:56 +01:00
irisz64
19b9d56ba7 Slight improvements to debugger, still wonky 2025-12-15 15:25:45 +01:00
irisz64
2f4a714485 indentation 2025-09-03 12:52:18 +02:00
irisz64
6737977183 Finally passing every FPU test in Lemmy's suite 2025-09-03 12:11:38 +02:00
irisz64
7de697ab64 Clean this up too 2025-09-03 11:48:14 +02:00
irisz64
509f52664c Cop0 tidy 2025-09-02 15:23:10 +02:00
irisz64
4a98610f3c That function is incorrect other than useless. Just use our variable that we update periodically anyway 2025-09-01 16:57:35 +02:00
irisz64
123a089598 Simplify FireException a lot 2025-09-01 16:44:04 +02:00
irisz64
a636f4dc60 Apparently ERET will throw a COP unusable exception when non-kernel mode. 2025-09-01 12:06:01 +02:00
irisz64
bd4a692899 Small TLB cleanup 2025-09-01 12:05:25 +02:00
irisz64
5444df993c Instruction struct rewrite in RSP too now 2025-09-01 09:47:07 +02:00
irisz64
e795c256f2 Return and not break, ops 2025-09-01 09:24:20 +02:00
irisz64
b0e65ce0aa Make these part of RSP class. 2025-09-01 09:17:28 +02:00
irisz64
b8d691efb8 This rewrite is working (tested with Super Mario 64) 2025-08-29 10:57:01 +02:00
irisz64
dd98e19c95 Continue big Instruction struct rewrite 2025-08-28 09:25:22 +02:00
SimoZ64
68620ce893 start implementing instruction union for cleaner switches and stuff 2025-08-16 22:00:01 +02:00
SimoZ64
78db98912a Merge branch 'dev' of git.sr.ht:~irisz64/kaizen into dev 2025-08-13 13:58:36 +02:00
irisz64
1057265aac Create StepRSP and StepCPU functions (cleans up the loop a little) 2025-08-05 08:57:16 +02:00
irisz64
3da227613f Fix warnings 2025-08-03 22:30:55 +02:00
irisz64
3fb03c6aba Sorta works 2025-08-03 20:06:16 +02:00
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