'M2227 Gear/Spline cutting Macro with Incremental Tooth ProfilingSub Main()'MsgBox(" In CONFIG set {ROT 360 rollover} & {Ang Short Rot on G0}")Setvar(1,Question("Number of Teeth/Splines?"))Setvar(8,Question("Tooth/Spline DEPTH?"))Setvar(10,Question("# of steps to depth"))Setvar(5,Question("X End of CUT?"))Setvar(7,Question(" INFEED Feedrate"))Setvar(9,Question(" CUTTING Feedrate"))N0:Setvar(20,Question("Infeed AXIS?.... Y(0).... Z(1)"))Setvar(2,(360/Getvar(1))) 		'(angle To turn chuck)Setvar(3,-.1)				'(y clearance)Setvar(4,0)				'(X start of cut)Setvar(6,0)				'(starting A position)Setvar(11,(Getvar(8)/Getvar(10)))	' Step valueSetvar(12,0)				'Current depth'**********If Getvar(20)=0 Then GoTo n1If Getvar(20)=1 Then GoTo n11If Getvar(20)>1 Then MsgBox" Selection MUST be 0 or 1,,, Restart MACRO"  GoTo n0'***Y Infeed***N1:CODE"G0 X#4 Y#3 Z0"While ISMOVING()WendCODE"G0 Z0"While ISMOVING()WendCODE"G0 A0"While ISMOVING()WendCode"#6=0"Code"#12=[#12+#11]"'**********N2:Do While Getvar(6) <= 359.9  CODE"G1 Y[#12-.010] F#7" While ISMOVING()WendCODE"G1 X#5 F#9"While ISMOVING()WendCODE"G1 Y#12"While ISMOVING()WendCODE"G1 X#4 F100"While ISMOVING()WendCODE"G0 Y#3"While ISMOVING()WendCODE"G0 X#4"While ISMOVING()WendCODE"#6=[#6+#2]"While ISMOVING()WendCODE"G0 A#6"While ISMOVING()WendGoTo N2:Exit DoLoop'**********If Getvar(12) < Getvar(8) Then GoTo N1 Else GoTo n10'***Z infeed***N11:'**********CODE"G0 X#4 Y0"While ISMOVING()WendCODE"G0 Z#3"While ISMOVING()WendCODE"G0 A0"While ISMOVING()WendCode"#6=0"Code"#12=[#12+#11]"'***********N21:'***********Do While Getvar(6) <= 359.9  CODE"G1 Z[#12-.010] F#7" While ISMOVING()WendCODE"G1 X#5 F#9"While ISMOVING()WendCODE"G1 Z#12"While ISMOVING()WendCODE"G1 X#4 F100"While ISMOVING()WendCODE"G0 Z#3"While ISMOVING()WendCODE"G0 X#4"While ISMOVING()WendCODE"#6=[#6+#2]"While ISMOVING()WendCODE"G0 A#6"While ISMOVING()WendGoTo N21:Exit DoLoop'**********If Getvar(12) < Getvar(8) Then GoTo N11 else goto n10'**********N10:Code"M5 M9"End SubEnd        