Commit Graph

918 Commits

Author SHA1 Message Date
Dr. Chat
666f5543a8 Cleanup ThreadState and XThread 2015-12-29 12:32:46 -08:00
Ben Vanik
990d973c74 New ppc opcode decoder.
Seems to work and match up with the old decoder (which may be bad).
Old decoder remains until all functionality is replaced.
2015-12-27 22:53:05 -08:00
Ben Vanik
0a316808a5 Include order fixes. 2015-12-27 10:27:46 -08:00
Ben Vanik
0e58208add Dropping elemental-forms and swapping out with imgui.
Too much code for such little use. This should simplify porting.
2015-12-26 20:25:24 -08:00
sephiroth99
a281f6d70d ObjectTable: Remove explicit specialization in class scope
Function template 'LookupObject' in ObjectTable class has
a specialization in class scope, which is not allowed.

While MSVC seems OK with that, clang complains about it.

Fix this issue by moving the definition of the specialisation
outside the class scope, and moving the declaration in the
'.cc' file.
2015-12-17 01:04:44 -05:00
Ben Vanik
15816327b4 Renaming xe::cpu::frontend to xe::cpu::ppc. 2015-12-14 21:17:55 -08:00
Ben Vanik
bea8870700 Shuffling old-style ucode.h under gl4. 2015-11-28 16:10:27 -08:00
Ben Vanik
1956b8708e Fixing include orders and whitelisting others.
Will be broken until clang SVN 253772 is available on travis/snapshots.
2015-11-21 11:34:46 -08:00
Dr. Chat
4dfe1addaa Verify that LookupObject actually returns an object of the requested type. 2015-11-12 19:06:15 -06:00
Dr. Chat
7fc22f1987 Add a static kType field to all objects 2015-11-12 19:01:55 -06:00
Dan Weatherford
e178853e46 Partially implement XamUserWriteProfileSettings
Handles writing binary blob settings to the user profile which can then be read
by XamUserReadProfileSettings.
2015-11-09 16:53:52 -06:00
Ben Vanik
4af6c41740 Moving profiling.h to base - UI could be separated for cleanliness. 2015-11-07 12:31:07 -08:00
Ben Vanik
440c807936 Fix error state shutdown crash. 2015-11-06 16:27:07 -08:00
Ben Vanik
b9326be93c Merge pull request #447 from DrChat/excreatethread_ptr_fix
Fix ExCreateThread returning a handle when game requests a pointer
2015-11-03 20:01:12 -08:00
Dr. Chat
cd12b3d198 Converted MmCreateKernelStack / Implemented MmDeleteKernelStack 2015-11-01 21:59:27 -06:00
Dr. Chat
b628577855 Implemented KeSetCurrentStackPointers 2015-11-01 21:56:40 -06:00
Dr. Chat
cee0e582c2 Remove workarounds for handles passed into Ke* functions. 2015-10-31 10:31:35 -05:00
Dr. Chat
4d22c21688 ExCreateThread: Flag 0x80 indicates we should return the thread pointer, not handle. 2015-10-31 10:28:53 -05:00
Dr. Chat
3547d31c3d Generate trampoline functions for GetProcAddressByOrdinal on kernel modules. 2015-10-24 14:14:08 -05:00
Dr. Chat
c33e95981b Formatting. 2015-09-25 18:46:50 -05:00
Dr. Chat
71818a3129 Convert NtCreateEvent to new format 2015-09-25 18:39:14 -05:00
Dr. Chat
b12480820c word_t shim parameter 2015-09-25 18:38:33 -05:00
Dr. Chat
f5ee6f4cf5 XEX2 lan key header 2015-09-25 18:38:10 -05:00
Dr. Chat
ba399d52b9 NtAllocateVirtualMemory: Return STATUS_MAPPED_ALIGNMENT if the base address is unaligned 2015-09-25 18:37:49 -05:00
Dr. Chat
d78f43c574 XamContentOpenFile stub 2015-09-25 18:35:57 -05:00
Dr. Chat
9ceab26560 Print the LAN key header
Check if the module is a XEX module before calling Unload on XexModule
2015-09-25 18:34:54 -05:00
Dr. Chat
3cbc65ac29 XThread Get/Set Last Error 2015-09-25 18:22:13 -05:00
Ben Vanik
ee92f75a84 Updating to the latest clang-format. Make sure to update yourselves! 2015-09-22 08:26:19 -07:00
sephiroth99
ab2ef82d55 xobject: remove accept method of object_ref class
The removed method was causing an error in clang ("call to non-static member
function without an object argument"). As it was not used, simply remove
it.
2015-09-22 07:43:08 -07:00
Ben Vanik
3fc1d02a09 Suspend some host threads that make guest callbacks. 2015-09-21 21:24:26 -07: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
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
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
6c07eb8e5c Faster RtlFillMemoryUlong. 2015-09-05 14:38:07 -07:00
Dr. Chat
3d1f079e86 NetDll_inet_addr needs to convert endianness! 2015-09-01 23:47:54 -05: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
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
39989a6107 Adding log lines to help find unimplemented NtQueryInformationFile calls. 2015-08-30 16:38:51 -07:00
Ben Vanik
b80a028589 Much better errors on undefined externs. 2015-08-30 15:27:12 -07:00