You can subscribe to this list here.
2004 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
(90) |
Sep
(38) |
Oct
(22) |
Nov
(3) |
Dec
(13) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2005 |
Jan
(40) |
Feb
(119) |
Mar
(236) |
Apr
(41) |
May
(45) |
Jun
(10) |
Jul
(9) |
Aug
(12) |
Sep
(5) |
Oct
(17) |
Nov
(2) |
Dec
(3) |
2006 |
Jan
(23) |
Feb
(36) |
Mar
(49) |
Apr
|
May
|
Jun
(1) |
Jul
(11) |
Aug
(11) |
Sep
(15) |
Oct
(30) |
Nov
(36) |
Dec
(13) |
2007 |
Jan
|
Feb
(1) |
Mar
|
Apr
(1) |
May
(3) |
Jun
(7) |
Jul
(4) |
Aug
(1) |
Sep
(19) |
Oct
(1) |
Nov
(2) |
Dec
(5) |
2008 |
Jan
|
Feb
(2) |
Mar
(1) |
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
(4) |
Nov
(5) |
Dec
|
2009 |
Jan
(26) |
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
(26) |
Sep
(6) |
Oct
(5) |
Nov
(6) |
Dec
(6) |
2010 |
Jan
(3) |
Feb
|
Mar
(5) |
Apr
|
May
(1) |
Jun
|
Jul
(1) |
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2011 |
Jan
|
Feb
|
Mar
|
Apr
(2) |
May
|
Jun
|
Jul
(6) |
Aug
(8) |
Sep
(220) |
Oct
(9) |
Nov
(27) |
Dec
(33) |
2012 |
Jan
|
Feb
(4) |
Mar
(9) |
Apr
|
May
|
Jun
(1) |
Jul
|
Aug
|
Sep
|
Oct
(4) |
Nov
|
Dec
|
2013 |
Jan
(6) |
Feb
(20) |
Mar
(6) |
Apr
(3) |
May
(4) |
Jun
|
Jul
|
Aug
|
Sep
|
Oct
(17) |
Nov
(2) |
Dec
|
2014 |
Jan
(9) |
Feb
(1) |
Mar
(11) |
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
(2) |
Nov
|
Dec
(2) |
2018 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(1) |
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: Daniel R. <dr....@co...> - 2009-08-25 07:36:13
|
Hi Michael, 1) three hours of tinkering is either not mentioned or called, "a bit of tinkering" when you develop software. Plan to lose many more. 2) I did give up on JSynthLib (resulting in www.confusionists.com/handsonic), but there was a LOT of help on the list. I ditched it because what I needed to do was not really a librarian. 3) My guess: it's August, they're Europeans, and so you have to wait until September when they are actually working. 4) Sounds like your problems are outside of JSynthlib anyway, but I'm not sure. Use JSynthlib if you are going to be making that kind of functionality anyway. good luck! D On Tue, Aug 25, 2009 at 4:00 AM, Michael Hawkins <kor...@ya...>wrote: > Hi JSynthLib fans, > > Well, after hours (3 to be exact) of careful troubleshooting and tinkering, > I was able to pull in a patch from my Korg Poly-800. > > But as with most things in life, I now have more questions than I started > with. I am hoping that someone who has more experience with JSynthLib than > me can help me out. > > To get the patch "get" and "paste" to work required that a) I set sysexID = > "F0422106*"; this is the header for a patch dump coming from the Poly-800. > and b) that I comment out sending a bank change in requestPatchDump. > > The Poly-800 sends an acknowledgement sysex message after it receives a > bank change. So the "Get" code seems to have choked on the 7 bytes that it > receives just prior to receiving the patch sysex message itself. > > So, I could just rewrite the sysex implementation on the Poly-800 so that > it doesn't send an acknowledgment sysex message but that seems to be a bit > of a cop out and especially so if there is a way that I could rewrite the > requestPatchDump so that it would intercept that ack. message and ignore it > instead of choking on it? > > Now, I don't want to be too pushy here because I like JSynthLib and I like > the idea of an open source patch editor but hopefully someone on this list > can answer a question or two because it has taken me hours to get this far > and I have many more questions that need answering. > > Here is another question, the Poly-800 does not support patch names in its > sysex implementation nor programming but does that stop me from using patch > names in JSynthLib itself? Is it possible to save patch names outside of the > sysex message but inside the patch when stored in JSynthLib? > > Anyway, in advance, I would like to thank anyone that might provide me with > some assistance. > > If I don't hear anything from anybody, I may have to consider an > alternative to JSynthLib because the learning curve might be just too steep > while going at this completely alone. > > Here's my singledriver below: > > /* > * @version $Id: KorgHAWK800SingleDriver.java 111 2009-08-20 04:05:40Z > hawkins $ > */ > package synthdrivers.KorgHAWK800; > > import core.Driver; > import core.ErrorMsg; > import core.JSLFrame; > import core.Patch; > import core.SysexHandler; > > public class KorgHAWK800SingleDriver extends Driver > { > private int curBank = 0, curPatch = 0; > > public KorgHAWK800SingleDriver() { > super("Single", "Michael Hawkins"); > sysexID = "F0422106*"; > sysexRequestDump=new SysexHandler("F0 42 21 07 *patchNum* F7"); > > patchSize=262; > deviceIDoffset=-1; > > bankNumbers = new String[] { > "0-Bank1", "1-Bank2","2-Bank3", "3-Bank4" > }; > // patch numbers use octal representation with no zeroes (11-88) > patchNumbers=new String[] {"11","12","13","14","15","16","17","18", > "21","22","23","24","25","26","27","28", > "31","32","33","34","35","36","37","38", > "41","42","43","44","45","46","47","48", > "51","52","53","54","55","56","57","58", > "61","62","63","64","65","66","67","68", > "71","72","73","74","75","76","77","78", > "81","82","83","84","85","86","87","88"}; > } > > public void setBankNum(int bankNum) > { > try { > send(new byte[] { > (byte)0xF0,(byte)0x42,(byte)0x21,(byte)0x0E, > (byte)bankNum,(byte)0xF7 > }); > } catch (Exception e) {} > } > > public void requestPatchDump(int bankNum, int patchNum) { > //setBankNum(bankNum); > try {Thread.sleep(250); } catch (Exception e){} > byte sysex[] = { > (byte)0xF0, (byte) 0x42, (byte) 0x21, (byte) 0x07, > (byte)patchNum, (byte) 0xF7 > }; > send(sysex); > } > > public void storePatch (Patch p, int bankNum,int patchNum) > { > setBankNum(bankNum); > try {Thread.sleep(250); } catch (Exception e){} > //patchNum=patchNum&0x3F; > ((Patch)p).sysex[4]=(byte)patchNum; > sendPatchWorker(p); > setPatchNum(patchNum); > } > > public void sendPatch (Patch p) > { > byte [] newsysex = new byte[262]; > System.arraycopy(((Patch)p).sysex,0,newsysex,0,262); > newsysex[4] = (byte)(0x40); > try { > send(newsysex); > }catch (Exception e) {ErrorMsg.reportStatus(e);} > } > > public Patch createNewPatch() > { > byte [] sysex = new byte[262]; > sysex[0]=(byte)0xF0; sysex[1]=(byte)0x42; sysex[2]=(byte)0x21; > sysex[3]=(byte)0x06; sysex[261]=(byte)0xF7; > Patch p = new Patch(sysex, this); > //setPatchName(p,"NewPatch"); > calculateChecksum(p); > return p; > } > > protected void calculateChecksum(Patch p,int start,int end,int ofs) > { > // no checksum > } > > //public JSLFrame editPatch(Patch p) { > // return new KorgHAWK800SingleEditor((Patch)p); > protected JSLFrame editPatch(Patch p) { > return (new synthdrivers.Generic.HexDumpEditorFrame(p)); > } > > } > > > |
From: Michael H. <kor...@ya...> - 2009-08-25 02:09:36
|
Hi JSynthLib fans, Well, after many hours of careful troubleshooting and tinkering, I was able to pull in a patch from my Korg Poly-800 that had been retrofitted with the HAWK-800 upgrade kit. But as with most things in life, I now have more questions than I started with. I am hoping that someone who has more experience with JSynthLib than me can help me out. To get the patch "get" and "paste" to work required that a) I set sysexID = "F0422106*"; this is the header for a patch dump coming from the Poly-800. and b) that I comment out sending a bank change in requestPatchDump. Now, I guess that the sysexID must be a generic way for JSynthLib to identify a valid patch for this particular synth but I sure as heck couldn't find anything in the core drivers that told me this. Was I looking in the wrong place? Can anyone show me where the doc's or commented code said that? Next, the Poly-800 sends out an acknowledgment sysex message after it receives a bank change. So the "Get" code seems to have choked on the 7 bytes that it received after the bank change was sent which is just prior to receiving the patch sysex message itself. That happens because requestPatchDump has to set the bank first before requesting the required patch from that patch bank. So anyway, I could just rewrite the sysex implementation on the Poly-800 (since I am the creator of the HAWK-800) so that it doesn't send an acknowledgment sysex message but that seems to be a bit of a cop out and especially so if there is a way that I could rewrite the requestPatchDump so that it would intercept that ack. message and just ignore it (dump in the bit bucket) instead of choking on it? Now, I don't want to be too pushy here because I like JSynthLib and I like the idea of an open source patch editor but hopefully someone on this list can answer a question or two because it has taken me many hours to get this far and I have many more questions that need answering. At this rate, it could take me another year before I am able to create a slider volume control (OK that's a slight exaggeration). Here is another question, the Poly-800 does not support patch names in its sysex implementation nor programming but does that stop JSynthLib from using patch names within JSynthLib itself? Is it possible to save patch names outside of the sysex message but inside the patch when stored in JSynthLib? Anyway, in advance, I would like to thank anyone that might provide me with some assistance. I really hope I get some help because this could be a long, hard road to travel alone, in silence, blindly trudging ever more lonely toward the eternal abyss. :-) Here's my singledriver below: /* * @version $Id: KorgHAWK800SingleDriver.java 111 2009-08-20 04:05:40Z hawkins $ */ package synthdrivers.KorgHAWK800; import core.Driver; import core.ErrorMsg; import core.JSLFrame; import core.Patch; import core.SysexHandler; public class KorgHAWK800SingleDriver extends Driver { private int curBank = 0, curPatch = 0; public KorgHAWK800SingleDriver() { super("Single", "Michael Hawkins"); sysexID = "F0422106*"; sysexRequestDump=new SysexHandler("F0 42 21 07 *patchNum* F7"); patchSize=262; deviceIDoffset=-1; bankNumbers = new String[] { "0-Bank1", "1-Bank2","2-Bank3", "3-Bank4" }; // patch numbers use octal representation with no zeroes (11-88) patchNumbers=new String[] {"11","12","13","14","15","16","17","18", "21","22","23","24","25","26","27","28", "31","32","33","34","35","36","37","38", "41","42","43","44","45","46","47","48", "51","52","53","54","55","56","57","58", "61","62","63","64","65","66","67","68", "71","72","73","74","75","76","77","78", "81","82","83","84","85","86","87","88"}; } public void setBankNum(int bankNum) { try { send(new byte[] { (byte)0xF0,(byte)0x42,(byte)0x21,(byte)0x0E, (byte)bankNum,(byte)0xF7 }); } catch (Exception e) {} } public void requestPatchDump(int bankNum, int patchNum) { //setBankNum(bankNum); try {Thread.sleep(250); } catch (Exception e){} byte sysex[] = { (byte)0xF0, (byte) 0x42, (byte) 0x21, (byte) 0x07, (byte)patchNum, (byte) 0xF7 }; send(sysex); } public void storePatch (Patch p, int bankNum,int patchNum) { setBankNum(bankNum); try {Thread.sleep(250); } catch (Exception e){} //patchNum=patchNum&0x3F; ((Patch)p).sysex[4]=(byte)patchNum; sendPatchWorker(p); setPatchNum(patchNum); } public void sendPatch (Patch p) { byte [] newsysex = new byte[262]; System.arraycopy(((Patch)p).sysex,0,newsysex,0,262); newsysex[4] = (byte)(0x40); try { send(newsysex); }catch (Exception e) {ErrorMsg.reportStatus(e);} } public Patch createNewPatch() { byte [] sysex = new byte[262]; sysex[0]=(byte)0xF0; sysex[1]=(byte)0x42; sysex[2]=(byte)0x21; sysex[3]=(byte)0x06; sysex[261]=(byte)0xF7; Patch p = new Patch(sysex, this); //setPatchName(p,"NewPatch"); calculateChecksum(p); return p; } protected void calculateChecksum(Patch p,int start,int end,int ofs) { // no checksum } //public JSLFrame editPatch(Patch p) { // return new KorgHAWK800SingleEditor((Patch)p); protected JSLFrame editPatch(Patch p) { return (new synthdrivers.Generic.HexDumpEditorFrame(p)); } } |
From: Michael H. <kor...@ya...> - 2009-08-25 02:00:57
|
Hi JSynthLib fans, Well, after hours (3 to be exact) of careful troubleshooting and tinkering, I was able to pull in a patch from my Korg Poly-800. But as with most things in life, I now have more questions than I started with. I am hoping that someone who has more experience with JSynthLib than me can help me out. To get the patch "get" and "paste" to work required that a) I set sysexID = "F0422106*"; this is the header for a patch dump coming from the Poly-800. and b) that I comment out sending a bank change in requestPatchDump. The Poly-800 sends an acknowledgement sysex message after it receives a bank change. So the "Get" code seems to have choked on the 7 bytes that it receives just prior to receiving the patch sysex message itself. So, I could just rewrite the sysex implementation on the Poly-800 so that it doesn't send an acknowledgment sysex message but that seems to be a bit of a cop out and especially so if there is a way that I could rewrite the requestPatchDump so that it would intercept that ack. message and ignore it instead of choking on it? Now, I don't want to be too pushy here because I like JSynthLib and I like the idea of an open source patch editor but hopefully someone on this list can answer a question or two because it has taken me hours to get this far and I have many more questions that need answering. Here is another question, the Poly-800 does not support patch names in its sysex implementation nor programming but does that stop me from using patch names in JSynthLib itself? Is it possible to save patch names outside of the sysex message but inside the patch when stored in JSynthLib? Anyway, in advance, I would like to thank anyone that might provide me with some assistance. If I don't hear anything from anybody, I may have to consider an alternative to JSynthLib because the learning curve might be just too steep while going at this completely alone. Here's my singledriver below: /* * @version $Id: KorgHAWK800SingleDriver.java 111 2009-08-20 04:05:40Z hawkins $ */ package synthdrivers.KorgHAWK800; import core.Driver; import core.ErrorMsg; import core.JSLFrame; import core.Patch; import core.SysexHandler; public class KorgHAWK800SingleDriver extends Driver { private int curBank = 0, curPatch = 0; public KorgHAWK800SingleDriver() { super("Single", "Michael Hawkins"); sysexID = "F0422106*"; sysexRequestDump=new SysexHandler("F0 42 21 07 *patchNum* F7"); patchSize=262; deviceIDoffset=-1; bankNumbers = new String[] { "0-Bank1", "1-Bank2","2-Bank3", "3-Bank4" }; // patch numbers use octal representation with no zeroes (11-88) patchNumbers=new String[] {"11","12","13","14","15","16","17","18", "21","22","23","24","25","26","27","28", "31","32","33","34","35","36","37","38", "41","42","43","44","45","46","47","48", "51","52","53","54","55","56","57","58", "61","62","63","64","65","66","67","68", "71","72","73","74","75","76","77","78", "81","82","83","84","85","86","87","88"}; } public void setBankNum(int bankNum) { try { send(new byte[] { (byte)0xF0,(byte)0x42,(byte)0x21,(byte)0x0E, (byte)bankNum,(byte)0xF7 }); } catch (Exception e) {} } public void requestPatchDump(int bankNum, int patchNum) { //setBankNum(bankNum); try {Thread.sleep(250); } catch (Exception e){} byte sysex[] = { (byte)0xF0, (byte) 0x42, (byte) 0x21, (byte) 0x07, (byte)patchNum, (byte) 0xF7 }; send(sysex); } public void storePatch (Patch p, int bankNum,int patchNum) { setBankNum(bankNum); try {Thread.sleep(250); } catch (Exception e){} //patchNum=patchNum&0x3F; ((Patch)p).sysex[4]=(byte)patchNum; sendPatchWorker(p); setPatchNum(patchNum); } public void sendPatch (Patch p) { byte [] newsysex = new byte[262]; System.arraycopy(((Patch)p).sysex,0,newsysex,0,262); newsysex[4] = (byte)(0x40); try { send(newsysex); }catch (Exception e) {ErrorMsg.reportStatus(e);} } public Patch createNewPatch() { byte [] sysex = new byte[262]; sysex[0]=(byte)0xF0; sysex[1]=(byte)0x42; sysex[2]=(byte)0x21; sysex[3]=(byte)0x06; sysex[261]=(byte)0xF7; Patch p = new Patch(sysex, this); //setPatchName(p,"NewPatch"); calculateChecksum(p); return p; } protected void calculateChecksum(Patch p,int start,int end,int ofs) { // no checksum } //public JSLFrame editPatch(Patch p) { // return new KorgHAWK800SingleEditor((Patch)p); protected JSLFrame editPatch(Patch p) { return (new synthdrivers.Generic.HexDumpEditorFrame(p)); } } |
From: Michael H. <kor...@ya...> - 2009-08-24 01:59:29
|
When I click on the "Paste" button from within the "Get" patch dialog I get the following: Exception occurred during event dispatching: java.lang.NullPointerException at core.Driver.createPatches(Driver.java:298) at core.SysexGetDialog.pasteIntoSelectedFrame(SysexGetDialog.java:156) at core.SysexGetDialog$PasteActionListener.actionPerformed(SysexGetDialo g.java:246) at javax.swing.AbstractButton.fireActionPerformed(Unknown Source) at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source) at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source) at javax.swing.DefaultButtonModel.setPressed(Unknown Source) at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(Unknown Sour ce) at java.awt.Component.processMouseEvent(Unknown Source) at javax.swing.JComponent.processMouseEvent(Unknown Source) at java.awt.Component.processEvent(Unknown Source) at java.awt.Container.processEvent(Unknown Source) at java.awt.Component.dispatchEventImpl(Unknown Source) at java.awt.Container.dispatchEventImpl(Unknown Source) at java.awt.Component.dispatchEvent(Unknown Source) at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source) at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source) at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source) at java.awt.Container.dispatchEventImpl(Unknown Source) at java.awt.Window.dispatchEventImpl(Unknown Source) at java.awt.Component.dispatchEvent(Unknown Source) at java.awt.EventQueue.dispatchEvent(Unknown Source) at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source) at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source) at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source) at java.awt.Dialog$1.run(Unknown Source) at java.awt.Dialog$3.run(Unknown Source) at java.security.AccessController.doPrivileged(Native Method) at java.awt.Dialog.show(Unknown Source) at java.awt.Component.show(Unknown Source) at java.awt.Component.setVisible(Unknown Source) at java.awt.Window.setVisible(Unknown Source) at java.awt.Dialog.setVisible(Unknown Source) at core.Actions$GetAction.actionPerformed(Actions.java:1055) at javax.swing.AbstractButton.fireActionPerformed(Unknown Source) at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source) at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source) at javax.swing.DefaultButtonModel.setPressed(Unknown Source) at javax.swing.AbstractButton.doClick(Unknown Source) at javax.swing.plaf.basic.BasicMenuItemUI.doClick(Unknown Source) at javax.swing.plaf.basic.BasicMenuItemUI$Handler.mouseReleased(Unknown Source) at java.awt.Component.processMouseEvent(Unknown Source) at javax.swing.JComponent.processMouseEvent(Unknown Source) at java.awt.Component.processEvent(Unknown Source) at java.awt.Container.processEvent(Unknown Source) at java.awt.Component.dispatchEventImpl(Unknown Source) at java.awt.Container.dispatchEventImpl(Unknown Source) at java.awt.Component.dispatchEvent(Unknown Source) at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source) at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source) at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source) at java.awt.Container.dispatchEventImpl(Unknown Source) at java.awt.Window.dispatchEventImpl(Unknown Source) at java.awt.Component.dispatchEvent(Unknown Source) at java.awt.EventQueue.dispatchEvent(Unknown Source) at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source) at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source) at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source) at java.awt.EventDispatchThread.pumpEvents(Unknown Source) at java.awt.EventDispatchThread.pumpEvents(Unknown Source) at java.awt.EventDispatchThread.run(Unknown Source) |
From: Michael H. <kor...@ya...> - 2009-08-24 01:21:12
|
Hi JSynthLib ppl, I am working on a new device driver and have been partially successful but am stumped on a problem. I am hoping that someone could help me out. I have attached the two files that have been developed so far. They are the KorgHAWK800Device.java and KorgHAWK800SingleDriver.java files. When I run the resulting generated JSynthLib jar, I can select the Korg HAWK-800 device, open a new scene or library and then create a "New Patch". I can also copy and paste that blank patch around. For some reason, when I start JSynthLib I get the following error/warning and I don't understand why. Z:\WGVX7K~S>java -jar JSynthLib.jar java.lang.StringIndexOutOfBoundsException: String index out of range: 0 at java.lang.String.charAt(String.java:687) at core.DevicesConfig.createDevice(DevicesConfig.java:332) at core.AppConfig.addDevice(AppConfig.java:349) at core.AppConfig.loadPrefs(AppConfig.java:68) at core.PatchEdit.<init>(PatchEdit.java:40) at JSynthLib.main(JSynthLib.java:33) But the real problem begins when I attempt a "Get" patch. I am able to select the device, patch and bank (and with MIDI monitor running) I can see the correct MIDI sysex commands going to the synth and I can see the synth responding back. However, after "getting" the patch, the "Paste" button does not seem to paste any patch data into the selected (highlighted) patch in the library or scene windows. Is there anything anyone can suggest that I am doing wrong? Any help would be very, very appreciated. Mike. |
From: Daniel R. <dr....@co...> - 2009-08-09 22:11:18
|
> Link for QT would be > > http://www.qtsoftware.com/products/appdev/programming-language-support > > but it's true that the QT effort for Java looks quite dead or dy ing. > > Anyway, regarding your questions: > > > On Sun, Aug 9, 2009 at 10:45 PM, Peter Geirnaert < > pet...@gm...> wrote: > >> Hi Daniel, all ... >> >> >>> I do NOT use (nor believe in, but I could be convinced) any Swing >>> designers. >>> I wrote all of my Swing code by hand, using the designer in JBuilder >>> (still >>> out there somewhere) to figure out how to do certain things layout-wise. >> >> >> I too believe after some study work, it must be possible for a coder to >> write by hand. >> After all, you had to write library support first, so you have to be able >> to write UI code by hand. >> >> >>> I don't know the state-of-the-art regarding Swing designers (nor have I >>> ever >>> looked at Netbeans for anything but straight code/refactoring/SVN), but >>> my >>> opinion from what I've seen is that it's hard going. Real code always >>> causes >>> designers to break. >> >> >> So what would it do to musicians ? Anyway, if someone wants to get his >> hands dirty on System Exclusive, there must be some coders-spirit already. >> Just make a switch from design-mode to code-mode in the little grey cells >> ... >> > > Yes, but this is unfortunate: UI work is mostly repetitive and > pattern-based. One of the main problems with Swing is always the layouts. Of > course, there are tons of articles and books on that. Also, you'll have to > learn the Adapter/Adaptee structure for firing methods from controls. It's > simple, but it's a structure that needs to be copied (learned). > >> >> >>> (Irrelevant but noteworthy: .Net winforms designer in >>> VS2005 or 2008 is great, and can handle your code moving forward). >> >> >> How do you mean "can handle your code forward" ? >> Do you mean like JSynthLib is "stuck" in an old way of coding software ? >> >> > > No, sorry, I was referring to Java IDEs. JSynthlib looked fine to me. > > >> >> Out of curiosity: what is wrong with the initComponent? It's probably >>> called >>> by the constructor, and if not, you can always make it public... >> >> >> Hm, thanks for the tip, I'll investigate it because I didn't know why it >> would be wrong. >> I simply didn't see it used in other editors, and jumped to conclusions >> ... >> (I still have to test my first patchEditor) >> > > Yeah, if I remember correctly, you always put your stuff in an init method > (arbitrary name) because it has to be called after the form has been created > (or some event like that: this is all standard stuff to be copied). > > >> >> >>> That said, if I were to do any Java projects right now, I would take a >>> serious look at whether the UI could be done with QT or something. *Not >>> sure >>> if that would jive with the Swing stuff that JSynth is already using.* >> >> >> Well, that looks interesting, I found this project on Sourceforge: >> QtJava <http://sourceforge.net/projects/qtjava/> but it's like no longer >> supported or developed. >> >> I guess I'm having enough extra work already 'blogging' about writing a >> driver, >> it's probably best if I just do it the traditional JSynthLib way. >> >> BTW, I have some troubles opening the preferences window in JSynthLib, but >> I'll write about that under another subject title, tomorrow, maybe ... >> >> Happy summertime ;-) >> Peter >> > > Cool, enjoy and good luck. > |
From: Peter G. <pet...@gm...> - 2009-08-09 20:46:25
|
Hi Daniel, all ... > I do NOT use (nor believe in, but I could be convinced) any Swing > designers. > I wrote all of my Swing code by hand, using the designer in JBuilder (still > out there somewhere) to figure out how to do certain things layout-wise. I too believe after some study work, it must be possible for a coder to write by hand. After all, you had to write library support first, so you have to be able to write UI code by hand. > I don't know the state-of-the-art regarding Swing designers (nor have I > ever > looked at Netbeans for anything but straight code/refactoring/SVN), but my > opinion from what I've seen is that it's hard going. Real code always > causes > designers to break. So what would it do to musicians ? Anyway, if someone wants to get his hands dirty on System Exclusive, there must be some coders-spirit already. Just make a switch from design-mode to code-mode in the little grey cells ... > (Irrelevant but noteworthy: .Net winforms designer in > VS2005 or 2008 is great, and can handle your code moving forward). How do you mean "can handle your code forward" ? Do you mean like JSynthLib is "stuck" in an old way of coding software ? > Out of curiosity: what is wrong with the initComponent? It's probably > called > by the constructor, and if not, you can always make it public... Hm, thanks for the tip, I'll investigate it because I didn't know why it would be wrong. I simply didn't see it used in other editors, and jumped to conclusions ... (I still have to test my first patchEditor) > That said, if I were to do any Java projects right now, I would take a > serious look at whether the UI could be done with QT or something. *Not > sure > if that would jive with the Swing stuff that JSynth is already using.* Well, that looks interesting, I found this project on Sourceforge: QtJava <http://sourceforge.net/projects/qtjava/> but it's like no longer supported or developed. I guess I'm having enough extra work already 'blogging' about writing a driver, it's probably best if I just do it the traditional JSynthLib way. BTW, I have some troubles opening the preferences window in JSynthLib, but I'll write about that under another subject title, tomorrow, maybe ... Happy summertime ;-) Peter |
From: Daniel R. <dr....@co...> - 2009-08-09 16:36:49
|
Hi Peter, Thanks for the bon appetit! I'm in Italy, so free pizza is even better :) I do NOT use (nor believe in, but I could be convinced) any Swing designers. I wrote all of my Swing code by hand, using the designer in JBuilder (still out there somewhere) to figure out how to do certain things layout-wise. I don't know the state-of-the-art regarding Swing designers (nor have I ever looked at Netbeans for anything but straight code/refactoring/SVN), but my opinion from what I've seen is that it's hard going. Real code always causes designers to break. (Irrelevant but noteworthy: .Net winforms designer in VS2005 or 2008 is great, and can handle your code moving forward). Out of curiosity: what is wrong with the initComponent? It's probably called by the constructor, and if not, you can always make it public... That said, if I were to do any Java projects right now, I would take a serious look at whether the UI could be done with QT or something. *Not sure if that would jive with the Swing stuff that JSynth is already using.* Best, Daniel On Sun, Aug 9, 2009 at 5:50 PM, Peter Geirnaert <pet...@gm...>wrote: > Hi > > On Sat, Aug 8, 2009 at 5:25 PM, Daniel Rosenstark < > dr....@co...> wrote: > >> Hello all: > > >> >> About a year ago I started with JSynth and then ended up giving up and >> creating my product as a standalone Java app ( >> www.confusionists.com/handsonic). Now I've given up on hardware entirely, >> so >> I'm out of the JSynth game completely. Which is not really relevant :) >> (BTW, >> the product receives tons of downloads and I've even made enough to buy a >> few pizzas in the last year.) > > > Good luck and 'bon apetit' ;-) > > Regarding the Java question, I just wanted to plug Netbeans[snip] > > > > I see the Netbeans (6.0.1) GUI builder is using private void > initComponents() { ... } > to initialize forms. > That's probably not a good idea, to start using the Netbeans way of > building a GUI for a JSynthLib driver. > Also, I couldn't find the Widgets provided by JSynthLib, only DKnob seemed > available, > to import in the 'palette'<http://wiki.netbeans.org/FaqFormUsingCustomComponent>. > Some tools for building the GUI in an IDE would be handy imho. > For now, I'm just using Gimp <http://www.gimp.org> and it's layers to sketch > a lay-out <http://spd-11.wikispaces.com/file/view/PatchEditorGUI-3.png>for my Roland SPD-11 driver. > A .zip containing .png pics of the components made available by JSynthLib > would be easy to get started quick (using photoshop or gimp). > > I don't know if I should start a JSynthLib topic on java-forums<http://www.java-forums.org/>or > sun-java-forums <http://forums.sun.com/> or ask my questions here, > actually, after finishing my driver project, I can imagine I wouldn't go > looking again for answers to questions posted on this list. But Java lovers > (or how should I call them) on a java forum might do some research for > newbies simply out of interest for Java code. > > > >> >> Best of luck, >> Daniel >> > > Again, good luck to you too, I hope your few pizzas will taste very good. > Peter > > |
From: Peter G. <pet...@gm...> - 2009-08-09 15:50:34
|
Hi On Sat, Aug 8, 2009 at 5:25 PM, Daniel Rosenstark < dr....@co...> wrote: > Hello all: > > About a year ago I started with JSynth and then ended up giving up and > creating my product as a standalone Java app ( > www.confusionists.com/handsonic). Now I've given up on hardware entirely, > so > I'm out of the JSynth game completely. Which is not really relevant :) > (BTW, > the product receives tons of downloads and I've even made enough to buy a > few pizzas in the last year.) Good luck and 'bon apetit' ;-) Regarding the Java question, I just wanted to plug Netbeans[snip] I see the Netbeans (6.0.1) GUI builder is using private void initComponents() { ... } to initialize forms. That's probably not a good idea, to start using the Netbeans way of building a GUI for a JSynthLib driver. Also, I couldn't find the Widgets provided by JSynthLib, only DKnob seemed available, to import in the 'palette'<http://wiki.netbeans.org/FaqFormUsingCustomComponent>. Some tools for building the GUI in an IDE would be handy imho. For now, I'm just using Gimp <http://www.gimp.org> and it's layers to sketch a lay-out <http://spd-11.wikispaces.com/file/view/PatchEditorGUI-3.png> for my Roland SPD-11 driver. A .zip containing .png pics of the components made available by JSynthLib would be easy to get started quick (using photoshop or gimp). I don't know if I should start a JSynthLib topic on java-forums<http://www.java-forums.org/>or sun-java-forums <http://forums.sun.com/> or ask my questions here, actually, after finishing my driver project, I can imagine I wouldn't go looking again for answers to questions posted on this list. But Java lovers (or how should I call them) on a java forum might do some research for newbies simply out of interest for Java code. > > Best of luck, > Daniel > Again, good luck to you too, I hope your few pizzas will taste very good. Peter |
From: Daniel R. <dr....@co...> - 2009-08-08 17:48:05
|
Hello all: About a year ago I started with JSynth and then ended up giving up and creating my product as a standalone Java app ( www.confusionists.com/handsonic). Now I've given up on hardware entirely, so I'm out of the JSynth game completely. Which is not really relevant :) (BTW, the product receives tons of downloads and I've even made enough to buy a few pizzas in the last year.) Regarding the Java question, I just wanted to plug Netbeans (I have no connection with Sun): Eclipse is wonderful and mature for Java, but Netbeans is perhaps even nicer. I also use it for RoR and PHP (basically everything that is not .Net). It might be nice for Python, too. The instructions for java remain the same as for Eclipse (below). Best of luck, Daniel On Sat, Aug 8, 2009 at 4:11 PM, Peter Geirnaert wrote: > On Fri, Aug 7, 2009 at 12:18 PM, Christopher Arndt wrote: > > > Hi Peter, hi all, > > > > first of all, many thanks for taking the time to look at my code and > > answering. Given the quietness of this list over the past months I > > wasn't sure whether to expect any answer at all! > > > JSynthLib is still alive :) It doesn't make much noise so today I created a > Facebook group :D > http://www.facebook.com/group.php?gid=232655115011 I hope that's legal ... > > > > Peter Geirnaert schrieb: > > > I've been trying to keep my focus so i could review your code, but > > > unfortunately got too often distracted. > > > What I can say now is your style looks very clean > > > > Thx. I admit that I am a little bit of a coding style fanatic. I do a > > lot of programming in Python where a clean coding style is considered an > > essential part of the culture. > > In JSynthLib's culture, it's an essential part too, and now your code is a > great example. > Well, that's what I think, but I'm just a newbie trying to get a grip on > programming and contributing code to an open-source project, so I might > overlook any mistakes you made. > > > > Btw, this is my first bigger piece of > > Java code except some fumbling around with RoboCode. > > Are you using Eclipse (or another IDE) or do you write your code in a > text-editor ? > I'm asking this because I also don't have any experience writing Java > source, and learning how to use Eclipse doesn't go very easy for me. It > makes looking up examples from the other drivers easier and the Javadoc is > helpful etc. I'm just not sure about building the GUI part with Eclipse so > I > installed Netbeans too. For writing website source, I prefer a text-editor. > > > > > [snip] > > > > > PS: What do you think about the wiki <http://jsynthlib.wikispaces.com> > > > I've been working on lately ? > > > > I had a look at it, but my first impression was, that there isn't that > > much more information than in the JSynthLib programming guide. I may be > > totally mistaken, I just didn't look at it very long. I was able to > > learn what I needed to know for patching together the Single Driver from > > the programming guide and looking at the source code of the other > > drivers and the API docs. But when I start writing the Bank driver and > > eventually a Patch Editor, I'll probably need more documentation and > > I'll surely look at your wiki again. > > > > One thing that got me a bit puzzled at first is: what are the different > > make targets and which ones do you use for the different system (Win, OS > > X, Unix) and how do you run your development copy of JSynthLib? The > > programming manual mentioned running JSynthLib with a "2" argument to > > enable debugging, but that didn't seem to work for me. > > I read this in the programmer's guide: > > Important: Once you've extracted the .jar file and made changes to the > resultant files, you must launch JSynthLib using; > > # On Windows use semicolon (;) instead of colon (:). > java -classpath '.:groovy.jar' JSynthLib -D 3 > > instead of java -jar JSynthLib.jar. Otherwise you just run the old .jar > file > and none of your alterations get used. The command line option '-D 3' gives > you various debug messages from ErrorMsg class. The messages help you. > > > > > I think it would > > be great to have a quick start guide for developers on every of the > > three major platforms, that just gives the exact steps to compile and > > run a SVN checkout. > > That's the reason why I started that wiki, so you can describe the exact > steps > that are working to compile on your platform. That way , the information is > immediately there for newcomers and nobody has to wait for the developers > to > update the programmer's guide. > Just start a new page and if it's finished, you can also send it to the > SourceForge project for inclusion in the Programmer's Guide. > > > > > PPS: Codereview looks like a great tool, and how did you create the > > > issue on sourceforge ? > > > I'd like to add links to information about these subjects on my wiki > too. > > > > You just need a sourceforge account (which I already had) and then go to > > "Tracker" on the JSynthLib project page and then go to "Patches" and > > click on "Add new", add a summary and description and upload your diff. > > > > For the Codereview tool, you need a Google account, and then you can > > upload your diffs in different ways. I used the provided "upload.py" > > Python script, which you run from your JSynthLib SVN working dir. It > > will create a diff of your changes and upload them to codereview, > > automatically selecting the right repository. You can then add a > > description and then use the "Publish+Mail Comments" function to send a > > mail requesting for code review, like I did to the mailing list. > > Thanks, I used this description on the > wiki<http://jsynthlib.wikispaces.com/contribute>;-) > > Cheers! > Peter > > ------------------------------------------------------------------------------ > Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day > trial. Simplify your report design, integration and deployment - and focus > on > what you do best, core application coding. Discover what's new with > Crystal Reports now. http://p.sf.net/sfu/bobj-july > _______________________________________________ > Jsynthlib-devel mailing list > Jsy...@li... > https://lists.sourceforge.net/lists/listinfo/jsynthlib-devel > |
From: Peter G. <pet...@gm...> - 2009-08-08 14:12:12
|
On Fri, Aug 7, 2009 at 12:18 PM, Christopher Arndt <chr...@we...>wrote: > Hi Peter, hi all, > > first of all, many thanks for taking the time to look at my code and > answering. Given the quietness of this list over the past months I > wasn't sure whether to expect any answer at all! > JSynthLib is still alive :) It doesn't make much noise so today I created a Facebook group :D http://www.facebook.com/group.php?gid=232655115011 I hope that's legal ... > Peter Geirnaert schrieb: > > I've been trying to keep my focus so i could review your code, but > > unfortunately got too often distracted. > > What I can say now is your style looks very clean > > Thx. I admit that I am a little bit of a coding style fanatic. I do a > lot of programming in Python where a clean coding style is considered an > essential part of the culture. In JSynthLib's culture, it's an essential part too, and now your code is a great example. Well, that's what I think, but I'm just a newbie trying to get a grip on programming and contributing code to an open-source project, so I might overlook any mistakes you made. > Btw, this is my first bigger piece of > Java code except some fumbling around with RoboCode. Are you using Eclipse (or another IDE) or do you write your code in a text-editor ? I'm asking this because I also don't have any experience writing Java source, and learning how to use Eclipse doesn't go very easy for me. It makes looking up examples from the other drivers easier and the Javadoc is helpful etc. I'm just not sure about building the GUI part with Eclipse so I installed Netbeans too. For writing website source, I prefer a text-editor. > [snip] > > > PS: What do you think about the wiki <http://jsynthlib.wikispaces.com> > > I've been working on lately ? > > I had a look at it, but my first impression was, that there isn't that > much more information than in the JSynthLib programming guide. I may be > totally mistaken, I just didn't look at it very long. I was able to > learn what I needed to know for patching together the Single Driver from > the programming guide and looking at the source code of the other > drivers and the API docs. But when I start writing the Bank driver and > eventually a Patch Editor, I'll probably need more documentation and > I'll surely look at your wiki again. > > One thing that got me a bit puzzled at first is: what are the different > make targets and which ones do you use for the different system (Win, OS > X, Unix) and how do you run your development copy of JSynthLib? The > programming manual mentioned running JSynthLib with a "2" argument to > enable debugging, but that didn't seem to work for me. I read this in the programmer's guide: Important: Once you've extracted the .jar file and made changes to the resultant files, you must launch JSynthLib using; # On Windows use semicolon (;) instead of colon (:). java -classpath '.:groovy.jar' JSynthLib -D 3 instead of java -jar JSynthLib.jar. Otherwise you just run the old .jar file and none of your alterations get used. The command line option '-D 3' gives you various debug messages from ErrorMsg class. The messages help you. > I think it would > be great to have a quick start guide for developers on every of the > three major platforms, that just gives the exact steps to compile and > run a SVN checkout. That's the reason why I started that wiki, so you can describe the exact steps that are working to compile on your platform. That way , the information is immediately there for newcomers and nobody has to wait for the developers to update the programmer's guide. Just start a new page and if it's finished, you can also send it to the SourceForge project for inclusion in the Programmer's Guide. > > PPS: Codereview looks like a great tool, and how did you create the > > issue on sourceforge ? > > I'd like to add links to information about these subjects on my wiki too. > > You just need a sourceforge account (which I already had) and then go to > "Tracker" on the JSynthLib project page and then go to "Patches" and > click on "Add new", add a summary and description and upload your diff. > > For the Codereview tool, you need a Google account, and then you can > upload your diffs in different ways. I used the provided "upload.py" > Python script, which you run from your JSynthLib SVN working dir. It > will create a diff of your changes and upload them to codereview, > automatically selecting the right repository. You can then add a > description and then use the "Publish+Mail Comments" function to send a > mail requesting for code review, like I did to the mailing list. Thanks, I used this description on the wiki<http://jsynthlib.wikispaces.com/contribute>;-) Cheers! Peter |
From: Christopher A. <chr...@we...> - 2009-08-07 12:44:04
|
Hi Peter, hi all, first of all, many thanks for taking the time to look at my code and answering. Given the quietness of this list over the past months I wasn't sure whether to expect any answer at all! Peter Geirnaert schrieb: > I've been trying to keep my focus so i could review your code, but > unfortunately got too often distracted. > What I can say now is your style looks very clean Thx. I admit that I am a little bit of a coding style fanatic. I do a lot of programming in Python where a clean coding style is considered an essential part of the culture. Btw, this is my first bigger piece of Java code except some fumbling around with RoboCode. > and I think the "this." can be left away in your singleDriver > <http://codereview.appspot.com/105044/diff/1/5?context=25&column_width=80> > at lines 48 to 59 and 75. You are probably right. I created most of my code by copying from other drivers, most notably the Yamaha TG100 and TG33 and the Kawai K4 drivers, so I just copied the way it was done there. I'll check out if it still works when I remove those occurrences of "this.". > PS: What do you think about the wiki <http://jsynthlib.wikispaces.com> > I've been working on lately ? I had a look at it, but my first impression was, that there isn't that much more information than in the JSynthLib programming guide. I may be totally mistaken, I just didn't look at it very long. I was able to learn what I needed to know for patching together the Single Driver from the programming guide and looking at the source code of the other drivers and the API docs. But when I start writing the Bank driver and eventually a Patch Editor, I'll probably need more documentation and I'll surely look at your wiki again. One thing that got me a bit puzzled at first is: what are the different make targets and which ones do you use for the different system (Win, OS X, Unix) and how do you run your development copy of JSynthLib? The programming manual mentioned running JSynthLib with a "2" argument to enable debugging, but that didn't seem to work for me. I think it would be great to have a quick start guide for developers on every of the three major platforms, that just gives the exact steps to compile and run a SVN checkout. > PPS: Codereview looks like a great tool, and how did you create the > issue on sourceforge ? > I'd like to add links to information about these subjects on my wiki too. You just need a sourceforge account (which I already had) and then go to "Tracker" on the JSynthLib project page and then go to "Patches" and click on "Add new", add a summary and description and upload your diff. For the Codereview tool, you need a Google account, and then you can upload your diffs in different ways. I used the provided "upload.py" Python script, which you run from your JSynthLib SVN working dir. It will create a diff of your changes and upload them to codereview, automatically selecting the right repository. You can then add a description and then use the "Publish+Mail Comments" function to send a mail requesting for code review, like I did to the mailing list. Chris |
From: <chr...@we...> - 2009-08-06 06:02:53
|
Hello all, I have started to write a synth driver for the Yamaha SY85 workstation. Please review the code. I also created an issue on the sourceforge patch tracker with the same patch. Chris http://codereview.appspot.com/105044 |
From: Peter G. <pet...@gm...> - 2009-01-28 12:36:35
|
Hi dear developers, I'm trying to write a wiki <http://jsynthlib.wikispaces.com> for non-programmers about what you need to put where when writing a jsynthlib driver. I think after that I'll also set-up a forum at freeforums.org, but of course I would like to hear your opinion about it too. Also, if people have interesting files for me to work with while writing the wiki, or if people want to join the effort, all are much appreciated. I just can't imagine I'm the only JSynthLib user with newbie questions and I don't think a developers list is the place to go with that sort of questions. Cheers, and thanks for the work that already has been done. Peter |
From: Michael H. <pat...@ya...> - 2009-01-20 03:52:05
|
Well I appreciate the help. Some of the problems I am having have nothing to do with JSynthLib itself so I appreciate everyones patience. Progress report... Development Platform - Windows XP I removed all JRE and JDK installs and then reinstalled JDK then made sure the path included "F:\Sun\SDK\bin;F:\Sun\SDK\jdk\bin" . I used SUN's example HelloWorld java to prove that javac works and then executed it using java. F:\workspace\HelloWorld>java HelloWorldApp Hello World! I then removed the Eclipse workspace completely. Then I downloaded JSynthLib in tar format and unzipped into the JSynthLib directory. I opened Eclipse and created a new project "JSynthLib". Eclipse detected the folder and built a new project hierarchy. I then was able to "Run As" DeviceListWriter. Although the resulting devicesfile was empty of any device definitions it was "touched". I then copied my KorgHawk800 java files over into the project and reran DeviceListWriter with the following results. #Generated devicesfile #Mon Jan 19 22:15:15 EST 2009 inquriyID.KorgHawk800=F07E..0602423500..00..00..00F7 deviceClass.KorgHawk800=synthdrivers.KorgHawk800.KorgHawk800Device manufacturer.KorgHawk800=Korg deviceName.KorgHawk800=Korg HAWK-800 Driver My first question is - why don't I see all of the other drivers in this devices file? I then ran JSynthLib from within Eclipse. It does run but it opens with "Unable to load user preferences. Defaults loaded instead". Is this to be expected? If not, is there a command line I should be using in Eclipse to avoid this problem? After several initial attempts at running JSynthLib where the Korg Hawk 800 device did not appear in the available devices it finally did appear and I was able to select it. What would be a reason or reasons why it would not appear the first few times around? (I know that's terribly vague but perhaps someone might have some good known reasons). Next, the JSynthLib programmers documentation specifies the following command line should work: F:\workspace\JSynthLib> java -classpath '.;groovy.jar' JSynthLib -D 3 But I only get the following: Exception in thread "main" java.lang.NoClassDefFoundError: JSynthLib Caused by: java.lang.ClassNotFoundException: JSynthLib at java.net.URLClassLoader$1.run(URLClassLoader.java:200) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(URLClassLoader.java:188) at java.lang.ClassLoader.loadClass(ClassLoader.java:307) at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301) at java.lang.ClassLoader.loadClass(ClassLoader.java:252) at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:320) Could not find the main class: JSynthLib. Program will exit. If I attempt to run JSynthLib with no command line parameters from within the JSynthLib home directory with the following result: F:\workspace\JSynthLib> java JSynthLib -D 3 Exception in thread "main" java.lang.NoClassDefFoundError: core/ErrorMsg at core.PatchEdit.<init>(PatchEdit.java:34) at JSynthLib.main(JSynthLib.java:33) Caused by: java.lang.ClassNotFoundException: core.ErrorMsg at java.net.URLClassLoader$1.run(URLClassLoader.java:200) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(URLClassLoader.java:188) at java.lang.ClassLoader.loadClass(ClassLoader.java:307) at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301) at java.lang.ClassLoader.loadClass(ClassLoader.java:252) at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:320) ... 2 more I confirmed that both the java and class files are in the JSynthLib root directory as follows: 01/19/2009 09:54 PM 1,531 JSynthLib.class 03/01/2005 10:53 PM 2,411 JSynthLib.java So why can't I get that to run? I guess the good news is that I have atleast progressed to the point where I can actually develop a device driver for my specialised hardware. A few more painful questions to round things out. i) I don't see any built in support in Eclipse for SVN. Am I just too newbie to know better? ii) If I write the device driver and send the java files to a developer can they integrate them into the JSynthLib project for me? Should I make my emails to this list shorter or longer? OK, don't answer that. Mike. |
From: Rib R. <ri...@us...> - 2009-01-19 21:27:56
|
On Mon, Jan 19, 2009 at 12:28 PM, Michael Hawkins <pat...@ya...> wrote: > Excuse me for asking this silly question but perhaps someone can help me > with this. I am after all a newbie. > > I am running Windows (all my other machines are LINUX so please excuse me > for that bad start) I installed eclipse. I installed Java SDK. The windows > path includes F:\Sun\SDK\jdk\bin. > > I do not have a classpath set. > > I checked out JsynthLib and it is now in F:\workspace\JsynthLib. > > When I go to the JsynthLib directory, I can execute: > > F:\workspace\JSynthLib>javac synthdrivers\KorgHawk800\KorgHawk800Device.java > > F:\workspace\JSynthLib> > > Although I get no output, it does not produce any error. Should there be > success message? I think that's fine. > Then, I go to execute: > > F:\workspace\JSynthLib>java core\DeviceListWriter.java I think you should type [java core.DeviceListWriter] > Exception in thread "main" java.lang.NoClassDefFoundError: > core\DeviceListWriter > /java > Caused by: java.lang.ClassNotFoundException: core\DeviceListWriter.java > at java.net.URLClassLoader$1.run(Unknown Source) > at java.security.AccessController.doPrivileged(Native Method) > at java.net.URLClassLoader.findClass(Unknown Source) > at java.lang.ClassLoader.loadClass(Unknown Source) > at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source) > at java.lang.ClassLoader.loadClass(Unknown Source) > at java.lang.ClassLoader.loadClassInternal(Unknown Source) > Could not find the main class: core\DeviceListWriter.java. Program will > exit. > > F:\workspace\JSynthLib> > > I am guessing that this is a classpath or some other simple error. Can > someone suggest what I am doing wrong or should be doing? > > Many thanks, > > Mike. > > |
From: Michael H. <pat...@ya...> - 2009-01-19 20:28:12
|
Excuse me for asking this silly question but perhaps someone can help me with this. I am after all a newbie. I am running Windows (all my other machines are LINUX so please excuse me for that bad start) I installed eclipse. I installed Java SDK. The windows path includes F:\Sun\SDK\jdk\bin. I do not have a classpath set. I checked out JsynthLib and it is now in F:\workspace\JsynthLib. When I go to the JsynthLib directory, I can execute: F:\workspace\JSynthLib>javac synthdrivers\KorgHawk800\KorgHawk800Device.java F:\workspace\JSynthLib> Although I get no output, it does not produce any error. Should there be success message? Then, I go to execute: F:\workspace\JSynthLib>java core\DeviceListWriter.java Exception in thread "main" java.lang.NoClassDefFoundError: core\DeviceListWriter /java Caused by: java.lang.ClassNotFoundException: core\DeviceListWriter.java at java.net.URLClassLoader$1.run(Unknown Source) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(Unknown Source) at java.lang.ClassLoader.loadClass(Unknown Source) at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source) at java.lang.ClassLoader.loadClass(Unknown Source) at java.lang.ClassLoader.loadClassInternal(Unknown Source) Could not find the main class: core\DeviceListWriter.java. Program will exit. F:\workspace\JSynthLib> I am guessing that this is a classpath or some other simple error. Can someone suggest what I am doing wrong or should be doing? Many thanks, Mike. |
From: Michael H. <pat...@ya...> - 2009-01-19 17:07:50
|
So it would appear as though it has been decided to convert to SVN. Let's not talk about this from a technical standpoint for a moment. The developer/contributor documentation on the JsynthLib web site specifies how to check out the project using CVS. Has anyone volunteered to write up a brief document that helps musician types and other less knowledgeable developers how to use SVN instead of CVS? Has anyone volunteered to make some recommendations on which tools or front end development UI's are most useful with the new SVN model for those JsynthLib newbies out there? Because I think that this project needs more than just condescending help from Java/SVN/Sourceforge gurus. After all, JsynthLib was intended for musicians, sound engineers and they are not always the most technical savvy out there. And I more than willing to admit that I also need a bit of help in that area. I am the middle of doing a driver and had used CVS to check out the project using Eclipse but now I am confused as to whether I'll be able to check my changes back in or not. Mike |
From: Nicolas B. <nic...@la...> - 2009-01-19 15:12:55
|
Hi, first I'd like to thanks ribdb for the inclusion of the patches I sent and the switch to SVN. Two short questions : Has anyone access to the www.jsynthlib.org web page ? It would be nice to update the binary files and the supported synths. Could anyone update the download section of the sourceforge project in order to provide an up-to-date package ? Nicolas |
From: Joachim <li...@sd...> - 2009-01-18 19:52:18
|
Hi, > I've seen the file section on the yahoo groups page needs some spam > cleaning, I could do that e.g. ... the yahoo group is dead and obsolete. Btw. I think it's funny that people new to this project start talking about taking over before they have even proven themselves. Cheers Joachim |
From: Rib R. <ri...@us...> - 2009-01-18 18:33:35
|
I migrated to svn last night. You can check out the code by doing svn co https://jsynthlib.svn.sourceforge.net/svnroot/jsynthlib/trunk/JSynthLib JSynthLib I also added the JSynthLib repository to codereview.appspot.com so people can now use that. I find it much easier to deal with than plain patch files. You just create an issue at the website and upload your patch, then send the url to this list. There's also a command line tool you can download that will create and upload the patch for you. |
From: William R. Z. <wrz...@po...> - 2009-01-16 03:25:06
|
I'm in the area too, though I'm hiding so noone makes me do any work. =^p On the migration to SVN: Please do! I believe SVN is the recommended repo at SourceForge anyway. If you're running Windows, I highly recommend TortoiseSVN (as does SourceForge) over the command-line client. Tortoise has visual diff built in, but WinMerge is awesome. http://tortoisesvn.tigris.org/ http://winmerge.org/ On code reviews: That's overkill for a project this small, and given how often this project stagnates, I believe *mandating* code reviews would be a bad idea. Nonetheless, voluntary reviews would be a good experience. -Bill Zwicky |
From: Joe E. <jo...@em...> - 2009-01-15 23:43:15
|
Rib Rdb wrote: > I'd recommend migrating to svn so we could use > http://codereview.appspot.com One advantage of SVN is that it supports *moving* of files to different directories. Long ago, in a galaxy far away, we had talked about refactoring all of the core JSL code into a more-sensible package structure. The downside to this was going to be that, when we moved the files, CVS would treat this like the file getting deleted from its old location and a completely new file being created at some new location. So, there's a break in the "lineage". Granted, I'm sure it's easy to just roll back to a previous tag point... but it would just make it harder to view the history of revisions to the file. Now, this is kind of a moot point because, back then, I did a /lot/ of work on refactoring. I moved a lot of the files around, heavily rebuilt the way GUI events are delivered to the synth editors, overhauled the MIDI interface. Now, I never committed it, because it still had a couple of compile bugs that I wasn't sure how to fix. But the point is: all of those changes were done with Jetbrains IDEA when it understood the source management to be through CVS, not SVN. So, I'm sure it hasn't bothered to remember that all of these files have moved. So, if we switch to SVN, and then I commit all of this stuff, then SVN (like CVS) will probably just see it as a bunch of file deletions and then new file creations. - Joe |
From: denis q. <dqu...@fr...> - 2009-01-15 17:25:31
|
I don't know if my opinion counts but we at work have migrate to SVN too. It takes a little time to adapt usage from CVS but it works well finally, especially with folders manipulation. It's important to have conventions (or follow usual conventions) because it's a bit "generic" with not much concepts. Actually I'm wondering if there is something like SVN but easier to use with merge or version diff for example. -- denis > I am also alive. Before adding you as a developer I'd like to code > review at least your first commit. Can you send a patch to the list? > > On a related note, if this project because active again I think it > would be a good idea to make code reviews standard for all commits. > I've gotten used to using them at work, and in general having a second > set of eyes on each change helps increase code quality. > I'd recommend migrating to svn so we could use http://codereview.appspot.com > What do other people think of this idea? > > Thu, Jan 15, 2009 at 3:57 AM, Nicolas Boulicault > <nic...@la...> wrote: > >> Hi Joe, >> thanks for your reply. >> Indeed I've been working with the current cvs version, and I don't think >> my code breaks anything. >> It would be fine for me if you added me to the developers. >> I'm already an admin on a few sourceforge projects, I wouldn't mind >> becoming one on JSynthLib too. >> Anyway I'm glad to see this list (and project ?) alive again ! >> >> Regards. >> >> Nicolas >> >> PS : my sourceforge id is nboul >> PS2 : maybe it would be a good idea to cleanup the admins and developers >> lists (we could ask all the current members if they wish to remain members) >> >> Joe Emenaker wrote: >> >>> Nicolas Boulicault wrote: >>> >>>> Hi again, >>>> I wrote a post few days ago about Novation xioSynth support but got >>>> no answer. >>>> Would any admin / developer have a look at that and accept / refuse it ? >>>> >>>> >>> Uh... that would take... uh... "work". :) >>> >>> Have you compiled it against the current CVS code? Does it break >>> anything else? If it seems to be okay to you, then I can make you a >>> developer and you can commit it yourself. >>> >>> - Joe >>> >> >> ------------------------------------------------------------------------------ >> This SF.net email is sponsored by: >> SourcForge Community >> SourceForge wants to tell your story. >> http://p.sf.net/sfu/sf-spreadtheword >> _______________________________________________ >> Jsynthlib-devel mailing list >> Jsy...@li... >> https://lists.sourceforge.net/lists/listinfo/jsynthlib-devel >> > > ------------------------------------------------------------------------------ > This SF.net email is sponsored by: > SourcForge Community > SourceForge wants to tell your story. > http://p.sf.net/sfu/sf-spreadtheword > _______________________________________________ > Jsynthlib-devel mailing list > Jsy...@li... > https://lists.sourceforge.net/lists/listinfo/jsynthlib-devel > > |
From: Nicolas B. <nic...@la...> - 2009-01-15 17:10:16
|
Hi, I attached a new version of xiosynth driver and modifications. As stated in my first post, I'd like someone who knows the core better than me to check the modification in BankEditorFrame.java. diff and tar were started from JSynthLib directory. I don't know about the code reviews. (I'll check it since it sounds interesting) but I'd fully agree with a migration to svn. Nicolas Rib Rdb wrote: > I am also alive. Before adding you as a developer I'd like to code > review at least your first commit. Can you send a patch to the list? > > On a related note, if this project because active again I think it > would be a good idea to make code reviews standard for all commits. > I've gotten used to using them at work, and in general having a second > set of eyes on each change helps increase code quality. > I'd recommend migrating to svn so we could use > http://codereview.appspot.com > What do other people think of this idea? > > On Thu, Jan 15, 2009 at 3:57 AM, Nicolas Boulicault > <nic...@la... > <mailto:nic...@la...>> wrote: > > Hi Joe, > thanks for your reply. > Indeed I've been working with the current cvs version, and I don't > think > my code breaks anything. > It would be fine for me if you added me to the developers. > I'm already an admin on a few sourceforge projects, I wouldn't mind > becoming one on JSynthLib too. > Anyway I'm glad to see this list (and project ?) alive again ! > > Regards. > > Nicolas > > PS : my sourceforge id is nboul > PS2 : maybe it would be a good idea to cleanup the admins and > developers > lists (we could ask all the current members if they wish to remain > members) > > Joe Emenaker wrote: > > Nicolas Boulicault wrote: > >> Hi again, > >> I wrote a post few days ago about Novation xioSynth support but got > >> no answer. > >> Would any admin / developer have a look at that and accept / > refuse it ? > >> > > Uh... that would take... uh... "work". :) > > > > Have you compiled it against the current CVS code? Does it break > > anything else? If it seems to be okay to you, then I can make you a > > developer and you can commit it yourself. > > > > - Joe > > > > ------------------------------------------------------------------------------ > This SF.net email is sponsored by: > SourcForge Community > SourceForge wants to tell your story. > http://p.sf.net/sfu/sf-spreadtheword > _______________________________________________ > Jsynthlib-devel mailing list > Jsy...@li... > <mailto:Jsy...@li...> > https://lists.sourceforge.net/lists/listinfo/jsynthlib-devel > > |