From db660e93081e63540bb12d8d5268c37879480929 Mon Sep 17 00:00:00 2001 From: Raphael Forment Date: Mon, 28 Aug 2023 20:39:03 +0200 Subject: [PATCH] some more things --- src/Documentation.ts | 53 ++++++++++++++++++++++++++++++++++++-------- 1 file changed, 44 insertions(+), 9 deletions(-) diff --git a/src/Documentation.ts b/src/Documentation.ts index fee1c27..1f43352 100644 --- a/src/Documentation.ts +++ b/src/Documentation.ts @@ -1255,6 +1255,17 @@ Ziffers supports all the keys and scales. Keys can be defined by using [scientif | Ionalian   | 1312122 | | ... | And it goes on for **1490** scales | +${makeExample( + "What the hell is the Modimic scale?", +` +z1("s (0,8) 0 0 (0,5) 0 0").sound('sine') + .scale('modimic').fmi(2).fmh(2).room(0.5) + .size(0.5).sustain(0.1) .delay(0.5) + .delay(0.125).delayfb(0.25).out(); +mod(.5) :: snd(['kick', 'hat'].div(.5)).out() +`, true)} + + @@ -1274,23 +1285,37 @@ You can also use more traditional Scala format or by extended notation defined by Sevish Scale workshop, for example: - **Young:** 106. 198. 306.2 400.1 502. 604. 697.9 806.1 898.1 1004.1 1102. 1200. - **Wendy carlos:** 17/16 9/8 6/5 5/4 4/3 11/8 3/2 13/8 5/3 7/4 15/8 2/1 -## Methods -Ziffers numbered methods **(z0-z16)** can be used to parse and play patterns. Each method is individually cached and can be used to play patterns simultaniously. +${makeExample( + "Wendy Carlos, here we go!", +` +z1("s ^ (0,8) 0 0 _ (0,5) 0 0").sound('sine') + .scale('17/16 9/8 6/5 5/4 4/3 11/8 3/2 13/8 5/3 7/4 15/8 2/1').fmi(2).fmh(2).room(0.5) + .size(0.5).sustain(0.15).delay(0.1) + .delay(0.25).delayfb(0.5).out(); +mod(1, 1.75) :: snd(['kick', 'hat'].div(1)).out() +`, true)} -## Chaining and options +## Synchronization + +Ziffers numbered methods **(z0-z16)** can be used to parse and play patterns. Each method is individually cached and can be used to play multiple patterns simultaneously. They can be synchronized together by using a **cue** system. By default, each Ziffers expression will have a different duration. This system is thus necessary to make everything fit together in a loop-based environment like Topos. -Ziffers patterns can be chained to sound() and midi() to produce different outputs. Chaining is often alternative for passing in options, which can be more efficient. Methods available for chaining are: -* key() - for changing key -* scale() - for chaning scale -* octave() - for changing octave -* sound() - for outputting pattern as sounds (See Sound) -* midi() - for outputting pattern as midi (See Midi) ## Examples @@ -1756,6 +1781,16 @@ Topos is made to be controlled entirely with a keyboard. It is recommanded to st const chaining: string = ` # Chaining + +## Ziffers +Ziffers patterns can be chained to sound() and midi() to produce different outputs. Chaining is often alternative for passing in options, which can be more efficient. Methods available for chaining are: +* key() - for changing key +* scale() - for chaning scale +* octave() - for changing octave +* sound() - for outputting pattern as sounds (See Sound) +* midi() - for outputting pattern as midi (See Midi) + + `; return {