Xenra 0.5.0
A new platform: iOS
Xenra ships on iPad and iPhone for the first time, as one app with both
consoles:
- Xbox 360 and original Xbox cores, the Metal renderer, JIT through StikDebug,
and the floating pad with physical controller support. - Dashboard, game library with box art and covers, setup wizard, per-game
settings, sharing logs, crash and thermal reports. - Xbox 360 System Link netplay over the local network, with a signed-in profile.
- Original Xbox Live through Insignia: console DNS, setup assistant and the
retail dashboard, all from the app.
The iOS and Android screens share their wording and layout, so a guide written
for one applies to the other.
Original Xbox: the Performance core
The Performance core is the default original Xbox core on Android, chosen per
game at launch. xemu remains for the dashboard, the Insignia setup assistant and
the games the performance core cannot run, exactly the split the game menu
already understands. The core names in the library and per-game settings are now
Performance and Compatibility, matching the 360 side.
Mali GPUs and compatibility rendering
- Compatibility rendering for Mali, selectable per device and per game.
- The custom-driver gate accepts Mali devices, so Exynos users can use driver
ZIPs through the same picker as Adreno. - Mali texture, presentation and fallback fixes, including the cases that left
a black frame or the wrong colour after a swap.
Performance
- The 360 Performance core's frame generator was reworked: motion search,
warp and smoothing, with the same quality checks. - Android: the library's fuzzy cover-art match for an uncached title now runs
on a background lane instead of the UI thread, removing the per-title stall
the 0.4.0 notes queued for this cycle. - On iOS, the Metal command processor spreads new shader translation over
frames, keeps a per-title pipeline cache, and no longer runs the shader
entry-point regex scan on the common path. A Halo 3 profile put roughly a
third of CPU samples in that regex before this change; it now runs only if
the entry point cannot be bound. The strlen-style trim and presence-string
parsers in the shared core also stopped building regexes per call.
Texture and bug fixes
- Crash Bandicoot: The Wrath of Cortex - original Xbox texture artifact fixed.
- First-shader stutter removed.
- A long list of shared 360 core fixes: sockets, TLS, XEX loading, file
attributes, timers, memory leaks and bounds checks. - On iOS, Exit Game no longer quits the app, app shortcuts open a game
directly, and analog sticks no longer degrade into presses.
Custom on-screen controls
Every button and stick can be dragged to a new place, saved, reset or cancelled
from the in-game menu. The layout is stored per device and applies to both
consoles, and the emulator pauses while the editor is open.
Design
A minor refresh: the 360 controller UI is green, the dashboard and onboarding
screens share a design across Android and iOS, and Netplay and Xbox Live have
matching screens on both platforms.
Install
Android has a new package name. It is Mohammed.Xanite.android now (the old
app was Ali.Xanite.green), so it installs alongside the old app instead of
over it, and saves do not move by themselves:
- In the old app, open Game Data and use Export saves. Keep the zip.
- Install the new app.
- In the new app, open Game Data and use Import saves from a zip.
- Pick your BIOS and game folders again, and set up profiles and controls once.
Keep the old app installed until its saves are imported. Shader caches rebuild
automatically and are not worth copying.
iOS is a new install and has nothing to migrate.
| Platform | Package | Version |
|---|---|---|
| Android | Mohammed.Xanite.android
| 0.5.0 |
| iOS | Mohammed.Xanite.ios
| 0.5.0 |