Dolphin, the GameCube and Wii emulator - Forums

Full Version: Icache Emulation
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Pages: 1 2
So as many are aware, CTGP Revolution does not work on Dolphin; it gets stuck in black screen on boot. I was looking through old posts earlier today and found this interesting post:

[Image: 152bf58a56f183ab62b4ee2b1cd2e75a-full.png]

I've no idea what Icache is, but it seems like it's another one of these minor functions that Dolphin can't yet accurately emulate.

The post also mentions that a commercial game is still not playable due to the same issue. There are quite a few games that Dolphin still can't boot after so many years, and it would be nice to chop one off of the list.

Does anyone have a technical explanation of what this Icache issue is?
They also muck around with custom IOS stuff (Dolphin can't emulate those either due to no starlet emulation.)

Anyway, the best place to read about cache emulation is the progress report entry on the hack we use to get around a dcache trap in Disney Infinity/Cars 2.

https://dolphin-emu.org/blog/2017/02/01/...e-by-booto

Honestly if they're shortsighted enough to want to require real hardware to use their hack, then let it die alongside the Wii.
Not an expert, but Icache sounds like an Instruction Cache, which would be the Wii's PowerPC cache for code. That is to say, the CPU pulls code from a cache (once that code has initially been cached) instead of memory. The cache is supposed to be faster to access. It's a built-in speed up on many CPUs that's supposed to be transparent to the software in most cases.

That's real hardware. On Dolphin the problem might be complexity. Emulating the instruction cache could be expensive on the host system. You need to determine if a requested CPU read or write falls within the cache, and you have to manage the cache as well. So it's a bunch more steps Dolphin would be adding, thousands of times per second, hence the slowdown. I guess it's most similar to how proper MMU emulation slows down Dolphin.

Like I said, PPC architectures aren't my specialty, so take it with a grain of salt. Maybe someone knows more than I do and can provide a better answer.
You're right about it. One of the things delaying the Disney Infinity Article is writing up about what's going on with dcache
Dolphin support icache emulation: Just pick the interpreter (not the cached one).

But dolphin doesn't support dcache.
I might be remembering wrong, but I seem to recall hearing that emulating the icache would slow down emulation by upwards of 7x. Unless I'm thinking of some other feature. I remember there was a problem with one of the Project: M codes that was caused by not clearing the icache properly, and when I brought it up to the devs, it was like a one-line fix. So as stated earlier, it seems like the best option is not to attempt to emulate the icache, but to do whatever you can to avoid running into it. I am also of the same opinion as JMC47; if the devs don't want their shit running on Dolphin for whatever dumb reason, let it die until someone else picks it up or does something new.
Wow that's awesome information. Thanks

I've spoken to the dev about this issue. He says he's afraid that Nintendo would take down his hack because allowing Dolphin "promotes piracy," and I call it bullcrap because first of all Dolphin discourages piracy and second of all other hacks are doing completely fine made playable on Dolphin, like the Newer Team's hacks and Wiimm's MKF.
Then he said he made it to prevent cheaters, and people had gotten his hack working on their own builds of Dolphin and cheated with RAM editing, which isn't possible on console. I call it bullcrap because first of all, about 0.000001% percent of Dolphin users can restructure Dolphin to play a game the Devs can't figure out how to make compatible without heavy performance drops, and most people won't even know what is and how to use RAM editing. Second of all, Wiimm's ban system for MKW regs is working just fine and everyone is having fun without a problem. Thirdly, I call bullcrap on his claim that it's not possible to cheat on console, because Wiimm's ban list just included a cheater on CTGP a few days ago.
Finally, I warned him that his hack would die sooner or later as real hardware dies, and he said he'd rather let his hack die than to make it compatible with Dolphin. He said you aren't supposed to be able to play the game on a computer, and that doing so is wrong and the existence of Dolphin is wrong. A total lack of appreciation and insult to the work of the Dolphin team and the devs themselves. Let's make a new word for people like him and call him "emulatorist."
BTW did you know that three of the current MKW WRs wouldn't exist if Dolphin didn't exist? Smile shoutouts to the devs
That dev should just look at the Smash Bros scene. Dolphin is an incredibly important cornerstone for that community and is honestly the only reason people still play melee competitively. Because they can actually practice against real people online.

Nintendo has not given a damn in years.

I have no doubt in my mind that melee would not be relevant today if Dolphin netplay did not exist.
(05-15-2018, 06:38 AM)Helios Wrote: [ -> ]I have no doubt in my mind that melee would not be relevant today if Dolphin netplay did not exist.

People were still playing Melee competitively way before netplay was a viable option for Dolphin. Have you seen the attention tournaments get?
Yeah, I was about to say, it's been huge for years. Especially when Brawl came out and a lot of people weren't satisfied with the changes. It's big enough outside of Dolphin where Nintendo has some legal problems with a few tournaments (look up "public performance" stuff).
Pages: 1 2