Last active
April 2, 2022 15:26
-
-
Save jobbautista9/107f502d20dadd6f851f920e568cf1cf to your computer and use it in GitHub Desktop.
Sleeping Terror (bash/SoX arrange)
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/bin/bash | |
: ' | |
Copyright (C) 2022 Job Bautista | |
Permission is hereby granted, free of charge, to any person obtaining a copy of | |
this software and associated documentation files (the "Software"), to deal in | |
the Software without restriction, including without limitation the rights to | |
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies | |
of the Software, and to permit persons to whom the Software is furnished to do | |
so, subject to the following conditions: | |
The above copyright notice and this permission notice shall be included in all | |
copies or substantial portions of the Software. | |
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR | |
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, | |
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE | |
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER | |
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, | |
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE | |
SOFTWARE. | |
' | |
echo ' __ ___ ___ __ __ ___ ___ __ __ __ __' | |
echo '/__` | |__ |__ |__) | |\ | / _` | |__ |__) |__) / \ |__)' | |
echo '.__/ |___ |___ |___ | | | \| \__> | |___ | \ | \ \__/ | \' | |
echo "Sleeping Terror" | |
echo "Composed by ZUN for Touhou Gensoukyou: Lotus Land Story" | |
printf "Arranged by Job Bautista\n\n" | |
# notes | |
c=(16 32 65 130 261 523 1046 2093 4186) | |
cs=(17 34 69 138 277 554 1108 2217 4434) | |
d=(18 36 73 146 293 587 1174 2349 4698) | |
ds=(19 38 77 155 311 622 1244 2489 4978) | |
e=(20 41 82 164 329 659 1318 2637 5274) | |
f=(21 43 87 174 349 698 1396 2793 5587) | |
fs=(23 46 92 184 369 739 1479 2959 5919) | |
g=(24 48 97 195 391 783 1567 3135 6271) | |
gs=(25 51 103 207 415 830 1661 3322 6644) | |
a=(27 55 110 220 440 880 1760 3520 7040) | |
as=(29 58 116 233 466 932 1864 3729 7458) | |
b=(30 61 123 246 493 987 1975 3951 7902) | |
declare -r c cs d ds e f g gs a as b | |
function setTempo { | |
declare -g BPM=$1 | |
# durations | |
declare -g fu=$(echo "scale=3; 240 / $BPM" | bc -l) # Whole note | |
declare -g ha=$(echo "scale=3; 120 / $BPM" | bc -l) # Half note | |
declare -g qu=$(echo "scale=3; 60 / $BPM" | bc -l) # Quarter note | |
declare -g ei=$(echo "scale=3; 30 / $BPM" | bc -l) # Eighth note | |
declare -g si=$(echo "scale=3; 15 / $BPM" | bc -l) # Sixteenth note | |
declare -g dqu=$(echo "scale=3; 90 / $BPM" | bc -l) # Dotted-quarter note | |
declare -g dei=$(echo "scale=3; 45 / $BPM" | bc -l) # Dotted-eighth note | |
declare -g dsi=$(echo "scale=3; 22.5 / $BPM" | bc -l) # Dotted-sixteenth note | |
declare -g tqu=$(echo "scale=3; 40 / $BPM" | bc -l) # Triplet-quarter note | |
declare -g tqu=$(echo "scale=3; 20 / $BPM" | bc -l) # Triplet-eighth note | |
declare -g tqu=$(echo "scale=3; 10 / $BPM" | bc -l) # Triplet-sixteenth note | |
} | |
declare -a notes # In the following format - "$duration:${key}[pitch]" | |
function soxPipesCreator { | |
soxpipes=$(printf '%b' '"|sox -n -p synth '$(echo "${notes[0]}" | | |
sed 's/:.*//')' sin '$(echo ${notes[0]} | sed 's/.*://')'"\n') | |
for note in "${notes[@]:1}" | |
do | |
soxpipes+=$(printf '%b' '\n"|sox -n -p synth '$(echo "$note" | | |
sed 's/:.*//')' sin '$(echo "$note" | sed 's/.*://')'"\n') | |
done | |
} | |
function soxPlayPipes { | |
echo "$soxpipes" | xargs -n"${#notes[*]}" play -S -V1 | |
} | |
trap 'pkill -f "play -S -V1"; exit 0' SIGINT SIGTERM | |
sleep 1 | |
# intro | |
setTempo 102 | |
notes=( | |
"$qu:${ds[3]}" | |
"$qu:${f[3]}" | |
"$qu:${fs[3]}" | |
"$ei:${as[3]}" | |
"$si:${cs[3]}" | |
"$si:${ds[3]}" | |
"$ei:${ds[3]}" | |
"$ei:${ds[3]}" | |
"$ei:${f[3]}" | |
"$ei:${f[3]}" | |
"$ei:${fs[3]}" | |
"$si:${as[3]}" | |
"$dei:${cs[3]}" | |
"$ei:${ds[3]}" | |
"$qu:${ds[3]}" | |
"$qu:${f[3]}" | |
"$qu:${fs[3]}" | |
"$ei:${as[3]}" | |
"$si:${cs[3]}" | |
"$si:${d[3]}" | |
"$ei:${d[3]}" | |
"$ei:${ds[3]}" | |
"$si:${d[3]}" | |
"$si:${ds[3]}" | |
"$si:${as[3]}" | |
"$si:${ds[3]}" | |
"$si:${gs[3]}" | |
"$si:${d[3]}" | |
"$qu:${f[3]}" | |
"$qu:${fs[3]}" | |
"$qu:${gs[3]}" | |
"$ei:${as[3]}" | |
"$si:${ds[4]}" | |
"$ei:${as[3]}" | |
"$ei:${gs[3]}" | |
"$ei:${fs[3]}" | |
"$ei:${fs[3]}" | |
"$ei:${gs[3]}" | |
"$ei:${gs[3]}" | |
"$ei:${as[3]}" | |
"$si:${ds[4]}" | |
"$dei:${as[3]}" | |
"$si:${as[3]}" | |
"$si:${gs[3]}" | |
"$si:${fs[3]}" | |
"$si:${f[3]}" | |
"$qu:${fs[3]}" | |
"$qu:${gs[3]}" | |
"$ei:${as[3]}" | |
"$si:${ds[4]}" | |
"$dei:${as[3]}" | |
"$ei:${ds[4]}" | |
"$ei:${d[4]}" | |
"$ei:${d[4]}" | |
"$ei:${ds[4]}" | |
"$si:${d[4]}" | |
"$si:${ds[4]}" | |
"$si:${as[4]}" | |
"$si:${ds[4]}" | |
"$si:${gs[4]}" | |
"$si:${d[4]}" | |
"$qu:${f[4]}" | |
) | |
soxPipesCreator && | |
soxPlayPipes 0.5 | |
notes=() # empty notes array for next part | |
echo "Pipes are loading, please wait..." | |
# main loop | |
setTempo 155 | |
notes=( | |
# fast bridge | |
"$si:${c[5]}" | |
"$si:${gs[4]}" | |
"$si:${fs[4]}" | |
"$si:${e[4]}" | |
"$si:${ds[4]}" | |
"$si:${cs[4]}" | |
"$si:${c[4]}" | |
"$si:${gs[4]}" | |
"$si:${fs[4]}" | |
"$si:${e[4]}" | |
"$si:${ds[4]}" | |
"$si:${cs[4]}" | |
"$si:${c[4]}" | |
"$si:${e[3]}" | |
"$si:${ds[3]}" | |
) | |
# verse 1 | |
function verse1-common { | |
notes+=( | |
"$qu:${cs[4]}" | |
"$qu:${ds[4]}" | |
"$qu:${e[4]}" | |
"$ei:${gs[4]}" | |
"$si:${b[3]}" | |
"$si:${cs[4]}" | |
) | |
} | |
verse1-common | |
notes+=( | |
"$ei:${cs[4]}" | |
"$ei:${cs[4]}" | |
"$ei:${ds[4]}" | |
"$ei:${ds[4]}" | |
"$ei:${e[4]}" | |
"$si:${gs[4]}" | |
"$dei:${b[3]}" | |
"$ei:${cs[4]}" | |
) | |
verse1-common | |
notes+=( | |
"$ei:${c[4]}" | |
"$ei:${c[4]}" | |
"$ei:${cs[4]}" | |
"$si:${c[4]}" | |
"$si:${cs[4]}" | |
"$si:${gs[4]}" | |
"$si:${cs[4]}" | |
"$si:${cs[4]}" | |
"$si:${fs[4]}" | |
"$si:${c[4]}" | |
"$qu:${ds[4]}" | |
"$qu:${e[4]}" | |
"$qu:${fs[4]}" | |
"$ei:${gs[4]}" | |
"$si:${cs[5]}" | |
"$dei:${gs[4]}" | |
"$ei:${fs[4]}" | |
"$ei:${e[4]}" | |
"$ei:${e[4]}" | |
"$ei:${fs[4]}" | |
"$ei:${fs[4]}" | |
"$ei:${gs[4]}" | |
"$si:${cs[5]}" | |
"$si:${gs[4]}" | |
"$si:${gs[4]}" | |
"$si:${fs[4]}" | |
"$si:${e[4]}" | |
"$si:${ds[4]}" | |
"$qu:${e[4]}" | |
"$qu:${fs[4]}" | |
"$ei:${gs[4]}" | |
"$si:${cs[5]}" | |
"$dei:${gs[4]}" | |
"$ei:${cs[5]}" | |
"$ei:${c[5]}" | |
"$ei:${c[5]}" | |
"$ei:${cs[5]}" | |
"$si:${c[5]}" | |
"$si:${cs[5]}" | |
"$si:${gs[5]}" | |
"$si:${cs[5]}" | |
"$si:${fs[5]}" | |
"$si:${c[5]}" | |
"$qu:${ds[5]}" | |
) | |
# verse 2 | |
notes+=( "$qu:${gs[3]}" ) | |
function verse2-common1 { | |
notes+=( | |
"$si:${cs[4]}" | |
"$si:${ds[4]}" | |
"$si:${e[4]}" | |
"$si:${gs[4]}" | |
"$si:${cs[5]}" | |
"$si:${ds[5]}" | |
"$si:${e[5]}" | |
"$si:${gs[5]}" | |
"$si:${e[5]}" | |
"$si:${ds[5]}" | |
"$si:${cs[5]}" | |
"$si:${gs[4]}" | |
) | |
} | |
verse2-common1 | |
notes+=( | |
"$qu:${fs[3]}" | |
"$si:${b[3]}" | |
"$si:${cs[4]}" | |
"$si:${ds[4]}" | |
"$si:${fs[4]}" | |
"$si:${b[4]}" | |
"$si:${cs[5]}" | |
"$si:${ds[5]}" | |
"$si:${fs[5]}" | |
"$si:${ds[5]}" | |
"$si:${cs[5]}" | |
"$si:${b[4]}" | |
"$si:${fs[4]}" | |
"$qu:${e[3]}" | |
) | |
verse2-common1 | |
notes+=( | |
"$qu:${ds[3]}" | |
"$si:${c[4]}" | |
"$si:${cs[4]}" | |
"$si:${ds[4]}" | |
"$si:${fs[4]}" | |
"$si:${c[5]}" | |
"$si:${cs[5]}" | |
"$si:${ds[5]}" | |
"$si:${fs[5]}" | |
"$si:${ds[5]}" | |
"$si:${cs[5]}" | |
"$si:${c[5]}" | |
"$si:${fs[4]}" | |
"$qu:${cs[4]}" | |
) | |
function verse2-common2 { | |
notes+=( | |
"$si:${cs[5]}" | |
"$si:${gs[4]}" | |
"$si:${fs[4]}" | |
"$si:${e[4]}" | |
"$si:${cs[5]}" | |
"$si:${gs[4]}" | |
"$si:${fs[4]}" | |
"$si:${e[4]}" | |
"$si:${cs[5]}" | |
"$si:${gs[4]}" | |
"$si:${fs[4]}" | |
"$si:${e[4]}" | |
) | |
} | |
verse2-common2 | |
notes+=( | |
"$qu:${ds[4]}" | |
"$si:${ds[5]}" | |
"$si:${gs[4]}" | |
"$si:${fs[4]}" | |
"$si:${e[4]}" | |
"$si:${ds[5]}" | |
"$si:${gs[4]}" | |
"$si:${fs[4]}" | |
"$si:${e[4]}" | |
"$si:${ds[5]}" | |
"$si:${gs[4]}" | |
"$si:${fs[4]}" | |
"$si:${e[4]}" | |
"$qu:${cs[4]}" | |
) | |
verse2-common2 | |
notes+=( | |
"$qu:${c[4]}" | |
"$si:${c[5]}" | |
"$si:${gs[4]}" | |
"$si:${fs[4]}" | |
"$si:${e[4]}" | |
"$qu:${cs[4]}" | |
"$qu:${ds[4]}" | |
) | |
# verse 3 | |
function verse3 { | |
function verse3-common { | |
notes+=( | |
"$ei:${e[4]}" | |
"$ei:${fs[4]}" | |
"$ei:${gs[4]}" | |
"$ei:${cs[4]}" | |
"$si:${ds[4]}" | |
"$si:${e[4]}" | |
"$ei:${ds[4]}" | |
"$ei:${cs[4]}" | |
"$ei:${b[3]}" | |
"$qu:${cs[4]}" | |
) | |
} | |
verse3-common | |
notes+=( | |
"$ei:${gs[3]}" | |
"$ei:${cs[4]}" | |
"$ei:${ds[4]}" | |
"$ei:${e[4]}" | |
"$ei:${ds[4]}" | |
"$ei:${gs[3]}" | |
) | |
verse3-common | |
notes+=( | |
"$ei:${ds[4]}" | |
"$ei:${gs[4]}" | |
"$ei:${fs[4]}" | |
"$ei:${ds[4]}" | |
"$ei:${e[4]}" | |
"$ei:${cs[4]}" | |
"$ei:${gs[4]}" | |
"$ei:${cs[5]}" | |
"$ei:${ds[5]}" | |
"$ei:${gs[4]}" | |
"$si:${e[5]}" | |
"$si:${fs[5]}" | |
"$ei:${e[5]}" | |
"$ei:${ds[5]}" | |
"$ei:${b[4]}" | |
"$si:${fs[4]}" | |
"$dei:${gs[4]}" | |
"$ei:${b[3]}" | |
"$ei:${cs[4]}" | |
"$ei:${ds[4]}" | |
"$ei:${cs[4]}" | |
"$ei:${ds[4]}" | |
"$ei:${e[4]}" | |
"$ei:${e[4]}" | |
"$ei:${fs[4]}" | |
"$ei:${gs[4]}" | |
"$ei:${cs[4]}" | |
"$si:${ds[4]}" | |
"$si:${e[4]}" | |
"$ei:${ds[4]}" | |
"$ei:${cs[4]}" | |
"$ei:${c[4]}" | |
"$ha:${cs[4]}" | |
"$ha:${ds[4]}" | |
) | |
} | |
verse3; verse3; | |
# verse 4 | |
function verse4-common { | |
notes+=( | |
"$qu:${as[3]}" | |
"$qu:${c[4]}" | |
"$qu:${cs[4]}" | |
"$ei:${f[4]}" | |
"$si:${gs[3]}" | |
"$si:${as[3]}" | |
) | |
} | |
verse4-common | |
notes+=( | |
"$ei:${as[3]}" | |
"$ei:${as[3]}" | |
"$ei:${c[4]}" | |
"$ei:${c[4]}" | |
"$ei:${cs[4]}" | |
"$si:${f[4]}" | |
"$dei:${gs[3]}" | |
"$ei:${as[3]}" | |
) | |
verse4-common | |
notes+=( | |
"$ei:${a[3]}" | |
"$ei:${a[3]}" | |
"$ei:${as[3]}" | |
"$si:${a[3]}" | |
"$si:${as[3]}" | |
"$si:${f[4]}" | |
"$si:${as[3]}" | |
"$si:${ds[4]}" | |
"$si:${a[3]}" | |
"$qu:${c[4]}" | |
"$qu:${cs[4]}" | |
"$qu:${ds[4]}" | |
"$ei:${f[4]}" | |
"$si:${as[4]}" | |
"$dei:${f[4]}" | |
"$ei:${ds[4]}" | |
"$ei:${cs[4]}" | |
"$ei:${cs[4]}" | |
"$ei:${ds[4]}" | |
"$ei:${ds[4]}" | |
"$ei:${f[4]}" | |
"$si:${as[4]}" | |
"$si:${f[4]}" | |
"$si:${f[4]}" | |
"$si:${ds[4]}" | |
"$si:${cs[4]}" | |
"$si:${c[4]}" | |
"$qu:${cs[4]}" | |
"$qu:${ds[4]}" | |
"$ei:${f[4]}" | |
"$si:${as[4]}" | |
"$dei:${f[4]}" | |
"$ei:${as[4]}" | |
"$ei:${a[4]}" | |
"$ei:${a[4]}" | |
"$ei:${as[4]}" | |
"$si:${a[4]}" | |
"$si:${as[4]}" | |
"$si:${f[5]}" | |
"$si:${as[4]}" | |
"$si:${ds[5]}" | |
"$si:${a[4]}" | |
"$qu:${c[5]}" | |
) | |
# verse 5 | |
notes+=( "$qu:${f[3]}" ) | |
function verse5-common1 { | |
notes+=( | |
"$si:${as[3]}" | |
"$si:${c[4]}" | |
"$si:${cs[4]}" | |
"$si:${f[4]}" | |
"$si:${as[4]}" | |
"$si:${c[5]}" | |
"$si:${cs[5]}" | |
"$si:${f[5]}" | |
"$si:${cs[5]}" | |
"$si:${c[5]}" | |
"$si:${as[4]}" | |
"$si:${f[4]}" | |
) | |
} | |
verse5-common1 | |
notes+=( | |
"$qu:${ds[3]}" | |
"$si:${gs[3]}" | |
"$si:${as[3]}" | |
"$si:${c[4]}" | |
"$si:${ds[4]}" | |
"$si:${gs[4]}" | |
"$si:${as[4]}" | |
"$si:${c[5]}" | |
"$si:${ds[5]}" | |
"$si:${c[5]}" | |
"$si:${as[4]}" | |
"$si:${gs[4]}" | |
"$si:${ds[4]}" | |
"$qu:${cs[3]}" | |
) | |
verse5-common1 | |
notes+=( | |
"$qu:${c[3]}" | |
"$si:${a[3]}" | |
"$si:${as[3]}" | |
"$si:${c[4]}" | |
"$si:${ds[4]}" | |
"$si:${a[4]}" | |
"$si:${as[4]}" | |
"$si:${c[5]}" | |
"$si:${ds[5]}" | |
"$si:${c[5]}" | |
"$si:${as[4]}" | |
"$si:${a[4]}" | |
"$si:${ds[4]}" | |
"$qu:${as[3]}" | |
) | |
function verse5-common2 { | |
notes+=( | |
"$si:${as[4]}" | |
"$si:${f[4]}" | |
"$si:${ds[4]}" | |
"$si:${cs[4]}" | |
"$si:${as[4]}" | |
"$si:${f[4]}" | |
"$si:${ds[4]}" | |
"$si:${cs[4]}" | |
"$si:${as[4]}" | |
"$si:${f[4]}" | |
"$si:${ds[4]}" | |
"$si:${cs[4]}" | |
) | |
} | |
verse5-common2 | |
notes+=( | |
"$qu:${c[4]}" | |
"$si:${c[5]}" | |
"$si:${f[4]}" | |
"$si:${ds[4]}" | |
"$si:${cs[4]}" | |
"$si:${c[5]}" | |
"$si:${f[4]}" | |
"$si:${ds[4]}" | |
"$si:${cs[4]}" | |
"$si:${c[5]}" | |
"$si:${f[4]}" | |
"$si:${ds[4]}" | |
"$si:${cs[4]}" | |
"$qu:${as[3]}" | |
) | |
verse5-common2 | |
notes+=( | |
"$qu:${a[3]}" | |
"$si:${a[4]}" | |
"$si:${f[4]}" | |
"$si:${ds[4]}" | |
"$si:${cs[4]}" | |
"$qu:${as[3]}" | |
"$qu:${c[4]}" | |
) | |
# verse 6 | |
function verse6 { | |
function verse6-common { | |
notes+=( | |
"$ei:${cs[4]}" | |
"$ei:${ds[4]}" | |
"$ei:${f[4]}" | |
"$ei:${as[3]}" | |
"$si:${c[4]}" | |
"$si:${cs[4]}" | |
"$ei:${c[4]}" | |
"$ei:${as[3]}" | |
"$ei:${gs[3]}" | |
"$qu:${as[3]}" | |
) | |
} | |
verse6-common | |
notes+=( | |
"$ei:${f[3]}" | |
"$ei:${as[3]}" | |
"$ei:${c[4]}" | |
"$ei:${cs[4]}" | |
"$ei:${c[4]}" | |
"$ei:${f[3]}" | |
) | |
verse6-common | |
notes+=( | |
"$ei:${c[4]}" | |
"$ei:${f[4]}" | |
"$ei:${ds[4]}" | |
"$ei:${c[4]}" | |
"$ei:${cs[4]}" | |
"$ei:${as[3]}" | |
"$ei:${f[4]}" | |
"$ei:${as[4]}" | |
"$ei:${c[5]}" | |
"$ei:${f[4]}" | |
"$si:${cs[5]}" | |
"$si:${ds[5]}" | |
"$ei:${cs[5]}" | |
"$ei:${c[5]}" | |
"$ei:${gs[4]}" | |
"$si:${ds[4]}" | |
"$dei:${f[4]}" | |
"$ei:${gs[3]}" | |
"$ei:${as[3]}" | |
"$ei:${c[4]}" | |
"$ei:${as[3]}" | |
"$ei:${c[4]}" | |
"$ei:${cs[4]}" | |
"$ei:${cs[4]}" | |
"$ei:${ds[4]}" | |
"$ei:${f[4]}" | |
"$ei:${as[3]}" | |
"$si:${c[4]}" | |
"$si:${cs[4]}" | |
"$ei:${c[4]}" | |
"$ei:${as[3]}" | |
"$ei:${a[3]}" | |
"$qu:${as[3]}" | |
"$ei:${cs[4]}" | |
"$ei:${f[4]}" | |
"$qu:${c[4]}" | |
"$ei:${cs[4]}" | |
"$ei:${f[4]}" | |
) | |
} | |
verse6; verse6; | |
# verse 7 | |
function verse7 { | |
function verse7-common { | |
notes+=( | |
"$ei:${d[4]}" | |
"$ei:${e[4]}" | |
"$ei:${fs[4]}" | |
"$ei:${b[3]}" | |
"$si:${cs[4]}" | |
"$si:${d[4]}" | |
"$ei:${cs[4]}" | |
"$ei:${b[3]}" | |
"$ei:${a[3]}" | |
"$qu:${b[3]}" | |
) | |
} | |
verse7-common | |
notes+=( | |
"$ei:${fs[3]}" | |
"$ei:${b[3]}" | |
"$ei:${cs[4]}" | |
"$ei:${d[4]}" | |
"$ei:${cs[4]}" | |
"$ei:${fs[3]}" | |
) | |
verse7-common | |
notes+=( | |
"$ei:${cs[4]}" | |
"$ei:${fs[4]}" | |
"$ei:${e[4]}" | |
"$ei:${cs[4]}" | |
"$ei:${d[4]}" | |
"$ei:${b[3]}" | |
"$ei:${fs[4]}" | |
"$ei:${b[4]}" | |
"$ei:${cs[5]}" | |
"$ei:${fs[4]}" | |
"$si:${d[5]}" | |
"$si:${e[5]}" | |
"$ei:${d[5]}" | |
"$ei:${cs[5]}" | |
"$ei:${a[4]}" | |
"$si:${e[4]}" | |
"$dei:${fs[4]}" | |
"$ei:${a[3]}" | |
"$ei:${b[3]}" | |
"$ei:${cs[4]}" | |
"$ei:${b[3]}" | |
"$ei:${cs[4]}" | |
"$ei:${d[4]}" | |
"$ei:${d[4]}" | |
"$ei:${e[4]}" | |
"$ei:${fs[4]}" | |
"$ei:${b[3]}" | |
"$si:${cs[4]}" | |
"$si:${d[4]}" | |
"$ei:${cs[4]}" | |
"$ei:${b[3]}" | |
"$ei:${as[3]}" | |
"$qu:${b[3]}" | |
"$ei:${d[4]}" | |
"$ei:${fs[4]}" | |
"$qu:${cs[4]}" | |
"$ei:${d[4]}" | |
"$ei:${fs[4]}" | |
) | |
} | |
verse7; verse7; | |
soxPipesCreator && | |
while true | |
do | |
soxPlayPipes | |
done |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment