Earlier quoted context omitted.
In all my years of emulation, I've never come across a malicious ROM for a major console. Dolphin runs its own VM. Obviously anything is possible, but developing some kind of breakout-ROM which would infect the host machine is just way more engineering than I could imagine ever being worth it. The vector is just too complex, and the target (nerds downloading retro games) just isn't worth the squeeze. Archive.org actu…
The breakout engineering to exploit Dolphin has already happened, see for example: * https://dougallj.wordpress.com/2016/11/13/exploiting-dolphin... * https://gist.github.com/hthh/502ae16db55612f64d3966769a154c3... * https://github.com/dolphin-emu/dolphin/pull/4447
Dolphin Progress Release 2603
41–50 of 57 posts
Re: Dolphin Progress Release 2603
#42The most interesting part to me is how often emulator development turns into discovering that the original games were doing something deeply strange but completely intentional
I’ve been decompiling for the past (almost) two years, and it’s fun to see the bugs, compiler quirks, programmer superstitions, things that coincidentally work because of compiler behavior not because of correctness, as well as the things modern tooling would have caught that 30-year old versions of GCC hadn’t gotten around to yet. There were even things I thought I had to manually optimize in the early 2000s that th…
Re: Dolphin Progress Release 2603
#43Earlier quoted context omitted.
I’ve been decompiling for the past (almost) two years, and it’s fun to see the bugs, compiler quirks, programmer superstitions, things that coincidentally work because of compiler behavior not because of correctness, as well as the things modern tooling would have caught that 30-year old versions of GCC hadn’t gotten around to yet. There were even things I thought I had to manually optimize in the early 2000s that th…
How can you tell the difference between something manually optimized and something automatically optimized?
As an example of the kinds of optimisations that the best human programmers were doing before compilers took over, see Michael Abrash's Black Book: https://www.phatcode.net/res/224/files/html/index.html - you can intuit how a human might organise their code to make the most of these while still keeping it maintainable.
Re: Dolphin Progress Release 2603
#44In the discussion of the Triforce arcade compatibility, there's some discussion of "IC Card" support needing to be implemented, and doing so unlocking a lot of missing functionality. I think this is referring to the Japanese rail payment cards? I know you can use them on things like vending machines, but from the article it seems like the Triforce cabinets let you save game progress on them too, which would be a grea…
> Triforce games can support two types of cards for saving: Magnetic Cards (magcards) and Integrated Circuit (IC) cards. Magcards are cheaper, fragile, and can only survive so many writes before failing. They have the added bonus of having a printable side, where the game can print a player's achievements and more. IC cards are more like old credit cards with a thicker plastic. They weren't printable, but were much s…
Re: Dolphin Progress Release 2603
#45Re: Dolphin Progress Release 2603
#46Earlier quoted context omitted.
They don't: https://forums.dolphin-emu.org/Thread-dolphin-donations?pid=...
Wise. I've seen many a fine volonteer project become enshittified because they started optimizing for financial income rather than for having fun.
Although I suspect the other sibling comment is the real reason.
Re: Dolphin Progress Release 2603
#47The most interesting part to me is how often emulator development turns into discovering that the original games were doing something deeply strange but completely intentional
I’ve been decompiling for the past (almost) two years, and it’s fun to see the bugs, compiler quirks, programmer superstitions, things that coincidentally work because of compiler behavior not because of correctness, as well as the things modern tooling would have caught that 30-year old versions of GCC hadn’t gotten around to yet. There were even things I thought I had to manually optimize in the early 2000s that th…
Re: Dolphin Progress Release 2603
#48Sounds like a good opportunity for differential fuzzing!
Re: Dolphin Progress Release 2603
#49Earlier quoted context omitted.
Wise. I've seen many a fine volonteer project become enshittified because they started optimizing for financial income rather than for having fun.
It's also a smart legal strategy. Nintendo's lawsuits they won against emulator projects in the past had donation systems as one of, if not the sole main point they drove to win the case.
Re: Dolphin Progress Release 2603
#50Earlier quoted context omitted.
Wise. I've seen many a fine volonteer project become enshittified because they started optimizing for financial income rather than for having fun.
It's also a smart legal strategy. Nintendo's lawsuits they won against emulator projects in the past had donation systems as one of, if not the sole main point they drove to win the case.
NoA sued the Yuzu devs and settled out of court, with the devs paying $2.4 million and shutting down the Yuzu and Citra projects. The $2.4 million was noted as being a reasonable estimate of what Nintendo's lawyers would have billed if the case went to trial, not a reflection of Yuzu's collection of donations.
NoA used some combination of carrot-and-stick to get the Ryujinx developers to shut that project down as well, but we won't know what that combination was because they never filed a lawsuit, so there are no public records, and there was likely an NDA.