0  BEGIN PGM 402 MM
1  FN 18: SYSREAD Q0 = ID2000 NR10 IDX4158
2  FN 9: IF +Q0 EQU +1 GOTO LBL 254
3  FN 18: SYSREAD Q0 = ID990 NR2 IDX16
4  FN 9: IF +Q0 EQU +0 GOTO LBL 254
5  Q320 = ABS Q320  
6  Q301 = ABS Q301  
7  FN 10: IF +Q109 NE -1 GOTO LBL 100
8  FN 14: ERROR = 1001
9  LBL 100
10  FN 18: SYSREAD Q0 = ID210 NR3
11  FN 9: IF +Q0 EQU +0 GOTO LBL 101
12  FN 14: ERROR = 1008
13  LBL 101
14  FN 18: SYSREAD Q0 = ID210 NR4 IDX1
15  FN 18: SYSREAD Q1 = ID210 NR4 IDX2
16  FN 18: SYSREAD Q2 = ID210 NR4 IDX3
17  Q0 = Q0 + Q1 + Q2  
18  FN 9: IF +Q0 EQU +3 GOTO LBL 102
19  FN 14: ERROR = 1007
20  LBL 102
21  FN 18: SYSREAD Q0 = ID210 NR6
22  FN 10: IF +Q0 NE -1 GOTO LBL 103
23  FN 14: ERROR = 1006
24  LBL 103
25  FN 17: SYSWRITE ID212 = +3
26  FN 17: SYSWRITE ID990 NR1 = +1
27  FN 17: SYSWRITE ID990 NR2 = +1
28  FN 17: SYSWRITE ID210 NR1 = +0
29  FN 18: SYSREAD Q3 = ID1000 NR6140
30  FN 18: SYSREAD Q1 = ID1010 NR6200
31  FN 9: IF +Q1 EQU +0 GOTO LBL 13
32  FN 18: SYSREAD Q1 = ID1000 NR6200
33  FN 9: IF +Q1 EQU +1 GOTO LBL 10
34  LBL 13
35  FN 18: SYSREAD Q2 = ID350 NR11
36  FN 18: SYSREAD Q58 = ID1000 NR6120
37  FN 18: SYSREAD Q59 = ID1000 NR6150
38  FN 9: IF +0 EQU +0 GOTO LBL 11
39  LBL 10
40  FN 18: SYSREAD Q2 = ID350 NR31
41  FN 18: SYSREAD Q58 = ID1000 NR6360
42  FN 18: SYSREAD Q59 = ID1000 NR6361
43  LBL 11
44  FN 18: SYSREAD Q0 = ID1000 NR7411
45  ; Q0 = 2 * FRAC (Q0 / 2)  
46  FN 9: IF +Q0 EQU +0 GOTO LBL 14
47  FN 18: SYSREAD Q2 = ID200 NR1
48  Q2 = ABS Q2  
49  LBL 14
50  FN 10: IF +Q0 NE +0 GOTO LBL 15
51  FN 17: SYSWRITE ID990 NR3 = +1
52  LBL 15
53  Q320 = Q320 + Q2 + Q3  
54  Q19 = (Q313 / 2) + Q320  
55  Q20 = (Q314 / 2) + Q320  
56  ; ** 1. Zapfen *************  
57  FN 12: IF +Q261 LT +Q260 GOTO LBL 130
58  FN 14: ERROR = 1016
59  LBL 130
60  FN 1: Q1 = +Q109 + +1
61  FN 18: SYSREAD Q0 = ID270 NR1 IDXQ1
62  FN 11: IF +Q0 GT +Q260 GOTO LBL 120
63  L Z+Q260 R0 FQ59
64  LBL 120
65  CC X+Q268 Y+Q269
66  LP PR+Q19 PA+0 R0 FQ59
67  TCH PROBE 0.0 BEZUGSEBENE Q0 X-
68  TCH PROBE 0.1 Z+Q261
69  CALL LBL 253
70  FN 0: Q1 = +Q141
71  FN 0: Q2 = +Q142
72  FN 9: IF +Q301 EQU +0 GOTO LBL 20
73  L Z+Q260 R0 FQ59
74  LBL 20
75  CP IPA+90 DR+ R0 FQ59
76  TCH PROBE 0.0 BEZUGSEBENE Q0 Y-
77  TCH PROBE 0.1 Z+Q261
78  CALL LBL 253
79  FN 0: Q3 = +Q141
80  FN 0: Q4 = +Q142
81  FN 9: IF +Q301 EQU +0 GOTO LBL 21
82  L Z+Q260 R0 FQ59
83  LBL 21
84  CP IPA+90 DR+ R0 FQ59
85  TCH PROBE 0.0 BEZUGSEBENE Q0 X+
86  TCH PROBE 0.1 Z+Q261
87  CALL LBL 253
88  FN 0: Q5 = +Q141
89  FN 0: Q6 = +Q142
90  FN 9: IF +Q301 EQU +0 GOTO LBL 22
91  L Z+Q260 R0 FQ59
92  LBL 22
93  CP IPA+90 DR+ R0 FQ59
94  TCH PROBE 0.0 BEZUGSEBENE Q0 Y+
95  TCH PROBE 0.1 Z+Q261
96  CALL LBL 253
97  FN 0: Q7 = +Q141
98  FN 0: Q8 = +Q142
99  L Z+Q260 R0 FQ59
100  ; ** 2. Zapfen *************** 
101  CC X+Q270 Y+Q271
102  LP PR+Q20 PA+0 R0 FQ59
103  TCH PROBE 0.0 BEZUGSEBENE Q0 X-
104  TCH PROBE 0.1 Z+Q315
105  CALL LBL 253
106  FN 0: Q11 = +Q141
107  FN 0: Q12 = +Q142
108  FN 9: IF +Q301 EQU +0 GOTO LBL 23
109  L Z+Q260 R0 FQ59
110  LBL 23
111  CP IPA+90 DR+ R0 FQ59
112  TCH PROBE 0.0 BEZUGSEBENE Q0 Y-
113  TCH PROBE 0.1 Z+Q315
114  CALL LBL 253
115  FN 0: Q13 = +Q141
116  FN 0: Q14 = +Q142
117  FN 9: IF +Q301 EQU +0 GOTO LBL 24
118  L Z+Q260 R0 FQ59
119  LBL 24
120  CP IPA+90 DR+ R0 FQ59
121  TCH PROBE 0.0 BEZUGSEBENE Q0 X+
122  TCH PROBE 0.1 Z+Q315
123  CALL LBL 253
124  FN 0: Q15 = +Q141
125  FN 0: Q16 = +Q142
126  FN 9: IF +Q301 EQU +0 GOTO LBL 25
127  L Z+Q260 R0 FQ59
128  LBL 25
129  CP IPA+90 DR+ R0 FQ59
130  TCH PROBE 0.0 BEZUGSEBENE Q0 Y+
131  TCH PROBE 0.1 Z+Q315
132  CALL LBL 253
133  FN 0: Q17 = +Q141
134  FN 0: Q18 = +Q142
135  L Z+Q260 R0 FQ59
136  FN 24: Q21 = CDATA Q1
137  FN 24: Q31 = CDATA Q11
138  FN 2: Q41 = +Q31 - +Q21
139  FN 2: Q42 = +Q32 - +Q22
140  FN 13: Q50 = +Q42 ANG+Q41
141  FN 12: IF +Q50 LT +90 GOTO LBL 31
142  FN 9: IF +Q50 EQU +90 GOTO LBL 31
143  FN 11: IF +Q50 GT +270 GOTO LBL 30
144  FN 9: IF +Q50 EQU +270 GOTO LBL 30
145  Q50 = Q50 - 180  
146  FN 9: IF +0 EQU +0 GOTO LBL 31
147  LBL 30
148  Q50 = Q50 - 360  
149  LBL 31
150  Q50 = Q50 - Q307  
151  FN 11: IF +Q50 GT +0 GOTO LBL 41
152  FN 11: IF +Q50 GT -360.0001 GOTO LBL 42
153  Q50 = Q50 + 360  
154  FN 9: IF +0 EQU +0 GOTO LBL 42
155  LBL 41
156  FN 12: IF +Q50 LT +360.0001 GOTO LBL 42
157  Q50 = Q50 - 360  
158  LBL 42
159  FN 11: IF +Q50 GT +0 GOTO LBL 50
160  FN 11: IF +Q50 GT -90.0001 GOTO LBL 98
161  FN 11: IF +Q50 GT -270.0001 GOTO LBL 43
162  Q50 = Q50 + 360  
163  FN 9: IF +0 EQU +0 GOTO LBL 98
164  LBL 43
165  Q50 = Q50 + 180  
166  FN 9: IF +0 EQU +0 GOTO LBL 98
167  LBL 50
168  FN 12: IF +Q50 LT +90.0001 GOTO LBL 98
169  FN 12: IF +Q50 LT +270.0001 GOTO LBL 44
170  Q50 = Q50 - 360  
171  FN 9: IF +0 EQU +0 GOTO LBL 98
172  LBL 44
173  Q50 = Q50 - 180  
174  LBL 98
175  FN 17: SYSWRITE ID210 NR1 = +Q50
176  FN 17: SYSWRITE ID990 NR1 = +0
177  FN 17: SYSWRITE ID990 NR2 = +0
178  FN 9: IF +0 EQU +0 GOTO LBL 254
179  LBL 253
180  FN 9: IF +Q109 EQU +0 GOTO LBL 230
181  FN 9: IF +Q109 EQU +6 GOTO LBL 230
182  FN 9: IF +Q109 EQU +1 GOTO LBL 231
183  FN 9: IF +Q109 EQU +7 GOTO LBL 231
184  FN 9: IF +Q109 EQU +2 GOTO LBL 232
185  FN 9: IF +Q109 EQU +8 GOTO LBL 232
186  LBL 230
187  FN 0: Q141 = +Q116
188  FN 0: Q142 = +Q117
189  FN 9: IF +0 EQU +0 GOTO LBL 233
190  LBL 231
191  FN 0: Q141 = +Q117
192  FN 0: Q142 = +Q115
193  FN 9: IF +0 EQU +0 GOTO LBL 233
194  LBL 232
195  FN 0: Q141 = +Q115
196  FN 0: Q142 = +Q116
197  LBL 233
198  LBL 0
199  LBL 254
200  END PGM 402 MM
