Nintendo GameCube Emulator (WIP)
Find a file
2020-07-23 19:53:50 +03:00
Data ReportHub 2020-07-23 18:48:11 +03:00
RnD Redesigned EMU interface 2020-07-23 02:58:48 +03:00
SRC Update DummyDebugger.cpp 2020-07-23 19:37:34 +03:00
ThirdParty Refactored header includes 2020-07-23 17:00:48 +03:00
.gitignore Cleanup 2020-07-23 19:36:05 +03:00
Dolwin_Quick_Start.md Update Dolwin_Quick_Start.md 2020-07-20 21:53:54 +03:00
Dolwin_VS2019.sln Source code tree refactored, ready to cross platform 2020-07-21 21:33:50 +03:00
DolwinPlayground_VS2019.sln Redesigned EMU interface 2020-07-23 02:58:48 +03:00
Doxyfile Doxygen 2020-06-25 17:34:42 +03:00
LICENSE Create LICENSE 2020-04-01 11:23:26 +03:00
pong.dol 2011-06-29 12:30:10 +00:00
README.md Moved some images 2020-07-20 21:54:58 +03:00

Nintendo GameCube Emulator not only for Windows

PNG

Dolwin is work-in-progress emulator of Nintendo GameCube console.

The goal of the emulator is to research the hardware features of GameCube and reverse engineer technologies used to develop games for this platform. GameCube is the hardware masterpiece of Nintendo engineers and it's a pleasure to explore this device and discover something new for yourself.

This project is revived from 2004 in 2020.

Dolwin Team:

Building

Build using Visual Studio 2019. To build, open Dolwin.sln and click Build.

The executable will be at the root (Dolwin.exe).

Solution structure

All solution projects are independent components (or try to be like that).

Currently, work is underway to encapsulate components in their namespaces, but the legacy code from version 0.10 does not make it so simple.

Currently, the following namespaces are quietly formed:

  • Debug: for debugging functionality
  • Gekko: for the core of the Gekko CPU
  • Flipper: for various internal Flipper hardware modules (AI, VI, EXI, etc.)
  • DSP: for GameCube DSP
  • DVD: for a disk drive unit (DDU)
  • GX: for the Flipper GPU

The user interface will most likely be rewritten as a Managed C# application. In the meantime, it's just like a piece of code from version 0.10.

Third-party code

Try not to use third-party libraries without special need.

Why "Dolwin"?

Dolwin was originally stands for "Nintendo Dolphin Emulator for Windows" (Dolphin is GameCube codename). Later "Dolphin" was changed to "GameCube", so that there is no confusion with another emulator - Dolphin-emu.

Situation with rebranding

I didn't want to leave Windows aside, but the public is interested in the possibility of launching and porting Dolwin in other OSes.

Therefore, a small rebranding was made, now Dolwin stands for "Nintendo GameCube Emulator not only for Windows". Lol.

As soon as the opportunity arises, all Win32 dependencies will be cleaned up and the portable code will be encapsulated as much as possible.

Essentially the emulator is purely algorithmic code, with the exception of the user interface and audio/video/controllers interactions. Therefore, I don't see any problems here.

Greets

We would like to say Thanks to people, who helped us to make Dolwin:

  • Costis: gcdev.com and some valuable information
  • Titanik: made GC development possible
  • tmbinc: details of GC bootrom and first working GX demos
  • DesktopMan: nice GC demos
  • groepaz: YAGCD and many other
  • FiRES and ector for Dolphin-emulator, nice chats and information
  • Masken: some ideas from WhineCube
  • monk: some ideas from gcube
  • Alex Raider: basic Windows Console code
  • segher: Bootrom descrambler
  • Duddie: For DSP reversing and docs

And also to people, we have forgot or who wanted to stay anonymous :)

Many thanks to our Beta-testers, for bug and compatibility reports. Dolwin Beta-team: Chrono, darkreign, Jeil, Knuckles, MasterPhW and Posty.

Thanks to Martin for web-hosting on Emulation64.com

Contacts