Storm 2.0 and Tiger

Back at the Mac OS X 10.2 Jaguar launch event here I won a copy of Storm Music Studio. At the time the copy I won was version 1.5, but I got a free upgrade to 2.0 (thanks Arturia!). I’m not particularly musical so I don’t use it all that often, but I do enjoy having a play now and then.

Recently I went to fire it up to have a bit of a play but after it launched it displayed a nasty dialog box informing me that the sound device was in use: not much good for a music application. No amount of clicking on the settings to choose the sound device would help, so what was I to do?

As this was the first time I’d launched Storm under Mac OS X 10.4 Tiger, and knowing that Storm is written in Java I thought there might be a chance I could fix this problem. It seemed that some change in Apple’s JVM in Mac OS X had caused Storm to get somewhat confused about my audio devices. There was no update available from Arturia that might fix the issue, or any documentation that I could find on it. Clearly I was in this alone.

A few months ago around the release of Storm 3, I had downloaded the demo to see what was different. I never actually got around to installing the demo, but there it was sitting in my downloads folder just waiting to be installed. After extracting and installing the Storm 3 demo, I checked that it did indeed work with Tiger. There were no problems to be seen. Looking at the about box of the two applications I noticed that Storm 3 was using Java 1.4.2, while Storm 2 was using Java 1.3.1. The obvious thing to do was to try and get Storm 2.0 to use Java 1.4.2 and see what happened.

To do this, I cracked open Storm 2’s application (Show Package Contents from the contextual menu) and edited its Info.plist file to add the following section:

<key>Java</key>
<dict>
    <key>ClassPath</key>
    <array>
        <string>$JAVAROOT/classes.jar</string>
        <string>$JAVAROOT/look.jar</string>
        <string>$JAVAROOT/shlook.jar</string>
    </array>
    <key>JVMVersion</key>
    <string>1.4+</string>
    <key>MainClass</key>
    <string>storm.application.Application</string>
</dict>

Success! After this quick modification Storm 2 launched without complaint and was ready to go making music as always.

As an aside, there’s something interesting going on here though. I went to revert Storm 2.0 back to it’s broken state so I could get a screenshot of the error message to place above but even after removing the Java section, Storm continued to work correctly. Weird, but at least I’ve got it back now.

Comments are closed.