From 24433ce7d4a8355098d8a197ce99650d0c41d7fb Mon Sep 17 00:00:00 2001 From: Nicemanss Date: Fri, 9 Nov 2018 00:25:04 +0100 Subject: [PATCH] Add support for High Performance Blockchain homepage: https://hpb.io block explorer: https://hpbscan.org network statistics : https://hpbscan.org git: https://github.com/hpb-project slip0044 index : 269 chain ID: 269 --- Makefile | 9 ++++++--- blue_app_hpb.gif | Bin 0 -> 579 bytes glyphs/blue_badge_hpb.gif | Bin 0 -> 434 bytes glyphs/nanos_badge_hpb.gif | Bin 0 -> 84 bytes hpb.png | Bin 0 -> 4172 bytes nanos_app_hpb.gif | Bin 0 -> 79 bytes src/chainConfig.h | 3 ++- src/main.c | 8 +++++++- src/tokens.c | 2 ++ src/tokens.h | 2 ++ 10 files changed, 19 insertions(+), 5 deletions(-) create mode 100644 blue_app_hpb.gif create mode 100644 glyphs/blue_badge_hpb.gif create mode 100644 glyphs/nanos_badge_hpb.gif create mode 100644 hpb.png create mode 100644 nanos_app_hpb.gif diff --git a/Makefile b/Makefile index d078c09..bcba319 100755 --- a/Makefile +++ b/Makefile @@ -121,10 +121,13 @@ else ifeq ($(CHAIN),reosc) APP_LOAD_PARAMS += --path "44'/2894'" DEFINES += CHAINID_UPCASE=\"REOSC\" CHAINID_COINNAME=\"REOSC\" CHAIN_KIND=CHAIN_KIND_REOSC CHAIN_ID=2894 APPNAME = "REOSC" +else ifeq ($(CHAIN),hpb) +APP_LOAD_PARAMS += --path "44'/269'" +DEFINES += CHAINID_UPCASE=\"HPB\" CHAINID_COINNAME=\"HPB\" CHAIN_KIND=CHAIN_KIND_HPB CHAIN_ID=269 +APPNAME = "HPB" else ifeq ($(filter clean,$(MAKECMDGOALS)),) -$(error Unsupported CHAIN - use ethereum, ethereum_classic, expanse, poa, rsk, rsk_testnet, ubiq, wanchain, kusd, musicoin, pirl, akroma, atheios, callisto, ethersocial, ellaism, ether1, ethergem, gochain, mix, reosc) -endif +$(error Unsupported CHAIN - use ethereum, ethereum_classic, expanse, poa, rsk, rsk_testnet, ubiq, wanchain, kusd, musicoin, pirl, akroma, atheios, callisto, ethersocial, ellaism, ether1, ethergem, gochain, mix, reosc, hpb) endif APP_LOAD_PARAMS += $(APP_LOAD_FLAGS) --path "44'/1'" @@ -215,4 +218,4 @@ include $(BOLOS_SDK)/Makefile.rules dep/%.d: %.c Makefile listvariants: - @echo VARIANTS CHAIN ethereum ethereum_classic expanse poa rsk rsk_testnet ubiq wanchain kusd pirl akroma atheios callisto ethersocial ether1 gochain musicoin ethergem mix ellaism reosc + @echo VARIANTS CHAIN ethereum ethereum_classic expanse poa rsk rsk_testnet ubiq wanchain kusd pirl akroma atheios callisto ethersocial ether1 gochain musicoin ethergem mix ellaism reosc hpb diff --git a/blue_app_hpb.gif b/blue_app_hpb.gif new file mode 100644 index 0000000000000000000000000000000000000000..d15b589b0506044501db68b540976d554e575b81 GIT binary patch literal 579 zcmV-J0=)f4Nk%w1VKM+R0J8u9XlUq6Oy$_v_=JS)wYBq|o$<@d`1AAq=jZv3j_i?< z@2IHpczEmi`T76<|2sS4A^8LV00000EC2ui05SkF000F4u*pfASOdJxyZ6Ab2vun| zND_Q(%LWQ^mZ@vsT|7&|ivP9%=|lh;Zv>Oz$aD=S2w!u`3CJc1s+N<0ZoiLf7Od?y zq)Y&#z-AB7zkr3gHaPBh{DA?#U5r+F2nGvn1qgRNMi@W~d3Og29)S*uKN&v?cZ3E9 zctsrppFkQo0iKc^3Z4$B9IOrlWE+kK9{`>QXm*gLV4e&t33s3yb_RBqTMP~eE{F#m zhz5bSUv>o>0RU*44y6Eh+2OHU0e1tPc?PoN!4JHp1?& zKpS2TSOM_%tpfoE*`|=IB=CU{L3m_!u;Yr!uu5?703ghBKqCioCYkiB*zeH+0&p%u zq#|lbsDgqj0wCCMil%=LCT4(Cu+RuWTF6P^)$R@hNB4+Eq+(~m26EQOX#hZgCjtWc z`W!*|z+S0y4y?AA2b7AV10oYjqt^maN-fC*`0HSAYKL&q$eb$JVQ@JQRc8gwgGOIk zDVlWssOZApzMFWE={}-0Rjam`#IAD zKpRY2WQ;(oBrfaSWc{GUjan3*=YWyq1YWBGc`v&WZ#h}l+21H;l*}#cxK_oL1WmTt|>n7;KHlG>iafAxADqRKGQ7Bi=6zZGhHkdbSgE(#f zEKq7UXbdh=4uE|jb_H8P41lCRC; z!$&rBuJOq7r$?~$)yv>49Vw*goJYhYjIG z450!7dKhMR4#8LH@P%{mF%h3OAt`QiAW=a{a@#;Kf|yB0#);u5%dc5!EN%xv ca26r%)G232<*-UsFIv8IX^>UHHbVjcJMdn{QUCw| literal 0 HcmV?d00001 diff --git a/glyphs/nanos_badge_hpb.gif b/glyphs/nanos_badge_hpb.gif new file mode 100644 index 0000000000000000000000000000000000000000..ee2a1f0c87b30cd1e7441bdd2d02910e83072f55 GIT binary patch literal 84 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 a4lSv4G@JO~x^DQ7C2LuZ7X>jeSOWmreik+W literal 0 HcmV?d00001 diff --git a/src/chainConfig.h b/src/chainConfig.h index 3e16948..be11263 100644 --- a/src/chainConfig.h +++ b/src/chainConfig.h @@ -24,7 +24,8 @@ typedef enum chain_kind_e { CHAIN_KIND_ATHEIOS, CHAIN_KIND_GOCHAIN, CHAIN_KIND_MIX, - CHAIN_KIND_REOSC + CHAIN_KIND_REOSC, + CHAIN_KIND_HPB } chain_kind_t; typedef struct chain_config_s { diff --git a/src/main.c b/src/main.c index 92a3d56..637b12d 100644 --- a/src/main.c +++ b/src/main.c @@ -1520,6 +1520,9 @@ tokenDefinition_t* getKnownToken() { case CHAIN_KIND_REOSC: numTokens = NUM_TOKENS_REOSC; break; + case CHAIN_KIND_HPB: + numTokens = NUM_TOKENS_HPB; + break; } for (i=0; ikind) { @@ -1583,7 +1586,10 @@ tokenDefinition_t* getKnownToken() { case CHAIN_KIND_REOSC: currentToken = (tokenDefinition_t *)PIC(&TOKENS_REOSC[i]); break; - } + case CHAIN_KIND_HPB: + currentToken = (tokenDefinition_t *)PIC(&TOKENS_HPB[i]); + break; + } if (os_memcmp(currentToken->address, tmpContent.txContent.destination, 20) == 0) { return currentToken; } diff --git a/src/tokens.c b/src/tokens.c index 8d9b3d6..052ffe7 100644 --- a/src/tokens.c +++ b/src/tokens.c @@ -1173,3 +1173,5 @@ const tokenDefinition_t const TOKENS_GOCHAIN[NUM_TOKENS_GOCHAIN] = {}; const tokenDefinition_t const TOKENS_MIX[NUM_TOKENS_MIX] = {}; const tokenDefinition_t const TOKENS_REOSC[NUM_TOKENS_REOSC] = {}; + +const tokenDefinition_t const TOKENS_HPB[NUM_TOKENS_HPB] = {}; diff --git a/src/tokens.h b/src/tokens.h index e51d85a..cca47e1 100644 --- a/src/tokens.h +++ b/src/tokens.h @@ -43,6 +43,7 @@ typedef struct tokenDefinition_t { #define NUM_TOKENS_GOCHAIN 0 #define NUM_TOKENS_MIX 0 #define NUM_TOKENS_REOSC 0 +#define NUM_TOKENS_HPB 0 extern tokenDefinition_t const TOKENS_AKROMA[NUM_TOKENS_AKROMA]; extern tokenDefinition_t const TOKENS_ELLAISM[NUM_TOKENS_ELLAISM]; @@ -64,3 +65,4 @@ extern tokenDefinition_t const TOKENS_ATHEIOS[NUM_TOKENS_ATHEIOS]; extern tokenDefinition_t const TOKENS_GOCHAIN[NUM_TOKENS_GOCHAIN]; extern tokenDefinition_t const TOKENS_MIX[NUM_TOKENS_MIX]; extern tokenDefinition_t const TOKENS_REOSC[NUM_TOKENS_REOSC]; +extern tokenDefinition_t const TOKENS_HPB[NUM_TOKENS_HPB];