Azahar
Azahar est un émulateur open-source dédié à la Nintendo 3DS, issu d’un fork du projet Citra. Développé par une communauté active, il vise à offrir une expérience améliorée par rapport au matériel original, avec des résolutions supérieures, un support des manettes modernes et la possibilité de sauvegarder l’état de jeu. Il sert également de plateforme de débogage pour les développeurs de homebrew et de conservation pour l’écosystème 3DS.
Sur macOS, Azahar est disponible sous forme d’application autonome, compatible avec les architectures récentes (Apple Silicon et Intel). Bien que son développement priorise Windows et mobile, son portage pour macOS permet d’y exécuter une large bibliothèque de titres 3DS avec des performances correctes, à condition de disposer des fichiers ROM et des assets nécessaires. L’outil reste en évolution constante, avec une communauté impliquée dans son amélioration.
Dernière mise à jour :
Plateformes
Architecture
Mac OS X - macOS
Apple Silicon
64 bits
Téléchargement et liens
Historique des versions
v2126.1.2
v2126.1.1
-
Corrections critiques pour la stabilité :
- Suppression des crashes instantanés à l’ouverture sur systèmes avec un support Vulkan défaillant (ex. : configurations matérielles limitées).
- Correction d’un crash du rendu Vulkan lors du traitement de textures d’ombres spécifiques (impact direct sur Monster Hunter 4 Ultimate après ouverture du menu équipement).
-
Réglages par défaut ajustés :
- Désactivation de l’option "Skip Presenting Duplicate Frames" (par défaut), en raison de régressions mineures observées par rapport au comportement précédent.
(Aucune modification spécifique à macOS ou Apple Silicon dans cette version.)
Changelog complet
v2126.1
-
Stabilité et corrections critiques :
- Sauvegardes d'état verrouillées : Les fichiers de sauvegarde sont désormais liés à la version d’émulation qui les a créés, évitant les plantages (remplacés par un message d’erreur explicite indiquant la version source et suggérant un downgrade temporaire si nécessaire).
- Crashs Vulkan corrigés : Résolution de problèmes majeurs (ex. : Monster Hunter 4 Ultimate au démarrage de missions, Teenage Mutant Ninja Turtles: Danger of the Ooze, ou Super Smash Bros 4 en sélection de personnages) liés à la gestion des textures, du rasterizer ou des threads non-thread-safe.
-
Améliorations matérielles :
- Upscaling étendu : Limite de résolution interne portée à 18x (7200×4320), compatible avec les écrans 8K.
- Optimisations GPU : Gain de 0,5–1 ms par frame via une meilleure gestion des listes de commandes Vulkan.
-
Corrections audio :
- Suppression des crackles dans l’audio (ex. : musique du menu Home) et correction des buffers PCM16 en HLE (affecte Inazuma Eleven 3).
Pas de modifications spécifiques à macOS ou Apple Silicon dans ce changelog.
Changelog complet
v2126.1-rc5
- Correction majeure : Résolution d’une régression critique entraînant une fuite mémoire persistante lors de l’exécution d’applications avec le rendering OpenGL (affectant toutes les plateformes compatibles, avec un impact plus marqué sous Windows).
(Aucune nouveauté majeure ni modification spécifique à macOS dans cette version.)
Changelog complet
v2126.1-rc4
-
Nouveauté majeure :
- Ajout de vérifications pour empêcher l’activation de couches Vulkan non supportées par le système, évitant ainsi des plantages sur certaines configurations.
-
Correction importante :
- Désactivation par défaut du gestionnaire d’exceptions de débogage (précédemment activé par défaut), afin de limiter les conflits avec des mods de jeux ciblant spécifiquement les émulateurs.
-
Amélioration Android :
- Affichage explicite d’une carte "ROM invalide" dans la liste des jeux pour les ROMs non valides (au lieu d’un espace vide), corrigant une erreur de rendu introduite dans la version rc3.
Changelog complet
v2126.1-rc3
-
Correction majeure de stabilité :
- Suppression d’une régression introduite dans la version précédente (2126.1-rc1) qui provoquait des stutters audio majeurs lorsque le audio stretching était activé (réversion de la tentative de réduction de latence, #2439).
-
Corrections de crashes critiques :
- Résolution d’un crash lié à un changement de résolution interne pendant l’émulation, entraînant des artefacts graphiques et des fuites mémoire (#2489).
- Correction d’un crash potentiel pendant le gameplay sous certaines conditions avec des textures personnalisées (#2481).
(Aucune modification spécifique à macOS ou Apple Silicon dans ce changelog.)
Changelog complet
v2126.1-rc2
- Corrections majeures sur Android (régressions de la version rc1) :
- Résolution d’un décalage partiel de l’interface de l’écran tactile (overlay) pour les appareils avec caméra avant, notamment après une installation fraîche ou un réinitialisation de l’overlay.
- Correction d’un offset horizontal/vertical des entrées tactiles sur l’écran virtuel (3DS) lorsque l’option "Expand to Cutout Area" est activée, sur les appareils avec caméra avant.
- Ajustement mineur de la disposition des boutons faciaux (face buttons) dans le layout portrait par défaut pour améliorer l’ergonomie.
(Aucune mention spécifique à macOS ou Apple Silicon dans ce changelog.)
Changelog complet
v2126.1-rc1
-
Nouveautés majeures :
- Sauvegardes d'état verrouillées sur la version d'Azarah : Les fichiers de sauvegarde sont désormais liés à la version de l'émulateur qui les a créés. Tentative de chargement depuis une autre version → message d'erreur explicite (avec version source) + recommandation de downgrader temporairement pour récupérer le progrès via les sauvegardes in-game (remplace un crash silencieux).
- Augmentation de la résolution interne maximale : Passage de 10x (4000×2400) à 18x (7200×4320) pour une meilleure netteté sur les écrans haute résolution.
- Optimisations GPU : Réduction de 0,5–1 ms par frame via des améliorations du traitement des listes de commandes GPU, et implémentation du geometry shader output register banking (résout des problèmes dans les SEGA 3D Classics sans patches spécifiques).
-
Corrections critiques :
- Crashs Vulkan : Résolution d'un problème de suppression de textures en cours d'utilisation (notamment en haute résolution), évitant des plantages dans Monster Hunter 4 Ultimate et d'autres jeux.
- Lag systématique : Correction des ralentissements dans Super Smash Bros 4 (écran de sélection) et Mini Mario & Friends: Amiibo Challenge (déplacements diagonaux).
- Audio :
- Suppression du time stretching systématique (retard inutiles à toutes vitesses d'émulation).
- Fix du crackling dans Inazuma Eleven 3 (HLE audio) et amélioration des transitions de volume sans artefacts sonores.
- 3DS : Restauration du menu Friends (avant-plantage) et correction du gel du 3DS Internet Browser (problème de rescheduling).
-
Spécifique macOS (absent dans ce changelog) : Aucune mention.
Changelog complet
v2126.1-alpha1
- Améliorations macOS spécifiques :
- Activation des éléments d’interface Liquid Glass sur macOS 26 (compatibilité visuelle avec les versions récentes).
- Correction d’un problème de connexion aux périphériques locaux (ex. : 3DS physique) sous macOS 27, qui empêchait les opérations comme l’Artic Base ou la configuration système.
(Aucune autre modification macOS notable dans ce changelog.)
Changelog complet
v2126.0
-
Amélioration majeure de l'émulation GPU :
- Activation par défaut désactivée, mais ajout d'une option "Simulate 3DS GPU timings" pour une meilleure précision matérielle (impact notable sur Luigi’s Mansion 2: Dark Moon et Super Mario 3D Land).
- Correction d'un bug bloquant le chargement des sauvegardes dans Super Mario 3D Land après achèvement.
-
Compatibilité système et fichiers :
- Réorganisation interne des fichiers système (Z3DS, RomFS) rendant les configurations post-2126.0 incompatibles avec les versions antérieures (mais pas l'inverse).
- Correction des fichiers
.z3dsxcompressés avec RomFS intégré.
-
Corrections graphiques et stabilité :
- Suppression systématique des doublons de frames (option activée par défaut) pour les logiciels de capture.
- Fix des inversions de canaux couleur dans les captures d'écran (selon configurations matérielles).
- Correction des crashes liés aux vertex arrays invalides (ex. : générique dans Mario & Luigi: Superstar Saga).
- Optimisation mémoire via suppression des sous-routines LG2/EX2 inutiles dans les shaders.
-
Améliorations audio et réseau :
- Ajout d'un toggle pour simuler des écouteurs branchés (impact sur certains jeux comme Super Mario 3D Land).
- Correction des applets Miiverse (upload de posts, requêtes HTTPC) et communication APT.
-
Corrections mineures :
- Mise à jour des messages d'erreur de chargement ROM pour plus de clarté.
- Fix des bugs graphiques dans Monster Hunter (Vulkan) et Brain Age: Concentration Training (cubemaps).
- Correction d'une overflow potentielle avec les mappings Luma3DS personnalisés.
Changelog complet
v2126.0-rc5
-
Nouveauté majeure (préparation future) :
- Réorganisation interne du système de gestion des fichiers spéciaux (comme les fichiers Z3DS), avec une correction des fichiers 3DSX compressés (
.z3dsx) contenant un RomFS qui ne chargeaient pas correctement.
- Réorganisation interne du système de gestion des fichiers spéciaux (comme les fichiers Z3DS), avec une correction des fichiers 3DSX compressés (
-
Incompatibilité critique (à noter) :
- Les fichiers système configurés depuis la version 2126 ou ultérieure seront incompatibles avec les versions antérieures (mais pas l’inverse).
- Impact : Sauvegarde recommandée avant mise à jour.
-
Correction mineure (interface utilisateur) :
- Correction d’un étiquetage inversé dans le menu "Set Up System Files" (les labels "Old 3DS setup" et "New 3DS setup" étaient échangés).
Changelog complet
v2126.0-rc4
-
Corrections critiques pour les contrôleurs :
- Résolution d’un plantage lors de l’utilisation de contrôleurs avec pavé tactile physique (ex. : DualSense, DualShock).
- Correction d’un blocage à l’initialisation si un contrôleur PS4/PS5 est branché.
- Réajustement du comportement des auto-mappings pour certains contrôleurs.
- Fix des entrées analogiques (triggers, sticks) pour éviter des décalages (ex. : triggers L/R collés sur Steam Deck).
-
Améliorations macOS/universelles : (Aucune modification spécifique à macOS ou Apple Silicon mentionnée dans ce changelog.)
Changelog complet
v2126.0-rc3
-
Correction majeure pour macOS (et Android) :
- Correction d’un crash lors de la création ou de la jointure de salles privées en multijoueur sur Android (et probablement macOS) lorsque l’option de jeu préféré n’est pas explicitement définie, avec ajout de la valeur "No Preference".
-
Correction critique pour la stabilité :
- Résolution d’un crash lié à la soumission d’un tableau de sommets avec une adresse de base invalide, connu pour bloquer les crédits de Mario & Luigi: Superstar Saga (et potentiellement d’autres jeux).
-
Amélioration technique (côté serveur/back-end) :
- Correction d’un bug où la valeur de la caméra "Outer Right" était incorrectement lue depuis celle de "Inner Camera Flip" (affecte la configuration visuelle des jeux).
-
Mise à jour technique (non visible par l’utilisateur) :
- Mise à jour du NDK utilisé pour la construction du cœur Libretro Android (version r27d), avec des ajustements internes pour aligner les références sur le projet Citra (azahar_libretro → citra_libretro en interne, mais le nom du fichier binaire reste inchangé).
Changelog complet
v2126.0-rc2
-
Améliorations majeures pour l'émulation GPU :
- Réimplémentation expérimentale (désactivée par défaut) de la file d'interruptions GPU et du timing GPU, améliorant l'exactitude matérielle (ex. : Luigi’s Mansion 2 jouable sans contournement, Super Mario 3D Land avec chargement de sauvegarde corrigé).
- Risque : impact potentiel sur les jeux utilisant un FPS dynamique (non limité à 60 FPS sur matériel réel).
-
Corrections critiques pour macOS / Apple Silicon :
- Aucune modification spécifique à macOS ou aux architectures M1/M2/M3 n’est mentionnée dans ce changelog.
-
Corrections majeures :
- Résolution d’un crash lié au remplissage de couleur avec le rendu Vulkan.
- Correction d’un bug de corruption du framebuffer en suspension d’applications (impactait Miiverse).
- Fix des problèmes de timing CPU, évitant des softlocks (ex. : Lego City Undercover).
-
Améliorations techniques :
- Optimisation de la gestion des subroutines LG2/EX2 (réduction de la mémoire via émulation ciblée).
- Correction des erreurs de communication APT (Miiverse, applets système).
- Mise à jour des messages d’erreur de chargement ROM pour plus de clarté.
-
Débogage et fonctionnalités utilisateur :
- Ajout d’un interrupteur "headphones plugged in" pour simuler un casque (impact mineur sur certains jeux).
- Suppression des duplications de frames dans les captures (option activée par défaut).
- Intégration d’une API de remplacement d’URL (utilisée par Pretendo Network Nimbus).
Changelog complet
v2125.1.3
-
Correction critique sur macOS : Résolution d’un blocage instantané à l’ouverture, dépendant de facteurs comme la version de macOS, la compatibilité du build et l’état du dossier utilisateur (problème récurrent et intermittent).
-
Amélioration technique macOS : Correction des avertissements du linker lors de la compilation avec la présence riche Discord (backport depuis une version alpha récente), sans rétroportage de la modification du nom de l’option CMake.
-
Compatibilité logicielle : Mise à jour de dynarmic pour corriger un problème de build lié aux mises à jour des paquets MSYS2 (impact potentiellement indirect sur les builds macOS si dépendances partagées).
Changelog complet
v2126.0-alpha2
-
Corrections majeures pour macOS :
- Correction de plusieurs problèmes mineurs liés à MoltenVK/Metal, améliorant la stabilité de l'émulation sur Apple Silicon (M1/M2/M3).
- Suppression d’un avertissement de liaison (linker warning) lié à la version minimale de macOS requise, évitant des messages inutiles lors de la compilation avec Discord RPC activé.
-
Améliorations techniques et corrections générales :
- Correction d’un problème de détection de langue système, rendant l’interface utilisateur cohérente avec la langue configurée (ex. : messages Qt comme OK/Cancel traduits pour la plupart des langues, sauf pour 6 langues spécifiques).
- Mise à jour des codes de langue pour une détection systématique plus fiable.
-
Corrections ciblées pour des jeux/software spécifiques :
- Résolution d’un plantage en noir au démarrage pour certains logiciels homebrew anciens.
- Correction d’un bug lié aux unités de texture cubemap (affectait Brain Age: Concentration Training).
- Ajustement du comportement des stubs gas pour le rendu Vulkan, fixant des artefacts graphiques dans Monster Hunter.
-
Changements techniques internes :
- Renommage de l’option CMake
USE_DISCORD_PRESENCEenENABLE_DISCORD_RPC(impacte les compilations personnalisées). - Activation par défaut de
ENABLE_QT_TRANSLATION, ajoutantqt6-tools-devcomme dépendance obligatoire pour les builds avec interface Qt.
- Renommage de l’option CMake
Changelog complet
v2126.0-alpha1
- Correction majeure sur macOS :
- Résolution d’un problème où les noms de fichiers SDMC contenant des caractères Unicode s’affichaient et se comportaient de manière partiellement corrompue dans les applications émulées (ex : jeux 3DS).
(Aucune autre modification spécifique à macOS ou Apple Silicon dans ce changelog.)
Changelog complet
v2125.1.2
-
Renforcement de la sécurité des distributions :
- Immuabilité des assets : les fichiers de téléchargement officiels sont désormais immuables (verrouillés après publication), empêchant toute modification malveillante (ex. : substitution par des versions truquées). Un cadenas avec le mot "Immutable" indique cette protection sur la page de téléchargement.
- Attestations cryptographiques : chaque binaire officiel est signé avec des métadonnées vérifiables (commit source, horodatage, pipeline CI) via GitHub Attestations. Les utilisateurs peuvent les valider avec la commande :
gh attestation verify --owner azahar-emu --predicate-type "https://spdx.dev/Document/v2.3". Utilité : détection de tampering même sur des sources secondaires (ex. : Archive.org). - Software Bill of Materials (SBOM) : un fichier JSON liste les dépendances logicielles (pour tracer les vulnérabilités). Un script
verify-release.shpermet de l’extraire et d’auditer la release (ex. :./tools/verify-release.sh azahar-emu/azahar 2125.1.2).
-
Pas de modifications utilisateur visibles : cette mise à jour est purement technique et optionnelle (les utilisateurs peuvent ignorer cette version sans risque). Aucune fonctionnalité ou correction n’est ajoutée par rapport à la version précédente.
Note : Aucune mention spécifique à macOS, Apple Silicon ou builds .dmg dans ce changelog.
Changelog complet
v2125.1.1
-
Correction d’une régression introduite dans la version 2125.1 affectant l’affichage des coins arrondis des fenêtres en plein écran (Windows uniquement).
-
Correction d’une régression dans 2125.0 entraînant des plantages sur certains jeux dus à une mauvaise gestion des textures d’ombres.
-
Compatibilité technique améliorée : remplacement de
std::powfparstd::powpour élargir la compatibilité des builds (impact potentiel sur macOS si des dépendances similaires existaient).
(Aucune modification spécifique à macOS ou Apple Silicon dans ce changelog.)
Changelog complet
v2125.1
-
Nouveautés majeures :
- Ajout de l'émulation de la LED de notification du 3DS, visible uniquement dans l'interface desktop (nouvel élément UI dédié).
- Correction majeure de stabilité : mise en œuvre du limiteur de temps CPU
syscorepour reproduire le comportement matériel réel, évitant la surcharge des modules LLE (notamment le moduleBOSSlié aux fonctionnalités en ligne). - Optimisation graphique : amélioration mineure des performances pour les jeux utilisant des geometry shaders via une optimisation de l'état
SETEMITdeGeometryEmitter.
-
Corrections importantes (cross-platform) :
- Correction des modes de fusion de couleurs défaillants sur le backend OpenGL (résolution d'un artefact noir en bas à droite de l'écran dans certains jeux comme Shin Megami Tensei IV).
- Correction des erreurs de résolution DNS (
getaddrinfo/getnameinfo) dans les applications émulées. - Activation du module LLE
BOSSvia un paramètre dédié ("Enable required LLE modules for online features").
-
Spécifique macOS :
- Builds x86_64/Intel désormais cross-compilées depuis un runner ARM64 (macOS), sans impact fonctionnel mais amélioration des pratiques de construction.
- Aucune correction ou ajout spécifique à macOS ou Apple Silicon (M1/M2/M3) n'est mentionnée dans ce changelog.