BEGIN PGM 265 MM 
Q200 = ABS Q200
Q204 = ABS Q204
Q207 = ABS Q207
Q253 = ABS Q253
Q335 = ABS Q335
Q359 = ABS Q359
Q360 = ABS Q360
;Massfaktor abfragen
FN 18: SYSREAD Q0 = ID210 NR4 IDX1
FN 10: IF +Q0 NE +1 GOTO LBL 205
FN 18: SYSREAD Q0 = ID210 NR4 IDX2
FN 10: IF +Q0 NE +1 GOTO LBL 205
FN 18: SYSREAD Q0 = ID210 NR4 IDX3
FN 10: IF +Q0 NE +1 GOTO LBL 205
FN 9: IF +0 EQU +0 GOTO LBL 204
LBL 205
FN 14: ERROR= 1007
LBL 204
FN 17: SYSWRITE ID 212 =+3
QL0 = ( Q335 - Q239 ) / 2 ; Gewindekernradius
FN 12: IF +Q108 LT +QL0 GOTO LBL "THREAD_CORE_OK"
FN 14: ERROR= 1003
LBL "THREAD_CORE_OK"
DECLARE STRING QS30
QS30 = SYSSTR( ID10025 NR1 )
DECLARE STRING QS31 = "CfgGeoCycle"
DECLARE STRING QS32 = "displaySpindleErr"
Q0 = CFGREAD( KEY_QS30 TAG_QS31 ATR_QS32 )
FN 9: IF +Q0 EQU +0 GOTO LBL 111
FN 9: IF +Q110 EQU +1 GOTO LBL 111
FN 9: IF +Q110 EQU +0 GOTO LBL 111
FN 14: ERROR= 1000
LBL 111
FN 18: SYSREAD Q25 = ID200 NR1
DECLARE STRING QS32 = "displayDepthErr"
Q2 = CFGREAD( KEY_QS30 TAG_QS31 ATR_QS32 )
FN 9: IF +Q2 EQU +0 GOTO LBL 206
FN 11: IF +Q201 GT +0 GOTO LBL 207
FN 12: IF +Q358 LT +0 GOTO LBL 206
FN 9: IF +Q358 EQU +0 GOTO LBL 206
LBL 207
FN 14: ERROR= 1077
LBL 206
FN 10: IF +Q109 NE -1 GOTO LBL 198
FN 14: ERROR= 1001
LBL 198
FN 9: IF +Q358 EQU +0 GOTO LBL "Check_OFFS_SINK"
FN 11: IF +Q359 GT +0 GOTO LBL "Check_OFFS_SINK"
FN 14: ERROR= 1118
LBL "Check_OFFS_SINK"
FN 9: IF +Q201 EQU +0 GOTO LBL 253
Q358 = ABS Q358 * ( - 1 )
FN 12: IF +Q201 LT +0 GOTO LBL 197
Q358 = ABS Q358
FN 9: IF +0 EQU +0 GOTO LBL 195
LBL 253
FN 9: IF +Q358 EQU +0 GOTO LBL 254
FN 12: IF +Q358 LT +0 GOTO LBL 197
LBL 195
FN 0: Q30 =-1
FN 9: IF +0 EQU +0 GOTO LBL 194
LBL 197
FN 0: Q30 =+1
LBL 194
CALL LBL 4
FN 18: SYSREAD Q196 = ID210 NR3
FN 17: SYSWRITE ID 210 NR3 =+0
Q19 = Q203 + Q200
Q21 = ABS Q200
Q22 = ABS Q204
FN 11: IF +Q21 GT +Q22 GOTO LBL 2
Q19 = Q203 + Q204
LBL 2
Q20 = Q203 + Q200
Q24 = Q203 + Q201
Q13 = Q203 + Q358
Q37 = Q254
FN 18: SYSREAD Q25 = ID200 NR1
Q26 = Q335 / 2 ; GEW.-RADIUS 
Q29 = ABS ( Q239 / 2 ) ; EINFAHR-R. 
Q27 = Q26 - Q25 - Q29 ; CCX-VERSATZ 
Q28 = Q29 + Q25 ; PR 
FN 0: Q35 =+1
Q33 = ABS ( Q201 / Q239 )
Q34 = FRAC Q33
Q35 = INT Q33
Q36 = ( ABS Q239 ) * Q30 ; VERSATZ IN Z 
FN 9: IF +Q34 EQU +0 GOTO LBL 10
Q35 = Q35 + 1
LBL 10
Q23 = Q24 + ABS Q239 * Q30
FN 9: IF +Q35 EQU +1 GOTO LBL 26
Q23 = Q24 + ( Q35 - 1 ) * Q36 + ABS Q239 * Q30
LBL 26
FN 9: IF +Q109 EQU +0 GOTO LBL 230
FN 9: IF +Q109 EQU +6 GOTO LBL 230
FN 9: IF +Q109 EQU +1 GOTO LBL 231
FN 9: IF +Q109 EQU +7 GOTO LBL 231
FN 9: IF +Q109 EQU +2 GOTO LBL 232
FN 9: IF +Q109 EQU +8 GOTO LBL 232
LBL 230
FN 18: SYSREAD Q31 = ID270 NR1 IDX2
FN 18: SYSREAD Q32 = ID270 NR1 IDX3
FN 9: IF +0 EQU +0 GOTO LBL 233
LBL 231
FN 18: SYSREAD Q31 = ID270 NR1 IDX3
FN 18: SYSREAD Q32 = ID270 NR1 IDX1
FN 9: IF +0 EQU +0 GOTO LBL 233
LBL 232
FN 18: SYSREAD Q31 = ID270 NR1 IDX1
FN 18: SYSREAD Q32 = ID270 NR1 IDX2
LBL 233
CC  X+Q31  Y+Q32
L  Z+Q20 R0 FMAX
FN 9: IF +Q360 EQU +1 GOTO LBL 35
LBL 34 ; SENKEN STIRNSEITE 
FN 9: IF +Q358 EQU +0 GOTO LBL "END_Sinking"
Q14 = Q359 / 2
Q15 = Q31 - Q14
L  Z+Q13 R0 FQ37 M110
CC  X+Q15 IY+0
CP  PA+180 DR+ FQ254
CC  X+Q31  Y+Q32
CP IPA+360 DR+
CC  X+Q15 IY+0
CP  PA+0 DR+
CC  X+Q31  Y+Q32
LP  PR+0  PA+0 R0 FQ253 M111
LBL "END_Sinking"
LBL 0
LBL 35
FN 9: IF +Q201 EQU +0 GOTO LBL 99
FN 12: IF +Q239 LT +0 GOTO LBL 20
FN 3: Q239 =+Q239 * +Q30
; Gegenlauf Rechtsgewinde GF 
; Z- DR- RR 
CC IX-Q27 IY+0
L  Z+Q23 R0 FQ253 M110
APPR PCT  PR+Q28  PA+180  CCA90 R+Q29 RR FQ207
CC  X+Q31  Y+Q32
LBL 32
CP IPA-360 IZ-Q239 DR- FQ207
Q35 = Q35 - 1
FN 11: IF +Q35 GT +0 GOTO LBL 32
CC IX-Q27 IY+0
DEP CT  CCA90 R+Q29 FQ207
CC  X+Q31  Y+Q32
LP  PR+0  PA+0 R0 FQ253 M111
FN 9: IF +0 EQU +0 GOTO LBL 99
LBL 20
FN 3: Q239 =+Q239 * +Q30
; Gleichlauf Linksgewinde GF 
; Z- DR+ RL 
CC IX-Q27 IY+0
L  Z+Q23 R0 FQ253 M110
APPR PCT  PR+Q28  PA+180  CCA90 R+Q29 RL FQ207
CC  X+Q31  Y+Q32
LBL 36
CP IPA+360 IZ+Q239 DR+ FQ207
Q35 = Q35 - 1
FN 11: IF +Q35 GT +0 GOTO LBL 36
CC IX-Q27 IY+0
DEP CT  CCA90 R+Q29 FQ207
CC  X+Q31  Y+Q32
LP  PR+0  PA+0 R0 FQ253 M111
LBL 99
FN 9: IF +Q360 EQU +0 GOTO LBL 28
Q37 = Q253
CALL LBL 34
LBL 28
L  Z+Q20 R0 FMAX
FN 3: Q239 =+Q239 * +Q30
L  Z+Q19 R0 FMAX
LBL 4
FN 3: Q200 =+Q200 * +Q30
FN 3: Q204 =+Q204 * +Q30
LBL 0
FN 17: SYSWRITE ID 210 NR3 =+Q196
LBL 254
END PGM 265 MM 
