Four releases wrote this format, from Macromedia Flash MX 2004 in 2003 to Adobe Flash CS4 Professional in 2008, and later releases write it when a document is saved as Flash CS4. Each one kept the layout of the one before and raised the revisions of the records it extended, so one reader reads them all by testing each record’s revision. Flash CS5 replaced the format with XFL.
Releases
| Release | Released | Version | Contents revision | Save as older |
|---|---|---|---|---|
| Macromedia Flash MX 2004 | September 2003 | 7 | 0x38 | Flash MX, in the single-byte format |
| Macromedia Flash 8 | September 2005 | 8 | 0x3F | not known |
| Adobe Flash CS3 Professional | 2007 | 9 | 0x43 | Flash 8 |
| Adobe Flash CS4 Professional | September 2008 | 10 | 0x47 | Flash CS3 |
| Adobe Flash CS5 and CS5.5 Professional | 2010, 2011 | 11, 11.5 | 0x47 | Save as Flash CS4 writes this format |
Flash CS4 documents cannot be opened by CS3, which is why CS4 offers to save as CS3. Flash CS5 and every later release still open documents in this format. Flash CS4 documents saved again by Flash CS5.5 were seen with time stamps from 2011 and 2012 in their stream names and with a zero or a different class ID on the root. The release day of Flash CS3 is not certain.
Record revisions
The revision byte of each record, as each release writes it. The values come from the JPEXS FLA converter’s table; those marked “seen” were confirmed in real files.
| Release | Contents | Scene record | Object part | Layer | Frame | Frame block | Instance block |
|---|---|---|---|---|---|---|---|
| Flash MX 2004 | 0x38 seen | 0x16 seen | 2 seen | 0x0B | 0x17 | 4 | 4 |
| Flash 8 | 0x3F seen | 0x17 seen | 4 seen | 0x0B seen | 0x18 seen | 4 seen | 4 seen |
| Flash CS3 | 0x43 seen | 0x18 seen | 5 seen | 0x0B | 0x1A | 5 | 5 |
| Flash CS4 | 0x47 seen | 0x19 seen | 5 seen | 0x0D | 0x1D seen | 5 seen | 5 |
- Contents – the first byte of the
Contentsstream, the document revision - Scene record –
CDocumentPage, inContents - Object part – the
CPicObjrevision, the byte afterCPicPageat the start of a timeline stream - Layer and Frame –
CPicLayerandCPicFrame - Frame block and instance block – the revision of the ActionScript block on keyframes and on movie clip and button instances
A document of this format can hold streams written by Flash MX and earlier, with those releases’ revisions and single-byte text; see documents that mix encodings. The explorer reads the document revision to name the release in its Document section, and reads each stream by the revisions found in that stream.