From 073f586c98da3c3c6cf5d813d25ed88411b2736d Mon Sep 17 00:00:00 2001 From: Markus Alvila <44319370+RareData@users.noreply.github.com> Date: Tue, 1 Jun 2021 11:49:39 +0200 Subject: [PATCH] Add support for Flare Network (FLR) (#148) Signed-off-by: RareData <44319370+RareData@users.noreply.github.com> --- Makefile | 12 ++++++++++-- icons/flare.png | Bin 0 -> 1208 bytes icons/nanos_app_flare.gif | Bin 0 -> 70 bytes icons/nanox_app_flare.gif | Bin 0 -> 53 bytes src/chainConfig.h | 3 ++- src/main.c | 6 ++++++ src/tokens.c | 2 ++ src/tokens.h | 2 ++ 8 files changed, 22 insertions(+), 3 deletions(-) create mode 100644 icons/flare.png create mode 100644 icons/nanos_app_flare.gif create mode 100644 icons/nanox_app_flare.gif diff --git a/Makefile b/Makefile index 258a4f7..b98bd83 100755 --- a/Makefile +++ b/Makefile @@ -188,9 +188,17 @@ else ifeq ($(CHAIN),thundercore) APP_LOAD_PARAMS += --path "44'/1001'" DEFINES += CHAINID_UPCASE=\"THUNDERCORE\" CHAINID_COINNAME=\"TT\" CHAIN_KIND=CHAIN_KIND_THUNDERCORE CHAIN_ID=108 APPNAME = "ThunderCore" +else ifeq ($(CHAIN),flare) +APP_LOAD_PARAMS += --path "44'/554'" --path "44'/60'" +DEFINES += CHAINID_UPCASE=\"FLARE\" CHAINID_COINNAME=\"FLR\" CHAIN_KIND=CHAIN_KIND_FLARE CHAIN_ID=14 +APPNAME = "Flare" +else ifeq ($(CHAIN),flare_coston) +APP_LOAD_PARAMS += --path "44'/554'" --path "44'/60'" +DEFINES += CHAINID_UPCASE=\"FLARE\" CHAINID_COINNAME=\"FLR\" CHAIN_KIND=CHAIN_KIND_FLARE CHAIN_ID=16 +APPNAME = "Flare Coston" else ifeq ($(filter clean,$(MAKECMDGOALS)),) -$(error Unsupported CHAIN - use ethereum, ropsten, ethereum_classic, expanse, poa, artis_sigma1, artis_tau1, rsk, rsk_testnet, ubiq, wanchain, kusd, musicoin, pirl, akroma, atheios, callisto, ethersocial, ellaism, ether1, ethergem, gochain, mix, reosc, hpb, tomochain, tobalaba, dexon, volta, ewc, webchain, thundercore) +$(error Unsupported CHAIN - use ethereum, ropsten, ethereum_classic, expanse, poa, artis_sigma1, artis_tau1, rsk, rsk_testnet, ubiq, wanchain, kusd, musicoin, pirl, akroma, atheios, callisto, ethersocial, ellaism, ether1, ethergem, gochain, mix, reosc, hpb, tomochain, tobalaba, dexon, volta, ewc, webchain, thundercore, flare, flare_coston) endif endif @@ -326,4 +334,4 @@ include $(BOLOS_SDK)/Makefile.rules dep/%.d: %.c Makefile listvariants: - @echo VARIANTS CHAIN ethereum ropsten ethereum_classic expanse poa rsk rsk_testnet ubiq wanchain pirl akroma atheios callisto ethersocial ether1 gochain musicoin ethergem mix ellaism reosc hpb tomochain dexon volta ewc thundercore + @echo VARIANTS CHAIN ethereum ropsten ethereum_classic expanse poa rsk rsk_testnet ubiq wanchain pirl akroma atheios callisto ethersocial ether1 gochain musicoin ethergem mix ellaism reosc hpb tomochain dexon volta ewc thundercore flare flare_coston diff --git a/icons/flare.png b/icons/flare.png new file mode 100644 index 0000000000000000000000000000000000000000..57d5519e64308a092afb46249b43739fe31d449c GIT binary patch literal 1208 zcmV;p1V{UcP)F1qBNa2ooCw3l9hq z8VVdH3?VE72nz=f76}v_2o)a+A1VqNBLM;f0|^WT3J(Pf4+aht2oxL%6dnl`9t#^M z3>+v694ZSLB^nwt5FR`M0s{pL5D63<3L7N}8z=@169x_x2ND_y6&?&2Bme*a|Ns9H z5fN2YRc2;p?(Xh8J39#p3HbQl$4YyDJdHp8~XbC>+9>=+uORjx}&3`hlhuJe0)boM?pbB z7Z(@S*4E6-%*)Hm!NI}6z`&=cr>3T+rKP29ZEdiEkRJd505fz_PE!Ep=gZ@}snME; z>3#hB_1T2YkueqJmUm$oNd4{I+NOGMZbCmUED8ww({@T5!nTWMDkih1a{vGX4oO5o zRA}Dq+6hzIKoke?R}-!XBFL>GA}C&M?SCn92r3A8U-jtSe*Z7gnRKiI8)CBAbe!?` z1^$!S&F1C3r7>2P76S>dNAYE|ZwzF!KE>lr1QwT8$hw)NH!=qc<`i#ohAi0d`$DiG zLeLkeg}uVHQWPR8XTjgh$}e-2Te^A zM>GgW1*4oLUxmYhBg>zfg5##PhE5R;5@^fxlm}9H1{MU8JXw~s3Q5%1w{4mn}{p<5#omtYv5WgO>2Ci1+h}lrV z5TAacguqihVzyK+fpiM3K{_9WAzhf}A>BNwkWQruNH_5s^3pIG&dULr$2vV~B+`*)tr7h4kyp+!e$^+RWVEy;w+Xo0&T5LoB4q zOzoE;7*a7S;@Um&W2L!m=<>^P=eG6&56IV${}JL!N#sg#=SrFCPQk6fK&uRgDC7Z8 zxpT?b?(rR*;NdqUs)y{alNQ8zxj&|-j~|p1h)ZyPvA>PfJwm2=&4M0#;u^y8ytYSW z;9Cx11zrQ^W}xo_QCf*80?ALJaGPrVfsz4&^rl)8Bd*w^E<~;K8=d_N_TUplh4dkc z4F{*RR7x!r?at!r_R19WGxek+DC` W9rQ9YJ*V;j0000kind) { @@ -354,6 +357,9 @@ tokenDefinition_t *getKnownToken(uint8_t *contractAddress) { break; case CHAIN_KIND_THUNDERCORE: currentToken = (tokenDefinition_t *) PIC(&TOKENS_THUNDERCORE[i]); + break; + case CHAIN_KIND_FLARE: + currentToken = (tokenDefinition_t *) PIC(&TOKENS_FLARE[i]); break } if (memcmp(currentToken->address, tmpContent.txContent.destination, 20) == 0) { diff --git a/src/tokens.c b/src/tokens.c index 9c019f7..c1a5b49 100644 --- a/src/tokens.c +++ b/src/tokens.c @@ -4562,4 +4562,6 @@ const tokenDefinition_t const TOKENS_WEBCHAIN[NUM_TOKENS_WEBCHAIN] = {}; const tokenDefinition_t const TOKENS_THUNDERCORE[NUM_TOKENS_THUNDERCORE] = {}; +const tokenDefinition_t const TOKENS_FLARE[NUM_TOKENS_FLARE] = {}; + #endif diff --git a/src/tokens.h b/src/tokens.h index 06a6677..31ea004 100644 --- a/src/tokens.h +++ b/src/tokens.h @@ -71,6 +71,7 @@ extern tokenDefinition_t const TOKENS_EXTRA[NUM_TOKENS_EXTRA]; #define NUM_TOKENS_ARTIS_TAU1 0 #define NUM_TOKENS_WEBCHAIN 0 #define NUM_TOKENS_THUNDERCORE 0 +#define NUM_TOKENS_FLARE 0 extern tokenDefinition_t const TOKENS_AKROMA[NUM_TOKENS_AKROMA]; extern tokenDefinition_t const TOKENS_ELLAISM[NUM_TOKENS_ELLAISM]; @@ -102,6 +103,7 @@ extern tokenDefinition_t const TOKENS_ARTIS_SIGMA1[NUM_TOKENS_ARTIS_SIGMA1]; extern tokenDefinition_t const TOKENS_ARTIS_TAU1[NUM_TOKENS_ARTIS_TAU1]; extern tokenDefinition_t const TOKENS_WEBCHAIN[NUM_TOKENS_WEBCHAIN]; extern tokenDefinition_t const TOKENS_THUNDERCORE[NUM_TOKENS_THUNDERCORE]; +extern tokenDefinition_t const TOKENS_FLARE[NUM_TOKENS_FLARE]; #endif /* HAVE_TOKENS_LIST */