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)

HatCat 14th April 2013 05:13 PM

Quote:

Originally Posted by nintendo1889 (Post 45368)
Maybe I'll let Zilmar know of the regression,

Not really a problem.
He might not even be able to control it himself necessarily.

The nature of interrupting and re-starting especially in a way that is meant for compatibility but not necessarily accuracy, does not mean for it to also be the most stable solution. To "fix" it he might have to cancel the support.

Could be wrong; it's just not my focus.

Quote:

Originally Posted by nintendo1889 (Post 45368)
it's weird that the older beta works fine, but how it breaks in the newest.

If possible you might prefer testing on PJ64 1.6 or MUPEN64; those will be void of the new audio timing bypass settings so that they don't factor into the equation of testing for accuracy.

For games like this though obviously it requires PJ64 1.7 or later.

Quote:

Originally Posted by nintendo1889 (Post 45368)
Now if I can only get World Driver Championship to work. I've yet to figure out which RDB plugin to use, too bad I can only have one in the folder at the time, otherwise they show up as ten duplicate names in the plugin selection window.

Clicking the "About" button says "RSP Interpreter" for the normal rsp.dll, "Iconoclast's MLE Test" for the title if it's HLE gfx + LLE aud or the other way around, and "Basic RSP Simulator" if vid + aud are both HLE.

You just need rsp_pj64.dll to get World Driver Championship to work.
You need to use Jabo's DirectSound or zilmar's No Sound, not any other plugin.
e.g. AziAudio, zilmaraudio dll will crash the game at boot.

the_randomizer 14th April 2013 05:25 PM

Quote:

Originally Posted by FatCat (Post 45369)
Not really a problem.
He might not even be able to control it himself necessarily.

The nature of interrupting and re-starting especially in a way that is meant for compatibility but not necessarily accuracy, does not mean for it to also be the most stable solution. To "fix" it he might have to cancel the support.

Could be wrong; it's just not my focus.



If possible you might prefer testing on PJ64 1.6 or MUPEN64; those will be void of the new audio timing bypass settings so that they don't factor into the equation of testing for accuracy.

For games like this though obviously it requires PJ64 1.7 or later.



Clicking the "About" button says "RSP Interpreter" for the normal rsp.dll, "Iconoclast's MLE Test" for the title if it's HLE gfx + LLE aud or the other way around, and "Basic RSP Simulator" if vid + aud are both HLE.

You just need rsp_pj64.dll to get World Driver Championship to work.
You need to use Jabo's DirectSound or zilmar's No Sound, not any other plugin.
e.g. AziAudio, zilmaraudio dll will crash the game at boot.

Huh, tried rdp_pj64.dll + Jabo's DSound 1.7.1 but all I got was a black screen, also set to interpreter, but I'll try again. What about the GPU plugin? I tried it with Jabo's D3D 1.7.1 and LLE but it looked horrible, and it won't even work on glide since it has funky uCodes.

HatCat 14th April 2013 05:34 PM

Quote:

Originally Posted by nintendo1889 (Post 45370)
What about the GPU plugin? I tried it with Jabo's D3D 1.7.1 and LLE but it looked horrible, and it won't even work on glide since it has funky uCodes.

Hmm I thought you said all you got was a black screen?

The GPU needs to be a LLE gfx plugin.
Jabo's D3D 1.7 ("1.7.1?" you don't mean "1.6.1" do you?) will work, but it has RDP emulation bugs, so the game's textures are a bit screwy. You're much better off using ziggy's z64gl OpenGL LLE plugin for better gfx with that game.

Make sure you don't have per-ROM plugins set.
e.g. your global plugins are different from the game-specific one you have assigned to World Driver.

If the RSP dll you're using boots up Gauntlet Legends, I guarantee you it will boot up World Driver Championship.
I'm currently in-game using rsp_pj64.dll and z64gl for the gfx plugin.

HatCat 14th April 2013 06:09 PM

Quote:

Originally Posted by nintendo1889 (Post 45361)
I should note pressing F1 crashes the ROM and emulator.

Sorry I forgot to go back and confirm this.

The issue happens with zilmar's RSP 1.7.0.9, not just my DLL.
So it almost certainly is indeed because of event handling with re-starting tasks for WDC/SR64.

Just making sure that it's not an issue I need to fix (heh, sounds funny I know).

Quote:

Originally Posted by suanyuan (Post 45353)
any instruction to compile your RSP project with VC and gcc?

So things I should do in the next release / zip upload:
  • add vs project build config files so that people compile using the correct settings, maybe an easy MinGW invocation script to build all those DLLs easily too
Nothing else?
No error messages about corner cases and edge conditions I get to test in the RSP emulator?
Never-before-exploited features? :p


Otherwise I can only judge my RSP emulator to be perfect as of the current implementation. There might be one or two things I could still have done to speed it up faster.


Quote:

Originally Posted by suanyuan (Post 45353)
and how to configure to build a specific type of RSP?

Use `config.h`.

...
Code:

/* Choose whether to define, or keep undefined, the above macros. */
#define MINIMUM_MESSAGE_PRIORITY    1 // show most messages of RSP weirdness
// #define EXTERN_COMMAND_LIST_GBI // Not really recommended but user preference
// #define EXTERN_COMMAND_LIST_ABI // Not really significant but user preference
// #define SEMAPHORE_LOCK_CORRECTIONS // Recommended only for CPUs supporting it
// #define WAIT_FOR_CPU_HOST // Never use, except with some ROMs on Project64 2.
// #define SP_EXECUTE_LOG // For debugging only.  Keep it off to free CPU.
// #define VU_EMULATE_SCALAR_ACCUMULATOR_READ // experimental but needs tests


squall_leonhart 14th April 2013 08:57 PM

Quote:

Originally Posted by FatCat (Post 45358)
You're not using the correct RSP plugin. :/

There is no Debug menu for anything of the RSP unless it's a zilmar spec #1.2 RSP plugin, and this is a #1.1.

Yes i am, and Yes there is.

when the Debugger is enabled the Debug menu is displayed, and RS only boots with RSP CPU Method set to Interpreter.

HatCat 14th April 2013 09:58 PM

Quote:

Originally Posted by squall_leonhart (Post 45381)
and Yes there is.

No there isn't.

http://ft.trillian.im/785abe041074fd...aMtaWo01zc.jpg

From a fresh install of the public release I did just to screenshot without having my name in the title window.

There is NO debug facility for the RSP integrated into Project64 2.0 with respect to a #1.1 spec RSP plugin.

Quote:

Originally Posted by squall_leonhart (Post 45381)
when the Debugger is enabled the Debug menu is displayed, and RS only boots with RSP CPU Method set to Interpreter.

Then you are not using a #1.1 spec RSP plugin.

http://ft.trillian.im/785abe041074fd...pBOGcYGUS9.jpg

^ That's what it looks like with a #1.2 spec RSP plugin, the pj64 1.7.0.9 rsp.
Which means you are using the wrong RSP plugin. :)

Thanks for playing, bye.

shunyuan 14th April 2013 09:58 PM

3 Attachment(s)
Resident Evil 2 (U) v1.1 with LLE RSP, Jabo D3D8 1.7.0.57ver5, 1964Audio v2.7

- audio correct with 1964audio (include audio of movie)

- video error
project64 v2.0 gfx LLE, title screen not correct, video not correct (partial correct)
project64 v1.6 gfx LLE, title screen not correct, movie not correct (partial)
proect64 v1.6 gfx HLE, title screen not correct, movie not correct (partial)


I cannot test with z64gl plugin, this plugin will crash.

HatCat 14th April 2013 10:14 PM

Quote:

Originally Posted by suanyuan (Post 45387)
proect64 v1.6 gfx HLE, title screen not correct, movie not correct (partial)

Remember that if you use HLE gfx, my RSP is not responsible for drawing the gfx.
All it does is set an interrupt, signal to the CPU and redirect the CPU host to call the HLE graphics plugin to handle the drawings.

My RSP plugin affects how the graphics look, *if* you are using LLE gfx.
HLE here means the control is external.

Quote:

Originally Posted by suanyuan (Post 45387)
Resident Evil 2 (U) v1.1 with LLE RSP, Jabo D3D8 1.7.0.57ver5, 1964Audio v2.7

- audio correct with 1964audio (include audio of movie)

- video error
project64 v2.0 gfx LLE, title screen not correct, video not correct (partial correct)
project64 v1.6 gfx LLE, title screen not correct, movie not correct (partial)

I'm aware of this; it's a known issue with Jabo's graphics plugin.
You should encounter the same issue when using zilmar's RSP 1.7.0.9 RSP.

The way to fix it is to check "Software rendering" in the advanced options since the Direct3D renderer doesn't even come close to parsing the data correctly yet.

http://ft.trillian.im/785abe041074fd...3jQyXrKj9l.jpg

http://ft.trillian.im/785abe041074fd...7vuUCrIRO4.jpg

squall_leonhart 14th April 2013 11:12 PM

Quote:

Originally Posted by FatCat (Post 45386)
No there isn't.

http://ft.trillian.im/785abe041074fd...aMtaWo01zc.jpg

From a fresh install of the public release I did just to screenshot without having my name in the title window.

There is NO debug facility for the RSP integrated into Project64 2.0 with respect to a #1.1 spec RSP plugin.



Then you are not using a #1.1 spec RSP plugin.

http://ft.trillian.im/785abe041074fd...pBOGcYGUS9.jpg

^ That's what it looks like with a #1.2 spec RSP plugin, the pj64 1.7.0.9 rsp.
Which means you are using the wrong RSP plugin. :)

Thanks for playing, bye.


Then this indicates that setting the RSP plugin per game doesnt work.

HatCat 14th April 2013 11:22 PM

True...I forgot about that.
I stopped paying attention to changes in the Project64 core when it got down to things like that and the plugin handler.

I have no idea why but I almost never use per-ROM plugins on PJ64, almost always use them on mupen.
But I did just recently notice that per-game RSP is broken.

No matter. The whole configuration layout is undeniably flawed.
It should still be reproducible and interact just fine with the Debugger interface if the RSP plugin is only set globally.


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

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