If you require separate global vars for multiple instances of a routine, you can use Frames. See SpriteMeshEd(), ::/Demo/Graphics/Pick3D.HC or Noise(). FramePtr Funct Find entry in task->hash_table, Return user_data. FramePtrAdd Funct Add named value to task->hash_table. FramePtrDel Funct Remove entry and delete. FramePtrSet Funct Find hash entry in task->hash_table. Change user_data0.