shoober420 Wrote:I already provided detaisl as to why HLE audio is inferior to LLE audio. There are more audio glitches when using HLE then LLE. Keep this in mind, this is only emulation. Emulation will NEVER be perfect.
You provided details as to why HLE audio is inferior to LLE audio in
some games and that there are more audio glitches with HLE audio than LLE audio in
some games. That says nothing about whether or not HLE audio is technically capable of ever matching LLE audio. A lot of people thought HLE audio would never be perfect, especially for problematic games like Xenoblade Chronicles, but delroth has shown that we can still reverse-engineer the DSP's microcode's even further for higher accuracy. There's still room for improvement, but that doesn't mean it's technically impossible to better HLE audio.
shoober420 Wrote:Only the "simple" things can be emulated that accurate. On top of that, I bet LLE would still be more accurate at emulating the "simple" things anyway.
Only simple things? Again, you're saying things without backing up your claims with evidence. What technical barriers prevent "complex" things from being emulated accurately? Can you give or point out specific examples? How is your claim true
always in
every circumstance and situation? I've already shown that the DSP can be emulated quite accurately via HLE. Dolphin's implementation isn't 100% always, but the emulator
is a constant WIP, more or less.
shoober420 Wrote:In emulation, it can't be "100%" perfect. That's a extremely bold statement. LLE will ALWAYS emulate more accurately then HLE. ALWAYS.
It's an extremely bold statement that is actually correct in some circumstances, again, like the GB BIOS and the DAA instruction. The GB BIOS have been studied for more than a decade; we know what it does on every level, and we can emulate that
exactly via HLE. Between HLE and LLE in regards to the GB BIOS, there's no distinction if properly coded. I've observed this myself, first-hand, in an emulator I coded myself. I can emulate the BIOS by either method (HLE or LLE) and all output, down to the CPU registers, CPU timing, LCD timing, matches 1:1. You can't say LLE will always be more accurate than HLE because there are cases like this where they will emulate on equal levels.
Additionally, the DAA instruction has a limited number of possible results. Those don't change. If you pre-calculate a table of all possible results, you will get 1:1 behavior the same as if you used LLE to emulate the actual calculation.
shoober420 Wrote:I used the upscaling terminology wrong in the beginning of the thread. That's it. Nothing else. If upscaling is interpolation, that means anytime I use interpolation, it upscales, regardless of what it is. This is completely wrong. You can use interpolation without upscaling, because upscaling isn't interpolation.
This... is bad logic. We've been telling you for days that
many things are interpolation because interpolation is a
broad category. Simply because one thing is interpolation (upscaling)
does not mean that other forms of interpolation (bilinear/trilinear filtering) are by default upscaling. That does not follow a logical sequence, and none of us has ever insisted that to be true. You're claiming that's what we're saying, but it would be best to disabuse yourself of that idea.
shoober420 Wrote:HLE was the problem. All emulators prior used HLE for CPU.
Prove it. An example, some code, something a developer or someone knowledgeable said. You're saying this without evidence. It's not very convincing of anything.
shoober420 Wrote:Its hard to say that all SNES emulators were coded with bugs that just couldn't emulate the shadow. That means every single SNES emulator prior to bsnes/higan had bugs that couldn't emulate the shadow. That's ridiculous. The issue wasn't bugs, the issue was ACCURACY, and HLE just isn't accurate enough to emulate certain games. If that isn't true, then byuu would of used HLE instead. But why did he use LLE? Because he wants ACCURACY.
How is it ridicoulous that all other emulators had bugs but bsnes/higan didn't? FYI, it happens a lot more than you imagine, especially when the emulated feature is obscure and not very well documented. The problem that affected Air Strike Patrol only affected
1 other game; it's an exceedingly rare use of the SNES hardware. Other SNES emulators could have emulated the hardware as best as they could via LLE, but if they didn't know about two little fringes cases (or why they were fringe cases in the first place), it's something they'll miss, and it will be a bug. Other SNES emulators didn't reverse engineer nearly as much as byuu, but that doesn't mean their use of HLE was responsible for the inaccuracy in Air Strike Patrol. You still have no evidence to say that HLE was the cause of the inaccuracy of Air Strike Patrol. Again, some code or something a developer said would suffice.
shoober420 Wrote:Instead of worrying about the name, maybe you should get to coding it so you can actually be the first guy to have a pure LLE emulator that can increase internal resolution.
I intend to spend all the time in the world worrying about the name, because that project is
a long ways off from now. As I mentioned, I'm still working on my GB emulator (Game Boy Enhanced, GBE for short). I'm going to go as far as I can with GB/GBC emulation (game compatibility, serial transfer emulation, IR emulation, all or most MBC emulation, scaling algorithms, and custom sprites/backgrounds). After that, I'm going to work on a GBA emulator, and then a DS emulator. I've got a lot to do before I can attempt my hand at the DS. I just finished reworking LCD emulation on GBE, and I'm working on 8x16 sprite mode (finally).