Commit Graph

2812 Commits

Author SHA1 Message Date
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
Ben Vanik
8046c19898 Correcting bad flags.txt path. Fixes #424. 2015-09-12 10:02:06 -07:00
Ben Vanik
80c75151c9 Fixing libav incomplete build issue. Fixes #425. 2015-09-12 10:00:19 -07:00
Ben Vanik
02103ddde0 Merge pull request #423 from DrChat/crash_pause
Pause Xenia if it crashes in guest code
2015-09-11 15:19:32 -07:00
Dr. Chat
2983b0c090 Update some documentation. 2015-09-11 17:12:49 -05:00
Dr. Chat
cad23cea81 Pause the emulator if the guest crashes and the VS debugger isn't attached. 2015-09-11 17:09:25 -05:00
Dr. Chat
8e716a3a7e Exception handler abstraction class 2015-09-11 17:07:12 -05:00
Ben Vanik
edef57065b Merge pull request #421 from DrChat/mmio_fix
Fix the MMIO handler picking up invalid accesses outside of the mapped range
2015-09-07 19:29:37 -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
3ac83b16c8 Fix double window destroy. 2015-09-07 09:41:44 -07:00
Ben Vanik
fa9c681c7c Implicit Window::MakeReady on context set. 2015-09-07 09:29:07 -07:00
Ben Vanik
ec7c74d04c Ref count elemental. 2015-09-07 09:26:36 -07:00
Ben Vanik
539f69f368 Multi-window GL contexts. 2015-09-07 09:08:54 -07:00
Ben Vanik
5411b67e05 Only register window class once. 2015-09-07 09:08:38 -07:00
Ben Vanik
3e66afeb3a Don't steal focus on mouse move. 2015-09-07 09:08:27 -07:00
Ben Vanik
855ab7c040 Fixing set_bordered name. 2015-09-07 09:08:19 -07:00
Ben Vanik
2b30ac393d Source control. 2015-09-07 08:28:02 -07:00
Ben Vanik
a1a996c1e6 Shrinking UI elements in the debugger. 2015-09-06 20:49:20 -07:00
Ben Vanik
e5fbf840d2 Shuffling kernel/. 2015-09-06 18:07:52 -07:00
Ben Vanik
494cba7131 Removing unused XAsyncRequest. 2015-09-06 14:10:34 -07:00
Ben Vanik
8588fbc6cf Shuffling kernel util types to util/. 2015-09-06 13:45:52 -07:00
Ben Vanik
068b2056ca Explode more gracefully on crashes while crashing. 2015-09-06 13:34:39 -07:00
Ben Vanik
0133bec11d Fix empty line logging. 2015-09-06 13:34:19 -07:00
Ben Vanik
790ce8aee1 Switch back to std:: muteces. mutices. mutexen. 2015-09-06 13:34:08 -07:00
Ben Vanik
cb3dbcccbc Notes. 2015-09-06 11:05:16 -07:00
Ben Vanik
e48c3534cc Removing copy to temp buffer in log flush. 2015-09-06 10:28:17 -07:00
Ben Vanik
9ae807e56e Initialize builtins to 0. 2015-09-06 10:07:27 -07:00
Ben Vanik
669f5b061f Moving DPC list into KernelState and removing unused file. 2015-09-06 09:36:39 -07: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
33270cd2a0 Making tracing use the fast logger path. 2015-09-05 21:12:10 -07:00
Ben Vanik
6c07eb8e5c Faster RtlFillMemoryUlong. 2015-09-05 14:38:07 -07:00
Ben Vanik
df7a35f196 Merge pull request #417 from Rhodan81/master
Fix crash in memory allocation when there is no space to fit entire page
2015-09-05 07:26:34 -07:00
Rhodan81
9427d03d5a Fix crash in memory allocation when there is no space to fit entire page
range
2015-09-05 15:53:05 +02:00
Ben Vanik
65d91e30ca Merge pull request #414 from DrChat/xma_fixes
XMA can only decode entire frames at a time.
2015-09-02 18:45:06 -07:00
Dr. Chat
8024e4fd20 XMA: We can only decode an entire frame and write it out at a time! Saving samples is bad. 2015-09-02 20:20:45 -05:00
Ben Vanik
256a4c402c Merge pull request #413 from DrChat/inet_addr_fix
NetDll_inet_addr needs to convert endianness!
2015-09-01 21:56:35 -07:00
Dr. Chat
3d1f079e86 NetDll_inet_addr needs to convert endianness! 2015-09-01 23:47:54 -05:00
Ben Vanik
a478658b2c Re-disabling GPU interrupt log. 2015-09-01 20:24:19 -07:00
Ben Vanik
311b65537d --log_high_frequency_kernel_calls (defaults to false) to cull some lines. 2015-09-01 18:20:08 -07:00
Ben Vanik
3c1e012098 Lookup thread/event/etc objects by name on create to try to reuse. 2015-09-01 18:09:44 -07:00
Ben Vanik
3f433fe20a Object table names are case insensitive. 2015-09-01 18:08:00 -07:00
Ben Vanik
f3c75b8d87 Support ObReferenceObjectByHandle for XEvents. 2015-09-01 17:42:07 -07:00
Ben Vanik
b9debbaa63 Fixing section lookup when the name is 8 characters. 2015-09-01 17:03:40 -07:00
Ben Vanik
f5e374f9b5 Changing the way the global lock works. Some things are better, I think.
Regressions are likely.
2015-09-01 09:45:32 -07:00
Ben Vanik
5355183590 Don't double-break on debugbreak. 2015-09-01 09:45:32 -07:00
Ben Vanik
1cd8ed7db7 Merge pull request #412 from DrChat/vrsave
Don't assert on VRSAVE mfspr/mtspr (used by gcc)
2015-08-31 09:24:06 -07:00
Dr. Chat
51e70be054 Don't assert on VRSAVE mfspr/mtspr (used by gcc) 2015-08-31 10:51:51 -05:00
Ben Vanik
1b916ccca2 Log module dump directly. 2015-08-30 21:33:33 -07:00
Ben Vanik
a4ed79695d WSACreateEvent/CloseEvent/SetEvent. 2015-08-30 21:31:52 -07:00
Ben Vanik
7233df2778 Switch default --ignore_undefined_externs to true. 2015-08-30 20:48:41 -07:00