It was the Bitcointalk forum that inspired us to create Bitcointalksearch.org - Bitcointalk is an excellent site that should be the default page for anybody dealing in cryptocurrency, since it is a virtual gold-mine of data. However, our experience and user feedback led us create our site; Bitcointalk's search is slow, and difficult to get the results you need, because you need to log in first to find anything useful - furthermore, there are rate limiters for their search functionality.
The aim of our project is to create a faster website that yields more results and faster without having to create an account and eliminate the need to log in - your personal data, therefore, will never be in jeopardy since we are not asking for any of your data and you don't need to provide them to use our site with all of its capabilities.
We created this website with the sole purpose of users being able to search quickly and efficiently in the field of cryptocurrency so they will have access to the latest and most accurate information and thereby assisting the crypto-community at large.
floor((blockheight) / 30) % 2 == 0
floor((blockheight) / 30) % 2 == 0
// ppcoin: subsidy is cut in half every 16x multiply of difficulty
if (output_j['blocks'] % 2 == 0):
if (output_j['blocks'] % 16 == 0):
static const int64 nTargetTimespan = 7 * 24 * 60 * 60; // one week
// ppcoin: target change every block
// ppcoin: retarget with exponential moving toward target spacing
CBigNum bnNew;
bnNew.SetCompact(pindexPrev->nBits);
int64 nTargetSpacing = fProofOfStake? STAKE_TARGET_SPACING : min(nTargetSpacingWorkMax, (int64) STAKE_TARGET_SPACING * (1 + pindexLast->nHeight - pindexPrev->nHeight));
int64 nInterval = nTargetTimespan / nTargetSpacing;
bnNew *= ((nInterval - 1) * nTargetSpacing + nActualSpacing + nActualSpacing);
bnNew /= ((nInterval + 1) * nTargetSpacing);
if (bnNew > bnProofOfWorkLimit)
bnNew = bnProofOfWorkLimit;
return bnNew.GetCompact();
from subprocess import Popen, PIPE, STDOUT
import time
import json
class Nova(object):
def __init__(self, blocks):
self.blocks = blocks
scan_time = 5
while(True):
### Get the initial block number from novacoind, store in output_j['blocks']
cmd = './novacoind getinfo' ### Command for dumping info from novacoind in json format; we use this lots
p = Popen(cmd, shell=True, stdin=PIPE, stdout=PIPE, stderr=STDOUT, close_fds=True) ### Execute command
output = p.stdout.read() ### Read the stdout that output gives us
output_j = json.loads(output) ### Convert from json to python values; we call block number using the class given above
print("Current block is " + str(output_j['blocks']))
if (output_j['blocks'] % 2 == 0): ### Block is even, mine NovaCoin
print ("Even block, mining NVC...")
novacoin_config = open('novamine.conf','r')
card_config = open('cardconf.conf','r')
configuration = open('litecoin.conf', 'w')
### Copy the reaper configuration to litecoin.conf for novacoin
for line in novacoin_config:
configuration.write(line)
for line in card_config:
configuration.write(line)
novacoin_config.close()
card_config.close()
configuration.close()
miner_cmd = './reaper' ### Command for your miner to mine NVC
miner_thread = Popen(miner_cmd, shell=True, stdin=PIPE, stdout=PIPE, stderr=STDOUT, close_fds=True)
### Loop below checks to see when block we're on, terminates miner if we are on an off number block
while(True):
p = Popen(cmd, shell=True, stdin=PIPE, stdout=PIPE, stderr=STDOUT, close_fds=True)
output = p.stdout.read()
output_j = json.loads(output)
if not(output_j['blocks'] % 2 == 0):
miner_thread.terminate()
break
else:
print("Block still even, mining novacoin.")
time.sleep(scan_time)
else: ### Block is odd, mine something else
print ("Odd block, mining another chain...")
novacoin_config = open('elsemine.conf','r')
card_config = open('cardconf.conf','r')
configuration = open('litecoin.conf', 'w')
### Copy the reaper configuration to litecoin.conf for other chain
for line in novacoin_config:
configuration.write(line)
for line in card_config:
configuration.write(line)
novacoin_config.close()
card_config.close()
configuration.close()
miner_cmd = './reaper' ### Command for your miner to mine something else; the same here because we use reaper
miner_thread = Popen(miner_cmd, shell=True, stdin=PIPE, stdout=PIPE, stderr=STDOUT, close_fds=True)
### Loop below checks to see when block we're on, terminates miner if we are on an even number block
while(True):
p = Popen(cmd, shell=True, stdin=PIPE, stdout=PIPE, stderr=STDOUT, close_fds=True)
output = p.stdout.read()
output_j = json.loads(output)
if (output_j['blocks'] % 2 == 0):
miner_thread.terminate()
break
else:
print("Block still odd, mining another chain.")
time.sleep(scan_time)
from subprocess import Popen, PIPE, STDOUT
import time
import json
class Nova(object):
def __init__(self, blocks):
self.blocks = blocks
scan_time = 5
while(True):
### Get the initial block number from novacoind, store in output_j['blocks']
cmd = 'novacoind.exe getinfo' ### Command for dumping info from novacoind in json format; we use this lots
p = Popen(cmd, shell=True, stdin=PIPE, stdout=PIPE, stderr=STDOUT, close_fds=True) ### Execute command
output = p.stdout.read() ### Read the stdout that output gives us
output_j = json.loads(output) ### Convert from json to python values; we call block number using the class given above
print("Current block is " + str(output_j['blocks']))
if (output_j['blocks'] % 2 == 0): ### Block is even, mine NovaCoin
print ("Even block, mining NVC...")
novacoin_config = open('novamine.conf','r')
card_config = open('cardconf.conf','r')
configuration = open('litecoin.conf', 'w')
### Copy the reaper configuration to litecoin.conf for novacoin
for line in novacoin_config:
configuration.write(line)
for line in card_config:
configuration.write(line)
novacoin_config.close()
card_config.close()
configuration.close()
miner_cmd = 'reaper.exe' ### Command for your miner to mine NVC
miner_thread = Popen(miner_cmd, shell=True, stdin=PIPE, stdout=PIPE, stderr=STDOUT, close_fds=True)
### Loop below checks to see when block we're on, terminates miner if we are on an off number block
while(True):
p = Popen(cmd, shell=True, stdin=PIPE, stdout=PIPE, stderr=STDOUT, close_fds=True)
output = p.stdout.read()
output_j = json.loads(output)
if not(output_j['blocks'] % 2 == 0):
miner_thread.terminate()
break
else:
print("Block still even, mining novacoin.")
time.sleep(scan_time)
else: ### Block is odd, mine something else
print ("Odd block, mining another chain...")
novacoin_config = open('elsemine.conf','r')
card_config = open('cardconf.conf','r')
configuration = open('litecoin.conf', 'w')
### Copy the reaper configuration to litecoin.conf for other chain
for line in novacoin_config:
configuration.write(line)
for line in card_config:
configuration.write(line)
novacoin_config.close()
card_config.close()
configuration.close()
miner_cmd = 'reaper.exe' ### Command for your miner to mine something else; the same here because we use reaper
miner_thread = Popen(miner_cmd, shell=True, stdin=PIPE, stdout=PIPE, stderr=STDOUT, close_fds=True)
### Loop below checks to see when block we're on, terminates miner if we are on an even number block
while(True):
p = Popen(cmd, shell=True, stdin=PIPE, stdout=PIPE, stderr=STDOUT, close_fds=True)
output = p.stdout.read()
output_j = json.loads(output)
if (output_j['blocks'] % 2 == 0):
miner_thread.terminate()
break
else:
print("Block still odd, mining another chain.")
time.sleep(scan_time)
host novacoinhost
port ????
user username
pass password
host litecoinhost
port ????
user username
pass password
protocol litecoin
worksize 256
vectors 1
aggression 20
threads_per_gpu 1
sharethreads 32
lookup_gap 2
gpu_thread_concurrency ####