Syntax of the Orchestra The Csound orchestra (.orc) or the <CsInstruments> section of a csd file, contains: A header section, which specifies global options for instrument performance A list of User defined opcodes and instrument blocks containing UDO and instrument definitions. The orchestra header, instrument blocks, and UDOs contain Orchestra statements. An orchestra statement in Csound has the format: label: result opcode argument1, argument2, ... ;comments The label is optional and identifies the basic statement that follows as the potential target of a go-to operation (see Program Flow Control). A label has no effect on the statement per se. Depending on their function, some opcodes produce no output, so they have no result value. Others take no arguments and only produce a result. Every orchestra statement must be on a single line, however long lines can be wrapped to a new line using the '\' character. This character indicates that the next line is part of the current one, this way you can split a line for easier reading, like this: a2 oscbnk kcps, 1.0, kfmd1, 0.0, 40, 203, 0.1, 0.2, kamfr, kamfr2, 148, \ 0, 0, 0, 0, 0, 0, -1, \ kfnum, 3, 4 Comments are optional and are for the purpose of letting the user document his orchestra code. Comments begin with a semicolon (;) or // and extend to the end of the line. Comments can optionally be in C-style, spanning multiple lines like this: /* Anything in here -------- is a comment which can span several lines --------- */ The remainder (result, opcode, and arguments) form the basic statement. This also is optional, i.e. a line may have only a label or comment or be entirely blank. If present, the basic statement must be complete on one line, and is terminated by a carriage return and line feed. The opcode determines the operation to be performed; it usually takes some number of input values (or arguments, with a maximum value of about 800); and it usually has a result field variable to which it sends output values at some fixed rate. There are four possible rates: once only, at orchestra setup time (effectively a permanent assignment) once at the beginning of each note (at initialization (init) time: i-rate) once every performance-time control loop (perf-time control rate, or k-rate) once each sound sample of every control loop (perf-time audio rate, or a-rate) &orchheader; &orchiblock; &orchstatemnt; &orchkvar; &orchexpress; &orchdirfiles; &orchnomen; &orchmacros; &orchnamedinstruments; &orchUDO; &orchtab; &oviewfunctional; &oviewserver;