Index: work/alien_formats/eagle/eagle_bin/test_parser/eagle_bin.c =================================================================== --- work/alien_formats/eagle/eagle_bin/test_parser/eagle_bin.c (revision 9409) +++ work/alien_formats/eagle/eagle_bin/test_parser/eagle_bin.c (revision 9410) @@ -833,7 +833,30 @@ TERM }, }, - { PCB_EGKW_SECT_SMASHEDXREF }, + { PCB_EGKW_SECT_SMASHEDXREF, "smashedxref", + { /* 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 + }, + }, /* unknown leaves */ { 0x5300 }, Index: work/alien_formats/eagle/eagle_bin/test_parser/eagle_bin.h =================================================================== --- work/alien_formats/eagle/eagle_bin/test_parser/eagle_bin.h (revision 9409) +++ work/alien_formats/eagle/eagle_bin/test_parser/eagle_bin.h (revision 9410) @@ -48,7 +48,8 @@ PCB_EGKW_SECT_ATTRIBUTE = 0x4100, PCB_EGKW_SECT_ATTRIBUTEVALUE = 0x4200, PCB_EGKW_SECT_FRAME = 0x4300, - PCB_EGKW_SECT_SMASHEDXREF = 0x4400 + PCB_EGKW_SECT_SMASHEDXREF = 0x4400, + PCB_EGKW_SECT_FREETEXT = 0x1312 } pcb_eagle_binkw_t; int pcb_egle_bin_load(void *ctx, FILE *f, const char *fn);