Dear Jorge, John, et.al., I realize I should have sent it as e-mail text in the first place. Here is the listing for all those who couldn't make use of my ancient Q-Basic, or just want to see the pardigm:
************************************************************************ REM Moon Calendar - S&T MAR 85 REM Julian Cal. Prior to 1582; Gregorian Cal. Thereafter CLR: CLS R1 = 3.14159265# / 180: U = 0 INPUT "For which year "; Y: YL = Y G = 1: IF Y < 1583 THEN G = 0 PRINT : 'PRINT "To convert UT to EST subtract 5 hrs.": PRINT K0 = INT((Y - 1900) * 12.3685) T = (Y - 1899.5) / 100 T2 = T * T: T3 = T * T * T J0 = 2415020 + 29 * K0 30 F0 = .0001178# * T2 - .000000155# * T3 F0 = F0 + .75933 + .53058868# * K0 F0 = F0 - .000837 * T - .000335 * T2 J = J + INT(F): F = F - INT(F) M0 = K0 * .08084821133# M0 = 360 * (M0 - INT(M0)) + 359.2242 M0 = M0 - .0000333# * T2 M0 = M0 - .00000347# * T3 M1 = K0 * 7.171366127999999D-02 M1 = 360 * (M1 - INT(M1)) + 306.0253 50 M1 = M1 + .0107306# * T2 M1 = M1 + .00001236# * T3 B1 = K0 * .08519585128# B1 = 360 * (B1 - INT(B1)) + 21.2964 B1 = B1 - .0016528# * T2 60 B1 = B1 - .00000239# * T3 FOR K9 = 0 TO 28 J = J0 + 14 * K9: F = F0 + .765294 * K9 K = K9 / 2 M5 = (M0 + K * 29.10535608#) * R1 M6 = (M1 + K + 385.81691806#) * R1 70 B6 = (B1 + K * 390.67050646#) * R1 F = F - .4068 * SIN(M6) F = F + (.1734 - .000393 * T) * SIN(M5) F = F + .0161 * SIN(2 * M6) F = F + .0104 * SIN(2 * B6) F = F - .0074 * SIN(M5 - M6) F = F - .0051 * SIN(M5 + M6) F = F + .0021 * SIN(2 * M5) F = F + .001 * SIN(2 * B6 - M6) 80 A = S * (A1 + A2 / 60 + A3 / 3600) F = F + .5 / 1440 J = J + INT(F): F = F - INT(F) IF U = 0 THEN PRINT " new moon "; IF U = 1 THEN PRINT " FULL MOON "; GOSUB 920 90 U = U + 1: IF U = 2 THEN U = 0 NEXT END 800 REM CALENDAR to JULIAN DAY INPUT "Y,M,D "; Y, M, D INPUT "Julian Cal (0) or Gregorian Cal (1) "; G D1 = INT(D): F = D - D1 - .5 J = -INT(7 * (INT((M + 9) / 12) + Y) / 4) IF G = 0 THEN 850 S = SGN(M - 9): A = ABS(M - 9) J1 = INT(Y + S * INT(A / 7)) J1 = -INT((INT(J1 / 100) + 1) * 3 / 4) 850 J = J + INT(275 * M / 9) + D1 + G * J1 J = J + 1721027 + 2 * G + 367 * Y IF F >= 0 THEN 870 F = F + 1: J = J - 1 870 PRINT "J.D.: "; J; F RETURN 900 REM JULIAN DAY to CALENDAR INPUT "J,F "; J, F INPUT "Julian Cal.(0) or Gregorian Cal. (1) "; G 920 F = F + .5 IF F < 1 THEN 935 F = F - 1: J = J + 1 935 IF G = 1 THEN 945 A = J: GOTO 955 945 A1 = INT((J / 36524.25) - 51.12264) A = J + 1 + A1 - INT(A1 / 4) 955 B = A + 1524 C = INT((B / 365.25) - .3343) D = INT(365.25 * C) E = INT((B - D) / 30.61) D = B - D - INT(30.61 * E) + F M = E - 1: Y = C - 4716 IF E > 13.5 THEN M = M - 12 IF M < 2.5 THEN Y = Y + 1 D1 = INT(D): H = 24 * (D - D1) H1 = INT(H): M9 = INT(60 * (H - H1)) IF Y > YL THEN END PRINT Y; M; D1; PRINT TAB(35); H1; "H - "; M9; "M" RETURN END **************************************************** Enjoy the night skys, or use it to figure your tides, Bill