Code: Select all
ms0:/PSP/GAME150/0test/> ./eboot.pbp
Load/Start ms0:/PSP/GAME150/0test/eboot.pbp UID: 0x05045F07 Name: 0test
ms0:/PSP/GAME150/0test/> Exception - FPU Exception (IUV)
Thread ID - 0x05019A19
Th Name - user_main
Module ID - 0x05045F07
Mod Name - 0test
EPC - 0x089065D0
Cause - 0x1000003C
BadVAddr - 0x00008000
Status - 0x20008613
zr:0x00000000 at:0x08940000 v0:0x00000000 v1:0x08A10000
a0:0x089E9F48 a1:0x09EFFD44 a2:0x089E9F3C a3:0x09EFFD44
t0:0x00000003 t1:0x08A11BF0 t2:0x08A11C40 t3:0x1AD08A39
t4:0x00000006 t5:0x401AD08A t6:0x180174A0 t7:0x00000000
s0:0x08A153C4 s1:0x00000000 s2:0x089E9F3C s3:0x00000024
s4:0x089F0000 s5:0x09EFFD44 s6:0x00000000 s7:0x00000000
t8:0x11DF46AA t9:0x00000000 k0:0x09EFFF00 k1:0x00000000
gp:0x
Also interesting to note that this function works fine most of the time...it runs hundreds of times each game loop, and only throws an error occasionally.
Code: Select all
zvar quickDist2z( v3z * p1, v3z * p2 )
{
if ( !p1 || !p2 )
{
null_ptr_count++;
return 0;
}
zvar a = p2->x - p1->x;
if ( a < 0 ) a = -a;
zvar b = p2->y - p1->y; //<------- exception here
if ( b < 0 ) b = -b;
return (b+a)/2.0f;
//return ( fabs( p2->x - p1->x ) + fabs( p2->y - p1->y ) )/2;
}
Thanks!