{"id":137078,"date":"2026-09-16T22:54:53","date_gmt":"2026-09-16T20:54:53","guid":{"rendered":"https:\/\/www.emu-france.com\/?p=137078"},"modified":"2026-09-16T22:54:53","modified_gmt":"2026-09-16T20:54:53","slug":"consoles-de-salon-ruzu-v0-0-9","status":"publish","type":"post","link":"https:\/\/www.emu-france.com\/?p=137078","title":{"rendered":"[Consoles de salon] Ruzu v0.0.9"},"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; Controller navigation: navigate menus, buttons, the game library, and Ruzu\u2019s file dialogs with a controller, including the startup prompt.<br \/>\n-System services: implemented missing application-management, filesystem, audio, and SSL commands to improve compatibility.<br \/>\n-Local wireless services: implemented missing LDN commands, network callbacks, and state change notifications. Fixed scan locking so discovery can receive responses while waiting. Real multiplayer sessions still require validation.<br \/>\n&#8211; Linux AppImage: added .\/build.sh appimage to build and package Ruzu.<br \/>\n&#8211; Steam Deck packaging: added a dedicated Docker-based build with Zen 2 optimization, bundled runtime libraries, and X11\/XWayland forced like Eden\u2019s AppImage. Desktop and Gaming mode compatibility still requires hardware validation.<\/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.1 RC3 (48.7 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=137078\" 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-137078","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-zEW","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\/137078","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=137078"}],"version-history":[{"count":1,"href":"https:\/\/www.emu-france.com\/index.php?rest_route=\/wp\/v2\/posts\/137078\/revisions"}],"predecessor-version":[{"id":137079,"href":"https:\/\/www.emu-france.com\/index.php?rest_route=\/wp\/v2\/posts\/137078\/revisions\/137079"}],"wp:attachment":[{"href":"https:\/\/www.emu-france.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=137078"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.emu-france.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=137078"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.emu-france.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=137078"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}