Index: libmpc/branches/r2d/mppenc/mppenc.c
===================================================================
--- libmpc/branches/r2d/mppenc/mppenc.c	(revision 149)
+++ libmpc/branches/r2d/mppenc/mppenc.c	(revision 161)
@@ -546,12 +546,12 @@
         if (tmp_R [2] > 0.) scfR [2] = IFLOORF (-12.6f * LOG10 (tmp_R [2]) + 57.8945021823f );
 
-        // restriction to SCF_Index = 0...63, make note of the internal overflow
+        // restriction to SCF_Index = -6...121, make note of the internal overflow
         warnL = warnR = 0;
-        if (scfL[0] & ~63) { if (scfL[0] < 0) { if (XLevel==0) scfL[0] = 0, warnL = 1; } else scfL[0] = 63; }
-        if (scfL[1] & ~63) { if (scfL[1] < 0) { if (XLevel==0) scfL[1] = 0, warnL = 1; } else scfL[1] = 63; }
-        if (scfL[2] & ~63) { if (scfL[2] < 0) { if (XLevel==0) scfL[2] = 0, warnL = 1; } else scfL[2] = 63; }
-        if (scfR[0] & ~63) { if (scfR[0] < 0) { if (XLevel==0) scfR[0] = 0, warnR = 1; } else scfR[0] = 63; }
-        if (scfR[1] & ~63) { if (scfR[1] < 0) { if (XLevel==0) scfR[1] = 0, warnR = 1; } else scfR[1] = 63; }
-        if (scfR[2] & ~63) { if (scfR[2] < 0) { if (XLevel==0) scfR[2] = 0, warnR = 1; } else scfR[2] = 63; }
+		for( n = 0; n < 3; n++){
+			if (scfL[n] < -6) scfL[n] = -6, warnL = 1;
+			if (scfL[n] > 121) scfL[n] = 121, warnL = 1;
+			if (scfR[n] < -6) scfR[n] = -6, warnR = 1;
+			if (scfR[n] > 121) scfR[n] = 121, warnR = 1;
+		}
 
         // save old values for compensation calculation
@@ -1462,6 +1462,4 @@
     cw  &=  ~0x300;
 	_asm { fldcw cw };
-#else
-    ;
 #endif
 }
@@ -1718,5 +1716,5 @@
 
         OldSilence      = Silence;
-        WriteBitstream_SV7 ( &e, m.Max_Band, Q );                                                // write SV7-Bitstream
+        writeBitstream_SV8 ( &e, m.Max_Band, Q );                                                // write SV7-Bitstream
 
         if ( (Int)(time (NULL) - T) >= 0 ) {                            // output
Index: libmpc/branches/r2d/mppenc/mppenc.h
===================================================================
--- libmpc/branches/r2d/mppenc/mppenc.h	(revision 149)
+++ libmpc/branches/r2d/mppenc/mppenc.h	(revision 161)
@@ -123,5 +123,5 @@
 void writeBits (mpc_encoder_t * e, mpc_uint32_t input, unsigned int bits );
 void writeSeekTable (mpc_encoder_t * e);
-void         WriteBitstream_SV7   ( mpc_encoder_t*, const int, const SubbandQuantTyp* );
+void writeBitstream_SV8 ( mpc_encoder_t*, int, const SubbandQuantTyp*);
 
 
