Index: work/alien_formats/eagle/eagle_bin/test_parser/eagle_bin.c =================================================================== --- work/alien_formats/eagle/eagle_bin/test_parser/eagle_bin.c (revision 9560) +++ work/alien_formats/eagle/eagle_bin/test_parser/eagle_bin.c (revision 9561) @@ -270,7 +270,7 @@ TERM }, }, - { PCB_EGKW_SECT_PACKAGE, 0xFFFF, "package", + { PCB_EGKW_SECT_PACKAGE, 0xFFDF, "package", { /* field match */ TERM }, @@ -288,24 +288,6 @@ TERM }, }, - { PCB_EGKW_SECT_ALT_PACKAGE, 0xFFFF, "alt_package", - { /* field match */ - TERM - }, - { /* subsection sizes */ - {2, 2, SS_RECURSIVE, NULL}, - TERM - }, - { /* attributes */ - {"minx", T_INT, 4, 2}, - {"miny", T_INT, 6, 2}, - {"maxx", T_INT, 8, 2}, - {"maxy", T_INT, 10, 2}, - {"desc", T_INT, 13, 5}, - {"name", T_INT, 18, 6}, - TERM - }, - }, { PCB_EGKW_SECT_SCHEMANET, 0xFFFF, "schemanet", { /* field match */ TERM @@ -340,7 +322,7 @@ TERM }, }, - { PCB_EGKW_SECT_POLYGON, 0xFFFF, "polygon", + { PCB_EGKW_SECT_POLYGON, 0xFFF7, "polygon", { /* field match */ TERM }, @@ -364,38 +346,14 @@ TERM }, }, - { PCB_EGKW_SECT_ALT_POLYGON, 0xFFFF, "alt_polygon", + { PCB_EGKW_SECT_LINE, 0xFFC3, "line", { /* field match */ TERM }, { /* subsection sizes */ - {2, 2, SS_DIRECT, NULL}, TERM }, { /* attributes */ - {"minx", T_INT, 4, 2}, - {"miny", T_INT, 6, 2}, - {"maxx", T_INT, 8, 2}, - {"maxy", T_INT, 10, 2}, - {"width_2", T_INT, 12, 2}, - {"spacing_2", T_INT, 14, 2}, - {"isolate_2", T_INT, 16, 2}, - {"layer", T_INT, 18, 1}, - {"pour", T_BMB, 19, 0x01}, - {"rank", T_BMB, 19, BITFIELD(1, 1, 3)}, - {"thermals", T_BMB, 19, 0x80}, - {"orphans", T_BMB, 19, 0x40}, - TERM - }, - }, - { PCB_EGKW_SECT_LINE, 0xFFFF, "line", - { /* field match */ - TERM - }, - { /* subsection sizes */ - TERM - }, - { /* attributes */ {"layer", T_INT, 3, 1}, {"width_2", T_INT, 20, 2}, {"stflags", T_BMB, 22, 0x20}, @@ -415,195 +373,6 @@ TERM }, }, - { PCB_EGKW_SECT_ALT_LINE, 0xFFFF, "alt_line", - { /* field match */ - TERM - }, - { /* subsection sizes */ - TERM - }, - { /* attributes */ - {"layer", T_INT, 3, 1}, - {"width_2", T_INT, 20, 2}, - {"stflags", T_BMB, 22, 0x20}, - {"linetype", T_INT, 23, 1}, - {"linetype_0_x1", T_INT, 4, 4}, - {"linetype_0_y1", T_INT, 8, 4}, - {"linetype_0_x2", T_INT, 12, 4}, - {"linetype_0_y2", T_INT, 16, 4}, - {"linetype_129_negflags", T_INT, 19, 1}, - {"linetype_129_c1", T_INT, 7, 1}, - {"linetype_129_c2", T_INT, 11, 1}, - {"linetype_129_c3", T_INT, 15, 1}, - {"linetype_129_x1", T_INT, 4, 3}, - {"linetype_129_y1", T_INT, 8, 3}, - {"linetype_129_x2", T_INT, 12, 3}, - {"linetype_129_y2", T_INT, 16, 3}, - TERM - }, - }, - { PCB_EGKW_SECT_ALT_ALT_LINE, 0xFFFF, "alt_alt_line", - { /* field match */ - TERM - }, - { /* subsection sizes */ - TERM - }, - { /* attributes */ - {"layer", T_INT, 3, 1}, - {"width_2", T_INT, 20, 2}, - {"stflags", T_BMB, 22, 0x20}, - {"linetype", T_INT, 23, 1}, - {"linetype_0_x1", T_INT, 4, 4}, - {"linetype_0_y1", T_INT, 8, 4}, - {"linetype_0_x2", T_INT, 12, 4}, - {"linetype_0_y2", T_INT, 16, 4}, - {"linetype_129_negflags", T_INT, 19, 1}, - {"linetype_129_c1", T_INT, 7, 1}, - {"linetype_129_c2", T_INT, 11, 1}, - {"linetype_129_c3", T_INT, 15, 1}, - {"linetype_129_x1", T_INT, 4, 3}, - {"linetype_129_y1", T_INT, 8, 3}, - {"linetype_129_x2", T_INT, 12, 3}, - {"linetype_129_y2", T_INT, 16, 3}, - TERM - }, - }, - { PCB_EGKW_SECT_ALT_ALT_ALT_LINE, 0xFFFF, "alt_alt_alt_line", - { /* field match */ - TERM - }, - { /* subsection sizes */ - TERM - }, - { /* attributes */ - {"layer", T_INT, 3, 1}, - {"width_2", T_INT, 20, 2}, - {"stflags", T_BMB, 22, 0x20}, - {"linetype", T_INT, 23, 1}, - {"linetype_0_x1", T_INT, 4, 4}, - {"linetype_0_y1", T_INT, 8, 4}, - {"linetype_0_x2", T_INT, 12, 4}, - {"linetype_0_y2", T_INT, 16, 4}, - {"linetype_129_negflags", T_INT, 19, 1}, - {"linetype_129_c1", T_INT, 7, 1}, - {"linetype_129_c2", T_INT, 11, 1}, - {"linetype_129_c3", T_INT, 15, 1}, - {"linetype_129_x1", T_INT, 4, 3}, - {"linetype_129_y1", T_INT, 8, 3}, - {"linetype_129_x2", T_INT, 12, 3}, - {"linetype_129_y2", T_INT, 16, 3}, - TERM - }, - }, - { PCB_EGKW_SECT_ALT_ALT_ALT_ALT_LINE, 0xFFFF, "alt_alt_alt_alt_line", - { /* field match */ - TERM - }, - { /* subsection sizes */ - TERM - }, - { /* attributes */ - {"layer", T_INT, 3, 1}, - {"width_2", T_INT, 20, 2}, - {"stflags", T_BMB, 22, 0x20}, - {"linetype", T_INT, 23, 1}, - {"linetype_0_x1", T_INT, 4, 4}, - {"linetype_0_y1", T_INT, 8, 4}, - {"linetype_0_x2", T_INT, 12, 4}, - {"linetype_0_y2", T_INT, 16, 4}, - {"linetype_129_negflags", T_INT, 19, 1}, - {"linetype_129_c1", T_INT, 7, 1}, - {"linetype_129_c2", T_INT, 11, 1}, - {"linetype_129_c3", T_INT, 15, 1}, - {"linetype_129_x1", T_INT, 4, 3}, - {"linetype_129_y1", T_INT, 8, 3}, - {"linetype_129_x2", T_INT, 12, 3}, - {"linetype_129_y2", T_INT, 16, 3}, - TERM - }, - }, - { PCB_EGKW_SECT_ALT_ALT_ALT_ALT_ALT_LINE, 0xFFFF, "alt_alt_alt_alt_alt_line", - { /* field match */ - TERM - }, - { /* subsection sizes */ - TERM - }, - { /* attributes */ - {"layer", T_INT, 3, 1}, - {"width_2", T_INT, 20, 2}, - {"stflags", T_BMB, 22, 0x20}, - {"linetype", T_INT, 23, 1}, - {"linetype_0_x1", T_INT, 4, 4}, - {"linetype_0_y1", T_INT, 8, 4}, - {"linetype_0_x2", T_INT, 12, 4}, - {"linetype_0_y2", T_INT, 16, 4}, - {"linetype_129_negflags", T_INT, 19, 1}, - {"linetype_129_c1", T_INT, 7, 1}, - {"linetype_129_c2", T_INT, 11, 1}, - {"linetype_129_c3", T_INT, 15, 1}, - {"linetype_129_x1", T_INT, 4, 3}, - {"linetype_129_y1", T_INT, 8, 3}, - {"linetype_129_x2", T_INT, 12, 3}, - {"linetype_129_y2", T_INT, 16, 3}, - TERM - }, - }, - { PCB_EGKW_SECT_ALT_ALT_ALT_ALT_ALT_ALT_LINE, 0xFFFF, "alt_alt_alt_alt_alt_alt_line", - { /* field match */ - TERM - }, - { /* subsection sizes */ - TERM - }, - { /* attributes */ - {"layer", T_INT, 3, 1}, - {"width_2", T_INT, 20, 2}, - {"stflags", T_BMB, 22, 0x20}, - {"linetype", T_INT, 23, 1}, - {"linetype_0_x1", T_INT, 4, 4}, - {"linetype_0_y1", T_INT, 8, 4}, - {"linetype_0_x2", T_INT, 12, 4}, - {"linetype_0_y2", T_INT, 16, 4}, - {"linetype_129_negflags", T_INT, 19, 1}, - {"linetype_129_c1", T_INT, 7, 1}, - {"linetype_129_c2", T_INT, 11, 1}, - {"linetype_129_c3", T_INT, 15, 1}, - {"linetype_129_x1", T_INT, 4, 3}, - {"linetype_129_y1", T_INT, 8, 3}, - {"linetype_129_x2", T_INT, 12, 3}, - {"linetype_129_y2", T_INT, 16, 3}, - TERM - }, - }, - { PCB_EGKW_SECT_ALT_ALT_ALT_ALT_ALT_ALT_ALT_LINE, 0xFFFF, "alt_alt_alt_alt_alt_alt_alt_line", - { /* field match */ - TERM - }, - { /* subsection sizes */ - TERM - }, - { /* attributes */ - {"layer", T_INT, 3, 1}, - {"width_2", T_INT, 20, 2}, - {"stflags", T_BMB, 22, 0x20}, - {"linetype", T_INT, 23, 1}, - {"linetype_0_x1", T_INT, 4, 4}, - {"linetype_0_y1", T_INT, 8, 4}, - {"linetype_0_x2", T_INT, 12, 4}, - {"linetype_0_y2", T_INT, 16, 4}, - {"linetype_129_negflags", T_INT, 19, 1}, - {"linetype_129_c1", T_INT, 7, 1}, - {"linetype_129_c2", T_INT, 11, 1}, - {"linetype_129_c3", T_INT, 15, 1}, - {"linetype_129_x1", T_INT, 4, 3}, - {"linetype_129_y1", T_INT, 8, 3}, - {"linetype_129_x2", T_INT, 12, 3}, - {"linetype_129_y2", T_INT, 16, 3}, - TERM - }, - }, { PCB_EGKW_SECT_ARC, 0xFFFF, "arc", { /* field match */ TERM @@ -631,7 +400,7 @@ TERM }, }, - { PCB_EGKW_SECT_CIRCLE, 0xFFFF, "circle", + { PCB_EGKW_SECT_CIRCLE, 0xFFDF, "circle", { /* field match */ TERM }, @@ -647,7 +416,7 @@ TERM }, }, - { PCB_EGKW_SECT_ALT_CIRCLE, 0xFFFF, "alt_circle", + { PCB_EGKW_SECT_RECTANGLE, 0xFFDF, "rectangle", { /* field match */ TERM }, @@ -658,38 +427,6 @@ {"layer", T_INT, 3, 1}, {"x1", T_INT, 4, 4}, {"y1", T_INT, 8, 4}, - {"r", T_INT, 12, 4}, - {"width_2", T_INT, 20, 4}, - TERM - }, - }, - { PCB_EGKW_SECT_ALT_ALT_CIRCLE, 0xFFFF, "alt_alt_circle", - { /* field match */ - TERM - }, - { /* subsection sizes */ - TERM - }, - { /* attributes */ - {"layer", T_INT, 3, 1}, - {"x1", T_INT, 4, 4}, - {"y1", T_INT, 8, 4}, - {"r", T_INT, 12, 4}, - {"width_2", T_INT, 20, 4}, - TERM - }, - }, - { PCB_EGKW_SECT_RECTANGLE, 0xFFFF, "rectangle", - { /* field match */ - TERM - }, - { /* subsection sizes */ - TERM - }, - { /* attributes */ - {"layer", T_INT, 3, 1}, - {"x1", T_INT, 4, 4}, - {"y1", T_INT, 8, 4}, {"x2", T_INT, 12, 4}, {"y3", T_INT, 16, 4}, {"angle", T_INT, 20, 2}, @@ -696,40 +433,6 @@ TERM }, }, - { PCB_EGKW_SECT_ALT_RECTANGLE, 0xFFFF, "alt_rectangle", - { /* field match */ - TERM - }, - { /* subsection sizes */ - TERM - }, - { /* attributes */ - {"layer", T_INT, 3, 1}, - {"x1", T_INT, 4, 4}, - {"y1", T_INT, 8, 4}, - {"x2", T_INT, 12, 4}, - {"y3", T_INT, 16, 4}, - {"angle", T_INT, 20, 2}, - TERM - }, - }, - { PCB_EGKW_SECT_ALT_ALT_RECTANGLE, 0xFFFF, "alt_alt_rectangle", - { /* field match */ - TERM - }, - { /* subsection sizes */ - TERM - }, - { /* attributes */ - {"layer", T_INT, 3, 1}, - {"x1", T_INT, 4, 4}, - {"y1", T_INT, 8, 4}, - {"x2", T_INT, 12, 4}, - {"y3", T_INT, 16, 4}, - {"angle", T_INT, 20, 2}, - TERM - }, - }, { PCB_EGKW_SECT_JUNCTION, 0xFFFF, "junction", { /* field match */ TERM @@ -745,7 +448,7 @@ TERM }, }, - { PCB_EGKW_SECT_HOLE, 0xFFFF, "hole", + { PCB_EGKW_SECT_HOLE, 0xFFDF, "hole", { /* field match */ TERM }, @@ -759,7 +462,7 @@ TERM }, }, - { PCB_EGKW_SECT_ALT_HOLE, 0xFFFF, "alt_hole", + { PCB_EGKW_SECT_VIA, 0xFF7F, "via", { /* field match */ TERM }, @@ -767,34 +470,6 @@ TERM }, { /* attributes */ - {"x", T_INT, 4, 4}, - {"y", T_INT, 8, 4}, - {"width_2", T_INT, 12, 4}, - TERM - }, - }, - { PCB_EGKW_SECT_ALT_ALT_HOLE, 0xFFFF, "alt_alt_hole", - { /* field match */ - TERM - }, - { /* subsection sizes */ - TERM - }, - { /* attributes */ - {"x", T_INT, 4, 4}, - {"y", T_INT, 8, 4}, - {"width_2", T_INT, 12, 4}, - TERM - }, - }, - { PCB_EGKW_SECT_VIA, 0xFFFF, "via", - { /* field match */ - TERM - }, - { /* subsection sizes */ - TERM - }, - { /* attributes */ {"shape", T_INT, 2, 1}, {"x", T_INT, 4, 4}, {"y", T_INT, 8, 4}, @@ -805,7 +480,7 @@ TERM }, }, - { PCB_EGKW_SECT_ALT_VIA, 0xFFFF, "alt_via", + { PCB_EGKW_SECT_PAD, 0xFFDF, "pad", { /* field match */ TERM }, @@ -818,24 +493,6 @@ {"y", T_INT, 8, 4}, {"drill_2", T_INT, 12, 2}, {"diameter_2", T_INT, 14, 2}, - {"layers", T_INT, 16, 1}, /*not 1:1 mapping */ - {"stop", T_BMB, 17, 0x01}, - TERM - }, - }, - { PCB_EGKW_SECT_PAD, 0xFFFF, "pad", - { /* field match */ - TERM - }, - { /* subsection sizes */ - TERM - }, - { /* attributes */ - {"shape", T_INT, 2, 1}, - {"x", T_INT, 4, 4}, - {"y", T_INT, 8, 4}, - {"drill_2", T_INT, 12, 2}, - {"diameter_2", T_INT, 14, 2}, {"angle", T_INT, 16, 2}, {"stop", T_BMB, 18, 0x01}, {"thermals", T_BMB, 18, 0x04}, @@ -844,7 +501,7 @@ TERM }, }, - { PCB_EGKW_SECT_ALT_PAD, 0xFFFF, "alt_pad", + { PCB_EGKW_SECT_SMD, 0xFF7F, "smd", { /* field match */ TERM }, @@ -852,48 +509,6 @@ TERM }, { /* attributes */ - {"shape", T_INT, 2, 1}, - {"x", T_INT, 4, 4}, - {"y", T_INT, 8, 4}, - {"drill_2", T_INT, 12, 2}, - {"diameter_2", T_INT, 14, 2}, - {"angle", T_INT, 16, 2}, - {"stop", T_BMB, 18, 0x01}, - {"thermals", T_BMB, 18, 0x04}, - {"first", T_BMB, 18, 0x08}, - {"name", T_STR, 19, 5}, - TERM - }, - }, - { PCB_EGKW_SECT_ALT_ALT_PAD, 0xFFFF, "alt_alt_pad", - { /* field match */ - TERM - }, - { /* subsection sizes */ - TERM - }, - { /* attributes */ - {"shape", T_INT, 2, 1}, - {"x", T_INT, 4, 4}, - {"y", T_INT, 8, 4}, - {"drill_2", T_INT, 12, 2}, - {"diameter_2", T_INT, 14, 2}, - {"angle", T_INT, 16, 2}, - {"stop", T_BMB, 18, 0x01}, - {"thermals", T_BMB, 18, 0x04}, - {"first", T_BMB, 18, 0x08}, - {"name", T_STR, 19, 5}, - TERM - }, - }, - { PCB_EGKW_SECT_SMD, 0xFFFF, "smd", - { /* field match */ - TERM - }, - { /* subsection sizes */ - TERM - }, - { /* attributes */ {"roundness", T_INT, 2, 1}, {"layer", T_INT, 3, 1}, {"x", T_INT, 4, 4}, @@ -909,29 +524,6 @@ TERM }, }, - { PCB_EGKW_SECT_ALT_SMD, 0xFFFF, "alt_smd", - { /* field match */ - TERM - }, - { /* subsection sizes */ - TERM - }, - { /* attributes */ - {"roundness", T_INT, 2, 1}, - {"layer", T_INT, 3, 1}, - {"x", T_INT, 4, 4}, - {"y", T_INT, 8, 4}, - {"width_2", T_INT, 12, 2}, - {"height_2", T_INT, 14, 2}, - {"angle", T_UBF, 16, BITFIELD(2, 0, 11)}, - {"stop", T_BMB, 18, 0x01}, - {"cream", T_BMB, 18, 0x02}, - {"thermals", T_BMB, 18, 0x04}, - {"first", T_BMB, 18, 0x08}, - {"name", T_STR, 19, 5}, - TERM - }, - }, { PCB_EGKW_SECT_PIN, 0xFFFF, "pin", { /* field match */ TERM @@ -970,7 +562,7 @@ TERM }, }, - { PCB_EGKW_SECT_ELEMENT, 0xFFFF, "element", + { PCB_EGKW_SECT_ELEMENT, 0xFF53, "element", { /* field match */ TERM }, @@ -989,121 +581,19 @@ TERM }, }, - { PCB_EGKW_SECT_ALT_ELEMENT, 0xFFFF, "alt_element", + { PCB_EGKW_SECT_ELEMENT2, 0xFFDF, "element2", { /* field match */ TERM }, { /* subsection sizes */ - {2, 2, SS_DIRECT, NULL}, TERM }, { /* attributes */ - {"x", T_INT, 4, 4}, - {"y", T_INT, 8, 4}, - {"libno", T_INT, 12, 2}, - {"pacno", T_INT, 14, 2}, - {"angle", T_UBF, 16, BITFIELD(2, 0, 11)}, - {"mirrored", T_BMB, 17, 0x10}, - {"spin", T_BMB, 17, 0x40}, - TERM - }, - }, - { PCB_EGKW_SECT_ALT_ALT_ELEMENT, 0xFFFF, "alt_alt_element", - { /* field match */ - TERM - }, - { /* subsection sizes */ - {2, 2, SS_DIRECT, NULL}, - TERM - }, - { /* attributes */ - {"x", T_INT, 4, 4}, - {"y", T_INT, 8, 4}, - {"libno", T_INT, 12, 2}, - {"pacno", T_INT, 14, 2}, - {"angle", T_UBF, 16, BITFIELD(2, 0, 11)}, - {"mirrored", T_BMB, 17, 0x10}, - {"spin", T_BMB, 17, 0x40}, - TERM - }, - }, - { PCB_EGKW_SECT_ALT_ALT_ALT_ELEMENT, 0xFFFF, "alt_alt_alt_element", - { /* field match */ - TERM - }, - { /* subsection sizes */ - {2, 2, SS_DIRECT, NULL}, - TERM - }, - { /* attributes */ - {"x", T_INT, 4, 4}, - {"y", T_INT, 8, 4}, - {"libno", T_INT, 12, 2}, - {"pacno", T_INT, 14, 2}, - {"angle", T_UBF, 16, BITFIELD(2, 0, 11)}, - {"mirrored", T_BMB, 17, 0x10}, - {"spin", T_BMB, 17, 0x40}, - TERM - }, - }, - { PCB_EGKW_SECT_ALT_ALT_ALT_ALT_ELEMENT, 0xFFFF, "alt_alt_alt_alt_element", - { /* field match */ - TERM - }, - { /* subsection sizes */ - {2, 2, SS_DIRECT, NULL}, - TERM - }, - { /* attributes */ - {"x", T_INT, 4, 4}, - {"y", T_INT, 8, 4}, - {"libno", T_INT, 12, 2}, - {"pacno", T_INT, 14, 2}, - {"angle", T_UBF, 16, BITFIELD(2, 0, 11)}, - {"mirrored", T_BMB, 17, 0x10}, - {"spin", T_BMB, 17, 0x40}, - TERM - }, - }, - { PCB_EGKW_SECT_ELEMENT2, 0xFFFF, "element2", - { /* field match */ - TERM - }, - { /* subsection sizes */ - TERM - }, - { /* attributes */ {"name", T_STR, 2, 8}, {"value", T_STR, 10, 14}, TERM }, }, - { PCB_EGKW_SECT_ALT_ELEMENT2, 0xFFFF, "alt_element2", - { /* field match */ - TERM - }, - { /* subsection sizes */ - TERM - }, - { /* attributes */ - {"name", T_STR, 2, 8}, - {"value", T_STR, 10, 14}, - TERM - }, - }, - { PCB_EGKW_SECT_ALT_ALT_ELEMENT2, 0xFFFF, "alt_alt_element2", - { /* field match */ - TERM - }, - { /* subsection sizes */ - TERM - }, - { /* attributes */ - {"name", T_STR, 2, 8}, - {"value", T_STR, 10, 14}, - TERM - }, - }, { PCB_EGKW_SECT_INSTANCE, 0xFFFF, "instance", { /* field match */ TERM @@ -1125,7 +615,7 @@ TERM }, }, - { PCB_EGKW_SECT_TEXT, 0xFFFF, "text", /* basic text block */ + { PCB_EGKW_SECT_TEXT, 0xFFD3, "text", /* basic text block */ { /* field match */ TERM }, @@ -1149,78 +639,6 @@ TERM }, }, - { PCB_EGKW_SECT_ALT_TEXT, 0xFFFF, "alt_text", /* basic text block */ - { /* field match */ - TERM - }, - { /* subsection sizes */ - TERM - }, - { /* attributes */ - {"layer", T_INT, 3, 1}, - {"x", T_INT, 4, 4}, - {"y", T_INT, 8, 4}, - {"size", T_INT, 12, 2}, - {"ratio", T_UBF, 14, BITFIELD(2, 2, 6)}, - /*self._get_uint8_mask(14, 0x7c) >> 2 },*/ - {"angle" , T_UBF, 16, BITFIELD(2, 0, 11)}, - /*self._get_uint16_mask(16, 0x0fff)*/ - {"mirrored" , T_UBF, 16, BITFIELD(2, 12, 12)}, - /*bool(self._get_uint16_mask(16, 0x1000))*/ - {"spin" , T_UBF, 16, BITFIELD(2, 14, 14)}, - /*bool(self._get_uint16_mask(16, 0x4000))*/ - {"textfield", T_STR, 18, 5}, - TERM - }, - }, - { PCB_EGKW_SECT_ALT_ALT_TEXT, 0xFFFF, "alt_alt_text", /* basic text block */ - { /* field match */ - TERM - }, - { /* subsection sizes */ - TERM - }, - { /* attributes */ - {"layer", T_INT, 3, 1}, - {"x", T_INT, 4, 4}, - {"y", T_INT, 8, 4}, - {"size", T_INT, 12, 2}, - {"ratio", T_UBF, 14, BITFIELD(2, 2, 6)}, - /*self._get_uint8_mask(14, 0x7c) >> 2 },*/ - {"angle" , T_UBF, 16, BITFIELD(2, 0, 11)}, - /*self._get_uint16_mask(16, 0x0fff)*/ - {"mirrored" , T_UBF, 16, BITFIELD(2, 12, 12)}, - /*bool(self._get_uint16_mask(16, 0x1000))*/ - {"spin" , T_UBF, 16, BITFIELD(2, 14, 14)}, - /*bool(self._get_uint16_mask(16, 0x4000))*/ - {"textfield", T_STR, 18, 5}, - TERM - }, - }, - { PCB_EGKW_SECT_ALT_ALT_ALT_TEXT, 0xFFFF, "alt_alt_alt_text", /* basic text block */ - { /* field match */ - TERM - }, - { /* subsection sizes */ - TERM - }, - { /* attributes */ - {"layer", T_INT, 3, 1}, - {"x", T_INT, 4, 4}, - {"y", T_INT, 8, 4}, - {"size", T_INT, 12, 2}, - {"ratio", T_UBF, 14, BITFIELD(2, 2, 6)}, - /*self._get_uint8_mask(14, 0x7c) >> 2 },*/ - {"angle" , T_UBF, 16, BITFIELD(2, 0, 11)}, - /*self._get_uint16_mask(16, 0x0fff)*/ - {"mirrored" , T_UBF, 16, BITFIELD(2, 12, 12)}, - /*bool(self._get_uint16_mask(16, 0x1000))*/ - {"spin" , T_UBF, 16, BITFIELD(2, 14, 14)}, - /*bool(self._get_uint16_mask(16, 0x4000))*/ - {"textfield", T_STR, 18, 5}, - TERM - }, - }, { PCB_EGKW_SECT_NETBUSLABEL, 0xFFFF, "netbuslabel", /* text base section equiv. */ { /* field match */ TERM @@ -1245,7 +663,7 @@ TERM }, }, - { PCB_EGKW_SECT_SMASHEDNAME, 0xFFFF, "smashedname", /* text base section equiv. */ + { PCB_EGKW_SECT_SMASHEDNAME, 0xFF73, "smashedname", /* text base section equiv. */ { /* field match */ TERM }, @@ -1269,7 +687,7 @@ TERM }, }, - { PCB_EGKW_SECT_ALT_SMASHEDNAME, 0xFFFF, "alt_smashedname", /* text base section equiv. */ + { PCB_EGKW_SECT_SMASHEDVALUE, 0xFF73, "smashedvalue", /* text base section equiv. */ { /* field match */ TERM }, @@ -1293,150 +711,6 @@ TERM }, }, - { PCB_EGKW_SECT_ALT_ALT_SMASHEDNAME, 0xFFFF, "alt_alt_smashedname", /* text base section equiv. */ - { /* field match */ - TERM - }, - { /* subsection sizes */ - TERM - }, - { /* attributes */ - {"layer", T_INT, 3, 1}, - {"x", T_INT, 4, 4}, - {"y", T_INT, 8, 4}, - {"size", T_INT, 12, 2}, - {"ratio", T_UBF, 14, BITFIELD(2, 2, 6)}, - /*self._get_uint8_mask(14, 0x7c) >> 2 },*/ - {"angle" , T_UBF, 16, BITFIELD(2, 0, 11)}, - /*self._get_uint16_mask(16, 0x0fff)*/ - {"mirrored" , T_UBF, 16, BITFIELD(2, 12, 12)}, - /*bool(self._get_uint16_mask(16, 0x1000))*/ - {"spin" , T_UBF, 16, BITFIELD(2, 14, 14)}, - /*bool(self._get_uint16_mask(16, 0x4000))*/ - {"textfield", T_STR, 18, 5}, - TERM - }, - }, - { PCB_EGKW_SECT_ALT_ALT_ALT_SMASHEDNAME, 0xFFFF, "alt_alt_alt_smashedname", /* text base section equiv. */ - { /* field match */ - TERM - }, - { /* subsection sizes */ - TERM - }, - { /* attributes */ - {"layer", T_INT, 3, 1}, - {"x", T_INT, 4, 4}, - {"y", T_INT, 8, 4}, - {"size", T_INT, 12, 2}, - {"ratio", T_UBF, 14, BITFIELD(2, 2, 6)}, - /*self._get_uint8_mask(14, 0x7c) >> 2 },*/ - {"angle" , T_UBF, 16, BITFIELD(2, 0, 11)}, - /*self._get_uint16_mask(16, 0x0fff)*/ - {"mirrored" , T_UBF, 16, BITFIELD(2, 12, 12)}, - /*bool(self._get_uint16_mask(16, 0x1000))*/ - {"spin" , T_UBF, 16, BITFIELD(2, 14, 14)}, - /*bool(self._get_uint16_mask(16, 0x4000))*/ - {"textfield", T_STR, 18, 5}, - TERM - }, - }, - { PCB_EGKW_SECT_SMASHEDVALUE, 0xFFFF, "smashedvalue", /* text base section equiv. */ - { /* field match */ - TERM - }, - { /* subsection sizes */ - TERM - }, - { /* attributes */ - {"layer", T_INT, 3, 1}, - {"x", T_INT, 4, 4}, - {"y", T_INT, 8, 4}, - {"size", T_INT, 12, 2}, - {"ratio", T_UBF, 14, BITFIELD(2, 2, 6)}, - /*self._get_uint8_mask(14, 0x7c) >> 2 },*/ - {"angle" , T_UBF, 16, BITFIELD(2, 0, 11)}, - /*self._get_uint16_mask(16, 0x0fff)*/ - {"mirrored" , T_UBF, 16, BITFIELD(2, 12, 12)}, - /*bool(self._get_uint16_mask(16, 0x1000))*/ - {"spin" , T_UBF, 16, BITFIELD(2, 14, 14)}, - /*bool(self._get_uint16_mask(16, 0x4000))*/ - {"textfield", T_STR, 18, 5}, - TERM - }, - }, - { PCB_EGKW_SECT_ALT_SMASHEDVALUE, 0xFFFF, "alt_smashedvalue", /* text base section equiv. */ - { /* field match */ - TERM - }, - { /* subsection sizes */ - TERM - }, - { /* attributes */ - {"layer", T_INT, 3, 1}, - {"x", T_INT, 4, 4}, - {"y", T_INT, 8, 4}, - {"size", T_INT, 12, 2}, - {"ratio", T_UBF, 14, BITFIELD(2, 2, 6)}, - /*self._get_uint8_mask(14, 0x7c) >> 2 },*/ - {"angle" , T_UBF, 16, BITFIELD(2, 0, 11)}, - /*self._get_uint16_mask(16, 0x0fff)*/ - {"mirrored" , T_UBF, 16, BITFIELD(2, 12, 12)}, - /*bool(self._get_uint16_mask(16, 0x1000))*/ - {"spin" , T_UBF, 16, BITFIELD(2, 14, 14)}, - /*bool(self._get_uint16_mask(16, 0x4000))*/ - {"textfield", T_STR, 18, 5}, - TERM - }, - }, - { PCB_EGKW_SECT_ALT_ALT_SMASHEDVALUE, 0xFFFF, "alt_alt_smashedvalue", /* text base section equiv. */ - { /* field match */ - TERM - }, - { /* subsection sizes */ - TERM - }, - { /* attributes */ - {"layer", T_INT, 3, 1}, - {"x", T_INT, 4, 4}, - {"y", T_INT, 8, 4}, - {"size", T_INT, 12, 2}, - {"ratio", T_UBF, 14, BITFIELD(2, 2, 6)}, - /*self._get_uint8_mask(14, 0x7c) >> 2 },*/ - {"angle" , T_UBF, 16, BITFIELD(2, 0, 11)}, - /*self._get_uint16_mask(16, 0x0fff)*/ - {"mirrored" , T_UBF, 16, BITFIELD(2, 12, 12)}, - /*bool(self._get_uint16_mask(16, 0x1000))*/ - {"spin" , T_UBF, 16, BITFIELD(2, 14, 14)}, - /*bool(self._get_uint16_mask(16, 0x4000))*/ - {"textfield", T_STR, 18, 5}, - TERM - }, - }, - { PCB_EGKW_SECT_ALT_ALT_ALT_SMASHEDVALUE, 0xFFFF, "alt_alt_alt_smashedvalue", /* text base section equiv. */ - { /* field match */ - TERM - }, - { /* subsection sizes */ - TERM - }, - { /* attributes */ - {"layer", T_INT, 3, 1}, - {"x", T_INT, 4, 4}, - {"y", T_INT, 8, 4}, - {"size", T_INT, 12, 2}, - {"ratio", T_UBF, 14, BITFIELD(2, 2, 6)}, - /*self._get_uint8_mask(14, 0x7c) >> 2 },*/ - {"angle" , T_UBF, 16, BITFIELD(2, 0, 11)}, - /*self._get_uint16_mask(16, 0x0fff)*/ - {"mirrored" , T_UBF, 16, BITFIELD(2, 12, 12)}, - /*bool(self._get_uint16_mask(16, 0x1000))*/ - {"spin" , T_UBF, 16, BITFIELD(2, 14, 14)}, - /*bool(self._get_uint16_mask(16, 0x4000))*/ - {"textfield", T_STR, 18, 5}, - TERM - }, - }, { PCB_EGKW_SECT_PACKAGEVARIANT, 0xFFFF }, { PCB_EGKW_SECT_DEVICE, 0xFFFF }, { PCB_EGKW_SECT_PART, 0xFFFF }, @@ -1443,7 +717,7 @@ { PCB_EGKW_SECT_SCHEMABUS, 0xFFFF }, { PCB_EGKW_SECT_VARIANTCONNECTIONS, 0xFFFF }, { PCB_EGKW_SECT_SCHEMACONNECTION, 0xFFFF }, - { PCB_EGKW_SECT_CONTACTREF, 0xFFFF, "contactref", + { PCB_EGKW_SECT_CONTACTREF, 0xFFF57, "contactref", { /* field match */ TERM }, @@ -1456,58 +730,6 @@ TERM }, }, - { PCB_EGKW_SECT_ALT_CONTACTREF, 0xFFFF, "alt_contactref", - { /* field match */ - TERM - }, - { /* subsection sizes */ - TERM - }, - { /* attributes */ - {"partnumber", T_INT, 4, 2}, - {"pin", T_INT, 6, 2}, - TERM - }, - }, - { PCB_EGKW_SECT_ALT_ALT_CONTACTREF, 0xFFFF, "alt_alt_contactref", - { /* field match */ - TERM - }, - { /* subsection sizes */ - TERM - }, - { /* attributes */ - {"partnumber", T_INT, 4, 2}, - {"pin", T_INT, 6, 2}, - TERM - }, - }, - { PCB_EGKW_SECT_ALT_ALT_ALT_CONTACTREF, 0xFFFF, "alt_alt_alt_contactref", - { /* field match */ - TERM - }, - { /* subsection sizes */ - TERM - }, - { /* attributes */ - {"partnumber", T_INT, 4, 2}, - {"pin", T_INT, 6, 2}, - TERM - }, - }, - { PCB_EGKW_SECT_ALT_ALT_ALT_ALT_CONTACTREF, 0xFFFF, "alt_alt_alt_alt_contactref", - { /* field match */ - TERM - }, - { /* subsection sizes */ - TERM - }, - { /* attributes */ - {"partnumber", T_INT, 4, 2}, - {"pin", T_INT, 6, 2}, - TERM - }, - }, { PCB_EGKW_SECT_SMASHEDPART, 0xFFFF, "smashedpart", /* same as text basesection */ { /* field match */ TERM @@ -1556,7 +778,7 @@ TERM }, }, - { PCB_EGKW_SECT_ATTRIBUTE, 0xFFFF, "attribute", /* same as text basesection */ + { PCB_EGKW_SECT_ATTRIBUTE, 0xFF7F, "attribute", /* same as text basesection */ { /* field match */ TERM }, @@ -1580,30 +802,6 @@ TERM }, }, - { PCB_EGKW_SECT_ALT_ATTRIBUTE, 0xFFFF, "alt_attribute", /* same as text basesection */ - { /* field match */ - TERM - }, - { /* subsection sizes */ - TERM - }, - { /* attributes */ - {"layer", T_INT, 3, 1}, - {"x", T_INT, 4, 4}, - {"y", T_INT, 8, 4}, - {"size", T_INT, 12, 2}, - {"ratio", T_UBF, 14, BITFIELD(2, 2, 6)}, - /*self._get_uint8_mask(14, 0x7c) >> 2 },*/ - {"angle" , T_UBF, 16, BITFIELD(2, 0, 11)}, - /*self._get_uint16_mask(16, 0x0fff)*/ - {"mirrored" , T_UBF, 16, BITFIELD(2, 12, 12)}, - /*bool(self._get_uint16_mask(16, 0x1000))*/ - {"spin" , T_UBF, 16, BITFIELD(2, 14, 14)}, - /*bool(self._get_uint16_mask(16, 0x4000))*/ - {"textfield", T_STR, 18, 5}, - TERM - }, - }, { PCB_EGKW_SECT_ATTRIBUTEVALUE, 0xFFFF, "attribute-value", { /* field match */ TERM