|
|
@ -2047,13 +2047,11 @@ double diff_from_nbits(char *nbits) |
|
|
|
|
|
|
|
|
|
|
|
pow = nbits[0]; |
|
|
|
pow = nbits[0]; |
|
|
|
powdiff = (8 * (0x1d - 3)) - (8 * (pow - 3)); |
|
|
|
powdiff = (8 * (0x1d - 3)) - (8 * (pow - 3)); |
|
|
|
if (powdiff < 8) |
|
|
|
if (powdiff < 8) // testnet only
|
|
|
|
powdiff = 8; |
|
|
|
powdiff = 8; |
|
|
|
diff32 = be32toh(*((uint32_t *)nbits)) & 0x00FFFFFF; |
|
|
|
diff32 = be32toh(*((uint32_t *)nbits)) & 0x00FFFFFF; |
|
|
|
if (likely(powdiff > 0)) |
|
|
|
|
|
|
|
numerator = 0xFFFFULL << powdiff; |
|
|
|
numerator = 0xFFFFULL << powdiff; |
|
|
|
else |
|
|
|
|
|
|
|
numerator = 0xFFFFULL >> -powdiff; |
|
|
|
|
|
|
|
return numerator / (double)diff32; |
|
|
|
return numerator / (double)diff32; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|