A new program has been written in FORTRAN for the least-squares refinement of single crystal x-ray diffraction data. The program uses the same methods to handle symmetry, calculate derivatives, and invert the matrix as ORFLS developed at Oak Ridge but includes options for block-diagonal matrix refinement, secondary extinction refinement, reuse of the matrix on successive cycles, and several input/output options to improve the program's efficiency and utility. A complete listing of the program and detailed instructions for its use are included.