Update of /cvsroot/pure-data/externals/miXed/shared/common In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv23957/shared/common
Modified Files: Makefile.sources clc.c dict.c grow.c lex.c loud.c loud.h mifi.c mifi.h port.c props.c qtree.c rand.c vefl.c Added Files: fitter.c fitter.h Log Message: svf~: args parsing; prepend/Append: bang handling; seq: pause, continue, goto; many maxmode changes
Index: rand.c =================================================================== RCS file: /cvsroot/pure-data/externals/miXed/shared/common/rand.c,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** rand.c 20 Apr 2004 13:55:28 -0000 1.2 --- rand.c 11 Jan 2005 10:33:21 -0000 1.3 *************** *** 6,10 **** #include "m_pd.h" EXTERN double sys_getrealtime(void); /* used to be in m_imp.h */ ! #include "common/rand.h"
/* borrowed from x_misc.c, LATER rethink */ --- 6,10 ---- #include "m_pd.h" EXTERN double sys_getrealtime(void); /* used to be in m_imp.h */ ! #include "rand.h"
/* borrowed from x_misc.c, LATER rethink */
--- NEW FILE: fitter.c --- /* Copyright (c) 2005 krzYszcz and others. * For information on usage and redistribution, and for a DISCLAIMER OF ALL * WARRANTIES, see the file, "LICENSE.txt," in this distribution. */
#include <stdio.h> #include <stdarg.h> #include <string.h> #include "m_pd.h" #include "fitter.h"
#ifdef KRZYSZCZ # include "loud.h" # define FITTER_DEBUG #else # define loudbug_bug(msg) fprintf(stderr, "BUG: %s\n", msg), bug(msg) #endif
/* FIXME compatibility mode should be a standard Pd feature. When it is, it will be possible to simplify the implementation. Until then, we have to handle multiple copies of the 'fittermode_value' variable (coming from different externals), and the only way is multicasting through a symbol (#compatibility). */ static t_symbol *fittermode_value = 0;
typedef struct _fittermode_client { t_class *fc_owner; t_symbol **fc_mirror; t_fittermode_callback fc_callback; struct _fittermode_client *fc_next; } t_fittermode_client;
static t_fittermode_client *fittermode_clients = 0; static t_class *fittermode_class = 0; static t_pd *fittermode_target = 0; static int fittermode_ready = 0; static t_symbol *fitterps_hashcompatibility = 0; static t_symbol *fitterps_max = 0;
/* read access (query), only from fittermode_dosetup() */ static void fittermode_bang(t_pd *x) { if (fitterps_hashcompatibility) { if (fittermode_ready /* do not reply to own request */ && fitterps_hashcompatibility->s_thing) /* this proliferates for the third and subsequent fittermode_dosetup() calls... */ pd_symbol(fitterps_hashcompatibility->s_thing, fittermode_value); } else loudbug_bug("fittermode_bang"); }
/* read access (reply), only from fitter_dosetup() */ static void fittermode_symbol(t_pd *x, t_symbol *s) { fittermode_value = s; }
/* write access, only from fitter_setmode() */ static void fittermode_set(t_pd *x, t_symbol *s) { t_fittermode_client *fc; fittermode_value = s; for (fc = fittermode_clients; fc; fc = fc->fc_next) { if (fc->fc_mirror) *fc->fc_mirror = s; if (fc->fc_callback) fc->fc_callback(s); } }
static void fittermode_dosetup(int noquery) { if (fittermode_class || fittermode_target) loudbug_bug("fittermode_dosetup"); fitterps_hashcompatibility = gensym("#compatibility"); fitterps_max = gensym("max"); fittermode_class = class_new(fitterps_hashcompatibility, 0, 0, sizeof(t_pd), CLASS_PD | CLASS_NOINLET, 0); class_addbang(fittermode_class, fittermode_bang); class_addsymbol(fittermode_class, fittermode_symbol); class_addmethod(fittermode_class, (t_method)fittermode_set, gensym("set"), A_SYMBOL, 0); fittermode_target = pd_new(fittermode_class); pd_bind(fittermode_target, fitterps_hashcompatibility); if (!noquery) pd_bang(fitterps_hashcompatibility->s_thing); fittermode_ready = 1; }
void fitter_setup(t_class *owner, t_symbol **mirror, t_fittermode_callback callback) { if (!fittermode_class) fittermode_dosetup(0); if (mirror || callback) { t_fittermode_client *fc = getbytes(sizeof(*fc)); fc->fc_owner = owner; fc->fc_mirror = mirror; fc->fc_callback = callback; fc->fc_next = fittermode_clients; fittermode_clients = fc; if (mirror) *mirror = fittermode_value; } }
void fitter_drop(t_class *owner) { if (fittermode_class && fitterps_hashcompatibility->s_thing) { t_fittermode_client *fcp = 0, *fc = fittermode_clients; while (fc) { if (fc->fc_owner == owner) { if (fcp) fcp->fc_next = fc->fc_next; else fittermode_clients = fc->fc_next; break; } fcp = fc; fc = fc->fc_next; } if (fc) freebytes(fc, sizeof(*fc)); else loudbug_bug("fitter_drop 1"); } else loudbug_bug("fitter_drop 2"); }
void fitter_setmode(t_symbol *s) { post("setting compatibility mode to '%s'", (s ? s->s_name : "none")); if (!fittermode_class) fittermode_dosetup(1); if (fitterps_hashcompatibility->s_thing) { t_atom at; SETSYMBOL(&at, s); typedmess(fitterps_hashcompatibility->s_thing, gensym("set"), 1, &at); } else loudbug_bug("fitter_setmode"); }
t_symbol *fitter_getmode(void) { if (!fittermode_class) fittermode_dosetup(0); return (fittermode_value); }
void fittermax_set(void) { if (!fittermode_class) fittermode_dosetup(0); fitter_setmode(fitterps_max); }
int fittermax_get(void) { if (!fittermode_class) fittermode_dosetup(0); return (fittermode_value == fitterps_max); }
void fittermax_warning(t_class *c, char *fmt, ...) { if (!fittermode_class) fittermode_dosetup(0); if (fittermode_value == fitterps_max) { char buf[MAXPDSTRING]; va_list ap; va_start(ap, fmt); vsprintf(buf, fmt, ap); post("'%s' class incompatibility warning:\n\t%s", class_getname(c), buf); va_end(ap); } }
void fittermax_rangewarning(t_class *c, int maxmax, char *what) { fittermax_warning(c, "more than %d %s requested", maxmax, what); }
Index: Makefile.sources =================================================================== RCS file: /cvsroot/pure-data/externals/miXed/shared/common/Makefile.sources,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** Makefile.sources 8 Dec 2004 15:40:12 -0000 1.4 --- Makefile.sources 11 Jan 2005 10:33:21 -0000 1.5 *************** *** 4,7 **** --- 4,8 ---- dict.c \ fi.c \ + fitter.c \ grow.c \ lex.c \
--- NEW FILE: fitter.h --- /* Copyright (c) 2005 krzYszcz and others. * For information on usage and redistribution, and for a DISCLAIMER OF ALL * WARRANTIES, see the file, "LICENSE.txt," in this distribution. */
#ifndef __FITTER_H__ #define __FITTER_H__
typedef void (*t_fittermode_callback)(t_symbol *s);
void fitter_setup(t_class *owner, t_symbol **mirror, t_fittermode_callback callback); void fitter_drop(t_class *owner); void fitter_setmode(t_symbol *s); t_symbol *fitter_getmode(void); void fittermax_set(void); int fittermax_get(void); void fittermax_warning(t_class *c, char *fmt, ...); void fittermax_rangewarning(t_class *c, int maxmax, char *what);
#endif
Index: port.c =================================================================== RCS file: /cvsroot/pure-data/externals/miXed/shared/common/port.c,v retrieving revision 1.15 retrieving revision 1.16 diff -C2 -d -r1.15 -r1.16 *** port.c 10 Dec 2004 20:47:03 -0000 1.15 --- port.c 11 Jan 2005 10:33:21 -0000 1.16 *************** *** 25,29 **** #include "common/grow.h" #include "common/binport.h" ! #include "common/port.h"
#ifdef KRZYSZCZ --- 25,29 ---- #include "common/grow.h" #include "common/binport.h" ! #include "port.h"
#ifdef KRZYSZCZ *************** *** 228,232 **** { t_symbol *sel = port_getsymbol(x, 0); ! if (sel == &s_) bug("port_gettarget"); return (sel); } --- 228,232 ---- { t_symbol *sel = port_getsymbol(x, 0); ! if (sel == &s_) loudbug_bug("port_gettarget"); return (sel); } *************** *** 235,239 **** { t_symbol *sel = port_getanysymbol(x, 1); ! if (sel == &s_) bug("port_getselector"); return (sel); } --- 235,239 ---- { t_symbol *sel = port_getanysymbol(x, 1); ! if (sel == &s_) loudbug_bug("port_getselector"); return (sel); } *************** *** 512,516 **** else { ! bug("import_addclassname"); SETSYMBOL(&at, gensym("???")); } --- 512,516 ---- else { ! loudbug_bug("import_addclassname"); SETSYMBOL(&at, gensym("???")); } *************** *** 589,595 **** import_emstart(x, portps_vtable, port_getsymbol(x, 9), port_getint(x, 2)); #ifdef PORT_DEBUG ! post("vtable "%s": size %d, range %d, coords %d %d %d %d, flags %d", ! x->x_emname->s_name, x->x_emsize, ! range, left, top, right, bottom, flags); #endif import_emaddv(x, portps_vtable, "si;", gensym("size"), x->x_emsize); --- 589,596 ---- import_emstart(x, portps_vtable, port_getsymbol(x, 9), port_getint(x, 2)); #ifdef PORT_DEBUG ! loudbug_post( ! "vtable "%s": size %d, range %d, coords %d %d %d %d, flags %d", ! x->x_emname->s_name, x->x_emsize, ! range, left, top, right, bottom, flags); #endif import_emaddv(x, portps_vtable, "si;", gensym("size"), x->x_emsize); *************** *** 1169,1173 **** } } ! else bug("port_doparse"); return (PORT_UNKNOWN); } --- 1170,1174 ---- } } ! else loudbug_bug("port_doparse"); return (PORT_UNKNOWN); } *************** *** 1183,1187 **** { #ifdef PORT_DEBUG ! post("parsing..."); #endif x->x_messcount = 0; --- 1184,1188 ---- { #ifdef PORT_DEBUG ! loudbug_post("parsing..."); #endif x->x_messcount = 0; *************** *** 1214,1218 **** } #ifdef PORT_DEBUG ! post("end of parsing"); #endif } --- 1215,1219 ---- } #ifdef PORT_DEBUG ! loudbug_post("end of parsing"); #endif } *************** *** 1261,1265 **** { #ifdef PORT_DEBUG ! post("bogus_tick: unbinding '%x'", (int)x); #endif pd_unbind((t_pd *)x, portps_cleanup); --- 1262,1266 ---- { #ifdef PORT_DEBUG ! loudbug_post("bogus_tick: unbinding '%x'", (int)x); #endif pd_unbind((t_pd *)x, portps_cleanup); *************** *** 1287,1292 **** int i; #ifdef PORT_DEBUG ! startpost("self-adjusting"); ! binbuf_print(t->te_binbuf); #endif binbuf_add(bb, ac - 1, av + 1); --- 1288,1293 ---- int i; #ifdef PORT_DEBUG ! loudbug_startpost("self-adjusting "); ! loudbug_postbinbuf(t->te_binbuf); #endif binbuf_add(bb, ac - 1, av + 1); *************** *** 1303,1307 **** } #ifdef PORT_DEBUG ! post("%d inlets deleted", BOGUS_NINLETS - i); #endif for (i = 0, op = x->x_outlets + BOGUS_NOUTLETS - 1; --- 1304,1308 ---- } #ifdef PORT_DEBUG ! loudbug_post("%d inlets deleted", BOGUS_NINLETS - i); #endif for (i = 0, op = x->x_outlets + BOGUS_NOUTLETS - 1; *************** *** 1314,1322 **** } #ifdef PORT_DEBUG ! post("%d outlets deleted", i); #endif glist_retext(x->x_glist, t); } ! else bug("bogus_cleanup"); x->x_glist = 0; clock_delay(x->x_clock, 0); --- 1315,1323 ---- } #ifdef PORT_DEBUG ! loudbug_post("%d outlets deleted", i); #endif glist_retext(x->x_glist, t); } ! else loudbug_bug("bogus_cleanup"); x->x_glist = 0; clock_delay(x->x_clock, 0); *************** *** 1349,1353 **** y->x_clock = clock_new(y, (t_method)bogushook_tick); #ifdef PORT_DEBUG ! post("reclaiming %s", av->a_w.w_symbol->s_name); #endif return (z); --- 1350,1354 ---- y->x_clock = clock_new(y, (t_method)bogushook_tick); #ifdef PORT_DEBUG ! loudbug_post("reclaiming %s", av->a_w.w_symbol->s_name); #endif return (z); *************** *** 1381,1386 **** t_binbuf *bb = binbuf_new(); #ifdef PORT_DEBUG ! startpost("hook-adjusting"); ! binbuf_print(t->te_binbuf); #endif ac--; av++; --- 1382,1387 ---- t_binbuf *bb = binbuf_new(); #ifdef PORT_DEBUG ! loudbug_startpost("hook-adjusting "); ! loudbug_postbinbuf(t->te_binbuf); #endif ac--; av++; *************** *** 1413,1417 **** } } ! else bug("bogushook_cleanup"); x->x_glist = 0; clock_delay(x->x_clock, 0); --- 1414,1418 ---- } } ! else loudbug_bug("bogushook_cleanup"); x->x_glist = 0; clock_delay(x->x_clock, 0); *************** *** 1422,1426 **** { #ifdef PORT_DEBUG ! post("destroing the hook of '%s'", class_getname(*x->x_who)); #endif pd_unbind((t_pd *)x, portps_cleanup); --- 1423,1427 ---- { #ifdef PORT_DEBUG ! loudbug_post("destroing the hook of '%s'", class_getname(*x->x_who)); #endif pd_unbind((t_pd *)x, portps_cleanup);
Index: loud.c =================================================================== RCS file: /cvsroot/pure-data/externals/miXed/shared/common/loud.c,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** loud.c 8 Dec 2004 15:40:12 -0000 1.4 --- loud.c 11 Jan 2005 10:33:21 -0000 1.5 *************** *** 1,3 **** ! /* Copyright (c) 2002-2004 krzYszcz and others. * For information on usage and redistribution, and for a DISCLAIMER OF ALL * WARRANTIES, see the file, "LICENSE.txt," in this distribution. */ --- 1,3 ---- ! /* Copyright (c) 2002-2005 krzYszcz and others. * For information on usage and redistribution, and for a DISCLAIMER OF ALL * WARRANTIES, see the file, "LICENSE.txt," in this distribution. */ *************** *** 8,98 **** #include <errno.h> #include "m_pd.h" ! #include "common/loud.h"
/* The 'shared_' calls do not really belong here, LATER find them a permanent home. */
- /* FIXME compatibility mode should be a standard Pd feature */ - static t_symbol *shared_compatibility = 0; - static t_class *sharedcompatibility_class = 0; - static t_pd *sharedcompatibility_target = 0; - static t_symbol *sharedps_hashcompatibility = 0; - static t_symbol *sharedps_max = 0; - - static void sharedcompatibility_bang(t_pd *x) - { - if (sharedps_hashcompatibility) - { - if (shared_compatibility && sharedps_hashcompatibility->s_thing) - pd_symbol(sharedps_hashcompatibility->s_thing, - shared_compatibility); - } - else bug("sharedcompatibility_bang"); - } - - static void sharedcompatibility_symbol(t_pd *x, t_symbol *s) - { - shared_compatibility = s; - } - - static void sharedcompatibility_setup(t_symbol *s) - { - if (sharedcompatibility_class || sharedcompatibility_target) - bug("sharedcompatibility_setup"); - sharedps_hashcompatibility = gensym("#compatibility"); - sharedps_max = gensym("max"); - sharedcompatibility_class = class_new(sharedps_hashcompatibility, - 0, 0, sizeof(t_pd), - CLASS_PD | CLASS_NOINLET, 0); - class_addbang(sharedcompatibility_class, sharedcompatibility_bang); - class_addsymbol(sharedcompatibility_class, sharedcompatibility_symbol); - sharedcompatibility_target = pd_new(sharedcompatibility_class); - pd_bind(sharedcompatibility_target, sharedps_hashcompatibility); - if (s) - pd_symbol(sharedps_hashcompatibility->s_thing, s); - else - pd_bang(sharedps_hashcompatibility->s_thing); - } - - void shared_usecompatibility(void) - { - if (!sharedcompatibility_class) - sharedcompatibility_setup(0); - } - - void shared_setcompatibility(t_symbol *s) - { - post("setting compatibility mode to '%s'", (s ? s->s_name : "none")); - if (sharedcompatibility_class) - { - if (sharedps_hashcompatibility->s_thing) - pd_symbol(sharedps_hashcompatibility->s_thing, s); - else - bug("shared_setcompatibility"); - } - else sharedcompatibility_setup(s); - } - - t_symbol *shared_getcompatibility(void) - { - if (!sharedcompatibility_class) - sharedcompatibility_setup(0); - return (shared_compatibility); - } - - void shared_setmaxcompatibility(void) - { - if (!sharedcompatibility_class) - sharedcompatibility_setup(0); - shared_setcompatibility(sharedps_max); - } - - int shared_getmaxcompatibility(void) - { - if (!sharedcompatibility_class) - sharedcompatibility_setup(0); - return (shared_compatibility == sharedps_max); - } - int shared_matchignorecase(char *test, char *pattern) { --- 8,20 ---- #include <errno.h> #include "m_pd.h" ! #include "loud.h" ! ! #ifdef MSW ! #define vsnprintf _vsnprintf ! #endif
/* The 'shared_' calls do not really belong here, LATER find them a permanent home. */
int shared_matchignorecase(char *test, char *pattern) { *************** *** 227,249 **** }
- void loud_incompatible(t_class *c, char *fmt, ...) - { - if (shared_getmaxcompatibility()) - { - char buf[MAXPDSTRING]; - va_list ap; - va_start(ap, fmt); - vsprintf(buf, fmt, ap); - post("'%s' class incompatibility warning:\n\t%s", - class_getname(c), buf); - va_end(ap); - } - } - - void loud_incompatible_max(t_class *c, int maxmax, char *what) - { - loud_incompatible(c, "more than %d %s requested", maxmax, what); - } - int loud_floatarg(t_class *c, int which, int ac, t_atom *av, t_float *vp, t_float minval, t_float maxval, --- 149,152 ---- *************** *** 284,289 **** loud_warning(&c, 0, "%s rounded up to %g", what, minval); else ! loud_incompatible(c, "less than %g %s requested", ! minval, what); } break; --- 187,192 ---- loud_warning(&c, 0, "%s rounded up to %g", what, minval); else ! loud_warning(&c, 0, "less than %g %s requested", ! minval, what); } break; *************** *** 294,299 **** loud_warning(&c, 0, "%s truncated to %g", what, maxval); else ! loud_incompatible(c, "more than %g %s requested", ! maxval, what); } break; --- 197,202 ---- loud_warning(&c, 0, "%s truncated to %g", what, maxval); else ! loud_warning(&c, 0, "more than %g %s requested", ! maxval, what); } break; *************** *** 437,438 **** --- 340,408 ---- return (lc); } + + void loudbug_post(char *fmt, ...) + { + char buf[MAXPDSTRING]; + va_list ap; + va_start(ap, fmt); + vsnprintf(buf, MAXPDSTRING-1, fmt, ap); + va_end(ap); + fprintf(stderr, "%s\n", buf); + } + + void loudbug_startpost(char *fmt, ...) + { + char buf[MAXPDSTRING]; + va_list ap; + va_start(ap, fmt); + vsnprintf(buf, MAXPDSTRING-1, fmt, ap); + va_end(ap); + fputs(buf, stderr); + } + + void loudbug_endpost(void) + { + fputs("\n", stderr); + } + + void loudbug_postatom(int ac, t_atom *av) + { + while (ac--) + { + char buf[MAXPDSTRING]; + atom_string(av++, buf, MAXPDSTRING); + fprintf(stderr, " %s", buf); + } + } + + void loudbug_postbinbuf(t_binbuf *bb) + { + int ac = binbuf_getnatom(bb); + t_atom *aprev = 0, *ap = binbuf_getvec(bb); + while (ac--) + { + char buf[MAXPDSTRING]; + atom_string(ap, buf, MAXPDSTRING); + if (aprev) + { + if (aprev->a_type == A_SEMI) + fprintf(stderr, "\n%s", buf); + else + fprintf(stderr, " %s", buf); + } + else fprintf(stderr, "%s", buf); + aprev = ap++; + } + if (aprev) fputs("\n", stderr); + } + + void loudbug_bug(char *fmt, ...) + { + char buf[MAXPDSTRING]; + va_list ap; + va_start(ap, fmt); + vsnprintf(buf, MAXPDSTRING-1, fmt, ap); + va_end(ap); + fprintf(stderr, "miXed consistency check failed: %s\n", buf); + bug(buf); + }
Index: props.c =================================================================== RCS file: /cvsroot/pure-data/externals/miXed/shared/common/props.c,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** props.c 10 Dec 2004 20:47:03 -0000 1.3 --- props.c 11 Jan 2005 10:33:21 -0000 1.4 *************** *** 6,10 **** #include "m_pd.h" #include "common/grow.h" ! #include "common/props.h"
#ifdef KRZYSZCZ --- 6,10 ---- #include "m_pd.h" #include "common/grow.h" ! #include "props.h"
#ifdef KRZYSZCZ
Index: mifi.h =================================================================== RCS file: /cvsroot/pure-data/externals/miXed/shared/common/mifi.h,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** mifi.h 8 Dec 2004 15:40:12 -0000 1.3 --- mifi.h 11 Jan 2005 10:33:21 -0000 1.4 *************** *** 1,3 **** ! /* Copyright (c) 2004 krzYszcz and others. * For information on usage and redistribution, and for a DISCLAIMER OF ALL * WARRANTIES, see the file, "LICENSE.txt," in this distribution. */ --- 1,3 ---- ! /* Copyright (c) 2004-2005 krzYszcz and others. * For information on usage and redistribution, and for a DISCLAIMER OF ALL * WARRANTIES, see the file, "LICENSE.txt," in this distribution. */ *************** *** 22,48 **** #define MIFIREAD_SKIP -1 /* error and successful skip to the next track */
! #define MIFIMETA_SEQNUM 0 ! #define MIFIMETA_TEXT 1 ! #define MIFIMETA_COPYRIGHT 2 ! #define MIFIMETA_TRACKNAME 3 ! #define MIFIMETA_INSTRUMENT 4 ! #define MIFIMETA_LYRIC 5 ! #define MIFIMETA_MARKER 6 ! #define MIFIMETA_CUE 7 ! #define MIFIMETA_MAXPRINTABLE 15 /* 1..15 are various text meta-events */ ! #define MIFIMETA_CHANNEL 0x20 /* channel prefix */ ! #define MIFIMETA_EOT 0x2f /* end of track */ ! #define MIFIMETA_TEMPO 0x51 ! #define MIFIMETA_SMPTE 0x54 /* SMPTE offset */ ! #define MIFIMETA_TIMESIG 0x58 /* time signature */ ! #define MIFIMETA_KEYSIG 0x59 /* key signature */
/* ...channel status codes go here, too obvious to #define... */
! #define MIFISYSEX_FIRST 0xf0 ! #define MIFISYSEX_NEXT 0xf7
/* this code is not returned as an event type, but in e_status of t_mifievent */ ! #define MIFIEVENT_META 0xff
/* true if one of channel messages */ --- 22,61 ---- #define MIFIREAD_SKIP -1 /* error and successful skip to the next track */
! #define MIFIMETA_SEQNUM 0 ! #define MIFIMETA_TEXT 1 ! #define MIFIMETA_COPYRIGHT 2 ! #define MIFIMETA_TRACKNAME 3 ! #define MIFIMETA_INSTRUMENT 4 ! #define MIFIMETA_LYRIC 5 ! #define MIFIMETA_MARKER 6 ! #define MIFIMETA_CUE 7 ! #define MIFIMETA_MAXPRINTABLE 15 /* 1..15 are various text meta-events */ ! #define MIFIMETA_CHANNEL 0x20 /* channel prefix (obsolete) */ ! #define MIFIMETA_PORT 0x21 /* port prefix (obsolete) */ ! #define MIFIMETA_EOT 0x2f /* end of track */ ! #define MIFIMETA_TEMPO 0x51 ! #define MIFIMETA_SMPTE 0x54 /* SMPTE offset */ ! #define MIFIMETA_TIMESIG 0x58 /* time signature */ ! #define MIFIMETA_KEYSIG 0x59 /* key signature */ ! #define MIFIMETA_PROPRIETARY 0x7f
/* ...channel status codes go here, too obvious to #define... */
! #define MIFISYSEX_FIRST 0xf0 ! #define MIFISYSEX_NEXT 0xf7 ! #define MIFISYSEX_ESCAPE 0xf7 /* without preceding MIFISYSEX_FIRST */
/* this code is not returned as an event type, but in e_status of t_mifievent */ ! #define MIFIEVENT_META 0xff ! ! /* system messages (expected inside of sysex escape events) */ ! #define MIFISYS_SONGPOINTER 0xf2 ! #define MIFISYS_SONGSELECT 0xf3 ! #define MIFISYS_TUNEREQUEST 0xf6 ! #define MIFISYS_CLOCK 0xf8 ! #define MIFISYS_START 0xfa ! #define MIFISYS_CONTINUE 0xfb ! #define MIFISYS_STOP 0xfc ! #define MIFISYS_ACTIVESENSING 0xfe
/* true if one of channel messages */
Index: vefl.c =================================================================== RCS file: /cvsroot/pure-data/externals/miXed/shared/common/vefl.c,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** vefl.c 10 Dec 2004 20:47:03 -0000 1.2 --- vefl.c 11 Jan 2005 10:33:21 -0000 1.3 *************** *** 18,22 **** #include "unstable/fragile.h" #include "common/loud.h" ! #include "common/vefl.h"
#ifdef KRZYSZCZ --- 18,22 ---- #include "unstable/fragile.h" #include "common/loud.h" ! #include "vefl.h"
#ifdef KRZYSZCZ *************** *** 70,74 **** if (sizeof(t_word) != sizeof(t_float)) { ! bug("vefl_new: sizeof(t_word) != sizeof(t_float)"); return (0); } --- 70,74 ---- if (sizeof(t_word) != sizeof(t_float)) { ! loudbug_bug("vefl_new: sizeof(t_word) != sizeof(t_float)"); return (0); }
Index: qtree.c =================================================================== RCS file: /cvsroot/pure-data/externals/miXed/shared/common/qtree.c,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** qtree.c 8 Dec 2004 15:45:25 -0000 1.1 --- qtree.c 11 Jan 2005 10:33:21 -0000 1.2 *************** *** 4,7 **** --- 4,8 ----
#include "m_pd.h" + #include "loud.h" #include "qtree.h"
*************** *** 27,31 **** /* failure: two paths rooted in the same node contain different number of black nodes */ ! bug("qnode_verify: not balanced"); return (0); } --- 28,32 ---- /* failure: two paths rooted in the same node contain different number of black nodes */ ! loudbug_bug("qnode_verify: not balanced"); return (0); } *************** *** 37,41 **** (np->n_right && !np->n_right->n_black)) { ! bug("qnode_verify: adjacent red nodes"); return (0); } --- 38,42 ---- (np->n_right && !np->n_right->n_black)) { ! loudbug_bug("qnode_verify: adjacent red nodes"); return (0); } *************** *** 57,61 **** { if (np1 == np2) ! bug("qnode_checkmulti"); else return (1); --- 58,62 ---- { if (np1 == np2) ! loudbug_bug("qnode_checkmulti"); else return (1); *************** *** 67,82 **** t_qnode_vshowhook hook, char *message) { ! startpost("%g ", np->n_key); if (tree->t_valuetype == QTREETYPE_FLOAT) ! startpost("%g ", QNODE_GETFLOAT(np)); else if (tree->t_valuetype == QTREETYPE_SYMBOL) ! startpost("%s ", QNODE_GETSYMBOL(np)->s_name); else if (tree->t_valuetype == QTREETYPE_ATOM) { t_atom *ap = QNODE_GETATOMPTR(np); if (ap->a_type == A_FLOAT) ! startpost("%g ", ap->a_w.w_float); else if (ap->a_type == A_SYMBOL) ! startpost("%s ", ap->a_w.w_symbol->s_name); } else if (hook) --- 68,83 ---- t_qnode_vshowhook hook, char *message) { ! loudbug_startpost("%g ", np->n_key); if (tree->t_valuetype == QTREETYPE_FLOAT) ! loudbug_startpost("%g ", QNODE_GETFLOAT(np)); else if (tree->t_valuetype == QTREETYPE_SYMBOL) ! loudbug_startpost("%s ", QNODE_GETSYMBOL(np)->s_name); else if (tree->t_valuetype == QTREETYPE_ATOM) { t_atom *ap = QNODE_GETATOMPTR(np); if (ap->a_type == A_FLOAT) ! loudbug_startpost("%g ", ap->a_w.w_float); else if (ap->a_type == A_SYMBOL) ! loudbug_startpost("%s ", ap->a_w.w_symbol->s_name); } else if (hook) *************** *** 84,91 **** char buf[MAXPDSTRING]; (*hook)(np, buf, MAXPDSTRING); ! startpost("%s ", buf); } ! else startpost("0x%08x ", (int)QNODE_GETSYMBOL(np)); ! startpost("%s ", (np->n_black ? "black" : "red"));
if (qnode_checkmulti(np, np->n_parent) || --- 85,92 ---- char buf[MAXPDSTRING]; (*hook)(np, buf, MAXPDSTRING); ! loudbug_startpost("%s ", buf); } ! else loudbug_startpost("0x%08x ", (int)QNODE_GETSYMBOL(np)); ! loudbug_startpost("%s ", (np->n_black ? "black" : "red"));
if (qnode_checkmulti(np, np->n_parent) || *************** *** 95,116 **** qnode_checkmulti(np->n_parent, np->n_right) || qnode_checkmulti(np->n_left, np->n_right)) ! startpost("multi ");
if (np->n_parent) ! startpost("(%g -> ", np->n_parent->n_key); else ! startpost("(nul -> "); if (np->n_left) ! startpost("%g, ", np->n_left->n_key); else ! startpost("nul, "); if (np->n_right) ! startpost("%g)", np->n_right->n_key); else ! startpost("nul)"); if (message) ! post(": %s", message); else ! endpost(); }
--- 96,117 ---- qnode_checkmulti(np->n_parent, np->n_right) || qnode_checkmulti(np->n_left, np->n_right)) ! loudbug_startpost("multi ");
if (np->n_parent) ! loudbug_startpost("(%g -> ", np->n_parent->n_key); else ! loudbug_startpost("(nul -> "); if (np->n_left) ! loudbug_startpost("%g, ", np->n_left->n_key); else ! loudbug_startpost("nul, "); if (np->n_right) ! loudbug_startpost("%g)", np->n_right->n_key); else ! loudbug_startpost("nul)"); if (message) ! loudbug_post(": %s", message); else ! loudbug_endpost(); }
*************** *** 137,146 **** else { ! bug("qtree_checktraversal 1"); qnode_post(tree, treewalk, 0, "treewalk"); if (listwalk) qnode_post(tree, listwalk, 0, "listwalk"); else ! post("empty listwalk pointer"); listwalk = treewalk; } --- 138,147 ---- else { ! loudbug_bug("qtree_checktraversal 1"); qnode_post(tree, treewalk, 0, "treewalk"); if (listwalk) qnode_post(tree, listwalk, 0, "listwalk"); else ! loudbug_post("empty listwalk pointer"); listwalk = treewalk; } *************** *** 160,169 **** else { ! bug("qtree_checktraversal 2"); qnode_post(tree, treewalk, 0, "treewalk"); if (listwalk) qnode_post(tree, listwalk, 0, "listwalk"); else ! post("empty listwalk pointer"); listwalk = treewalk; } --- 161,170 ---- else { ! loudbug_bug("qtree_checktraversal 2"); qnode_post(tree, treewalk, 0, "treewalk"); if (listwalk) qnode_post(tree, listwalk, 0, "listwalk"); else ! loudbug_post("empty listwalk pointer"); listwalk = treewalk; } *************** *** 189,193 **** t_qnode *np; int count; ! post("------------------------"); count = qtree_checktraversal(tree); if (level) --- 190,194 ---- t_qnode *np; int count; ! loudbug_post("------------------------"); count = qtree_checktraversal(tree); if (level) *************** *** 197,204 **** if (level > 1) { ! post("************"); for (np = tree->t_last; np; np = np->n_prev) ! startpost("%g ", np->n_key); ! endpost(); } } --- 198,205 ---- if (level > 1) { ! loudbug_post("************"); for (np = tree->t_last; np; np = np->n_prev) ! loudbug_startpost("%g ", np->n_key); ! loudbug_endpost(); } } *************** *** 210,222 **** while (last->n_right && last->n_right != tree->t_root) last = last->n_right; ! post("count %d, height %d, root %g", ! count, qnode_height(tree->t_root), tree->t_root->n_key); ! post("first %g, root->left* %g, last %g, root->right* %g", ! (tree->t_first ? tree->t_first->n_key : 0), first->n_key, ! (tree->t_last ? tree->t_last->n_key : 0), last->n_key); } ! else post("empty"); ! post("...verified (black-height is %d)", qtree_verify(tree)); ! post("------------------------"); } #endif --- 211,223 ---- while (last->n_right && last->n_right != tree->t_root) last = last->n_right; ! loudbug_post("count %d, height %d, root %g", ! count, qnode_height(tree->t_root), tree->t_root->n_key); ! loudbug_post("first %g, root->left* %g, last %g, root->right* %g", ! (tree->t_first ? tree->t_first->n_key : 0), first->n_key, ! (tree->t_last ? tree->t_last->n_key : 0), last->n_key); } ! else loudbug_post("empty"); ! loudbug_post("...verified (black-height is %d)", qtree_verify(tree)); ! loudbug_post("------------------------"); } #endif *************** *** 264,268 **** { /* LATER revisit */ ! bug("qtree_preinserthook"); return (0); /* do nothing */ } --- 265,269 ---- { /* LATER revisit */ ! loudbug_bug("qtree_preinserthook"); return (0); /* do nothing */ } *************** *** 281,285 **** { /* LATER revisit */ ! bug("qtree_postinserthook"); return (0); /* do nothing */ } --- 282,286 ---- { /* LATER revisit */ ! loudbug_bug("qtree_postinserthook"); return (0); /* do nothing */ } *************** *** 319,323 **** if (parent->n_left && parent->n_right) { ! bug("qtree_insert, callback return 1"); parent = parent->n_next; } --- 320,324 ---- if (parent->n_left && parent->n_right) { ! loudbug_bug("qtree_insert, callback return 1"); parent = parent->n_next; } *************** *** 326,330 **** if (parent->n_left) { ! bug("qtree_insert, callback return 2"); leftchild = 0; } --- 327,331 ---- if (parent->n_left) { ! loudbug_bug("qtree_insert, callback return 2"); leftchild = 0; } *************** *** 686,690 **** SETFLOAT(ap, f); } ! else bug("qtree_insertfloat"); } return (np); --- 687,691 ---- SETFLOAT(ap, f); } ! else loudbug_bug("qtree_insertfloat"); } return (np); *************** *** 709,713 **** SETSYMBOL(ap, s); } ! else bug("qtree_insertsymbol"); } return (np); --- 710,714 ---- SETSYMBOL(ap, s); } ! else loudbug_bug("qtree_insertsymbol"); } return (np); *************** *** 726,730 **** npa->na_value = *ap; } ! else bug("qtree_insertatom"); } return (np); --- 727,731 ---- npa->na_value = *ap; } ! else loudbug_bug("qtree_insertatom"); } return (np); *************** *** 755,759 **** break; default: ! bug("qtree_inittyped"); vtype = QTREETYPE_ILLEGAL; nsize = sizeof(t_qnode); --- 756,760 ---- break; default: ! loudbug_bug("qtree_inittyped"); vtype = QTREETYPE_ILLEGAL; nsize = sizeof(t_qnode);
Index: clc.c =================================================================== RCS file: /cvsroot/pure-data/externals/miXed/shared/common/clc.c,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** clc.c 8 Dec 2004 15:45:25 -0000 1.1 --- clc.c 11 Jan 2005 10:33:21 -0000 1.2 *************** *** 4,7 **** --- 4,8 ----
#include <math.h> + #include "clc.h"
/* Problem: find a function f : p -> q (where p is user's curve control
Index: lex.c =================================================================== RCS file: /cvsroot/pure-data/externals/miXed/shared/common/lex.c,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** lex.c 8 Dec 2004 15:45:25 -0000 1.1 --- lex.c 11 Jan 2005 10:33:21 -0000 1.2 *************** *** 11,15 **** #include "m_pd.h" #endif ! #include "common/lex.h"
static int lex_nextbyte(t_lex *lx, unsigned char *buf) --- 11,15 ---- #include "m_pd.h" #endif ! #include "lex.h"
static int lex_nextbyte(t_lex *lx, unsigned char *buf)
Index: loud.h =================================================================== RCS file: /cvsroot/pure-data/externals/miXed/shared/common/loud.h,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** loud.h 8 Dec 2004 15:40:12 -0000 1.4 --- loud.h 11 Jan 2005 10:33:21 -0000 1.5 *************** *** 1,3 **** ! /* Copyright (c) 2002-2004 krzYszcz and others. * For information on usage and redistribution, and for a DISCLAIMER OF ALL * WARRANTIES, see the file, "LICENSE.txt," in this distribution. */ --- 1,3 ---- ! /* Copyright (c) 2002-2005 krzYszcz and others. * For information on usage and redistribution, and for a DISCLAIMER OF ALL * WARRANTIES, see the file, "LICENSE.txt," in this distribution. */ *************** *** 14,22 **** #define t_loudcontext struct _loudcontext
- void shared_usecompatibility(void); - void shared_setcompatibility(t_symbol *s); - t_symbol *shared_getcompatibility(void); - void shared_setmaxcompatibility(void); - int shared_getmaxcompatibility(void); int shared_matchignorecase(char *test, char *pattern);
--- 14,17 ---- *************** *** 31,36 **** void loud_warning(t_pd *x, char *who, char *fmt, ...); void loud_notimplemented(t_pd *x, char *name); - void loud_incompatible(t_class *c, char *fmt, ...); - void loud_incompatible_max(t_class *c, int maxmax, char *what); int loud_floatarg(t_class *c, int which, int ac, t_atom *av, t_float *vp, t_float minval, t_float maxval, --- 26,29 ---- *************** *** 51,53 **** --- 44,53 ---- t_symbol *s, int ac, t_atom *av);
+ void loudbug_post(char *fmt, ...); + void loudbug_startpost(char *fmt, ...); + void loudbug_endpost(void); + void loudbug_postatom(int ac, t_atom *av); + void loudbug_postbinbuf(t_binbuf *bb); + void loudbug_bug(char *fmt, ...); + #endif
Index: grow.c =================================================================== RCS file: /cvsroot/pure-data/externals/miXed/shared/common/grow.c,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -d -r1.1.1.1 -r1.2 *** grow.c 23 May 2003 12:29:52 -0000 1.1.1.1 --- grow.c 11 Jan 2005 10:33:21 -0000 1.2 *************** *** 7,11 **** #include <string.h> #include "m_pd.h" ! #include "common/grow.h"
/* Prior to this call a caller is supposed to check for *nrequested > *sizep. --- 7,11 ---- #include <string.h> #include "m_pd.h" ! #include "grow.h"
/* Prior to this call a caller is supposed to check for *nrequested > *sizep.
Index: mifi.c =================================================================== RCS file: /cvsroot/pure-data/externals/miXed/shared/common/mifi.c,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** mifi.c 10 Dec 2004 20:47:03 -0000 1.4 --- mifi.c 11 Jan 2005 10:33:21 -0000 1.5 *************** *** 1,3 **** ! /* Copyright (c) 2004 krzYszcz and others. * For information on usage and redistribution, and for a DISCLAIMER OF ALL * WARRANTIES, see the file, "LICENSE.txt," in this distribution. */ --- 1,3 ---- ! /* Copyright (c) 2004-2005 krzYszcz and others. * For information on usage and redistribution, and for a DISCLAIMER OF ALL * WARRANTIES, see the file, "LICENSE.txt," in this distribution. */ *************** *** 71,75 ****
#ifdef KRZYSZCZ ! #define MIFI_DEBUG #endif #define MIFI_VERBOSE --- 71,78 ----
#ifdef KRZYSZCZ ! # include "loud.h" ! # define MIFI_DEBUG ! #else ! # define loudbug_bug(msg) fprintf(stderr, "BUG: %s\n", msg), bug(msg) #endif #define MIFI_VERBOSE *************** *** 90,95 **** #define MIFIUSER_DEFTEMPO ((double)120960) /* 120 bpm in ticks/sec */
! #define MIFIEVENT_NALLOC 256 /* LATER do some research (average max?) */ ! #define MIFIEVENT_INISIZE 2 /* always be able to handle channel events */
typedef struct _mifievent --- 93,99 ---- #define MIFIUSER_DEFTEMPO ((double)120960) /* 120 bpm in ticks/sec */
! #define MIFIEVENT_NALLOC 256 /* LATER do some research (average max?) */ ! #define MIFIEVENT_INISIZE 2 /* always be able to handle channel events */ ! #define MIFIEVENT_MAXSYSEX 256 /* FIXME */
typedef struct _mifievent *************** *** 295,299 **** if (type > 127) { ! bug("mifievent_settext"); return (0); } --- 299,303 ---- if (type > 127) { ! loudbug_bug("mifievent_settext"); return (0); } *************** *** 313,324 ****
#ifdef MIFI_DEBUG ! static void mifievent_printsysex(t_mifievent *ep) { ! int length = ep->e_length; ! uchar *dp = ep->e_data; ! startpost("sysex:"); while (length--) ! postfloat((float)*dp++); ! endpost(); } #endif --- 317,331 ----
#ifdef MIFI_DEBUG ! static void mifi_printsysex(int length, uchar *buf) { ! loudbug_startpost("sysex:"); while (length--) ! loudbug_startpost(" %d", (int)*buf++); ! loudbug_endpost(); ! } ! ! static void mifievent_printsysex(t_mifievent *ep) ! { ! mifi_printsysex(ep->e_length, ep->e_data); } #endif *************** *** 350,359 **** { int tempo = mifi_swap4(*(uint32 *)ep->e_data); ! post("tempo (hard) %d after %d", tempo, ep->e_delay); } else if (ep->e_meta == MIFIMETA_TIMESIG) { ! post("meter %d/%d after %d", ! ep->e_data[0], (1 << ep->e_data[1]), ep->e_delay); } #endif --- 357,366 ---- { int tempo = mifi_swap4(*(uint32 *)ep->e_data); ! loudbug_post("tempo (hard) %d after %d", tempo, ep->e_delay); } else if (ep->e_meta == MIFIMETA_TIMESIG) { ! loudbug_post("meter %d/%d after %d", ! ep->e_data[0], (1 << ep->e_data[1]), ep->e_delay); } #endif *************** *** 471,475 **** if (mr->mr_ticks.rt_tempo < MIFI_TICKEPSILON) { ! bug("mifiread_updateticks"); mr->mr_ticks.rt_tempo = mr->mr_ticks.rt_deftempo; } --- 478,482 ---- if (mr->mr_ticks.rt_tempo < MIFI_TICKEPSILON) { ! loudbug_bug("mifiread_updateticks"); mr->mr_ticks.rt_tempo = mr->mr_ticks.rt_deftempo; } *************** *** 656,662 **** { length = mifiread_getvarlen(mr); ! /* FIXME optional read */ ! if (mifiread_skipbytes(mr, length) < 0) ! return (MIFIREAD_FATAL); goto nextattempt; } --- 663,681 ---- { length = mifiread_getvarlen(mr); ! if (length > MIFIEVENT_MAXSYSEX) /* FIXME optional read */ ! { ! if (mifiread_skipbytes(mr, length) < 0) ! return (MIFIREAD_FATAL); ! } ! else ! { ! uchar *tempbuf = getbytes(length); ! if (mifiread_getbytes(mr, tempbuf, length) != length) ! return (MIFIREAD_FATAL); ! #ifdef MIFI_DEBUG ! mifi_printsysex(length, tempbuf); ! #endif ! freebytes(tempbuf, length); ! } goto nextattempt; } *************** *** 725,729 **** #ifdef MIFI_DEBUG if (mr->mr_pass == 1) ! post("barspan (hard) %g", mr->mr_ticks.rt_hardbar); #endif break; --- 744,748 ---- #ifdef MIFI_DEBUG if (mr->mr_pass == 1) ! loudbug_post("barspan (hard) %g", mr->mr_ticks.rt_hardbar); #endif break; *************** *** 812,821 **** #ifdef MIFI_DEBUG if (mr->mr_nframes) ! post("midi file (format %d): %d tracks, %d ticks (%d smpte frames)", ! mr->mr_format, mr->mr_hdtracks, ! mr->mr_ticks.rt_beatticks, mr->mr_nframes); else ! post("midi file (format %d): %d tracks, %d ticks per beat", ! mr->mr_format, mr->mr_hdtracks, mr->mr_ticks.rt_beatticks); #endif return (1); --- 831,841 ---- #ifdef MIFI_DEBUG if (mr->mr_nframes) ! loudbug_post( ! "midi file (format %d): %d tracks, %d ticks (%d smpte frames)", ! mr->mr_format, mr->mr_hdtracks, ! mr->mr_ticks.rt_beatticks, mr->mr_nframes); else ! loudbug_post("midi file (format %d): %d tracks, %d ticks per beat", ! mr->mr_format, mr->mr_hdtracks, mr->mr_ticks.rt_beatticks); #endif return (1); *************** *** 851,856 **** if (mr->mr_newtrack) { ! #ifdef MIFI_VERBOSE ! post("track %d", mr->mr_ntracks); #endif isnewtrack = 1; --- 871,876 ---- if (mr->mr_newtrack) { ! #ifdef MIFI_DEBUG ! loudbug_post("track %d", mr->mr_ntracks); #endif isnewtrack = 1; *************** *** 877,881 **** *tnamep = gensym(tnamebuf); #ifdef MIFI_DEBUG ! post("nonempty track name %s", (*tnamep)->s_name); #endif } --- 897,901 ---- *tnamep = gensym(tnamebuf); #ifdef MIFI_DEBUG ! loudbug_post("nonempty track name %s", (*tnamep)->s_name); #endif } *************** *** 884,887 **** --- 904,908 ---- mr->mr_nevents++; } + /* FIXME sysex */ else if (evtype < 0x80) { *************** *** 927,930 **** --- 948,954 ---- } } + #ifdef MIFI_VERBOSE + post("got %d midi tracks (out of %d)", mr->mr_ntracks, mr->mr_hdtracks); + #endif return (MIFIREAD_EOF); } *************** *** 952,956 **** if (ntracks > mr->mr_ntracks) { ! bug("mifiread_doit: too many tracks"); goto doitfail; } --- 976,980 ---- if (ntracks > mr->mr_ntracks) { ! loudbug_bug("mifiread_doit: too many tracks"); goto doitfail; } *************** *** 958,962 **** mr->mr_tracknames[mr->mr_trackndx] == &s_) { ! bug("mifiread_doit: empty track name"); mr->mr_tracknames[mr->mr_trackndx] = gensym("bug-track"); } --- 982,986 ---- mr->mr_tracknames[mr->mr_trackndx] == &s_) { ! loudbug_bug("mifiread_doit: empty track name"); mr->mr_tracknames[mr->mr_trackndx] = gensym("bug-track"); } *************** *** 969,973 **** #ifdef MIFI_DEBUG if (evtype == MIFIREAD_EOF) ! post("finished reading %d events from midi file", mr->mr_nevents); #endif return (MIFIREAD_EOF); --- 993,998 ---- #ifdef MIFI_DEBUG if (evtype == MIFIREAD_EOF) ! loudbug_post("finished reading %d events from midi file", ! mr->mr_nevents); #endif return (MIFIREAD_EOF); *************** *** 1055,1059 **** else { ! bug("mifiread_gettrackname"); return (0); } --- 1080,1084 ---- else { ! loudbug_bug("mifiread_gettrackname"); return (0); } *************** *** 1063,1067 **** { if (mr->mr_pass != 2) ! bug("mifiread_getstatus"); return (mr->mr_event.e_status); } --- 1088,1092 ---- { if (mr->mr_pass != 2) ! loudbug_bug("mifiread_getstatus"); return (mr->mr_event.e_status); } *************** *** 1070,1074 **** { if (mr->mr_pass != 2) ! bug("mifiread_getdata1"); return (mr->mr_event.e_data[0]); } --- 1095,1099 ---- { if (mr->mr_pass != 2) ! loudbug_bug("mifiread_getdata1"); return (mr->mr_event.e_data[0]); } *************** *** 1077,1083 **** { if (mr->mr_pass != 2) ! bug("mifiread_getdata2"); if (mr->mr_event.e_length < 2) ! bug("mifiread_getdata2"); return (mr->mr_event.e_data[1]); } --- 1102,1108 ---- { if (mr->mr_pass != 2) ! loudbug_bug("mifiread_getdata2"); if (mr->mr_event.e_length < 2) ! loudbug_bug("mifiread_getdata2"); return (mr->mr_event.e_data[1]); } *************** *** 1086,1090 **** { if (mr->mr_pass != 2) ! bug("mifiread_getchannel"); return (mr->mr_event.e_channel); } --- 1111,1115 ---- { if (mr->mr_pass != 2) ! loudbug_bug("mifiread_getchannel"); return (mr->mr_event.e_channel); } *************** *** 1156,1160 **** if (mw->mw_ticks.wt_tempo < MIFI_TICKEPSILON) { ! bug("mifiwrite_updateticks"); mw->mw_ticks.wt_tempo = mw->mw_ticks.wt_deftempo; } --- 1181,1185 ---- if (mw->mw_ticks.wt_tempo < MIFI_TICKEPSILON) { ! loudbug_bug("mifiwrite_updateticks"); mw->mw_ticks.wt_tempo = mw->mw_ticks.wt_deftempo; } *************** *** 1268,1272 **** if (ntracks < 1 || ntracks > MIFI_MAXTRACKS) { ! bug("mifiwrite_open 1"); complain = 0; goto wopenfailed; --- 1293,1297 ---- if (ntracks < 1 || ntracks > MIFI_MAXTRACKS) { ! loudbug_bug("mifiwrite_open 1"); complain = 0; goto wopenfailed; *************** *** 1278,1282 **** if (mw->mw_ntracks != 1) { /* LATER consider replacing with a warning */ ! bug("mifiwrite_open 2"); complain = 0; goto wopenfailed; --- 1303,1307 ---- if (mw->mw_ntracks != 1) { /* LATER consider replacing with a warning */ ! loudbug_bug("mifiwrite_open 2"); complain = 0; goto wopenfailed; *************** *** 1344,1348 **** length = mifi_swap4(mw->mw_trackbytes); #ifdef MIFI_DEBUG ! post("adjusting track size to %d", mw->mw_trackbytes); #endif /* LATER add sanity check (compare to saved filepos) */ --- 1369,1373 ---- length = mifi_swap4(mw->mw_trackbytes); #ifdef MIFI_DEBUG ! loudbug_post("adjusting track size to %d", mw->mw_trackbytes); #endif /* LATER add sanity check (compare to saved filepos) */ *************** *** 1370,1374 **** else if (mw->mw_trackndx++ == mw->mw_ntracks) { ! bug("mifiwrite_opentrack"); return (0); } --- 1395,1399 ---- else if (mw->mw_trackndx++ == mw->mw_ntracks) { ! loudbug_bug("mifiwrite_opentrack"); return (0); } *************** *** 1411,1415 **** else { ! bug("mifiwrite_closetrack"); return (0); } --- 1436,1440 ---- else { ! loudbug_bug("mifiwrite_closetrack"); return (0); } *************** *** 1434,1438 **** || (!shorter && data2 > 127)) { ! bug("mifiwrite_channelevent"); return (0); } --- 1459,1463 ---- || (!shorter && data2 > 127)) { ! loudbug_bug("mifiwrite_channelevent"); return (0); }
Index: dict.c =================================================================== RCS file: /cvsroot/pure-data/externals/miXed/shared/common/dict.c,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** dict.c 10 Dec 2004 20:47:03 -0000 1.3 --- dict.c 11 Jan 2005 10:33:21 -0000 1.4 *************** *** 9,13 **** #include <string.h> #include "m_pd.h" ! #include "common/dict.h"
#ifdef KRZYSZCZ --- 9,13 ---- #include <string.h> #include "m_pd.h" ! #include "dict.h"
#ifdef KRZYSZCZ