Commit Graph

67 Commits

Author SHA1 Message Date
Silent
5bec69e983 [Kernel] Add some useful asserts 2019-11-30 20:08:30 -06:00
Triang3l
2507f1a819 [Memory] TranslateVirtual in shim and strings 2019-08-14 10:31:11 +03:00
gibbed
4970fc8673 [Kernel] Make XObject type() const. 2019-08-03 23:47:16 -05:00
gibbed
54b0e2aff6 [Kernel] Add XSymbolicLink. 2019-07-29 17:52:46 -05:00
gibbed
0d6bfc1a6b [Kernel] Rename NotifyListener to XNotifyListener to bring it in line with the naming scheme of kernel objects. 2019-07-29 13:43:13 -05: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
Ben Vanik
b02ca62388 Fixing most remaining C++ warnings in clang. 2016-01-01 18:37:33 +00:00
Ben Vanik
3ca0bff246 Avoid duplicate object handle assignment on creation. 2015-12-29 14:03:23 -08:00
Dr. Chat
ab9fac9a98 XMutant Save/Restore 2015-12-29 13:09:53 -08:00
Dr. Chat
5aff9d12ee Call XObject::WaitCallback on successful waits 2015-12-29 13:09:52 -08:00
Dr. Chat
366f91e191 XFile Save/Restore 2015-12-29 13:09:51 -08:00
Dr. Chat
d0284e943d XSemaphore Save/Restore 2015-12-29 13:09:45 -08:00
Dr. Chat
89c408965e Can't call constructors from other constructors 2015-12-29 13:09:35 -08:00
Dr. Chat
87931369e4 XObject no kernel state constructor 2015-12-29 13:09:34 -08:00
Dr. Chat
4a3773d2fb XModule Save/Restore 2015-12-29 13:09:32 -08:00
Dr. Chat
93602ed48a No need to double-retain Ke* objects, as having them in the object table is enough. 2015-12-29 13:09:32 -08:00
Dr. Chat
785824531c Fix the assert on no restore handler found 2015-12-29 13:09:20 -08:00
Dr. Chat
52ec24ea6a Stash handles rather than native pointers in Ke* objects. 2015-12-29 13:09:17 -08:00
Ben Vanik
194c13f977 REBASE: Fix vector out of range access. 2015-12-29 13:09:16 -08:00
Dr. Chat
5517518d36 XObject savestate setup (Save/Restore, tracks all handles, tracks if host object) 2015-12-29 12:35:59 -08:00
Ben Vanik
e5fbf840d2 Shuffling kernel/. 2015-09-06 18:07:52 -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
a92566dfc5 More style. 2015-08-07 21:29:03 -07:00
Ben Vanik
e01c2ac98d Fixing formatting. 2015-07-28 00:32:01 -07:00
Dr. Chat
997de209ec Reversed engineered X_OBJECT_HEADER a bit better 2015-07-27 18:26:07 -05:00
Dr. Chat
8e41d5a707 The kernel object table now keeps track of handle reference counts. 2015-07-22 19:34:33 -05:00
Dr. Chat
e54477d0e4 XObject::StashNative 2015-07-17 19:52:29 -05: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
c2e2b3380e Replacing X_ANSI_STRING with new style.
Progress on #297.
2015-06-27 12:16:52 -07:00
Dr. Chat
3e7870fb39 Make SetNativePointer setup the guest pointer 2015-06-12 22:46:19 -05:00
Dr. Chat
3bd5dc011c Free the object creation info on destruction 2015-06-12 21:35:49 -05:00
Dr. Chat
bdcadeffe5 XObject CreateNative 2015-06-12 21:30:32 -05:00
Dr. Chat
f96657ef7c Fixup DISPATCH_HEADER type_flags to its parts 2015-06-12 19:47:28 -05:00
Dr. Chat
864e257474 DISPATCH_HEADER -> X_DISPATCH_HEADER 2015-06-12 18:59:08 -05:00
Ben Vanik
e419d314b3 Audio now works a bit better, but is still broken :/ 2015-05-28 02:15:30 -07:00
gibbed
0b75d409d2 Somehow this assert got removed. 2015-05-27 15:06:11 -05:00
Ben Vanik
8244409501 Refactoring to enable future time scaling, coordinated clocks, etc. 2015-05-26 22:20:58 -07:00
Ben Vanik
120e09f8e7 XObject::GetObject->GetNativeObject 2015-05-25 00:52:19 -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
gibbed
f1d0fe909f Added an assert_not_null for native_ptr in XObject::GetObject. 2015-05-24 13:42:31 -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
Dr. Chat
662fa97444 XObject SetNativePointer: Added flag to disable asserts on uninitialized memory 2015-05-16 18:47:33 -05:00
Ben Vanik
147a70b9c1 Rewriting memory manager. 2015-05-17 00:16:56 +01:00
Ben Vanik
8d4f54e240 Thread state updates. 2015-05-16 01:45:56 -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
e3220f7ae6 Code cleanup: moving poly/ into xenia/base/ 2015-05-02 03:42:51 -07:00
Ben Vanik
ec84a688e9 Starting to properly attribute virtual vs. physical memory accesses. 2015-03-29 11:11:35 -07:00
x1nixmzeng
25f78ed325 Added API scanner tool
New tool for issue #171 which links to libxenia to dump the API usage
from packaged content
2015-02-21 17:33:56 +00:00