Compare commits

..

No commits in common. "4bca3123f03ad6916771d1a46a88aaf2221ca440" and "bf4c81338097c973465f8142b9d9f384569bd66e" have entirely different histories.

9 changed files with 7 additions and 58 deletions

2
.gitignore vendored
View File

@ -1,2 +0,0 @@
target/
sunny/Cargo.lock

10
Cargo.lock generated
View File

@ -1,10 +0,0 @@
# This file is automatically @generated by Cargo.
# It is not intended for manual editing.
[[package]]
name = "sunny"
version = "0.1.0"
[[package]]
name = "sunny-asm"
version = "0.1.0"

View File

@ -1,5 +0,0 @@
[workspace]
members = [
"sunny",
"sunny-asm"
]

View File

@ -22,24 +22,20 @@ octave 2
play c play c
play d play d
play e play e
channel 1 { set nF5; trigger } off
off; wait beat
play c play c
play d play d
play e play e
channel 1 { set nG5; trigger } off
off; wait beat
play c play c
play d play d
channel 1 { set nF5; trigger }
play e play e
channel 1 { set nG5; trigger } off
off; wait beat
play b play b
off; wait beat off
``` ```
### Values ### Values
@ -51,7 +47,7 @@ or **absolute** like like `C2`, `Ab4`, or `F#0`.
Where a note value is needed, a voltage value (as below) can be substituted, prefixed with a `v`, like `v12c`. Where a note value is needed, a voltage value (as below) can be substituted, prefixed with a `v`, like `v12c`.
- Voltage values, which can be expressed in volts (like `2v`), millivolts - Voltage values, which can be expressed in volts (like `2v`), millivolts
(like `2330mv`), cents (like `220c`), semitones (like `4s`), or octaves (like `1o`), and which can be **absolute** or **relative** (like `+2c`). (like `2330mv`), cents (like `220c`), semitones (like `4c`), or octaves (like `1o`), and which can be **absolute** or **relative** (like `+2c`).
Where a voltage value is needed, a note value (as above) can be substituted, prefixed with an `n`, like `n2C#`. Where a voltage value is needed, a note value (as above) can be substituted, prefixed with an `n`, like `n2C#`.
- Conf(iguration) values, which are used to set up channel parameters, - Conf(iguration) values, which are used to set up channel parameters,
@ -83,9 +79,9 @@ very short time, then turns it off.
### Channel Control ### Channel Control
- `channel <int> [{ <commands> }]` (abbr. `c`) sets the channel currently being controlled, or executes the given commands on the given channel. - `channel <int>` sets the channel currently being controlled.
- `octave <int>` (abbr. `v`) sets the octave, between 0 and 8, to which simple and relative note values will be played. - `octave <int>` sets the octave, between 0 and 8, to which simple and relative note values will be played.
- `bpm <natural>` sets the tempo of the channel. This is the time used by the time value `beat` and by the `play` instruction. - `bpm <natural>` sets the tempo of the channel. This is the time used by the time value `beat` and by the `play` instruction.

View File

View File

@ -1,9 +0,0 @@
[package]
name = "sunny-asm"
version = "0.1.0"
authors = ["Leonora Tindall <nora@nora.codes>"]
edition = "2018"
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
[dependencies]

View File

@ -1,3 +0,0 @@
fn main() {
println!("Hello, world!");
}

View File

@ -1,9 +0,0 @@
[package]
name = "sunny"
version = "0.1.0"
authors = ["Leonora Tindall <nora@nora.codes>"]
edition = "2018"
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
[dependencies]

View File

@ -1,9 +0,0 @@
#[cfg(test)]
mod tests {
#[test]
fn it_works() {
assert_eq!(2 + 2, 4);
}
}