diff src/adplug/core/protrack.cxx @ 955:4709ce4e209e trunk

[svn] Run indent -ts4 -nut -bli0 -cdw on this messy lot. Upstream is not consistent with whitespace anyway, no loss there.
author chainsaw
date Sat, 14 Apr 2007 15:23:50 -0700
parents 87666f9bf6d0
children 75de016f8979
line wrap: on
line diff
--- a/src/adplug/core/protrack.cxx	Sat Apr 14 08:48:41 2007 -0700
+++ b/src/adplug/core/protrack.cxx	Sat Apr 14 15:23:50 2007 -0700
@@ -28,426 +28,508 @@
 #include "protrack.h"
 #include "debug.h"
 
-#define SPECIALARPLEN	256	// Standard length of special arpeggio lists
-#define JUMPMARKER	0x80	// Orderlist jump marker
+#define SPECIALARPLEN	256     // Standard length of special arpeggio lists
+#define JUMPMARKER	0x80        // Orderlist jump marker
 
 // SA2 compatible adlib note table
-const unsigned short CmodPlayer::sa2_notetable[12] =
-  {340,363,385,408,432,458,485,514,544,577,611,647};
+const unsigned short
+CmodPlayer::sa2_notetable[12] =
+  { 340, 363, 385, 408, 432, 458, 485, 514, 544, 577, 611, 647 };
 
 // SA2 compatible vibrato rate table
-const unsigned char CmodPlayer::vibratotab[32] =
-  {1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,16,15,14,13,12,11,10,9,8,7,6,5,4,3,2,1};
+const unsigned char
+CmodPlayer::vibratotab[32] =
+  { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 16, 15, 14, 13,
+12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1 };
 
 /*** public methods *************************************/
 
-CmodPlayer::CmodPlayer(Copl *newopl)
-  : CPlayer(newopl), inst(0), order(0), arplist(0), arpcmd(0), initspeed(6),
-    nop(0), activechan(0xffffffff), flags(Standard), curchip(opl->getchip()),
-    nrows(0), npats(0), nchans(0)
+CmodPlayer::CmodPlayer (Copl * newopl):CPlayer (newopl), inst (0), order (0), arplist (0), arpcmd (0), initspeed (6),
+nop (0), activechan (0xffffffff), flags (Standard), curchip (opl->getchip ()),
+nrows (0), npats (0), nchans (0)
 {
-  realloc_order(128);
-  realloc_patterns(64, 64, 9);
-  realloc_instruments(250);
-  init_notetable(sa2_notetable);
+  realloc_order (128);
+  realloc_patterns (64, 64, 9);
+  realloc_instruments (250);
+  init_notetable (sa2_notetable);
 }
 
-CmodPlayer::~CmodPlayer()
+CmodPlayer::~CmodPlayer ()
 {
-  dealloc();
+  dealloc ();
 }
 
-bool CmodPlayer::update()
+bool
+CmodPlayer::update ()
 {
-  unsigned char		pattbreak=0, donote, pattnr, chan, oplchan, info1,
+  unsigned char pattbreak = 0, donote, pattnr, chan, oplchan, info1,
     info2, info, pattern_delay;
-  unsigned short	track;
-  unsigned long		row;
+  unsigned short track;
+  unsigned long row;
 
-	if(!speed)		// song full stop
-		return !songend;
+  if (!speed)                   // song full stop
+    return !songend;
 
-	// effect handling (timer dependant)
-  for(chan = 0; chan < nchans; chan++) {
-    oplchan = set_opl_chip(chan);
+  // effect handling (timer dependant)
+  for (chan = 0; chan < nchans; chan++)
+  {
+    oplchan = set_opl_chip (chan);
 
-		if(arplist && arpcmd && inst[channel[chan].inst].arpstart)	// special arpeggio
-			if(channel[chan].arpspdcnt)
-				channel[chan].arpspdcnt--;
-			else
-				if(arpcmd[channel[chan].arppos] != 255) {
-					switch(arpcmd[channel[chan].arppos]) {
-					case 252: channel[chan].vol1 = arplist[channel[chan].arppos];	// set volume
-							if(channel[chan].vol1 > 63)	// ?????
-								channel[chan].vol1 = 63;
-							channel[chan].vol2 = channel[chan].vol1;
-							setvolume(chan);
-							break;
-					case 253: channel[chan].key = 0; setfreq(chan); break;	// release sustaining note
-					case 254: channel[chan].arppos = arplist[channel[chan].arppos]; break; // arpeggio loop
-					default: if(arpcmd[channel[chan].arppos]) {
-								if(arpcmd[channel[chan].arppos] / 10)
-	      opl->write(0xe3 + op_table[oplchan], arpcmd[channel[chan].arppos] / 10 - 1);
-								if(arpcmd[channel[chan].arppos] % 10)
-	      opl->write(0xe0 + op_table[oplchan], (arpcmd[channel[chan].arppos] % 10) - 1);
-								if(arpcmd[channel[chan].arppos] < 10)	// ?????
-	      opl->write(0xe0 + op_table[oplchan], arpcmd[channel[chan].arppos] - 1);
-							 }
-					}
-					if(arpcmd[channel[chan].arppos] != 252) {
-						if(arplist[channel[chan].arppos] <= 96)
-							setnote(chan,channel[chan].note + arplist[channel[chan].arppos]);
-						if(arplist[channel[chan].arppos] >= 100)
-							setnote(chan,arplist[channel[chan].arppos] - 100);
-					} else
-						setnote(chan,channel[chan].note);
-					setfreq(chan);
-					if(arpcmd[channel[chan].arppos] != 255)
-						channel[chan].arppos++;
-					channel[chan].arpspdcnt = inst[channel[chan].inst].arpspeed - 1;
-				}
+    if (arplist && arpcmd && inst[channel[chan].inst].arpstart) // special arpeggio
+      if (channel[chan].arpspdcnt)
+        channel[chan].arpspdcnt--;
+      else if (arpcmd[channel[chan].arppos] != 255)
+      {
+        switch (arpcmd[channel[chan].arppos])
+        {
+        case 252:
+          channel[chan].vol1 = arplist[channel[chan].arppos];   // set volume
+          if (channel[chan].vol1 > 63)  // ?????
+            channel[chan].vol1 = 63;
+          channel[chan].vol2 = channel[chan].vol1;
+          setvolume (chan);
+          break;
+        case 253:
+          channel[chan].key = 0;
+          setfreq (chan);
+          break;                // release sustaining note
+        case 254:
+          channel[chan].arppos = arplist[channel[chan].arppos];
+          break;                // arpeggio loop
+        default:
+          if (arpcmd[channel[chan].arppos])
+          {
+            if (arpcmd[channel[chan].arppos] / 10)
+              opl->write (0xe3 + op_table[oplchan],
+                          arpcmd[channel[chan].arppos] / 10 - 1);
+            if (arpcmd[channel[chan].arppos] % 10)
+              opl->write (0xe0 + op_table[oplchan],
+                          (arpcmd[channel[chan].arppos] % 10) - 1);
+            if (arpcmd[channel[chan].arppos] < 10)  // ?????
+              opl->write (0xe0 + op_table[oplchan],
+                          arpcmd[channel[chan].arppos] - 1);
+          }
+        }
+        if (arpcmd[channel[chan].arppos] != 252)
+        {
+          if (arplist[channel[chan].arppos] <= 96)
+            setnote (chan,
+                     channel[chan].note + arplist[channel[chan].arppos]);
+          if (arplist[channel[chan].arppos] >= 100)
+            setnote (chan, arplist[channel[chan].arppos] - 100);
+        }
+        else
+          setnote (chan, channel[chan].note);
+        setfreq (chan);
+        if (arpcmd[channel[chan].arppos] != 255)
+          channel[chan].arppos++;
+        channel[chan].arpspdcnt = inst[channel[chan].inst].arpspeed - 1;
+      }
 
-		info1 = channel[chan].info1;
-		info2 = channel[chan].info2;
-		if(flags & Decimal)
-			info = channel[chan].info1 * 10 + channel[chan].info2;
-		else
-			info = (channel[chan].info1 << 4) + channel[chan].info2;
-		switch(channel[chan].fx) {
-		case 0:	if(info) {									// arpeggio
-					if(channel[chan].trigger < 2)
-						channel[chan].trigger++;
-					else
-						channel[chan].trigger = 0;
-					switch(channel[chan].trigger) {
-					case 0: setnote(chan,channel[chan].note); break;
-					case 1: setnote(chan,channel[chan].note + info1); break;
-					case 2: setnote(chan,channel[chan].note + info2);
-					}
-					setfreq(chan);
-				}
-				break;
-		case 1: slide_up(chan,info); setfreq(chan); break;	// slide up
-		case 2: slide_down(chan,info); setfreq(chan); break;	// slide down
-		case 3: tone_portamento(chan,channel[chan].portainfo); break;	// tone portamento
-		case 4: vibrato(chan,channel[chan].vibinfo1,channel[chan].vibinfo2); break;	// vibrato
-		case 5:												// tone portamento & volume slide
-		case 6: if(channel[chan].fx == 5)				// vibrato & volume slide
-					tone_portamento(chan,channel[chan].portainfo);
-				else
-					vibrato(chan,channel[chan].vibinfo1,channel[chan].vibinfo2);
-		case 10: if(del % 4)	// SA2 volume slide
-					break;
-				 if(info1)
-					 vol_up(chan,info1);
-				 else
-					 vol_down(chan,info2);
-				 setvolume(chan);
-				 break;
-		case 14: if(info1 == 3)							// retrig note
-					if(!(del % (info2+1)))
-						playnote(chan);
-				 break;
-		case 16: if(del % 4)	// AMD volume slide
-					break;
-				 if(info1)
-					 vol_up_alt(chan,info1);
-				 else
-					 vol_down_alt(chan,info2);
-				 setvolume(chan);
-				 break;
-		case 20:				// RAD volume slide
-			if(info < 50)
-				vol_down_alt(chan,info);
-			else
-				vol_up_alt(chan,info - 50);
-			setvolume(chan);
-			break;
-		case 26: // volume slide
-			if(info1)
-				vol_up(chan,info1);
-			else
-				vol_down(chan,info2);
-			setvolume(chan);
-			break;
-		case 28:
-			if (info1) {
-				slide_up(chan,1); channel[chan].info1--;
-			}
-			if (info2) {
-				slide_down(chan,1); channel[chan].info2--;
-			}
-			setfreq(chan);
-			break;
-		}
-	}
+    info1 = channel[chan].info1;
+    info2 = channel[chan].info2;
+    if (flags & Decimal)
+      info = channel[chan].info1 * 10 + channel[chan].info2;
+    else
+      info = (channel[chan].info1 << 4) + channel[chan].info2;
+    switch (channel[chan].fx)
+    {
+    case 0:
+      if (info)
+      {                         // arpeggio
+        if (channel[chan].trigger < 2)
+          channel[chan].trigger++;
+        else
+          channel[chan].trigger = 0;
+        switch (channel[chan].trigger)
+        {
+        case 0:
+          setnote (chan, channel[chan].note);
+          break;
+        case 1:
+          setnote (chan, channel[chan].note + info1);
+          break;
+        case 2:
+          setnote (chan, channel[chan].note + info2);
+        }
+        setfreq (chan);
+      }
+      break;
+    case 1:
+      slide_up (chan, info);
+      setfreq (chan);
+      break;                    // slide up
+    case 2:
+      slide_down (chan, info);
+      setfreq (chan);
+      break;                    // slide down
+    case 3:
+      tone_portamento (chan, channel[chan].portainfo);
+      break;                    // tone portamento
+    case 4:
+      vibrato (chan, channel[chan].vibinfo1, channel[chan].vibinfo2);
+      break;                    // vibrato
+    case 5:                    // tone portamento & volume slide
+    case 6:
+      if (channel[chan].fx == 5)    // vibrato & volume slide
+        tone_portamento (chan, channel[chan].portainfo);
+      else
+        vibrato (chan, channel[chan].vibinfo1, channel[chan].vibinfo2);
+    case 10:
+      if (del % 4)              // SA2 volume slide
+        break;
+      if (info1)
+        vol_up (chan, info1);
+      else
+        vol_down (chan, info2);
+      setvolume (chan);
+      break;
+    case 14:
+      if (info1 == 3)           // retrig note
+        if (!(del % (info2 + 1)))
+          playnote (chan);
+      break;
+    case 16:
+      if (del % 4)              // AMD volume slide
+        break;
+      if (info1)
+        vol_up_alt (chan, info1);
+      else
+        vol_down_alt (chan, info2);
+      setvolume (chan);
+      break;
+    case 20:                   // RAD volume slide
+      if (info < 50)
+        vol_down_alt (chan, info);
+      else
+        vol_up_alt (chan, info - 50);
+      setvolume (chan);
+      break;
+    case 26:                   // volume slide
+      if (info1)
+        vol_up (chan, info1);
+      else
+        vol_down (chan, info2);
+      setvolume (chan);
+      break;
+    case 28:
+      if (info1)
+      {
+        slide_up (chan, 1);
+        channel[chan].info1--;
+      }
+      if (info2)
+      {
+        slide_down (chan, 1);
+        channel[chan].info2--;
+      }
+      setfreq (chan);
+      break;
+    }
+  }
 
-	if(del) {		// speed compensation
-		del--;
-		return !songend;
-	}
+  if (del)
+  {                             // speed compensation
+    del--;
+    return !songend;
+  }
 
-	// arrangement handling
-  if(!resolve_order()) return !songend;
-	pattnr = order[ord];
+  // arrangement handling
+  if (!resolve_order ())
+    return !songend;
+  pattnr = order[ord];
 
-        if(!rw) AdPlug_LogWrite("\nCmodPlayer::update(): Pattern: %d, Order: %d\n", pattnr, ord);
-        AdPlug_LogWrite("CmodPlayer::update():%3d|", rw);
+  if (!rw)
+    AdPlug_LogWrite ("\nCmodPlayer::update(): Pattern: %d, Order: %d\n",
+                     pattnr, ord);
+  AdPlug_LogWrite ("CmodPlayer::update():%3d|", rw);
 
-	// play row
+  // play row
   pattern_delay = 0;
-	row = rw;
-  for(chan = 0; chan < nchans; chan++) {
-    oplchan = set_opl_chip(chan);
-
-    if(!(activechan >> (31 - chan)) & 1) {	// channel active?
-                  AdPlug_LogWrite("N/A|");
-		  continue;
-		}
-		if(!(track = trackord[pattnr][chan])) {	// resolve track
-                  AdPlug_LogWrite("------------|");
-		  continue;
-		} else
-			track--;
+  row = rw;
+  for (chan = 0; chan < nchans; chan++)
+  {
+    oplchan = set_opl_chip (chan);
 
-                AdPlug_LogWrite("%3d%3d%2X%2X%2X|", tracks[track][row].note,
-			 tracks[track][row].inst, tracks[track][row].command,
-			 tracks[track][row].param1, tracks[track][row].param2);
-
-		donote = 0;
-		if(tracks[track][row].inst) {
-		  channel[chan].inst = tracks[track][row].inst - 1;
-		  if (!(flags & Faust)) {
-		    channel[chan].vol1 = 63 - (inst[channel[chan].inst].data[10] & 63);
-		    channel[chan].vol2 = 63 - (inst[channel[chan].inst].data[9] & 63);
-		    setvolume(chan);
-		  }
-		}
+    if (!(activechan >> (31 - chan)) & 1)
+    {                           // channel active?
+      AdPlug_LogWrite ("N/A|");
+      continue;
+    }
+    if (!(track = trackord[pattnr][chan]))
+    {                           // resolve track
+      AdPlug_LogWrite ("------------|");
+      continue;
+    }
+    else
+      track--;
 
-		if(tracks[track][row].note && tracks[track][row].command != 3) {	// no tone portamento
-			channel[chan].note = tracks[track][row].note;
-			setnote(chan,tracks[track][row].note);
-			channel[chan].nextfreq = channel[chan].freq;
-			channel[chan].nextoct = channel[chan].oct;
-			channel[chan].arppos = inst[channel[chan].inst].arpstart;
-			channel[chan].arpspdcnt = 0;
-			if(tracks[track][row].note != 127)	// handle key off
-				donote = 1;
-		}
-		channel[chan].fx = tracks[track][row].command;
-		channel[chan].info1 = tracks[track][row].param1;
-		channel[chan].info2 = tracks[track][row].param2;
+    AdPlug_LogWrite ("%3d%3d%2X%2X%2X|", tracks[track][row].note,
+                     tracks[track][row].inst, tracks[track][row].command,
+                     tracks[track][row].param1, tracks[track][row].param2);
 
-		if(donote)
-			playnote(chan);
+    donote = 0;
+    if (tracks[track][row].inst)
+    {
+      channel[chan].inst = tracks[track][row].inst - 1;
+      if (!(flags & Faust))
+      {
+        channel[chan].vol1 = 63 - (inst[channel[chan].inst].data[10] & 63);
+        channel[chan].vol2 = 63 - (inst[channel[chan].inst].data[9] & 63);
+        setvolume (chan);
+      }
+    }
 
-		// command handling (row dependant)
-		info1 = channel[chan].info1;
-		info2 = channel[chan].info2;
-		if(flags & Decimal)
-			info = channel[chan].info1 * 10 + channel[chan].info2;
-		else
-			info = (channel[chan].info1 << 4) + channel[chan].info2;
-		switch(channel[chan].fx) {
-    case 3: // tone portamento
-      if(tracks[track][row].note) {
-	if(tracks[track][row].note < 13)
-	  channel[chan].nextfreq = notetable[tracks[track][row].note - 1];
-						else
-	  if(tracks[track][row].note % 12 > 0)
-	    channel[chan].nextfreq = notetable[(tracks[track][row].note % 12) - 1];
-	  else
-	    channel[chan].nextfreq = notetable[11];
-	channel[chan].nextoct = (tracks[track][row].note - 1) / 12;
-	if(tracks[track][row].note == 127) {	// handle key off
-	  channel[chan].nextfreq = channel[chan].freq;
-	  channel[chan].nextoct = channel[chan].oct;
-	}
-					}
-				if(info)		// remember vars
-					channel[chan].portainfo = info;
-				break;
+    if (tracks[track][row].note && tracks[track][row].command != 3)
+    {                           // no tone portamento
+      channel[chan].note = tracks[track][row].note;
+      setnote (chan, tracks[track][row].note);
+      channel[chan].nextfreq = channel[chan].freq;
+      channel[chan].nextoct = channel[chan].oct;
+      channel[chan].arppos = inst[channel[chan].inst].arpstart;
+      channel[chan].arpspdcnt = 0;
+      if (tracks[track][row].note != 127)   // handle key off
+        donote = 1;
+    }
+    channel[chan].fx = tracks[track][row].command;
+    channel[chan].info1 = tracks[track][row].param1;
+    channel[chan].info2 = tracks[track][row].param2;
+
+    if (donote)
+      playnote (chan);
 
-    case 4: // vibrato (remember vars)
-      if(info) {
-	channel[chan].vibinfo1 = info1;
-	channel[chan].vibinfo2 = info2;
+    // command handling (row dependant)
+    info1 = channel[chan].info1;
+    info2 = channel[chan].info2;
+    if (flags & Decimal)
+      info = channel[chan].info1 * 10 + channel[chan].info2;
+    else
+      info = (channel[chan].info1 << 4) + channel[chan].info2;
+    switch (channel[chan].fx)
+    {
+    case 3:                    // tone portamento
+      if (tracks[track][row].note)
+      {
+        if (tracks[track][row].note < 13)
+          channel[chan].nextfreq = notetable[tracks[track][row].note - 1];
+        else if (tracks[track][row].note % 12 > 0)
+          channel[chan].nextfreq =
+            notetable[(tracks[track][row].note % 12) - 1];
+        else
+          channel[chan].nextfreq = notetable[11];
+        channel[chan].nextoct = (tracks[track][row].note - 1) / 12;
+        if (tracks[track][row].note == 127)
+        {                       // handle key off
+          channel[chan].nextfreq = channel[chan].freq;
+          channel[chan].nextoct = channel[chan].oct;
+        }
       }
-				break;
-
-		case 7: tempo = info; break;							// set tempo
-
-		case 8: channel[chan].key = 0; setfreq(chan); break;	// release sustaining note
+      if (info)                 // remember vars
+        channel[chan].portainfo = info;
+      break;
 
-		case 9: // set carrier/modulator volume
-				if(info1)
-					channel[chan].vol1 = info1 * 7;
-				else
-					channel[chan].vol2 = info2 * 7;
-				setvolume(chan);
-				break;
+    case 4:                    // vibrato (remember vars)
+      if (info)
+      {
+        channel[chan].vibinfo1 = info1;
+        channel[chan].vibinfo2 = info2;
+      }
+      break;
 
-    case 11: // position jump
-      pattbreak = 1; rw = 0; if(info < ord) songend = 1; ord = info; break;
+    case 7:
+      tempo = info;
+      break;                    // set tempo
 
-		case 12: // set volume
-				channel[chan].vol1 = info;
-				channel[chan].vol2 = info;
-				if(channel[chan].vol1 > 63)
-					channel[chan].vol1 = 63;
-				if(channel[chan].vol2 > 63)
-					channel[chan].vol2 = 63;
-				setvolume(chan);
-				break;
+    case 8:
+      channel[chan].key = 0;
+      setfreq (chan);
+      break;                    // release sustaining note
 
-    case 13: // pattern break
-      if(!pattbreak) { pattbreak = 1; rw = info; ord++; } break;
+    case 9:                    // set carrier/modulator volume
+      if (info1)
+        channel[chan].vol1 = info1 * 7;
+      else
+        channel[chan].vol2 = info2 * 7;
+      setvolume (chan);
+      break;
 
-		case 14: // extended command
-				switch(info1) {
-      case 0: // define cell-tremolo
-	if(info2)
-	  regbd |= 128;
-	else
-	  regbd &= 127;
-						opl->write(0xbd,regbd);
-						break;
+    case 11:                   // position jump
+      pattbreak = 1;
+      rw = 0;
+      if (info < ord)
+        songend = 1;
+      ord = info;
+      break;
+
+    case 12:                   // set volume
+      channel[chan].vol1 = info;
+      channel[chan].vol2 = info;
+      if (channel[chan].vol1 > 63)
+        channel[chan].vol1 = 63;
+      if (channel[chan].vol2 > 63)
+        channel[chan].vol2 = 63;
+      setvolume (chan);
+      break;
 
-      case 1: // define cell-vibrato
-	if(info2)
-	  regbd |= 64;
-	else
-	  regbd &= 191;
-						opl->write(0xbd,regbd);
-						break;
+    case 13:                   // pattern break
+      if (!pattbreak)
+      {
+        pattbreak = 1;
+        rw = info;
+        ord++;
+      }
+      break;
 
-      case 4: // increase volume fine
-	vol_up_alt(chan,info2);
-						setvolume(chan);
-						break;
-
-      case 5: // decrease volume fine
-	vol_down_alt(chan,info2);
-						setvolume(chan);
-						break;
+    case 14:                   // extended command
+      switch (info1)
+      {
+      case 0:                  // define cell-tremolo
+        if (info2)
+          regbd |= 128;
+        else
+          regbd &= 127;
+        opl->write (0xbd, regbd);
+        break;
 
-      case 6: // manual slide up
-	slide_up(chan,info2);
-						setfreq(chan);
-						break;
+      case 1:                  // define cell-vibrato
+        if (info2)
+          regbd |= 64;
+        else
+          regbd &= 191;
+        opl->write (0xbd, regbd);
+        break;
+
+      case 4:                  // increase volume fine
+        vol_up_alt (chan, info2);
+        setvolume (chan);
+        break;
 
-      case 7: // manual slide down
-	slide_down(chan,info2);
-						setfreq(chan);
-						break;
+      case 5:                  // decrease volume fine
+        vol_down_alt (chan, info2);
+        setvolume (chan);
+        break;
 
-      case 8: // pattern delay (rows)
-	pattern_delay = info2 * speed;
-	break;
-				}
-				break;
+      case 6:                  // manual slide up
+        slide_up (chan, info2);
+        setfreq (chan);
+        break;
+
+      case 7:                  // manual slide down
+        slide_down (chan, info2);
+        setfreq (chan);
+        break;
 
-		case 15: // SA2 set speed
-			if(info <= 0x1f)
-				speed = info;
-			if(info >= 0x32)
-				tempo = info;
-			if(!info)
-				songend = 1;
-			break;
+      case 8:                  // pattern delay (rows)
+        pattern_delay = info2 * speed;
+        break;
+      }
+      break;
 
-		case 17: // alternate set volume
-			channel[chan].vol1 = info;
-			if(channel[chan].vol1 > 63)
-				channel[chan].vol1 = 63;
-			if(inst[channel[chan].inst].data[0] & 1) {
-				channel[chan].vol2 = info;
-	 			if(channel[chan].vol2 > 63)
-					channel[chan].vol2 = 63;
-			}
+    case 15:                   // SA2 set speed
+      if (info <= 0x1f)
+        speed = info;
+      if (info >= 0x32)
+        tempo = info;
+      if (!info)
+        songend = 1;
+      break;
 
-			setvolume(chan);
-			break;
+    case 17:                   // alternate set volume
+      channel[chan].vol1 = info;
+      if (channel[chan].vol1 > 63)
+        channel[chan].vol1 = 63;
+      if (inst[channel[chan].inst].data[0] & 1)
+      {
+        channel[chan].vol2 = info;
+        if (channel[chan].vol2 > 63)
+          channel[chan].vol2 = 63;
+      }
 
-		case 18: // AMD set speed
-			if(info <= 31 && info > 0)
-				speed = info;
-			if(info > 31 || !info)
-				tempo = info;
-			break;
+      setvolume (chan);
+      break;
 
-		case 19: // RAD/A2M set speed
-			speed = (info ? info : info + 1);
-			break;
+    case 18:                   // AMD set speed
+      if (info <= 31 && info > 0)
+        speed = info;
+      if (info > 31 || !info)
+        tempo = info;
+      break;
 
-		case 21: // set modulator volume
-			if(info <= 63)
-				channel[chan].vol2 = info;
-			else
-				channel[chan].vol2 = 63;
-			setvolume(chan);
-			break;
+    case 19:                   // RAD/A2M set speed
+      speed = (info ? info : info + 1);
+      break;
 
-		case 22: // set carrier volume
-			if(info <= 63)
-				channel[chan].vol1 = info;
-			else
-				channel[chan].vol1 = 63;
-			setvolume(chan);
-			break;
+    case 21:                   // set modulator volume
+      if (info <= 63)
+        channel[chan].vol2 = info;
+      else
+        channel[chan].vol2 = 63;
+      setvolume (chan);
+      break;
 
-		case 23: // fine frequency slide up
-			slide_up(chan,info);
-			setfreq(chan);
-			break;
+    case 22:                   // set carrier volume
+      if (info <= 63)
+        channel[chan].vol1 = info;
+      else
+        channel[chan].vol1 = 63;
+      setvolume (chan);
+      break;
 
-		case 24: // fine frequency slide down
-			slide_down(chan,info);
-			setfreq(chan);
-			break;
+    case 23:                   // fine frequency slide up
+      slide_up (chan, info);
+      setfreq (chan);
+      break;
 
-		case 25: // set carrier/modulator waveform
-			if(info1 != 0x0f)
-	opl->write(0xe3 + op_table[oplchan],info1);
-			if(info2 != 0x0f)
-	opl->write(0xe0 + op_table[oplchan],info2);
-			break;
+    case 24:                   // fine frequency slide down
+      slide_down (chan, info);
+      setfreq (chan);
+      break;
 
-		case 27: // set chip tremolo/vibrato
-      if(info1)
-				regbd |= 128;
-			else
-				regbd &= 127;
-      if(info2)
-				regbd |= 64;
-			else
-				regbd &= 191;
-			opl->write(0xbd,regbd);
-			break;
+    case 25:                   // set carrier/modulator waveform
+      if (info1 != 0x0f)
+        opl->write (0xe3 + op_table[oplchan], info1);
+      if (info2 != 0x0f)
+        opl->write (0xe0 + op_table[oplchan], info2);
+      break;
 
-    case 29: // pattern delay (frames)
+    case 27:                   // set chip tremolo/vibrato
+      if (info1)
+        regbd |= 128;
+      else
+        regbd &= 127;
+      if (info2)
+        regbd |= 64;
+      else
+        regbd &= 191;
+      opl->write (0xbd, regbd);
+      break;
+
+    case 29:                   // pattern delay (frames)
       pattern_delay = info;
       break;
-		}
-	}
+    }
+  }
 
   // speed compensation
   del = speed - 1 + pattern_delay;
 
-	if(!pattbreak) {	// next row (only if no manual advance)
-		rw++;
-		if(rw >= nrows) {
-			rw = 0;
-			ord++;
-		}
-	}
+  if (!pattbreak)
+  {                             // next row (only if no manual advance)
+    rw++;
+    if (rw >= nrows)
+    {
+      rw = 0;
+      ord++;
+    }
+  }
 
-  resolve_order();	// so we can report songend right away
-  AdPlug_LogWrite("\n");
+  resolve_order ();             // so we can report songend right away
+  AdPlug_LogWrite ("\n");
   return !songend;
 }
 
-unsigned char CmodPlayer::set_opl_chip(unsigned char chan)
+unsigned char
+CmodPlayer::set_opl_chip (unsigned char chan)
   /*
    * Sets OPL chip according to channel number. Channels 0-8 are on first chip,
    * channels 9-17 are on second chip. Returns corresponding OPL channel
@@ -456,15 +538,17 @@
 {
   int newchip = chan < 9 ? 0 : 1;
 
-  if(newchip != curchip) {
-    opl->setchip(newchip);
+  if (newchip != curchip)
+  {
+    opl->setchip (newchip);
     curchip = newchip;
   }
 
   return chan % 9;
 }
 
-bool CmodPlayer::resolve_order()
+bool
+CmodPlayer::resolve_order ()
   /*
    * Resolves current orderlist entry, checking for jumps and loops.
    *
@@ -472,69 +556,84 @@
    * has been detected.
    */
 {
-	if(ord < length) {
-    while(order[ord] >= JUMPMARKER) {	// jump to order
+  if (ord < length)
+  {
+    while (order[ord] >= JUMPMARKER)
+    {                           // jump to order
       unsigned long neword = order[ord] - JUMPMARKER;
 
-      if(neword <= ord) songend = 1;
-      if(neword == ord) return false;
+      if (neword <= ord)
+        songend = 1;
+      if (neword == ord)
+        return false;
       ord = neword;
-	  }
-  } else {
-	  songend = 1;
+    }
+  }
+  else
+  {
+    songend = 1;
     ord = restartpos;
   }
 
   return true;
 }
 
-void CmodPlayer::rewind(int subsong)
+void
+CmodPlayer::rewind (int subsong)
 {
   unsigned long i;
 
   // Reset playing variables
   songend = del = ord = rw = regbd = 0;
-  tempo = bpm; speed = initspeed;
+  tempo = bpm;
+  speed = initspeed;
 
   // Reset channel data
-  memset(channel,0,sizeof(Channel)*nchans);
+  memset (channel, 0, sizeof (Channel) * nchans);
 
   // Compute number of patterns, if needed
-  if(!nop)
-    for(i=0;i<length;i++)
+  if (!nop)
+    for (i = 0; i < length; i++)
       nop = (order[i] > nop ? order[i] : nop);
 
-  opl->init();				// Reset OPL chip
-  opl->write(1, 32);	// Go to ym3812 mode
+  opl->init ();                 // Reset OPL chip
+  opl->write (1, 32);           // Go to ym3812 mode
 
   // Enable OPL3 extensions if flagged
-  if(flags & Opl3) {
-    opl->setchip(1);
-    opl->write(1, 32);
-    opl->write(5, 1);
-    opl->setchip(0);
+  if (flags & Opl3)
+  {
+    opl->setchip (1);
+    opl->write (1, 32);
+    opl->write (5, 1);
+    opl->setchip (0);
   }
 
   // Enable tremolo/vibrato depth if flagged
-  if(flags & Tremolo) regbd |= 128;
-  if(flags & Vibrato) regbd |= 64;
-  if(regbd) opl->write(0xbd, regbd);
+  if (flags & Tremolo)
+    regbd |= 128;
+  if (flags & Vibrato)
+    regbd |= 64;
+  if (regbd)
+    opl->write (0xbd, regbd);
 }
 
-float CmodPlayer::getrefresh()
+float
+CmodPlayer::getrefresh ()
 {
-	return (float) (tempo / 2.5);
+  return (float) (tempo / 2.5);
 }
 
-void CmodPlayer::init_trackord()
+void
+CmodPlayer::init_trackord ()
 {
   unsigned long i;
 
-  for(i=0;i<npats*nchans;i++)
+  for (i = 0; i < npats * nchans; i++)
     trackord[i / nchans][i % nchans] = i + 1;
 }
 
-bool CmodPlayer::init_specialarp()
+bool
+CmodPlayer::init_specialarp ()
 {
   arplist = new unsigned char[SPECIALARPLEN];
   arpcmd = new unsigned char[SPECIALARPLEN];
@@ -542,278 +641,338 @@
   return true;
 }
 
-void CmodPlayer::init_notetable(const unsigned short *newnotetable)
+void
+CmodPlayer::init_notetable (const unsigned short *newnotetable)
 {
-  memcpy(notetable, newnotetable, 12 * 2);
+  memcpy (notetable, newnotetable, 12 * 2);
 }
 
-bool CmodPlayer::realloc_order(unsigned long len)
+bool
+CmodPlayer::realloc_order (unsigned long len)
 {
-  if(order) delete [] order;
+  if (order)
+    delete[]order;
   order = new unsigned char[len];
   return true;
 }
 
-bool CmodPlayer::realloc_patterns(unsigned long pats, unsigned long rows, unsigned long chans)
+bool
+CmodPlayer::realloc_patterns (unsigned long pats, unsigned long rows,
+                              unsigned long chans)
 {
   unsigned long i;
 
-  dealloc_patterns();
+  dealloc_patterns ();
 
   // set new number of tracks, rows and channels
-  npats = pats; nrows = rows; nchans = chans;
+  npats = pats;
+  nrows = rows;
+  nchans = chans;
 
   // alloc new patterns
   tracks = new Tracks *[pats * chans];
-  for(i=0;i<pats*chans;i++) tracks[i] = new Tracks[rows];
+  for (i = 0; i < pats * chans; i++)
+    tracks[i] = new Tracks[rows];
   trackord = new unsigned short *[pats];
-  for(i=0;i<pats;i++) trackord[i] = new unsigned short[chans];
+  for (i = 0; i < pats; i++)
+    trackord[i] = new unsigned short[chans];
   channel = new Channel[chans];
 
   // initialize new patterns
-  for(i=0;i<pats*chans;i++) memset(tracks[i],0,sizeof(Tracks)*rows);
-  for(i=0;i<pats;i++) memset(trackord[i],0,chans*2);
+  for (i = 0; i < pats * chans; i++)
+    memset (tracks[i], 0, sizeof (Tracks) * rows);
+  for (i = 0; i < pats; i++)
+    memset (trackord[i], 0, chans * 2);
 
   return true;
 }
 
-void CmodPlayer::dealloc_patterns()
+void
+CmodPlayer::dealloc_patterns ()
 {
   unsigned long i;
 
   // dealloc everything previously allocated
-  if(npats && nrows && nchans) {
-    for(i=0;i<npats*nchans;i++) delete [] tracks[i];
-    delete [] tracks;
-    for(i=0;i<npats;i++) delete [] trackord[i];
-    delete [] trackord;
-    delete [] channel;
+  if (npats && nrows && nchans)
+  {
+    for (i = 0; i < npats * nchans; i++)
+      delete[]tracks[i];
+    delete[]tracks;
+    for (i = 0; i < npats; i++)
+      delete[]trackord[i];
+    delete[]trackord;
+    delete[]channel;
   }
 }
 
-bool CmodPlayer::realloc_instruments(unsigned long len)
+bool
+CmodPlayer::realloc_instruments (unsigned long len)
 {
   // dealloc previous instance, if any
-  if(inst) delete [] inst;
+  if (inst)
+    delete[]inst;
 
   inst = new Instrument[len];
-  memset(inst,0,sizeof(Instrument)*len);	// reset instruments
+  memset (inst, 0, sizeof (Instrument) * len);  // reset instruments
   return true;
 }
 
-void CmodPlayer::dealloc()
+void
+CmodPlayer::dealloc ()
 {
-  if(inst) delete [] inst;
-  if(order) delete [] order;
-  if(arplist) delete [] arplist;
-  if(arpcmd) delete [] arpcmd;
-  dealloc_patterns();
+  if (inst)
+    delete[]inst;
+  if (order)
+    delete[]order;
+  if (arplist)
+    delete[]arplist;
+  if (arpcmd)
+    delete[]arpcmd;
+  dealloc_patterns ();
 }
 
 /*** private methods *************************************/
 
-void CmodPlayer::setvolume(unsigned char chan)
+void
+CmodPlayer::setvolume (unsigned char chan)
 {
-  unsigned char oplchan = set_opl_chip(chan);
+  unsigned char oplchan = set_opl_chip (chan);
 
-  if(flags & Faust)
-        	setvolume_alt(chan);
-	else {
-    opl->write(0x40 + op_table[oplchan], 63-channel[chan].vol2 + (inst[channel[chan].inst].data[9] & 192));
-    opl->write(0x43 + op_table[oplchan], 63-channel[chan].vol1 + (inst[channel[chan].inst].data[10] & 192));
-	}
+  if (flags & Faust)
+    setvolume_alt (chan);
+  else
+  {
+    opl->write (0x40 + op_table[oplchan],
+                63 - channel[chan].vol2 +
+                (inst[channel[chan].inst].data[9] & 192));
+    opl->write (0x43 + op_table[oplchan],
+                63 - channel[chan].vol1 +
+                (inst[channel[chan].inst].data[10] & 192));
+  }
 }
 
-void CmodPlayer::setvolume_alt(unsigned char chan)
+void
+CmodPlayer::setvolume_alt (unsigned char chan)
 {
-  unsigned char oplchan = set_opl_chip(chan);
-    unsigned char ivol2 = inst[channel[chan].inst].data[9] & 63;
-    unsigned char ivol1 = inst[channel[chan].inst].data[10] & 63;
+  unsigned char oplchan = set_opl_chip (chan);
+  unsigned char ivol2 = inst[channel[chan].inst].data[9] & 63;
+  unsigned char ivol1 = inst[channel[chan].inst].data[10] & 63;
 
-  opl->write(0x40 + op_table[oplchan], (((63 - channel[chan].vol2 & 63) + ivol2) >> 1) + (inst[channel[chan].inst].data[9] & 192));
-  opl->write(0x43 + op_table[oplchan], (((63 - channel[chan].vol1 & 63) + ivol1) >> 1) + (inst[channel[chan].inst].data[10] & 192));
+  opl->write (0x40 + op_table[oplchan],
+              (((63 - channel[chan].vol2 & 63) + ivol2) >> 1) +
+              (inst[channel[chan].inst].data[9] & 192));
+  opl->write (0x43 + op_table[oplchan],
+              (((63 - channel[chan].vol1 & 63) + ivol1) >> 1) +
+              (inst[channel[chan].inst].data[10] & 192));
 }
 
-void CmodPlayer::setfreq(unsigned char chan)
+void
+CmodPlayer::setfreq (unsigned char chan)
 {
-  unsigned char oplchan = set_opl_chip(chan);
+  unsigned char oplchan = set_opl_chip (chan);
 
-  opl->write(0xa0 + oplchan, channel[chan].freq & 255);
-	if(channel[chan].key)
-    opl->write(0xb0 + oplchan, ((channel[chan].freq & 768) >> 8) + (channel[chan].oct << 2) | 32);
-	else
-    opl->write(0xb0 + oplchan, ((channel[chan].freq & 768) >> 8) + (channel[chan].oct << 2));
+  opl->write (0xa0 + oplchan, channel[chan].freq & 255);
+  if (channel[chan].key)
+    opl->write (0xb0 + oplchan,
+                ((channel[chan].freq & 768) >> 8) +
+                (channel[chan].oct << 2) | 32);
+  else
+    opl->write (0xb0 + oplchan,
+                ((channel[chan].freq & 768) >> 8) + (channel[chan].oct << 2));
 }
 
-void CmodPlayer::playnote(unsigned char chan)
+void
+CmodPlayer::playnote (unsigned char chan)
 {
-  unsigned char oplchan = set_opl_chip(chan);
+  unsigned char oplchan = set_opl_chip (chan);
   unsigned char op = op_table[oplchan], insnr = channel[chan].inst;
 
-	if(!(flags & NoKeyOn))
-    opl->write(0xb0 + oplchan, 0);	// stop old note
+  if (!(flags & NoKeyOn))
+    opl->write (0xb0 + oplchan, 0); // stop old note
 
-	// set instrument data
-	opl->write(0x20 + op, inst[insnr].data[1]);
-	opl->write(0x23 + op, inst[insnr].data[2]);
-	opl->write(0x60 + op, inst[insnr].data[3]);
-	opl->write(0x63 + op, inst[insnr].data[4]);
-	opl->write(0x80 + op, inst[insnr].data[5]);
-	opl->write(0x83 + op, inst[insnr].data[6]);
-	opl->write(0xe0 + op, inst[insnr].data[7]);
-	opl->write(0xe3 + op, inst[insnr].data[8]);
-  opl->write(0xc0 + oplchan, inst[insnr].data[0]);
-	opl->write(0xbd, inst[insnr].misc);	// set misc. register
+  // set instrument data
+  opl->write (0x20 + op, inst[insnr].data[1]);
+  opl->write (0x23 + op, inst[insnr].data[2]);
+  opl->write (0x60 + op, inst[insnr].data[3]);
+  opl->write (0x63 + op, inst[insnr].data[4]);
+  opl->write (0x80 + op, inst[insnr].data[5]);
+  opl->write (0x83 + op, inst[insnr].data[6]);
+  opl->write (0xe0 + op, inst[insnr].data[7]);
+  opl->write (0xe3 + op, inst[insnr].data[8]);
+  opl->write (0xc0 + oplchan, inst[insnr].data[0]);
+  opl->write (0xbd, inst[insnr].misc);  // set misc. register
 
-	// set frequency, volume & play
-	channel[chan].key = 1;
-	setfreq(chan);
+  // set frequency, volume & play
+  channel[chan].key = 1;
+  setfreq (chan);
 
-	if (flags & Faust) {
-		channel[chan].vol2 = 63;
-		channel[chan].vol1 = 63;
-	}
-	setvolume(chan);
+  if (flags & Faust)
+  {
+    channel[chan].vol2 = 63;
+    channel[chan].vol1 = 63;
+  }
+  setvolume (chan);
 }
 
-void CmodPlayer::setnote(unsigned char chan, int note)
+void
+CmodPlayer::setnote (unsigned char chan, int note)
 {
-	if(note > 96)
-		if(note == 127) {	// key off
-			channel[chan].key = 0;
-			setfreq(chan);
-			return;
-		} else
-			note = 96;
+  if (note > 96)
+    if (note == 127)
+    {                           // key off
+      channel[chan].key = 0;
+      setfreq (chan);
+      return;
+    }
+    else
+      note = 96;
 
-	if(note < 13)
-		channel[chan].freq = notetable[note - 1];
-	else
-		if(note % 12 > 0)
-			channel[chan].freq = notetable[(note % 12) - 1];
-		else
-			channel[chan].freq = notetable[11];
-	channel[chan].oct = (note - 1) / 12;
-	channel[chan].freq += inst[channel[chan].inst].slide;	// apply pre-slide
+  if (note < 13)
+    channel[chan].freq = notetable[note - 1];
+  else if (note % 12 > 0)
+    channel[chan].freq = notetable[(note % 12) - 1];
+  else
+    channel[chan].freq = notetable[11];
+  channel[chan].oct = (note - 1) / 12;
+  channel[chan].freq += inst[channel[chan].inst].slide; // apply pre-slide
 }
 
-void CmodPlayer::slide_down(unsigned char chan, int amount)
+void
+CmodPlayer::slide_down (unsigned char chan, int amount)
 {
-	channel[chan].freq -= amount;
-	if(channel[chan].freq <= 342)
-		if(channel[chan].oct) {
-			channel[chan].oct--;
-			channel[chan].freq <<= 1;
-		} else
-			channel[chan].freq = 342;
+  channel[chan].freq -= amount;
+  if (channel[chan].freq <= 342)
+    if (channel[chan].oct)
+    {
+      channel[chan].oct--;
+      channel[chan].freq <<= 1;
+    }
+    else
+      channel[chan].freq = 342;
 }
 
-void CmodPlayer::slide_up(unsigned char chan, int amount)
+void
+CmodPlayer::slide_up (unsigned char chan, int amount)
 {
-	channel[chan].freq += amount;
-	if(channel[chan].freq >= 686)
-		if(channel[chan].oct < 7) {
-			channel[chan].oct++;
-			channel[chan].freq >>= 1;
-		} else
-			channel[chan].freq = 686;
+  channel[chan].freq += amount;
+  if (channel[chan].freq >= 686)
+    if (channel[chan].oct < 7)
+    {
+      channel[chan].oct++;
+      channel[chan].freq >>= 1;
+    }
+    else
+      channel[chan].freq = 686;
 }
 
-void CmodPlayer::tone_portamento(unsigned char chan, unsigned char info)
+void
+CmodPlayer::tone_portamento (unsigned char chan, unsigned char info)
 {
-	if(channel[chan].freq + (channel[chan].oct << 10) < channel[chan].nextfreq +
-		(channel[chan].nextoct << 10)) {
-		slide_up(chan,info);
-		if(channel[chan].freq + (channel[chan].oct << 10) > channel[chan].nextfreq +
-		(channel[chan].nextoct << 10)) {
-			channel[chan].freq = channel[chan].nextfreq;
-			channel[chan].oct = channel[chan].nextoct;
-		}
-	}
-	if(channel[chan].freq + (channel[chan].oct << 10) > channel[chan].nextfreq +
-		(channel[chan].nextoct << 10)) {
-		slide_down(chan,info);
-		if(channel[chan].freq + (channel[chan].oct << 10) < channel[chan].nextfreq +
-		(channel[chan].nextoct << 10)) {
-			channel[chan].freq = channel[chan].nextfreq;
-			channel[chan].oct = channel[chan].nextoct;
-		}
-	}
-	setfreq(chan);
+  if (channel[chan].freq + (channel[chan].oct << 10) <
+      channel[chan].nextfreq + (channel[chan].nextoct << 10))
+  {
+    slide_up (chan, info);
+    if (channel[chan].freq + (channel[chan].oct << 10) >
+        channel[chan].nextfreq + (channel[chan].nextoct << 10))
+    {
+      channel[chan].freq = channel[chan].nextfreq;
+      channel[chan].oct = channel[chan].nextoct;
+    }
+  }
+  if (channel[chan].freq + (channel[chan].oct << 10) >
+      channel[chan].nextfreq + (channel[chan].nextoct << 10))
+  {
+    slide_down (chan, info);
+    if (channel[chan].freq + (channel[chan].oct << 10) <
+        channel[chan].nextfreq + (channel[chan].nextoct << 10))
+    {
+      channel[chan].freq = channel[chan].nextfreq;
+      channel[chan].oct = channel[chan].nextoct;
+    }
+  }
+  setfreq (chan);
 }
 
-void CmodPlayer::vibrato(unsigned char chan, unsigned char speed, unsigned char depth)
+void
+CmodPlayer::vibrato (unsigned char chan, unsigned char speed,
+                     unsigned char depth)
 {
-	int i;
+  int i;
 
-	if(!speed || !depth)
-		return;
+  if (!speed || !depth)
+    return;
 
-	if(depth > 14)
-		depth = 14;
+  if (depth > 14)
+    depth = 14;
 
-	for(i=0;i<speed;i++) {
-		channel[chan].trigger++;
-		while(channel[chan].trigger >= 64)
-			channel[chan].trigger -= 64;
-		if(channel[chan].trigger >= 16 && channel[chan].trigger < 48)
-			slide_down(chan,vibratotab[channel[chan].trigger - 16] / (16-depth));
-		if(channel[chan].trigger < 16)
-			slide_up(chan,vibratotab[channel[chan].trigger + 16] / (16-depth));
-		if(channel[chan].trigger >= 48)
-			slide_up(chan,vibratotab[channel[chan].trigger - 48] / (16-depth));
-	}
-	setfreq(chan);
+  for (i = 0; i < speed; i++)
+  {
+    channel[chan].trigger++;
+    while (channel[chan].trigger >= 64)
+      channel[chan].trigger -= 64;
+    if (channel[chan].trigger >= 16 && channel[chan].trigger < 48)
+      slide_down (chan,
+                  vibratotab[channel[chan].trigger - 16] / (16 - depth));
+    if (channel[chan].trigger < 16)
+      slide_up (chan, vibratotab[channel[chan].trigger + 16] / (16 - depth));
+    if (channel[chan].trigger >= 48)
+      slide_up (chan, vibratotab[channel[chan].trigger - 48] / (16 - depth));
+  }
+  setfreq (chan);
 }
 
-void CmodPlayer::vol_up(unsigned char chan, int amount)
+void
+CmodPlayer::vol_up (unsigned char chan, int amount)
 {
-	if(channel[chan].vol1 + amount < 63)
-		channel[chan].vol1 += amount;
-	else
-		channel[chan].vol1 = 63;
+  if (channel[chan].vol1 + amount < 63)
+    channel[chan].vol1 += amount;
+  else
+    channel[chan].vol1 = 63;
 
-	if(channel[chan].vol2 + amount < 63)
-		channel[chan].vol2 += amount;
-	else
-		channel[chan].vol2 = 63;
+  if (channel[chan].vol2 + amount < 63)
+    channel[chan].vol2 += amount;
+  else
+    channel[chan].vol2 = 63;
 }
 
-void CmodPlayer::vol_down(unsigned char chan, int amount)
+void
+CmodPlayer::vol_down (unsigned char chan, int amount)
 {
-	if(channel[chan].vol1 - amount > 0)
-		channel[chan].vol1 -= amount;
-	else
-		channel[chan].vol1 = 0;
+  if (channel[chan].vol1 - amount > 0)
+    channel[chan].vol1 -= amount;
+  else
+    channel[chan].vol1 = 0;
 
-	if(channel[chan].vol2 - amount > 0)
-		channel[chan].vol2 -= amount;
-	else
-		channel[chan].vol2 = 0;
+  if (channel[chan].vol2 - amount > 0)
+    channel[chan].vol2 -= amount;
+  else
+    channel[chan].vol2 = 0;
 }
 
-void CmodPlayer::vol_up_alt(unsigned char chan, int amount)
+void
+CmodPlayer::vol_up_alt (unsigned char chan, int amount)
 {
-	if(channel[chan].vol1 + amount < 63)
-		channel[chan].vol1 += amount;
-	else
-		channel[chan].vol1 = 63;
-	if(inst[channel[chan].inst].data[0] & 1)
-		if(channel[chan].vol2 + amount < 63)
-			channel[chan].vol2 += amount;
-		else
-			channel[chan].vol2 = 63;
+  if (channel[chan].vol1 + amount < 63)
+    channel[chan].vol1 += amount;
+  else
+    channel[chan].vol1 = 63;
+  if (inst[channel[chan].inst].data[0] & 1)
+    if (channel[chan].vol2 + amount < 63)
+      channel[chan].vol2 += amount;
+    else
+      channel[chan].vol2 = 63;
 }
 
-void CmodPlayer::vol_down_alt(unsigned char chan, int amount)
+void
+CmodPlayer::vol_down_alt (unsigned char chan, int amount)
 {
-	if(channel[chan].vol1 - amount > 0)
-		channel[chan].vol1 -= amount;
-	else
-		channel[chan].vol1 = 0;
-	if(inst[channel[chan].inst].data[0] & 1)
-		if(channel[chan].vol2 - amount > 0)
-			channel[chan].vol2 -= amount;
-		else
-			channel[chan].vol2 = 0;
+  if (channel[chan].vol1 - amount > 0)
+    channel[chan].vol1 -= amount;
+  else
+    channel[chan].vol1 = 0;
+  if (inst[channel[chan].inst].data[0] & 1)
+    if (channel[chan].vol2 - amount > 0)
+      channel[chan].vol2 -= amount;
+    else
+      channel[chan].vol2 = 0;
 }