Hello.
I'm asked on the different forums but no answer. Maybe here?
There in cgminer exist such code:
static uint8_t diff_to_bits(double diff)
{
uint64_t diff64;
uint8_t i;
diff /= 0.9999847412109375;
diff *= (double)2147483648.0;
if (diff > 0x8000000000000000ULL)
diff = 0x8000000000000000ULL;
/* Convert it to an integer */
diff64 = diff;
for (i = 0; diff64; i++, diff64 >>= 1);
return i;
}
static double bits_to_diff(uint8_t bits)
{
double ret = 1.0;
if (likely(bits > 32))
ret *= 1ull << (bits - 32);
else if (unlikely(bits < 32))
ret /= 1ull << (32 - bits);
return ret;
}
How to adapt this code for scrypt to calculate diff to bits and vice versa?
Thanks!