aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarshall Lochbaum <mwlochbaum@gmail.com>2022-04-02 20:48:55 -0400
committerMarshall Lochbaum <mwlochbaum@gmail.com>2022-04-02 20:48:55 -0400
commit72d062702750c2ca7d46c4356d1c5ba9b5062991 (patch)
tree4ea967007ab96798e2b5a3b6755af1906594d746
parentcbd5facc1a2ac444e559a26b872d19af354a7370 (diff)
Fix tracker's handling of 0 pink noise and flat rank-2 pattern
-rw-r--r--tracker.bqn4
1 files changed, 2 insertions, 2 deletions
diff --git a/tracker.bqn b/tracker.bqn
index 3c3107b..e55c880 100644
--- a/tracker.bqn
+++ b/tracker.bqn
@@ -34,7 +34,7 @@ opt0 ← Opts{⇐}
MakeTrack ← { 𝕊𝕩:opt0𝕊𝕩 ; o 𝕊 pattern‿sample‿post:
_sum ← { o.empty 𝔽⊸Add´ 𝕩 } # Avoid extra memory use
- sp ← pattern ⋈¨ sample
+ sp ← (<˘⍟(1<=)pattern) ⋈¨ sample
{ (post⊑˜⊑𝕩)o.ApplyPost (o Sequence ⊑⟜sp)_sum 𝕩 } _sum ⊔⊐post
}
@@ -71,7 +71,7 @@ Sequence ← { 𝕊𝕩:opt0𝕊𝕩 ; o 𝕊 pattern‿GetSamples:
b‿c‿a ← o.beat ParseBeats pattern
# Compute lengths
- b +↩ (⥊⟜(o.swing-1) + (o.pink÷100){(𝕗×PinkDiff)⍟(0≠𝕗)})∘≠⊸× a
+ b +↩ (⥊⟜(o.swing-1) + (o.pink÷100){(0≠𝕗)◶⟨0,𝕗×PinkDiff⟩})∘≠⊸× a
ge ← (m∾0) (¬⊸×-⊣) g ← +`0∾˜ m ← ¬ c∊o.control
sh ← +´¨ ge ⊔ 0∾˜b × o.GetShift c
len ← ⌊0.5+ (-⟜»sh) + +´¨ g ⊔ b∾o.endׯ1⊏b