Author

Topic: [ANN][YAC] YACoin ongoing development - page 163. (Read 380091 times)

sr. member
Activity: 434
Merit: 250
sr. member
Activity: 425
Merit: 262
I think current client is too complex, it will be better to separate the GUI client from the server part. I'm inclining to make a GUI client or Web client talk to the server via RPC-JSON api. This can bring more people to write more advanced GUI client.
legendary
Activity: 2772
Merit: 1028
Duelbits.com
Yep, all good points for any crypto, not only YAC.

It's very tech thing for average PC user.
sr. member
Activity: 462
Merit: 250
So on the topic of YaCoin development, I wanted to put forth some ideas on how to increase the coin’s adoption.

I think we can all agree that currently, this is a coin developed by technical folks, for technical folks. You could say the same thing is true for most all altcoins, and you’d be right. Their technical complexity (both conceptually and from a day-to-day operational standpoint of the current toolset and utilities) is a big factor keeping them from starting to enter wider adoption. Bitcoin itself is just now starting to get over this with sites like Coinbase and Bitpay.

However, with YaCoin, we have a coin where money can be made with no special hardware required beyond a general purpose CPU. Admittedly, the money is not much at all today, but when I think of the number of folks that may be open to running this on their work computers, for instance to make some coins to play around with, it’s extremely compelling because that both increases knowledge and interest in the coin (and digital currencies in general), along with strengthening the network by leaps and bounds (which lends back into the former in a virtuous and synergistic cycle).

However, I believe that the technical hurdles with the toolset are still insurmountable for most folks, and are ones that YaCoin inherited from Bitcoin, etc. Things like:

•   Downloading the client as a zip file, with a bunch of DLLs and no installer. Huh?
•   The wallet.dat file is stored in a separate location from the program itself (makes sense, since it’s tied to the user, but it can be a pain to find if you don’t know that).
•   Want to mine for coins? You have to resort to either creating and editing some (seemingly) random .conf file you have to create in some (seemingly) random directory, or downloading and figuring out command-line switches for an external mining program like minerd or cgminer
•   So I finally do that, and then get some coins… what now?


For us, none of these are show stoppers, but for 99% of computer users…you’d lose them at the first one. I am definitely not proposing making this thing appealing to 99% of computer users, since most of them at this point wouldn't understand the concept of a digital currency anyhow. I’d rather be interesting in focusing on enhancing the client design to open this up to the top 10% of computer users, who have the skills and possible inclination, but don’t necessarily want to read a book on these coins to figure them out. As a bonus, you’d greatly simplify things for the existing yacoin community (if I can blaze through an installer to set up yacoin on a random box, awesome). Focusing on Windows at least at first, for obvious reasons, it would be something like the following:

•   Start by creating an installer for the yacoin client. And/or, have a “portable” version that you can throw on a USB stick, that throws the wallet, blockchain, etc right there in a subdirectory under the .exe
•   Enhance the yacoin client to come packaged with minerd. Add a tab to the GUI to start and stop mining (and allow the user to auto-start the client and therefore mining at machine startup). Starting mining would find a suitable p2pool, and launch minerd, pointing at that. Coins would then naturally end up in the user’s wallet.
•   Possibly include a ticker in the client showing announcements (such as “Complexity increase in 2 days. Your hashrate will be cut in half.” and the current yacoin price, for instance)
•   Tutorials around this client, along with explaining about selling/trading the coins on an exchange.
•   Future ideas of web-wallets for yacoin, such as a coinbase clone….

At this point, you have a coin with more user-friendliness that any altcoin, which I believe matches its technical profile as a CPU-mineable coin. And the fact that you introduce new folks into the digital currency space by means of yacoin would be an amazing feat.

Comments, suggestions? I am a developer and could assist with some of these tasks, as well as contributing some YAC as the start of a bounty pool (my time is limited however as I run a rapidly growing business).
newbie
Activity: 39
Merit: 0
Did I miss the link to the windows binaries?

Please make a new Release for Windows  Cry
sr. member
Activity: 425
Merit: 262
sr. member
Activity: 363
Merit: 250
...

Thanks hanzac! that defintiely did the trick, i feel like i am a lot closer now, but stuck on one other small ASM related thing.
Code:
/scrypt-jane-portable-x86.h:226: warning: implicit declaration of function 'asm_gcc'
/scrypt-jane-portable-x86.h:227: error: expected ';' before 'a1'

EDIT: so then i realized that X86_64ASM was no longer being defined, so then asm_gcc wasn't getting initialized properly.  So instead i only commented out part of the block you suggested, and left the definition for X86_64ASM
Code:
#if defined(CPU_X86_64) && defined(COMPILER_GCC)
    #define X86_64ASM
// #define X86_64ASM_SSE2
// #if (COMPILER_GCC >= 40102)
// #define X86_64ASM_SSSE3
// #endif
// #if (COMPILER_GCC >= 40400)
// #define X86_64ASM_AVX
// #endif
#endif

And it built with no errors, but a whole bunch of warnings, do these warnings matter??
Code:
src/scrypt-jane/code/scrypt-jane-chacha.h:12: In file included from ../altcoins/yacoin/src/scrypt-jane/code/scrypt-jane-chacha.h:12,
src/scrypt-jane/code/scrypt-jane-romix.h:2: from ../altcoins/yacoin/src/scrypt-jane/code/scrypt-jane-romix.h:2,
src/scrypt-jane/scrypt-jane.c:12: from ../altcoins/yacoin/src/scrypt-jane/scrypt-jane.c:12:
src/scrypt-jane/code/scrypt-jane-romix-basic.h:-1: In function 'scrypt_romix_nop':
src/scrypt-jane/code/scrypt-jane-romix-basic.h:8: warning: unused parameter 'blocks'
src/scrypt-jane/code/scrypt-jane-romix-basic.h:8: warning: unused parameter 'nblocks'
src/scrypt-jane/code/scrypt-jane-romix-basic.h:-1: In function 'scrypt_romix_convert_endian':
src/scrypt-jane/code/scrypt-jane-romix-basic.h:13: warning: unused parameter 'blocks'
src/scrypt-jane/code/scrypt-jane-romix-basic.h:13: warning: unused parameter 'nblocks'
src/scrypt-jane/code/scrypt-jane-romix.h:2: In file included from ../altcoins/yacoin/src/scrypt-jane/code/scrypt-jane-romix.h:2,
src/scrypt-jane/scrypt-jane.c:12: from ../altcoins/yacoin/src/scrypt-jane/scrypt-jane.c:12:
src/scrypt-jane/code/scrypt-jane-chacha.h:-1: In function 'scrypt_getROMix':
src/scrypt-jane/code/scrypt-jane-chacha.h:56: warning: unused variable 'cpuflags'
src/scrypt-jane/code/scrypt-jane-chacha.h:-1: In function 'scrypt_test_mix':
src/scrypt-jane/code/scrypt-jane-chacha.h:109: warning: unused variable 'cpuflags'
src/scrypt-jane/scrypt-jane.c:13: In file included from ../altcoins/yacoin/src/scrypt-jane/scrypt-jane.c:13:
src/scrypt-jane/code/scrypt-jane-test-vectors.h:-1: At top level:
src/scrypt-jane/code/scrypt-jane-test-vectors.h:9: warning: missing initializer
src/scrypt-jane/code/scrypt-jane-test-vectors.h:9: warning: (near initialization for 'post_settings[2].salt')
src/scrypt-jane/code/scrypt-jane-romix-basic.h:8: warning: 'scrypt_romix_nop' defined but not used

Thanks!
legendary
Activity: 2772
Merit: 1028
Duelbits.com
Haven't checked vircurex but criptsy have 0 volume for yac.

But anyway, it's just not fair and I'm having a hard time to trust the exchange that does such stuff without the reasons.
sr. member
Activity: 425
Merit: 262
I know it's not the best thread for it but it's the most watched and easy to follow YAC one so I'll post it here..

I just sent a message to bter about their unfair treatment of YAC as one of the rare problem-less altcoins created in last few weeks. It's staggering to see that coins with such a problems with delayed transactions like FTC or CNC, or coins with numerous blockchain problems and risky fast block creation and 1500% price drop like WDC are treated normally ,without huge trading fees and scaring introducing message yet YAC as most advanced coin with most stable price since it's introduction to exchange as well with 0 blockchain problems is treated on the way it is.

I hope more of you will join me and send them the message as the way they are treating YAC is scandalous and makes one to wonder what the hell are they about, and you don't want to wonder that while you are giving someone the trust of dealing with your property.

Again, sorry for posting here but I hope more people will see it in this thread.

No matter, we still have two other exchanges, vircurex & cryptsy, they're both awesome.
hero member
Activity: 637
Merit: 500
It seems that http://yacexplorer.tk/ is not updating anymore.
Is there any other YAC block explorer out there ?

legendary
Activity: 2772
Merit: 1028
Duelbits.com
I know it's not the best thread for it but it's the most watched and easy to follow YAC one so I'll post it here..

I just sent a message to bter about their unfair treatment of YAC as one of the rare problem-less altcoins created in last few weeks. It's staggering to see that coins with such a problems with delayed transactions like FTC or CNC, or coins with numerous blockchain problems and risky fast block creation and 1500% price drop like WDC are treated normally ,without huge trading fees and scaring introducing message yet YAC as most advanced coin with most stable price since it's introduction to exchange as well with 0 blockchain problems is treated on the way it is.

I hope more of you will join me and send them the message as the way they are treating YAC is scandalous and makes one to wonder what the hell are they about, and you don't want to wonder that while you are giving someone the trust of dealing with your property.

Again, sorry for posting here but I hope more people will see it in this thread.
sr. member
Activity: 425
Merit: 262
Thanks for compiling up an interim Win 64-bit binary.  I was going to start looking into why the scrypt-jane library won't compile cleanly for 32-bit Windows using the mingw32 compiler as reported earlier in the thread but haven't gotten to it yet.

I'm almost ready to push changes to the repository to update the icon and graphics, and have been working on scripting up an NSIS-based installer (similar to InstallShield, but NSIS is open-source) for the Windows client.

Yes, I also met the problem of the assembly code error. I just turned off some macro options for the SSE & AVX, to make it a plain generic scryp-jane impl.

In file scrypt-jane-portable-x86.h, comment out these parts:
Quote
   #if (defined(COMPILER_MSVC6PP_AND_LATER) || (defined(COMPILER_GCC) && (COMPILER_GCC >= 30000)))
      #define X86ASM_SSE
      #define X86ASM_SSE2
   #endif
   #if ((defined(COMPILER_MSVC) && (COMPILER_MSVC >= 1400)) || (defined(COMPILER_GCC) && (COMPILER_GCC >= 40102)))
      #define X86ASM_SSSE3
   #endif
   #if ((defined(COMPILER_GCC) && (COMPILER_GCC >= 40400)))
      #define X86ASM_AVX
   #endif

But if you want to make the client also has optimized mining capability, need to try to configure CPU_X86_FORCE_INTRINSICS. (gcc intrinsics are always well-organized c code.)



Hello,

I'm trying to get YACoin QT Client compiled for OSX.  I feel like i'm getting pretty close, but i'm stuck on a bunch of ASM, and i'm not super awesome with ASM.

I think it's all coming from scrypt-x86_64.S
Code:
{standard input}:5:Alignment too large: 15. assumed.
{standard input}:14:32-bit absolute addressing is not supported for x86-64
{standard input}:14:cannot do signed 4 byte relocation
{standard input}:15:32-bit absolute addressing is not supported for x86-64
{standard input}:15:cannot do signed 4 byte relocation
{standard input}:89:suffix or operands invalid for `ja'
{standard input}:105:suffix or operands invalid for `jne'
{standard input}:108:Unknown pseudo-op: .type
{standard input}:108:Rest of line ignored. 1st junk character valued 115 (s).
{standard input}:109:Unknown pseudo-op: .size
{standard input}:109:Rest of line ignored. 1st junk character valued 115 (s).
{standard input}:113:Alignment too large: 15. assumed.
{standard input}:207:suffix or operands invalid for `ja'
{standard input}:223:suffix or operands invalid for `jne'
{standard input}:226:Unknown pseudo-op: .type
{standard input}:226:Rest of line ignored. 1st junk character valued 115 (s).
{standard input}:227:Unknown pseudo-op: .size
{standard input}:227:Rest of line ignored. 1st junk character valued 115 (s).

I am building with QT Creator, and using GCC (not CLANG).  I unravelled the macros in the ASM with pooler's perl tool. 

I assume someone has already figured this out because there is a NovaCoin QT for OSX and it uses the exact same ASM file.

Any help or advise would be appreciated!


sr. member
Activity: 425
Merit: 262
Finally got my GPU hashing, but 4 times slower than mtrlt's.

7950 @ 207KH, (N = 256), Downgrade to 750MHZ Core Speed.

That approximately jives with what I benchmarked your code at (at least the code you posted earlier in the thread) after fixing the problems with it, if we take into account the different cards we're using (I tested on a 6950).  As a point of curiosity, how many hours did it take you up to the point you posted your code, and how many hours after that to figure out what was still wrong?
I spend two weekends, if sum up about 48 hours.
sr. member
Activity: 363
Merit: 250
Hello,

I'm trying to get YACoin QT Client compiled for OSX.  I feel like i'm getting pretty close, but i'm stuck on a bunch of ASM, and i'm not super awesome with ASM.

I think it's all coming from scrypt-x86_64.S
Code:
{standard input}:5:Alignment too large: 15. assumed.
{standard input}:14:32-bit absolute addressing is not supported for x86-64
{standard input}:14:cannot do signed 4 byte relocation
{standard input}:15:32-bit absolute addressing is not supported for x86-64
{standard input}:15:cannot do signed 4 byte relocation
{standard input}:89:suffix or operands invalid for `ja'
{standard input}:105:suffix or operands invalid for `jne'
{standard input}:108:Unknown pseudo-op: .type
{standard input}:108:Rest of line ignored. 1st junk character valued 115 (s).
{standard input}:109:Unknown pseudo-op: .size
{standard input}:109:Rest of line ignored. 1st junk character valued 115 (s).
{standard input}:113:Alignment too large: 15. assumed.
{standard input}:207:suffix or operands invalid for `ja'
{standard input}:223:suffix or operands invalid for `jne'
{standard input}:226:Unknown pseudo-op: .type
{standard input}:226:Rest of line ignored. 1st junk character valued 115 (s).
{standard input}:227:Unknown pseudo-op: .size
{standard input}:227:Rest of line ignored. 1st junk character valued 115 (s).

I am building with QT Creator, and using GCC (not CLANG).  I unravelled the macros in the ASM with pooler's perl tool. 

I assume someone has already figured this out because there is a NovaCoin QT for OSX and it uses the exact same ASM file.

Any help or advise would be appreciated!
sr. member
Activity: 347
Merit: 250
I have compiled Windmaster's client on my old notebook, but somehow I'm unable to download the whole blockchain flawlessly, it went fine at the beginning, but now I'm stuck at about 10000 blocks remaining and it just stops there. When I restart client, it downloads few hundreds of blocks and stops again.
Any suggestions? There were no errors during compilation... And it's 32bit ubuntu 12.04

What does the output from the "getinfo" and "getpeerinfo" commands look like at the point it stops downloading?  How much CPU time is the yacoind process consuming at that point (ps -aux | grep yacoind)?  And what does the output from yacoind look like (start it with -printtoconsole so it doesn't become a daemon, and instead prints all it's messages directly)?
sr. member
Activity: 347
Merit: 250
Finally got my GPU hashing, but 4 times slower than mtrlt's.

7950 @ 207KH, (N = 256), Downgrade to 750MHZ Core Speed.

That approximately jives with what I benchmarked your code at (at least the code you posted earlier in the thread) after fixing the problems with it, if we take into account the different cards we're using (I tested on a 6950).  As a point of curiosity, how many hours did it take you up to the point you posted your code, and how many hours after that to figure out what was still wrong?
member
Activity: 77
Merit: 10
I have compiled Windmaster's client on my old notebook, but somehow I'm unable to download the whole blockchain flawlessly, it went fine at the beginning, but now I'm stuck at about 10000 blocks remaining and it just stops there. When I restart client, it downloads few hundreds of blocks and stops again.
Any suggestions? There were no errors during compilation... And it's 32bit ubuntu 12.04
sr. member
Activity: 425
Merit: 262
Finally got my GPU hashing, but 4 times slower than mtrlt's.

7950 @ 207KH, (N = 256), Downgrade to 750MHZ Core Speed.
newbie
Activity: 14
Merit: 0
hmm good future.
full member
Activity: 167
Merit: 100
Quoted for the lulz.

Merged mining draws 0 additional power so it is more money for no additional cost.

CPU mining draws a hell of a lot of power compared to CPU idling. 100W more does cost additional money.

$1 a day vs cost of powering 100W for 24 hours ( 0.24 kwh ) --- which is greater ?

Haha, allow me to quote you for the lulz as well: 100W * 24h = 0.24kWh? Where can I sign up for that electricity contract?! Wink

0.1kW * 24 hours = 2.4kWh. At 0.1-0.2$/kWh you end up paying between 0.24-0.48$/day.
IF you make 1$/day with 100W it would be profitable to mine yacoin ignoring depreciation etc.
I am paying close to 0.2$/kWh so I am only mining for fun when I do so.
Jump to: