Dolphin, the GameCube and Wii emulator - Forums

Full Version: None of the N64 VC games seem to work besides Mario 64
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Pages: 1 2 3 4 5 6
Plugin usage among emulators isn't widespread, however. It was (and largely still is) all the rage so-to-speak for many PSX and N64 emulators. PCSX2 also uses them. But they're pretty invisible everywhere else. IDeaS uses them, but it's long been eclipsed by Desmume.

Personally, as someone who wrote/is writing an emulator, seems like more work to implement plugins than not, so I won't be doing it any time soon. I just can't be bothered to write APIs other people would use.
(09-06-2013, 05:49 AM)neobrain Wrote: [ -> ]Obviously. That doesn't mean I can't criticize people for making the wrong choices though.
Of course you can. But it isn't necessary a wrong choice.

(09-06-2013, 05:49 AM)neobrain Wrote: [ -> ]There are two points I'd like to mention here: One is that it's often a better not to let users make too many choices (you'll likely disagree; it's one of those things end users never understand). The other (and more important) one is that there are other (and better) ways to provide choices to users.
You can provide default plugins. The rest is up to the users. If it doesn't work, they can revert to the defaults.

(09-06-2013, 05:49 AM)neobrain Wrote: [ -> ]The core and the code which would go into "plugins" can be developed separately as well. I haven't ever had to look at Dolphin's CPU emulation code when working on the GPU code.
What I meant is that it's totally separated. Core 1.0 can work with a plugin 1.1 for example. I believe you understand what I mean.

(09-06-2013, 05:49 AM)neobrain Wrote: [ -> ]Yes, that way you end up with lots of useless issue reports because people use outdated cores/plugins and/or incompatible plugin combinations. Also if people decide to only update plugin X while keeping everything outdated, that's the best way not to get any testing done on anything but plugin X. So you end up with less issue reports on stuff that's happening currently and more invalid reports. But it's cool, because users have had choice after all.
I don't see how it's a useless issue reports. If it's plugin-based, it's expected that users will mix and match plugins. Also, what is more likely to happen is the user will use a stable version of the core and update all plugins or use the latest version of alternative plugins.

(09-06-2013, 05:49 AM)neobrain Wrote: [ -> ]Yes, thanks to Dolphin's plugin interface lots of people went ahead and wrote their custom video plugins. Oh wait, they didn't.

Also, just because you "can write code" doesn't mean you a) know how the emulated hardware works b) have any idea of how to code emulation software. There's exactly zero benefit for inexperienced people to write new plugins. And the experienced people who write plugins from scratch anyway suffer from NIH.
That won't happen in reality. I think nobody expected that a lot of people will write custom video plugins but it provides the possibility. I don't see your point though. What is the difference from non-plugin? It's no benefit either if inexperienced people try to write code for a non-plugin. Regarding writing the plugin from scratch, it's the same as writing non-plugin code from scratch.

(09-06-2013, 05:49 AM)neobrain Wrote: [ -> ]Comparing apples to oranges.
Is Firefox able to run without any plugins at all? Yes
Is <insert plugin based emu here> able to run without any plugins at all? Nope. And having Null implementations used if no plugin is selected doesn't count.

Try to think about it for a second, I'm sure you'll be able to figure out what's wrong about your analogy.
I just said that plugins are quite popular.

(09-06-2013, 05:49 AM)neobrain Wrote: [ -> ]You don't have to "see" the source code of the core module to build it.

When testing a plugin you'll have to build the plugin before testing either way, and there's effectively zero difference between compiling a plugin and compiling the "plugin" code and relinking the application. You don't need to rebuild the core each time you change your plugin code because build systems take care of not rebuilding everything when only a part of it changed..
Maybe I chose the word incorrectly. It would be more accurate to use "have" instead of "see". It doesn't need to be the source code. It could be compiled libraries. In any event I need to have them to build a non-plugin application. For plugin-based I just need the minimal related dependencies. I don't need to sync any code, it doesn't matter because it will be plugged to a main module which could be built separately. I'm not saying which way is better; I merely point out the difference.
(09-06-2013, 06:57 AM)xemnas Wrote: [ -> ]
(09-06-2013, 05:49 AM)neobrain Wrote: [ -> ]There are two points I'd like to mention here: One is that it's often a better not to let users make too many choices (you'll likely disagree; it's one of those things end users never understand). The other (and more important) one is that there are other (and better) ways to provide choices to users.
You can provide default plugins. The rest is up to the users. If it doesn't work, they can revert to the defaults.
Yes. It's "up to the users" is a good thing to say when you're not the one having to deal with the newbies who come to the forums crying that they have no idea what they're doing. That's one of the many points why adding choices is often bad. But well, this argument is going a bit off-topic...

(09-06-2013, 06:57 AM)xemnas Wrote: [ -> ]
(09-06-2013, 05:49 AM)neobrain Wrote: [ -> ]Yes, that way you end up with lots of useless issue reports because people use outdated cores/plugins and/or incompatible plugin combinations. Also if people decide to only update plugin X while keeping everything outdated, that's the best way not to get any testing done on anything but plugin X. So you end up with less issue reports on stuff that's happening currently and more invalid reports. But it's cool, because users have had choice after all.
I don't see how it's a useless issue reports. If it's plugin-based, it's expected that users will mix and match plugins.
Yes, in an ideal world that would be true. Now, emu projects usually don't have any sort of at least (semi-)professional QA team, so things break. Plugin interfaces get used in ways which are perfectly fine within the scope of their documentation but yet hit edge cases which haven't been considered in the old implementation. Or plugin interfaces just get misused unnoticedly because the current plugins just seem to work while older versions crash.

(09-06-2013, 06:57 AM)xemnas Wrote: [ -> ]Also, what is more likely to happen is the user will use a stable version of the core and update all plugins or use the latest version of alternative plugins.
You'd think that. Heck, we still have people running around with Dolphin r7719 on our forums...
Some people do everything to fix some bug or to get more performance out of there build and call it a day once they're happy with it, ignorant against any sort of possible improvements that happen once they've made their choice.

(09-06-2013, 06:57 AM)xemnas Wrote: [ -> ]
(09-06-2013, 05:49 AM)neobrain Wrote: [ -> ]Yes, thanks to Dolphin's plugin interface lots of people went ahead and wrote their custom video plugins. Oh wait, they didn't.

Also, just because you "can write code" doesn't mean you a) know how the emulated hardware works b) have any idea of how to code emulation software. There's exactly zero benefit for inexperienced people to write new plugins. And the experienced people who write plugins from scratch anyway suffer from NIH.
That won't happen in reality. I think nobody expected that a lot of people will write custom video plugins but it provides the possibility. I don't see your point though. What is the difference from non-plugin? It's no benefit either if inexperienced people try to write code for a non-plugin. Regarding writing the plugin from scratch, it's the same as writing non-plugin code from scratch.
Having a plugin interface encourages people to screw existing code and rewrite it from scratch. Not providing such an option while using an open development model instead encourages people to look at existing code and improve it, which generally is favorable. I don't see any point why it would not be favorable, anyway.
Even more, once people get in the uncomfortable situation of having 5 different plugins for each thing, it'll drive away new developers: when you want to fix some bug but have to chose between one of 5 different dumb code bases which you need to get familiar with just to chose one to work with and improve on - would you still be motivated to actually do that or would you rather end up being confused enough to not improve anything at all?

(09-06-2013, 06:57 AM)xemnas Wrote: [ -> ]I just said that plugins are quite popular.
Yes, my point was that you really cannot compare Firefox's addons with emu plugins. I guess we agree on that.
However, if instead of developing separate plugins developers just focused on improving a single code base, there would be no user desire for being able to switch plugins in the first place.

(09-06-2013, 06:57 AM)xemnas Wrote: [ -> ]
(09-06-2013, 05:49 AM)neobrain Wrote: [ -> ]You don't have to "see" the source code of the core module to build it.

When testing a plugin you'll have to build the plugin before testing either way, and there's effectively zero difference between compiling a plugin and compiling the "plugin" code and relinking the application. You don't need to rebuild the core each time you change your plugin code because build systems take care of not rebuilding everything when only a part of it changed..
Maybe I chose the word incorrectly. It would be more accurate to use "have" instead of "see". It doesn't need to be the source code. It could be compiled libraries. In any event I need to have them to build a non-plugin application. For plugin-based I just need the minimal related dependencies. I don't need to sync any code, it doesn't matter because it will be plugged to a main module which could be built separately. I'm not saying which way is better; I merely point out the difference.
Yes, that actually makes sense. It's one of the things I wouldn't consider as important though.
(09-06-2013, 04:29 AM)oddMLan Wrote: [ -> ]
(09-06-2013, 02:39 AM)ExtremeDude2 Wrote: [ -> ]So I hear you like CEN64? Also the (remaining) author of glide is making a new plugin that doesn't use stupid 3dfx
Source?

Behold, le source:

http://gliden64.blogspot.ru/
http://www.emutalk.net/threads/54707-GLideN64-blog
(09-06-2013, 09:11 AM)ExtremeDude2 Wrote: [ -> ]Behold, le source:

la source*
(09-06-2013, 09:11 AM)ExtremeDude2 Wrote: [ -> ]
(09-06-2013, 04:29 AM)oddMLan Wrote: [ -> ]
(09-06-2013, 02:39 AM)ExtremeDude2 Wrote: [ -> ]So I hear you like CEN64? Also the (remaining) author of glide is making a new plugin that doesn't use stupid 3dfx
Source?

Behold, le source:

http://gliden64.blogspot.ru/
http://www.emutalk.net/threads/54707-GLideN64-blog
My goodness, that's amazing! N64 emulation is seeing some notable progress! Now we have MarathonMan's CEN64, a cycle-accurate N64 emulator, MooglyGuy's software renderer, FBatCat RSP, Shunyuan's Audio plugin, and now a HLE Graphics plugin from Gonetz that is not using that ass-backwards 3dfx api Smile

Finally, after all these years...


Offtopic: Also, lol at delroth new user banner...
(09-06-2013, 09:11 AM)ExtremeDude2 Wrote: [ -> ]
(09-06-2013, 04:29 AM)oddMLan Wrote: [ -> ]
(09-06-2013, 02:39 AM)ExtremeDude2 Wrote: [ -> ]So I hear you like CEN64? Also the (remaining) author of glide is making a new plugin that doesn't use stupid 3dfx
Source?

Behold, le source:

http://gliden64.blogspot.ru/
http://www.emutalk.net/threads/54707-GLideN64-blog
Well that was an interesting 5 hours.
(09-06-2013, 02:48 PM)oddMLan Wrote: [ -> ]
(09-06-2013, 09:11 AM)ExtremeDude2 Wrote: [ -> ]
(09-06-2013, 04:29 AM)oddMLan Wrote: [ -> ]
(09-06-2013, 02:39 AM)ExtremeDude2 Wrote: [ -> ]So I hear you like CEN64? Also the (remaining) author of glide is making a new plugin that doesn't use stupid 3dfx
Source?

Behold, le source:

http://gliden64.blogspot.ru/
http://www.emutalk.net/threads/54707-GLideN64-blog
My goodness, that's amazing! N64 emulation is seeing some notable progress! Now we have MarathonMan's CEN64, a cycle-accurate N64 emulator, MooglyGuy's software renderer, FBatCat RSP, Shunyuan's Audio plugin, and now a HLE Graphics plugin from Gonetz that is not using that ass-backwards 3dfx api Smile

Finally, after all these years...


Offtopic: Also, lol at delroth new user banner...

I still think N64 emulation is dead, like it should be.
(08-07-2014, 03:44 PM)mudlord Wrote: [ -> ]I still think N64 emulation is dead, like it should be.

I'm gonna hate myself for asking but... why do you think the N64 scene should remain "dead"?
Also you seemed somewhat supportive to Gonetz's project in the beginning (you did proofreading and sent corrections). Why did you suddenly changed your mind?
Charging for a emulation project which used to be free is *not*, I repeat, *not* how you do things.
Pages: 1 2 3 4 5 6