Arduino Mega 2560 and HacroCam

Also I've tried running the provided Processing sketch from Hacromatic (HacroCamDemo.pde) but I keep getting the error code below:

java.lang.NullPointerException
	at processing.serial.Serial.write(Unknown Source)
	at processing.serial.Serial.write(Unknown Source)
	at HacroCamDemo$HacroCam.<init>(HacroCamDemo.java:43)
	at HacroCamDemo.setup(HacroCamDemo.java:592)
	at processing.core.PApplet.handleDraw(PApplet.java:2280)
	at processing.core.PGraphicsJava2D.requestDraw(PGraphicsJava2D.java:243)
	at processing.core.PApplet.run(PApplet.java:2176)
	at java.lang.Thread.run(Thread.java:662)
java.lang.NullPointerException
	at processing.serial.Serial.write(Unknown Source)
	at processing.serial.Serial.write(Unknown Source)
	at HacroCamDemo$HacroCam.<init>(HacroCamDemo.java:44)
	at HacroCamDemo.setup(HacroCamDemo.java:592)
	at processing.core.PApplet.handleDraw(PApplet.java:2280)
	at processing.core.PGraphicsJava2D.requestDraw(PGraphicsJava2D.java:243)
	at processing.core.PApplet.run(PApplet.java:2176)
	at java.lang.Thread.run(Thread.java:662)
java.lang.NullPointerException
	at processing.serial.Serial.write(Unknown Source)
	at processing.serial.Serial.write(Unknown Source)
	at HacroCamDemo$HacroCam.sendCmd(HacroCamDemo.java:508)
	at HacroCamDemo$HacroCam.begin(HacroCamDemo.java:59)
	at HacroCamDemo.setup(HacroCamDemo.java:594)
	at processing.core.PApplet.handleDraw(PApplet.java:2280)
	at processing.core.PGraphicsJava2D.requestDraw(PGraphicsJava2D.java:243)
	at processing.core.PApplet.run(PApplet.java:2176)
	at java.lang.Thread.run(Thread.java:662)
java.lang.NullPointerException
	at processing.serial.Serial.write(Unknown Source)
	at HacroCamDemo$HacroCam.sendCmd(HacroCamDemo.java:509)
	at HacroCamDemo$HacroCam.begin(HacroCamDemo.java:59)
	at HacroCamDemo.setup(HacroCamDemo.java:594)
	at processing.core.PApplet.handleDraw(PApplet.java:2280)
	at processing.core.PGraphicsJava2D.requestDraw(PGraphicsJava2D.java:243)
	at processing.core.PApplet.run(PApplet.java:2176)
	at java.lang.Thread.run(Thread.java:662)

The code that's highlighted is m_serial.write((byte)checksum) in the function below:

private void sendCmd(String str)
    {
        int checksum = crc(str.getBytes());
        m_serial.write(str);
        m_serial.write((byte)checksum);
        m_serial.write("\r\n");
        delay(150);
    }

Does anyone know what could be causing that error? My guess is that it's a result of a change between Processing v2.0a6 and 2.0.2 since it worked with the previous version according to hacromatic.com.