View Single Post
  #19  
Old 16th February 2013, 01:25 AM
MarathonMan's Avatar
MarathonMan MarathonMan is offline
Alpha Tester
Project Supporter
Senior Member
 
Join Date: Jan 2013
Posts: 454
Default

Quote:
Originally Posted by FatCat View Post
Thank you for posting that!

I see that another source besides the documentation (someone else reversing, I'd imagine) disagrees and sets apart from the PJ64 RSP interpreter/recompiler unconditionally loading VS source into the accumulator and destination vector register. Which slice it buffers is conditional based on whether the NOT EQUAL test passed to the VCC bit.

About VNE,
Aside from that difference I just finished talking about, I see no differences between the MAME method you pasted and zilmar's PJ64 method. It is also identical to how I am emulating VNE, incidentally (not the way they write their code of course, just the basic success of algorithm).

What is confusing about it?
Unless I haven't pulled, your's is different, no [from the MESS algorithm]? Who else is reverse engineering?!

Code:
 10     if (element == 0x0) /* if (element >> 1 == 00) */
 11         for (i = 0; i < 8; i++)
 12             if ((VR[vs].s[i] != VR[vt].s[i]) || (VCO & (0x0100 << i)))
 13             {
 14                 VCC |= 0x0001 << i;
 15                 VACC[i].s[LO] = VR[vs].s[i];
 16             }
 17             else
 18             {
 19              /* VCC &= ~(0x0001 << i); */
 20                 VACC[i].s[LO] = VR[vt].s[i];
 21             }
Reply With Quote