commit 93c71719e87db00ae8e43ca4f98c0b8619aeea99
parent b1149ed6e027437ad57bb360214417629a175d10
Author: paulnasca <paulnasca>
Date: Fri, 1 Oct 2004 20:28:09 +0000
*** empty log message ***
Diffstat:
11 files changed, 84 insertions(+), 73 deletions(-)
diff --git a/ChangeLog b/ChangeLog
@@ -720,6 +720,7 @@
29 Sep 2004 - Inceput sa scriu interfata utilizator pt. incepatori
30 Sep 2004 - Terminat de scris interfata utilizator pt. incepatori si se selecteaza la pornire modul dorit
- Adaugata posibilitatea de a compila cu suport jack si oss simultan si sa se aleaga runtime ce doresc (jack/oss)
+ - Corectata o mica eroare care facea ca sa nu se inchida ferestrele cu instrumente cand incarc din banca
diff --git a/FAQ.txt b/FAQ.txt
@@ -22,14 +22,12 @@ Q3) How can I change the number of parts, voices to ADSynth, effects, etc. ?
A3) Look in src/globals.h and change there theese values. You don't have to change anything else, just recompile all. But most settings must be below 128. As the rule of the thumb if a setting is 128 or below 128, please don't make it bigger than 128. Anyway, I don't belive that you'll need more than 128 for theese settings; for example you don't need 128(or more) effects same time? That's why I put the limit of 128 (using 7 bits of char).
-
Q4) How do I enable Jack support on ZynAddSubFX ?
-A4) Look in "Makefile.inc" from "src/" directory for more information. If you want *really* small latencies, you can decrease "SOUND_BUFFER_SIZE" from "src/globals.h". It is highly recomanded that the Jack samplerate to be equal to ZynAddSubFX samplerate (SAMPLE_RATE from globals.h), otherwise the resampling will be done and this will decrease the quality a bit.
+A4) Look in "Makefile.inc" from "src/" directory for more information. It is highly recomanded that the Jack samplerate to be equal to ZynAddSubFX samplerate (SAMPLE_RATE from globals.h), otherwise the resampling will be done and this will decrease the quality a bit.
-Q5) Why is licensed only under version 2 of the GNU GPL?
+Q5) Why it is licensed only under version 2 of the GNU GPL?
A5) I licensed under GNU GPL v.2 only, because I don't know what the next versions of GPL will say. For example what if they tell that a GPL licensed program can be a part of a proprietary software? This may blow up the entire opensource comunity (well, only 'GPL v.2 or any later version' programs - but they are the most).
To 'be similar in spirit to the present version [of GPL]' (what is said in the section 9 of GNU GPL) is too ambigous for me.
Anyway, ZynAddSubFX is free (as speech) even is licensed only to GPL v.2 ;-) .
-
diff --git a/HISTORY.txt b/HISTORY.txt
@@ -1,3 +1,11 @@
+2.1.0 (1 Oct 2004)
+ - Added a installer for windows (thanks to NSIS installer ( http://nsis.sourceforge.net/ ) ). Both VST and standalone vesions are contained in the same installer.
+ - Added a new user interface for beginners. You can switch the current user interface with that anytime do you want.
+ - All parts, effects, etc. are counted from '1' and not from '0'
+ - Added the posibility to compile the OSS and JACK support in the same binary (look in the Makefile.inc)
+ - VST host should be able to save all zynaddsubfx parameters into their setups (this is untested)
+ - Bugfixes and other
+
2.0.0 (27 Aug 2004)
- VST version works (there are some issues/bugs but it works)
- Added a advanced Clipboard and Preset module - now is possible to add user preset LFOs,Envelopes, Effects, Oscillators, Resonances, Filters, etc.
@@ -8,11 +16,11 @@
- Bugfixes
- Other
-
2.0.0_pre2 (31 Iul 2004)
- Updated the XMLwrapper to mxml-2.0
- Many bugfixes
- Other
+
2.0.0_pre1 (17 Iul 2004)
- Added a new powerful synth engine which is called PADsynth, you can make very beautifull pads and even some strange sounds
- Now is used the XML format for all zynaddsubfx parameters(.XMZ for master parameters, .XIZ for instrument parameters and .XSZ for scale parameters).You can import older parameters. All parameters files are compressed with gzip algorithm.
diff --git a/README.txt b/README.txt
@@ -41,7 +41,7 @@ Not requred, but recomanded:
- ALSA 0.9.x (with OSS emulation, if you don't use JACK)
- JACKit - if you want to use it you must enable compilation for JACK in Makefile.inc
-
+ - a VST host for the VST version
Compilation:
------------
@@ -87,7 +87,7 @@ Running on WINDOWS
Eg: "set PA_RECOMMENDED_OUTPUT_DEVICE=1"
A better way to set all of this, I will put on next versions.
-Please send me instruments,banks,master settings,songs(midi+..._zyn files) done with ZynAddSubFX. I'll apreciate this.
+Please send me instruments,banks,master settings,songs(midi+...xmz files) done with ZynAddSubFX. I'll apreciate this.
Have fun! :-)
diff --git a/bugs.txt b/bugs.txt
@@ -1,4 +1,4 @@
-1) Sometimes when working with banks it crash - don't know why - I tested even with valgrind and I couldn't find out where is the problem (a double delete??)
+1) Sometimes when working a lot with banks it crash - don't know why - I tested even with valgrind and I couldn't find out where is the problem (a double delete??)
2) If the same directory is selected twice on bank roots or preset dir., the same files are shown twice and bad things can happen - I must solve this by comparing the directories (they can me relative directories and absolute dirs.)
-3) The windows version doesnt sort the bank/presets list
+3) It is possible that the windows version doesnt sort the bank/presets list
diff --git a/compile.win32 b/compile.win32
@@ -20,14 +20,14 @@ zlib-1.2.1.tar.bz2
Change the Makefile.inc, and change the compilation options (like operating system,etc.). Now, run make from msys.
-After the compilation, copy in the dll files (pthreadGC.dll and portaudio.dll) to the directory where "zynaddsubfx.exe" is.
+After the compilation, copy in the dll files (pthreadGC.dll and (portaudio.dll if required)) to the directory where "zynaddsubfx.exe" is.
Hope all goes right.
ZynAddSubFX Compilation on Windows as VST plugin (dll file)
----------------------------------------------------------
Edit the Makefile.inc and set "WINDOWS_VST" to "YES". The audioout and midiin are automatically set to VST.
-Get the vstsdk2 and copy it to the directory where ZynAddSubFX-1.x.x is.
-If you copy ZynAddSubFX in "C:\temp" and you will run "dir" you should see the ZynAddSubFX-1.x.x and vstsdk2 in the same directory (C:\temp).
+Get the vstsdk2 and copy it to the directory where ZynAddSubFX-2.x.x is.
+If you copy ZynAddSubFX in "C:\temp" and you will run "dir" you should see the ZynAddSubFX-2.x.x and vstsdk2 in the same directory (C:\temp).
Now you have to compile AudioEffect.cpp and audioeffectx.cpp(from vstsdk2) to the object files AudioEffect.o and audioeffectx.o.
Copy theese object files to zynaddsubfx \src directory.
@@ -37,7 +37,6 @@ You must copy the pthreads.dll file to windows directory (or else, zynaddsubfx w
Copy the zynaddsubfx_vst.dll to your dll directory.
BUGS only on vst port:
-Warning! The version 1.2.1(and others) of zynaddsubfx vst port is extremely buggy! It may blow up the instrument banks (*.bnk_zyn). Also it will crash (including the VST host) if it will be loaded second time (Why?).
Also, to avoid more bugs, I had limited zynaddsubfx to one instance. Please report me how it behaves on various vst hosts.
I hope that I will remove theese bugs on later versions.
diff --git a/src/Makefile.inc b/src/Makefile.inc
@@ -18,7 +18,11 @@ LINUX_MIDIIN=ALSA
#LINUX_MIDIIN=OSS
#LINUX_MIDIIN=NONE
-#Next line sets the audio output (OSS/JACK/PA)
+#Next lines sets the audio output (OSS/JACK/PA)
+#You may use only one at the time
+#If you use "OSS_AND_JACK",,at runtime, zynaddsubfx will run by the default with jack support and
+#it will try OSS if JACK fails. At runtime you can set the OSS by default by command-line
+#parameters (run 'zynaddsubfx --help' for help)
#LINUX_AUDIOOUT=OSS_AND_JACK
LINUX_AUDIOOUT=OSS
diff --git a/src/Misc/Config.C b/src/Misc/Config.C
@@ -154,11 +154,11 @@ Config::Config(){
sprintf(cfg.presetsDirList[0],"./");
#ifdef VSTAUDIOOUT
- cfg.bankRootDirList[1]=new char[MAX_STRING_SIZE];
- sprintf(cfg.bankRootDirList[1],"c:/Program Files/ZynAddSubFX/presets");
+ cfg.presetsDirList[1]=new char[MAX_STRING_SIZE];
+ sprintf(cfg.presetsDirList[1],"c:/Program Files/ZynAddSubFX/presets");
#else
- cfg.bankRootDirList[1]=new char[MAX_STRING_SIZE];
- sprintf(cfg.bankRootDirList[1],"../presets");
+ cfg.presetsDirList[1]=new char[MAX_STRING_SIZE];
+ sprintf(cfg.presetsDirList[1],"../presets");
#endif
cfg.presetsDirList[2]=new char[MAX_STRING_SIZE];
diff --git a/src/UI/BankUI.fl b/src/UI/BankUI.fl
@@ -232,8 +232,7 @@ delete(bankuiwindow);} {}
code {bankuiwindow->show();
simplesetmode(config.cfg.UserInterfaceMode==2);} {}
}
- Function {hide()} {selected
- } {
+ Function {hide()} {} {
code {bankuiwindow->hide();} {}
}
Function {init(Fl_Valuator *cbwig_)} {} {
@@ -302,7 +301,8 @@ if (mode==4){//swap
bs[slot]->refresh();
};
};
-if (mode!=4) refreshmainwindow();} {}
+if (mode!=4) refreshmainwindow();} {selected
+ }
}
Function {refreshmainwindow()} {} {
code {bankuiwindow->label(bank->bankfiletitle);
diff --git a/src/UI/MasterUI.fl b/src/UI/MasterUI.fl
@@ -1,5 +1,5 @@
# data file for the Fltk User Interface Designer (fluid)
-version 1.0104
+version 1.0105
header_name {.h}
code_name {.cc}
decl {//Copyright (c) 2002-2004 Nasca Octavian Paul} {}
@@ -367,8 +367,10 @@ panellistitemgroup->redraw();} {}
decl {BankUI *bankui;} {}
}
-class MasterUI {} {
- Function {make_window()} {} {
+class MasterUI {open
+} {
+ Function {make_window()} {open
+ } {
Fl_Window masterwindow {
label zynaddsubfx
callback {\#ifdef VSTAUDIOOUT
@@ -377,7 +379,7 @@ class MasterUI {} {
\#else
if (fl_ask("Exit and leave the unsaved data?")) *exitprogram=1;
\#endif}
- xywh {353 127 390 465} type Double hide non_modal
+ xywh {353 127 390 465} type Double hide
} {
Fl_Menu_Bar mastermenu {
xywh {-5 0 690 25}
@@ -912,7 +914,8 @@ partui->redraw();
o->redraw();
npart=nval;
-updatepanel();}
+updatepanel();
+simplenpartcounter->do_callback();}
tooltip {The part number} xywh {5 247 70 23} type Simple labelfont 1 minimum 0 maximum 127 step 1 value 1 textfont 1
code0 {o->bounds(1,NUM_MIDI_PARTS);}
code1 {bankui->init(o);}
@@ -1020,54 +1023,14 @@ updatepanel();}
xywh {575 570 55 25} box THIN_UP_BOX
}
}
- Fl_Window selectuiwindow {
- label {User Interface mode}
- callback {*exitprogram=1;}
- xywh {16 297 430 250} type Double hide
- } {
- Fl_Box {} {
- label {Welcome to ZynAddSubFX}
- xywh {5 5 425 40} labeltype SHADOW_LABEL labelfont 1 labelsize 33
- }
- Fl_Box {} {
- label {Please choose the interface mode:}
- xywh {10 50 265 25} labelfont 1 labelsize 16
- }
- Fl_Button {} {
- label Advanced
- callback {masterwindow->show();
-selectuiwindow->hide();
-config.cfg.UserInterfaceMode=1;}
- xywh {10 165 100 35} box PLASTIC_UP_BOX color 229 labelfont 1 labelsize 20
- }
- Fl_Box {} {
- label {.. if you have used ZynAddSubFX before, or you like to have full controll to all parameters.}
- xywh {110 165 310 35} labelfont 1 labelsize 13 align 144
- }
- Fl_Button {} {
- label Beginner
- callback {simplemasterwindow->show();
-selectuiwindow->hide();
-config.cfg.UserInterfaceMode=2;}
- xywh {10 80 100 65} box PLASTIC_UP_BOX color 238 labelfont 1 labelsize 20
- }
- Fl_Box {} {
- label {..if you are a beginner, you prefer using presets or you prefer to use simpler user interfaces. Most functionality of ZynAddSubFX will be hidden in this mode to make simple the learning/using it.}
- xywh {110 75 320 75} labelfont 1 labelsize 13 align 144
- }
- Fl_Box {} {
- label {You can switch the interface modes anytime you want.}
- xywh {40 215 345 25} box BORDER_BOX color 51 labelfont 1 labelsize 13 align 144
- }
- }
Fl_Window simplemasterwindow {
label ZynAddSubFX
callback {\#ifdef VSTAUDIOOUT
//fl_alert("ZynAddSubFX could not be closed this way, because it's a VST plugin. Please use the host aplication to close it.");
- masterwindow->iconize();
+ simplemasterwindow->iconize();
\#else
if (fl_ask("Exit and leave the unsaved data?")) *exitprogram=1;
-\#endif}
+\#endif} selected
xywh {135 383 600 335} type Double hide
} {
Fl_Menu_Bar {} {
@@ -1537,7 +1500,6 @@ simplerefresh();
virkeys->midich=master->part[npart]->Prcvchn;}
tooltip {The part number} xywh {170 40 70 20} type Simple labelfont 1 align 4 minimum 0 maximum 127 step 1 value 1 textfont 1
code0 {o->bounds(1,NUM_MIDI_PARTS);}
- code1 {bankui->init(o);}
}
Fl_Counter {} {
label {Keyb.Oct.}
@@ -1548,6 +1510,46 @@ virkeys->take_focus();}
code0 {o->value(virkeys->midioct);}
}
}
+ Fl_Window selectuiwindow {
+ label {User Interface mode}
+ callback {*exitprogram=1;}
+ xywh {342 246 430 250} type Double hide non_modal
+ } {
+ Fl_Box {} {
+ label {Welcome to ZynAddSubFX}
+ xywh {5 5 425 40} labeltype SHADOW_LABEL labelfont 1 labelsize 33
+ }
+ Fl_Box {} {
+ label {Please choose the interface mode:}
+ xywh {10 50 265 25} labelfont 1 labelsize 16
+ }
+ Fl_Button {} {
+ label Advanced
+ callback {config.cfg.UserInterfaceMode=1;
+masterwindow->show();
+selectuiwindow->hide();}
+ xywh {10 165 100 35} box PLASTIC_UP_BOX color 229 labelfont 1 labelsize 20
+ }
+ Fl_Box {} {
+ label {.. if you have used ZynAddSubFX before, or you like to have full controll to all parameters.}
+ xywh {110 165 310 35} labelfont 1 labelsize 13 align 144
+ }
+ Fl_Button {} {
+ label Beginner
+ callback {simplemasterwindow->show();
+selectuiwindow->hide();
+config.cfg.UserInterfaceMode=2;}
+ xywh {10 80 100 65} box PLASTIC_UP_BOX color 238 labelfont 1 labelsize 20
+ }
+ Fl_Box {} {
+ label {..if you are a beginner, you prefer using presets or you prefer to use simpler user interfaces. Most functionality of ZynAddSubFX will be hidden in this mode to make simple the learning/using it.}
+ xywh {110 75 320 75} labelfont 1 labelsize 13 align 144
+ }
+ Fl_Box {} {
+ label {You can switch the interface modes anytime you want.}
+ xywh {30 215 360 25} box BORDER_BOX color 51 labelfont 1 labelsize 13 align 144
+ }
+ }
}
Function {updatesendwindow()} {} {
code {for (int neff1=0;neff1<NUM_SYS_EFX;neff1++)
@@ -1725,8 +1727,7 @@ simpleglobalfinedetuneslider->value(master->microtonal.Pglobalfinedetune);
virkeys->midich=master->part[npart]->Prcvchn;
simplerefresh();
-bankui->hide();} {selected
- }
+bankui->hide();} {}
}
decl {Master *master;} {}
decl {MicrotonalUI *microtonalui;} {}
diff --git a/src/zynaddsubfx.nsi b/src/zynaddsubfx.nsi
@@ -2,7 +2,7 @@
; HM NIS Edit Wizard helper defines
!define PRODUCT_NAME "ZynAddSubFX"
-!define PRODUCT_VERSION "2.0.1"
+!define PRODUCT_VERSION "2.1.0"
!define PRODUCT_PUBLISHER "Nasca Octavian Paul"
!define PRODUCT_WEB_SITE "http://zynaddsubfx.sourceforge.net"
!define PRODUCT_DIR_REGKEY "Software\Microsoft\Windows\CurrentVersion\App Paths\zynaddsubfx.exe"
@@ -100,7 +100,7 @@ Section "VST Plugin" SEC03
File "zynaddsubfx_vst.dll"
SectionEnd
-Section "Source Code" SEC04
+Section /o "Source Code" SEC04
SetOutPath "$INSTDIR"
File /r "source code"
SectionEnd