1
/* @(#)optdef.h 19.1 (ESO-IPG) 02/25/03 14:27:31 */
2
/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
3
.COPYRIGHT (c) 1991 European Southern Observatory
6
.AUTHOR Preben Grosbol (ESO-IPG)
7
.KEYWORDS OPTOPUS, Star plates, drill, header
9
.PURPOSE Define format and syntax of ASCII command file for
10
OPTOPUS star plate drilling program
11
.VERSION 1.0 1991-Sep-03 : Creation, PJG
12
.VERSION 1.1 1991-Nov-21 : Correct type of lines, PJG
13
------------------------------------------------------------------------*/
15
typedef struct { /* structure for command line */
16
int type; /* type of command line */
17
char *line; /* command line */
20
* The 'type' of the command line is defined as an integer with
21
* Two 4-bit fields written as a hex-code:
22
* First (MSB) 4-bits give class> 0x0_ : none object dependent
24
* 0x2_ : guidestars only
27
* Last (LSB) 4-bits give editing> 0x_0 : no editing
32
CMDLINE cmd1[] = { { 0x00, "TOOL DEF 1 L0R0 \n"},
33
{ 0x00, "TOOL CALL 1 Z S2000 \n"},
34
{ 0x00, " Z+50 R0 F9999 M03 \n"},
35
{ 0x00, "L X0 Y166 R0 F9999 M03\n"},
36
{ 0x00, " Z+10,5 R0 F9999 M03 \n"},
37
{ 0x00, " Z+8 R0 F25 M03\n"},
38
{ 0x00, " Z+11 R0 F9999 M03 \n"},
39
{ 0x00, "L X+150 Y0 R0 F9999 M03\n"},
40
{ 0x00, " Z+0,5 R0 F9999 M03\n"},
42
{ 0x00, " Z-2 R0 F25 M03\n"},
43
{ 0x00, " Z+0,5 R0 F9999 M03\n"},
45
{ 0x00, (char *) 0} };
47
CMDLINE var1[] = { { 0x31, "L X%8.3f Y%8.3f R0 F9999 M03 \n"},
48
{ 0x30, "CALL LBL 1 REP\n"},
49
{ 0x00, (char *) 0} };
51
CMDLINE cmd2[] = { { 0x00, " Z+150 R0 F9999 M00\n"},
52
{ 0x00, "TOOL DEF 2 L-20,125R0 \n"},
53
{ 0x00, "TOOL CALL 2 Z S1000 \n"},
54
{ 0x00, "L X0 Y166 R0 F9999 M03\n"},
55
{ 0x00, " Z+18 R0 F9999 M03 \n"},
56
{ 0x00, " Z-1,0 R0 F20 M03\n"},
57
{ 0x00, " Z+18 R0 F200 M03\n"},
59
{ 0x00, "L X+150 Y0 R0 F9999 M03 \n"},
60
{ 0x00, " Z+7,5 R0 F9999 M03\n"},
61
{ 0x00, " Z-2 R0 F15 M03\n"},
62
{ 0x00, " Z+14 R0 F9999 M03 \n"},
63
{ 0x00, (char *) 0} };
65
CMDLINE var2[] = { { 0x11, "L X%8.3f Y%8.3f R0 F9999 M03 \n"},
66
{ 0x12, " Z%8.3f R0 F15 M03 \n"},
67
{ 0x10, "CYCL DEF 9.0\n"},
68
{ 0x10, "CYCL DEF 9.1 TEMP. 2,0\n"},
69
{ 0x10, " Z+28 R0 F200 M03\n"},
70
{ 0x10, " Z+7,5 R0 F400 M03 \n"},
71
{ 0x00, (char *) 0} };
73
CMDLINE cmd3[] = { { 0x00, "LBL 0 \n"},
74
{ 0x00, " Z+150 R0 F9999 M00\n"},
75
{ 0x00, "TOOL DEF 3 L-21,980R0 \n"},
76
{ 0x00, "TOOL CALL 3 Z S250\n"},
77
{ 0x00, "CALL LBL 2 REP\n"},
78
{ 0x00, " Z+150 R0 F9999 M00\n"},
79
{ 0x00, "TOOL DEF 4 L-23,590R0 \n"},
80
{ 0x00, "TOOL CALL 4 Z S600\n"},
81
{ 0x00, " Z+12 R0 F9999 M03 \n"},
82
{ 0x00, (char *) 0} };
84
CMDLINE var3[] = { { 0x21, "L X%8.3f Y%8.3f R0 F9999 M03 \n"},
85
{ 0x22, " Z%8.3f R0 F15 M03 \n"},
86
{ 0x20, "CYCL DEF 9.0\n"},
87
{ 0x20, "CYCL DEF 9.1 TEMP. 2,0\n"},
88
{ 0x20, " Z+18,0 R0 F100 M03\n"},
89
{ 0x20, " Z+11,5 R0 F200 M03\n"},
90
{ 0x00, (char *) 0} };
92
CMDLINE cmd4[] = { { 0x00, " Z+150 R0 F9999 M00\n"},
93
{ 0x00, "TOOL DEF 5 L-11,580R0 \n"},
94
{ 0x00, "TOOL CALL 5 Z S200\n"},
95
{ 0x00, " Z+1 R0 F9999 M03\n"},
96
{ 0x00, (char *) 0} };
98
CMDLINE var4[] = { { 0x21, "L X%8.3f Y%8.3f R0 F9999 M03 \n"},
99
{ 0x22, " Z-11 R0 F15 M03 \n"},
100
{ 0x20, " Z-2 R0 F15 M03\n"},
101
{ 0x20, " Z+1 R0 F9999 M03\n"},
102
{ 0x00, (char *) 0} };
104
CMDLINE cmd5[] = { { 0x00, " Z+150 R0 F9999 M00\n"},
105
{ 0x00, "TOOL DEF 6 L17,445R0\n"},
106
{ 0x00, "TOOL CALL 6 Z S200\n"},
107
{ 0x00, "L X0 Y+166,0 R0 F9999 M03 \n"},
108
{ 0x00, " Z9,5 R0 F9999 M03 \n"},
109
{ 0x00, " Z9,3 R0 F25 M03 \n"},
110
{ 0x00, " Z12 R0 F9999 M03\n"},
111
{ 0x00, "L X+150 Y0 R0 F9999 M03 \n"},
113
{ 0x00, " Z-0,50 R0 F9999 M03 \n"},
114
{ 0x00, " Z-0,78 R0 F25 M03 \n"},
115
{ 0x00, " Z+0,50 R0 F9999 M03 \n"},
117
{ 0x00, (char *) 0} };
119
CMDLINE var5[] = { { 0x11, "L X%8.3f Y%8.3f R0 F9999 M03 \n"},
120
{ 0x10, "CALL LBL 3 REP\n"},
121
{ 0x21, "L X%8.3f Y%8.3f R0 F9999 M03 \n"},
122
{ 0x20, " Z-5,00 R0 F9999 M03 \n"},
123
{ 0x20, " Z-5,20 R0 F25 M03 \n"},
124
{ 0x20, " Z+0,50 R0 F9999 M03 \n"},
127
CMDLINE cmd6[] = { { 0x00, " Z+150 R0 F9999 M00\n"},
128
{ 0x00, "TOOL DEF 7 L-12,530R1,510 \n"},
129
{ 0x00, "TOOL CALL 7 Z S1600 \n"},
130
{ 0x00, "L X+150 Y0 R0 F9999 M03 \n"},
131
{ 0x00, " Z+1 R0 F9999 M03\n"},
132
{ 0x00, " Z-2 R0 F400 M03 \n"},
134
{ 0x00, "CYCL DEF 5.0\n"},
135
{ 0x00, "CYCL DEF 5.1 DIST. -0,25\n"},
136
{ 0x00, "CYCL DEF 5.2 PROF. -0,005 \n"},
137
{ 0x00, "CYCL DEF 5.3 PASSE -0,005 F400\n"},
138
{ 0x00, "CYCL DEF 5.4 RAYON +1,710 \n"},
139
{ 0x00, "CYCL DEF 5.5 F20 DR-\n"},
140
{ 0x00, "CYCL CALL M03 \n"},
141
{ 0x00, " Z0 R0 F400 M03\n"},
143
{ 0x00, (char *) 0} };
145
CMDLINE var6[] = { { 0x11, "L X%8.3f Y%8.3f R0 F9999 M03 \n"},
146
{ 0x12, " Z%8.3f R0 F400 M03\n"},
147
{ 0x10, "CALL LBL 4 REP\n"},
148
{ 0x00, (char *) 0} };
150
CMDLINE cmd7[] = { { 0x00, " Z+110 R0 F9999 M03\n"},
151
{ 0x00, "STOP M02\n"},
152
{ 0x00, (char *) 0} };
154
CMDLINE *tmpl[] = { cmd1, var1, cmd2, var2, cmd3, var3, cmd4, var4,
155
cmd5, var5, cmd6, var6, cmd7,