]> jspc29.x-matter.uni-frankfurt.de Git - mvdsensorcontrol.git/commitdiff
now xml2ini should REALLY not remove leading zeros anymore
authorMichael Wiebusch <stratomaster@gmx.net>
Thu, 11 Jul 2013 12:35:51 +0000 (14:35 +0200)
committerMichael Wiebusch <stratomaster@gmx.net>
Thu, 11 Jul 2013 12:35:51 +0000 (14:35 +0200)
tools/xml2ini.pl

index bba98f5111ea3a0c53979a7b590bc71200a94f31..82be1ced5f09f44cf62eb30b808253ffd3c2891e 100755 (executable)
@@ -190,7 +190,7 @@ for my $specRegister ( @specRegisters){
   
   my $registerValBinStr = zeros($registerSize);
   
-  my $stringSize = ceil($registerSize/32)*8; # this fulfills Bertram's requirement to write the hex string in multiples of 8 nibbles = 32 bit words
+  my $targetStringSize = ceil($registerSize/32)*8; # this fulfills Bertram's requirement to write the hex string in multiples of 8 nibbles = 32 bit words
   
   my @specFields = $specRegister->findnodes("./field");
 
@@ -221,8 +221,11 @@ for my $specRegister ( @specRegisters){
   
   }
   
-  my $registerValHexString = binStr2hexStr($registerValBinStr);
-  padZeros(\$registerValHexString,8);
+  my $registerValHexString = binStr2hexStr($registerValBinStr); # strips leading zeros
+  # pad missing zeros so full length of the value string is restored
+  $registerValHexString=zeros($targetStringSize - length($registerValHexString)).$registerValHexString;
+  # now we should have a nice and long Bertram compatible hex value string again!
+  
   
   # print the interesting part of the ini file, the register values in Bertram Format!
   print OUTPUT ";$registerName\n";