or You may try this... speed is depends of mouse distance from center of the screen (if more far from center, the faster turning):

if(mouse_middle == 1)
{
mouse_pos.x = pointer.x; mouse_pos.y = pointer.y;
camera.pan -= (mouse_pos.x - (screen_size.x /2)) * time_step *0.1;
camera.tilt += (mouse_pos.y - (screen_size.y /2)) * time_step *0.1;
}

Play with 0.1 if camera is turning to fast or to slow


Never say never.