Commit Graph

518 Commits

Author SHA1 Message Date
Simone Coco
f27780a16e [JIT]: Respect Microsoft calling convention too 2025-01-23 14:23:27 +01:00
SimoneN64
0d4e8d0e89 [JIT]: Stuck in a loop right now, but implemented more instructions and fixed constant branches not actually restoring the program counter if they are not taken 2025-01-23 00:11:18 +01:00
Simone
8c70a17c72 [JIT]: Implement non-constant dadd, daddu, daddi and daddiu 2025-01-22 15:02:59 +01:00
Simone
9c78d71a29 [JIT]: Remove redundant register write logic for constant propagation (i.e. if we're writing a simple variable, it's always constant) 2025-01-22 11:33:04 +01:00
Simone
0c0e857a6c [JIT]: Constant propagation doesn't need 2 layers + fix JUMP 2025-01-22 10:42:35 +01:00
SimoneN64
043e20c517 [JIT]: Finally executing out of bootcode! 2025-01-21 22:32:24 +01:00
SimoneN64
f67f968f91 [JIT]: First compiled block! Figure out why scheduling an event from the emitted code makes the underlying queue point to 0x0... 2025-01-20 22:27:18 +01:00
SimoneN64
e065558147 [JIT]: Simplify register accesses, implement more instructions, rework some branching logic 2025-01-15 00:37:29 +01:00
Simone
23ddc0b9f7 [JIT]: Specialize register write handlers 2025-01-14 17:21:04 +01:00
Simone
81eca58130 [JIT]: More branches. Only left are the "and link" variants 2025-01-14 11:48:28 +01:00
SimoneN64
b528b1ef8c Buncha instructions for JIT 2025-01-12 23:45:27 +01:00
SimoneN64
536fbddf95 Some restructuring 2025-01-12 23:45:18 +01:00
SimoneN64
8210f37335 Fix capstone dependency 2025-01-07 19:50:22 +01:00
SimoneN64
200f6c4515 More progress on JIT constant instructions implementations 2025-01-06 22:03:39 +01:00
SimoneN64
7d18f2386a Implement FPS counting 2024-12-25 21:28:34 +01:00
SimoneN64
8fdf94fd97 Introduce FPS counter on the bottom right 2024-10-21 20:48:52 +02:00
SimoneN64
cf5b1def4f Undo TLB caching + minor improvements 2024-10-15 21:05:33 +02:00
SimoneN64
a0d46ca24e Cached TLB entries 2024-10-15 10:56:47 +02:00
SimoneN64
57fd6a9af8 Minor nitpicks and smaller perf improvements (barely noticeable) 2024-10-14 23:25:09 +02:00
SimoneN64
d2c37d373e Fix weird linking error. tbh it didn't need to be parallelized 2024-10-14 19:03:57 +02:00
SimoneN64
617a82abff Use bit_cast instead of memcpy/reinterpret_cast where applicable 2024-10-14 17:01:58 +02:00
SimoneN64
b6f795a4df More work for remappable controllers 2024-09-28 14:54:24 +02:00
SimoneN64
8e78102794 FPU wasn't using SIMD. Oops
Fix identation
2024-09-28 14:49:47 +02:00
SimoneN64
d0048e1eb0 Groundwork for remappable controllers 2024-09-26 12:02:12 +02:00
SimoneN64
19ee657de8 Fix minor warning 2024-09-26 12:01:24 +02:00
SimoneN64
85620b2cb8 Fix minor warnings and nitpicks 2024-09-26 11:55:20 +02:00
SimoneN64
a95a34e3ab Frontend: This makes more sense structurally 2024-09-26 11:53:03 +02:00
SimoneN64
cd9322d5ef Fix compile on Windows 2024-09-26 11:52:34 +02:00
SimoneN64
3d72d28e3d Minor nitpick 2024-09-26 11:07:02 +02:00
SimoneN64
521cd7c2e0 Leverage new bswap functions to the fullest 2024-09-25 22:21:20 +02:00
SimoneN64
2744de8d3e Refactor so parallel-rdp is in charge of polling inputs and not the EmuThread 2024-09-25 22:10:59 +02:00
SimoneN64
56b9d69861 Fix minor warnings and get rid of 'portable_endian_bswap.h' (in house
impl instead)
2024-09-25 22:10:31 +02:00
SimoneN64
6982ab6a20 Dunno what to do here 2024-09-24 21:24:44 +02:00
SimoneN64
bd98a3b4ee Use less pointers in frontend 2024-09-24 13:05:10 +02:00
SimoneN64
60870165d5 Lay down basic disassembler 2024-09-23 22:56:44 +02:00
SimoneN64
d3df933ca2 Fix Qt bug 2024-09-23 17:37:02 +02:00
SimoneN64
bb1f80b1ed Fix compilation on Windows 2024-09-23 10:05:46 +02:00
SimoneN64
854bf69eb2 Update to C++20 2024-09-22 15:23:14 +02:00
SimoneN64
c6f3046e48 Another change of heart: I'll just use Qt 2024-09-22 15:18:47 +02:00
SimoneN64
0aa0c0b654 Another change of heart: I'll just use Qt 2024-09-22 14:52:20 +02:00
SimoneN64
1a69c58458 Some progress 2024-09-20 23:03:53 +02:00
SimoneN64
c5cff64ea1 Nah, let's roll our own 2024-09-20 22:14:54 +02:00
SimoneN64
c2743c8537 Decouple Imgui from Prdp 2024-09-20 15:42:44 +02:00
SimoneN64
d1ccaa6667 Make SDL context part of the RenderWidget. Much cleaner 2024-09-20 12:13:39 +02:00
SimoneN64
3be96b2255 This call is unnecessary and causes a Qt assertion failure under Windows 2024-09-20 11:30:15 +02:00
SimoneN64
d6155b3abf It works! 2024-09-18 21:22:19 +02:00
SimoneN64
aeb73a8bbb Link ImGui 2024-09-18 20:41:48 +02:00
SimoneN64
8fe17d0dd7 Use SDL for ImGui 2024-09-17 20:19:59 +02:00
SimoneN64
d568e8c268 Audio no longer mutes after resetting emulation 2024-09-05 21:29:57 +02:00
SimoneN64
575a6697ca Correct RDRAM masking in RSP 2024-09-05 21:15:54 +02:00