Write some amount of documentation
This commit is contained in:
62
docs/selection.md
Normal file
62
docs/selection.md
Normal file
@@ -0,0 +1,62 @@
|
||||
# Selection
|
||||
|
||||
Cycle through values over time for evolving patterns.
|
||||
|
||||
## Step Cycle
|
||||
|
||||
`cycle` cycles through values based on step runs:
|
||||
|
||||
```forth
|
||||
60 64 67 3 cycle note ( cycle through C, E, G )
|
||||
```
|
||||
|
||||
Each time the step runs, it picks the next value.
|
||||
|
||||
## Pattern Cycle
|
||||
|
||||
`pcycle` cycles based on pattern iteration:
|
||||
|
||||
```forth
|
||||
60 64 67 3 pcycle note ( change note each pattern loop )
|
||||
```
|
||||
|
||||
## Emit-Time Cycle
|
||||
|
||||
`tcycle` creates a cycle list resolved at emit time, useful with `.!`:
|
||||
|
||||
```forth
|
||||
60 64 67 3 tcycle note 3 .! ( emit C, E, G in sequence )
|
||||
```
|
||||
|
||||
## Examples
|
||||
|
||||
Rotating bass notes:
|
||||
|
||||
```forth
|
||||
"bass" s
|
||||
c3 e3 g3 b3 4 cycle note
|
||||
.
|
||||
```
|
||||
|
||||
Evolving pattern over loops:
|
||||
|
||||
```forth
|
||||
"lead" s
|
||||
0.5 1.0 0.75 0.25 4 pcycle gain
|
||||
.
|
||||
```
|
||||
|
||||
Arpeggiated chord:
|
||||
|
||||
```forth
|
||||
"pluck" s
|
||||
c4 e4 g4 c5 4 tcycle note 4 .!
|
||||
```
|
||||
|
||||
## Words
|
||||
|
||||
| Word | Stack | Description |
|
||||
|------|-------|-------------|
|
||||
| `cycle` | (v1..vn n -- val) | Cycle by step runs |
|
||||
| `pcycle` | (v1..vn n -- val) | Cycle by pattern iteration |
|
||||
| `tcycle` | (v1..vn n -- list) | Create cycle list for emit-time |
|
||||
Reference in New Issue
Block a user