Rev 2 | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 2 | Rev 11 | ||
---|---|---|---|
Line 54... | Line 54... | ||
54 | * Mike put it here |
54 | * Mike put it here |
55 | * |
55 | * |
56 | * |
56 | * |
57 | * Revision 1.21 2000/10/04 10:37:14 10:37:14 mjames (Mike James) |
57 | * Revision 1.21 2000/10/04 10:37:14 10:37:14 mjames (Mike James) |
58 | * Modified for Vertical2 : support COMPONENTS and SIGNALS |
58 | * Modified for Vertical2 : support COMPONENTS and SIGNALS |
59 | * |
59 | * |
60 | * Revision 1.21 2000/10/04 10:37:14 10:37:14 mjames (Mike James) |
60 | * Revision 1.21 2000/10/04 10:37:14 10:37:14 mjames (Mike James) |
61 | * Part of Release PSAVAT01 |
61 | * Part of Release PSAVAT01 |
62 | * |
62 | * |
63 | * Revision 1.20 2000/10/02 11:04:21 11:04:21 mjames (Mike James) |
63 | * Revision 1.20 2000/10/02 11:04:21 11:04:21 mjames (Mike James) |
64 | * new_vhdl |
64 | * new_vhdl |
65 | * |
65 | * |
66 | * Revision 1.19 2000/09/27 14:42:29 14:42:29 mjames (Mike James) |
66 | * Revision 1.19 2000/09/27 14:42:29 14:42:29 mjames (Mike James) |
67 | * Part of Release Sep_27_ST_2000 |
67 | * Part of Release Sep_27_ST_2000 |
68 | * |
68 | * |
69 | * Revision 1.18 2000/09/21 10:15:58 10:15:58 mjames (Mike James) |
69 | * Revision 1.18 2000/09/21 10:15:58 10:15:58 mjames (Mike James) |
70 | * Part of Release Sep21Alpha |
70 | * Part of Release Sep21Alpha |
71 | * |
71 | * |
72 | * Revision 1.17 2000/08/25 09:57:23 09:57:23 mjames (Mike James) |
72 | * Revision 1.17 2000/08/25 09:57:23 09:57:23 mjames (Mike James) |
73 | * Part of Release Aug25_alpha |
73 | * Part of Release Aug25_alpha |
74 | * |
74 | * |
75 | * Revision 1.16 2000/08/16 08:57:39 08:57:39 mjames (Mike James) |
75 | * Revision 1.16 2000/08/16 08:57:39 08:57:39 mjames (Mike James) |
76 | * Part of Release CD01_Aug2000 |
76 | * Part of Release CD01_Aug2000 |
77 | * |
77 | * |
78 | * Revision 1.15 2000/08/14 14:45:18 14:45:18 mjames (Mike James) |
78 | * Revision 1.15 2000/08/14 14:45:18 14:45:18 mjames (Mike James) |
79 | * Part of Release Aug_14_2000 |
79 | * Part of Release Aug_14_2000 |
80 | * |
80 | * |
81 | * Revision 1.14 2000/08/11 08:30:39 08:30:39 mjames (Mike James) |
81 | * Revision 1.14 2000/08/11 08:30:39 08:30:39 mjames (Mike James) |
82 | * Part of Release Aug_11_2000 |
82 | * Part of Release Aug_11_2000 |
83 | * |
83 | * |
84 | * Revision 1.13 2000/08/09 10:31:56 10:31:56 mjames (Mike James) |
84 | * Revision 1.13 2000/08/09 10:31:56 10:31:56 mjames (Mike James) |
85 | * Part of Release Aug__9_2000 |
85 | * Part of Release Aug__9_2000 |
86 | * |
86 | * |
87 | * Revision 1.12 2000/05/31 11:43:09 11:43:09 mjames (Mike James) |
87 | * Revision 1.12 2000/05/31 11:43:09 11:43:09 mjames (Mike James) |
88 | * Part of Release May_31_2000 |
88 | * Part of Release May_31_2000 |
89 | * |
89 | * |
90 | * Revision 1.11 2000/05/08 17:01:45 17:01:45 mjames (Mike James) |
90 | * Revision 1.11 2000/05/08 17:01:45 17:01:45 mjames (Mike James) |
91 | * Part of Release May__8_2000 |
91 | * Part of Release May__8_2000 |
92 | * |
92 | * |
93 | * Revision 1.10 2000/05/08 16:59:39 16:59:39 mjames (Mike James) |
93 | * Revision 1.10 2000/05/08 16:59:39 16:59:39 mjames (Mike James) |
94 | * Part of Release May__8_2000 |
94 | * Part of Release May__8_2000 |
95 | * |
95 | * |
96 | * Revision 1.9 2000/05/08 16:57:15 16:57:15 mjames (Mike James) |
96 | * Revision 1.9 2000/05/08 16:57:15 16:57:15 mjames (Mike James) |
97 | * Part of Release May__8_2000 |
97 | * Part of Release May__8_2000 |
98 | * |
98 | * |
99 | * Revision 1.8 2000/03/08 16:19:32 16:19:32 mjames (Mike James) |
99 | * Revision 1.8 2000/03/08 16:19:32 16:19:32 mjames (Mike James) |
100 | * New version including PC |
100 | * New version including PC |
101 | * |
101 | * |
102 | * Revision 1.5 2000/01/20 15:58:57 15:58:57 mjames (Mike James) |
102 | * Revision 1.5 2000/01/20 15:58:57 15:58:57 mjames (Mike James) |
103 | * Part of Release R22 |
103 | * Part of Release R22 |
104 | * |
104 | * |
105 | * Revision 1.4 99/12/22 11:15:37 11:15:37 mjames (Mike James) |
105 | * Revision 1.4 99/12/22 11:15:37 11:15:37 mjames (Mike James) |
106 | * Part of Release Dec_22_1999 |
106 | * Part of Release Dec_22_1999 |
107 | * |
107 | * |
108 | * Revision 1.3 98/02/11 11:27:21 11:27:21 mjames (Mike James) |
108 | * Revision 1.3 98/02/11 11:27:21 11:27:21 mjames (Mike James) |
109 | * Checked in for version 6.2a |
109 | * Checked in for version 6.2a |
110 | * |
110 | * |
111 | * Revision 1.2 97/04/23 08:44:46 08:44:46 mjames (Mike James) |
111 | * Revision 1.2 97/04/23 08:44:46 08:44:46 mjames (Mike James) |
112 | * CHecked in for release rel23041997 |
112 | * CHecked in for release rel23041997 |
113 | * |
113 | * |
114 | * Revision 1.1 96/12/23 10:24:34 10:24:34 mjames (Mike James) |
114 | * Revision 1.1 96/12/23 10:24:34 10:24:34 mjames (Mike James) |
115 | * Initial revision |
115 | * Initial revision |
116 | * */ |
116 | * */ |
117 | - | ||
118 | #pragma once |
- | |
119 | - | ||
120 | #include <regex.h> |
- | |
121 | /* pin identifying letters that are permitted in IC pin identifiers */ |
117 | /* pin identifying letters that are permitted in IC pin identifiers */ |
122 | #define PIN_MAP_LEGAL_CHARS "ABCDEFGHJKLMNPQRSTUVWXYZ" |
118 | #define PIN_MAP_LEGAL_CHARS "ABCDEFGHJKLMNPQRSTUVWXYZ" |
123 | /* the number of characters in the legal character set */ |
119 | /* the number of characters in the legal character set */ |
124 | #define PIN_MAP_LEGAL_CHAR_COUNT 24 |
120 | #define PIN_MAP_LEGAL_CHAR_COUNT 24 |
125 | 121 | ||
126 | /* pin identifying letters that are not permitted in IC pin identifiers */ |
122 | /* pin identifying letters that are not permitted in IC pin identifiers */ |
127 | #define PIN_MAP_ILLEGAL_CHARS "IO"; |
123 | #define PIN_MAP_ILLEGAL_CHARS "IO"; |
128 | /* the number of characters in the illegal character set */ |
124 | /* the number of characters in the illegal character set */ |
129 | #define PIN_MAP_ILLEGAL_CHAR_COUNT 2 |
125 | #define PIN_MAP_ILLEGAL_CHAR_COUNT 2 |
130 | 126 | ||
131 | /* maximum alphabetic characters before we decide pin identifier should not be |
127 | /* maximum alphabetic characters before we decide pin identifier should not be |
132 | assigned a column number in sort_nodes */ |
128 | assigned a column number in sort_nodes */ |
133 | #define MAX_ID_ALPHA_SORT 5 |
129 | #define MAX_ID_ALPHA_SORT 5 |
134 | 130 | ||
135 | /* this function also determines the 'row' and 'columns' of each chip sorted, |
131 | /* this function also determines the 'row' and 'columns' of each chip sorted, |
136 | as well as the minimum and maximum row and column numbers */ |
132 | as well as the minimum and maximum row and column numbers */ |
137 | 133 | ||
138 | /* this now made conditional on mode being EXTRACT_XY */ |
134 | /* this now made conditional on mode being EXTRACT_XY */ |
139 | typedef enum |
135 | typedef enum { NO_EXTRACT_XY,EXTRACT_XY} extract_xy_t; |
140 | { |
136 | |
141 | NO_EXTRACT_XY, |
- | |
142 | EXTRACT_XY |
- | |
143 | } extract_xy_t; |
- | |
144 | 137 | ||
145 | extern void sort_nodes (socket_t *chip, extract_xy_t mode); |
138 | extern void sort_nodes(socket_t * chip,extract_xy_t mode) ; |
146 | extern socket_t *sort_sockets (socket_t **s); |
139 | extern socket_t * sort_sockets(socket_t ** s); |
147 | /* regular expression compiler according to Vertical rules */ |
140 | /* regular expression compiler according to Vertical rules */ |
148 | 141 | ||
149 | #define MAX_REGEXP_SUBEXPR 10 |
142 | #define MAX_REGEXP_SUBEXPR 10 |
150 | 143 | ||
- | 144 | ||
151 | typedef struct vrt |
145 | typedef struct vrt |
152 | { |
146 | { |
153 | regex_t preg[1]; |
147 | regex_t preg[1]; |
154 | regmatch_t regpatt[MAX_REGEXP_SUBEXPR]; |
148 | regmatch_t regpatt[MAX_REGEXP_SUBEXPR]; |
155 | char *buff; |
149 | char* buff; |
156 | } vert_regex_t; |
150 | } vert_regex_t; |
- | 151 | ||
- | 152 | extern int vert_regcomp(vert_regex_t ** preg,char * expr); |
|
157 | 153 | ||
158 | extern int vert_regcomp (vert_regex_t **preg, char *expr); |
- | |
159 | 154 | ||
160 | extern int vert_regfree (vert_regex_t **preg); |
155 | extern int vert_regfree(vert_regex_t ** preg); |