;// O9901 LINEAR POSITION (M,X,Y,A,B,C,Z,R,K,Q,V,T,F,S) IF (#13==#0) GOTO 10; @81=#13; N10 #27=$1; //backup modal command G0 G1 #28=$3; //G90 G91 #29=$7; //G40 G41 G42 #30=$13; //G96 G97 IF( @92 <= 0 ) GOTO 9050; // CAN'T ACCEPT PHI <= 0 IF( @90 <= #18 ) GOTO 9055; // CAN'T ACCEPT ESCAPE.Z LOWER THEN R IF( @92 >= #2 ) GOTO 9060; // CAN'T ACCEPT PHI >= PITCH IF( #3 <= 1 ) GOTO 9061; // CAN'T ACCEPT NO.HOLES <=1 IF( #26 >= #18 ) GOTO 9062; // CAN'T ACCEPT Z >= R IF(#6!=#0) GOTO 70; #6=@91; //use default feed rate N70 IF(#19==#0) GOTO 80; @95=#19; N80 IF (@95>0) GOTO 90; IF (@81==5) GOTO 100; //Tapping M04S-@95; GOTO 100; N90 IF (@81==5) GOTO 100; M03S@95; N100 #31=#2*COS(#1); // dX #32=#2*SIN(#1); // dY #3=FIX(#3); G90G00Z@90M08; G00X#24Y#25; N1000 G90G65P9908Z#26R#18E#20U#22Q#17K#11F#6S@95; //call G73,G83,G85,G89 G90G00Z@90; #3=#3-1; IF (#3 <0.5) GOTO 1010; G91G00X#31Y#32; GOTO 1000; N1010 G#27G#28G#29G#30; //restore original modes M99; ;//---------------------------------------------------------------------------- N9050 $599=50; N9051 $599=51; N9052 $599=52; N9053 $599=53; N9054 $599=54; N9055 $599=55; N9056 $599=56; N9060 $599=60; N9061 $599=61; N9062 $599=62; ;/**********************************************************************/ ;/* Original 1997-02-12 By Bing Shi Lee */ ;/* Modifier 1998-6-25 BY YI-WAN LIN */ ;/* X(#24), Y(#25) : the coordnates of reference point of plane */ ;/* R(#18) : the POS.Z where drilling is started */ ;/* Z(#26) : the POS.Z where drilling is ended */ ;/* A(#1) : align angle */ ;/* B(#2) : hole distance */ ;/* C(#3) : hole number */ ;/**********************************************************************/