/*
* G_COLORS.ino
*
*
* tested on: https://wokwi.com/projects/
*
*
*
*/
//
struct stct_COLORS_t {
// 0 1 2 3 4 5 6 7 // items
const char *NAMES[46] = { "White", "Black", "Grey", "Blue", "Red", "Green", "Cyan", "Magenta", // 7
"Yellow", "Teal", "Orange", "Pink", "Purple", "Lt Grey", "Lt Blue", "Lt Red", // 15
"Lt Green", "Lt Cyan", "Lt Magenta", "Lt Yellow", "Lt Teal", "Lt Orange", "Lt Pink", "Lt Purple", // 23
"Medium Grey", "Medium Blue", "Medium Red", "Medium Green", "Medium Cyan", "Medium Magenta", "Medium Yellow", "Medium Teal", // 31
"Medium Orange", "Medium Pink", "Medium Purple", "Dk Grey", "Dk Blue", "Drk Red", "Dk Green", "Dk Cyan", // 39
"Dk Magenta", "Dk Yellow", "Dk Teal", "Dk Orange", "Dk Pink", "Dk Purple", // 46
}; // array size: 412Byte [412 is 103 times 4-Byte. NO padding]
// 0 1 2 3 4 5 6 7 // items
const uint16_t VALUES[46] = { 0XFFFF, 0X0000, 0XC618, 0X001F, 0XF800, 0X07E0, 0X07FF, 0XF81F, // 7
0XFFE0, 0X0438, 0XFD20, 0XF81F, 0X801F, 0XE71C, 0X73DF, 0XFBAE, // 15
0X7FEE, 0X77BF, 0XFBB7, 0XF7EE, 0X77FE, 0XFDEE, 0XFBBA, 0XD3BF, // 23
0X7BCF, 0X1016, 0XB000, 0X0584, 0X04B6, 0XB010, 0XAD80, 0X0594, // 31
0XB340, 0XB00E, 0X8816, 0X4A49, 0X0812, 0X9000, 0X04A3, 0X0372, // 39
0X900B, 0X94A0, 0X0452, 0X92E0, 0X9009, 0X8012 // 45
}; // array size: 46*2=92Byte [92 is 23 times 4-Byte. NO padding]
//
// struct data size: 412+92=504 [504 is 126 times 4-Byte. NO padding]
} G_COLORS;
//
void setup() {
//
Serial.begin(115200);
//
String sOutNum, s_TelNUM = "AbCd01234eFg56789HiJ";
sOutNum.reserve(20);
//
Serial.print(F("\nColor NAME (0) = ")); Serial.println(G_COLORS.NAMES[0]);
Serial.print(F("Color VALUE (0) = ")); Serial.println(G_COLORS.VALUES[0], HEX);
//
Serial.print(F("\nColor NAME (0) = ")); Serial.println(G_COLORS.NAMES[7]);
Serial.print(F("Color VALUE (0) = ")); Serial.println(G_COLORS.VALUES[7], HEX);
//
Serial.print(F("\nColor NAME (0) = ")); Serial.println(G_COLORS.NAMES[15]);
Serial.print(F("Color VALUE (0) = ")); Serial.println(G_COLORS.VALUES[15], HEX);
//
Serial.print(F("\nColor NAME (0) = ")); Serial.println(G_COLORS.NAMES[23]);
Serial.print(F("Color VALUE (0) = ")); Serial.println(G_COLORS.VALUES[23], HEX);
//
Serial.print(F("\nColor NAME (0) = ")); Serial.println(G_COLORS.NAMES[31]);
Serial.print(F("Color VALUE (0) = ")); Serial.println(G_COLORS.VALUES[31], HEX);
//
Serial.print(F("\nColor NAME (0) = ")); Serial.println(G_COLORS.NAMES[39]);
Serial.print(F("Color VALUE (0) = ")); Serial.println(G_COLORS.VALUES[39], HEX);
//
Serial.print(F("\nColor NAME (0) = ")); Serial.println(G_COLORS.NAMES[45]);
Serial.print(F("Color VALUE (0) = ")); Serial.println(G_COLORS.VALUES[45], HEX);
//
Serial.print(F("\nG_COLORS.NAMES array size: ")); Serial.println(sizeof(G_COLORS.NAMES));// / sizeof(G_COLORS.NAMES[0]));
Serial.print(F("G_COLORS.VALUES array size: ")); Serial.println(sizeof(G_COLORS.VALUES));// / sizeof(G_COLORS.VALUES[0]));
//
// 0 1 2 3 4 5 6 7 // items
const char *newNAMES[] = { "White", "Black", "Grey", "Blue", "Red", "Green", "Cyan", "Magenta", // 7
"Yellow", "Teal", "Orange", "Pink", "Purple", "Lt Grey", "Lt Blue", "Lt Red", // 15
"Lt Green", "Lt Cyan", "Lt Magenta", "Lt Yellow", "Lt Teal", "Lt Orange", "Lt Pink", "Lt Purple", // 23
"Medium Grey", "Medium Blue", "Medium Red", "Medium Green", "Medium Cyan", "Medium Magenta", "Medium Yellow", "Medium Teal", // 31
"Medium Orange", "Medium Pink", "Medium Purple", "Dk Grey", "Dk Blue", "Drk Red", "Dk Green", "Dk Cyan", // 39
"Dk Magenta", "Dk Yellow", "Dk Teal", "Dk Orange", "Dk Pink", "Dk Purple", // 46
}; // array size: 412Byte
//
uint8_t i = 0;
uint16_t totByte = 0, cntr = 0;
//
String tmpStr;
tmpStr.reserve(15);
//
for (i = 0; i < 46; i++) {
//
tmpStr = String(newNAMES[i]);
cntr = tmpStr.length();
totByte += cntr + 1; // --> +1 --> C-string ['\0']
//
Serial.print(F("newNAMES[")); Serial.print(i); Serial.print(F("] = "));
Serial.print(cntr); Serial.print(F(" - ")); Serial.println(tmpStr);
//
} // for
//
Serial.print(F("Local newNAMES array size: ")); Serial.println(totByte);
Serial.println("\n");
//
i = 0;
totByte = 0, cntr = 0;
for (i = 0; i < 46; i++) {
//
tmpStr = String(G_COLORS.NAMES[i]);
cntr = tmpStr.length();
totByte += cntr + 1; // --> +1 --> C-string ['\0']
//
Serial.print(F("G_COLORS.NAMES[")); Serial.print(i); Serial.print(F("] = "));
Serial.print(cntr); Serial.print(F(" - ")); Serial.println(tmpStr);
//
} // for
//
Serial.print(F("G_COLORS.NAMES array size: ")); Serial.println(totByte);
Serial.println("\n");
//
i = 0;
totByte = 0, cntr = 0;
for (i = 0; i < 46; i++) {
//
//tmpStr = String(G_COLORS.VALUES[i]);
cntr = sizeof(G_COLORS.VALUES[i]);//tmpStr.length();
totByte += cntr;// + 1; // --> +1 --> C-string ['\0']
//
Serial.print(F("G_COLORS.VALUES[")); Serial.print(i); Serial.print(F("] = "));
Serial.print(cntr); Serial.print(F(" - ")); Serial.println(G_COLORS.VALUES[i], HEX);
//
} // for
//
Serial.print(F("G_COLORS.VALUES array size: ")); Serial.println(totByte);
Serial.println();
//
} // setup()
void loop() {
//
delay(50);
//
} // loop()
// **********************************************************************************************************************
// *** Serial OUTPUT:
//
// ets Jul 29 2019 12:21:46
//
// rst:0x1 (POWERON_RESET),boot:0x13 (SPI_FAST_FLASH_BOOT)
// configsip: 0, SPIWP:0xee
// clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00
// mode:DIO, clock div:2
// load:0x3fff0030,len:1156
// load:0x40078000,len:11456
// ho 0 tail 12 room 4
// load:0x40080400,len:2972
// entry 0x400805dc
//
//
// Color NAME (0) = White
// Color VALUE (0) = FFFF
//
// Color NAME (0) = Magenta
// Color VALUE (0) = F81F
//
// Color NAME (0) = Lt Red
// Color VALUE (0) = FBAE
//
// Color NAME (0) = Lt Purple
// Color VALUE (0) = D3BF
//
// Color NAME (0) = Medium Teal
// Color VALUE (0) = 594
//
// Color NAME (0) = Dk Cyan
// Color VALUE (0) = 372
//
// Color NAME (0) = Dk Purple
// Color VALUE (0) = 8012
//
// G_COLORS.NAMES array size: 188
// G_COLORS.VALUES array size: 92
//
// ewNAMES[0] = 5 - White
// newNAMES[1] = 5 - Black
// newNAMES[2] = 4 - Grey
// newNAMES[3] = 4 - Blue
// newNAMES[4] = 3 - Red
// newNAMES[5] = 5 - Green
// newNAMES[6] = 4 - Cyan
// newNAMES[7] = 7 - Magenta
// newNAMES[8] = 6 - Yellow
// newNAMES[9] = 4 - Teal
// newNAMES[10] = 6 - Orange
// newNAMES[11] = 4 - Pink
// newNAMES[12] = 6 - Purple
// newNAMES[13] = 7 - Lt Grey
// newNAMES[14] = 7 - Lt Blue
// newNAMES[15] = 6 - Lt Red
// newNAMES[16] = 8 - Lt Green
// newNAMES[17] = 7 - Lt Cyan
// newNAMES[18] = 10 - Lt Magenta
// newNAMES[19] = 9 - Lt Yellow
// newNAMES[20] = 7 - Lt Teal
// newNAMES[21] = 9 - Lt Orange
// newNAMES[22] = 7 - Lt Pink
// newNAMES[23] = 9 - Lt Purple
// newNAMES[24] = 11 - Medium Grey
// newNAMES[25] = 11 - Medium Blue
// newNAMES[26] = 10 - Medium Red
// newNAMES[27] = 12 - Medium Green
// newNAMES[28] = 11 - Medium Cyan
// newNAMES[29] = 14 - Medium Magenta
// newNAMES[30] = 13 - Medium Yellow
// newNAMES[31] = 11 - Medium Teal
// newNAMES[32] = 13 - Medium Orange
// newNAMES[33] = 11 - Medium Pink
// newNAMES[34] = 13 - Medium Purple
// newNAMES[35] = 7 - Dk Grey
// newNAMES[36] = 7 - Dk Blue
// newNAMES[37] = 6 - Dk Red
// newNAMES[38] = 8 - Dk Green
// newNAMES[39] = 7 - Dk Cyan
// newNAMES[40] = 10 - Dk Magenta
// newNAMES[41] = 9 - Dk Yellow
// newNAMES[42] = 7 - Dk Teal
// newNAMES[43] = 9 - Dk Orange
// newNAMES[44] = 7 - Dk Pink
// newNAMES[45] = 9 - Dk Purple
// Local newNAMES array size: 414
//
//
// G_COLORS.NAMES[0] = 5 - White
// G_COLORS.NAMES[1] = 5 - Black
// G_COLORS.NAMES[2] = 4 - Grey
// G_COLORS.NAMES[3] = 4 - Blue
// G_COLORS.NAMES[4] = 3 - Red
// G_COLORS.NAMES[5] = 5 - Green
// G_COLORS.NAMES[6] = 4 - Cyan
// G_COLORS.NAMES[7] = 7 - Magenta
// G_COLORS.NAMES[8] = 6 - Yellow
// G_COLORS.NAMES[9] = 4 - Teal
// G_COLORS.NAMES[10] = 6 - Orange
// G_COLORS.NAMES[11] = 4 - Pink
// G_COLORS.NAMES[12] = 6 - Purple
// G_COLORS.NAMES[13] = 7 - Lt Grey
// G_COLORS.NAMES[14] = 7 - Lt Blue
// G_COLORS.NAMES[15] = 6 - Lt Red
// G_COLORS.NAMES[16] = 8 - Lt Green
// G_COLORS.NAMES[17] = 7 - Lt Cyan
// G_COLORS.NAMES[18] = 10 - Lt Magenta
// G_COLORS.NAMES[19] = 9 - Lt Yellow
// G_COLORS.NAMES[20] = 7 - Lt Teal
// G_COLORS.NAMES[21] = 9 - Lt Orange
// G_COLORS.NAMES[22] = 7 - Lt Pink
// G_COLORS.NAMES[23] = 9 - Lt Purple
// G_COLORS.NAMES[24] = 11 - Medium Grey
// G_COLORS.NAMES[25] = 11 - Medium Blue
// G_COLORS.NAMES[26] = 10 - Medium Red
// G_COLORS.NAMES[27] = 12 - Medium Green
// G_COLORS.NAMES[28] = 11 - Medium Cyan
// G_COLORS.NAMES[29] = 14 - Medium Magenta
// G_COLORS.NAMES[30] = 13 - Medium Yellow
// G_COLORS.NAMES[31] = 11 - Medium Teal
// G_COLORS.NAMES[32] = 13 - Medium Orange
// G_COLORS.NAMES[33] = 11 - Medium Pink
// G_COLORS.NAMES[34] = 13 - Medium Purple
// G_COLORS.NAMES[35] = 7 - Dk Grey
// G_COLORS.NAMES[36] = 7 - Dk Blue
// G_COLORS.NAMES[37] = 6 - Dk Red
// G_COLORS.NAMES[38] = 8 - Dk Green
// G_COLORS.NAMES[39] = 7 - Dk Cyan
// G_COLORS.NAMES[40] = 10 - Dk Magenta
// G_COLORS.NAMES[41] = 9 - Dk Yellow
// G_COLORS.NAMES[42] = 7 - Dk Teal
// G_COLORS.NAMES[43] = 9 - Dk Orange
// G_COLORS.NAMES[44] = 7 - Dk Pink
// G_COLORS.NAMES[45] = 9 - Dk Purple
// G_COLORS.NAMES array size: 414
//
//
// G_COLORS.VALUES[0] = 2 - FFFF
// G_COLORS.VALUES[1] = 2 - 0
// G_COLORS.VALUES[2] = 2 - C618
// G_COLORS.VALUES[3] = 2 - 1F
// G_COLORS.VALUES[4] = 2 - F800
// G_COLORS.VALUES[5] = 2 - 7E0
// G_COLORS.VALUES[6] = 2 - 7FF
// G_COLORS.VALUES[7] = 2 - F81F
// G_COLORS.VALUES[8] = 2 - FFE0
// G_COLORS.VALUES[9] = 2 - 438
// G_COLORS.VALUES[10] = 2 - FD20
// G_COLORS.VALUES[11] = 2 - F81F
// G_COLORS.VALUES[12] = 2 - 801F
// G_COLORS.VALUES[13] = 2 - E71C
// G_COLORS.VALUES[14] = 2 - 73DF
// G_COLORS.VALUES[15] = 2 - FBAE
// G_COLORS.VALUES[16] = 2 - 7FEE
// G_COLORS.VALUES[17] = 2 - 77BF
// G_COLORS.VALUES[18] = 2 - FBB7
// G_COLORS.VALUES[19] = 2 - F7EE
// G_COLORS.VALUES[20] = 2 - 77FE
// G_COLORS.VALUES[21] = 2 - FDEE
// G_COLORS.VALUES[22] = 2 - FBBA
// G_COLORS.VALUES[23] = 2 - D3BF
// G_COLORS.VALUES[24] = 2 - 7BCF
// G_COLORS.VALUES[25] = 2 - 1016
// G_COLORS.VALUES[26] = 2 - B000
// G_COLORS.VALUES[27] = 2 - 584
// G_COLORS.VALUES[28] = 2 - 4B6
// G_COLORS.VALUES[29] = 2 - B010
// G_COLORS.VALUES[30] = 2 - AD80
// G_COLORS.VALUES[31] = 2 - 594
// G_COLORS.VALUES[32] = 2 - B340
// G_COLORS.VALUES[33] = 2 - B00E
// G_COLORS.VALUES[34] = 2 - 8816
// G_COLORS.VALUES[35] = 2 - 4A49
// G_COLORS.VALUES[36] = 2 - 812
// G_COLORS.VALUES[37] = 2 - 9000
// G_COLORS.VALUES[38] = 2 - 4A3
// G_COLORS.VALUES[39] = 2 - 372
// G_COLORS.VALUES[40] = 2 - 900B
// G_COLORS.VALUES[41] = 2 - 94A0
// G_COLORS.VALUES[42] = 2 - 452
// G_COLORS.VALUES[43] = 2 - 92E0
// G_COLORS.VALUES[44] = 2 - 9009
// G_COLORS.VALUES[45] = 2 - 8012
// G_COLORS.VALUES array size: 92
//
// **********************************************************************************************************************