          (log/debug "Booting SuperCollider internal server (scsynth)...")
          (.start sc-thread)
          (dosync (ref-set server-thread* sc-thread))
-         (connect-internal)
+         (connect)
          :booting))))
 
 (defn- sc-log 

      (when (recv "status.reply" REPLY-TIMEOUT)
        (dosync (ref-set status* :booted))
        (notify true) ; turn on notifications now that we can communicate
        (run-boot-handlers))
      (recur (inc cnt))))
   (register-notification-handlers))


  (if (not @running?*)
    (let [port (if (nil? port) (+ (rand-int 50000) 2000) port)
          cmd (into-array String (concat [(SC-PATHS (@config* :os)) "-u" (str port)] (SC-ARGS (@config* :os))))
          sc-thread (Thread. #(external-booter cmd))]
      (.setDaemon sc-thread true)
      (log/debug "Booting SuperCollider server (scsynth)...")
      (.start sc-thread)
      (dosync (ref-set server-thread* sc-thread))
      (.run (Thread. #(connect-thread host port)))
      :booting))))

(defn boot
  "Boot either the internal or external audio server."
  ([] (boot (get @config* :server :internal) SERVER-HOST SERVER-PORT))
  ([which & [host port]]
     (cond 
       (= :internal which) (boot-internal)
