From b807d8b3592967f4acae5e68ade846506c3886fc Mon Sep 17 00:00:00 2001 From: Thomas Grill Date: Sat, 24 Apr 2004 13:59:42 +0000 Subject: "" svn path=/trunk/; revision=1636 --- externals/grill/xsample/build-max-msvc.bat | 4 ++ externals/grill/xsample/config-max-msvc.txt | 28 ++++++++ externals/grill/xsample/makefile.max-msvc | 78 +++++++++++++++++++++ externals/grill/xsample/maxmsp/xgroove~.help | Bin 7251 -> 0 bytes externals/grill/xsample/maxmsp/xplay~.help | Bin 4993 -> 0 bytes externals/grill/xsample/maxmsp/xrecord~.help | Bin 8522 -> 0 bytes .../xsample/maxmsp/xsample-objectmappings-win.txt | 3 - .../xsample/maxmsp/xsample-objectmappings.txt | 4 ++ externals/grill/xsample/maxmsp/xsample.help | Bin 1256 -> 18871 bytes externals/grill/xsample/readme.txt | 55 ++++++++------- externals/grill/xsample/source/main.cpp | 7 -- externals/grill/xsample/source/main.h | 6 +- externals/grill/xsample/xsample.cw | Bin 394881 -> 399047 bytes externals/grill/xsample/xsample.vcproj | 10 +-- 14 files changed, 153 insertions(+), 42 deletions(-) create mode 100644 externals/grill/xsample/build-max-msvc.bat create mode 100644 externals/grill/xsample/config-max-msvc.txt create mode 100644 externals/grill/xsample/makefile.max-msvc delete mode 100644 externals/grill/xsample/maxmsp/xgroove~.help delete mode 100644 externals/grill/xsample/maxmsp/xplay~.help delete mode 100644 externals/grill/xsample/maxmsp/xrecord~.help delete mode 100644 externals/grill/xsample/maxmsp/xsample-objectmappings-win.txt (limited to 'externals') diff --git a/externals/grill/xsample/build-max-msvc.bat b/externals/grill/xsample/build-max-msvc.bat new file mode 100644 index 00000000..130a3bc0 --- /dev/null +++ b/externals/grill/xsample/build-max-msvc.bat @@ -0,0 +1,4 @@ +@echo --- Building with MS Visual C++ --- + +nmake -f makefile.max-msvc clean +nmake -f makefile.max-msvc diff --git a/externals/grill/xsample/config-max-msvc.txt b/externals/grill/xsample/config-max-msvc.txt new file mode 100644 index 00000000..67db1e3c --- /dev/null +++ b/externals/grill/xsample/config-max-msvc.txt @@ -0,0 +1,28 @@ +# xsample - extended sample objects for Max/MSP and pd (pure data) +# Copyright (c) 2001-2004 Thomas Grill (xovo@gmx.net) +# + +# where is the Max SDK? +# you should have the latest version! +MAXSDKPATH="F:\prog\audio\MaxWinSDK\c74support" + +# where do the flext libraries reside? +FLEXTPATH="%CommonProgramFiles%\Cycling '74\flext" + +# where is MS VC++? +# (need not be defined if the build is started with the compiler environment set) +# MSVCPATH="c:\programme\prog\microsoft visual studio\VC98" + + +# where should the external be built? +# (path for temporary files) +OUTPATH=max-msvc + +# where should the external be installed? +# (leave blank to omit installation) +INSTPATH="%CommonProgramFiles%\Cycling '74\externals\flext" + + +# some user-definable flags +# (check if they match your system!) +UFLAGS=/G6 /arch:SSE diff --git a/externals/grill/xsample/makefile.max-msvc b/externals/grill/xsample/makefile.max-msvc new file mode 100644 index 00000000..7901518c --- /dev/null +++ b/externals/grill/xsample/makefile.max-msvc @@ -0,0 +1,78 @@ +# xsample - extended sample objects for Max/MSP and pd (pure data) +# Copyright (c) 2001-2004 Thomas Grill (xovo@gmx.net) +# +# Makefile for MSVC++ 6 and .NET +# +# usage: +# to build run "make -f makefile.max-msvc" +# + +!include config-max-msvc.txt + +# includes +INCPATH=/I$(MAXSDKPATH)\max-includes /I$(MAXSDKPATH)\msp-includes /I$(FLEXTPATH) +LDFLAGS=/LIBPATH:$(FLEXTPATH) + +!ifdef MSVCPATH +INCPATH=$(INCPATH) /I$(MSVCPATH)\include +LDFLAGS=$(LDFLAGS) /LIBPATH:$(MSVCPATH)\lib +!endif + +!ifdef _DEBUG +LIBS=flext_d-maxwin.lib +!else +LIBS=flext-maxwin.lib +!endif + +LDFLAGS=$(LDFLAGS) /LIBPATH:$(MAXSDKPATH)\max-includes /LIBPATH:$(MAXSDKPATH)\msp-includes + +LIBS=$(LIBS) maxapi.lib maxaudio.lib + +# compiler definitions and flags +DEFS=/DFLEXT_SYS=1 $(UFLAGS) + +CFLAGS=/ML /GR- /GD /Ox /GX /Zp2 + +# the rest can stay untouched +# ---------------------------------------------- + +# all the source files from the package +!include make-files.txt + +# ----------------------------------------------- + +NAME=xsample +EXT=mxe +DIR=source + +all: $(OUTPATH) $(OUTPATH)\$(NAME).$(EXT) + +# remove build +clean: + -del /q $(OUTPATH) > nul + -rmdir $(OUTPATH) > nul + +OBJS= $(SRCS:.c=.obj) +OBJS= $(OBJS:.objpp=.obj) + + +$(OUTPATH): + -mkdir $(OUTPATH) > nul + +{$(DIR)}.cpp{}.obj: + cl /c /LD $(CFLAGS) $(DEFS) $(INCPATH) $** /Fo$(OUTPATH)/$@ + +{$(DIR)}.c{}.obj: + cl /c /LD $(CFLAGS) $(DEFS) $(INCPATH) $** /Fo$(OUTPATH)/$@ + + +$(OUTPATH)\$(NAME).$(EXT): $(OBJS) + cd $(OUTPATH) + link /DLL $(LDFLAGS) /out:$(NAME).$(EXT) /INCREMENTAL:NO $** $(LIBS) $(LIBPATH) + @-del *.exp + @-del *.lib + cd .. +!ifdef INSTPATH + @-if not exist $(INSTPATH) mkdir $(INSTPATH) + copy $@ $(INSTPATH) > nul +!endif diff --git a/externals/grill/xsample/maxmsp/xgroove~.help b/externals/grill/xsample/maxmsp/xgroove~.help deleted file mode 100644 index 29bcd95f..00000000 Binary files a/externals/grill/xsample/maxmsp/xgroove~.help and /dev/null differ diff --git a/externals/grill/xsample/maxmsp/xplay~.help b/externals/grill/xsample/maxmsp/xplay~.help deleted file mode 100644 index d7d8d8b0..00000000 Binary files a/externals/grill/xsample/maxmsp/xplay~.help and /dev/null differ diff --git a/externals/grill/xsample/maxmsp/xrecord~.help b/externals/grill/xsample/maxmsp/xrecord~.help deleted file mode 100644 index 15c932f0..00000000 Binary files a/externals/grill/xsample/maxmsp/xrecord~.help and /dev/null differ diff --git a/externals/grill/xsample/maxmsp/xsample-objectmappings-win.txt b/externals/grill/xsample/maxmsp/xsample-objectmappings-win.txt deleted file mode 100644 index d11f5f92..00000000 --- a/externals/grill/xsample/maxmsp/xsample-objectmappings-win.txt +++ /dev/null @@ -1,3 +0,0 @@ -max objectfile xgroove~ xsample; -max objectfile xplay~ xsample; -max objectfile xrecord~ xsample; diff --git a/externals/grill/xsample/maxmsp/xsample-objectmappings.txt b/externals/grill/xsample/maxmsp/xsample-objectmappings.txt index d11f5f92..877090e7 100755 --- a/externals/grill/xsample/maxmsp/xsample-objectmappings.txt +++ b/externals/grill/xsample/maxmsp/xsample-objectmappings.txt @@ -1,3 +1,7 @@ max objectfile xgroove~ xsample; max objectfile xplay~ xsample; max objectfile xrecord~ xsample; + +max oblist xsample xgroove~; +max oblist xsample xplay~; +max oblist xsample xrecord~; diff --git a/externals/grill/xsample/maxmsp/xsample.help b/externals/grill/xsample/maxmsp/xsample.help index bb9a5f1a..bced9b5c 100755 Binary files a/externals/grill/xsample/maxmsp/xsample.help and b/externals/grill/xsample/maxmsp/xsample.help differ diff --git a/externals/grill/xsample/readme.txt b/externals/grill/xsample/readme.txt index 1b9f5fc0..20aa53df 100644 --- a/externals/grill/xsample/readme.txt +++ b/externals/grill/xsample/readme.txt @@ -4,7 +4,11 @@ Copyright (c)2001-2004 Thomas Grill (t.grill@gmx.net) For information on usage and redistribution, and for a DISCLAIMER OF ALL WARRANTIES, see the file, "license.txt," in this distribution. -Donations for further development of the package are highly appreciated. +---------------------------------------------------------------------------- + +Maximum care has been taken to prepare a delightful experience for you electronic artists. +Donations for further development of the package are HIGHLY APPRECIATED. + Visit https://www.paypal.com/xclick/business=t.grill%40gmx.net&item_name=xsample&no_note=1&tax=0¤cy_code=EUR ---------------------------------------------------------------------------- @@ -12,22 +16,21 @@ Visit https://www.paypal.com/xclick/business=t.grill%40gmx.net&item_name=xsample IMPORTANT INFORMATION for all MaxMSP users: 1) -For OSX it is best to put the xsample file somewhere in your Max/MSP search path and drop the file -xsample-objectmappings.txt into the folder /Library/Application Support/Cycling '74/init . - -For Windows put the xsample file somewhere in your Max/MSP search path and drop the file -xsample-objectmappings-win.txt in +For Mac OSX it is best to put the max-osx/xsample.mxd file into the folder +/Library/Application Support/Cycling '74/externals +and the file maxmsp/xsample-objectmappings.txt into the folder +/Library/Application Support/Cycling '74/init . + +For Windows put the max-msvc\xsample.mxe file into the folder +C:\program files\common files\Cycling '74\externals (english version) +and the file maxmsp/xsample-objectmappings.txt in C:\program files\common files\Cycling '74\init (english version) -or -C:\Programme\Gemeinsame Dateien\Cycling '74\init (german version) -2) -Otherwise (or for OS9) it is advisable to put the xsample shared library file into the "max-startup" folder. -Hence it will be loaded at Max startup. +Put the maxmsp/xsample.help file into the max-help folder. -3) -If you want to load the xsample library on demand, use the "install" option of the Max file menu -and point it to the xsample file or create a [xsample] object in Max/MSP. +2) +Alternatively (or for OS9) it is advisable to put the xsample.mxd or xsample.mxe file +into the "max-startup" folder. Hence it will be loaded at Max startup. ---------------------------------------------------------------------------- @@ -46,30 +49,30 @@ see http://www.parasitaere-kapazitaeten.net/ext Package files: - readme.txt: this one - gpl.txt,license.txt: GPL license stuff -- main.h,main.cpp,inter.cpp,inter.ci: base class definition for all the other objects +- main.h,main.cpp,inter.cpp,inter.h: base class definition for all the other objects - record.cpp: xrecord~ - play.cpp: xplay~ - groove.cpp: xgroove~ ---------------------------------------------------------------------------- -BUILDING XSAMPLE ----------------- +BUILDING XSAMPLE from source +---------------------------- The package should at least compile (and is tested) with the following compilers: pd - Windows: ------------- -o Microsoft Visual C++ 6 command line: edit "config-pd-msvc.txt" and run "build-pd-msvc.bat" - -o Microsoft Visual C++ 6 IDE: edit "xsample.dsp" project file -> due to a compiler bug the optimization using templates is not functional +o Microsoft Visual C++ 6 or .NET command line: edit "config-pd-msvc.txt" and run "build-pd-msvc.bat" o BCC: edit "config-pd-bcc.txt" and run "build-pd-bcc.bat" o Cygwin GCC: edit "config-pd-cygwin.txt" and run "sh ./build-pd-cygwin.sh" > various versions of GCC die during compile with template optimization turned on +o MinGW: edit "config-pd-mingw.txt" and run "build-pd-mingw.bat" +> MinGW binary folder must be included in the system path! + pd - linux: ----------- o GCC: edit "config-pd-linux.txt" and run "sh ./build-pd-linux.sh" @@ -82,13 +85,17 @@ o GCC: edit "config-pd-darwin.txt" and run "sh ./build-pd-darwin.sh" Max/MSP - MacOS9: ---------------- -o Metrowerks CodeWarrior: edit "xsample.cw" project file functions +o Metrowerks CodeWarrior: "xsample.cw" project file o Apple MPW-PR: edit & use the "flext.mpw" makefile Max/MSP - MacOSX: ---------------- -o Metrowerks CodeWarrior: edit "xsample.cw" project file functions +o Metrowerks CodeWarrior: "xsample.cw" project file + +Max/MSP - Windows: +---------------- +o Microsoft Visual C++ 6 or .NET command line: edit "config-max-msvc.txt" and run "build-max-msvc.bat" ---------------------------------------------------------------------------- @@ -102,7 +109,7 @@ Goals/features of the package: - multi-channel capability - live update of respective buffer/array content - switchable 4-point or linear interpolation for xplay~/xgroove~ object -- cross-fading loop zone (inside or outside to loop) for xgroove~ +- cross-fading loop zone for xgroove~ ---------------------------------------------------------------------------- diff --git a/externals/grill/xsample/source/main.cpp b/externals/grill/xsample/source/main.cpp index 36edf5fd..258fb37a 100644 --- a/externals/grill/xsample/source/main.cpp +++ b/externals/grill/xsample/source/main.cpp @@ -28,13 +28,6 @@ static V xsample_main() FLEXT_DSP_SETUP(xrecord); FLEXT_DSP_SETUP(xplay); FLEXT_DSP_SETUP(xgroove); - -#if FLEXT_SYS == FLEXT_SYS_MAX - finder_addclass((C *)"MSP Sampling",(C *)"xgroove~"); - finder_addclass((C *)"MSP Sampling",(C *)"xplay~"); - finder_addclass((C *)"MSP Sampling",(C *)"xrecord~"); -#endif - } // setup the library diff --git a/externals/grill/xsample/source/main.h b/externals/grill/xsample/source/main.h index 056550b9..daa99b5d 100644 --- a/externals/grill/xsample/source/main.h +++ b/externals/grill/xsample/source/main.h @@ -12,15 +12,15 @@ WARRANTIES, see the file, "license.txt," in this distribution. #define __XSAMPLE_H -#define XSAMPLE_VERSION "0.3.0pre20" +#define XSAMPLE_VERSION "0.3.0" #define FLEXT_ATTRIBUTES 1 #include -#if !defined(FLEXT_VERSION) || (FLEXT_VERSION < 405) -#error You need at least flext version 0.4.5 +#if !defined(FLEXT_VERSION) || (FLEXT_VERSION < 406) +#error You need at least flext version 0.4.6 #endif diff --git a/externals/grill/xsample/xsample.cw b/externals/grill/xsample/xsample.cw index 6d855465..78e49d4e 100755 Binary files a/externals/grill/xsample/xsample.cw and b/externals/grill/xsample/xsample.cw differ diff --git a/externals/grill/xsample/xsample.vcproj b/externals/grill/xsample/xsample.vcproj index 98f28c32..43a3ff64 100644 --- a/externals/grill/xsample/xsample.vcproj +++ b/externals/grill/xsample/xsample.vcproj @@ -289,11 +289,11 @@ Name="VCCustomBuildTool"/>