aboutsummaryrefslogtreecommitdiff
path: root/doc/eef.txt
diff options
context:
space:
mode:
authorJavier Degirolmo2012-08-27 07:58:24 -0300
committerJavier Degirolmo2012-08-27 07:58:24 -0300
commit6266e3e5577bc7c11d300a873c150b6a7900376a (patch)
tree82b14ee437f6f802cd5cd896dd66c58c29ea7ec0 /doc/eef.txt
parent2f83b4822b5825d58ab4a74e4e9e5f0be2cc78f2 (diff)
Fuck it, we're doing it live
Diffstat (limited to 'doc/eef.txt')
-rw-r--r--doc/eef.txt35
1 files changed, 35 insertions, 0 deletions
diff --git a/doc/eef.txt b/doc/eef.txt
new file mode 100644
index 0000000..c3ab92e
--- /dev/null
+++ b/doc/eef.txt
@@ -0,0 +1,35 @@
+=============================================================================
+
+OVERVIEW
+
+ EEF stands for "Echo Envelope Format" and it's the format in which PSG
+ instruments are stored.
+
+FORMAT
+
+ EEF instruments consist of a list of volume levels. Each byte represents
+ a different volume level, and the value ranges from $00 (loudest) to $0F
+ (quietest). Each byte represents one tick (i.e. 1/60th of a second).
+
+ Looping is possible. The start of the loop is marked by a byte with value
+ $FE, while the end of the loop is marked by a byte with value $FF. There
+ must be at least one volume byte between them or Echo will hang.
+
+ To make a non-looping PSG instrument, just put the last volume value
+ inside the loop.
+
+=============================================================================
+
+NOTES
+
+ Yes, this format was kind of an afterthought. Later I may improve it to
+ provide at least some kind of RLE-like compression, but for now you'll
+ have to stick with this :P
+
+ Also, since PSG instruments are required to use PSG channels and I know
+ many of you don't want to mess with them at all, here's a flat PSG
+ instrument (i.e. no envelope):
+
+ $FE,$00,$FF
+
+=============================================================================