summaryrefslogtreecommitdiff
path: root/spec/riff.fspec
diff options
context:
space:
mode:
Diffstat (limited to 'spec/riff.fspec')
-rw-r--r--spec/riff.fspec18
1 files changed, 18 insertions, 0 deletions
diff --git a/spec/riff.fspec b/spec/riff.fspec
new file mode 100644
index 0000000..39de9d3
--- /dev/null
+++ b/spec/riff.fspec
@@ -0,0 +1,18 @@
+struct riff_chunk {
+ u8 header[4] str;
+ u32 size;
+ // Needs union, for LIST header there is no data
+ // type: u8[4] str;
+ u8 data[size] hex;
+};
+
+struct riff_header {
+ u8 header[4] str;
+ u32 size;
+ u8 type[4] str;
+};
+
+struct riff {
+ struct riff_header header;
+ struct riff_chunk chunks[until (false)];
+};