DECLARE FUNCTION mo! (x!, y!) SCREEN 13 FOR i = 0 TO 63: PALETTE i, i: PALETTE i + 64, 256 * i + i: NEXT rr = 90: xxx = 1: yyy = -1: zzz = 1.5 k = 1'.22 gg = rr * SQR(xxx * xxx + yyy * yyy + zzz * zzz) FOR yy = -rr TO rr FOR x = -rr * 1.534954 TO rr * 1.534954 STEP .8333 xx = SIN(x / rr) * SQR(rr * rr - yy * yy) zz = SQR(ABS(rr * rr - xx * xx - yy * yy)) c = (xxx * xx + yyy * yy + zzz * zz) / (gg) IF c > 0 THEN IF ((mo(x, 16)) - 8) * ((mo(yy, 16)) - 8) >= 0 THEN PSET (160 + xx * k, 100 - yy), c * 63 ELSE PSET (160 + xx * k, 100 - yy), c * 63 + 64 END IF END IF NEXT NEXT FUNCTION mo (x, y) r = x MOD y IF r < 0 THEN r = r + y mo = r END FUNCTION