Athtune v0.1 (19.dez.2009)

This is a very unoptimized build.
Requirements:
  .net Framework 2.0

Usage:
  athtune.exe input.athtune [output.wav]

A .athtune file consists of multiple sections, ##synth starts a synth section,
and ##tune starts a tune section(there's only one of those per file).


Everywhere:
  ##include name     = pastes name.athtuneinc into the positon of this command


##tune section:
  A-Z           = choose channel
  <             = lower octave
  >             = raise octave
  @aNUM - @zNUM = set custom paramater to NUM (e.g @c0.34 means that param['c'] = 0.34)
  @INUM         = set instrument to synth of index NUM(starts at zero index)
  @VNUM         = set channel volume to NUM
  @ONUM         = set octave to NUM
  @BNUM         = set bpm
  @A[NUM...]    = set note arp(experimental) (e.g @A[0 3 7] for a minor chord)

  note syntax:
  a-g       = note, can be followed by # and b to make a sharp or flat of it
              (e.g d# is a d sharp, and db is a d flat)
  
  r         = rest, length works the same as for notes

  [note]LEN = set note length to LEN(e.g g16 for a "g" 16th note) the value used will 
              be used as default for following notes that don't include a LEN
              LEN can be followed by a dot, to make it a dotted note
              weird values allowed, so could actually go for a 7th note if you want :P

  [note]t   = make this note a triplet, meaning it's two thirds of it's normal length
              (e.g c4t c4t c4t is of the same length as c4 c4)
              while you can use the triplet syntax with notelengths be aware that
              it isn't part of the notelength, e.g c4t c c would be one triplet note
              and two normal notes, probably not what was intended, for that you
              would have to write c4t ct ct
  
  [note ...]= chord, the notes will be played at the same time. > and < are allowed
              e.g [c e g > c] would play c, e, g, and c of a higher octave
              note length can be written after the ] character, optional



##synth section:
basically c# code with special data type "num"(just an alias to double really).
no real docs yet, read examples and helper.athtuneinc to get an idea if you want.
more extensive docs later (maybe)



for bug reports, suggestions or other things:
  athaudia@gmail.com