Dr. Chat
c8a2298b9d
Remove ~NotifyListener call to UnregisterNotifyListener (as it's impossible for this to occur)
2015-12-29 13:09:26 -08:00
Dr. Chat
7e88e54cbe
XObject::host_object -> XObject::is_host_object
2015-12-29 13:09:23 -08:00
Dr. Chat
712a5da64b
KernelState::Save/Restore (and misc. changes)
2015-12-29 12:35:58 -08:00
Ben Vanik
3fc1d02a09
Suspend some host threads that make guest callbacks.
2015-09-21 21:24:26 -07:00
Ben Vanik
e5fbf840d2
Shuffling kernel/.
2015-09-06 18:07:52 -07:00
Ben Vanik
8588fbc6cf
Shuffling kernel util types to util/.
2015-09-06 13:45:52 -07:00
Ben Vanik
cb3dbcccbc
Notes.
2015-09-06 11:05:16 -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
7711568af9
Implementing SetTimer and CompleteOverlappedEx APC callbacks.
...
Fixes #410 .
2015-08-29 23:43:26 -07:00
Ben Vanik
ad090a40eb
Fixing misuse of std::chrono.
2015-08-18 10:18:30 -07:00
Ben Vanik
0686227d23
Style fixes.
2015-08-08 16:40:14 -07:00
Ben Vanik
a92566dfc5
More style.
2015-08-07 21:29:03 -07:00
Ben Vanik
7ecc6362de
Debugger stuff. Lots of wasted work :/
2015-07-26 22:47:16 -07:00
Dr. Chat
8d0fef1433
Kernel state terminate notification support
2015-07-21 22:11:33 -05:00
Ben Vanik
bebda48a4f
More clang fixes.
2015-07-19 20:46:14 -07:00
Ben Vanik
91d7acf59e
Fixing some particularly bad /W4.
2015-07-18 23:04:21 -07:00
Ben Vanik
ecd4af10c9
Fixing some clang warnings/errors.
2015-07-15 23:26:58 -07:00
Dr. Chat
870aa092bb
KernelState::GetKernelModule
2015-07-05 17:27:25 -05:00
Dr. Chat
82986c6eec
Use TerminateTitle rather than relying on XamLoader* being called from the main thread.
2015-07-05 16:22:45 -05:00
Dr. Chat
5ccea06e7f
KernelState::TerminateTitle
2015-07-05 15:42:30 -05:00
Dr. Chat
fbfdfc8914
Don't call DllMain on non-DLLs
...
Gracefully handle the kernel dispatch thread already running
2015-07-05 13:31:13 -05:00
Dr. Chat
1788ee1589
Linting.
2015-07-03 20:11:08 -05:00
Dr. Chat
a25090f3ca
Templated XUserModule::GetOptHeader
2015-07-03 10:27:08 -05:00
Dr. Chat
029babaf5d
Drop dependency on old-style xex2 headers
2015-07-03 08:15:53 -05:00
Ben Vanik
5b2f049d4c
Adding deferred xoverlapped completion helper.
2015-06-29 12:02:08 -07:00
Ben Vanik
996f99bd85
Quick fix for RtlImageXexHeaderField - still some more to do.
2015-06-28 12:17:48 -07:00
Ben Vanik
e772a8cb92
Fixing module export.
2015-06-28 12:07:13 -07:00
Ben Vanik
7875a4b0ba
Merge pull request #300 from DrChat/hmodule_fix
...
Swap to using HMODULE instead of handles for xex modules.
2015-06-28 12:01:32 -07:00
Dr. Chat
bb900ba9db
XexExecutableModuleHandle export now points to the executing HMODULE
2015-06-27 23:42:46 -05:00
Ben Vanik
1ac19f1b08
Replacing vfs memory mapping with base memory mapping.
...
Progress on #294 .
2015-06-27 18:02:20 -07:00
gibbed
b14ca702d1
Initialize process_type properly.
2015-06-05 19:21:52 -05:00
Ben Vanik
52060af847
Best-guess process info block.
2015-06-04 17:46:00 -07:00
Ben Vanik
169ced8194
Removing kernel_state and ppc_context from kernel export args.
2015-06-01 19:33:13 -07:00
Ben Vanik
a2b66f9109
LookupObject'ing code.
2015-05-25 00:52:19 -07:00
Ben Vanik
d746743d20
More object_ref'ing.
2015-05-25 00:51:28 -07:00
Ben Vanik
5cfb69434c
Modules using object_ref.
2015-05-25 00:51:27 -07:00
Ben Vanik
8ac1f61c64
RAII object reference, debug mutex, etc.
2015-05-25 00:51:24 -07:00
Ben Vanik
f88bf33b4f
Moving threads to XHostThread and making shutdown not crash.
2015-05-19 22:20:49 -07:00
Dr. Chat
f2ac2af8cd
Change kernel state's object mutex to a recursive mutex
...
KernelState::IsKernelModule
2015-05-18 00:40:43 -05:00
Ben Vanik
9ea88ff901
Hack for testing completion routines - this is not correct.
...
Assert left in on purpose.
2015-05-14 16:35:46 -07:00
Ben Vanik
46eedeab01
Fixing up some overlapped completion routine stuff.
2015-05-14 16:35:29 -07:00
Ben Vanik
abf7b794e6
Adding --headless and basic message box UI.
2015-05-14 16:21:08 -07:00
Ben Vanik
23eb343484
Calling DllMain, fixing ref count, and fixing module search.
2015-05-09 00:56:42 -07:00
Dr. Chat
1b111f0313
Thread safety
2015-05-04 22:16:48 -05:00
Dr. Chat
f12a8dbe20
Release modules on destruction
2015-05-04 22:07:58 -05:00
Dr. Chat
9f0663efa2
XexLoadImage for user modules
2015-05-04 22:03:14 -05: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
ec84a688e9
Starting to properly attribute virtual vs. physical memory accesses.
2015-03-29 11:11:35 -07:00