aboutsummaryrefslogtreecommitdiff
path: root/doc/SYXformat.txt
diff options
context:
space:
mode:
Diffstat (limited to 'doc/SYXformat.txt')
-rw-r--r--doc/SYXformat.txt22
1 files changed, 22 insertions, 0 deletions
diff --git a/doc/SYXformat.txt b/doc/SYXformat.txt
new file mode 100644
index 0000000..9c02ccf
--- /dev/null
+++ b/doc/SYXformat.txt
@@ -0,0 +1,22 @@
1SYX file format
2===============
3The SYX file format packs every 7 8-bit bytes of a binary file
4into 8 7-bit bytes, which allows for a MIDI compatible file.
5These files can be converted to true binary files using the
6hd24syx2bin utility.
7
8Once converted, the format seems to be as follows:
9
10byte 0x00-0x07: string 'HD24CODE'
11byte 0x08-0x0b: unknown (checksum?)
12byte 0x0c-0x0f: version number string (e.g. "1.20")
13byte 0x10-0x13: 32-bit word, value 0
14byte 0x14-0x1b: Release date string (MM/DD/YY)
15byte 0x1c-0x1f: 32-bit word, value 0
16byte 0x20-0x27: Build time (hh:mm:ss)
17byte 0x28-0x2b: 32-bit word, value 0
18byte 0x2c-0x2f: binary file length in byte.
19 for version 1.20, file length is
20 712736 so bytes 0x2c-0x2f are
21 0xae020 or 0x00, 0x0a, 0xe0, 0x20
22