SCREEN 12 SCREEN 0 PRINT "This program compares carburetor needle profiles for an '81 GPZ 550." PRINT "One is a stock (stok) needle (brass) with one clip position." PRINT "The second (kaw2) is same as stock but has 5 clip positions." PRINT "2nd position from the top makes it the same as the stock needle." PRINT "The third is a Dynojet (dyno) needle (stainless steel) with 6" PRINT "clip positions. "; PRINT "3rd position from the top is the Dynojet recommended position." PRINT "Each clip position moves the needle by 1 mm." PRINT " " PRINT "Reading the output:" PRINT "The numbers marked (x), on the left, represent "; PRINT "the distance (in mm) from the bottom of the clip at which the diameter "; PRINT "was measured." PRINT "The middle numbers are the needle's diameter (at the position x from "; PRINT "the clip) in inches." PRINT "The numbers on the right are differences in "; PRINT "diameters in inches (at distance x from the clip) between the two clips. " PRINT "The final column on the right tells which needle is richer (at position x, "; PRINT "based on the specified clip positions and measured diameters)." PRINT " " INPUT "(enter 4 to print the above)"; p IF p = 4 THEN LPRINT "This program compares carburetor needle profiles for an '81 GPZ 550." LPRINT " " LPRINT "One is a stock (stok) needle (brass) with one clip position." LPRINT " " LPRINT "The second (kaw2) is same as stock but has 5 clip positions." LPRINT "2nd position from the top makes it the same as the stock needle." LPRINT " " LPRINT "The third is a Dynojet (dyno) needle (stainless steel) with 6" LPRINT "clip positions. "; LPRINT "3rd position from the top is the Dynojet recommended position." LPRINT " " LPRINT "Each clip position moves the needle by 1 mm." LPRINT " " LPRINT " " LPRINT "Reading the output:" LPRINT "The numbers marked (x), on the left, represent "; LPRINT "the distance (in mm) from the bottom of the clip at which the diameter "; LPRINT "was measured." LPRINT "The middle numbers are the needle's diameter (at the position x from "; LPRINT "the clip) in inches." LPRINT "The numbers on the right are differences in "; LPRINT "diameters in inches (at distance x from the clip) between the two clips. " LPRINT "The final column on the right tells which needle is richer (at position x, "; LPRINT "based on the specified clip positions and measured diameters)." LPRINT "" LPRINT "" END IF CLS INPUT "Enter 5 to print the results to the printer."; p CLS DIM stok(-2 TO 60) AS SINGLE DIM kaw2(-2 TO 60) AS SINGLE DIM dyno(-2 TO 60) AS SINGLE 10 INPUT "Enter clip position for Kaw2 needle (1 to 5 counted from top)"; clipk IF clipk < 1 OR clipk > 5 THEN PRINT "Must be 1 to 5" GOTO 10 END IF clipk = clipk - 2 20 INPUT "Enter clip position for Dyno needle (1 to 6 counted from top)"; clipd IF clipd < 1 OR clipd > 6 THEN PRINT "Must be 1 to 6" GOTO 20 END IF clipd = clipd - 3 'initializes stok and kaw2 arrays FOR x = -2 TO 60 IF x < 21 THEN stok(x) = .1 kaw2(x) = .1 GOTO 99 END IF IF x < 25 THEN stok(x) = .1 - ((.002 / 4) * (x - 20)) kaw2(x) = .1 - ((.002 / 4) * (x - 20)) GOTO 99 END IF IF x < 44 THEN stok(x) = .1 - .002 - ((.038 / 19.3) * (x - 24)) kaw2(x) = .1 - .002 - ((.038 / 19.3) * (x - 24)) GOTO 99 END IF stok(x) = 0 kaw2(x) = 0 99 NEXT x 'initializes dyno array FOR x = -2 TO 60 IF x < 22 THEN dyno(x) = .1 GOTO 199 END IF IF x < 51 THEN dyno(x) = .1 - ((.05 / 29.5) * (x - 21.5)) GOTO 199 END IF dyno(x) = 0 199 NEXT x 'rounds off the values FOR x = -2 TO 60 stok(x) = (CINT(stok(x) * 10000)) / 10000 kaw2(x) = (CINT(kaw2(x) * 10000)) / 10000 dyno(x) = (CINT(dyno(x) * 10000)) / 10000 NEXT x 'prints results PRINT "Stock versus Kawasaki2 at clip position"; clipk + 2 IF p = 5 THEN LPRINT "Stock versus Kawasaki2 at clip position"; clipk + 2 FOR x = 0 TO 55 diff = (CINT((stok(x) - kaw2(x + clipk)) * 10000)) / 10000 PRINT "x="; x; " Stock="; stok(x); " Kaw2="; kaw2(x + clipk); " Stk-K2="; diff; IF diff > 0 THEN PRINT " K2 richer" IF diff < 0 THEN PRINT " Stk richer" IF diff = 0 THEN PRINT " same" IF p = 5 THEN GOTO 100 FOR t = 1 TO 24000 NEXT t 100 IF p = 5 THEN LPRINT "x="; x; " Stock="; stok(x); " Kaw2="; kaw2(x + clipk); " Stk-K2="; diff; IF diff > 0 THEN LPRINT " K2 richer" IF diff < 0 THEN LPRINT " Stk richer" IF diff = 0 THEN LPRINT " same" END IF NEXT x PRINT " " IF p = 5 THEN LPRINT " " PRINT "Stock versus Dynojet at clip position"; clipd + 3 IF p = 5 THEN LPRINT "Stock versus Dynojet at clip position"; clipd + 3 FOR x = 0 TO 55 diff = (CINT((stok(x) - dyno(x + clipd)) * 10000)) / 10000 PRINT "x="; x; " Stock="; stok(x); " Dyno="; dyno(x + clipd); " Stk-Dy="; diff; IF diff > 0 THEN PRINT " Dy richer" IF diff < 0 THEN PRINT " Stk richer" IF diff = 0 THEN PRINT " same" IF p = 5 THEN GOTO 200 FOR t = 1 TO 24000 NEXT t 200 IF p = 5 THEN LPRINT "x="; x; " Stock="; stok(x); " Dyno="; dyno(x + clipd); " Stk-Dy="; diff; IF diff > 0 THEN LPRINT " Dy richer" IF diff < 0 THEN LPRINT " Stk richer" IF diff = 0 THEN LPRINT " same" END IF NEXT x PRINT " " IF p = 5 THEN LPRINT " " PRINT "Dynojet at clip pos"; clipd + 3; " versus Kawasaki2 at clip pos"; clipk + 2 IF p = 5 THEN LPRINT "Dynojet at clip pos"; clipd + 3; " versus Kawasaki2 at clip pos"; clipk + 2 FOR x = 0 TO 55 diff = (CINT((dyno(x + clipd) - kaw2(x + clipk)) * 10000)) / 10000 PRINT "x="; x; " Dyno="; dyno(x + clipd); " Kaw2="; kaw2(x + clipk); " Dy-K2="; diff; IF diff > 0 THEN PRINT " K2 richer" IF diff < 0 THEN PRINT " Dy richer" IF diff = 0 THEN PRINT " same" IF p = 5 THEN GOTO 300 FOR t = 1 TO 24000 NEXT t 300 IF p = 5 THEN LPRINT "x="; x; " Dyno="; dyno(x + clipd); " Kaw2="; kaw2(x + clipk); " Dy-K2="; diff; IF diff > 0 THEN LPRINT " K2 richer" IF diff < 0 THEN LPRINT " Dy richer" IF diff = 0 THEN LPRINT " same" END IF NEXT x PRINT " " PRINT " " PRINT " " IF p = 5 THEN LPRINT " " LPRINT " " LPRINT " " END IF INPUT "hit enter to run again"; a RUN