add_char
#define add_char(BASE, INDEX, LEN, C) do { if((INDEX) < (LEN)) (BASE)[(INDEX)++] = (C); }while(0);
add_char(unsigned curchar, unsigned map_idx, uint8_t *bytes, uint8_t *bytes_r)