Hi Glen,
factor out things which don't need to be calculated every time... like PBmax/8192.f
... even better if you can make it a constant, or make it calculate only when there's a change.
You really want to avoid division, it is very slow.
Then you might make sure everything is in fixed point.. I can't tell from your code what types your variables are, but you could do this kind of thing...
Q16n16 Q16n16-max-multiplier = float_to_Q16n16(PBmax/8192.f);
Have a look in mozzi_fixmath.h for some fixed point types and conversions, and google fixed point arithmetic.
Try to choose the smallest types you can for the precision you need.
I hope that gets you started. Ask more if you get stuck.
Tim