Index: trunk/include/mpcdec/decoder.h
===================================================================
--- trunk/include/mpcdec/decoder.h	(revision 7)
+++ trunk/include/mpcdec/decoder.h	(revision 10)
@@ -44,4 +44,6 @@
 #include "streaminfo.h"
 
+#define MPC_SUPPORT_SV456
+
 enum {
     MPC_V_MEM = 2304,
@@ -60,14 +62,14 @@
     //@{
 
-    mpc_uint32_t  dword; /// actually decoded 32bit-word
+    mpc_uint32_t  dword; /// currently decoded 32bit-word
     mpc_uint32_t  pos;   /// bit-position within dword
     mpc_uint32_t  Speicher[MPC_DECODER_MEMSIZE]; /// read-buffer
     mpc_uint32_t  Zaehler; /// actual index within read-buffer
 
-    mpc_uint32_t samples_to_skip;
+    mpc_uint32_t  samples_to_skip;
 
     mpc_uint32_t  FwdJumpInfo;
     mpc_uint32_t  ActDecodePos;
-    mpc_uint32_t  FrameWasValid;
+    
 
     mpc_uint32_t  DecodedFrames;
@@ -76,11 +78,10 @@
 
     mpc_uint32_t  StreamVersion;              // version of bitstream
-    mpc_uint32_t  MS_used;                    // MS-coding used ?
     mpc_int32_t   Max_Band;
     mpc_uint32_t  MPCHeaderPos;               // AB: needed to support ID3v2
-    mpc_uint32_t  LastValidSamples;
+
+    mpc_uint32_t  FrameWasValid;
+    mpc_uint32_t  MS_used;                    // MS-coding used ?
     mpc_uint32_t  TrueGaplessPresent;
-
-    mpc_uint32_t  EQ_activated;
 
     mpc_uint32_t  WordsRead;                  // counts amount of decoded dwords
@@ -90,35 +91,4 @@
     mpc_uint32_t  __r2; 
 
-    mpc_uint32_t  Q_bit [32];     
-    mpc_uint32_t  Q_res [32][16];
-
-    // huffman table stuff
-    HuffmanTyp    HuffHdr  [10];
-    HuffmanTyp    HuffSCFI [ 4];
-    HuffmanTyp    HuffDSCF [16];
-    HuffmanTyp*   HuffQ [2] [8];
-
-    HuffmanTyp    HuffQ1 [2] [3*3*3];
-    HuffmanTyp    HuffQ2 [2] [5*5];
-    HuffmanTyp    HuffQ3 [2] [ 7];
-    HuffmanTyp    HuffQ4 [2] [ 9];
-    HuffmanTyp    HuffQ5 [2] [15];
-    HuffmanTyp    HuffQ6 [2] [31];
-    HuffmanTyp    HuffQ7 [2] [63];
-    const HuffmanTyp* SampleHuff [18];
-    HuffmanTyp    SCFI_Bundle   [ 8];
-    HuffmanTyp    DSCF_Entropie [13];
-    HuffmanTyp    Region_A [16];
-    HuffmanTyp    Region_B [ 8];
-    HuffmanTyp    Region_C [ 4];
-
-    HuffmanTyp    Entropie_1 [ 3];
-    HuffmanTyp    Entropie_2 [ 5];
-    HuffmanTyp    Entropie_3 [ 7];
-    HuffmanTyp    Entropie_4 [ 9];
-    HuffmanTyp    Entropie_5 [15];
-    HuffmanTyp    Entropie_6 [31];
-    HuffmanTyp    Entropie_7 [63];
-
     mpc_int32_t   SCF_Index_L [32] [3];
     mpc_int32_t   SCF_Index_R [32] [3];       // holds scalefactor-indices
@@ -126,11 +96,11 @@
     mpc_int32_t   Res_L [32];
     mpc_int32_t   Res_R [32];                 // holds the chosen quantizer for each subband
-    mpc_int32_t   DSCF_Flag_L [32];
-    mpc_int32_t   DSCF_Flag_R [32];           // differential SCF used?
+    mpc_bool_t    DSCF_Flag_L [32];
+    mpc_bool_t    DSCF_Flag_R [32];           // differential SCF used?
     mpc_int32_t   SCFI_L [32];
     mpc_int32_t   SCFI_R [32];                // describes order of transmitted SCF
     mpc_int32_t   DSCF_Reference_L [32];
     mpc_int32_t   DSCF_Reference_R [32];      // holds last frames SCF
-    mpc_int32_t   MS_Flag[32];                // MS used?
+    mpc_bool_t    MS_Flag[32];                // MS used?
 #ifdef MPC_FIXED_POINT
     unsigned char SCF_shift[256];
Index: trunk/include/mpcdec/huffman.h
===================================================================
--- trunk/include/mpcdec/huffman.h	(revision 7)
+++ trunk/include/mpcdec/huffman.h	(revision 10)
@@ -52,29 +52,7 @@
 typedef struct huffman_type_t {
     mpc_uint32_t  Code;
-    mpc_uint32_t  Length;
-    mpc_int32_t   Value;
+    mpc_uint16_t  Length;
+    mpc_int16_t   Value;
 } HuffmanTyp;
 
-//! \brief Sorts huffman-tables by codeword.
-//!
-//! offset resulting value.
-//! \param elements
-//! \param Table table to sort
-//! \param offset offset of resulting sort
-void
-mpc_decoder_resort_huff_tables(
-    const mpc_uint32_t elements, HuffmanTyp *Table, const mpc_int32_t offset);
-
-/// Initializes sv6 huffman decoding structures.
-void mpc_decoder_init_huffman_sv6(struct mpc_decoder_t *d);
-
-/// Initializes sv6 huffman decoding tables.
-void mpc_decoder_init_huffman_sv6_tables(struct mpc_decoder_t *d);
-
-/// Initializes sv7 huffman decoding structures.
-void mpc_decoder_init_huffman_sv7(struct mpc_decoder_t *d);
-
-/// Initializes sv7 huffman decoding tables.
-void mpc_decoder_init_huffman_sv7_tables(struct mpc_decoder_t *d);
-
 #endif // _mpcdec_huffman_h_
