Bezier curve evaluation...

I have a normal IPO curve. What i am doing is sending the bezier points and the handles to an embedded system through the USB port. I am wanting the embedded system to evaluate the curve at a specific instance in time. I am just worried about normal bezier points (not linear or constant). I am not worried about extrapolation modes.

I am familiar with how bezier curves work according to this site.(i dont know if there is another way of calculating them) The problem is, when you evaluate the curve, you are evaluating the curve at a given percentage along the curve! I am wanting to evaluate it at a given x location. Just like if you would graph a simple function, you would plug in an x and get out a y.

I do know that in the Blender Python API you can evaluate an ipo curve at a specific time. See this. I have looked through the blender source code to see how they evaluate the curve at a specific time. I found the correct function, but I have NO idea what is going on in the source code and how to simply implement it on the embedded system. Can anyone point me in the right direction? Or does anyone know which developer is responsible for that part of the code that would know enough to help?

I desperately need help. Thanks!