  * Initialize the OPL2 board and load the first line of the first order.
  */
 void initPlayer() {
-  opl2.begin();
-  opl2.setWaveFormSelect(true);
-  opl2.setPercussion(false);
-  speed = initialSpeed;
-
-  order = -1;
-  line = 0;
-  tick = 0;
-  nextOrder();
-  readLine();
+	opl2.begin();
+	opl2.setWaveFormSelect(true);
+	opl2.setPercussion(false);
+	speed = initialSpeed;
+
+	order = -1;
+	line = 0;
+	tick = 0;
+	nextOrder();
+	readLine();
 }
 
 


// Different note F-numbers stored in program memory.
const short noteFrequencies[12] PROGMEM = {
  0x16B, 0x181, 0x198, 0x1B0, 0x1CA, 0x1E5,
  0x202, 0x220, 0x241, 0x263, 0x287, 0x2AE
};



 * Read the next line in the pattern from the current file position.
 */
void readLine() {
	// Reset note data on each channel.
	for (byte i = 0; i < 9; i ++) {
		channelNote[i] = 0x0000;
	}

	// If the previous line was the last line of the pattern then we're done.
	if (endOfPattern) {
		return;
	}

	// If the next line number does not match our current line then it's empty
	// so there's nothing to do for us here.
	byte lineNumber = radFile.read();
	if ((lineNumber & 0x3F) != line) {
		radFile.seekSet(radFile.curPosition() - 1);
		return;
	}

	// Set end of pattern marker if this is the last line in the pattern.
	endOfPattern = lineNumber & 0x80;

	// Read note and effect data for each channel.
	bool isLastChannel = false;
	do {
		byte channelNumber = radFile.read();
		isLastChannel = channelNumber & 0x80;
		channelNumber = channelNumber & 0x0F;

		channelNote[channelNumber]  = radFile.read() << 8;
		channelNote[channelNumber] += radFile.read();
		if (channelNote[channelNumber] & 0x000F) {
			efftectParameter[channelNumber] = radFile.read();
		} else {
			efftectParameter[channelNumber] = 0x00;
		}
	} while(!isLastChannel);
}


