;General Purpose Lathe semi-auto G-Code G18 G7 M66 E4 L00 #5 = #5399 (Finish Z ) M66 E3 L00 #1 = #5399 (Finish X) M66 E0 L0 #2 = #5399 (metres/min surface speed) M66 E2 L0 #3 = #5399 (Cut / Increment ) M66 E1 L0 #4 = #5399 (Feed / Pitch) G92 x0 z0 (store position) g92.2 #14 = [#5211 * 2] (starting X) #13 = #5213 (starting Z) g92.1 (AXIS, stop) ; suppress zero feed-rate message G7 ; Lathe Diameter Mode G18 ; XZ Plane G21 ; Metric Units G90 ; Absolute Distance G96 D1500 S#2 ; Constant Surface Speed Mode g95 F#4 ; Feed-Per-Rev Mode m3 ;Start Spindle g4p1 ; Wait to reach speed ;Turning M66 P0 L0 O10 IF [#5399 GT 0] / (debug, Turning finish dia #1 start dia #14 start length #13 finish length #5) / m1 O100 WHILE [#14 GT [#1+#3]] g0 X #14 #14=[#14-#3] G1 X #14 G1 Z [#5] G1 X[#14 + #3 + 0.2] G0 Z[#13] O100 ENDWHILE G0 x#1 G1 Z [#5] G0 X[#14 + #3 + 0.15] G0 Z #13 G0 X #1 ; For touch-off O10 ENDIF ;Facing M66 P1 L0 O20 IF [#5399 GT 0] / (debug, Facing finish dia #1 start dia #14 start length #13 finish length #5) / m1 O200 WHILE [#13 GT #5 + #3] #13=[#13-#3] G1 Z#13 G1 X#1 G0 Z[#13+3] G0 X#14 G0 Z#13 O200 ENDWHILE G1 Z#5 G1 X#1 G0 Z[#13+#3] G0 X[#14+#3] G0 Z#5 ; For touch-off O20 ENDIF ;Boring M66 P2 L0 O30 IF [#5399 GT 0] / (debug, Boring finish dia #1 start dia #14 start length #13 finish length #5) / m1 O300 WHILE [#14 LT [#1-#3]] #14=[#14+#3] G1 X#14 G1 Z#5 G0 X[#14-#3] G0 Z#13 O300 ENDWHILE G0 X#1 G1 Z#5 G0 X[#14-#3] G0 Z#13 G1 X#1 G1 Z#5 F[#4/2] G0 X[#14-#3] G0 Z#13 G0 X#1 O30 ENDIF ;Parting M66 P3 L0 O40 IF [#5399 GT 0] / (debug, Parting; finish dia #1 start dia #14) / m1 G1 X #1 G0 X #14 O40 ENDIF ;Threading M66 P4 L0 O50 IF [#5399 GT 0] #10 = -1 O51 IF [#14 LT #1] #10 = 1 O51 ENDIF (debug, Threading thread dia #1 start length #13 finish length #5 Thread Pitch #4 thread depth #3) m1 g1 X [#1 - #10] g76 p#4 z#5 i#10 j0.2 k#3 h3 r1.5 q29.5 e0 l0 g0 z#13 O50 ENDIF ;Drilling M66 P5 L0 O60 IF [#5399 GT 0] / (debug, Saddle Drilling Finish #5, Drill dia #1, speed #2) / m1 G8 G53 X-100.109 G7 G17 G97 M3 S[#2/[#1*3.14]*1000] ; Turn off CSS as X = 0 g98 g83 r[#13 +.5] z#5 q3 G18 O60 ENDIF M2