Index: trunk/src/data.c =================================================================== --- trunk/src/data.c (revision 26181) +++ trunk/src/data.c (revision 26182) @@ -956,6 +956,14 @@ return NULL; } +char *pcb_data_name_by_addr(int addr, char *buf) +{ + if (addr == 0) *buf = '\0'; + else if (addr == 1) strcpy(buf, "pcb"); + else pcb_snprintf(buf, 16, "buffer#%d", addr-2); + return buf; +} + pcb_data_t *pcb_data_by_name(pcb_board_t *pcb, const char **name) { int dummy; Index: trunk/src/data.h =================================================================== --- trunk/src/data.h (revision 26181) +++ trunk/src/data.h (revision 26182) @@ -234,7 +234,10 @@ 2+ are buffer+2 */ int pcb_data_addr_by_name(pcb_board_t *pcb, const char **name); +/* Render data name in buf, which must be at least 16 bytes long. Returns buf. */ +char *pcb_data_name_by_addr(int addr, char *buf); + /* Convert data to name; either returns a static srting or fills in buf with dynamic data and returns buf. Buf needs to be at least 16 bytes long. Returns NULL if data is not the pcb or a buffer. */