{12/15/88 TF change XYZ from conditional, 'T0Z1.' from T0Z0}
{6/4/89 force EPs on arcs, and in proper planes, WFG}
{7/16/89 cust requests, for Visual Technics, also Metric, Postscript, multiple parts}
{7/27/89, G29 before all E's, WFG}
{9/11/89, repeats with weird origin shift WFG}
{9/14/89, fix SepSubs, WFG}
{10/30/89, shift of arc IJ's with long hand repeats & rapid/feed prob, WFG}
{10/30/89, needs 3.19alpha6 to run, WFG}
{4/20/90
Modified: Anilam Crusader (VT) M220.67
Re-Wrote drilling section to include more cycles & retract to ZCP1
Moved DoPostScript to before TCZ# command for proper operation.
Fix problem, missing G1 for RepZ op feed connect.
Jim Radcliffe}
{4/24/90, Update: Anilam Crusader (VT) M220.68 to .71.2 format, JR}
{4/27/90, Modified: Anilam Crusader (VT) M220.71.2, added 'ENGLISH' to Moves header comment, JR}
{7/24/90, Replaced all occurances of SetSRXYZero with SetSRXYtoSP, DWB}
{3/7/91
Modified: Anilam Crusader (VT) M220.72
Added ###.##;0. in the Default Formats dialog in the form, for FeedEnt and FeedRate.
There was no FORMAT for these two commands, and the result was a bunch of zeros on one line, and
all EOLs were ignored until ncPost exited ToolPath, and output the move to ZCP3.
DWB}
{4/03/91
Modified: Anilam Crusader (VT) M220.72.1
For: Gibbs & Associates
Updated to Version 4.0 per Fanuc 6M M001.80 Format.
DWB}
{11/13/91
Modified: Anilam Crusader (VT) M220.79
For: Visual Technic
Added FORMAT #7 = '00' for TLNum# to output 4 digits at all times. And changed
the literal 'G29T100' to 'G29T0'.
Kim Michelman}
{03/18/92
Modified: Anilam Crusader (VT) M220.79.1
For: Visual Technic
Retyped the 'G29E' at the end of the prog, for some reason was only reading the 'E'.
Kim Michelman}
{03/19/92
Modified: Anilam Crusader (VT) M220.79.2
For: Visual Technic
Changed the EndSub in the form to read G29, and added a literal 'E' at the
end of the the subs being called and changed the literal 'G29E' at end of the program.
Kim Michelman}
{8/14/92
Modified: Anilam Crusader (VT) M220.79.3
For: Visual Technic
Changed PeckValue to Peck# and Formated to #2.
Changed the Dwell# Format to #2.
Updated the PSStuff.
Updated to Version 4.0 per Fanuc 6M M001.81 Format.
Kim Michelman}
{9/18/92
Modified: Anilam Crusader (VT) M220.81.1
For: Visual Technic
Added OptCyc1 boolean for postscript. Customer requested 'M1000' & 'M2000'.
Kim Michelman}
{11/13/92
Copied & modified: Anilam Crusader (VT) M220.81.3
For: Hughes Aircraft Co / Mike D
Control: Anilam Crusader Series M
Machine: Bridgeport
Moved Home to line by itself after TCZ#.
Changed TCZ default to 0.
Turn of CRC on last feature in tool path, using ncCAM 4.19.13
Added DoOpComments for 1st operation MultiplePart OneToolAllParts ExitClearancePlane.
Jim Radcliffe}
{3/27/93
Copied & modified: Anilam Series M M530.81.4
For: Stanford University
Control: Anilam Cusader 2
Machine has no Z axis drive, added G4 for dwell after Z axis moves.
Minor update corrections.
Jim Radcliffe}
#1 = '0.00'
#2 = '###.####;0.'
#3 = '###;0'
#4 = '##^'
#5 = '###.###;0.'
#6 = '*###.###;0.'
#7 = '00'
FORMAT(FileFeet#,1)
FORMAT(FileMeters#,1)
FORMAT(Dwell#,2)
FORMAT(TLDia#,2)
FORMAT(TLLength#,2)
FORMAT(TCZ#,2)
FORMAT(ClearancePlane1#,2)
FORMAT(ToolLength#,2)
FORMAT(FeedEntry#,2)
FORMAT(ClearancePlane2#,2)
FORMAT(CurOriginPosX#,2)
FORMAT(CurOriginPosY#,2)
FORMAT(Peck#,2)
FORMAT(Parts#,3)
FORMAT(TLNum#,7)
DoSubComment:
IF UseComments? AND SubComment?
'( SUB NUMBER: ' Tag# ' )' EOL
END
RETURN
DoOpComments:
IF UseComments?
SetScale('1')
IF OperationIDComment?
'( OPERATION ' Operation# ': ' OperationType$ ' )' EOL
END
IF OperationComment?
'( ' OperationComment$ ' )' EOL
END
IF WorkGroupComment?
'( ' WorkGroupComment$ ' )' EOL
END
IF ToolTypeComment?
'( TOOL ' Tool# ': ' ToolDiameter# ' ' ToolType$ ' )' EOL
END
IF ToolComment?
'( ' ToolComment$ ' )' EOL
END
IF Metric? {CAM file is in Metric, tools and tool path}
SetScale('.03937007874') { change to English, this is an English post}
END
END
RETURN
PSInit: {reset flags}
RotateF
RETURN
PSStuff: {revised.72}
IF FourthCW?
FORMAT(FourthDegree#,5)
Seq 'A' FourthDegree# EOL
FourthCWF {reset flag}
END
IF FourthCCW?
FORMAT(FourthDegree#,6)
Seq 'A' FourthDegree# EOL
FourthCCWF {reset flag}
END
IF FifthCW?
FORMAT(FifthDegree#,5)
Seq 'B' FifthDegree# EOL
FifthCWF {reset flag}
END
IF FifthCCW?
FORMAT(FifthDegree#,6)
Seq 'B' FifthDegree# EOL
FifthCCWF {reset flag}
END
RETURN
DoPostScript:
PSInit
EachPS
Seq PostScript EOL
PSStuff
NextPS
RETURN
DoEndOpPS:
PSInit
EachEOPS
Seq EndOpPS EOL
PSStuff
NextPS
RETURN
StartSub:
OpenSub
DoSubComment
Seq 'G29S' Tag# EOL
RETURN
EntryMove:
IF FeedEntry?
Seq Feed ZIn FeedEnt EOL
ELSE
Seq RapidC ZIn EOL
END
Seq 'G4' EOL
RETURN
SubWarning:
IF NOT FeedConnect? AND UseComments?
IF AnyZshift?
' ' EOL
'( WARNING Z CLEARANCE WILL CHANGE WITH EACH CYCLE OF SUB REPEAT )' EOL
' ' EOL
END
END
RETURN
FinishSub1: {part 1}
UnSkipZ
Seq CRCOffC
IF NOT FeedConnect?
IF AutoCycle?
ZCP3C
ELSE
IF FIFO? {.81}
FeedC ZCP3C FeedRateC
ELSE
RapidC ZCP3C
END
END
Seq 'G4' EOL
END
EOL
RETURN
OpenMP1T:
NewProg TagInc
EachPart
IF NOT FirstPart?
Seq 'M1101' EOL
Seq 'X' CurOriginPosX# 'Y' CurOriginPosY# 'Z' ToolLength# EOL
END
Seq 'G29C' Tag# EOL
NextPart
StartSub
Seq Rapid StrtPos EOL
RETURN
OpenMPAT:
EachPart
RETURN
CallMPAT:
IF NOT FirstPart?
Seq 'M1101' EOL
Seq 'X' CurOriginPosX# 'Y' CurOriginPosY# 'Z' ToolLength# EOL
ELSE
NewProg {firstPart only, 1 per tool}
END
TagInc
Seq 'G29C' Tag# EOL
IF FirstPart?
StartSub
Seq Rapid StrtPos EOL
DoOpComments
END
RETURN
CloseMP1T:
Seq 'G29E' EOL
CloseSub
RETURN
RetMPAT:
Seq 'G29E' EOL
CloseSub
RETURN
CloseMPAT:
NextPart
RETURN
FormatArc:
IF ArcCW?
CWArc
ELSE
CCWArc
END
IF XYPlane?
MoveX MoveY MoveZC { force endpoints in proper plane }
ELSE
IF XZPlane?
MoveX MoveZ MoveYC
ELSE
MoveY MoveZ MoveXC { YZ plane }
END
END
IF ArcIJFormat?
ArcIJ
ELSE
ArcR
END
RETURN
StdLine: {enables CRC on first call, .70}
IF Decelerate?
IF RoomToDecel?
DecelMove1
Seq CRCOnC FeedC MoveXYZC FeedRateC EOL
DecelMove2
END
Seq CRCOnC FeedC MoveXYZC DecelFeed EOL
ELSE
IF XMove? OR YMove?
Seq CRCOnC FeedC MoveXYZC FeedRateC EOL
END
END
RETURN
ToolPath:
EACHFeat
IF PointFeat?
Seq MoveSXYC EOL
IF Tap? OR AutoCycle? {uses subs}
Seq 'G29C' Tag# EOL
IF AutoCycle?
CalcACSRXY {calc tool position after sub call, CalcAutoCycleStatusRecordXY}
END
ELSE
{drilling is done manually after positioning}
Seq 'G4' EOL
END
ELSE
IF RapidFeat?
IF OptCyc1?
IF Flag?('1')
SetFlagF('1')
Seq 'M2000' EOL {turn off look ahead}
END
END
IF LastFeat?
Seq CRCOffC RapidC MoveXYZC EOL
ELSE
IF XMove? OR YMove?
Seq RapidC MoveXYZC EOL
END
END
ELSE
IF LineFeat?
IF OptCyc1?
IF Flag?('1')
{M1000 is currently on}
ELSE
SetFlag('1')
Seq 'M1000' EOL {turn on look ahead}
END
END
IF LastFeat?
Seq CRCOffC FeedC MoveXYZC FeedRateC EOL
ELSE
IF AutoCycle? {.70}
IF ZMove? {skip CRCOn until first non-Z move line, skipping ramps}
Seq FeedC MoveXYZC FeedRateC EOL
ELSE
StdLine {enables CRC on first call}
END
ELSE
StdLine
END
END
ELSE
IF ArcFeat?
IF OptCyc1?
IF Flag?('1')
{M1000 is currently on}
ELSE
SetFlag('1') {turn on look ahead}
Seq 'M1000' EOL
END
END
EACHQuadrant
IF LastFeat? AND LastQuadrant?
Seq CRCOffC FormatArc ArcFeedC EOL
ELSE
IF LastQuadrant? AND Decelerate?
IF RoomToDecel?
DecelMove1
Seq CRCOnC FormatArc ArcFeedC EOL
DecelMove2
END
Seq CRCOnC FormatArc DecelFeed EOL
ELSE
Seq CRCOnC FormatArc ArcFeedC EOL
END
END
NEXTQuadrant
END
END
END
END
NEXTFeat
IF OptCyc1?
IF Flag?('1')
SetFlagF('1')
Seq 'M2000' EOL {turn off look ahead}
END
END
RETURN
AutoCycCutSub1: {part 1}
SaveSubStatus {save tool position}
SetPass1 {element cut moves}
StartSub
SetSRXYtoSP
Seq IncValue EOL
RETURN
AutoCycCutSub2: {part 2}
ToolPath
IF Repeats? AND FeedConnect? AND ZshiftOnly?
Seq AbsOrInc EOL {.69 removed RapidC} {.71.2 removed CRCOffC, gets turned off in ToolPath}
ELSE
IF FIFO? {.81}
Seq AbsOrInc FeedC ZCP2 FeedRateC EOL
ELSE
Seq AbsOrInc RapidC ZCP2 EOL {.71.2 removed CRCOffC, gets turned off in ToolPath}
END
Seq 'G4' EOL
END
Seq EndSub 'E' EOL
CloseSub
SetSRSubXY {restore tool position}
SetSRSubMove
RETURN
AutoCycPat:
SetPass2 {position pattern}
ToolPath {call after NewProg for correct sub calls}
SetPass1 {reset}
RETURN
Milling:
IF AutoCycle?
NewProg TagInc
AutoCycCutSub1
EntryMove
AutoCycCutSub2
AutoCycPat
ELSE
EntryMove
ToolPath
END
RETURN
G92Sub:
SubWarning
IF MultipleParts? OR AnyZShift?
IF UseComments?
'( THIS REPEAT OP WILL BE LONGHAND DUE TO MULT PARTS OR Z SHIFT)' EOL
END
EachRep {can't nest origin shifts or origin shift Z}
IF NOT FirstCycle?
Seq Connect StrtPos EOL
END
ELSE
NewProg TagInc
EachRep
IF NOT FirstCycle?
Seq 'M1101' EOL
Seq 'X' CurOriginPosX# 'Y' CurOriginPosY# 'Z' ToolLength# EOL
END
Seq 'G29C' Tag# EOL
NextRep
StartSub
Seq AbsOrInc Connect StrtPos EOL
END
Milling
FinishSub1
IF MultipleParts? OR AnyZShift?
NextRep
Else
Seq 'G29E' EOL
CloseSub
Seq 'M1101' EOL
Seq 'X0Y0Z' ToolLength# EOL
END
RETURN
ZonlyRepAutoCycle:
NewProg TagInc
AutoCycPat {write pattern moves and main calls}
StartSub
NewProg TagInc
EachCycle
IF FeedConnect?
Seq Feed ZInPlusInc FeedEnt EOL
ELSE
IF FeedEntry?
IF NOT FirstCycle?
Seq Rapid ZCP2PlusInc EOL {.69 added Rapid, reads better}
{can't call for cycle = 1, .69 changed to ZCP2PlusInc}
END
Seq Feed ZInPlusInc FeedEnt EOL
ELSE
Seq Rapid ZInPlusInc EOL {.69 added Rapid, reads better}
END
END
Seq 'G4' EOL
IF FirstCycle?
SetStatusOff {protect Z position for incremental sub}
END
Seq 'G29C' Tag# EOL
NextCycle
SetStatusOn
AutoCycCutSub1 {build element sub}
AutoCycCutSub2
{.69, removed FinishSub1}
IF FeedConnect? {there is no Z up in the sub, .69}
IF FIFO? {.81}
Seq Feed ZCP2 FeedRate EOL {.69}
ELSE
Seq Rapid ZCP2 EOL {.69}
END
Seq 'G4' EOL
END {.69}
Seq 'G29E' EOL
CloseSub
{Element shift, not pattern}
RETURN
ZonlyRep:
NewProg TagInc
EachCycle
IF NOT FirstCycle?
Seq Connect StrtPos EOL {.71.2, added Connect}
END
IF FeedConnect?
Seq FeedC ZInPlusInc FeedEnt EOL
ELSE
IF FeedEntry?
IF NOT FirstCycle?
Seq RapidC ZCP2PlusIncC EOL
END
Seq Feed ZInPlusInc FeedEnt EOL
ELSE
Seq RapidC ZInPlusInc EOL
END
END
Seq 'G4' EOL
Seq 'G29C' Tag# EOL
NextCycle
SetStatusRapid {force next G1,G2,G3,etc.}
StartSub
SkipZ
ToolPath
FinishSub1
Seq 'G29E' EOL
CloseSub
RETURN
CheckPass:
IF AutoCycle? {use the correct StrtPos}
SetPass2
ELSE
SetPass1
END
RETURN
{Start of executable Prog **************************************************}
{setup and initializations}
InitProg
ReverseXZArcs
UseSeparateSubCalls
SetMaxSeparateSubCalls ('1000')
SetTCZ('0')
SetMaxRPM('10000') {?}
SetMaxFeed('500') {?}
SetFlagF('1')
IF PSComment? AND UseComments?
'PostScript:' EOL
' Literals : put between single or double quotes.' EOL
' Separate commands and literals with at least one space.' EOL
' A CR ( RETURN key ) will start a new line.' EOL
' Commands: may be capital and/or lower case letters. Separate commands with a space.' EOL
' EndOP -' EOL
' all literals and commands before an ENDOP command' EOL
' will appear at the beginning of the operation. All ' EOL
' literals and commands after an ENDOP command will appear' EOL
' at the end of the operation. ' EOL
' 4thAxisCW(12.5), 4ACW(12.5) -' EOL
' generates a + A move of the value you specify' EOL
' 4thAxisCCW(22.5), 4ACCW(22.5) -' EOL
' generates a - A move of the value you specify' EOL
' 5thAxisCW(30), 5ACW(30) -' EOL
' generates a + B move of the value you specify' EOL
' 5thAxisCCW(22.5), 5ACCW(22.5) -' EOL
' generates a - B move of the value you specify' EOL
' TCZ(), TOOLCHANGEZ() -' EOL
' Set the Toolchange Z value. Modal, changes all following OPs.' EOL
' Value is set to Z0 as a default.' EOL
' OptCyc1, OptionalCycle1 -' EOL
' For the selected operation to use look ahead.' EOL
END
IF MultipleParts? AND AllToolsOnePart?
OpenMPAT
TagInit
END
EachOp
IF FirstOperation?
IF FirstPart?
EOR EOL
IF UseComments?
IF ProgramNameComment?
'( PROGRAM: ' ProgramName$ ' )' EOL
END
IF ProgramComment?
'( ' ProgramComment$ ' )' EOL
END
IF FormatNameComment?
'( FORMAT: ' FormatName$ ' )' EOL
END
IF TimeComment?
'( ' Date$ ' AT ' Time$ ' )' EOL
END
IF MovesComment?
'( OUTPUT IN ' MoveType$ ' INCHES )' EOL
END
IF PartsComment?
'( PARTS PROGRAMMED: ' Parts# ' )' EOL
END
END
OpenSub
IF Metric? {CAM file is in Metric, tools and tool path}
SetScale('.03937007874') { change to English, this is an English post}
END
'N0' Rapid Plane 'G70' AbsValue EOL
EachTool
Seq 'G29T10' TLNum# 'X' TLDia# 'Z' TLLength# EOL
NextTool
Seq 'T0' EOL
DoPostScript
Seq 'Z' TCZ# EOL
IF ToolChangeAtHome?
Seq Home EOL
END
END {end firstPart?}
IF MultipleParts?
IF OneToolAllParts? AND FullUp?
DoOpComments
OpenMP1T
ELSE
IF AllToolsOnePart?
CallMPAT {has DoOpComments}
ELSE
DoOpComments
END
END
ELSE
DoOpComments
END
IF FirstPart?
Seq OpToolID EOL
CheckPass
Seq AbsOrInc StrtPos 'Z' ClearancePlane1# EOL
IF MultipleParts? AND OneToolAllParts? AND ExitClearancePlane?
OpenMP1T
END
END {end firstPart?}
ELSE
IF NewTool?
IF FirstPart?
IF MultipleParts? AND OneToolAllParts? AND ExitClearancePlane?
CloseMP1T
END
Seq 'T0' EOL
DoEndOpPS
END {end firstPart?}
IF MultipleParts?
IF OneToolAllParts? AND FullUp?
Seq 'Z' TCZ# EOL
CloseMP1T
IF ToolChangeAtHome?
Seq Rapid Home EOL
END
ELSE
IF AllToolsOnePart?
IF FirstPart?
Seq 'Z' TCZ# EOL
IF ToolChangeAtHome?
Seq Rapid Home EOL
END
RetMPAT
END {end firstPart?}
ELSE
Seq 'Z' TCZ# EOL
IF ToolChangeAtHome?
Seq Rapid Home EOL
END
END
END
ELSE
DoPostScript
Seq 'Z' TCZ# EOL
IF ToolChangeAtHome?
Seq Rapid Home EOL
END
END
{Start new Operation}
IF MultipleParts?
IF OneToolAllParts? AND FullUp?
DoOpComments
IF LAST ProgStop?
Seq 'M00' EOL
ELSE
Seq ProgStop EOL
END
OpenMP1T
Seq OpToolID EOL
ELSE
IF AllToolsOnePart?
IF LAST ProgStop?
Seq 'M00' EOL
ELSE
Seq ProgStop EOL
END
CallMPAT {has DoOpComments}
IF FirstPart?
Seq OpToolID EOL
END {end firstPart?}
ELSE
Seq OpToolID EOL
DoOpComments
IF LAST ProgStop?
Seq 'M00' EOL
ELSE
Seq ProgStop EOL
END
END
END
ELSE
Seq OpToolID EOL
DoOpComments
IF LAST ProgStop?
Seq 'M00' EOL
ELSE
Seq ProgStop EOL
END
END
IF FirstPart?
CheckPass
Seq Plane Rapid StrtPos 'Z' ClearancePlane1# EOL {add plane}
IF MultipleParts? AND OneToolAllParts? AND ExitClearancePlane?
OpenMP1T
END
END {end firstPart?}
ELSE
IF SameTool? AND FirstPart?
DoEndOpPS
IF LAST ProgStop?
Seq OfstOff EOL
Seq 'G4' EOL
{Start new Operation}
DoOpComments
DoPostScript
CheckPass
Seq Plane Rapid StrtPos EOL {add plane}
Seq OfstOn EOL
ELSE
IF NewToolOffset?
Seq OfstOff EOL
{Start new Operation}
DoOpComments
DoPostScript
CheckPass
Seq Plane Rapid StrtPos EOL {add plane}
Seq OfstOn EOL
ELSE
{Start new Operation}
DoOpComments
DoPostScript
CheckPass
Seq Plane Rapid StrtPos EOL {add plane}
END
END
END
END
END
IF FirstPart?
IF Milling?
Seq ZCP2C EOL
IF Repeats?
IF ZshiftOnly?
IF AutoCycle? {incremental Autocycle sub can have Z moves}
ZonlyRepAutoCycle
ELSE {Z shift only, NOT Auto Cycle}
IF UseSeparateSubCalls? AND CyclesLessThanMaxSubCalls?
FindAnyZMoves {for normal abs subroutine}
IF NoZMoves?
ZonlyRep
ELSE
G92Sub {pattern shift, not element}
END
ELSE {no sep subs desired}
G92Sub
END
END {end Auto Cycle IF}
ELSE {not Z only}
G92Sub
END {end Z only IF}
ELSE {no repeat OPs}
Milling
END
IF AutoCycle?
Seq ZCP3C EOL
ELSE
IF FIFO? {.81}
Seq FeedC CRCOffC ZCP3C FeedRateC EOL
ELSE
Seq RapidC CRCOffC ZCP3C EOL
END
END
Seq 'G4' EOL
ELSE
IF Drilling?
IF Repeats?
SubWarning
IF MultipleParts? OR AnyZShift?
IF UseComments?
'( THIS REPEAT OP WILL BE LONGHAND DUE TO MULT PARTS OR Z SHIFT)' EOL
END
EachRep {can't nest origin shifts or origin shift Z}
IF NOT FirstCycle?
Seq Connect StrtPos EOL
END
ELSE
NewProg TagInc
EachRep
IF NOT FirstCycle?
Seq 'M1101' EOL
Seq 'X' CurOriginPosX# 'Y' CurOriginPosY# 'Z' ToolLength# EOL
END
Seq 'G29C' Tag# EOL
NextRep
StartSub
Seq AbsOrInc Connect StrtPos EOL
END
END
Seq DrillCP EOL
IF Tap?
NewProg TagInc
OpenSub
Seq 'G29S' Tag# EOL
Seq Feed ZDepth 'F' FeedEntry# EOL
Seq 'G4' EOL
Seq 'M4' EOL
Seq 'Z' ClearancePlane2# EOL
Seq 'G4' EOL
Seq 'M3' EOL
Seq Rapid EOL
Seq 'G29E' EOL
CloseSub
ToolPath
ELSE
GetCycle
{deleted drill info due to no Z axis drive}
ToolPath
END
IF Repeats?
IF MultipleParts? OR AnyZShift?
NextRep
ELSE
Seq 'G29E' EOL
CloseSub
Seq 'M1101' EOL
Seq 'X0Y0Z' ToolLength# EOL
END
END
Seq Rapid ZCP3C EOL
END
END
END
NextOp
IF FirstPart?
IF MultipleParts? AND OneToolAllParts? AND ExitClearancePlane?
CloseMP1T
END
Seq 'T0' EOL
DoEndOpPS
END {end firstPart?}
IF MultipleParts?
IF OneToolAllParts? AND FullUp?
Seq 'Z' TCZ# EOL
CloseMP1T
IF FIRST ToolChangeAtHome?
Seq Rapid FirstHome EOL
END
ELSE
IF AllToolsOnePart?
IF FirstPart?
Seq 'Z' TCZ# EOL
IF FIRST ToolChangeAtHome?
Seq Rapid FirstHome EOL
END
RetMPAT
END {end firstPart?}
ELSE
Seq 'Z' TCZ# EOL
IF FIRST ToolChangeAtHome?
Seq Rapid FirstHome EOL
END
END
END
ELSE
Seq 'Z' TCZ# EOL
IF FIRST ToolChangeAtHome?
Seq Rapid FirstHome EOL
END
END
IF ProgStop?
Seq 'M00' EOL
END
IF MultipleParts? AND AllToolsOnePart?
CloseMPAT
END
Seq EndSub 'E' EOL
Post
EOR EOL
Close
IF UseComments?
SetScale('1')
Reopen
IF FileBytesComment?
'( FILE LENGTH: ' FileBytes# ' CHARACTERS )' EOL
END
IF FileFeetComment?
'( FILE LENGTH: ' FileFeet# ' FEET )' EOL
END
IF FileMetersComment?
'( FILE LENGTH: ' FileMeters# ' METERS )' EOL
END
Close
END
Wyszukiwarka
Podobne podstrony:
Anilam Crusader II SM M987 81 4Anomatic II Anorad M406 81 3BP Boss 6 Ser II [NM] M549 81 3Anilam Ser 1400 Tree M727 81 2Anilam Crusader II G&C M995 89Anomatic II Anorad M406 81 3mYasnac MX2 Mat [SU] M563 81 2BP Boss 5 Series II M527 81 3Anilam 1100 [SU] M621 89Anilam Crusdr 2 [FB] M498 81 1Anilam 1400 [SU] M651 89BP Boss 6 Series II M289 81 3Fanuc 10M (AGA) M147 81 2Alchemia II Rozdział 8więcej podobnych podstron