diff --git a/Crash1.json b/Programs/Sounds/Crash1.json similarity index 100% rename from Crash1.json rename to Programs/Sounds/Crash1.json diff --git a/LowFuel.json b/Programs/Sounds/LowFuel.json similarity index 100% rename from LowFuel.json rename to Programs/Sounds/LowFuel.json diff --git a/Programs/Sounds/boom.asm b/Programs/Sounds/boom.asm index c6bd568..a12c77f 100644 --- a/Programs/Sounds/boom.asm +++ b/Programs/Sounds/boom.asm @@ -1,4 +1,4 @@ -; BoomPatch, converted from External/soundThing/patches/Drums/Kick808.json by SoundPatch. +; BoomPatch, converted from Programs/Sounds/Crash1.json by SoundPatch. ; Designed in soundThing, where it can be heard. Do not edit the numbers ; here: change the patch and convert it again. @@ -6,50 +6,50 @@ BoomPatch: 0d47 ; how many pairs follow - 0x50 0x01 ; the level is the amplitude envelope - 0x00 0d0 ; oscillator 0, waveform + 0x00 0d5 ; oscillator 0, waveform 0x01 0d255 ; gain 0x02 0d128 ; duty 0x03 0d128 ; detune, in cents - 0x04 0d127 ; octave + 0x04 0d130 ; octave 0x05 0d1 ; on 0x06 0d0 ; what moves its width 0x07 0d128 ; and how far 0x08 0d2 ; what moves its pitch - 0x09 0d197 ; and how far + 0x09 0d147 ; and how far 0x0A 0d0 ; what moves its gain - 0x0B 0d128 ; and how far + 0x0B 0d255 ; and how far 0x10 0d5 ; oscillator 1, waveform - 0x11 0d146 ; gain - 0x12 0d128 ; duty - 0x13 0d128 ; detune, in cents - 0x14 0d128 ; octave + 0x11 0d255 ; gain + 0x12 0d140 ; duty + 0x13 0d126 ; detune, in cents + 0x14 0d129 ; octave 0x15 0d1 ; on 0x16 0d0 ; what moves its width - 0x17 0d128 ; and how far - 0x18 0d0 ; what moves its pitch - 0x19 0d128 ; and how far + 0x17 0d0 ; and how far + 0x18 0d2 ; what moves its pitch + 0x19 0d246 ; and how far 0x1A 0d0 ; what moves its gain - 0x1B 0d128 ; and how far - 0x20 0d4 ; amplitude envelope, attack - 0x21 0d79 ; decay + 0x1B 0d255 ; and how far + 0x20 0d180 ; amplitude envelope, attack + 0x21 0d40 ; decay 0x22 0d0 ; sustain - 0x23 0d31 ; release + 0x23 0d4 ; release 0x30 0d4 ; modulation envelope, attack - 0x31 0d35 ; decay + 0x31 0d99 ; decay 0x32 0d0 ; sustain - 0x33 0d13 ; release + 0x33 0d180 ; release 0x40 0d1 ; filter, on 0x41 0d0 ; type: 0 low, 1 high, 2 band - 0x42 0d92 ; cutoff, in hertz - 0x43 0d10 ; resonance - 0x44 0d0 ; what moves the cutoff - 0x45 0d128 ; and how far, in hertz + 0x42 0d240 ; cutoff, in hertz + 0x43 0d148 ; resonance + 0x44 0d2 ; what moves the cutoff + 0x45 0d255 ; and how far, in hertz 0x46 0d0 ; what moves the resonance 0x47 0d128 ; and how far 0x60 0d0 ; LFO 0, on 0x61 0d0 ; waveform - 0x62 0d127 ; rate, in hertz + 0x62 0d220 ; rate, in hertz 0x70 0d0 ; LFO 1, on 0x71 0d0 ; waveform 0x72 0d127 ; rate, in hertz + 0x50 0d2 ; what shapes the level diff --git a/README.md b/README.md index 20b2630..f42ce24 100644 --- a/README.md +++ b/README.md @@ -27,7 +27,7 @@ wrote Asm.sbx: program 7533, data 4099, labels 555 | [`Source/Patch`](Source/Patch) | SoundPatch, which turns a soundThing patch into a table the sound device takes | | [`Programs/Examples`](Programs/Examples) | Programs to read: hello, a calculator, Fibonacci, a prime sieve, Life, the colours | | [`Programs/Libraries`](Programs/Libraries) | Code included by name rather than linked, since there is no linker | -| [`Programs/Sounds`](Programs/Sounds) | Patch tables, converted from soundThing and checked in so the build never needs it | +| [`Programs/Sounds`](Programs/Sounds) | Patches as soundThing saved them, and the tables SoundPatch made from them, both checked in so the build never needs soundThing | | [`Programs/Loader`](Programs/Loader) | The standalone loader CosmOS grew out of | | [`Programs/CosmOS`](Programs/CosmOS) | The operating system, its applications, and the native assembler | | [`Programs/testPrograms`](Programs/testPrograms) | What the test suite drives | @@ -329,8 +329,9 @@ A field the tool does not recognise stops it rather than being skipped, because that has moved on would otherwise produce a table that quietly means something else. **The build does not depend on it.** soundThing lives in its own repository and is not -required to build anything here: the tables it produces are checked into `Programs/Sounds`, -and the tool is for when a sound is being changed. +required to build anything here. `Programs/Sounds` holds both halves - the patch as soundThing +saved it and the table made from it - so a sound can be regenerated, or read, without going +and finding the editor first. The tool is for when a sound is being changed. ## Checking Assembly: SplitLint