Xemu
Xemu est un émulateur open source de la console Xbox originale, permettant de jouer à des titres commerciaux sur macOS. Développé par Matt Borgerson, il cible une compatibilité partielle avec les jeux, dépendante des performances matérielles et des retours communautaires. Les builds officiels sont optimisés pour macOS 11 et versions ultérieures, avec une demande en ressources significative (CPU/GPU).
L’émulateur intègre des fonctionnalités avancées comme le sauvegarde d’état, le scaling graphique (jusqu’à 1080p) et le multijoueur local/réseau, via des protocoles compatibles avec Xbox Live. Il supporte jusqu’à quatre manettes (SDL3) et propose une documentation collaborative pour suivre l’évolution de la compatibilité. Les sources sont disponibles sur GitHub, et la communauté (Discord) participe activement aux tests et améliorations.
Dernière mise à jour :
Plateformes
Architecture
Mac OS X - macOS
Apple Silicon
64 bits
SDL Library
Téléchargement et liens
- Télécharger Xemu
- Site officiel
- Code source
-
brew install xemu
Historique des versions
v0.8.136
-
Correction majeure pour macOS x86-64 : Suppression du ciblage par défaut de la puce Ivy Bridge dans le script de compilation (
build.sh), permettant une meilleure compatibilité avec les processeurs Intel récents sous macOS. -
Amélioration des performances : Activation de nouvelles optimisations architecturales pour les builds de release (incluant potentiellement des gains sur macOS x86-64, bien que non explicitement ciblé).
-
UI adaptative : Prise en compte de la densité de pixels et du facteur d'échelle d'affichage pour une meilleure compatibilité avec les écrans haute résolution (macOS inclus, mais sans spécificité Apple).
Note : Aucun changement spécifique pour Apple Silicon (M1/M2/M3) ou pour les builds .dmg n'est mentionné dans ce changelog.
Changelog complet
v0.8.135
-
Amélioration majeure de la stabilité graphique :
- Correction des blocages liés aux surface-to-texture constraints dans le rendu Vulkan (NV2A), réduisant les risques de plantages ou de performances dégradées.
- Optimisation du finish stall dans le backend Vulkan pour éviter les attentes inutiles quand aucun rendu n’est en cours.
-
Correction critique de sécurité/robustesse :
- Résolution d’un crash lors de l’ouverture de la boîte de dialogue "Load Disc" si le répertoire des jeux est invalide ou inaccessible (#2785).
-
Mises à jour logicielles sous-jacentes :
- Mise à jour de plusieurs dépendances critiques (SDL3 v3.4.8, glslang v16.3.0, SPIRV-Reflect v1.4.350.0, volk v1.4.350, cURL v8.12.1-2) pour corriger des vulnérabilités ou améliorer la compatibilité.
-
Compatibilité macOS ciblée :
- Cible explicite de Darwin 23 (macOS Sonoma 14.x) pour les builds ARM64, garantissant une prise en charge officielle des processeurs Apple Silicon (M1/M2/M3) et des versions récentes de macOS.
- Pas de correctifs spécifiques pour les builds
.dmgou les régressions connues sous macOS (sauf via les dépendances mises à jour).
-
Interface utilisateur :
- Correction d’une erreur potentielle dans l’ouverture de dialogues de fichiers via SDL3 (évite les chemins nuls ou invalides).
Changelog complet
v0.8.134
-
Migration majeure vers SDL3 : Passage complet de l'API SDL2 à SDL3 (versions 3.4.2 et glslang 16.2.0), avec des optimisations sous-jacentes (gestion des audio streams, suppression de callbacks, restructuration des modules comme
nv2aouapu). Impact sur la stabilité et les performances, notamment pour les titres gourmands en ressources. -
Corrections critiques pour l'audio :
- Résolution du buzzing audio dans NASCAR 06 et NASCAR 07 (#2737).
- Suppression des crashes liés à l'absence de périphérique audio (#354).
- Nettoyage du historique HRTF lors de réinitialisations de filtres audio (#2725).
-
Améliorations UI/UX globales :
- Gestion indépendante des taux de rafraîchissement hôte/guest (#2683), réduisant les artefacts en plein écran.
- Continuité de l'émulation pendant le redimensionnement de la fenêtre ou l'ouverture de dialogues (sélection de fichiers, configuration) (#2684, #2685).
- Correction des bugs de clic sur l'information de configuration (#2692) et du dialogue de sélection de fichiers en plein écran (#350).
-
Stabilité des contrôles USB :
- Réactivation du support des sticks analogiques droits et déclencheurs pour les manettes 8BitDo (problème récurrent depuis la v0.8.93+) (#2356).
- Détection corrigée des contrôleurs xinput connectés en Bluetooth (#2180).
-
Optimisations internes :
- Restructuration du code
xblcet du système audio (apu) pour une meilleure modularité et réduction des goulots d'étranglement. - Suppression de dépendances obsolètes (ex: LLVM package repo dans les workflows CI).
- Restructuration du code
Note : Aucune modification spécifique à macOS ou Apple Silicon n'est mentionnée dans ce changelog.
Changelog complet
v0.8.133
-
Mise à jour majeure du noyau QEMU : Intégration de la version QEMU 10.2.0, apportant des améliorations générales de performance, de stabilité et une meilleure compatibilité avec les fonctionnalités matérielles des consoles Xbox 360.
-
Nouveauté UI : Ajout d’une option configurable pour le plein écran exclusif, permettant aux utilisateurs de choisir entre les modes plein écran standard et exclusif (utile pour les cartes graphiques ou configurations spécifiques).
-
Réversion technique : Annulation d’une mise à jour précédente du toolchain Windows ARM64 (pour éviter des incompatibilités ou des régressions), sans impact direct sur les autres plateformes.
(Aucune modification spécifique à macOS ou Apple Silicon dans ce changelog.)
Changelog complet
v0.8.132
-
Améliorations graphiques majeures :
- Correction des problèmes de clipping des blits d'images dans le GPU (NV2A), évitant les artefacts aux limites des tuiles GPU (#2666).
- Fix de la gestion des surfaces de taille nulle et du calcul de longueur des palettes (#2517, #2670), améliorant la stabilité des rendus 2D.
-
Corrections critiques pour jeux spécifiques :
- Résolution des freezes du compteur de lancers dans la série MVP Baseball (2003–2006 et NCAA Baseball 06) (#2403).
- Correction des statistiques affichées incorrectes dans NBA Street Vol. 2 (#2646).
- Suppression des assertions critiques dans Psychonauts liées aux vérifications VK et au framebuffer GL (#2159, #2161).
- Fix d'une assertion dans WWE WrestleMania 21 (#559).
-
Stabilité interne :
- Gestion améliorée des commandes de type
pbdans le composantpfifo(#559), réduisant les crashes liés aux commandes GPU invalides.
- Gestion améliorée des commandes de type
Changelog complet
v0.8.131
-
Correction majeure pour les contrôleurs Xbox : Résolution d’un problème critique de sauvegarde (snapshots) entraînant une erreur
-22lors du chargement de l’état de la machine virtuelle avec un Xbox Controller S (fixe l’issue #2241). -
Amélioration de l’interface utilisateur (UI) : Désactivation des boîtes de dialogue d’assertion CRT (affichées pour les problèmes critiques) et redirection des logs vers
stderrpour une meilleure traçabilité (fixe l’issue implicite liée aux dialogues intrusifs). -
Prise en charge de la haute résolution sur macOS : Correction du scaling Retina/High-DPI pour l’interface ImGUI, rendant l’interface lisible sur les écrans macOS haute résolution (fixe l’issue #1666).
-
Optimisations CI/CD et outils de build :
- Activation du Link-Time Optimization (LTO) incrémental pour accélérer les compilations.
- Mise à jour des outils de build (zstd, curl, GCC via MXE) et des sous-projets Meson pour une meilleure stabilité.
- Passage à clang pour les builds Linux en CI.
-
Correction des packages de release : Standardisation du nom des fichiers de distribution pour éviter les confusions (fixe l’issue #1840).
Changelog complet
v0.8.130
-
Amélioration des builds macOS :
- Signature des releases : Intégration d’un processus de signature pour les binaires macOS (fichiers
.dmg), renforçant la sécurité et la compatibilité avec les restrictions de macOS (Gatekeeper).
- Signature des releases : Intégration d’un processus de signature pour les binaires macOS (fichiers
-
Optimisations CI/CD :
- Accélération des jobs de build pour Ubuntu (sans impact direct sur macOS).
(Aucune correction majeure ou fonctionnalité spécifique à Apple Silicon ou macOS minimum mentionnée dans ce changelog.)
Changelog complet
v0.8.129
-
Correction majeure de stabilité : Résolution d’un problème de use-after-free dans l’interface utilisateur lors de l’ajout d’une nouvelle carte de contrôleur, évitant des plantages ou des comportements indésirables.
-
Amélioration des bindings clavier : Correction d’un dysfonctionnement lié aux combinaisons de touches avec plusieurs contrôleurs connectés simultanément.
(Aucune modification spécifique à macOS ou Apple Silicon dans cette version.)
Changelog complet
v0.8.128
- Amélioration majeure de l'interface utilisateur : Remplacement de la fonction
xemu_open_web_browserparSDL_OpenURLpour une gestion plus standardisée des liens hypertextes, améliorant la compatibilité et la stabilité des ouvertures de navigateur.
(Aucune mention spécifique à macOS ou Apple Silicon dans ce changelog.)
Changelog complet
v0.8.127
-
Correction majeure de problème de rendu cubemap dans les shaders 2D (via
sampler2D) affectant Chase: Hollywood Stunt Driver, entraînant des artefacts visuels (eau noire) dans certaines scènes. -
Fix spécifique à un titre : Chase: Hollywood Stunt Driver (ID
424d0001) devrait désormais afficher correctement les textures cubemap dans les shaders 2D.
(Aucune modification liée à macOS ou Apple Silicon dans cette version.)
Changelog complet
v0.8.126
- Ajout d’une méthode de filtrage Nearest dans le menu-bar pour améliorer la qualité visuelle des textures (option supplémentaire aux méthodes existantes comme Bilinear ou Anisotropic).
(Aucune modification spécifique à macOS ou Apple Silicon dans cette version.)
Changelog complet
v0.8.125
- Correction majeure : Résolution d’un problème récurrent où le réglage du rumble (vibration) des manettes était réinitialisé à la valeur par défaut lors de la fermeture et de la réouverture de l’émulateur, malgré une désactivation manuelle.
(Aucune modification spécifique à macOS ou Apple Silicon dans ce changelog.)
Changelog complet
v0.8.124
- Ajout du support natif de libusb dans les builds, améliorant la compatibilité avec les périphériques USB externes (manettes, claviers, etc.) et réduisant les dépendances externes pour les utilisateurs.
(Aucune modification spécifique à macOS ou Apple Silicon dans cette version.)
Changelog complet
v0.8.123
-
Nouveauté majeure : Ajout d’un système de remappage avancé des boutons et axes des manettes de jeu (via l’interface utilisateur), permettant une personnalisation fine des contrôles.
-
Correction importante : Implémentation complète du remappage des manettes, résolvant un problème récurrent (#136) où les configurations personnalisées ne fonctionnaient pas correctement.
(Aucune modification spécifique à macOS ou Apple Silicon dans ce changelog.)
Changelog complet
v0.8.122
Aucun détail pour cette version.
v0.8.121
Aucun détail pour cette version.
v0.8.120
Aucun détail pour cette version.
v0.8.119
Aucun détail pour cette version.
v0.8.118
Aucun détail pour cette version.
v0.8.117
Aucun détail pour cette version.
Captures d'écran