What's new

RSP - Reality signal processor

Remote

Active member
Moderator
With the recent developments in mind with Project64 being discontinued and going semi open source, I respect the fact that Jabo doesn´t want to release his source for his video plugins and lose control over his intellectual capital, but why didn´t he release the source for his sound and input plugins?

Yes, they are far less complicated then his video plugins and there already exists one or more open source input plugins but afaik there isn´t an open source sound plugin. From my point of view there should be, now you are probaly thinking why I´m concerned about projects and plugins going open source? Well, the answer is simple, learning. I´m not developing an emu nor am I thinking of starting development of an emu but the possibility should exist and then it is up to each and everyone to decide from there.

Open sourceing a project is not always a good idea, at the time of writing I haven´t heard nor have I seen any news of post development of Project64 given thought the fact that a lot of users, if not all, praised the fact that it was going open source. Of course one or more post death projects could be ongoing but to avoid hype they have opted not to disclose them.

Back to topic, Jabo did release the source for his continuation of Zilmar´s RSP interpreter - the RSP recompiler but no one seems to have done anything with it, this is a important release but I´ve yet to see a Zilmar spec. Nintendo 64 emu, other than Project64, that takes advantages of it. Afaik Project64 is the only emu that emulates the RSP at a low level, if I´m wrong about this please correct me, so why aren´t all Zilmar spec emus giving users the choice to use it in other emus, i.e 1964, Apollo, Tr64 and others that uses the plugin system.

They could have opted not to include it because they are going about in another way emulating the RSP but since Jabo´s video plugins are widely used in emus that does or doesn´t have their own video plugins I can´t seem to find the reason for why the option to use the Project64 RSP plugin isn´t included in other emus. If the give us the ability to use video, input and sound plugins why not add the RSP to the list.

Long post, but since no one else seems to have taken notice over this I thought that I should bring it into focus. Hopefully the authors will reflect over this and decide about wheater they will or will not integrate this into their emus. The way I see it, Nintendo 64 emulation has progressed lightyears during 2001, and hopefully 2002 will be even better, it better..., so why not push it a little bit forward, one step closer to perfection.
 

zilmar

Emulator Developer
Moderator
you are right there is nothing special about the controller or audio plugins so they were never released source wise. My audio plugin is basicly the same as the one I did as open source for demonstation excepted I added an option to change the buffer size. So all that is already avaliable .. like you said there are already controller plugins open source so that does not matter. The spec of the rsp was with pj64 1.4 .. what people do with it is up to them.
 

Azimer

Emulator Developer
Moderator
I feel it this way... if I was given the RSP spec to start with, I would have added it to Apollo to begin with. Now that the spec has been released 16 months after the video, audio, controller spec, I don't see a need for it since we (all non-RSP zilmar spec emus) have found ways around it and have been quite happy with it. That is my point of view. And Apollo has its own RSP internally.
 

Hacktarux

Emulator Developer
Moderator
The RSP source code is very useful for me because I am not at a very advanced stage. I have tried to port the Jabo's RSP plug-in on Linux and it's starting to work in interpretive mode (The recompilator just crash).

Remember that the source code of PJ64 was relased less than one month ago and that the emu programmers don't program 24H/24. I'm sure that in a few months there will be at least one or two emus that will allow the user to choose between hle and rsp emulation using the Jabo's plug-in. Anyway it will be interesting just in few cases since the last Azimer's audio plug-in handle many games as well as the RSP plug-in and it is faster.
 

Azimer

Emulator Developer
Moderator
Don't take it the wrong way, but I do plan on doing some lobbying to keep my HLE plugin from becoming obsolete. I worked long and hard on it and I feel it's compatibility is great and the quality is on par with LLE. Once I complete MusyX, there should be NO reason to use LLE Audio.
 

Smiff

Emutalk Member
jesus Azimer chill out, your audio is great and an excellent alternative to lle rsp, its pretty much esential for everyone with slower PCs or wanting maximum performance and seems to be required for some games.. plus youve got all kind of potential for filters and heaven knows what else.. basically youre in a similar situation with audio as Jabo is with gfx*, so i dunno what you're worrying about!! :)

*except that you haven't stopped ;)
 

Azimer

Emulator Developer
Moderator
Smiff, Jabo feels the same way about graphics that I do about audio... except he's never voiced it :) That is why I have :)

BTW... Welcome back. How was your trip?
 

Smiff

Emutalk Member
HLE gfx will never be obselete IMHO for the same reason HLE audio won't be, because the benefits HLE brings. If something works, something works, there's only a few hundred N64 games :D

OK you get what im getting at.

EDIT: ya good break thanks, except it wasn't a lot warmer in Florida than here. Ill go to Fiji again next time lol.
 

Smiff

Emutalk Member
The flipside (dunno why im telling you this, lol, you know better than anyone) is its not going to be as reliable.... i use PJ's RSP because it effectively always works, you dont have to think about it.
 
OP
Remote

Remote

Active member
Moderator
I do realize that it was not that long ago Project64 was open sourced and that could be a possible, and reasonble, explanation for why not post death developments has begun. And of course not even emu programmers program 24-7, how could they, since they aren´t charging any money for thier product.

However if all non Zilmar RSP spec emus have gone their own separate ways why could not these solutions also be converted to plugins. It may or may not be easily done and the effort and time put in into converting par exmple Apollo´s internal RSP to a Zilmar spec RSP plugin, may not be on par with the performance and features another avalible plugin could apply. Only the authors themself can make this decesion and there is a slight possibility that another RSP plugin would not affect performance but given thought that speed differs between the core´s of the emus why should it not, different approaches should mean different performance, for better of for worse.

And why would we want to put one of the few suppliers of plugins out of buisness, I read another post in the Apollo forum where you mentioned that you were planning to release something in the line of Azimer´s plugin pack, which would contain audio and graphic plugins. If reliability is an issue with HLE audio, why not use the LLE RSP provided by Project64, or your own, in combination with your HLE audio plugin. That way reliability would not be an issue.

If i were to say that I fully, or even partially, understand the way audio works on the Nintendo 64 I would be clearly be a liar. Project64 allow users to output HLE audio through your plugin, that way your planned filters could be applied since the audio is processed in the RSP and then outputted by the HLE audio plugin. I can´t detirmine if this is a possible approach to audio, in all it´s flavors, LLE and HLE.

Please feel free to explain why this would or would not be a sound solution to audio emulation.
 

Smiff

Emutalk Member
"a sound solution to audio emulation"

haha!

What i meant by "not as reliable" is that its harder to get compatibility up... PJ's LLE was a lot (a LOT) of work initially but once it started working pretty much everything worked at once (simplification but yeah) and lots of things like tricky ABIs are non-issues. Now i think if Azimer keeps going with the skill and dedication he has then theres no reason why he cant basically have a complete (and fast and high quality) HLE audio solution. I think other emus will use PJ's RSP, remember its not just audio that it processes (though theres ways round everything of course).
 

Cobra95

New member
Wow. Awesome thread. A bit of feedback related to the audio discussion: The music in the Rock Solid Disco in Conker's BFD sounds correct in PJ64 with Jabo's audio plugin (very close if not dead-on the N64 system/CBFD cart) , while it has issues under 1964 with Azimer's 0.40 Beta plugin. I single this out because it's the only place where there are obvious audio problems in this game, and many others for that matter. No muffling of voices or music underwater/behind the gas mask, but at least that doesn't sound like a mistake.

Sorry if this is old news. What you guys have achieved is amazing, and I'm definitely not complaining.
 

Azimer

Emulator Developer
Moderator
It's funny that NO ONE TELLS ME ABOUT BUGS!!!!!!!!!!!!!!! :pissed: :pissed: :pissed: :pissed:

Someone post me a PJ64 savestate for this so I can fix it. :angry:

That is all I need... someone to let me know and someone to give me a savestate. If you have one, let me know and I will setup a way for you to send it to me.


Update: I got a savestate from Radeon. Thanks a lot man.

Update #2: I found the issue. I am missing a command. I guess it's important and I shrugged it off as unimportant. *sigh* It looks pretty darn big too :)
 

Smiff

Emutalk Member
yes if more people actually had an N64 and weren't just in it for the warez ("oi! my game crashed!"), that would help authors.
 

Smiff

Emutalk Member
so do i, and an enormous stack of games, but we're in a minority here flow... go on, next poll on Emu64, ask "do you have an n64" or maybe:

[]don't have n64, don't use n64 emus
[]don't have n64, do use n64 emus
[]have n64, dont' use n64 emus
[]have n64, do use n64 emus

of course you can't in case nintendo sees it lol

:lookaway:


sorry is going OT
 

Cobra95

New member
Got an N64 and ~50 games

Smiff said:
yes if more people actually had an N64 and weren't just in it for the warez ("oi! my game crashed!"), that would help authors.

Emulation is one of my greatest geeky pleasures, but I definitely don't do it for piracy. I'm happy I was able to help, and will gladly do so again when possible. There's always the worry that my audience is just rolling their eyes because they've seen the issue posted a jillion times before. I've been playing CBFD on 1964 and the N64 pretty much in parallel. I like the savestates on the emu, so I don't have to repeat as much, then take the gained experience to the real deal.

While I'm on the subject, a couple of more observations (with the same advance apology if already known): that same disco is awash with colored strobing on the N64. Nothing but grey rock on both emus (Jabo 1.4). The laser beams are there, just not the dynamic lighting. A bigger problem is that some "darkened" graphics disappear completely under Jabo 1.4 (but not 1.3). That makes the opening scenario (with the scarecrow, Birdy, on the crop field) unplayable (with 1.4) when it becomes nighttime--you can't see any geometry except the water and the faceme sprites. The black bats in the hilarious Dracula scenario have the same problem.

BTW, if you get a save file far into the game, you can visit any scenario before that point directly from the Chapters menu option.
 

Jabo

Emulator Developer
Moderator
About the conker's bugs, I've never seen any, you should upload them to smiff's FTP site, or make them available to us in some way. And i know about the dynamic lighting.

----------------------------------------------------------------------------

Regarding RSP, the information collected about the RSP from zilmar contributed a great deal to most of the highly used HLE plugins out there, so as always please keep that in mind.

Considering that it's low level, the RSP compiler isn't actually that slow, HLE by it's nature of course yields a nice performance increase. We did a compiler because most people probably didn't think it could be done fast enough (try the interpreter sometime...), zilmar had a huge interest of course in seeing a compiler made (duh), and he was busy elsewhere obviously, so it was a challenge for me and I love all facits of emulation. I also knew sometime during it's development Azimer was making audio hle, I usually don't try to re-invent the wheel. (eg, he has a damn fine plugin, and I knew it would be)

So what to use HLE or LLE? PJ comes with full LLE facilities outside of graphics, if you can run them for audio that is great, it's why we have it there, so you should use it. You need a Pentium III (new Celeron's sort of count) or AMD Athlon System to use LLE.

If you don't have that type of system you basically won't be able to use LLE most of the time because it's drastically slower due to missing instructions, and the slow clock rate of those processors doesn't help. This is an instance of why HLE is necessary. Even on Pentium III/Athlon lower end machines (500mhz), you may find getting the extra performance from HLE benefits, depending on your system config, it might help make up for a slow TNT2 for instance.

Those are just my views about using HLE with PJ, the quality of the audio in the games I've played with Azimer's HLE audio is excellent, I'd also like to say having done both HLE and LLE development it's not fair to expect any form of HLE to be perfect. Other notes..

A) Some people might have issues with my Dsound plugin, or Azimer's, neither of us can help that, use whatever works (with mine you have to use RSP obviously, with azimer's you have a choice which again on a lower system can be l33t as hell)

B) All games more or less run at 50/60 fps, so if you have a fast machine "extra" performance using HLE of anything doesn't doesn't mean much now does it ?!

C) I'm sure the RSP compiler has a few flaws, but there is always the interpreter for that rare instance
 

Smiff

Emutalk Member
Heh i think we can all agree Jabo doesn't need to defend his work, its self apparent how well it works (though I would say, I think the RSP is the most underated thing since... something very very underrated). I wasn't meaning to start any kind of war I just dont want anyone feeling like they aren't needed :) because everyone really is needed, there's something of a talent shortage in all areas.
 

Jabo

Emulator Developer
Moderator
Heh thanks smiff, I hope my post illustrated the usage of these elements of emulation in PJ from an independent side, not sure everyone understood the surrounding details.

I agree about the RSP being underrated, this thread should be very interesting to most people, outside the world of pj, in emulators without RSP emulation for audio, Azimer's plugin it the plugin of choice it should be noted, and for all intents and purposes you really don't need RSP in those emulators for audio as a result.

I still would like to see someone optimize the RSP more perhaps with it being open source, but considering how in depth we discussed this issue, it becomes even more apparent it might not be necessary.

I'm just happy RSP emulation has gotten to the point where it can be done so accurately through zilmar's hard work, than we got it done in real time, and Azimer was able to put some of the info to great use in his plugin which can be widely used even more than the compiler.
 

Top