Project64 Forums

Project64 Forums (http://forum.pj64-emu.com/index.php)
-   Open Discussion (http://forum.pj64-emu.com/forumdisplay.php?f=9)
-   -   New LLE RSP Plugin (accurate, fast but untested?) (http://forum.pj64-emu.com/showthread.php?t=3618)

the_randomizer 15th April 2013 01:42 AM

My only fear is that once these regressions are pinpointed, how much coding will have to be done to fix them and properly re-test them. I can confirm that the RSP per-game configuration is definitely an issue.

HatCat 15th April 2013 04:27 AM

Did a fast test of speed comparisons for RSP emulators.

I tested a) motionless logo screen of Mario64,
b) standstill file select screen in mario

Both tests with Project64 2.0 VR4300 interpreter, HLE audio on the No Sound plugin, LLE gfx.

5. RSP 1.7.0.9 RSP interpreter by zilmar
a. 24-26 VI/s
b. 56-58 VI/s

4. ziggy's port of the MAME RSP, before angrylion's WDC/SR64 hack (slower)
a. 32-33 VI/s
b. 69-72 VI/s

3. My rsp_lle.dll in this thread (again, as with the others, HLE audio, LLE gfx)
a. 38-39 VI/s
b. 75-78 VI/s

2. RSP 1.7.0.9 RSP recompiler by Jabo/zilmar
a. 50-52 VI/s
b. 93-98 VI/s

1. RCP HLE (This time, both audio and gfx are HLE; RSP is not executed.)
a. 301-302 vi/s
b. 166-178 vi/s

So Jabo's RSP recompiler is between 10 to 20 VI/s faster than my RSP interpreter.
My RSP interpreter is 6 VI/s faster than the z64 RSP,
z64 RSP is 8 to 14 VI/s faster than RSP interpreter for pj64 2.0

So apparently I hardly even came close (40% increase basing off z64 speed) to coinciding the goal of besting the accuracy of the interpreter, with also getting it to be fast as the RSP recompiler plugin.
But, oh well.
I can still play Zelda64 at full speed (at some maps I need HLE audio on my lowly 1.90 GHz Athlon).
and squall says Rogue Squadron is playing at full speed on RSP that I release here XD, then again he has like almost 4 ghz

HatCat 15th April 2013 04:57 AM

More speed tests but this time with HLE gfx, LLE audio (removes intervention of RDP threading)

3. RSP 1.7.0.9 interpreter for project64

a. 160-166 VI/s ? (difficult to measure, flies by and fluctuates too fast)
b. 62-81 VI/s

2. rsp_mle.dll in this thread (my SP interpreter compiled for LLE audio, HLE gfx)

a. 212-216 VI/s ?
b. 92-112 VI/s

1. RSP 1.7.0.9 recompiler for project64 by jabo/zilmar

a. 274-277 VI/s ?
b. 146-164 VI/s

A much more logarithmic (sort of metric) relationship there.
It is obvious that the interpreter could never catch up without SSSE3 replicas of direct parallel vector executions of what goes on in the RCP.

but a) that's unfair (recompiler could do that too, not just interpreter)
b) Most people today couldn't use an RSP emulator needing SSSE3 so what's the point :)

squall_leonhart 15th April 2013 04:59 AM

nah, its mostly fullscreen during the menu's but missions with lots of updating geometry / effects brings it down to 30fps

HatCat 15th April 2013 05:07 AM

Menus are easy. I guessed you meant the 3-D intro and such, that would have been impressive.

And star wars abi wasn't one of the ucodes Azimer reversed to work in HLE audio so no speed-up there; I don't recall seeing the ucode decompiled for the 1964 Audio Plugin (hle) either.

And there is no working hle gfx except if you use Lemmy's Direct3D off of nemu.

So, it isn't easy.
Maybe the RSP recompiler should be used for rs, but since that in its self is still far from full speed, I think I would rather investigate into why RDP emulation is so slow! Figure out why z64gl is barely faster than Jabo's LLE but still not fast enough.

Sort of shame though, z64gl is only faster with threaded=0 in the conf which atm on pj2 can't be applied without putting it under the Screenshots dir

shunyuan 15th April 2013 01:38 PM

2 Attachment(s)
Quote:

Originally Posted by FatCat (Post 45389)
My RSP plugin affects how the graphics look, *if* you are using LLE gfx.
HLE here means the control is external.

It is weird, but I can get correct Resident Evil 2 title screen and movie with Zilmar's RSP plugin 1.7 and 1.6 and Jabo Direct3D8 v1.7 for both Project64 1.6 and Project64 2.0.

Your RSP plugin must handle graphics HLE differently from Zilmar's plugin.

HatCat 15th April 2013 02:43 PM

There is no HLE gfx feature in the rsp dll.

You have to use rsp_hle.dll or rsp_mle.dll to get HLE gfx.
rsp_lle.dll or rsp.dll means you are not using HLE gfx, in which case you would need Jabo's software rasterizer to fix the pictures as would be needed on zilmar's RSP LLE (not HLE).

It helps if you keep only one, maybe 2 of the DLLs installed and stick only to them. There is not a whole lot to test about HLE RSP; they're just useful for speed.

HatCat 15th April 2013 02:45 PM

I guess I needed to clarify this before.

If you guys think those "Use HLE gfx?" , "Use HLE audio?" checkboxes in the Project64 settings make one bit of difference, think twice.
They only affect the Rsp #1.2 spec.

The only way is to install the correct DLL if you're attempting to test HLE.
What you set in the Project64 options besides other plugins makes no difference there.

shunyuan 15th April 2013 03:05 PM

2 Attachment(s)
Quote:

Originally Posted by FatCat (Post 45415)
There is no HLE gfx feature in the rsp dll.

You have to use rsp_hle.dll or rsp_mle.dll to get HLE gfx.
rsp_lle.dll or rsp.dll means you are using LLE gfx, in which case you would need Jabo's software rasterizer to fix the pictures as would be needed on zilmar's RSP LLE (not HLE).

It helps if you keep only one, maybe 2 of the DLLs installed and stick only to them. There is not a whole lot to test about HLE RSP; they're just useful for speed.

I know exactly what you mean, but this is not the case.

I chage your RSP plugin a little bit, add a configuration dialog box, enable graphics HLE & audio HLE code, and controlled with configurations. So, I can swith gfx & audio LLE/HLE rendering calls without change RSP plugin.

All other games work just fine for graphics HLE through your plugin, such as Mario 64, F-zero 6x, RR64, StarFox 64, CBFD and Kirby 64.

The only exception for me is Resident Evil 64.

Sorry I didn't make it clear about the modification I have made for your RSP plugin.

HatCat 15th April 2013 03:22 PM

That's fine.

I personally didn't do an interactive config method because then I had to constantly check whether HLE or LLE was set every time there was a SP task, which slowed the plugin down just a bit in exchange for user convenience.
You are free to distribute your version anyway, post about it etc. as long as my legacy isn't uncredited. :p


So, what you're saying is,
- You'll use the exact same gfx plugin,
- The exact same emulator (stick to Project64 2.0 or 1.6 for both),
- but my original "rsp_mle.dll" has different HLE gfx than zilmar's RSP 1.7.0.7 HLE gfx for Resident Evil 2?

I know you can set HLE gfx in the config with the version you wrote but please just this time try to test with my original rsp_mle.dll to see if maybe it could be a bug with how you implemented the config, just trying to rule as much out as we can.

if so, where can I see the different gfx in re2?


All times are GMT. The time now is 12:22 AM.

Powered by vBulletin® Version 3.7.3
Copyright ©2000 - 2022, Jelsoft Enterprises Ltd.