diff options
Diffstat (limited to 'cyclone')
-rw-r--r-- | cyclone/Makefile.sources | 12 | ||||
-rw-r--r-- | cyclone/build_counter | 2 | ||||
-rw-r--r-- | cyclone/cyclone-test.exclude | 1 | ||||
-rw-r--r-- | cyclone/hammer/substitute.c | 4 | ||||
-rw-r--r-- | cyclone/shadow/dummies.c | 14 | ||||
-rw-r--r-- | cyclone/sickle/Line.c | 20 | ||||
-rw-r--r-- | cyclone/sickle/Makefile.sources | 12 | ||||
-rw-r--r-- | cyclone/sickle/allsickles.c | 40 | ||||
-rw-r--r-- | cyclone/sickle/peek.c | 2 |
9 files changed, 72 insertions, 35 deletions
diff --git a/cyclone/Makefile.sources b/cyclone/Makefile.sources index 6b7afcc..818d8c8 100644 --- a/cyclone/Makefile.sources +++ b/cyclone/Makefile.sources @@ -133,26 +133,34 @@ sickle/deltaclip.c \ sickle/edge.c \ sickle/kink.c \ sickle/log.c \ +sickle/lores.c \ sickle/maximum.c \ sickle/minimum.c \ sickle/minmax.c \ +sickle/mstosamps.c \ +sickle/onepole.c \ sickle/peakamp.c \ sickle/phasewrap.c \ +sickle/pink.c \ sickle/pow.c \ sickle/rampsmooth.c \ sickle/rand.c \ +sickle/reson.c \ sickle/sah.c \ +sickle/sampstoms.c \ sickle/sinh.c \ sickle/sinx.c \ sickle/slide.c \ sickle/Snapshot.c \ sickle/spike.c \ +sickle/svf.c \ sickle/tanh.c \ sickle/tanx.c \ sickle/train.c \ sickle/trapezoid.c \ sickle/triangle.c \ -sickle/vectral.c +sickle/vectral.c \ +sickle/zerox.c SFORKY_TILDE = $(TILDE) SFORKY_SOURCES = \ @@ -169,6 +177,7 @@ sickle/poltocar.c SGROW_TILDE = $(TILDE) SGROW_SOURCES = \ sickle/click.c \ +sickle/curve.c \ sickle/frameaccum.c \ sickle/framedelta.c \ sickle/Line.c @@ -187,6 +196,7 @@ sickle/index.c \ sickle/lookup.c \ sickle/peek.c \ sickle/play.c \ +sickle/poke.c \ sickle/record.c \ sickle/wave.c diff --git a/cyclone/build_counter b/cyclone/build_counter index 1e05d4b..bce8105 100644 --- a/cyclone/build_counter +++ b/cyclone/build_counter @@ -1,3 +1,3 @@ #define CYCLONE_VERSION "0.1" #define CYCLONE_RELEASE "alpha" -#define CYCLONE_BUILD 42 +#define CYCLONE_BUILD 44 diff --git a/cyclone/cyclone-test.exclude b/cyclone/cyclone-test.exclude index ec84f87..6b3cc43 100644 --- a/cyclone/cyclone-test.exclude +++ b/cyclone/cyclone-test.exclude @@ -1,4 +1,5 @@ *~ import-result.pd +import-debug.pd temporary temporary/* diff --git a/cyclone/hammer/substitute.c b/cyclone/hammer/substitute.c index 48a9b9d..c68419d 100644 --- a/cyclone/hammer/substitute.c +++ b/cyclone/hammer/substitute.c @@ -2,6 +2,10 @@ * For information on usage and redistribution, and for a DISCLAIMER OF ALL * WARRANTIES, see the file, "LICENSE.txt," in this distribution. */ +/* CHECKED refman's rubbish: 1st outlet used only if there is a match, + unchanged messages go through the 2nd outlet (no bang there), + 3rd argument ignored (no single-replacement mode). */ + #include <string.h> #include "m_pd.h" #include "common/grow.h" diff --git a/cyclone/shadow/dummies.c b/cyclone/shadow/dummies.c index 3d92894..be9a886 100644 --- a/cyclone/shadow/dummies.c +++ b/cyclone/shadow/dummies.c @@ -358,7 +358,6 @@ static t_dummy_slot dummy_slots[] = { "clocker", 2, 1, 0, 0 }, { "closebang", 0, 1, 0, 0 }, { "colorpicker", 1, 1, 0, 0 }, - { "curve~", 3, 2, 0, 0 }, { "date", 1, 3, 0, 0 }, { "defer", 1, 1, 0, 0 }, /* LATER pass anything through */ { "degrade~", 3, 1, 0, 0 }, @@ -381,7 +380,7 @@ static t_dummy_slot dummy_slots[] = { "filein", 3, 3, 0, 0 }, { "filepath", 1, 1, 0, 0 }, { "filtergraph~", 8, 6, 0, 0 }, - { "folder", 1, 1, 0, 0 }, /* CHECKME 2nd outlet */ + { "folder", 1, 2, 0, 0 }, { "follow", 1, 2, 0, 0 }, { "fpic", 1, 0, 0, 0 }, { "frame", 6, 0, 0, 0 }, @@ -407,16 +406,12 @@ static t_dummy_slot dummy_slots[] = { "lcd", 1, 4, 0, 0 }, /* CHECKME nouts */ { "led", 1, 1, 0, 0 }, { "Line", 3, 2, 0, 0 }, - { "lores~", 3, 1, 0, 0 }, { "matrixctrl", 1, 1, 0, 0 }, /* CHECKME nins, nouts */ { "matrix~", -1, -1, 0, (t_newmethod)dummy_matrix_tilde_new }, - { "maximum~", 2, 1, 0, 0 }, { "menubar", 1, 4, 0, 0 }, /* LATER parse #Xs (additional outs) */ { "meter~", 1, 1, 0, 0 }, /* LATER consider mapping to the vu */ - { "minimum~", 2, 1, 0, 0 }, { "movie", 1, 3, 0, 0 }, /* CHECKME msd */ - { "mstosamps~", 1, 2, 0, 0 }, { "multiSlider", 1, 1, 0, 0 }, { "mute~", 1, 1, 0, 0 }, { "normalize~", 2, 1, 0, 0 }, @@ -427,7 +422,6 @@ static t_dummy_slot dummy_slots[] = { "omsnotes", 4, 2, 0, 0 }, /* CHECKME osx */ { "omspatches", 3, 2, 0, 0 }, /* CHECKME osx */ { "onecopy", 0, 0, 0, 0 }, /* CHECKME */ - { "onepole~", 2, 1, 0, 0 }, { "opendialog", 1, 2, 0, 0 }, { "oscbank~", 4, 1, 0, 0 }, { "oval", 6, 0, 0, 0 }, @@ -442,7 +436,6 @@ static t_dummy_slot dummy_slots[] = { "pict", 3, 0, 0, 0 }, { "pictctrl", 1, 1, 0, 0 }, { "pictslider", 2, 2, 0, 0 }, /* CHECKME one-dimensional mode */ - { "pink~", 1, 1, 0, 0 }, /* CHECKME inlet */ { "playbar", 1, 2, 0, 0 }, /* CHECKME */ { "plugconfig", 1, 0, 0, 0 }, { "plugin~", 2, 2, 0, 0 }, @@ -457,7 +450,6 @@ static t_dummy_slot dummy_slots[] = { "plugsend~", 1, 0, 0, 0 }, { "plugstore", 1, 1, 0, 0 }, /* CHECKME nouts */ { "plugsync~", 0, 9, 0, 0 }, /* CHECKME nouts */ - { "poke~", 3, 0, 0, 0 }, { "Poly", 2, 4, 0, 0 }, { "polyin", 1, 3, 0, 0 }, /* LATER parse args for nouts */ { "polyout", 3, 0, 0, 0 }, /* CHECKME nins */ @@ -471,13 +463,11 @@ static t_dummy_slot dummy_slots[] = /* LATER settable Receive? */ { "rect", 6, 0, 0, 0 }, { "relativepath", 1, 1, 0, 0 }, - { "reson~", 4, 1, 0, 0 }, { "rewire~", 1, -1, 0, (t_newmethod)dummy_rewire_tilde_new }, { "ring", 6, 0, 0, 0 }, { "round~", 2, 1, 0, 0 }, { "rslider", 2, 2, 0, 0 }, { "rtin", 1, 1, 0, 0 }, - { "sampstoms~", 1, 2, 0, 0 }, { "savedialog", 1, 3, 0, 0 }, { "screensize", 1, 2, 0, 0 }, { "selector~", -1, 1, 0, (t_newmethod)dummy_selector_tilde_new }, @@ -492,7 +482,6 @@ static t_dummy_slot dummy_slots[] = { "strippath", 1, 2, 0, 0 }, { "stutter~", -1, -1, 0, (t_newmethod)dummy_stutter_tilde_new }, { "suspend", 0, 1, 0, 0 }, - { "svf~", 3, 4, 0, 0 }, { "swatch", 3, 2, 0, 0 }, { "sxformat", -1, 1, 0, (t_newmethod)dummy_sxformat_new }, { "sysexin", 1, 1, 0, 0 }, @@ -523,7 +512,6 @@ static t_dummy_slot dummy_slots[] = { "vpicture", 0, 0, 0, 0 }, { "vst~", -1, -1, 0, (t_newmethod)dummy_vst_tilde_new }, { "waveform~", 5, 6, 0, 0 }, /* CHECKME */ - { "zerox~", 1, 2, 0, 0 }, { "zigzag~", 2, 4, 0, 0 }, { "_dummy", 0, 0, 0, 0 } }; diff --git a/cyclone/sickle/Line.c b/cyclone/sickle/Line.c index f1d2b18..1b9e76c 100644 --- a/cyclone/sickle/Line.c +++ b/cyclone/sickle/Line.c @@ -3,17 +3,13 @@ * WARRANTIES, see the file, "LICENSE.txt," in this distribution. */ #include "m_pd.h" +#include "shared.h" #include "common/grow.h" #include "common/loud.h" #include "sickle/sic.h" //#define LINE_DEBUG -#ifndef PD_BADFLOAT -#define PD_BADFLOAT(f) ((((*(unsigned int*)&(f))&0x7f800000)==0) || \ - (((*(unsigned int*)&(f))&0x7f800000)==0x7f800000)) -#endif - #define LINE_INISIZE 64 /* LATER rethink */ #define LINE_MAXSIZE 64 @@ -196,9 +192,15 @@ static void line_list(t_line *x, t_symbol *s, int ac, t_atom *av) t_atom *ap; t_lineseg *segp; for (natoms = 0, ap = av; natoms < ac; natoms++, ap++) - if (ap->a_type != A_FLOAT) break; /* CHECKME */ + { + if (ap->a_type != A_FLOAT) + { + loud_messarg((t_pd *)x, &s_list); /* CHECKED */ + return; /* CHECKED */ + } + } if (!natoms) - return; /* CHECKME */ + return; /* CHECKED */ odd = natoms % 2; nsegs = natoms / 2; if (odd) nsegs++; @@ -212,6 +214,7 @@ static void line_list(t_line *x, t_symbol *s, int ac, t_atom *av) { natoms = ns * 2; nsegs = ns; + odd = 0; } } x->x_nsegs = nsegs; @@ -289,7 +292,8 @@ static void *line_new(t_floatarg f) void Line_tilde_setup(void) { line_class = class_new(gensym("Line~"), - (t_newmethod)line_new, 0, + (t_newmethod)line_new, + (t_method)line_free, sizeof(t_line), 0, A_DEFFLOAT, 0); sic_setup(line_class, line_dsp, SIC_NOMAINSIGNALIN); class_addfloat(line_class, line_float); diff --git a/cyclone/sickle/Makefile.sources b/cyclone/sickle/Makefile.sources index b4a5d75..d39cc17 100644 --- a/cyclone/sickle/Makefile.sources +++ b/cyclone/sickle/Makefile.sources @@ -28,6 +28,7 @@ comb.c \ cosh.c \ cosx.c \ count.c \ +curve.c \ cycle.c \ delay.c \ delta.c \ @@ -41,30 +42,39 @@ Line.c \ linedrive.c \ log.c \ lookup.c \ +lores.c \ maximum.c \ minimum.c \ minmax.c \ +mstosamps.c \ +onepole.c \ peakamp.c \ peek.c \ phasewrap.c \ +pink.c \ play.c \ +poke.c \ poltocar.c \ pong.c \ pow.c \ rand.c \ rampsmooth.c \ record.c \ +reson.c \ sah.c \ +sampstoms.c \ Scope.c \ sinh.c \ sinx.c \ slide.c \ Snapshot.c \ spike.c \ +svf.c \ tanh.c \ tanx.c \ train.c \ trapezoid.c \ triangle.c \ vectral.c \ -wave.c +wave.c \ +zerox.c diff --git a/cyclone/sickle/allsickles.c b/cyclone/sickle/allsickles.c index f543879..d062c61 100644 --- a/cyclone/sickle/allsickles.c +++ b/cyclone/sickle/allsickles.c @@ -4,18 +4,14 @@ * For information on usage and redistribution, and for a DISCLAIMER OF ALL * WARRANTIES, see the file, "LICENSE.txt," in this distribution. */ -void Clip_tilde_setup(void); -void Line_tilde_setup(void); -void Scope_tilde_setup(void); -void Snapshot_tilde_setup(void); void abs_tilde_setup(void); void acos_tilde_setup(void); void acosh_tilde_setup(void); void allpass_tilde_setup(void); void asin_tilde_setup(void); void asinh_tilde_setup(void); -void atan_tilde_setup(void); void atan2_tilde_setup(void); +void atan_tilde_setup(void); void atanh_tilde_setup(void); void average_tilde_setup(void); void avg_tilde_setup(void); @@ -28,10 +24,12 @@ void capture_tilde_setup(void); void cartopol_tilde_setup(void); void change_tilde_setup(void); void click_tilde_setup(void); +void Clip_tilde_setup(void); void comb_tilde_setup(void); void cosh_tilde_setup(void); void cosx_tilde_setup(void); void count_tilde_setup(void); +void curve_tilde_setup(void); void cycle_tilde_setup(void); void delay_tilde_setup(void); void delta_tilde_setup(void); @@ -41,27 +39,38 @@ void frameaccum_tilde_setup(void); void framedelta_tilde_setup(void); void index_tilde_setup(void); void kink_tilde_setup(void); +void Line_tilde_setup(void); void linedrive_setup(void); void log_tilde_setup(void); void lookup_tilde_setup(void); +void lores_tilde_setup(void); void maximum_tilde_setup(void); void minimum_tilde_setup(void); void minmax_tilde_setup(void); +void mstosamps_tilde_setup(void); +void onepole_tilde_setup(void); void peakamp_tilde_setup(void); void peek_tilde_setup(void); void phasewrap_tilde_setup(void); +void pink_tilde_setup(void); void play_tilde_setup(void); +void poke_tilde_setup(void); void poltocar_tilde_setup(void); void pong_tilde_setup(void); void pow_tilde_setup(void); void rampsmooth_tilde_setup(void); void rand_tilde_setup(void); void record_tilde_setup(void); +void reson_tilde_setup(void); void sah_tilde_setup(void); +void sampstoms_tilde_setup(void); +void Scope_tilde_setup(void); void sinh_tilde_setup(void); void sinx_tilde_setup(void); void slide_tilde_setup(void); +void Snapshot_tilde_setup(void); void spike_tilde_setup(void); +void svf_tilde_setup(void); void tanh_tilde_setup(void); void tanx_tilde_setup(void); void train_tilde_setup(void); @@ -69,21 +78,18 @@ void trapezoid_tilde_setup(void); void triangle_tilde_setup(void); void vectral_tilde_setup(void); void wave_tilde_setup(void); +void zerox_tilde_setup(void); void allsickles_setup(void) { - Clip_tilde_setup(); - Line_tilde_setup(); - Scope_tilde_setup(); - Snapshot_tilde_setup(); abs_tilde_setup(); acos_tilde_setup(); acosh_tilde_setup(); allpass_tilde_setup(); asin_tilde_setup(); asinh_tilde_setup(); - atan_tilde_setup(); atan2_tilde_setup(); + atan_tilde_setup(); atanh_tilde_setup(); average_tilde_setup(); avg_tilde_setup(); @@ -96,10 +102,12 @@ void allsickles_setup(void) cartopol_tilde_setup(); change_tilde_setup(); click_tilde_setup(); + Clip_tilde_setup(); comb_tilde_setup(); cosh_tilde_setup(); cosx_tilde_setup(); count_tilde_setup(); + curve_tilde_setup(); cycle_tilde_setup(); delay_tilde_setup(); delta_tilde_setup(); @@ -109,27 +117,38 @@ void allsickles_setup(void) framedelta_tilde_setup(); index_tilde_setup(); kink_tilde_setup(); + Line_tilde_setup(); linedrive_setup(); log_tilde_setup(); lookup_tilde_setup(); + lores_tilde_setup(); maximum_tilde_setup(); minimum_tilde_setup(); minmax_tilde_setup(); + mstosamps_tilde_setup(); + onepole_tilde_setup(); peakamp_tilde_setup(); peek_tilde_setup(); phasewrap_tilde_setup(); + pink_tilde_setup(); play_tilde_setup(); + poke_tilde_setup(); poltocar_tilde_setup(); pong_tilde_setup(); pow_tilde_setup(); rampsmooth_tilde_setup(); rand_tilde_setup(); record_tilde_setup(); + reson_tilde_setup(); sah_tilde_setup(); + sampstoms_tilde_setup(); + Scope_tilde_setup(); sinh_tilde_setup(); sinx_tilde_setup(); slide_tilde_setup(); + Snapshot_tilde_setup(); spike_tilde_setup(); + svf_tilde_setup(); tanh_tilde_setup(); tanx_tilde_setup(); train_tilde_setup(); @@ -137,4 +156,5 @@ void allsickles_setup(void) triangle_tilde_setup(); vectral_tilde_setup(); wave_tilde_setup(); + zerox_tilde_setup(); } diff --git a/cyclone/sickle/peek.c b/cyclone/sickle/peek.c index 7397577..534cc49 100644 --- a/cyclone/sickle/peek.c +++ b/cyclone/sickle/peek.c @@ -55,7 +55,7 @@ static void peek_float(t_peek *x, t_float f) if (vp = sic->s_vectors[x->x_effchannel]) { int ndx = (int)f; - if (vp && ndx >= 0 && ndx < sic->s_vecsize) + if (ndx >= 0 && ndx < sic->s_vecsize) { if (x->x_pokemode) { |