Index: trunk/src_plugins/io_eagle/read.c =================================================================== --- trunk/src_plugins/io_eagle/read.c (revision 31905) +++ trunk/src_plugins/io_eagle/read.c (revision 31906) @@ -553,7 +553,7 @@ eagle_layerid_t ln = eagle_get_attrl(st, subtree, "layer", -1); rnd_coord_t X, Y, size, bbw, bbh, anchx, anchy, basel; const char *rot, *text_val, *align; - unsigned int rotdeg = 0; + unsigned int rotdeg = 0, spin = 0; enum { ALEFT=-1, ATOP=-1, CENTER=0, ARIGHT=+1, ABOTTOM=+1 } ax = ALEFT, ay = ABOTTOM; /* anchor position (text alignment) */ pcb_flag_t text_flags = pcb_flag_make(0); pcb_layer_t *ly; @@ -617,7 +617,11 @@ rnd_trace("text=%s %mm;%mm bbw=%mm bbh=%mm align: %d %d anchor: %mm %mm\n", text_val, X, Y, bbw, bbh, ax, ay, anchx, anchy); rot = eagle_get_attrs(st, subtree, "rot", NULL); - if (rot != NULL) { + if (rot != NULL) { /* strict order seems to be: SMR */ + if (*rot == 'S') { + spin = 1; + rot++; + } if (*rot == 'M') { mirror = PCB_TXT_MIRROR_X; rot++;