diff --git a/dcc_parser/dcc_parser.py b/dcc_parser/dcc_parser.py
index 4792e1959f9c3ec6ec6035ae3c79752503ff742c..a0231ef4b2e8915832eec4fc6b059be784906847 100644
--- a/dcc_parser/dcc_parser.py
+++ b/dcc_parser/dcc_parser.py
@@ -144,7 +144,7 @@ def read_config(config_pt):
                     else:
                         offset = 0
         elif descriptor == loop_descriptor:
-            loop_offset = val & bm(config_loopoffset, 0)
+            loop_offset = val & bm(config_loopoffset - 1, 0)
             loop_count = bvalsel(27, config_loopoffset, val)
 
             if loop_offset == 0: