



The Next Stepsīeing at a nascent stage, yuzu still has a long way to go. And so yuzu developers had to implement this even to get homebrew applications to display graphics. However, Nintendo re-purposed the Android graphics stack and used it in the Switch for rendering. Yuzu uses the Nvidia services to configure the video driver to get the graphics output. Their system has different command modes, a typical IPC request response, and a Domain to efficiently conduct multiple service calls. The Switch IPC (Inter-process communication) process is much more robust and complicated than the 3DS’s. ( Homebrew is a popular term used for applications that are created and executed on a video game console by hackers, programmers, developers, and consumers.) Switchbrew helped them create libnx, a userland library to write homebrew apps for the Nintendo Switch. The save data functionality, which allowed games to read and write files to the save data directory was also taken from 3DS. The Kernel OS threading, scheduling, and synchronization fixes for yuzu were also ported from Citra’s OS implementation. The loader and file system service was reused from Citra and modified to support Switch game dump files. So the developers used a large part of Citra’s OS HLE code for yuzu OS. The Switch’s OS is based Nintendo 3DS’s OS. Most of their RE and other development is being done in a trial-and-error manner. However, the RE process of yuzu is essentially the same as Citra. Switch’s GPU is more advanced than 3DS’ used in Citra and poses multiple challenges to reverse engineer it. Yuzu uses Reverse Engineering process to figure out how games work, and how the Switch GPU works. It also has a loader for the Switch games and Unicorn integration for CPU emulation. The core emulation and memory management of yuzu are based on Citra, albeit modified to work with 64-bit addresses. yuzu has the same core code as Citra and much of the same OS High-Level Emulation (HLE). Yuzu was initiated as an experimental setup by Citra’s lead developer bunnei after he saw that there were signs of the Switch’s operating system being based on the 3DS’s operating system. This emulator is made for the Nintendo Switch, which is the 7th major video game console from Nintendo. The makers of Citra, an emulator for the Nintendo 3DS, have released a new emulator called yuzu.
