#include "pspmath.h" float vfpu_fmodf(float x, float y) { float result; // return x-y*((int)(x/y)); __asm__ volatile ( "mtv %2, S001\n" "mtv %1, S000\n" "vrcp.s S002, S001\n" "vmul.s S003, S000, S002\n" "vf2iz.s S002, S003, 0\n" "vi2f.s S003, S002, 0\n" "vmul.s S003, S003, S001\n" "vsub.s S000, S000, S003\n" "mfv %0, S000\n" : "=r"(result) : "r"(x), "r"(y)); return result; }