Cin Acr [GH] MW97 89 2


{6/1/89
Modified; Cincinnati 900V2 (1) M099.54, for C G Richter.
Change "RapidC" to "Rapid" after Drilling.
Add "NullFoot" twice to beginning and twice to end of prog.
Changed "'( MSG" to "'(MSG".
Checked "Use Absolute Drill Depths" in Booleans.
Jim Radcliffe}

{9/6/89
Copied & modified: Cincinnati 900V2 (1) M099.55
For: Hughes T&CSD
Machine: Cincinnati Cintimatic 5VC-750
Control: Acramatic 900 V2
New processer from Manual and Customer requests.
Jim Radcliffe}
{9/15/89, add PostScript, JR}

{9/21/89
Copied & modified: Cin 5VC Acr 900V2 M238.56
For: Hughes T&CSD
Machine: Cincinnati Cintimatic 10VC
Control: Acramatic 900 MC
Added Probing Operation utilizing PostScript commands SetZSurf & OptCyc1.
Probing and setting of Z axis should be OK.
Needs method for X an Y axis.
Jim Radcliffe}
{10/11/89, modified operation comments, JR}

{12/5/89
Modified: Cin 10VC Acr 900MC M245.62
For: Hughes T&CSD
Machine: Cincinnati Cintimatic 10VC
Control: Acramatic 900 MC
Added PostScript for Coolant, Program Stop & Index.
Jim Radcliffe}

{3/29/90, Updated: Cin 10VC Acr 900MC M245.63 to .70.3 format, JR}

{7/24/90, Added InitProg globally to posts with this remark, DWB}
{7/24/90, Replaced all occurances of SetSRXYZero with SetSRXYtoSP, DWB}
{7/24/90, Deleted SetZSurf command at start of prog, DWB}
{12/14/90, Updated: Cin 10VC Acr 900MC M245.71 to .76.1 format, JR}

{12/20/90
Copied & modified: Cin 10VC Acr 900MC M245.76.1
For: Precision Machine
Control: Acramatic CNC-MC (Big Blue)
Machine: Cincinnati 10VC
Standard comments.
Deleted Probing.
Standard tool identification.
Deleted ToolOfst, automaticaly called & used when the tool is loaded.
Deleted CRC stuff, this processor requires vectors.
Jim Radcliffe}

{4/03/91
Modified: Cin 10VC (Big Blue) M381.76.1
For: Gibbs & Associates
Updated to Version 4.0 per Fanuc 6M M001.80 Format.
DWB}

{01/03/92
Copied & Modified: Cin 10VC Big Blue M381.79
For: Gibbs & Associates
Added P & Q vectoring for cutter compensation.
Updated to Version 4.0 per Fanuc 6M M001.81 Format.
Kim Michelman}

{5/19/92
Copied & Modified: Cin 10VC Big Blue M381.81.1
For: Precision Machine (Irv Eden)
Removed the SeqLabC from the comments.
Changed the post to output longhand, removing sub calls. (Followed
the Fanuc 5M M015.79 Format)

Kim Michelman}

{7/14/93
Modified: Cin 10VC Big Blue M381.81.2
For: PME
Misc Update corrections
Jim Radcliffe}

{5/1/96
Initial: Cin 10VC Big Blue M381.81.3
Created: Cin Big Blue [OI] M994.81.3
ForUser: CIM Solutions / Omega Industries, Inc.
Control: Cincinnati Big Blue
Machine: Cincinnati
Develop: ComPost 4.21.34, Catalyst68K v3.04C
Comment: New Processor per marked up readout from and conversation with Dwight
Deleted first line of program that outputs time and date.
Added 'MSG,' to begin comments.
Changed default coolant to Mist.
Changed EOP from M30 to M02.
Jim Radcliffe}

{6/3/96, Updated Cin Big Blue [OI] M994.81.3 to .89 format per Fanuc 6M NoSubs M877.89, JR}

{1/16/98
Copied: Cin Big Blue [OI] M994.89
Created: Cin Acr [GH] MW97.89
For: General Hone Corporation
Machine: Cincinatti
Control: Acramatic
Versions: Catalyst v4.21.30(mac)/ComPost2 1.1b3
Changes made per Dave Kauffman of General Hone Corporation, phone calls, MW97.89 Test.VNC.
Changed Sequence Lable from N? to N in Compost2 General Info Dialog.
Changed FORMAT for T from #######0 to ######00 in Compost2 Default Format Dialog.
Changed all occurances of SeqLabC to SeqLabC.
Deleted Retag at end of Prog.
Deleted support of Vectors for CutterRadiusCompensation.
Customer stated that control does not support any type of CRC.
Deleted GetVector sub.
Changed all calls to GetVector sub to MoveXYZC.
Deleted SetMaxVec('3.2767') at setup and initializations.
Deleted Approach sub.
Moved output of ZCP1 for Milling Operations to FirstOperation, NewTool and SameTool.
Moved output of Drilling Cycle block and ZCP2 for Peck Cycles to IF Drilling.
Deleted CheckPreTool sub.
Changed CheckSpinOn sub.
Changed CoolOff section from literal M03/M04 to SpinOn.
Changed literal M17 to M13.
Changed literal M18 to M14.
Changed Spindle Forward to M03 in Compost2 Spindle and Coolant Dialog.
Changed Spindle Reverse to M04 in Compost2 Spindle and Coolant Dialog.
Changed literal 'O?' to 'N' Operation# '00' at FirstOperation, NewTool and SameTool.
Added 'N' Operation# '00' EOL at FirstOperation and NewTool for MultipleParts Programs.
Added literal 'X0Y80000', constant ToolChng Position for NOT ToolChangeAtHome at FirstOperation,
NewTool, SameTool and FinishLastOp.
Deleted literal 'G70' at FirstOperation.
Deleted all occurances of AbsOrInc except at end of CutAutoCycle sub.
Added SetAbs at setup and initializations.
Changed MoveType$ to literal 'ABSOLUTE' at FirstOperation.
Added CoolOff to ToolChangeAtHome at NewTool, SameTool and FinishLastOp.
Made other changes per customer requests.
DWB}

{2/2/98
Modified: Cin Acr [GH] MW97.89
Created: Cin Acr [GH] MW97.89.1
For: General Hone Corporation
Versions: Catalyst v4.21.30(mac)/ComPost2 1.1b3
Changes made per Dave Kauffman of General Hone Corporation, phone calls, fax.
Modified ToolChngAtHome blocks at FirstOperation, FirstOperation and NewTool of DoOp sub.
IF ToolChngAtHome = TRUE:
Post will output RapidC 'Y' HomeY# CoolOff followed by 'X' HomeX# 'Z0'.
IF ToolChngAtHome = FALSE:
Post will output RapidC 'Y80000' CoolOff followed by 'X0Z0'.
Modified FIRST ToolChngAtHome blocks at FinishLastOp sub.
IF FIRST ToolChngAtHome = TRUE:
Post will output RapidC 'Y' FIRST HomeY# CoolOff followed by 'X' FIRST HomeX# 'Z0'.
IF FIRST ToolChngAtHome = FALSE:
Post will output RapidC 'Y80000' CoolOff followed by 'X0Z0'.
DWB}

{2/11/98
Modified: Cin Acr [GH] MW97.89.1
Created: Cin Acr [GH] MW97.89.2
For: General Hone Corporation
Versions: Catalyst v4.21.30(mac)/ComPost2 1.1b3
Changes made per Dave Kauffman of General Hone Corporation, phone calls.
Added ProgID1 at FirstOperation.
Customer requested that all Line Numbers be based on Operation#.
Changed Sequence Label from N to N? in Compost2 General Info Dialog.
Changed all Seq/SeqC to SeqLab/SeqLabC throughout Prog.
Added SetOpLines sub.
Outputs 'Åš' Operation# '00' EOL
Added call to SetOpLines at FirstOperation, NewTool and SameTool.
Changed 'N' Operation# '00' EOL to SeqLab ' ' EOL at FirstOperation, NewTool and SameTool.
Changed 'N' Operation# '00' Rapid to SeqLab Rapid at FirstOperation and NewTool.
Added Close, Retag and Reopen at end of Prog.
DWB}

{Prog Numeric Format Definitions *******************************************}

#1 = '#.00'
#2 = '###^##0'
#3 = '*###^##0'
#4 = '###^###0'
#5 = '#0'
#6 = '#.0000'
#7 = '#'

FORMAT(FileFeet#,1)
FORMAT(FileMeters#,1)
FORMAT(TrackZ#,4)
FORMAT(HomeX#,4)
FORMAT(HomeY#,4)
FORMAT(Program#,5) {.72}
FORMAT(Operation#,5) {.72}
FORMAT(Parts#,5) {.72}
FORMAT(Tool#,5)
FORMAT(ToolDiameter#,6)
FORMAT(RapidF#,7)

{Prog Subroutines **********************************************************}

RestoreScale:
IF Metric? {CAM file is in Metric, tools and tool path}
SetScale('.03937007874') { change to English, this is an English post}
END
RETURN

SetOpLines:
'Åš' Operation# '00' EOL
RETURN

DoSubComment:
IF UseComments? AND SubComment?
'(MSG, CYCLE START )' EOL
END
RETURN

DoOpComments:
IF UseComments?
SetScale('1')
IF MultipleParts? AND SubComment?
'(MSG, PART ' Tag# ' )' EOL
END
IF OperationIDComment?
'(MSG, OPERATION ' Operation# ': ' OperationType$ ' )' EOL
END
IF OperationComment?
'(MSG, ' OperationComment$ ' )' EOL
END
IF WorkGroupComment?
'(MSG, ' WorkGroupComment$ ' )' EOL
END
IF ToolTypeComment?
'(MSG, TOOL ' Tool# ': ' ToolDiameter# ' ' ToolType$ ' )' EOL
END
IF ToolComment?
'(MSG, ' ToolComment$ ' )' EOL
END
RestoreScale
END
RETURN

PSInit: {reset flags}
RotateF
RETURN

PSStuff: {revised.72}
{see CheckIndexer for rotate stuff}
RETURN

DoPostScript:
PSInit
EachPS
SeqLabC PostScript EOL {literals}
PSStuff {commands}
NextPS
RETURN

DoEndOpPS:
PSInit
EachEOPS
SeqLabC EndOpPS EOL {literals}
PSStuff {commands}
NextPS
RETURN

ExitType:
IF FIFO?
FeedC
ELSE
RapidC
END
RETURN

ExitFeed:
IF FIFO?
FeedEntC
END
RETURN

FormatArc:
IF ArcCW?
CWArcC
ELSE
CCWArcC
END
MoveXYZC
IF ArcIJFormat?
ArcIJC
ELSE
ArcRC
END
RETURN

StdRapid:
IF XMove? OR YMove? OR ZMove?
SeqLabC RapidC MoveXYZC EOL
END
RETURN

StdLine: {enables CRC on first call, .70}
IF Decelerate?
IF RoomToDecel?
DecelMove1
SeqLabC FeedC MoveXYZC FeedRateC EOL
DecelMove2
END
SeqLabC FeedC MoveXYZC DecelFeed EOL
ELSE
IF XMove? OR YMove? OR ZMove?
SeqLabC FeedC MoveXYZC FeedRateC EOL
END
END
RETURN

StdArc:
EACHQuadrant
IF LastQuadrant? AND Decelerate?
IF RoomToDecel?
DecelMove1
SeqLabC FormatArc ArcFeedC EOL
DecelMove2
END
SeqLabC FormatArc DecelFeed EOL
ELSE
SeqLabC FormatArc ArcFeedC EOL
END
NEXTQuadrant
RETURN

ToolPath2: {for AutoCycle element moves}
EACHFeat
IF RapidFeat?
IF LastFeat?
SeqLabC RapidC MoveXYZC EOL
ELSE
StdRapid
END
ELSE
IF LineFeat?
IF LastFeat?
SeqLabC FeedC MoveXYZC FeedRateC EOL
ELSE
IF ZMove? {skip CRCOn until first non-Z move line, skipping ramps}
SeqLabC FeedC MoveXYZC FeedRateC EOL
ELSE
StdLine {enables CRC on first call}
END
END
ELSE
IF ArcFeat?
StdArc
END
END
END
NEXTFeat
RETURN

EntryMove:
IF FeedEntry?
SeqLabC FeedC ZInC FeedEntC EOL
ELSE
SeqLabC RapidC ZInC EOL
END
RETURN

CutAutoCycle:
SaveSubStatus {save tool position}
SetPass1 {element cut moves}
SetSRXYtoSP
SeqLabC IncValue EOL
IF Repeats? AND ZshiftOnly?
EachRep
IF NOT FirstCycle?
IF SPXMove? OR SPYMove?
IF FeedConnect?
SeqLabC FeedC StrtPosC EOL
ELSE
SeqLabC RapidC StrtPosC EOL
END
END
END
EntryMove
ToolPath2
IF NOT FeedConnect?
SeqLabC ExitType PRIME ZCP2 ExitFeed EOL
END
NextRep
ELSE
EntryMove
ToolPath2
END
SeqLabC AbsOrInc ExitType ZCP2 ExitFeed EOL
SetSRSubXY {restore tool position}
SetSRSubMove
ReSetPass2 {restore for positioning moves}
RETURN

DoPeck:
IF NOT Flag?('2')
IF GreaterThan? SUB# Recall# Num#('4') Peck# SPZ#
Save# Num#('4') SUB# Recall# Num#('4') Peck#
SeqLabC Feed 'Z' TrackZ# Recall# Num#('4') FeedEntC EOL
IF PeckFullRetract?
SeqLabC Rapid ZCP2 EOL
END
SeqLabC RapidC 'Z' TrackZ# ADD# Recall# Num#('4') Retract# EOL
ELSE
SeqLabC Feed 'Z' TrackZ# SPZ# FeedEntC EOL
IF RetractToCP1?
SeqLabC Rapid ZCP1 EOL
ELSE
SeqLabC Rapid ZCP2 EOL
END
SetFlag('2')
END
END
RETURN

ToolPath:
EACHFeat
IF PointFeat?
IF AutoCycle?
IF NOT FirstFeat?
SeqLabC
IF FIFO?
Rapid
END
MoveSXYC EOL
END
CalcACSRXY {calc tool position after sub call, CalcAutoCycleStatusRecordXY}
CutAutoCycle
ELSE
IF Peck?
SeqLabC RapidC MoveSXYC EOL
SeqLabC ZCP2C EOL
SetFlagF('2')
Save# Num#('4') ClearancePlane2#
DoPeck DoPeck DoPeck DoPeck DoPeck DoPeck DoPeck DoPeck DoPeck DoPeck
DoPeck DoPeck DoPeck DoPeck DoPeck DoPeck DoPeck DoPeck DoPeck DoPeck
DoPeck DoPeck DoPeck DoPeck DoPeck DoPeck DoPeck DoPeck DoPeck DoPeck
DoPeck DoPeck DoPeck DoPeck DoPeck DoPeck DoPeck DoPeck DoPeck DoPeck
DoPeck DoPeck DoPeck DoPeck DoPeck DoPeck DoPeck DoPeck DoPeck DoPeck
DoPeck DoPeck DoPeck DoPeck DoPeck DoPeck DoPeck DoPeck DoPeck DoPeck
DoPeck DoPeck DoPeck DoPeck DoPeck DoPeck DoPeck DoPeck DoPeck DoPeck
DoPeck DoPeck DoPeck DoPeck DoPeck DoPeck DoPeck DoPeck DoPeck DoPeck
DoPeck DoPeck DoPeck DoPeck DoPeck DoPeck DoPeck DoPeck DoPeck DoPeck
DoPeck DoPeck DoPeck DoPeck DoPeck DoPeck DoPeck DoPeck DoPeck DoPeck
ELSE
SeqLabC MoveSXYC EOL
END
END
ELSE
IF RapidFeat?
StdRapid
ELSE
IF LineFeat?
StdLine
ELSE
IF ArcFeat?
StdArc
END
END
END
END
NEXTFeat
RETURN

CheckPass:
IF AutoCycle? {use the correct StrtPos}
SetPass2
ELSE
SetPass1
END
RETURN

CheckSpinOn: {turns on spindle and coolant}
IF CoolOff?
SpinOn
ELSE
IF CWSpindle?
'M13'
ELSE
'M14'
END
END
RETURN

CheckIndexer:
IF FourthCW?
FORMAT(FourthDegree#,2)
'B' FourthDegree#
FourthCWF {reset flag}
END
IF FourthCCW?
FORMAT(FourthDegree#,3)
'B' FourthDegree#
FourthCCWF {reset flag}
END
RETURN

DoOp:
IF FirstOperation?
SetOpLines
IF MultipleParts? AND OneToolAllParts? AND NOT FirstPart?
SeqLab ' ' EOL
DoOpComments
ELSE
DoOpComments
SeqLab Rapid
IF ToolChangeAtHome?
Home
ELSE
'X0Y80000'
END
EOL
SeqLabC OpToolID ToolChng EOL
SeqLabC Plane EOL
DoPostScript
END
CheckPass
IF MultipleParts? AND OneToolAllParts? AND NOT FirstPart?
SeqLabC StrtPos EOL
ELSE
SeqLabC StrtPos CheckIndexer Speed CheckSpinOn EOL
IF Milling?
SeqLabC ZCP1 EOL
END
END
ELSE
IF NewTool?
IF MultipleParts? AND OneToolAllParts? AND NOT FirstPart?
{only need to set up for tool change on 1st part}
ELSE
DoEndOpPS
IF ToolChangeAtHome?
SeqLabC RapidC 'Y' HomeY# CoolOff EOL
SeqLabC 'X' HomeX# 'Z0' EOL
ELSE
SeqLabC RapidC 'Y80000' CoolOff EOL
SeqLabC 'X0Z0' EOL
END
IF LAST ProgStop?
SeqLabC 'M00' EOL
ELSE
SeqLabC ProgStop EOL
END
END

{Start new Operation}

SetOpLines
IF MultipleParts? AND OneToolAllParts? AND NOT FirstPart?
SeqLab ' ' EOL
DoOpComments
ELSE
SeqLab Rapid OpToolID ToolChng EOL
DoOpComments
SeqLabC PlaneC EOL
DoPostScript
END
CheckPass
IF MultipleParts? AND OneToolAllParts? AND NOT FirstPart?
SeqLabC StrtPos EOL
ELSE
SeqLabC StrtPos CheckIndexer Speed CheckSpinOn EOL
IF Milling?
SeqLabC ZCP1 EOL
END
END
ELSE
IF SameTool?
DoEndOpPS
IF LAST ProgStop?
IF ToolChangeAtHome?
SeqLabC RapidC 'Y' HomeY# CoolOff EOL
SeqLabC 'X' HomeX# 'Z0' EOL
ELSE
SeqLabC RapidC 'Y80000' CoolOff EOL
SeqLabC 'X0Z0' EOL
END
SeqLabC 'M00' EOL
ELSE
IF CoolOff? AND LAST NOT CoolOff?
SeqLabC CoolOff EOL
END
END

{Start new Operation}

SetOpLines
SeqLab ' ' EOL
DoOpComments
SeqLabC PlaneC EOL
DoPostScript
CheckPass
SeqLabC Rapid StrtPos CheckIndexer Speed CheckSpinOn EOL
IF LAST ProgStop?
IF Milling?
SeqLabC ZCP1 EOL
END
END
END
END
END

{ Common Point for All Operations }

ResetCRCNum {call here to reset for each new operation only, call in tool path to reset for each repeat in an operation}
RapidF# {forces the output of a conditional feedrate for each operation}

IF Milling?
SeqLabC ZCP2C EOL
IF Repeats?
IF ZshiftOnly? AND AutoCycle?
{done in CutAutoCycle called from ToolPath}
ELSE
EACHRep
DoSubComment
IF NOT FirstCycle?
SeqLabC Connect StrtPos EOL
IF NOT FeedConnect?
SeqLabC ZCP2C EOL
END
END
END
END
IF NOT AutoCycle?
EntryMove
END
ToolPath
IF Repeats?
IF ZshiftOnly? AND AutoCycle?
{done in CutAutoCycle called from ToolPath}
ELSE
SeqLabC CRCOffC
IF NOT FeedConnect?
ExitType PRIME ZCP3C
END
ExitFeed EOL
NEXTRep
END
END
IF AutoCycle?
SeqLabC ZCP3C EOL
ELSE
SeqLabC CRCOffC ExitType ZCP3C ExitFeed EOL
END
ELSE
IF Drilling?
GetCycle
IF Peck?
SeqLabC ZCP2 EOL
ELSE
IF FIFO? AND Dwell?
'G89'
ELSE
Cycle
END
SeqLabC ZDepth RLevelCin FeedEnt EOL
END
IF Repeats?
EACHRep
DoSubComment
END
IF Peck?
ToolPath
ELSE
TrackZNO# ZDepth# {.81}
ToolPath
IF RetractToCP1? {.81}
TrackZNO# ClearancePlane1#
ELSE
TrackZNO# ClearancePlane2#
END
SeqLabC DrillOff EOL
END
IF Repeats?
NEXTRep
END
SeqLabC Rapid ZCP3 EOL
END
END
RETURN

FinishLastOp:
DoEndOpPS
IF FIRST ToolChangeAtHome?
SeqLabC RapidC 'Y' FIRST HomeY# CoolOff EOL
SeqLabC 'X' FIRST HomeX# 'Z0' EOL
ELSE
SeqLabC RapidC 'Y80000' CoolOff EOL
SeqLabC 'X0Z0' EOL
END
IF MultipleParts? AND AllToolsOnePart? AND NOT LastPart? {no tool change after doing last part}
IF LAST ProgStop?
SeqLabC 'M00' EOL
ELSE
SeqLabC ProgStop EOL
END
ELSE
SeqLabC EOP EOL
END
RETURN

DoToolsOps:
EachOp
IF GTEqual? Operation# Recall# Num#('1') AND LTEqual? Operation# Recall# Num#('2')
{Tools1stOp ² op ² ToolsLastOp}
DoOp
END
NextOp
RETURN

NextTools1stOp:
SetNextToolOp Operation#
RETURN

GetToolsOps:
EachOp
IF Equal? Operation# Recall# Num#('1') {if op = Tools1stOp}
IF GreaterThan? NextTools1stOp Recall# Num#('1') {if NextTools1stOp is greater Tools1stOp}
Save# Num#('2') SUB# NextTools1stOp Num#('1') {ToolsLastOp becomes NextTools1stOp less 1}
ELSE {else}
Save# Num#('2') Recall# Num#('3') {ToolsLastOp becomes ncCAMsLastOp}
END
END
NextOp
RETURN

DoTool:
IF NOT Flag?('1')
GetToolsOps
EachPart
TagInc
DoToolsOps
NextPart
IF LessThan? Recall# Num#('2') Recall# Num#('3') {if ToolsLastOp < ncCAMsLastOp}
Save# Num#('1') ADD# Recall# Num#('2') Num#('1') {Tools1stOp becomes NextTools1stOp}
ELSE {else}
SetFlag('1') {set DoneFlag}
END
TagInit
END
RETURN

{Start of executable Prog **************************************************}

{setup and initializations}
InitProg
SetAbs
TagInit
SetFlagF('1') {multiple parts done flag}
SetFlagF('2') {pecking done flag}
ReverseXZArcs
SetFlood
SetMaxRPM('10000')
SetMaxFeed('500')
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
' Use Literals to specify a Spindle Rotate for probing operations.' 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
' MistCoolant, MCool' EOL
' This is a non-modal command affecting the current operation only.' EOL
' Turns on the spindle with mist coolant.' EOL
' SetMist, SM' EOL
' This is a modal command affecting all operations.' EOL
' Turns on the spindle with mist coolant.' EOL
' FloodCoolant, FCool' EOL
' This is a non-modal command affecting the current operation only.' EOL
' Turns on the spindle with mist coolant.' EOL
' Flood is the default setting.' EOL
' SetFlood, SF' EOL
' This is a modal command affecting all operations.' EOL
' Turns on the spindle with flood coolant.' EOL
' This is the default setting.' EOL
' 4thAxisCW(12.5), 4ACW(12.5) -' EOL
' This is a non-modal command affecting the current operation only.' EOL
' generates a + B move of the value you specify' EOL
' 4thAxisCCW(22.5), 4ACCW(22.5) -' EOL
' This is a non-modal command affecting the current operation only.' EOL
' generates a - B move of the value you specify' EOL
END
EachOp {Start of post processing *********************}
IF FirstOperation?
EOR EOL
ProgID1 EOL
IF UseComments?
IF ProgramNameComment?
'(MSG, PROGRAM: ' ProgramName$ ' )' EOL
END
IF ProgramComment?
'(MSG, ' ProgramComment$ ' )' EOL
END
IF FormatNameComment?
'(MSG, FORMAT: ' FormatName$ ' )' EOL
END
IF TimeComment?
'(MSG, ' Date$ ' AT ' Time$ ' )' EOL
END
IF MovesComment?
'(MSG, OUTPUT IN ABSOLUTE INCHES )' EOL
END
IF PartsComment?
'(MSG, PARTS PROGRAMMED: ' Parts# ' )' EOL
END
IF StartToolComment?
'(MSG, FIRST TOOL NOT IN SPINDLE )' EOL
END
END
IF ToolChangeAtHome?
SetHome
END
OpenSub
RestoreScale
END
NextOp
IF MultipleParts?
IF AllToolsOnePart?
EachPart
TagInc
EachOp
DoOp
NextOp
FinishLastOp
NextPart
ELSE
IF OneToolAllParts?
EachOp
IF FirstOperation?
Save# Num#('1') Operation# {ncCAMs1stOp becomes Tools1stOp}
END
IF LastOp?
Save# Num#('3') Operation# {save ncCAMsLastOp}
END
NextOp
DoTool DoTool DoTool DoTool DoTool DoTool DoTool DoTool DoTool DoTool
DoTool DoTool DoTool DoTool DoTool DoTool DoTool DoTool DoTool DoTool
DoTool DoTool DoTool DoTool DoTool DoTool DoTool DoTool DoTool DoTool
DoTool DoTool DoTool DoTool DoTool DoTool DoTool DoTool DoTool DoTool
DoTool DoTool DoTool DoTool DoTool DoTool DoTool DoTool DoTool DoTool
FinishLastOp
END
END
ELSE
EachOp
DoOp
NextOp
FinishLastOp
END
EOR EOL
CloseSub
Post2
Close
Retag
IF UseComments?
SetScale('1')
Reopen
IF FileBytesComment?
'(MSG, FILE LENGTH: ' FileBytes# ' CHARACTERS )' EOL
END
IF FileFeetComment?
'(MSG, FILE LENGTH: ' FileFeet# ' FEET )' EOL
END
IF FileMetersComment?
'(MSG, FILE LENGTH: ' FileMeters# ' METERS )' EOL
END
END
Close


Wyszukiwarka

Podobne podstrony:
Cin Acr 850MC M196 89
Cin Acr 900V2 [KM] MT25 89
Cin Acr A8D 7VT1000 MY96 89
Cin Acr 850SX [WI] M598 89
Cin Acr 900 [CKC] M818 89
Cin Acr 850MC (AMP) M692 89
Cin Acr 900 [MS] MZ14 89
Cin Acr 900 HMC [TC] MU35 89
Cin Acr 850MC MC M311 89
Cin Acr 850SX Sabre PM689 17 3
Cin Acr CNC TC [12] L273 85 1
Cin Acr 850 SX [WF] L592 85
Cin Acr 950HMC [T40] CW32 15
Cin Acr 850 SX L315 85
Cin Acr 850MC [VTF] M328 15 1

więcej podobnych podstron