Αρχεία ανά ετικέτα: technical

Dolphin Progress Report: September and October 2021

It's the beginning of the month and time for another Dolphin Progress Report! ...That line doesn't exactly work when it's midway through the month, huh? This Progress Report ended up being a very technically challenging report to write with several huge rabbit holes that go through the history of Dolphin and the games themselves. The first rabbit hole showcases TMEM, the GameCube and Wii's texture cache. Dolphin's approach to emulating this bit of the hardware has been to effectively ignore it exists. Trying to even begin to rectify the problems with this approach and explain the reasoning behind why it sort of wasn't emulated go very, very deep. This Progress Report also contains collaboration with the PCSX2 development team as they helped us understand some of the behaviors of Floating Point Math on the PlayStation 2. The fact that the PlayStation 2's floating point behaviors mattered to us for this Progress Report should tell you the kinds of things we were up against when writing up the changes.

If that wasn't enough, Dolphin also welcomed support for a wealth of mods through support for Riivolution. An easy to use GUI for launching Riivolution mods was added both to desktop Dolphin builds and Android. Speaking of Android, users may have noticed we pushed out an early beta last month. This beta was mostly to showcase and let users on the Play Store try out the newly finished Cheat GUI! We'll finally showcase that after a lengthy delay between when that extra beta was pushed and this Progress Report. While it's not related to Dolphin directly, Apple released the new M1 Max and we got our hands on one to see how it stacks up against the M1 with some rather interesting performance numbers at the end of the report.

With that out of the way, there's no point in delaying things any further. Please enjoy these rather lengthy Notable Changes!

Συνέχεια ανάγνωσης

Μπορείτε να συνεχίσετε την συζήτηση στο αντίστοιχο νήμα του φόρουμ αυτού του άρθρου.

Dolphin Progress Report: August 2021

Many gaming communities over the years have reached out to thank emulator developers for their efforts. Emulators are an important part of many classic game communities and give players access to features like netplay multiplayer, modding, and savestates, while also opening up the doors to enhancements not possible on console. Sometimes it's simply more convenient to use an emulator that runs on your desktop, tablet, or phone rather than to dig out and hook up the original console every time you want to play one of your favorite games. However, it's important to state that our relationship with gaming communities is mutual, and without the help of players and fans, there's no way we could handle maintaining a library of thousands of games.

In this Progress Report, the gaming communities were the direct catalyst to many of the changes. They went on difficult debugging adventures, caught small issues that would be invisible to anyone who wasn't extremely familiar with the game, and even came up with patches to make games friendlier to emulator enhancements. All of these contributions, even if it's not code, are appreciated and help make Dolphin what it is today.

So, without further delay, let's get started with the August Progress Report! Enjoy.

Συνέχεια ανάγνωσης

Μπορείτε να συνεχίσετε την συζήτηση στο αντίστοιχο νήμα του φόρουμ αυτού του άρθρου.

Dolphin MEGA Progress Report: April and May 2021

After finishing up the macOS M1 article the blog staff took a little break. Then they saw the date.

Oh shi-

Upon looking at the actual changelog, however, something became readily apparent: this wasn't going to be just a Progress Report; this was going to be a MEGA Progress Report. The long rumored time era of developers merging everything at once had finally come to pass. We have graphical fixes for Super Mario Galaxy and Luigi's Mansion, crash fixes for Star Wars: Rogue Squadron III, Xenoblade Chronicles, Ultimate Spider-Man, The Legend of Zelda: Skyward Sword (AArch64), and new features that make playing games more pleasant! And about AArch64, there are a litany of optimizations and fixes that will change things across most of the library.

And we could go on: Bounding Box, Interpreter, GBA to GCN connectivity, GPU Syncing, Mouse Locking, and still more! There's even a lengthy dev diary at the end for good measure explaining how the great mystery of Pokemon Box's was finally solved. The only way to do it justice is to do it right. So buckle up and get ready for the April and May MEGA Progress Report.

Συνέχεια ανάγνωσης

Μπορείτε να συνεχίσετε την συζήτηση στο αντίστοιχο νήμα του φόρουμ αυτού του άρθρου.

Dolphin Progress Report: December 2020 and January 2021

Welcome to the Dolphin Progress Report for December 2020 and January 2021! Things ended up running a little behind for this report due to some technical details that we needed to hammer out for a few of these entries. We on the blog team are familiar with the emulator, however there are a lot of technical details that are simply beyond our expertise. Going from things like the AArch64 JIT to GUI changes to IOS updates to game patches that go into low-level hardware behavior is enough to make anyone's head spin! More often than not, we rely on core developers and the authors of a specific change to help us understand what a pull request does so that we can express its purpose accurately here on the blog.

With Progress Reports coming at a mostly bimonthly schedule at this point, this means that sometimes authors have moved onto different things or aren't available to talk. As a blog about emulation, getting these details correct about the various changes and how the emulator works is one of our highest priorities. So, with that out of the way, we hope you enjoy this belated Dolphin Progress Report!

Συνέχεια ανάγνωσης

Μπορείτε να συνεχίσετε την συζήτηση στο αντίστοιχο νήμα του φόρουμ αυτού του άρθρου.

Dolphin Progress Report: October 2019

We apologize for the late Progress Report, but at this point it's partially by design. There's been an ongoing issue with Dolphin's updater being recognized as a trojan by Window's Defender Cloud AI scanning. The good news is that Microsoft has acknowledged that Dolphin's updater isn't a trojan, however for now they have to manually whitelist our executables. In order to ensure that the monthly builds distributed through our update track aren't deleted by Window's antivirus, we've been verifying that the build we've chosen is whitelisted. If you're interested in learning more about how something like this happens, MayImilae researched the issue and wrote up a detailed report below on what is happening and where we stand on the problem for now.

Until further notice, please keep reporting these erroneous detections so our builds can be whitelisted by Microsoft until they get their AI sorted. Thank you. Without further ado, let's jump into a smattering of significant changes that hit this month, including a way motion features in some of your favorite controllers.

Συνέχεια ανάγνωσης

Μπορείτε να συνεχίσετε την συζήτηση στο αντίστοιχο νήμα του φόρουμ αυτού του άρθρου.

Dolphin Progress Report: May 2019

The past few months have been quite hectic with a slew of gigantic changes requiring lengthy articles alongside them. These big features all hitting together seems to have brought up a talking point in the community would be irresponsible to ignore. Everyone wants to know when Dolphin 6.0 is coming. After all, Dolphin 5.0 launched nearly three years ago and lacks features like Ubershaders, Bluetooth Passthrough, Hybrid XFB, Emulated Motion Plus... the list goes on. Unfortunately, we have to announce that we aren't especially close to a release right now.

A release build is about more than just having exciting features, it's meant to be stable, reliable, and highly compatible. Since Dolphin 5.0, there have been a lot of minor and major regressions that haven't been fully worked out yet. Whether it's a game like Ed, Edd, & Eddy: The Mis-Edventures hanging on a loading screen or audio being broken in Resident Evil 2. There are dozens, if not over a hundred of these little issues that just take time and effort to address. Some of these issues are close to being resolved while others haven't even been investigated yet.

All we can ask of users is to continue using the latest development builds, continue reporting bugs, and be patient with the next release. With that out of the way, it's time to get to this May's Notable Changes. As always, users who want to try these features can download the latest development builds on the download page or use the auto-updater to get a new dev build every month automatically. Enjoy.

Συνέχεια ανάγνωσης

Μπορείτε να συνεχίσετε την συζήτηση στο αντίστοιχο νήμα του φόρουμ αυτού του άρθρου.

The New Era of Video Backends: The Unification of VideoCommon

It's not common for a rewrite to be something that warrants an article, but, this is one of the exceptions. Over the past few years, parts of Dolphin's video core have seen renovations to make way for new features, but a fundamental problem remained. Dolphin's video backends suffered from both having too many unique features while also duplicating tons of code from the other backends, making it difficult to add new features and maintain old ones.

Those that have followed Dolphin from the very beginning may remember that its video backends …

Συνέχεια ανάγνωσης

Μπορείτε να συνεχίσετε την συζήτηση στο αντίστοιχο νήμα του φόρουμ αυτού του άρθρου.

Dolphin Progress Report: November 2018

Even though the Wii's official library is mostly set, both the GameCube and Wii are entering a new golden age as a popular environment for randomizers, full-game mods, incredible cheat codes, and much more. Stalwarts like the Super Smash Bros. Brawl Mod, Project M have been around for years, but now there are many other communities around various games breathing new life into them. You can find codes to help balance games like Mario Party 5, content mods for Kirby Air Ride that add tons of new rides and hundreds of songs, and trackpacks for Mario Kart Wii that add hundreds of custom tracks to the game. Wiimmfi's also provides their own backup Wi-Fi servers for many unmodified games and their Mario Kart mods!

While most of these mods can be enjoyed on a hacked Wii, many users rely on Dolphin in order to play them. Emulating these mods can be quite the challenge, as they often will do things in ways that game developers would not. Assumptions that Dolphin makes can often be broken and certain features that mod developers use can be extremely slow or downright unreasonable to emulate. In the case of Wiimmfi's Mario Kart Fun Packs, the mod creators have put in work over the years to improve their experience in Dolphin and even support emulated users playing alongside console users online... so long as you're willing to dump and use your Wii's NAND. Earlier this month, a slight change to Wiimmfi's online networking broke Dolphin support without affecting real Wii Consoles. Not wanting to leave their emulated users high and dry, they reported the bug to us.

delroth quickly took up the mantle of investigating the bug with assistance from the Wiimmfi team. Within a few hours, the cooperation paid off as the list of probable causes was narrowed down to one annoying feature: The Instruction Cache. Dolphin pretty much has no ability to emulate the GC/Wii CPU data cache and likely never will due to the performance implications, but Dolphin does have some ability to emulate the instruction cache, though it's best to avoid testing the emulator. This is normally not a problem with retail games because it's rather bad form for a game to rely excessively on cache quirks, unless they were intentionally trying to break an emulator. There are occasionally games that inadvertently rely on cache behavior, that's something to tackle on another day. Dolphin's emulation of the instruction cache is normally good enough and almost nothing relies on data cache.

Mods are different; developers are usually working on a blackbox and don't have the same level of familiarity with the hardware. Unless they specifically tested codes on both Dolphin and Wii, there's a chance they wouldn't even know something was broken. There have been many issues reported around mods that, while Dolphin is at fault, we really don't have any recourse for the users afflicted. If a mod doesn't care about running on Dolphin and uses dcache or perhaps another annoying feature, there isn't much we can do but shrug it off.

In the case of Wiimmfi's server, through cooperation from both sides, we were able to find the cache coherency issue and fix it serverside! Users who already have the latest version of the mod don't have to do anything except try to connect. If you're looking for a more detailed explanation of what was going wrong (as it's rather interesting,) you can find delroth's full writeup on the issue tracker.

In order to track down behavior like this in the future, delroth also added game quirk reporting to Dolphin's data collection service, so Dolphin will now automatically let us know what games are instruction cache sensitive in the manner that broke this particular mod. With that, we also have a lot of other exciting changes this month, so now it's time to dive into this month's notable changes!

Συνέχεια ανάγνωσης

Μπορείτε να συνεχίσετε την συζήτηση στο αντίστοιχο νήμα του φόρουμ αυτού του άρθρου.

Dolphin Progress Report: June 2018

While we prefer to get these progress reports shortly after the turn of the month, sometimes things happen out of our control. June wasn't exactly a slow month, but it was backloaded with tons of changes that we weren't expecting to get merged so soon.



Sometimes delays are inevitable, but the notable changes that we were able to include thanks to extending the deadline should more than make up for the several day wait. You've been waiting long enough - without further delay, please enjoy this month's notable changes.

Συνέχεια ανάγνωσης

Dolphin Progress Report: April and May 2018

Users of Dolphin may have noticed that things look a little bit different in the GUI. That's right, mid-April DolphinQt was unleashed to the masses as the default GUI! It hasn't been without some expected headaches and growing pains, but, overall most of the features are working and the transition is going along as smoothly as we could have hoped. For those having problems, the DolphinWx.exe is still included and will be updated with all the core changes.

Considering that we spent a whole monthly article on Qt, let's get into some actual emulator changes. In between the mountain of Qt changes has been an explosion of progress and fixes hitting everything from CPU edge-cases to Vertex Loader fixes! With that, please enjoy this month's notable changes!

Συνέχεια ανάγνωσης

Μπορείτε να συνεχίσετε την συζήτηση στο αντίστοιχο νήμα του φόρουμ αυτού του άρθρου.