PRO usno_read, ast @compile_opt.pro ; On error, return to caller common USNO_INFO, USNO_PNTR iU = (*(USNO_PNTR[ast])).iU curjd = double(0) tmp1 = fix(0) tmp2 = fix(0) readu, iU, curjd,tmp1,tmp2 (*(USNO_PNTR[ast])).curjd = curjd (*(USNO_PNTR[ast])).curspan = double(tmp1) (*(USNO_PNTR[ast])).curorder = long(tmp2) IF tmp2 LT 0 OR tmp2 GT 13 THEN BEGIN print, 'ast=',ast,' iu=',iu,' jd=',curjd,' span=',tmp1,' order=',tmp2 message, 'tmp2 < 0 or tmp2 > 13 should not happen' ENDIF coef = dblarr(tmp2+1,3) readu, iU, coef ; Pad to coeff[14,3] with zeroes IF tmp2 LT 13 THEN $ coef = [ coef, dblarr(14-tmp2-1,3) ] (*(USNO_PNTR[ast])).coef = coef RETURN & END