aboutsummaryrefslogtreecommitdiff
path: root/BUG10/BUG10.csd
diff options
context:
space:
mode:
Diffstat (limited to 'BUG10/BUG10.csd')
-rw-r--r--BUG10/BUG10.csd92
1 files changed, 12 insertions, 80 deletions
diff --git a/BUG10/BUG10.csd b/BUG10/BUG10.csd
index 2d19cf1..45d9314 100644
--- a/BUG10/BUG10.csd
+++ b/BUG10/BUG10.csd
@@ -5,11 +5,11 @@
</CsOptions>
<CsInstruments>
/*
- Debugger - Unfixed Bugs : BUG #6
+ Debugger - Unfixed Bugs : BUG #10
http://git.1bpm.net/csd-unfixedbugs1/about/
- By Richard Knight 2021
+ By Richard Knight 2023, 2024
http://1bpm.net
q@1bpm.net
@@ -21,7 +21,7 @@ nchnls = 2
0dbfs = 1
seed 0
-#define NOFILEIO ## ; file IO with readfi not supported on all platforms: disables bid_loadfile
+#define NOFILEIO ## ; file IO with readfi not supported on all platforms: disables bid_loadfile
gkmastergain init 1 ; master gain
gkpump = 0 ; kick ducking control
@@ -29,7 +29,7 @@ gksection init -1
#include "wavetables.udo" ; general waveforms
#include "bussing.udo" ; global audio bussing
-#include "bid.udo" ; Bug Infested Directive tools and parsing
+#include "bid.udo" ; Bug Infested Directive tools and parsing
#include "instruments.udo" ; sound generators
#include "txt_tools.udo" ; text tools
@@ -112,25 +112,6 @@ instr global_master
endin
-/*
- Print notification of performance time since last notification
- or if isection is -1, print completion notification
-*/
-gitimetrack times
-instr notify_change
- isection = p4
- itime times
- if (isection == -1) then
- tt_notify(sprintf"Complete, runtime: %s", tt_parsetime(itime)))
- exitnow
- else
- isectiontime = itime - gitimetrack
- tt_notify(sprintf("%s : section %d complete in %s", tt_parsetime(itime), isection, tt_parsetime(isectiontime)))
- gitimetrack = itime
- endif
- turnoff
-endin
-
/*
Parse BID file and run the sequencer
@@ -142,7 +123,7 @@ instr parseandrun
bid_loadtext(SBID)
tt_notify("Running sequencer")
- event_i "i", "sequencer", 0, 3600
+ schedule "sequencer", 0, 3600
turnoff
endin
@@ -151,66 +132,17 @@ instr endfade
endin
-
instr sequencer
isection = 1
- event_i "i", "bid_setcurrentchord", 0, 1, isection, 0
- event_i "i", "global_master", 0, p3
- event_i "i", "global_delay1", 0, p3
- event_i "i", "global_delay2", 0, p3
- event_i "i", "global_delay3", 0, p3
- kmetro metro (gibid_tempo / 60) * 4
- kpos init 0
- kposabs init 0
- ksection init isection
- kposchord init 0
- gksection = ksection
- if (kmetro == 1) then
- if (ksection > gibid_maxsection) then
- ;event "i", "endfade", 0, gibid_beattime*8
- event "i", "notify_change", p3, 1, -1
- turnoff
- endif
-
- bid_seq "hit1", kpos, ksection
- bid_seq "snare", kpos, ksection
- bid_seq "kick", kpos, ksection
- bid_seq "hat1", kpos, ksection
- bid_seq "bass1", kpos, ksection
- bid_seq "melb1", kpos, ksection
- bid_seq "hat2", kpos, ksection
- ;bid_seq "glitchread", kpos, ksection
- bid_seq "shaker", kpos, ksection
-
-
- kpos = (kpos < 31) ? kpos + 1 : 0
- ksection16ths = bid_getsectionlength(ksection) * 4
-
- if (kposabs+1 < ksection16ths) then
- kposabs += 1
- else
- event "i", "notify_change", 0, 1, ksection
- ;event "i", "play_crash", 0, gibid_beattime*4
- ksection += 1
- kposchord = 0
- kpos = 0
- kposabs = 0
- event "i", "bid_setcurrentchord", 0, 1, ksection, 1
- endif
-
-
- if (kposchord+1 < gkbid_chordlength*4) then
- kposchord += 1
- else
- kposchord = 0
- event "i", "bid_setcurrentchord", 0, 1, ksection, 1
- endif
-
-
- endif
-
+ schedule "bid_setcurrentchord", 0, 1, isection, 0
+ schedule "global_master", 0, p3
+ schedule "global_delay1", 0, p3
+ schedule "global_delay2", 0, p3
+ schedule "global_delay3", 0, p3
+ gksection bid_seq_all isection
endin
+
</CsInstruments>
<CsScore>
i"parseandrun" 0 1