 			may_flip = true;
 			Serial.write('K');
 		}
+		break;
+	case MODE_PWM:
+		if (byte_i<3) {
+			pwm_lengths[byte_i] = in;
+		} else {
+			TCCR1B = in;
+			mode = MODE_NOOP;
+		}
+		byte_i++;
 		break;
 	}
 }

*/

#include <SPI.h>
#include <TimerOne.h>

// Helper functions. NB! ARRAY_SIZE doesn't check if it's an array.
#define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0]))

	plane[byte_i] |= bit_i;
}

ISR(TIMER1_COMPA_vect)
{
	static int cur_pin = pin_col[0];
	
	// Set run length
	OCR1A = pwm_lengths[pwm_i];
	
	// Main screen turn off.
	digitalWrite(cur_pin, HIGH);
