From 7fd2df5ba9eb25ef0cd0e73cafbf94654ab225b4 Mon Sep 17 00:00:00 2001 From: Tanguy Pruvot Date: Fri, 12 Feb 2016 16:52:55 +0100 Subject: [PATCH] stratum: missing bloc height notif + range --- ccminer.cpp | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/ccminer.cpp b/ccminer.cpp index ca4744e..8315af0 100644 --- a/ccminer.cpp +++ b/ccminer.cpp @@ -1396,7 +1396,8 @@ static bool stratum_gen_work(struct stratum_ctx *sctx, struct work *work) work->data[37] = (rand()*4) << 8; for (int i=39; i < 45; i++) work->data[i] = 0; - applog_hex(work->data, 180); + sctx->job.height = work->data[32]; + //applog_hex(work->data, 180); } else { work->data[17] = le32dec(sctx->job.ntime); work->data[18] = le32dec(sctx->job.nbits); @@ -1695,12 +1696,14 @@ static void *miner_thread(void *userdata) #endif memcpy(&work, &g_work, sizeof(struct work)); nonceptr[0] = (UINT32_MAX / opt_n_threads) * thr_id; // 0 if single thr - if (opt_algo == ALGO_DECRED) nonceptr[0] = 0; } else nonceptr[0]++; //?? if (opt_algo == ALGO_DECRED) { - end_nonce = 0xF0000000UL; + // use the full range per loop + nonceptr[0] = 0; + end_nonce = UINT32_MAX; + // and make an unique work (extradata) nonceptr[1] += 1; nonceptr[2] |= thr_id; } @@ -1723,6 +1726,7 @@ static void *miner_thread(void *userdata) loopcnt++; /* prevent gpu scans before a job is received */ + //if (opt_algo != ALGO_DECRED) // uncomment to allow testnet if (have_stratum && work.data[0] == 0 && !opt_benchmark) { sleep(1); if (!thr_id) pools[cur_pooln].wait_time += 1; @@ -1910,8 +1914,8 @@ static void *miner_thread(void *userdata) rc = scanhash_c11(thr_id, &work, max_nonce, &hashes_done); break; case ALGO_DECRED: - if (opt_debug) applog(LOG_BLUE, "version %x, nbits %x, ntime %x extra %x", - work.data[0], work.data[29], work.data[34], work.data[38]); + //applog(LOG_BLUE, "version %x, nbits %x, ntime %x extra %x", + // work.data[0], work.data[29], work.data[34], work.data[38]); rc = scanhash_decred(thr_id, &work, max_nonce, &hashes_done); break; case ALGO_DEEP: