What's new

NUTS source code finally released!

angrylion

New member
Yes, it was released on September, 27 th. Grab it from here http://mooglyguy.hamsta.com/n64.html
NUTS is a utility that allows those who own Doctor V64 to test the emulated RSP's behaviour against a real N64 RSP's behaviour. Inaccuracies of the RSP cores implemented in LLE graphics plugins are the main obstacles on the way to better LLE emulation. Currently NUTS is programmed to test MESS RSP implementation. But author claims that with some changes to the source code it is possible to test every other RSP's implementation (at least exact opcodes' behaviour).
So PJ64 team and Ziggy (and maybe other LLE plugins authors) could achieve 100% perfect RSP emulation in their code, and that would pave the way to much better compatibility. It could also be possible to write better RSP documentation than we have nowadays.
So the question is, do emulators/plugins (mainly PJ64 team) authors plan to use NUTS during the development?
 

Danny

Programmer | Moderator
This sounds great :D

I no nothing about the Nintendo 64's RSP but the information you posted sounds very interesting indeed.

*looks for Jabo or Zilmar
 
OP
A

angrylion

New member
I hope Jabo or Zilmar knows, otherwise someone should definitely inform them. If someome is in contact with them, please do it!
Emulated RSP opcodes are found in rsp_test_core.c, namely in the following functions:
static void handle_vector_ops(UINT32 op)
static void handle_lwc2(UINT32 op)
So one just changes the opcode he wants to test against real N64 from MESS implementation to his own, compiles NUTS anew, executes it via Doctor V64 and NUTS tells if the implementation is correct.
With this we could get 100% accurate RSP LLE emulation.
 
Last edited:
OP
A

angrylion

New member
Thanks!
Jabo and Zilmar could also contact the author, Ryan Holtz aka MooglyGuy. From what I've heard on MESS forums, he would readily answer their questions about the source code, if any. Questions may arise because the source code is not too much commented.
His email and ICQ are posted on the mentioned site, but note that his site is accessible only about half a day.
 
Last edited:

mudlord

Banned
However...

Don't zilmar and Jabo have thier own private tools for things like this????

With this we could get 100% accurate RSP LLE emulation.

Which is 100% cycle accuracy by any chance?

Surely, there is better ways to get 100% accuracy then without going the pure cycle accurate route, which can potentially kill performance for the sake of accuracy. I just don't support the MAME team's overly obsessive ethics, thats all, and that I don't mean this to be of any offense.
 
Last edited:
OP
A

angrylion

New member
NUTS can help only with opcode-level accuracy, not cycle-level. This is what it was designed for (as stated on MooglyGuy's page). So it won't hit performance (at least in comparison with current 1.7 betas). Also NUTS has little to do with MESS/MAME or their policies, it's just a side project of one of the MESS' contributors.

I doubt that PJ64 team has such a tool. For example, try to enable LLE emulation in PJ64 1.7 betas (yes, I'm not a member, but I've seen a lot of screenshots on third-party sites; hope they won't ban me from here:). And you'll see that in every game either colors are distorted or triangles (polygons) are separated by black or white stripes. Even Mario64 looks ugly in LLE. This is apparently a sign of opcode-level inaccuracy. I.e. some vector math handling geometry and lighting is erroneous. I greatly doubt that it is RDP problems or anything else than RSP opcodes.

NUTS can test one vector RSP opcode against real N64 in a few hours, while PJ64 1.7 development is lasting over 2 years now. If PJ64 team had a comparable tool, they should have tested all opcodes by now.
I believe they have some tools for testing portions of their code against a real console, but hardly anything comparable to NUTS (at least in RSP's field).
 
Last edited:

mudlord

Banned
NUTS can help only with opcode-level accuracy, not cycle-level. This is what it was designed for (as stated on MooglyGuy's page). So it won't hit performance (at least in comparison with current 1.7 betas). Also NUTS has little to do with MESS/MAME or their policies, it's just a side project of one of the MESS' contributors.

Ah I see :). I was just worried about the possible influence if such a venture occured, but im glad my fears are unfounded. :)

I doubt that PJ64 team has such a tool. For example, try to enable LLE emulation in PJ64 1.7 betas (yes, I'm not a member, but I've seen a lot of screenshots on third-party sites; hope they won't ban me from here. And you'll see that in every game either colors are distorted or triangles (polygons) are separated by black or white stripes. Even Mario64 looks ugly in LLE. This is apparently a sign of opcode-level inaccuracy. I.e. some vector math handling geometry and lighting is erroneous. I greatly doubt that it is RDP problems or anything else than RSP opcodes.

Recently though, Jabo did recent work into cleaning up LLE GFX. Mario 64 now looks quite nice due to his very recent efforts. I agree, there's still some niggling issues here and there but they are getting worked out by Jabo.

NUTS can test one vector RSP opcode against real N64 in a few hours, while PJ64 1.7 development is lasting over 2 years now. If PJ64 team had a comparable tool, they should have tested all opcodes by now.
I believe they have some tools for testing portions of their code against a real console, but hardly anything comparable to NUTS (at least in RSP's field).

I must say you made truly a valid point here :p However, zilmar and Jabo obviously cant spend every second of thier lives fixing up a emulator though.
I guess then a tool like this then will help greatly in accellerating progress. Its just a matter if Jabo or zilmar are even willing to use such a tool.
 
OP
A

angrylion

New member
Nice to hear about Jabo's progress. Completely agree they shouldn't spend too much of their lives on emulation. I don't want to make any pressure on PJ64 team or create too much hype. Just want to make sure they know about NUTS and its possibilities.
 

Top