right I think I've got this...
The distance to are multiplying by the barBack.height should be
((LayoutHeight - 32)-scroller.y)) / LayoutHeight-384 )
so this is the start position (or LayoutHeight-32 : the 32 is because you are starting the scroller at half its height from the bottom of the layout). Take from this the scroller.y (so now we have the height above its starting point). Divide this height by the layoutHeight- 384 (which is the total distance the scroller will move)
This does not allow for the height of the arrow - so the arrows origin point will travel from the boxBack bottom to top.
I will go and have a coffee and then probably find this is all wrong ! :)