This paper describes new techniques for self--calibration and for recovering the motion from a projective reconstruction when the calibration is known. We show that our approach deals with the ambiguities in self--calibration produced by special motions. We extend our techniques to deal with varying calibration parameters. In passing, we prove convergence for the iterative projective--reconstruction algorithm of Sturm/Triggs and Berthilsson/Heyden/Sparr.