FreeCalypso > hg > freecalypso-tools
comparison rvinterf/tmsh/l1resp.c @ 137:79e71354ba7b
fc-tmsh: ttr response handling implemented
author | Mychaela Falconia <falcon@freecalypso.org> |
---|---|
date | Mon, 20 Feb 2017 02:38:06 +0000 |
parents | da4d4af80fdd |
children | f5a797c291be |
comparison
equal
deleted
inserted
replaced
136:da4d4af80fdd | 137:79e71354ba7b |
---|---|
11 extern u_char rvi_msg[]; | 11 extern u_char rvi_msg[]; |
12 extern int rvi_msg_len; | 12 extern int rvi_msg_len; |
13 | 13 |
14 unsigned rftr_table_index, rftr_table_size; | 14 unsigned rftr_table_index, rftr_table_size; |
15 u_char rftr_table_data[MAX_RF_TABLE_SIZE]; | 15 u_char rftr_table_data[MAX_RF_TABLE_SIZE]; |
16 u_char ttr_ramp_data[32]; | |
16 | 17 |
17 void | 18 void |
18 l1tm_response_nodata(op) | 19 l1tm_response_nodata(op) |
19 char *op; | 20 char *op; |
20 { | 21 { |
301 dp = index(buf, '\0'); | 302 dp = index(buf, '\0'); |
302 for (j = 0; j < l; j++) { | 303 for (j = 0; j < l; j++) { |
303 if (j == 0 || j == 8) | 304 if (j == 0 || j == 8) |
304 *dp++ = ' '; | 305 *dp++ = ' '; |
305 sprintf(dp, " %02X", rftr_table_data[i++]); | 306 sprintf(dp, " %02X", rftr_table_data[i++]); |
307 dp += 3; | |
306 } | 308 } |
307 async_msg_output(buf); | 309 async_msg_output(buf); |
308 } | 310 } |
309 } | 311 } |
310 | 312 |
326 print_etm_pkt_raw("ttw response wrong length"); | 328 print_etm_pkt_raw("ttw response wrong length"); |
327 return; | 329 return; |
328 } | 330 } |
329 async_msg_output("ttw OK"); | 331 async_msg_output("ttw OK"); |
330 } | 332 } |
333 | |
334 void | |
335 l1tm_ttr_response() | |
336 { | |
337 char buf[80], *dp; | |
338 unsigned i; | |
339 | |
340 if (rvi_msg[3]) { | |
341 if (rvi_msg_len == 5) { | |
342 sprintf(buf, "ttr error %u (0x%02X)", | |
343 rvi_msg[3], rvi_msg[3]); | |
344 async_msg_output(buf); | |
345 } else | |
346 print_etm_pkt_raw("ttr long error response"); | |
347 return; | |
348 } | |
349 if (rvi_msg_len != 38) { | |
350 print_etm_pkt_raw("ttr response wrong length"); | |
351 return; | |
352 } | |
353 sprintf(buf, "ttr index %u:", rvi_msg[4]); | |
354 async_msg_output(buf); | |
355 bcopy(rvi_msg + 5, ttr_ramp_data, 32); | |
356 strcpy(buf, "ramp-up "); | |
357 dp = buf + 9; | |
358 for (i = 0; i < 16; i++) { | |
359 sprintf(dp, "%4u", ttr_ramp_data[i]); | |
360 dp += 4; | |
361 } | |
362 async_msg_output(buf); | |
363 strcpy(buf, "ramp-down"); | |
364 dp = buf + 9; | |
365 for (i = 0; i < 16; i++) { | |
366 sprintf(dp, "%4u", ttr_ramp_data[i+16]); | |
367 dp += 4; | |
368 } | |
369 async_msg_output(buf); | |
370 } |