Next Generation Emulation banner

The plug-in system

2690 Views 36 Replies 16 Participants Last post by  sxamiga
I'm wondering what everyone thinks of the plug-in system used by ePSXe, FPSE, AdriPSX, and PSEmu Pro emulators. It seems these emulators are the only programs that use a plug-in system. Every other emulator I've used for every other system (NES, SNES, Neo Geo, N64, Arcade) are all fully contained programs (some need BIOS) with their own code for the graphics and sound. I've also known these emulators to run very accurately and glitch-free(no black borders or tiles), even the N64 emulators, which are the only other emulators that use 3D acceleration. It seems almost all PSX emulators have followed the PSEmu Pro path, and I'm just wondering why. Of course I can see the benefits of such a system, is this the future of emulation?
1 - 20 of 37 Posts
I don't believe it is the future of emulation,but it will be a part of it.
And there is actually some N64 emus which use the plugin system: Daedalus,Project 64,Appolo,1964,and TR64.
Hum, first of all, the n64 emus are using plugins: Nemu, pj64 to reffer a few ones.

then, could u imagine to do all the work to emulate a PSX?
I mean, graphics, then sound and core??
No u couldn t. That s why this system exists.
And for the glitch-free stuff, U cannot compare the n64 emulation w/ the psx one.

Have a nice day...
No Rargh,Nemu doesn't use the plugin system,it uses its own DLL and they're not compatible with other N64 emus.
i thought it used the azilmer or zilmar s specs.
Strange...Then i m mistaken.
Hum, it's Azimer not Azilmer,and it's the Zilmar's specs.
You N64 emus knowledge is poor my friend:D .
You'll have to work before NGEmu comes out,or you won't be able to help,you'll be the one getting helped;) (I'll give you some tips if you want:p )
JP64's plugins are written by the authors that wrote the emulator and there are different ones for the different APIs(Direct3D, Opengl), which is necessary and expected. This makes the "plugins" the actual code for the emulator. Most PSX plug-ins are written by many different authors and address similar APIs.
Your statements are incorrect.
How long have you been into psx emulation my friend?
I can say I've been in it since psemu was still dos.

Anyways, the Psemupro plugin system started the same way, as the N64 plugin system your refering to. Most of the renderes, spus, controllers, and CDrom plugins were created by the author's of the emu. And coder's such as pete, and lewpy started writing plugins sometime afterwards.

The difference is that Psemupro's Plugin system predates the newer playstation emulators by a few years, and has had time to mature. Where as the zilmer N64 plugin system is fairly new.

As was stated previously there are several N64 emus that use zilmer's plugin system. The dll's are all interchangeable. So it doesn't matter who created the plugin.
I like the whole plugin system idea, however, and I am no coder and have no clue, I wonder if the system currently used for PSX emulation is acceptable. Meaning if it were altereed further (Yes I know pete altered it to allow faster communication) could speed of communication be increased....
The plugin system works,and appears to be very flexible, with the most recent update being the addition of save states. Which only ePSXe supports at the moment.

hmm...kazzuya said it best when he said, PsemuPro may be dead, but the Plugin system still lives on.
Originally posted by liquid
Your statements are incorrect.
How long have you been into psx emulation my friend?
I can say I've been in it since psemu was still dos.

Anyways, the Psemupro plugin system started the same way, as the N64 plugin system your refering to. Most of the renderes, spus, controllers, and CDrom plugins were created by the author's of the emu. And coder's such as pete, and lewpy started writing plugins sometime afterwards.

The difference is that Psemupro's Plugin system predates the newer playstation emulators by a few years, and has had time to mature. Where as the zilmer N64 plugin system is fairly new.

As was stated previously there are several N64 emus that use zilmer's plugin system. The dll's are all interchangeable. So it doesn't matter who created the plugin.
I stand corrected. I never realized how recent the JP64 emulator was(it seems more emulators are adopting the plug-in system), and there seems to be a lot more interest in PSX emulation, which would explain the number of plug-ins. With 3D acceleration I guess it's inevitable. I'm just wondering if a non-plugin system like VGS or UltraHLE wouldn't be better. It seems that every other PSX emulator uses the plug-in system, probably because of the 3D APIs (it'd be a lot of work to code each individual API; plug-ins are already available for use).
The plug in system seems pretty good to me. Just think if neorage had this. the emulater project is basically dead right now but if it had the plugin system people could still continue to update it.
Back in 1998 the original intent of the plugin system was 2 fold.

1st it allowed the coders to quickly update & improve the video, sound, and other devices without having to recompile the program each time. (which was the case of the earlier DOS version).

2nd it freed up time, allowing the programers to dedicate more time on improving the core.

the result is the psemupro plugin system you are using today.
NeoGeo is not a complex system.
it uses a standard 16bit Motarola 68000 CPU which was designed in 1979 for its core. And It doesn't handle anything more complex than some hardware scaling, which is fairly easy to emulate.
A modular plugin system is not really nessary, and would be a bit over-kill. * yeah I know that NeoCD emu has some plans to use a plugin system but it never really materialized.

NeoGeo is really nothing more than a very powerfull sega genesis. Since their technologies are the same.

also how would a plugin benifit Neogeo emulation? It's not as if you can overcome a game's encryption with a video plugin. that happens at the core level, and would require a recompile of the emulator anyways...so there is no benifit.
The plugin system is pretty good, but there
needs to be a way to tie everything together
into one unit. What i mean is, Imbed the Epsxecutor frontend into epsxe itself. Then
improve the frontend and add hardware recognition
and/or a config file for ALL games, that would
instantly load the best plugins for each game depending on your hardware. The biggest drawback to the multitude of plugins, is the trial and error you have to go through for each game.
"Does x plugin work right with x game?...no well,
this one does,..now let me configure it......"
Now, epsxecutor is great and all, but it needs to
be more robust to allow the plugin system to really be a good viable solution.
I was thinking of something along a simmilar line, such as an ini file system which contains a database of game settings. Such a system could easily recognize the game you are playing based on the SLUS code. Also, it could be frequently maintained and updated whenever changes occur in a plugin or compatible game.
Also, I like your idea of self-system recognition. I don't think that would be too difficult. since there are several methods of querying the OS to obtain that information.

Another idea would be to start an online database of settings for different games on a site such as this. At least it would take away some of the tweaking and trial & error bit.

anyhoo,the plugin system is extremely flexible, but it's downfall is probably that it's complicated to use if you don't know what you'er doing.
But why are there so many? For video all you'd need is a DirectX, OpenGL and (possibly) a Glide plugin to choose from. For sound, DirectSound and I don't know what else? CD-ROM I get, there's a lot of diff. Maybe all of the people working with similar devices should work together? :) Anyhoo, the system's cool. :D
The psemupro plugin system is open source, so anyone can write a new plugin if they are knowledgeable enough.

Pete and Lewpy don't have to be the only ones writing plugins ya know.
Naw, I'm not saying they should be the only ones makin' plugins. Just that they all could be helping the one they specialize in (i.e., instead of "Lewpy's plugin", it could be "The Glide Plugin"). But maybe they want the credit all to themselves! Bwahahahahaha!! :eyemove: Sorry, got carried away . . . ;)
Well gee I don't really see the humor in it...

When does a plugin's name matter?

lewpy's plugin could have been called "the green plugin" for all I care, it still doesn't change the fact that it's a glide renderer.

besides pete and lewpy already share ideas.
you might want to read the doc's a little more.
1 - 20 of 37 Posts
This is an older thread, you may not receive a response, and could be reviving an old thread. Please consider creating a new thread.
Top