Changes

Jump to navigation Jump to search

Xbox 360 emulators

38 bytes added, 25 January
Comparisons
:Xenia is the leading Xbox 360 emulator that's made it the furthest. While it isn't nearly as compatible as RPCS3 is for [[PlayStation_3_emulators|PlayStation 3]], impressive performance outshines RPCS3: which has reasonably higher CPU demands due to [[PlayStation_3_emulators#Emulation_issues|extremely challenging SPU emulation]]. This is partly because Xenia utilizes more [[High/Low_level_emulation|High-Level Emulation (HLE) for the CPU, while relying heavily on Low-Level Emulation (LLE) for the GPU]]<ref>[https://discord.com/channels/308194948048486401/308194948048486401/1192362532212576348 Rick's xenia discord message about LLE and HLE]</ref>. Because of this HLE and LLE approach: it's optimizes CPU work for host, and making Xenia more reliant on GPU performance. Xenia supports various [[#Enhancements|enhancements]] and some of the [[#Hardware_features_and_peripherals|hardware features]]. For emulation on Linux: see [[Xenia#Linux_and_SteamOS.2FSteam_Deck|this page]].
::'''canary''' builds has better compatibility and performance compared to master builds and some of the [[##Hardware_features_and_peripherals|hardware features]] and [[#Enhancements|enhancements]] exclusive to this fork.
::'''canary-netplay'''; see [[Xbox_Live#Xbox_360|Xbox Live]] page(Xbox 360 section).
::'''canary-nukernel''' branch emulates: The [[#Emulation_issues|six individual hardware threads on the original Xbox 360 CPU]], certain kernel timing quirks (clock interrupt update every 1millisecond, "background scheduling"), the kernel's thread scheduler, deferred procedure calls, asynchronous procedure calls (done more accurately than on normal canary, plus kernel ones are supported), much more accurate and portable emulation of synchronization primitives, supports guest objects without creating host objects for them. So certain games that do not work on normal canary can be played on this branch, because the features/quirks they expect are implemented here, but nukernel branch mostly focuses on reimplementing parts of the threading subsystem of the kernel, not io or memory, which are also messed up. Developer of this branch said that: "It really felt like starting from scratch on the kernel side, because for a long time nothing booted on it".[https://discord.com/channels/308194948048486401/701111856600711208/1200116567489384548]
10,851
edits

Navigation menu