Hacker News new | past | comments | ask | show | jobs | submit login
Dolphin 5.0 Release (dolphin-emu.org)
220 points by samuelb on June 24, 2016 | hide | past | favorite | 33 comments



Dolphin's status update posts make it look like one of the best managed projects I have _ever_ seen, open source or closed. Really incredible work.


They posted a write-up of their development infrastructure last year - their system for regression testing rendering bugs is especially impressive.

https://dolphin-emu.org/blog/2015/01/25/making-developers-mo...


Interesting, I'm curious how well their golden image tests worked out for them. They always seem more work than help due to discrepancies between various hardware vendors and subtle bugs/divergences in the way they interpret the spec.


Dolphin is a masterpiece of engineering. The fact that it can emulate consoles so recent so well is a testament to the skill of the coders behind the project.

They do an amazing job. I love reading the update posts.


Great work. I started contributing to Dolphin earlier this year entirely as a result of seeing the well-polished status updates and technical articles that made it to HN from time to time.

It's been in a "freeze" for quite some time while bugs were nailed down, but I'm looking forward to being able to land some code finally!

And, if anyone is interested in some really cutting-edge ARM or x86 JIT code, there are lots of interesting problems to tackle (say hi in #dolphin-dev on freenode).


Note to self: do this.


Why is this emulator so well organized and polished compared to some other emulator projects? They do such great technical write ups, but I'd love to see one about how they manage the project.


A few points I can think of:

* It's more mature than many other emulation projects. Work started in 2003, and it has been open sourced 8 years ago.

* From the beginning there were a few people with strong software engineering background working on the project, which helped nail down a good design that still mostly holds today.

* We have people who care deeply about the design and cleanliness of the project. See for example https://lioncash.github.io/2016/06/21/dolphin-50-personal-pl... from one of our developers. We have been using C++11 since ~2013, and we're already relying on C++14 nowadays.

* We have invested a lot of time in developer tooling and infrastructure. Each of our PR is auto-built on 7 OS/architectures and we also run regression tests for our graphics rendering pipeline. This makes it easier to screw up and allows us to move faster.

* Most of our contributors are technical (developers) but we also make a great use of our non technical contributors. We have a great team of translators, community managers, "PR" people, wiki maintainers, etc. that help free time for the developers to focus on what they do best. For example, the whole 5.0 article and video were handled by 2 of our non-developer contributors.


I guess it has a bit to do with Nintendo's choice of architecture. They haven't moved past the Gamecube architecture - the Gamecube, Wii and WiiU all use the same PowerPC CPU, the Wii is just faster and the WiiU has two. Same for the GPU - they keep using pretty much the same Radeon, just newer, faster, etc. This has allowed the project to remain relevant (able to play mostly current games) for three console generations and find the support of qualified individuals.

I agree that it's a bit weird though - the best, most well managed emulators seem to be for Nintendo hardware. From the NES through to the Wii (and I expect Dolphin to support WiiU soon), every console is reasonably well supported and emulated.

Part of it might be due to Nintendo picking architectures that aren't too alien to emulate on a standard PC.


> Same for the GPU - they keep using pretty much the same Radeon, just newer, faster, etc.

The GPUs of the GameCube and the Wii have nothing to do with Radeon GPUs. They were designed by ArtX before they got bought by ATI (now AMD).

> and I expect Dolphin to support WiiU soon

This is a common misconception. Dolphin will never support emulating the Wii U — it would make no sense to do so from a technical standpoint. The GameCube and the Wii are very similar, the Wii U is a completely different beast.

> Part of it might be due to Nintendo picking architectures that aren't too alien to emulate on a standard PC.

Uh... while the CPU side is fairly standard (PPC 750 with just a few extensions like locked cache, paired singles, gather pipe, etc.) everything else is very much custom on GC/Wii.

The GPU is an undocumented mixed floating point (on the vertex side) / fixed point (on the pixel side) architecture, with very few programmable elements (TEV/TCG) and a lot of configurable state.

The DSP is a programmable 16/32/40 bits chip that kind of ressembles Motorola DSP architectures but still looks completely custom when comparing actual ISAs. The ISA of the DSP was actually fully reverse engineered by emulator and homebrew developers, there is 0 technical documentation about it outside of these communities.

And there are more things like that which are far from being standard when you compare to e.g. an Xbox or an Xbox 360.


I stand corrected then :). I was thinking about it in comparison to the PS2 and PS3 with their infamously weird architectures.


> it's a bit weird though - the best, most well managed emulators seem to be for Nintendo hardware

I think it's because Nintendo has a sort of cult following with extremely dedicated fans (and a lot of really good exclusive content).


Copy-and-pasting an interesting response from user Asooka, who is hellbanned for no obvious reason:

> I guess it has a bit to do with Nintendo's choice of architecture. They haven't moved past the Gamecube architecture - the Gamecube, Wii and WiiU all use the same PowerPC CPU, the Wii is just faster and the WiiU has two. Same for the GPU - they keep using pretty much the same Radeon, just newer, faster, etc. This has allowed the project to remain relevant (able to play mostly current games) for three console generations and find the support of qualified individuals.

> I agree that it's a bit weird though - the best, most well managed emulators seem to be for Nintendo hardware. From the NES through to the Wii (and I expect Dolphin to support WiiU soon), every console is reasonably well supported and emulated.

> Part of it might be due to Nintendo picking architectures that aren't too alien to emulate on a standard PC.


you can make [dead] posts visible to all by going to the comment page (click on the timestamp) and then clicking "vouch". (and if I remember the announcement right it also flags the account for review)


OpenEmu (multi-console emulator for OS X) is also really polished. No great technical write-ups though.


That's because OpenEmu is not an emulator. It's just a UI for the work of other people.


Sometimes the work of the same people.


That's not an emulator. It's just a GUI front-end for other emulators.


In case anyone is wondering, Dolphin is an awesome emulator for Nintendo GameCube and the Wii, in full HD.


Thanks, for a while I thought this is about the KDE file manager.


Thank you!


Dolphin is amazing, plain and simple. It's been years since I tried to contribute, but it's got a great development community and it's a great place to learn, as you can probably tell from these detailed posts. Kudos to everyone on an excellent release for an extremely compelling project.


I'm so glad that Nintendo's misguided IP stance leading to gameplay video takedowns hasn't affected the Dolphin project. I don't think Nintendo management realizes that more gameplay videos and more fan creations of any kind mean free advertisement.


They just want to protect their walled garden. Thankfully Dolphin's word of mouth has been really strong.


Word of mouth how? I'm not sure I understand.


Say I have a bunch of Wii games... how do I play them on my Mac?


If you happen to have some old real Wii remotes and controller accessories lying around, I strongly recommend you pick up a Mayflash DolphinBar [1] from Amazon for around $20.

It's basically a Wii sensor bar combined with Wii-mote compatible Bluetooth radio specifically designed to work with Dolphin (although it will also let you use your Wii-motes as HID controllers and a mouse too).

It will save you a TON of headaches in terms of getting up and running, especially on Windows.

[1] http://www.mayflash.com/products/nintendowiigc/w010.html


You need a way to rip the disks. The best way I've seen is a modded Wii. I think I remember reading there are also some DVD drives that can read the disks, too. Never done it myself.

Oh, here we go: https://wiki.dolphin-emu.org/index.php?title=Ripping_Games#R...


Rip the ISO from the discs, then load them up in Dolphin on your Mac.


I keep meaning to try out Dolphin on my Dell XPS 13 to see how well it runs on integrated GPU's, but it continues to slip my mind. If the framerate is even halfway decent on Gamecube games, I'd be thrilled.


it should run well. integrated works great so long as you don't want to run the games at much higher than native resolutions.


Not related to the Smalltalk implementation apparently.

http://www.object-arts.com/dolphin7.html


Or the Xerox Dolphin, the first of the post-Alto PARC machines, followed by Dorado, Dicentra, Dandelion (the Star hardware), Dandetiger, and Daybreak. A Dolphin emulator would be neat.




Join us for AI Startup School this June 16-17 in San Francisco!

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: