{"id":137713,"date":"2026-10-08T11:26:14","date_gmt":"2026-10-08T09:26:14","guid":{"rendered":"https:\/\/www.emu-france.com\/?p=137713"},"modified":"2026-10-08T11:26:14","modified_gmt":"2026-10-08T09:26:14","slug":"consoles-de-salon-ruzu-v0-1-1-rc5","status":"publish","type":"post","link":"https:\/\/www.emu-france.com\/?p=137713","title":{"rendered":"[Consoles de salon] Ruzu v0.1.1 RC5"},"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; Shader stability: unsupported shader instructions now produce an error that the Vulkan pipeline compiler can handle, rather than terminating the GPU worker. This improves error recovery but does not add support for those instructions.<br \/>\n&#8211; Graphics compatibility: aligned constant-buffer and texture validation with Eden and corrected how constant-buffer values are recorded for shader caching.<br \/>\n&#8211; Windows memory handling: aligned unsupported memory-protection handling with Eden, avoiding an unconditional panic.<br \/>\n&#8211; Windows builds: improved detection of existing Visual Studio installations and installation of missing C++ tools. Runtime DLLs are now copied alongside the build binaries, and a vcpkg compatibility fix was added.<br \/>\n&#8211; Troubleshooting: added a PowerShell script to capture diagnostic memory dumps when Ruzu freezes or displays a black screen. It downloads and verifies Microsoft ProcDump automatically; no compiler or debugger installation is required. Dumps remain local and may contain sensitive data, so share them privately.<\/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 RC5 (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=137713\" 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-137713","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-zPb","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\/137713","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=137713"}],"version-history":[{"count":1,"href":"https:\/\/www.emu-france.com\/index.php?rest_route=\/wp\/v2\/posts\/137713\/revisions"}],"predecessor-version":[{"id":137714,"href":"https:\/\/www.emu-france.com\/index.php?rest_route=\/wp\/v2\/posts\/137713\/revisions\/137714"}],"wp:attachment":[{"href":"https:\/\/www.emu-france.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=137713"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.emu-france.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=137713"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.emu-france.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=137713"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}