void con_putc( char c ) { switch( c ) { case '\f' : con_clrscr(); return ; case '\n' : con_nl(); return ; } con_addchar(c); }
void syslog_draw_poll() { if( !syslog_redraw_flag ) { return ; } int con_height = 10 ; syslog_redraw_flag = 0 ; con_clrscr(); int idx = line_poi ; idx += MAXLINES ; idx -= con_height ; idx %= MAXLINES ; int pos = lines[idx]; int i = pos ; int linecnt = 0 ; // int i = begin ; while(1) { i = wrap(i); if( i == end ) { break ; } char c = syslog_buf[i]; if( c == '\n' ) { linecnt++ ; con_nl(); } else { con_printc(c); } i++ ; } for(int i=linecnt;i<con_height;i++) { con_nl(); } }
void netmon1_update() { progress++ ; progress %= sizeof( progress_info ) - 1 ; int progress2 = progress ; // sample (thread safe) progress2 %= sizeof( progress_info ) - 1 ; char c = progress_info[progress2]; //int dst = g_dst ; con_clrscr(); con_printf("%c|%02d|%2d|%2d|%4d\n", c, md380_f_4225_operatingmode & 0x7F, gui_opmode2, *mode3, *cntr2 ); #ifdef FW_D13_020 { uint8_t *chan = (uint8_t *)0x2001e8c1 ; con_printf("ch: %d ", *chan ); } { // current zone name. wchar_t *p = (void*)0x2001cddc ; con_puts("zn:"); con_putsw(p); con_nl(); } { // current channel name. wchar_t *p = (void*)0x2001e1f4 ; con_puts("cn:"); con_putsw(p); con_nl(); } #endif { char *str = "?" ; switch( last_radio_event ) { case 0x1 : str = "nosig" ; break ; case 0x2 : str = "tx denied" ; break ; case 0x3 : str = "FM" ; break ; case 0x4 : str = "Out_Of_SYNC" ; // TS 102 361-2 clause p 5.2.1.3.2 break ; case 0x5 : str = "num5" ; break ; case 0x7 : str = "data_idle/csbk_rx" ; break ; case 0x8 : str = "Other_Call" ; // TS 102 361-2 clause p 5.2.1.3.2 break ; case 0x9 : str = "My_Call" ; // TS 102 361-2 clause p 5.2.1.3.2 break ; case 0xa : str = "rx silence" ; break ; case 0xd : str = "num13 0xd" ; break ; case 0xe : str = "Wait_TX_Resp" ; break ; } con_printf("radio: %s\n", str); } { con_printf("re:%02x be:%02x e3:%02x e4:%02x\ne5:%02x ", last_radio_event, last_event2, last_event3, last_event4, last_event5 ); } print_smeter(); { uint8_t *p = (void*)0x2001e5f0 ; con_printf("st: %2x %2x %2x %2x\n", p[0], p[1], p[2], p[3]); } #ifdef FW_D13_020 { // only valid when transmitting or receiving. uint32_t *recv = (void*)0x2001e5e4 ; con_printf("%d\n", *recv); } #endif }