a very simply approach to having a dynamic FPS, ie an fps you can change with AS is making your own frame buffer: here is a sample
http://img235.images..age=untitled28wh.swf
the basis of the frame buffer are
function main():Void
{
//code
}
var inter:Number = setInterval(main,1000/fps);
where you replace fps with youre desired fps
basicly, for this to work, you have to replace youre onEnterFrames with this function, to stop slow down, its best to use only the ONE main() function to handle all clips (you could make this easier for yourself by each movieclip having an 'hahaloop' function that is called by the main() function
if you want to change the fps:
clearInterval(inter);
inter = setInterval(main,1000/newfps);
simple, but effective