{"id":137162,"date":"2026-09-20T15:12:10","date_gmt":"2026-09-20T13:12:10","guid":{"rendered":"https:\/\/www.emu-france.com\/?p=137162"},"modified":"2026-09-20T15:12:10","modified_gmt":"2026-09-20T13:12:10","slug":"consoles-de-salon-ruzu-v0-1-0","status":"publish","type":"post","link":"https:\/\/www.emu-france.com\/?p=137162","title":{"rendered":"[Consoles de salon] Ruzu v0.1.0"},"content":{"rendered":"<p>Ruzu est un \u00e9mulateur Nintendo Switch \u00e9crit en Rust, d\u00e9velopp\u00e9 comme une exp\u00e9rience visant \u00e0 d\u00e9terminer si l&rsquo;IA, via des mod\u00e8les de langage (LLM), pouvait r\u00e9aliser le portage complet d&rsquo;un projet logiciel de tr\u00e8s grande taille de C++ vers Rust.<br \/>\n&nbsp;<\/p>\n<p>Le projet est bas\u00e9 sur le code de yuzu\/Eden et repr\u00e9sente environ 500 000 lignes de code port\u00e9es exclusivement avec l&rsquo;aide de LLM, sur une p\u00e9riode d&rsquo;environ six mois. L&rsquo;objectif n&rsquo;\u00e9tait pas simplement d&rsquo;obtenir un programme fonctionnel, mais de conserver au maximum la structure du projet original, avec une correspondance entre les fichiers et les diff\u00e9rentes parties du code C++ et Rust.<br \/>\n&nbsp;<br \/>\n<a href=\"https:\/\/www.emu-france.com\/wp-content\/uploads\/2026\/09\/ruzu-scaled.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter  wp-image-136634\" src=\"https:\/\/www.emu-france.com\/wp-content\/uploads\/2026\/09\/ruzu-scaled.png\" alt=\"\" width=\"477\" height=\"134\" srcset=\"https:\/\/www.emu-france.com\/wp-content\/uploads\/2026\/09\/ruzu-scaled.png 2560w, https:\/\/www.emu-france.com\/wp-content\/uploads\/2026\/09\/ruzu-300x84.png 300w, https:\/\/www.emu-france.com\/wp-content\/uploads\/2026\/09\/ruzu-1024x288.png 1024w, https:\/\/www.emu-france.com\/wp-content\/uploads\/2026\/09\/ruzu-768x216.png 768w, https:\/\/www.emu-france.com\/wp-content\/uploads\/2026\/09\/ruzu-1536x432.png 1536w, https:\/\/www.emu-france.com\/wp-content\/uploads\/2026\/09\/ruzu-2048x576.png 2048w\" sizes=\"auto, (max-width: 477px) 100vw, 477px\" \/><\/a><br \/>\n&nbsp;<br \/>\nRuzu int\u00e8gre notamment un kernel HLE avec ordonnanceur, fibres, IPC et services, un processeur de commandes GPU, un recompilateur de shaders et un JIT. La recompilation dynamique du code ARM est assur\u00e9e par rdynarmic, un portage Rust de Dynarmic, avec des backends natifs x86-64 et ARM64. Le projet comprend \u00e9galement rxbyak, un portage Rust de Xbyak pour la g\u00e9n\u00e9ration de code machine x86-64.<br \/>\n&nbsp;<br \/>\nL&rsquo;\u00e9mulateur est d\u00e9j\u00e0 capable de d\u00e9marrer et d&rsquo;ex\u00e9cuter des jeux commerciaux, avec l&rsquo;objectif affich\u00e9 d&rsquo;atteindre les performances de l&rsquo;impl\u00e9mentation C++ originale. Le projet reste toutefois en d\u00e9veloppement.<br \/>\n&nbsp;<br \/>\nRuzu dispose \u00e9galement d&rsquo;un frontend graphique ainsi que d&rsquo;un frontend en ligne de commande, et peut \u00eatre compil\u00e9 sous Windows, Linux, macOS et plusieurs syst\u00e8mes BSD.<br \/>\n&nbsp;<br \/>\nLes changements sont:<br \/>\n<em>&#8211; Home Menu and applets: improved startup, launching installed applications, firmware-specific application information, and document loading. Fixed menu-focus issues. Home Menu compatibility remains experimental.<br \/>\n&#8211; Gamescope and controller navigation: added in-window menus and dropdowns to avoid clipped or hidden popups. Improved navigation throughout the interface, fixed SDL axis-direction handling, and prevented navigation from interfering with control configuration.<br \/>\n&#8211; Compatibility and stability: expanded system-service coverage with updates from Eden, corrected service-session ownership and cleanup, and fixed recursive locking during web-applet completion.<br \/>\n&#8211; Rendering (Vulkan): incorporated upstream display-composition updates. macOS Vulkan builds now use a pinned, Eden-compatible patched MoltenVK. The experimental Metal backend gains depth\/stencil fixes, compiled shader-library reuse, and improved diagnostics.<br \/>\n&#8211; Rendering (Metal): The (not so) experimental Metal backend gains depth\/stencil fixes, compiled shader-library reuse, and improved diagnostics.<br \/>\n&#8211; Packaging and testing: Steam Deck packages can now be built without executing Zen 2 binaries on the host; the resulting AppImage remains Zen 2-targeted. Extended input recording and replay for reproducible interface testing.<\/em><br \/>\n&nbsp;<\/p>\n<p class=\"p_telecharger_icone_zip\"><p class=\"p_telecharger_icone_zip\"><a class=\"telecharger_icone_zip\" href=\"https:\/\/www.emu-france.com\/?wpfb_dl=8403\" title=\"Download Ruzu\">T\u00e9l\u00e9charger Ruzu v0.1.0 (48.4 Mo)<\/a><\/p><\/p>\n<p class=\"p_site_officiel\"><a class=\"site_officiel\" href=\"https:\/\/github.com\/vricosti\/ruzu-emu\" target=\"_blank\" rel=\"noopener\">Site Officiel<\/a><\/p>\n<p class=\"p_en_savoir_plus\"><a class=\"en_savoir_plus\" href=\"https:\/\/www.emu-france.com\/emulateurs\/5-consoles-de-salon\/467-nintendo-switch-console\/\">En savoir plus&#8230;<\/a><\/p>\n<div class=\"fcbkbttn_buttons_block\" id=\"fcbkbttn_left\"><div class=\"fb-share-button  \" data-href=\"https:\/\/www.emu-france.com\/?p=137162\" data-type=\"button_count\" data-size=\"small\"><\/div><\/div>","protected":false},"excerpt":{"rendered":"<p>Ruzu est un \u00e9mulateur Nintendo Switch \u00e9crit en Rust, d\u00e9velopp\u00e9 comme une exp\u00e9rience visant \u00e0 d\u00e9terminer si l&rsquo;IA, via des mod\u00e8les de langage (LLM), pouvait r\u00e9aliser le portage complet d&rsquo;un projet logiciel de tr\u00e8s grande taille de C++ vers Rust. &#8230;<\/p>\n","protected":false},"author":3,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_feature_clip_id":0,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":true,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2},"jetpack_post_was_ever_published":false},"categories":[1],"tags":[],"class_list":["post-137162","post","type-post","status-publish","format-standard","hentry","category-par-defaut","uentry","postonpage-1","odd","post-author-Jets"],"jetpack_publicize_connections":[],"jetpack_shortlink":"https:\/\/wp.me\/pKi2R-zGi","jetpack_likes_enabled":false,"jetpack_sharing_enabled":true,"jetpack_featured_media_url":"","_links":{"self":[{"href":"https:\/\/www.emu-france.com\/index.php?rest_route=\/wp\/v2\/posts\/137162","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.emu-france.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.emu-france.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.emu-france.com\/index.php?rest_route=\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/www.emu-france.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=137162"}],"version-history":[{"count":1,"href":"https:\/\/www.emu-france.com\/index.php?rest_route=\/wp\/v2\/posts\/137162\/revisions"}],"predecessor-version":[{"id":137163,"href":"https:\/\/www.emu-france.com\/index.php?rest_route=\/wp\/v2\/posts\/137162\/revisions\/137163"}],"wp:attachment":[{"href":"https:\/\/www.emu-france.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=137162"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.emu-france.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=137162"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.emu-france.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=137162"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}