SEW
Status
| Field | Value |
|---|---|
| Extension(s) | .sew |
| Common ecosystem | Older Janome / Elna / Kenmore |
| Format family | Machine-specific stitch file |
| Satin Studio status | Researching |
| Open / import | No |
| Export | No |
| Confidence | Medium. |
What it is
SEW is an older Janome-family format used by some Janome, Elna, and Kenmore machines.
Satin Studio direction
Useful as legacy import if files are available. Export would need strict size and stitch-count checks.
Versions and variants
SEW is a legacy Janome-family format. Machine-generation limits such as hoop size and stitch count need to be tracked with version or machine notes.
File identification notes
Reported structure uses signed x, y movement records, x == 0x80 control events, and color lookup through a fixed/magic-number thread table rather than arbitrary RGB metadata.
Observed structure notes
- Observed SEW files start with a little-endian color count and 16-bit color indexes into a fixed Janome-family palette.
- Observed readers seek to offset
0x1D78for stitch data. Normal movement is signed two-bytedx, dy; first byte0x80introduces a control byte plus two payload bytes. - Observed controls: low bit set means color change,
0x04or0x02jump with payload movement, and0x10stitch/control marker with payload movement. - Observed SEW stitch import depends on a fixed stitch-data offset; header bytes before
0x1D78carry palette and machine metadata that remain underdocumented.
Structure sketch
Observed SEW files contain palette indexes and a fixed stitch-data offset:
struct SewFile<'a> {
color_count: u16,
palette_indexes: &'a [u16],
padding_until_stitches: &'a [u8], // stitch stream observed at offset 0x1D78
records: &'a [SewRecord],
}
enum SewRecord {
Stitch { dx: i8, dy: i8 },
ColorChange, // marker 0x80, control bit 0x01 set
Jump { dx: i8, dy: i8 }, // marker 0x80, control 0x04 or 0x02
StitchControl { dx: i8, dy: i8 }, // marker 0x80, control 0x10
}
What we still need
Old-machine files, exact command mapping, thread lookup table behavior, and documented machine limits.