void log (int port,boolean in, byte []sysex,int length) {  jt.select(Integer.MAX_VALUE, Integer.MAX_VALUE); jt.setEditable(true); jt.replaceSelection("Port: " + port + (in ? " RECV " : " XMIT ") + length+ " bytes :\n" + hexDump(sysex,length) + "\n"); jt.setEditable(false);  }
void log (String s) {  jt.select(Integer.MAX_VALUE, Integer.MAX_VALUE); jt.setEditable(true); jt.replaceSelection(s); jt.setEditable(false); }
  void log (int port,boolean in, byte []sysex,int length)  {      // move the selection at the end of text      jt.select(Integer.MAX_VALUE, Integer.MAX_VALUE);	 jt.setEditable(true);      jt.replaceSelection("Port: " + port + (in ? " RECV " : " XMIT ")  			+ length+ " bytes :\n" 			+ hexDump(sysex,length) + "\n");	 jt.setEditable(false);  }