Ben Vanik
ea4ec28acc
Adding --show_profiler to show profiler by default, changing hotkey to F3.
2015-07-25 12:34:15 -07:00
Dr. Chat
4301806061
Cleanup some Ke* threading APIs (and update the dispatch header when possible)
2015-07-25 11:43:25 -05:00
Dr. Chat
18d8fad098
Couple of fixes for IO (null pointer deref and improper XctdCompressionInformation)
2015-07-24 23:50:02 -05:00
Dr. Chat
270686a0be
Whoops, don't need these
2015-07-24 23:24:23 -05:00
Dr. Chat
b8b134da75
module Retain instead of RetainHandle
2015-07-24 23:09:47 -05:00
Dr. Chat
64089558f1
XThread set exit code on exit
2015-07-24 23:09:33 -05:00
Dr. Chat
c536053dec
Fix improper getting arguments from stack
...
Also fix PrimitivePointerParam conversion error
2015-07-24 23:08:55 -05:00
Dr. Chat
cf37fa7d71
Update a bunch of IO methods
2015-07-24 23:07:22 -05:00
Dr. Chat
eac3243907
Include host ID in XThread name for easier debugging
2015-07-24 18:42:30 -05:00
Dr. Chat
8e41d5a707
The kernel object table now keeps track of handle reference counts.
2015-07-22 19:34:33 -05:00
Ben Vanik
a42ab648ed
Shuffling --debug around and making it work.
2015-07-22 17:26:10 -07:00
Dr. Chat
9a47082c88
Create XThread suspended and resume it when setup is complete. Fixes race condition on thread_ variable.
2015-07-22 11:56:02 -05:00
Dr. Chat
8d0fef1433
Kernel state terminate notification support
2015-07-21 22:11:33 -05:00
Dr. Chat
b6f8985c8c
Shuffle around RTL critical section code and add asserts
...
Get thread ID using new api
2015-07-21 22:09:26 -05:00
Dr. Chat
7ceaf678e0
Minor XObject function changes
2015-07-21 22:07:55 -05:00
Dr. Chat
b646915b77
Make XThread use its guest KTHREAD object in the pcr in r13
...
Shuffle around some code in XThread
2015-07-21 22:07:30 -05:00
Dr. Chat
a4849ca83e
XNetSetSystemLinkPort / respect optional pointers in accept
2015-07-21 22:05:56 -05:00
Ben Vanik
5bd7833e87
More clang fixes. xenia-kernel is clean.
2015-07-19 21:29:06 -07:00
Ben Vanik
bebda48a4f
More clang fixes.
2015-07-19 20:46:14 -07:00
Ben Vanik
12a29371e3
Clang fixes.
2015-07-19 18:32:48 -07:00
Ben Vanik
baa86fcd1b
Migrating xam UI to elemental-forms.
...
Fixes #345 .
2015-07-19 14:43:27 -07:00
Ben Vanik
edfa3f3fc0
Replacing the tick count timer with xplat abstraction (also better rate).
...
Fixes #346 .
2015-07-19 10:11:54 -07:00
Ben Vanik
91d7acf59e
Fixing some particularly bad /W4.
2015-07-18 23:04:21 -07:00
Ben Vanik
e0eb85bbbc
Switching to premake. Probably with disasterous consequences.
2015-07-18 16:00:01 -07:00
Ben Vanik
6c5d230f67
Merge pull request #353 from DrChat/ob_threads
...
Implement ObLookupThreadByThreadId / ObOpenObjectByPointer
2015-07-18 13:27:25 -07:00
Dr. Chat
b92cddc182
Implement SHA-1 in xboxkrnl (correctness not verified though)
...
Stubs for some weird crypto functions
2015-07-18 14:57:43 -05:00
Dr. Chat
55f5b95670
These are implemented (and formatting)
2015-07-17 20:29:39 -05:00
Dr. Chat
c60d30a311
Add a few more xam exports
2015-07-17 19:57:35 -05:00
Dr. Chat
c3189a6837
ObLookupThreadByThreadId / ObOpenObjectByPointer
2015-07-17 19:56:54 -05:00
Dr. Chat
1ea5a4b7b4
XThread initialize the dispatch header
2015-07-17 19:55:09 -05:00
Dr. Chat
e54477d0e4
XObject::StashNative
2015-07-17 19:52:29 -05:00
Ben Vanik
756d414386
Prep for split libraries.
2015-07-16 22:26:34 -07:00
Sinoxan
0cdff21582
Removing unnecessary unsigned checks.
2015-07-16 19:01:11 +01:00
Ben Vanik
ecd4af10c9
Fixing some clang warnings/errors.
2015-07-15 23:26:58 -07:00
Ben Vanik
f520d3a2a4
Run with latest clang-format.
2015-07-15 22:44:30 -07:00
Ben Vanik
c3415e6332
Adding TLS abstraction.
2015-07-15 22:20:33 -07:00
Ben Vanik
48d5d76882
Cleaning up RtlTimeToTimeFields/TimeFieldsToTime. Needs a non-win32 impl.
2015-07-15 22:10:24 -07:00
Ben Vanik
8154d1dad6
Moving xe::Memory and code cache to abstracted APIs.
2015-07-15 22:10:05 -07:00
Ben Vanik
fefaa31cd8
Switching a few types to their platform-agnostic versions.
2015-07-15 22:09:19 -07:00
Ben Vanik
58c3a1ba79
VirtualProtect platform abstraction.
2015-07-15 18:20:05 -07:00
Ben Vanik
99104a25a8
Fixing thread exit.
2015-07-15 18:01:17 -07:00
Ben Vanik
a6012b73f4
Switching audio system to platform-agnostic primitives.
2015-07-14 23:13:56 -07:00
Ben Vanik
345fe60da0
Switching over kernel objects to the platform-agnostic APIs.
...
Possibly some regressions here.
2015-07-14 22:44:45 -07:00
Ben Vanik
bd490d5833
Threading primitives, in prep for removing Win32 from kernel/ and others.
2015-07-13 22:49:29 -07:00
Ben Vanik
d89bad7380
Removing uses of Sleep/SwitchToThread/etc.
2015-07-13 21:54:24 -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
72ad899e9e
Starting to remove windows.h includes from things.
2015-07-13 20:49:29 -07:00
Ben Vanik
15c17459be
Massive refactoring of xenia::ui and GL swap behavior.
...
This seems to dramatically improve most games (especially with
--vsync=false), though it may cause swap issues with others.
New code should be easier to port, and enables elemental-forms to be
drawn for any emulator UI.
2015-07-12 22:04:17 -07:00
Dr. Chat
5332290573
NetDll_WSAWaitForMultipleEvents
...
NetDll_WSAResetEvent
2015-07-11 19:32:33 -05:00
Dr. Chat
8499da972c
Convert a couple of kernel threading APIs to new style
2015-07-11 18:17:52 -05:00
Dr. Chat
f0060f8335
Allow direct typecasting of Result shim util class
2015-07-11 18:14:33 -05:00
Dr. Chat
90a9a71e55
Lint.
2015-07-10 23:32:05 -05:00
Dr. Chat
ee1696e571
Fix some inconsistencies in the XMA API (and rewrite a lot of functions to the new style)
2015-07-10 23:16:42 -05:00
Dr. Chat
b2241e3fef
Avoid calling OnUnload twice.
2015-07-06 19:19:32 -05:00
Dr. Chat
0388d17a72
Formatting
2015-07-06 10:57:32 -05:00
Dr. Chat
88465de41e
FscGetCacheElementCount stub
2015-07-06 10:41:14 -05:00
Dr. Chat
6ddd0b4700
Rewrite InterlockedPopEntrySList
2015-07-05 21:33:29 -05:00
Dr. Chat
870aa092bb
KernelState::GetKernelModule
2015-07-05 17:27:25 -05:00
Dr. Chat
8adbc2cd0c
Return 0 for success
2015-07-05 17:14:42 -05:00
Dr. Chat
fd136c1f9f
Swap to default initializers.
2015-07-05 17:05:58 -05:00
Dr. Chat
4e6b036b3c
Formatting.
2015-07-05 16:28:11 -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
ff72a25260
Remove dump on module launch (already dumped on load!)
2015-07-05 15:54:30 -05:00
Dr. Chat
39d6e9a20f
Implement XamLoaderLaunchTitle and other loader functions.
2015-07-05 15:44:46 -05:00
Dr. Chat
d6686fc345
Load default.xex as a regular module and call TerminateTitle when the main thread exits.
2015-07-05 15:44:02 -05:00
Dr. Chat
57e89e72b1
Use the actual thread handle as a wait handle, add bool XThread::running
2015-07-05 15:43:09 -05:00
Dr. Chat
5ccea06e7f
KernelState::TerminateTitle
2015-07-05 15:42:30 -05:00
Dr. Chat
778acac929
XThread Terminate
2015-07-05 14:44:43 -05:00
Dr. Chat
7f53b1d630
Allow unloading of user modules
2015-07-05 14:03:00 -05:00
Dr. Chat
8210ada448
XModule OnUnload
2015-07-05 13:47:53 -05:00
Dr. Chat
4fdebd530f
XThread bool guest thread
2015-07-05 13:37:10 -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
8d4582a7a4
Fix a couple of API bugs dealing with modules
2015-07-05 13:27:48 -05:00
Dr. Chat
b57a71e284
Typecast xe::be before sending it into printf
2015-07-03 22:02:58 -05:00
Ben Vanik
4097fe420e
Merge pull request #322 from DrChat/xex2_patch
...
XEX2 Code Refactoring
2015-07-03 19:38:36 -07:00
Dr. Chat
9186d011f0
Bring back some important debug dumps
2015-07-03 21:28:02 -05:00
Dr. Chat
1788ee1589
Linting.
2015-07-03 20:11:08 -05:00
Dr. Chat
8cb8098a6b
Dump import libraries
2015-07-03 19:43:43 -05:00
Dr. Chat
ed3db90666
Dump a few more headers (incl. execution header)
2015-07-03 19:16:36 -05:00
Dr. Chat
74d57cfd0a
Dump exports by name in debug log
2015-07-03 18:45:11 -05:00
Dr. Chat
e58bb5ad9f
ReImplement XexModule::GetProcAddress
2015-07-03 18:29:14 -05:00
Dr. Chat
800f982a4d
XEX2 Security Page Descriptors
2015-07-03 10:58:33 -05:00
Dr. Chat
c32a94599e
Use the guest copy of the xex header for guest code.
2015-07-03 10:51:56 -05:00
Dr. Chat
307feaf893
Formatting.
2015-07-03 10:51:35 -05:00
Dr. Chat
a25090f3ca
Templated XUserModule::GetOptHeader
2015-07-03 10:27:08 -05:00
Dr. Chat
82ec1c345d
Dump all xex2 headers in XUserModule (minus a couple)
2015-07-03 08:17:24 -05:00
Dr. Chat
be5f8d3aa4
Simplify some logic in parsing import libraries
...
Change struct used in export lookups
2015-07-03 08:17:23 -05:00
Dr. Chat
029babaf5d
Drop dependency on old-style xex2 headers
2015-07-03 08:15:53 -05:00
Dr. Chat
fe87c08424
Shuffle some code around.
2015-07-03 08:15:53 -05:00
Dr. Chat
e44ac54eed
Remove kernel dependency on old xex header
2015-07-03 08:15:52 -05:00
Ben Vanik
dec0d12cc9
Replacing includes of windows headers with base/platform.h.
2015-07-01 09:02:04 -07:00
Ben Vanik
9efccc5f4a
Removing dependencies on MainWindow.
2015-07-01 08:02:22 -07:00
Ben Vanik
d7a5c74bf3
Formatting: force pointers to the left side.
2015-06-30 16:16:33 -07:00
Dr. Chat
50e19a2b12
X_DISPLAY_INFO struct
2015-06-29 23:42:58 -05:00
Ben Vanik
5b2f049d4c
Adding deferred xoverlapped completion helper.
2015-06-29 12:02:08 -07:00
Ben Vanik
cc08e9019a
Move NtCreateFile/NtOpenFile to VFS, implement (mostly) for real.
...
Progress on #305 .
2015-06-29 10:33:36 -07:00
Dr. Chat
d809af5902
xbox kernel RTL cleanup
2015-06-28 20:39:45 -05:00
Ben Vanik
b663b615bf
Fix XamContent return (!) and vfs use.
...
Progress on #305 .
2015-06-28 17:33:48 -07:00
Ben Vanik
1106029afc
_wfopen -> xe::filesystem::OpenFile.
...
Progress on #305 .
2015-06-28 17:33:46 -07:00
Ben Vanik
7de9be4ef6
DrChat's fix for xex header values.
2015-06-28 14:53:58 -07:00
Ben Vanik
84e884a07f
Moving get_opt_header out of xex2.
2015-06-28 14:01:53 -07:00
Ben Vanik
010b701e05
Iterating on RtImageXexHeaderField.
2015-06-28 13:44:59 -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
c47c0b3354
Uhh, lint
2015-06-28 13:29:54 -05:00
Ben Vanik
83872d8e8f
Refactoring vfs to remove a lot of duplicated code.
...
Progress on #294 .
2015-06-27 22:37:49 -07:00
Dr. Chat
bb900ba9db
XexExecutableModuleHandle export now points to the executing HMODULE
2015-06-27 23:42:46 -05:00
Dr. Chat
944b39c51d
Apply some lint n' stuff
2015-06-27 22:50:08 -05:00
Dr. Chat
8a6c620fe7
XUserModule::GetOptHeader
2015-06-27 22:42:17 -05:00
Dr. Chat
169cb65d96
Remove unused execution_info_ptr
2015-06-27 22:38:10 -05:00
Dr. Chat
7372dd4d8d
Use HMODULE instead of handles for xex modules
2015-06-27 22:00:58 -05:00
Dr. Chat
c228c0fa73
Add some native xex2 structs and handling functions
2015-06-27 21:32:16 -05:00
Ben Vanik
1ac19f1b08
Replacing vfs memory mapping with base memory mapping.
...
Progress on #294 .
2015-06-27 18:02:20 -07:00
Ben Vanik
23f91b58f3
Moving code out of vfs/ that doesn't need to be there.
...
Progress on #294 .
2015-06-27 17:01:25 -07:00
Ben Vanik
abf47b7973
Removing utilities (that were just adding needless layers).
...
Progress on #294 .
2015-06-27 16:27:38 -07:00
Dr. Chat
1ad144e451
NetDll_WSARecvFrom Stub
2015-06-27 17:08:42 -05:00
Dr. Chat
e94ad84fe9
RtlImageXexHeaderField special case for XEX_HEADER_EXECUTION_INFO
2015-06-27 17:06:27 -05:00
Ben Vanik
0716cf84c0
Renaming xe::fs to xe::filesystem and xe::kernel::fs to xe::vfs.
...
Progress on #294 .
2015-06-27 13:31:21 -07:00
Ben Vanik
bc75b0ab87
Fixing NtQueryDirectoryFile.
2015-06-27 12:55:30 -07:00
Ben Vanik
c2e2b3380e
Replacing X_ANSI_STRING with new style.
...
Progress on #297 .
2015-06-27 12:16:52 -07:00
Ben Vanik
f07d620553
Moving misc stuff out of xbox.h.
...
Progress on #297 .
2015-06-27 11:44:40 -07:00
Ben Vanik
7e0246c381
Moving input structs out of xbox.h.
...
Progress on #297 .
2015-06-27 11:37:12 -07:00
Ben Vanik
8c69a4df09
Cleaning up apu/ and renaming -private files to _flags.
...
Part of #296 .
2015-06-27 11:25:56 -07:00
Ben Vanik
b38bf5c132
Simplifying HID creation.
...
Part of #296 .
2015-06-27 09:42:30 -07:00
Ben Vanik
3439641101
Removing cpu.h.
...
Part of #296 .
2015-06-27 08:58:45 -07:00
Dr. Chat
287a761987
Fix AppendParam dereferencing NULL pointers
2015-06-25 19:29:37 -05:00
Ben Vanik
b9c39d1b33
Fixing thread exit.
2015-06-22 22:40:39 -07:00
Ben Vanik
fb1f4906d9
xb format --all (we are now format clean). Buildbot will yell at you.
2015-06-22 22:26:51 -07:00
Dr. Chat
bafd448dd8
Cleanup some XThread code
2015-06-22 21:42:33 -05:00
gibbed
021b5a3d17
Moved the XMA decoder out of AudioSystem and into its own world (plus minor code cleanup in the process).
2015-06-21 02:25:24 -05:00
Dr. Chat
8eba3a366f
Rename XamLoaderLaunchTitle argument
2015-06-20 11:05:33 -05:00
Ben Vanik
03f2d26afd
Fixing tests with no debugger attached.
2015-06-19 21:53:49 -07:00
gibbed
1a38586d9a
Cleaned up XMASetLoopData.
2015-06-19 21:52:02 -05:00
gibbed
f3547a832f
Removed XMAContextData::kSize constant, moved kXmaContextCount, changes to use newer ringbuffer, cleaned up XMAInitializeContext a bit (with fixes for loop_data handling).
2015-06-19 09:54:21 -05:00
gibbed
1e4d65bcf7
Whoops.
2015-06-19 07:34:51 -05:00
gibbed
d1221a3c5e
Cleaned up VdGetCurrentDisplayInformation a bit.
2015-06-19 06:45:27 -05:00
Ben Vanik
e4c5522c84
Merge pull request #261 from SirCmpwn/fix-std-mem
...
Add missing includes for cstring
2015-06-16 22:19:19 -07:00
Drew DeVault
a064ba053e
Add missing includes for cstring
2015-06-16 23:16:18 -06:00
Ben Vanik
b750370759
Partial thread data plumbing.
2015-06-16 21:53:40 -07:00
gibbed
75206149ab
KeInitializeEvent.
2015-06-16 20:41:26 -05:00
gibbed
95afbe2d93
Don't allocate memory for TLS slots, and copy the default TLS data at the start, rather than offset by the TLS slot size, which seems to be more correct.
2015-06-14 03:50:45 -05:00
gibbed
734b1a7be9
Fixed byte_offset in NtReadFile debug log.
2015-06-13 09:00:26 -05:00
gibbed
3a093d4c84
Fixed comment.
2015-06-13 08:59:52 -05:00
Dr. Chat
9376ed3f01
Whoops
2015-06-13 00:33:24 -05:00
Dr. Chat
3e7870fb39
Make SetNativePointer setup the guest pointer
2015-06-12 22:46:19 -05:00
Dr. Chat
4e74db8e51
Add the dispatch header to X_SEMAPHORE
2015-06-12 22:43:37 -05:00
Dr. Chat
3bd5dc011c
Free the object creation info on destruction
2015-06-12 21:35:49 -05:00
Dr. Chat
b7aabd7860
XSemaphore now calls CreateNative
2015-06-12 21:31:00 -05:00
Dr. Chat
bdcadeffe5
XObject CreateNative
2015-06-12 21:30:32 -05:00
Dr. Chat
a0a8b7ec37
Add X_OBJECT_HEADER and X_OBJECT_CREATE_INFORMATION
2015-06-12 19:48:24 -05:00
Dr. Chat
f96657ef7c
Fixup DISPATCH_HEADER type_flags to its parts
2015-06-12 19:47:28 -05:00
Dr. Chat
4c9cab4346
Make XThread create a kernel object for itself
2015-06-12 19:02:17 -05:00
Dr. Chat
864e257474
DISPATCH_HEADER -> X_DISPATCH_HEADER
2015-06-12 18:59:08 -05:00
gibbed
6348c3dc72
Changed a hardcoded value to something slightly more reasonable until we can calculate the correct value.
2015-06-10 23:48:51 -05:00
gibbed
1c37c14fc8
Cleaned up MmQueryStatistics.
2015-06-10 21:53:47 -05:00
gibbed
dc371009d9
Renamed handle_ to native_handle_ in some places where it makes more sense.
2015-06-10 21:24:54 -05:00
Ben Vanik
cabf9d6261
Adding some GPU docs and creating output directories automatically.
2015-06-10 19:20:14 -07:00
Dr. Chat
feba4f03a2
ResolvePath check for fully qualified paths
2015-06-10 19:09:33 -05:00
Dr. Chat
bc0fb19005
Swap main device to harddisk0
2015-06-10 19:08:58 -05:00
Dr. Chat
60cf80d85c
Actually give the game the new handle
2015-06-09 19:04:41 -05:00
Dr. Chat
41f1023549
Minor fix in XThread - checking the wrong address for NULL
2015-06-09 18:58:45 -05:00
Dr. Chat
72a641efac
Fix up NtDuplicateObject
2015-06-09 18:58:21 -05:00
Dr. Chat
3627418e0e
Object table handle duplication
2015-06-09 18:58:02 -05:00
Ben Vanik
573f190a43
Adding modules/functions to the debugger.
2015-06-08 23:22:25 -07:00
Ben Vanik
00b3b0eab9
Adding assertion to RtlImageXexHeaderField + fixing return (maybe).
2015-06-07 21:51:19 -07:00
gibbed
1d37df29cb
Untested implementation of MmCreateKernelStack and stub of MmDeleteKernelStack.
2015-06-07 22:28:06 -05:00
gibbed
98e14fcb1b
Hack for KeWaitForSingleObject when games pass in object handles.
2015-06-07 21:08:16 -05:00
gibbed
7f57867f49
Let's fix the strange stack overflows doing the stupid thing.
2015-06-07 18:29:09 -05:00
gibbed
b9087e0698
This appears to be better?
2015-06-07 18:17:09 -05:00
Ben Vanik
ba88955be4
vsnprintf return is dumb.
2015-06-07 16:13:05 -07:00
gibbed
0fb9161a1b
Putting the user_index == 255 check back into XamUserReadProfileSettings.
2015-06-07 04:51:50 -05:00
gibbed
cbd1210337
Handle a NULL playlist name pointer when creating title playlist.
2015-06-07 01:46:57 -05:00
Ben Vanik
f0492dfbb0
Looks like this is used to query rather than read sometimes.
2015-06-06 23:00:17 -07:00
Ben Vanik
58324352ae
Stubbed color format.
2015-06-06 22:57:15 -07:00
Dr. Chat
14b14f4309
XnAddrStatus enum and XNADDR struct
2015-06-06 21:20:20 -05:00
Dr. Chat
0c61244e91
Fix XNetGetDebugXnAddr signature
2015-06-06 19:19:13 -05:00
Dr. Chat
6e0732b95b
NetDll argument 0 is a caller ID
2015-06-06 19:17:26 -05:00
Ben Vanik
a52fcf0157
Merge pull request #244 from DrChat/sector_info_stub
...
Sector info stub
2015-06-05 17:36:50 -07:00
gibbed
b14ca702d1
Initialize process_type properly.
2015-06-05 19:21:52 -05:00
Dr. Chat
3b913844f0
File sector information stub
2015-06-05 19:06:36 -05:00
Dr. Chat
5250f0ca3e
NtQueryInformationFile: Return X_STATUS_UNSUCCESSFUL on default cause
2015-06-05 18:58:39 -05:00
Dr. Chat
d9ff65c9a2
Change NtQueryInformationFile to new-style export
2015-06-05 18:54:47 -05:00
gibbed
1d02ce63d3
Cleaned up XamUserReadProfileSettings. Also fixed writing out pointers for
...
setting data, fixing issues with games trying to read from zero page after
reading profile settings.
2015-06-05 18:53:14 -05:00
gibbed
edf8d1a74d
Corrected comment.
2015-06-05 16:49:28 -05:00
gibbed
c1d3d62e2a
Changed the default license mask.
2015-06-05 16:17:09 -05:00
Ben Vanik
232c35b89e
Use the right sizes. Nice catch DrChat.
2015-06-04 20:06:49 -07:00
Ben Vanik
52060af847
Best-guess process info block.
2015-06-04 17:46:00 -07:00
Ben Vanik
f9742cc3eb
Fixing formatting.
2015-06-04 16:56:42 -07:00
Ben Vanik
21474970b2
Fixing (or at least improving) TLS.
2015-06-04 16:51:53 -07:00
Dr. Chat
88672eff4f
InterlockedFlushSList and rewrote InterlockedPopEntrySList
2015-06-04 16:21:25 -05:00
Dr. Chat
4f807a669c
Fix TLS copying (size may still be wrong though)
2015-06-04 16:20:52 -05:00
Dr. Chat
0bc08d80ef
NtCreateIoCompletion stub
2015-06-04 01:06:39 -05:00
Ben Vanik
bba530f628
Pre-sizing export tables.
2015-06-03 22:40:23 -07:00
Ben Vanik
a9e2ba16fb
Optimizing page allocation (still shit) and adding MmSetAddressProtect.
2015-06-03 21:24:09 -07:00
Ben Vanik
50813d3ffa
NetDll_XNetGetDebugXnAddr stub.
2015-06-03 20:45:05 -07:00
Ben Vanik
b8d1d3cf35
Stub for avatar stuff to make it immediately bail.
2015-06-03 18:29:44 -07:00
Ben Vanik
36dc6dd864
Logging APC delivery.
2015-06-03 17:59:36 -07:00
gibbed
60daa978dd
VdSwap has 10 arguments.
2015-06-03 10:37:59 -05:00
gibbed
5cfdec7dbf
Fix a comment.
2015-06-03 09:50:13 -05:00
Ben Vanik
7f62e8a86d
Fixing notification dequeing.
2015-06-02 22:13:17 -07:00
Ben Vanik
e186fcaf0d
Fixing end_of_file and allocation_size, some wildcard stuff, etc.
2015-06-02 22:13:16 -07:00
Dr. Chat
b448d794c5
xboxkrnl SHA crypt stubs
2015-06-03 00:06:33 -05:00
gibbed
6d61d0a7b2
Added _snprintf and swprintf.
2015-06-02 10:42:10 -05:00
gibbed
58b1059a23
Reordered the formatting exports in the order of their ordinal.
2015-06-02 10:42:09 -05:00
gibbed
b402fb76e1
Oops.
2015-06-02 10:42:08 -05:00
gibbed
065f0417f2
Fixed vsnprintf behavior when count < 0.
2015-06-02 10:42:08 -05:00
Ben Vanik
c516447ae1
Misc stubs.
2015-06-02 00:14:24 -07:00
Ben Vanik
7525b840db
Making Rick happy ;)
2015-06-01 23:41:17 -07:00
Ben Vanik
862c322cbc
Fixing stack args and error typo.
2015-06-01 23:36:05 -07:00
Ben Vanik
f86f6ee79d
Always set fake cpu #.
2015-06-01 23:22:25 -07:00
Dr. Chat
93763c166f
input_buffer_*_block_count -> input_buffer_*_packet_count
2015-06-02 00:44:59 -05:00
Ben Vanik
493b06a48a
NetDll_XNetQosServiceLookup stub.
2015-06-01 22:20:04 -07:00
Ben Vanik
19cb13692b
Fixing undefined export names.
2015-06-01 22:12:11 -07:00
Ben Vanik
5c34b0a73e
Fixing printfs and fixing exports. link.exe is too good.
2015-06-01 21:40:53 -07:00
Ben Vanik
a91a754b24
Converting some exports to the new way.
2015-06-01 20:56:57 -07:00
Ben Vanik
f634edb9eb
Shrinking type names.
2015-06-01 19:55:43 -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
23826fa957
Initial experiment with new kernel export format.
2015-06-01 18:19:42 -07:00
gibbed
225bb74316
Oops. Not sure how that got reverted.
2015-06-01 20:05:54 -05:00
gibbed
2a2fe509e6
Rename _vswprintf to vswprintf.
2015-06-01 19:42:23 -05:00
gibbed
5b06b8436e
Use std::ostringstream instead of std::stringstream.
2015-06-01 19:32:13 -05:00
gibbed
fe8d058b36
Completely reimplemented xboxkrnl formatting related functions (sprintf, etc). No longer relies on CRT-provided sprintf/etc. Floating-point types needs more thorough testing.
2015-06-01 19:29:25 -05:00
gibbed
633d72a98e
Corrected NtQueryFullAttributesFile behavior when root_directory is 0.
2015-06-01 19:01:57 -05:00
gibbed
7c5ea52022
Updated functions pulling arguments out of the stack to use the appropriate SHIM_GET_ARG_* macro.
2015-06-01 19:01:56 -05:00
gibbed
8c49281bb5
Improvements to SHIM_GET_ARG_* macros.
2015-06-01 19:01:49 -05:00
Ben Vanik
ce3359389b
Allow new-style export registration.
2015-05-31 17:54:44 -07:00
Ben Vanik
08770a4ec0
Mass renaming. I love clang-format.
2015-05-31 16:58:12 -07:00
Ben Vanik
9c3d2b54fb
Cleanup before kernel export refactor.
2015-05-31 16:31:19 -07:00
Ben Vanik
fccab79a7a
Adding kernel state pointer to PPCContext. Still needs larger cleanup.
2015-05-31 14:35:56 -07:00
Ben Vanik
d97a6d1929
NtReadFile APC, somewhat.
2015-05-29 21:24:23 -07:00
Ben Vanik
a4edb7f9e1
Removing 64bit return type and cleaning up some SHIM* stuff pre-refactor.
2015-05-29 17:12:30 -07:00
gibbed
07c0724cf0
Some work on VdSwap.
2015-05-29 15:59:57 -05:00
gibbed
35bea36fc4
Added a magic value to XE_SWAP packets to make it obvious if there's an opcode collision.
2015-05-29 15:59:56 -05:00
gibbed
0050b3df83
Assign a CPU number based on the proc affinity mask on thread creation. Fixes audio threads not starting properly on Frogger 2, and possibly other titles.
2015-05-28 12:56:56 -05:00
gibbed
d1dbee2052
Consistency in memset calls.
2015-05-28 05:28:59 -05:00
gibbed
32fff9271b
Yeah, let's zero the right argument, m'kay.
2015-05-28 05:22:36 -05:00
gibbed
1613ef35a6
%S support for vsprintf.
2015-05-28 05:18:15 -05:00
gibbed
671d6f3746
Making assumptions about how big the buffer being passed to VdGetSystemCommandBuffer is. Seems to work and fix the divide by zero trap many games were making.
2015-05-28 05:18:14 -05:00
Ben Vanik
e419d314b3
Audio now works a bit better, but is still broken :/
2015-05-28 02:15:30 -07:00
Ben Vanik
a93325434a
Minor audio tweeks + profiling.
2015-05-28 00:19:17 -07:00
gibbed
0b75d409d2
Somehow this assert got removed.
2015-05-27 15:06:11 -05:00
gibbed
4280ae8adc
Corrected HostPathEntry::QueryDirectory return value when the first search fails.
2015-05-27 14:36:59 -05:00
Ben Vanik
8244409501
Refactoring to enable future time scaling, coordinated clocks, etc.
2015-05-26 22:20:58 -07:00
gibbed
05f2577fb7
Hurf. SHIM_SET_RETURN_64 -> SHIM_SET_RETURN_32.
2015-05-26 23:06:26 -05:00
Ben Vanik
55e65f4ad6
GetObjectsByType.
2015-05-25 21:39:01 -07:00
Ben Vanik
41cee3d337
Switching vsync to custom thread.
2015-05-25 21:12:27 -07:00
Ben Vanik
e3ddcd44e7
Minor fixes and fixing thread names.
2015-05-25 21:10:28 -07:00
Ben Vanik
273b9939e1
Fixing some misc thread/audio stuff.
2015-05-25 00:58:43 -07:00
Ben Vanik
f5a2b85d42
Switching to xe::mutex.
2015-05-25 00:52:21 -07:00
Ben Vanik
814ec82ad4
Removing old GetObject.
2015-05-25 00:52:20 -07:00
Ben Vanik
a2b66f9109
LookupObject'ing code.
2015-05-25 00:52:19 -07:00
Ben Vanik
018e9a96e1
LookupObject helper.
2015-05-25 00:52:19 -07:00
Ben Vanik
120e09f8e7
XObject::GetObject->GetNativeObject
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
fff1a7c132
Switching std::thread to XThread and hosting in object_refs.
2015-05-25 00:51:26 -07:00
Ben Vanik
1104f8e687
Header cleanups and prep.
2015-05-25 00:51:25 -07:00
Ben Vanik
8ac1f61c64
RAII object reference, debug mutex, etc.
2015-05-25 00:51:24 -07:00
Ben Vanik
576d6492dc
Basic debugger networking.
2015-05-25 00:51:22 -07:00
gibbed
90d6c81161
Stubbed XFileAllocationInformation and XFileEndOfFileInformation in NtSetInformationFile.
2015-05-24 14:18:42 -05:00
gibbed
f1d0fe909f
Added an assert_not_null for native_ptr in XObject::GetObject.
2015-05-24 13:42:31 -05:00
gibbed
5c404ddfdb
Always give an error on querying a file for compression information. This fixes Banjo-Kazooie and other games that rely on XtcdDecompression.
2015-05-24 12:32:24 -05:00
Ben Vanik
7afc108b28
Merge pull request #224 from DrChat/net_changes
...
Misc. changes in xam_net
2015-05-24 10:26:38 -07:00
gibbed
7d5b6920fa
Added QuerySizeInfo for FileFsSizeInformation.
2015-05-24 04:30:10 -05:00
gibbed
a4ef6e5837
Renamed QueryVolume to QueryVolumeInfo, QueryFileSystemAttributes to QueryAttributeInfo.
2015-05-24 04:30:09 -05:00
gibbed
3e55b590b1
Removing unnecessary indirection from XFile.
2015-05-24 04:30:09 -05:00
gibbed
de844a3db9
Renamed XFileSystemAttributeInfo to X_FILE_FS_ATTRIBUTE_INFORMATION.
2015-05-24 04:30:08 -05:00
gibbed
cbbaae7867
Renamed XFileSystemSizeInfo to X_FILE_FS_SIZE_INFORMATION.
2015-05-24 04:30:07 -05:00
gibbed
9104e0a288
Renamed XVolumeInfo to X_FILE_FS_VOLUME_INFORMATION.
2015-05-24 04:30:07 -05:00
gibbed
d60870e9eb
Renamed XDirectoryInfo to X_FILE_DIRECTORY_INFORMATION.
2015-05-24 04:30:06 -05:00
gibbed
e3e2b1a6d9
Renamed XFileInfo to X_FILE_NETWORK_OPEN_INFORMATION.
2015-05-24 04:30:05 -05:00
gibbed
2f905c0864
Added device(), removed absolute_path() on XFile. NtCreateFile now uses the file's device to resolve root directory requests.
2015-05-24 02:48:43 -05:00
gibbed
25c76e92e9
Simplify ResolvePath(), accessing paths using \Device\whatever is no longer valid (nothing should legitimately be using this anyway).
2015-05-24 01:27:26 -05:00
gibbed
a4f2efe941
Fixed path joining in NtCreateFile.
2015-05-24 01:15:52 -05:00
Dr. Chat
fad7cce2e9
Misc. changes in xam_net
...
XNetGetTitleXnAddr now returns a loopback address
2015-05-23 22:43:38 -05:00
gibbed
194fc4c1fd
Calls to VdSetDisplayModeOverride seem to skip r5 as an argument. Set a return value in VdInitializeEngines.
2015-05-23 19:51:07 -05:00
gibbed
b38bc0df1e
VdPersistDisplay is two arguments, not nine.
2015-05-23 19:38:57 -05:00
gibbed
a376eb7d9f
Added XamIsUIActive.
2015-05-23 19:29:04 -05:00
Dr. Chat
99dd84ce57
Removed assert statements checking for addr range
2015-05-23 14:52:38 -05:00
Dr. Chat
61e9ba665b
XamLoaderSetLaunchData
2015-05-23 14:35:00 -05:00
Dr. Chat
30e445a6de
VdPersistDisplay - Check if unk1 ptr is NULL
2015-05-23 14:25:46 -05:00
Dr. Chat
9d2e8d4699
Shouldn't need these range asserts anymore.
2015-05-23 14:25:10 -05:00
gibbed
ea99ba8e3b
0x7F000000-0x7FFFFFFF is magic.
2015-05-22 02:20:05 -05:00
gibbed
ddc5989b06
Games seem to check if XamLoaderGetLaunchDataSize returns a non-zero, which maybe means no data/error.
2015-05-22 01:29:33 -05:00
gibbed
3077999240
Added XFileSystemSizeInfo.
2015-05-22 01:29:21 -05:00
gibbed
5ac98d2feb
Adding some notes about fs_info_class in NtQueryVolumeInformationFile.
2015-05-22 00:41:24 -05:00
gibbed
06c99ded71
Cleaning up some stuff in RtlRaiseException, additional notes.
2015-05-22 00:41:23 -05:00
gibbed
b3d56521b4
Valid, unknown, content type.
2015-05-22 00:41:23 -05:00
Ben Vanik
4d41840728
Misc threading fixes and flags to ignore priorities/affinities.
2015-05-21 22:33:29 -07:00
Ben Vanik
20a3172ebb
Fix race condition in VS on thread naming.
2015-05-19 22:28:02 -07:00
Ben Vanik
2328b34308
Cleaning up some old flags.
2015-05-19 22:28:01 -07:00
Ben Vanik
9e685a1453
Merge pull request #216 from DrChat/audio
...
Cleanup some audio code
2015-05-19 22:24:00 -07:00
Dr. Chat
f168fa881e
Merge branch 'audio_cleanup' into audio
2015-05-20 00:20:52 -05:00
Ben Vanik
f88bf33b4f
Moving threads to XHostThread and making shutdown not crash.
2015-05-19 22:20:49 -07:00
Ben Vanik
7a82ad839a
Merge branch 'memory'
2015-05-19 20:29:00 -07:00
Dr. Chat
38918c86a8
Cleanup some audio system code
2015-05-19 21:52:21 -05:00
Ben Vanik
721974185f
Implementing XamShowDirtyDiscErrorUI.
2015-05-18 22:50:59 -07:00
Ben Vanik
dc7717e650
Fixing opening files for write.
2015-05-18 22:22:55 -07:00
Ben Vanik
53c807de5d
File not found.
2015-05-18 21:56:29 -07:00
Ben Vanik
b119aa50f5
Fixing thread ID.
2015-05-18 21:24:14 -07:00
Dr. Chat
ffe3b4bf04
XHostThread class
2015-05-18 22:23:59 -05:00
Ben Vanik
dceb9550c9
Adding global lock for slist (this is what reactos does).
2015-05-18 19:17:07 -07:00
Ben Vanik
c5906fba7f
Implementing XGetVideoCapabilities.
2015-05-18 19:13:42 -07:00
Dr. Chat
90648187dd
Implement InterlockedPopEntrySList
2015-05-18 21:10:58 -05:00
Ben Vanik
5c2b2a2b58
Adding missing exports.
2015-05-18 19:01:20 -07:00
Dr. Chat
9c949a2e87
Don't need to memset the xex memory twice.
2015-05-18 10:42:35 -05:00
Dr. Chat
ef912e7e13
Update user module imports debug dump
2015-05-18 01:42:42 -05:00
Dr. Chat
589e672d20
XexModule: Resolve user library imports
2015-05-18 01:31:59 -05:00
Dr. Chat
88733bf8ba
Zero-fill the memory where we're placing the xex
2015-05-18 00:50:58 -05: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
4d32c7af05
Attempting a thread priority mapping.
2015-05-17 21:26:27 -07:00
Ben Vanik
56e27990e0
Fixing name check.
2015-05-17 17:17:56 -07:00
Ben Vanik
c1a0f46ea8
Implementing dcbz.
2015-05-17 16:40:38 -07:00
Ben Vanik
b44a7a7730
Allocating stacks in the right place.
2015-05-17 13:10:02 -07:00
Ben Vanik
37804d692c
Fixing stack allocation alignment.
2015-05-17 10:17:32 -07:00
Dr. Chat
f14a52358a
KeSetBasePriorityThread: Some games apparently pass in the thread handle instead
2015-05-17 11:03:02 -05:00
Dr. Chat
662fa97444
XObject SetNativePointer: Added flag to disable asserts on uninitialized memory
2015-05-16 18:47:33 -05:00
Ben Vanik
da630cc159
Starting to clean up thread state.
2015-05-16 16:34:14 -07:00
Ben Vanik
147a70b9c1
Rewriting memory manager.
2015-05-17 00:16:56 +01:00
Dr. Chat
4af14884ed
Make sure object attributes pointer is non-NULL before reading from it
2015-05-16 15:24:23 -05:00
Ben Vanik
6239ff9616
Disabling thread state 0x150 set.
2015-05-16 01:49:57 -07:00
Ben Vanik
8d4f54e240
Thread state updates.
2015-05-16 01:45:56 -07:00
Ben Vanik
88596611d1
Thread tweeks.
2015-05-16 00:12:25 -07:00
Dr. Chat
e6b4c6056f
Calculate xex size based on the total size of all of the sections
2015-05-14 21:54:18 -05:00
Ben Vanik
380fabebe7
async errors.
2015-05-14 17:13:54 -07: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
gibbed
6fe545b3e9
Return X_ERROR_PATH_NOT_FOUND instead of X_ERROR_FILE_NOT_FOUND in XamContentCreateCore.
2015-05-14 17:02:28 -05:00
gibbed
61f4095851
Set thread affinity of the specific thread, not the current thread.
2015-05-14 17:02:28 -05:00
gibbed
283f5269d5
Create native threads with default stack size.
2015-05-14 17:02:27 -05:00
gibbed
ac1a805b8e
Implemented RtlNtStatusToDosError lookup tables.
2015-05-14 13:41:45 -05:00
gibbed
169c0fd26b
Oops. Sorting.
2015-05-14 12:01:24 -05:00
gibbed
20144709e3
Added xboxkrnl_error.cc/.h and moved RtlNtStatusToDosError to it.
2015-05-14 11:59:50 -05:00
Dr. Chat
398a412707
Inherit exe stack size if user doesn't specify one
2015-05-14 00:59:29 -05:00
Ben Vanik
6aec2c0d02
Whoops. I'm tired.
2015-05-13 00:38:55 -07:00
Ben Vanik
3b2035a054
Adding case for ObReferenceObjectByHandle, but impl still todo.
2015-05-13 00:37:35 -07:00
Ben Vanik
7622746ecf
4A seems more legit for video mode unk. Still no clue what it is.
2015-05-12 21:41:44 -07:00
gibbed
c00ded9fbc
Fixed VdQueryVideoFlags.
2015-05-12 22:59:21 -05:00
gibbed
95080cefa2
Fixed second argument in XamEnableInactivityProcessing.
2015-05-12 21:56:24 -05:00
Ben Vanik
5fbdd6e262
Fixing XMP playlist handles.
2015-05-12 19:55:10 -07:00
gibbed
fc9f9d9a60
This is probably more correct. Gets rid of all xobject related asserts for several games.
2015-05-12 06:51:30 -05:00
Ben Vanik
7a00b76a6e
Debugger stuff, and changing to vcproj's/sln.
2015-05-09 17:48:12 -07:00
Ben Vanik
4411a4499d
XEX-style exports, dumping exports, and prepping kernel export lookup.
2015-05-09 00:59:03 -07:00
Ben Vanik
23eb343484
Calling DllMain, fixing ref count, and fixing module search.
2015-05-09 00:56:42 -07:00
Dr. Chat
0f2b1491b7
Call a DLL's entry-point function in XexLoadImage
2015-05-08 22:51:03 -05:00
Dr. Chat
8deb622abb
Execute module entry-point function if it has one.
2015-05-08 22:50:54 -05:00
Ben Vanik
ade5388728
bool-ifying xe::cpu
2015-05-05 18:52:54 -07:00
Ben Vanik
b07d5b8ed3
Fixing compile warnings.
2015-05-05 18:52:37 -07:00