True but this argument has been done over and over. Again it all comes down to what the intention of the emulator is. My clearest point is, if you plan out to emulate as accurate as possible, then doing so at full potential can and will only be guaranteed with the lowest level in mind. That is never to say it can not be achieve with another mechanism in design, granted. Though this is the entire Theseus by byuu. He simply said to achieve 100% accurate you must do so in such manner, I'll prove it. Well... He did.
ulao Wrote:My clearest point is, if you plan out to emulate as accurate as possible, then doing so at full potential can and will only be guaranteed with the lowest level in mind.
If I recall correctly, you can HLE things with 100% accuracy. The DMG bootrom is one such area (probably the SGB and GBC bootroms too, if properly studied). HLE was also used for the emulation of a couple of SNES components in earlier emulator, and it was capable of generating a 1:1 result in comparison to real hardware (obviously the others could not be HLE'd, which is why byuu went the route he did). But that isn't to say you always need to take a low-level approach to everything to achieve 100% accuracy, or even high levels of accuracy, regardless of the intent of the emulator. The "lowest level" is even a subjective term. Where does it become low enough? In the case of the DMG bootrom, is simply copy+pasting the GB state (register values, memory values, clock counts) after the bootrom is run enough or is it necessary to run the bootrom through the emulator itself? Both can (with a good enough emulator) produce 1:1 hardware results, but obviously it's possible not to take the "lowest level".
"Where does it become low enough?" Were it gets the job done. I still stand on the fact you have a greater chance at a lower level to achieve better accuracy. Of course there will always be exception to the rule, I get that. If your goal is small enough ( hence ultraHLE with Zleda ) then yes of course low level is not the best attack. HLE has many many advantages over LLE and in some cases were what you emulate HLE is enough. I'm not against HLE I'm in great favor for it. Look what it did for the n64 emulation scene. Though, look a bit deeper, many games can not be played, it's time for a lower level approach and I bid CEN64 well. It has also been said many times that many of us will not see GC emulated at a low level in our life time as it just will require to great of a computer.
The thing is, "where it gets the job done" in my DMG bootrom example stands in contrast to what was brought up earlier. It's not the lowest level possible, but still achieves 100% accuracy. What I have issue with is saying that to make a completely accurate emulator, the lowest level of emulation must always be used. As an absolute statement, it's not true, but I agree with it as a general statement. But it isn't necessary in every case, just most cases. Going lower level definitely increases the chance of accuracy (given competent programming, documentation, and RE work) but it's possible to use HLE techniques in some situations even as you strive for "perfect" accuracy. When and where you can effectively use HLE like that depends of course.
but I retracted that statement with "You have a greater chance at a lower level to achieve better accuracy" and you agree with it as a general statement. A "greater chance" is not absolute. This implies we are at an understanding. Never the less this is not some kind of a debate. I think both of us have made our points and both have great merit.
I know you toned down your statement, I was just elaborating on why I disagreed with the former (which I didn't feel was done well enough in a previous post). This isn't a debate btw, anyone that knows me can tell you that (it's not nearly intense enough

). I do like to talk about emulators, since I make them and I play them.
Oh I understand your passion in what you do as I have the same driven force(emulation of electronics). I was only trying to show that sometimes to elaborating on your point of view it's courteous to make it clear you agree

I like clean debates/conversations because if it gets ugly you loose your audience. For what its worth you provide a great deal of trenchant talk and I respect that a great deal.
I think the Wii U would be neat to attack next but Dolphin wont be near a satisfied "complete solution" in time for every one to jump ship. I'd look for a new group to start that one and maybe some will bail on Dolphin.
What now, I'd say clean this mess up... And I dont mean to down Dolphin when I say that, just things like the branches. Wii speak emulates games where the normal branch does not. What next? Lets get this all together, is what I say.
To make the long story short, what'll you guys do after all of the bugs are sprayed and its featureset is complete?
I don't see how the above comments didn't help? It sounds to me like you may be asking for a poll? There never will be a day that all bug just get put out. Programming a complex project like this does not lend to such a thing.
Feature request: Do you really thing this will ever stop? People will always have something they want added.
Bugs: sometimes and more often then you may think, fixing a bug unleashes the light to more bugs. Some can not be fixed do to a frame work design or missing information. For each feature that is added the probability for new bugs increases. In most software development cycles there is a design doc or at most a list of check offs. %70 of the time involved in writing an application is documentation/preparation. There is a term we use for programs that have no leash, "scope creep"
http://en.wikipedia.org/wiki/Scope_creep Dolphin is in many scenes a scope creep project. Though it has to be by design.
Sorry but your question is just to vague to answer. Try a poll...