johnny9
67babe7145
bm1397: fix problems with unit test on multiple runs
2023-07-01 14:20:48 -04:00
johnny9
f123430a7d
bm1397: update job test case values
2023-07-01 14:20:48 -04:00
johnny9
f46ae9694b
bm1397: extra module to own component
...
Create an idf component for the bm1387 module and add a basic
test to verify that a bm1397 can produce a good nonce. bm1397
is also added to the list of tests under the unit test runner
component.
2023-07-01 14:20:48 -04:00
johnny9
ee04e437be
stratum: don't try to check mining.suggest_difficulty result
...
Current implementation has a race condition with the first
mining.notify message and can cause the miner to take a long time
to start if it misses that message.
2023-07-01 14:19:51 -04:00
johnny9
f6f7f39886
chore: remove excess logging
2023-07-01 14:19:51 -04:00
johnny9
6b5e5b98f7
stratum: fix extranonce 2 generation when length > 4
2023-07-01 14:19:51 -04:00
johnny9
3d6d27b101
stratum: add an additional test to validate bm_job construction
2023-07-01 14:19:51 -04:00
johnny9
d583332f3b
stratum: add additional test for test_nonce_value
2023-07-01 14:19:51 -04:00
johnny9
b9858777b0
stratum: move prettyHex and flip32 into utils
2023-07-01 14:19:51 -04:00
johnny9
d23a106a65
mining: add test to check nonce diff
...
Test unconvered issues in the construction of the header
when hashing as well as issues with converting the hash to
a double.
2023-07-01 14:19:51 -04:00
johnny9
6bac906333
mining: fix extranonce_2_generate function definition
2023-07-01 14:19:51 -04:00
johnny9
278d948f10
mining: fix bm_job construction test
2023-07-01 14:19:51 -04:00
johnny9
da4fad9dab
Revert "proper midstates are back!"
...
This reverts commit bf4715b58ffbf5bcd2d2000fe40376fb7ccec9d1.
2023-07-01 14:19:51 -04:00
johnny9
20ed65279b
Revert "reverted ticket_mask. tried testing nonces nerdminer style"
...
This reverts commit eee399324d8e6caa1a7e51da3336dc84069c75c7.
2023-07-01 14:19:51 -04:00
johnny9
b7a18871a7
Revert "cleaned up debug messages and hex printing a bit. still not checking nonces right"
...
This reverts commit ea0d14966264e9bc15630419e79f6283e30af40c.
2023-07-01 14:19:51 -04:00
johnny9
e27d9e32c8
Revert "added nonce checking fixes from @johnny9"
...
This reverts commit 2b06b3f4d7e290452fd082fdc1387246677ba860.
2023-07-01 14:19:51 -04:00
Skot Croshere
fda3a36204
shorten the header debug and some others
2023-07-01 14:19:51 -04:00
Skot Croshere
3bdfd6d32d
setup for running unit tests. press cmd-sft-p "test"
2023-07-01 14:19:51 -04:00
Skot Croshere
de237e1d34
added nonce checking fixes from @johnny9
2023-07-01 14:19:51 -04:00
Skot Croshere
61ed3c1c97
cleaned up debug messages and hex printing a bit. still not checking nonces right
2023-07-01 14:19:51 -04:00
Skot Croshere
3f79ff615e
reverted ticket_mask. tried testing nonces nerdminer style
2023-07-01 14:19:51 -04:00
Skot Croshere
f00ef85016
proper midstates are back!
2023-07-01 14:19:51 -04:00
johnny9
1ab923dae0
stratum: remove json buffer logging
2023-07-01 14:19:51 -04:00
Skot Croshere
ccb094a916
fix some warnings. trying to check nonce diff -- it's not working.
2023-07-01 14:19:51 -04:00
Skot Croshere
9927e2995b
added suggest_difficulty
2023-07-01 14:19:51 -04:00
johnny9
9cf8ee9b3b
miner: generate more bm_jobs using extranonce 2
2023-07-01 14:19:51 -04:00
johnny9
9c9c1ad540
stratum: add method to free bm_job struct
2023-07-01 14:19:51 -04:00
johnny9
8cf78d58cc
stratum: add methods for extranonce_2 generation
2023-07-01 14:19:51 -04:00
johnny9
e246a84c86
stratum: add mining.set_difficulty message parse
2023-07-01 14:19:51 -04:00
johnny9
24010c3fe8
bm1397: update midstate construction test with proper values
...
Midstate test has been updated with known working values from
a bm1397 job command. Additional adjustment was also made to the
bm_job construction method that changed the endianess of the
merkle root.
2023-07-01 14:19:51 -04:00
johnny9
5d4733ec34
stratum: fix coinbase construction tests
...
The api for construct_coinbase_tx changed and now takes the extranonce
2 as a parameter instead of the length.
2023-07-01 14:19:51 -04:00
Skot Croshere
3e3ba6d98e
flip the byte order of the midstate
2023-07-01 14:18:41 -04:00
Skot Croshere
4cf368864e
added a midstate sha256 function
2023-07-01 14:18:41 -04:00
johnny9
27b24d3c3e
bm1397: integrate with stratum WIP
2023-07-01 14:18:41 -04:00
johnny9
939aee42ee
mining: add an additional merkle calc test
2023-07-01 14:18:41 -04:00
johnny9
bad72d638a
mining: swap endianess of prevblockhash when computing midstate
2023-07-01 14:18:41 -04:00
johnny9
f80805f53a
stratum_api: add method to check if previous work should be abandoned
2023-07-01 14:18:41 -04:00
johnny9
225126708c
main: add bm_job construction to mining task
2023-07-01 14:18:41 -04:00
johnny9
1118d01ba5
mining: add script for generating verification data for tests
2023-07-01 14:18:41 -04:00
johnny9
56958f88a2
mining: fix warning on arugment type for single_sha256
2023-07-01 14:18:41 -04:00
johnny9
bbd2ebe249
mining: fix endianness of the block header version
2023-07-01 14:18:41 -04:00
johnny9
901d2da341
stratum_api: parse the uint32_t values from the mining.notify message
2023-07-01 14:18:41 -04:00
johnny9
83ad62322a
stratum_api: free job_id string
2023-07-01 14:18:41 -04:00
johnny9
ca827ee4b5
mining: construct a job for bm13xx
2023-07-01 14:18:41 -04:00
johnny9
ac9a121a3c
mining: fix memory leak in merkle root calculation
2023-07-01 14:18:41 -04:00
johnny9
812e4213c1
stratum_api: cleanup notify parsing
...
Split parsing into two steps, one for the method and one for the
params themselves. Currently it is up to the miner task to grab
the parameters in the format it needs.
2023-07-01 14:18:41 -04:00
johnny9
abf914648f
mining: fix coinbase tx concatenation
2023-07-01 14:18:41 -04:00
johnny9
f98cbf208b
mining: fix merkle root calculation and add unit test
2023-07-01 14:18:41 -04:00
johnny9
1c21a43cc5
mining: add merkle root calculation
2023-07-01 14:18:41 -04:00
johnny9
23e588c94e
utils: add double sha256 method
2023-07-01 14:18:41 -04:00