1.6 / 18-08-2023
Pureikyubu (formally Dolwin) is an open-source Nintendo GameCube emulator which initially started development in 2004. It went into hiatus but is now active. With that in mind, it's not the most advanced but has interesting features and is able to boot and run some commercial games and demos.
Emulation requires DSP IROM / DROM dumps
A BIOS image dump is not required, but if you want to experiment with it, you can also add it in the settings. The BIOS is launched through the menu File -> Run Bootrom. Then you need to wait a bit and open the drive cover (File -> Swap Disk -> Open Cover). After that, IPL Menu will start :p
Build using Visual Studio 2019. To build, open Dolwin.sln and click Build.
The executable will be at the root (Dolwin.exe).
CPU: Desirable that your processor contains 4 cores+
Most Recent Changes
Fixed major cache crashes, resulting in more games launching.
Fixed DSI/ISI crashes
Disabled mailbox DSP delay
Fixed mtsr instruction decoding
Fixed CPU-DSP interrupt handling causing some games to load
Also some work has been done to improve the GFX engine (experimental shader support, disabled for now).
DMEM/IMEM moved to DspCore as it should
DI log commands
Fixed CPU->DSP interrupt
All Gekko caches are enabled by default, so there may be issues in games that used to work. To be fixed.
Fixed step-over in Gekko debug (F10)
Fixed locked cache
DSP debugger is intergrated into common system-wide debugger
Added imgui+SDL2 as submodules
Cui + imgui
The debug console is ported for Linux using imgui (used by uisimple.cpp by default)
Fixed Luigi's model spikes
PI unmapped access debug messages + DecrementerStep
Fixed Gekko reset + GEKKOCORE_CACHE_DISABLE_HACK macro
The emulator goes through a complete boot cycle from the reset vector (BS1), IPL (BS2) and loading the game from the DVD (Apploader) without applying HLE.
Fixed short ARAM DMA issue
BS2 PAL Revision boot
Next VI / Next PE debug commands
Gekko cache support
Fixed Linux build
Removed old GX code (integrated in core)
DSP small refactoring and notes
Fifo fixes after refactoring
We've done a little rebranding. Dolwin is now called pureikyubu (PlayCube in Japanese).
By this event the code base was cleaned up and to somehow get out of the black hole of 0.xxx versions I made version 1.0 (About dialog updated).
Fixed a nasty bug with restarting.
The release work was evenly spread over previous releases, but the bulk of the new DSP core was implemented in this version.
For example, Luigi's Mansion now comes to the forest scene.
PS. Also keep in mind that there is a nasty bug exists - after starting the game, you need to restart the emulator every time --(Dolwin.exe)
This release is the beginning of work on improving the graphics system.
A new component has been added to the emulator - GX, which contains the general code for emulating the command processor (CP)
Old DolwinVideo code has been cleaned up from old stuff. It is still used as a reserve parachute until a more advanced backend appears.
In parallel, improvements have been made in DSP emulation, but there is still a lot of work to be done in this area
Fixed minor bugs that got out after splitting the emulator core and user interface.
Some games show slight progress: Luigi's Mansion now shows 1 screen further from the main menu, and Wario Ware even reaches the game, but with big slowdowns and graphical bugs. You can even hear how Wario is unhappy with this circumstance (there is sound in the game).
This is the first attempt at porting Dolwin to Linux-like operating systems.
Let me remind you that Playground is a "smaller" version of Dolwin, without a graphical interface and with Null backends (that is, no graphics, sound, etc.). All that is visible to the user is the emulator debug messages.
Porting was done in WSL2 environment on Windows, Ubuntu version 18.04.
Intermediate release related to source code refactoring. It was decided to make the emulator cross-platform.
Now the whole core is in a separate executable module (for Windows it is DolwinEmu.dll), and the user interface and debugger in the main executable file.
From the user side no special improvements are noticeable, games still show only splash screens at best :-)
There may be various bugs in the interface after refactoring, they will be fixed over time.
The release with unlucky number 13 was split into two releases: 0.130 and 0.131. These superstitious programmers..
Support cache emulation
Dynamic recompiler (JITC)
Improved emulation of graphics FIFO
Many other minor improvements
All these things were added experimentally and at the moment the cache and recompiler are temporarily disabled. If you are a developer, you can rebuild Dolwin with the cache and recompiler turned on.
The cache is enabled with the command CacheDebugDisable 0.
The recompiler is turned on in SRC\Core\Gekko.cpp, line 20 (but the interpreter must be disabled).
Between 0.130 and 0.131, I will try to fix all incomprehensible bugs with cache and recompiler so that they are included in the next release.