Commit Graph

370 Commits

Author SHA1 Message Date
Anthony Pesch 22dc1b483e updates SH4 registers to follow same pattern as holly / pvr 2016-03-26 13:06:56 -07:00
Anthony Pesch 56d039e643 linux build fixes 2016-03-25 01:41:57 -07:00
Anthony Pesch cfbb128380 refactored register reads / writes to support per-register callbacks 2016-03-25 00:38:28 -07:00
Anthony Pesch 9efdb02b63 refactored SH4 DMA
added PIO CD_READ support to GDROM
updated Holly / GDROM DMA to work with new DMA code
2016-03-24 19:59:54 -07:00
Anthony Pesch 8069a76100 move select condition out of arg0 to optimize register allocation when select is true 2016-03-23 19:14:06 -07:00
Anthony Pesch 05388bca6f split up int / float IR ops
added support for fcnvsd and fcnvds
2016-03-23 18:45:47 -07:00
Anthony Pesch 8b94d8e9f6 consolidated comparison ir ops into OP_ICMP and OP_FCMP 2016-03-23 01:40:01 -07:00
Anthony Pesch d26b7a092f removed interpreter backend 2016-03-23 01:17:09 -07:00
Anthony Pesch 98ca25fecb use references for dc / rb
align ir locals when allocating
2016-03-23 00:54:31 -07:00
Anthony Pesch d234f630f1 make Instr inherit from value, removing result property
updated register allocation to account for the fact that the result is no longer a part of the reference set
added basic dead code elimination pass
2016-03-23 00:54:24 -07:00
Anthony Pesch f936b47b2b added parameter stepping to trace viewer 2016-03-22 23:18:59 -07:00
Anthony Pesch dc5f742529 improve texture preview 2016-03-19 14:17:52 -07:00
Anthony Pesch ccc65ca739 enable stubs for SPI_CD_* commands 2016-03-18 23:30:36 -07:00
Anthony Pesch 960cb0637c updated tracer UI 2016-03-18 23:00:08 -07:00
Anthony Pesch 8e7a308e8e initialize a few uninitialized pointers 2016-03-18 19:26:02 -07:00
Anthony Pesch f7b30fffe5 remove pending context queue 2016-03-18 19:16:39 -07:00
Anthony Pesch 507f009473 use delegates for write watches 2016-03-18 18:57:08 -07:00
Anthony Pesch c836560bc9 window system refactor
added imgui for gui rendering
added WindowInterface to Machine class enabling hardware to tap into window events for input and rendering
2016-03-18 18:06:57 -07:00
Anthony Pesch 3d491054c7 merge ta and texcache 2016-03-15 22:30:01 -07:00
Anthony Pesch c9880d277f shuffled around trace viewer code 2016-03-06 02:02:54 -08:00
Anthony Pesch cdf7a9e021 disable multithreaded rendering 2016-03-06 01:17:17 -08:00
Anthony Pesch 2900c139c1 fixed bitrot in trace viewer 2016-03-05 23:26:16 -08:00
Anthony Pesch 5a8b1bd530 remove blocks from IRBuilder 2016-03-05 02:53:22 -08:00
Anthony Pesch c44133d574 remove pc return value from blocks 2016-03-05 02:35:39 -08:00
Anthony Pesch 112c421b81 added a hack to get PoP booting further 2016-03-05 02:34:58 -08:00
Anthony Pesch 86f77ba905 factor out CheckPendingCacheReset 2016-03-03 00:41:42 -08:00
Anthony Pesch 4d811ae557 add gdb detach support 2016-03-02 23:22:55 -08:00
Anthony Pesch 24189fac83 removed unused Dump method 2016-03-02 22:31:29 -08:00
Anthony Pesch 6d6ddf8016 removed templated value<>() method 2016-03-02 22:01:15 -08:00
Anthony Pesch b1200f8bd1 fix off by one error when merging invalidation ranges in load / store elimination pass 2016-02-29 23:52:10 -08:00
Anthony Pesch 389981d07e replace OP_TRUNCATE with OP_BITCAST 2016-02-29 23:51:43 -08:00
Anthony Pesch dbf4c2c078 remove epilog label 2016-02-29 23:51:43 -08:00
Anthony Pesch c5e32a182f removed RestoreArgs hack 2016-02-29 23:51:43 -08:00
Anthony Pesch 498990fcb2 initial debugger support 2016-02-29 23:51:42 -08:00
Anthony Pesch ede8b2f758 refactored hw/ code adding Machine, Device and Device interfaces 2016-02-29 23:51:42 -08:00
Anthony Pesch 2b42b9c85c only enable ASM_MASM on win32 2016-02-29 23:51:42 -08:00
Anthony Pesch def67f72cd missed REQUIRED flag on clang-tidy 2016-02-29 23:51:42 -08:00
Anthony Pesch b07dc0575d clang-tidy and clang-format are not required dependencies 2016-02-29 23:51:42 -08:00
Anthony Pesch 92242d0125 fix branch address for disp:12 format in disassembler 2016-02-29 23:51:42 -08:00
Anthony Pesch a9cb2be960 added partial support for sprite0 2016-02-29 23:51:42 -08:00
Anthony Pesch 36a5dc2d72 TMU refactor, fixed issues with TCR being updated and timers not rescheduled properly 2016-02-29 23:51:42 -08:00
Anthony Pesch 997249fa0b fixed memory watches not aligning properly 2016-02-29 23:51:42 -08:00
Anthony Pesch 6df9528856 hide access to the various memory delegates used by hardware 2016-02-29 23:51:41 -08:00
Anthony Pesch b6731d3df6 convert over to using re::delegate for dynamic memory handlers 2016-02-29 23:51:41 -08:00
Anthony Pesch bf7999d0ae more descriptive fatal errors for unsupported gdrom / ta features
updated some names
2016-02-29 23:51:41 -08:00
Anthony Pesch a65b4f51b2 remove -Wno-strict-aliasing 2016-02-29 23:51:41 -08:00
Anthony Pesch b587b3611b project rename 2016-02-29 23:51:41 -08:00
Anthony Pesch 198cd53525 consider aliased values when eliminating loads and stores
added tests for load store elimination aliasing
2016-02-29 23:51:38 -08:00
Anthony Pesch 4b42923567 consolidate x64 register layout information
added support for a second temporary, fixes several emitting issues
2016-02-12 17:28:38 -08:00
Anthony Pesch d16aac170a end blocks on SR store
remove broken IF_INVALIDATE_CONTEXT
2016-02-12 17:28:38 -08:00