mirror of
https://github.com/WerWolv/ImHex-Patterns.git
synced 2026-03-28 07:47:02 -05:00
patterns: Added SWF header pattern (#219)
* patterns: Added pattern for SWF files. * Added test file for SWF header. * Update README with SWF file type.
This commit is contained in:
@@ -101,6 +101,7 @@ Everything will immediately show up in ImHex's Content Store and gets bundled wi
|
||||
| SPIRV | | [`patterns/spirv.hexpat`](patterns/spirv.hexpat) | SPIR-V header and instructions |
|
||||
| STL | `model/stl` | [`patterns/stl.hexpat`](patterns/stl.hexpat) | STL 3D Model format |
|
||||
| StuffItV5 | `application/x-stuffit` | [`patterns/sit5.hexpat`](patterns/sit5.hexpat) | StuffIt V5 archive |
|
||||
| SWF | |[`patterns/swf.hexpat`](patterns/swf.hexpat) | Shockwave Flash file format |
|
||||
| TAR | `application/x-tar` | [`patterns/tar.hexpat`](patterns/tar.hexpat) | Tar file format |
|
||||
| TIFF | `image/tiff` | [`patterns/tiff.hexpat`](patterns/tiff.hexpat) | Tag Image File Format |
|
||||
| TGA | `image/tga` | [`patterns/tga.hexpat`](patterns/tga.hexpat) | Truevision TGA/TARGA image |
|
||||
|
||||
29
patterns/swf.hexpat
Normal file
29
patterns/swf.hexpat
Normal file
@@ -0,0 +1,29 @@
|
||||
#pragma author saturnaliam
|
||||
#pragma description SWF file header
|
||||
#pragma endian little
|
||||
#include <type/magic.pat>
|
||||
|
||||
|
||||
// RECTs are more complicated, but for the header,
|
||||
// this works fine.
|
||||
bitfield Rect {
|
||||
nSize : 5 [[name("N Size")]];
|
||||
signed xMin : 15 [[name("X Min")]];
|
||||
signed xMax : 15 [[name("X Max")]];
|
||||
signed yMin : 15 [[name("Y Min")]];
|
||||
signed yMax : 15 [[name("Y Max")]];
|
||||
};
|
||||
|
||||
|
||||
struct Header {
|
||||
char compressionSignature [[name("Compression"), comment("F - Uncompressed\nC - zlib Compressed\nZ - LZMA compressed")]];
|
||||
type::Magic<"WS"> signature [[name("Signature")]];
|
||||
u8 swfVersion [[name("SWF Version")]];
|
||||
u32 bytesSize [[name("Uncompressed Size")]];
|
||||
be Rect rect [[name("Frame Size"), comment("Needs to be uncompressed to have the correct value.")]];
|
||||
padding[1];
|
||||
u8 frameRate [[name("Framerate"), comment("Needs to be uncompressed to have the correct value.")]];
|
||||
u16 frameCount [[name("Frame Count"), comment("Needs to be uncompressed to have the correct value.")]];
|
||||
};
|
||||
|
||||
Header header @ 0x00;
|
||||
BIN
tests/patterns/test_data/swf.hexpat.swf
Normal file
BIN
tests/patterns/test_data/swf.hexpat.swf
Normal file
Binary file not shown.
Reference in New Issue
Block a user