Commit graph

35 commits

Author SHA1 Message Date
Triang3l 9427667a27 [D3D12] Experimental 2x resolution scale 2018-12-06 10:38:13 +03:00
Triang3l da280347c4 Merge branch 'master' into d3d12 2018-11-22 21:01:05 +03:00
Margen67 896ac4a682 Update documentation.
- Convert http to https, provide archive link when possible.
- Made CPU-JIT.png more readable on dark themes;
Added a white background so there isn't black text on a black
background.
2018-11-22 09:20:09 -06:00
Triang3l 6e36101b42 [D3D12] Experimental write watch implementation for shared memory 2018-09-24 23:18:16 +03:00
Triang3l db625892ea [D3D12] Shared memory typo fix and improvements 2018-08-01 01:09:51 +03:00
Triang3l 4f7edff19d [D3D12] SHM: Watches prototype, some uploading 2018-07-26 22:52:26 +03:00
DrChat a1677d34e1 [CPU] MMIOHandler IsRangeWatched now returns true if the entire range is watched. 2018-02-09 19:23:24 -06:00
DrChat 7da973d9e6 [CPU] Handle cases in access watches where base addresses overlap 2018-02-09 17:21:35 -06:00
DrChat aaf281351d Format all code with new clang-format 2017-12-14 20:44:43 -06:00
Dr. Chat c4b728b121 MMIO Handler: Don't allow more than one watch to occupy the same region (fire old watches if a new one overlaps) 2017-03-11 20:55:01 -06:00
Dr. Chat 0e3c113375 Physical write watches -> access watches (read and/or write watching) 2016-03-17 21:55:16 -05:00
Dr. Chat 529227e4e6 MMIOHandler::InvalidateRange 2015-11-08 18:18:28 -06:00
Dr. Chat 430d4c7182 Fix rare deadlock in the MMIO handler. 2015-11-05 18:13:15 -06:00
Dr. Chat 55e811450d Lint 2015-10-22 20:22:34 -05:00
Dr. Chat 407d79cf3e Fix MMIO handler race condition by rechecking page access protections under the global lock. 2015-10-22 20:18:08 -05:00
Ben Vanik 5d033f9cb3 A new debugger.
Lots of bugs/rough edges/etc - issues will be filed.
Old-style debugging still works (just use --emit_source_annotations to get
the helpful movs back and --break_on_instruction will still fire).
2015-09-20 21:31:05 -07:00
Dr. Chat a2bc0443f2 Quick-kill the MMIO handler if the fault address is above the mapping range. 2015-09-07 21:26:33 -05:00
Ben Vanik 3c96b6fa0a DANGER DANGER. Switching to global critical region.
This changes almost all locks held by guest threads to use a single global
critical region. This emulates the behavior on the PPC of disabling
interrupts (by calls like KeRaiseIrqlToDpcLevel or masking interrupts),
and prevents deadlocks from occuring when threads are suspended or
otherwise blocked.
This has performance implications and a pass is needed to ensure the
locking is as granular as possible. It could also break everything
because it's fundamentally unsound. We'll see.
2015-09-06 09:30:54 -07:00
Ben Vanik 5e08889d93 More style cleanup. 2015-08-06 20:17:01 -07:00
Ben Vanik ec326119cf Replacing beaengine in mmio handler with custom decoder.
Fixes #358.
2015-08-04 08:25:42 -07:00
Ben Vanik 91d7acf59e Fixing some particularly bad /W4. 2015-07-18 23:04:21 -07:00
Ben Vanik 58c3a1ba79 VirtualProtect platform abstraction. 2015-07-15 18:20:05 -07:00
Ben Vanik 40621a90bd Switching to standard mutex for now (but keeping xe::mutex). 2015-07-13 21:49:32 -07:00
Ben Vanik d335555277 Manually page align address range for write watch. 2015-06-23 17:37:09 -07:00
Ben Vanik 40a6a12800 Attempting to inline a lot of MMIO operations. Works for GPU stuff mainly. 2015-06-02 20:15:43 -07:00
Ben Vanik 8bfc43bb0d Trying to do MMIO protects on allocation granularity. 2015-05-18 20:47:41 -07:00
Ben Vanik 147a70b9c1 Rewriting memory manager. 2015-05-17 00:16:56 +01:00
Ben Vanik 0c646f4bc2 Prevent some stack overflows in MMIO handler. 2015-05-09 00:53:28 -07:00
Ben Vanik e3220f7ae6 Code cleanup: moving poly/ into xenia/base/ 2015-05-02 03:42:51 -07:00
Ben Vanik 99816056be Code cleanup: removing poly.h 2015-05-02 02:29:26 -07:00
Ben Vanik f9a3f0c48e Fix broken VirtualProtect reset on ClearWriteWatch. 2015-02-02 23:07:17 -08:00
Ben Vanik 00e4a4fe1b Fix #include format. 2015-01-31 22:49:47 -08:00
Ben Vanik 0529fdb84d Basic hacky write watching for texture invalidation. Doesn't scale. 2015-01-04 16:28:42 -08:00
Ben Vanik 4ad7662ef7 Fixing MMIO build on Windows. 2014-08-01 20:29:57 -07:00
Ben Vanik 0129a96225 Cross-platformizing MMIO stuff.
MSVC build likely needs some fixes.
2014-07-29 22:12:39 -07:00