//-------------------------------------------------------------------------- // do_echo -- // static void do_echo (int argc, char *argv[]) { bool newline = true; if (argc > 1) { int i = 1; if (strncmp (&argv[i][0], "-n", 2) == 0) { newline = false; i++; } for (; i < argc; i++) { diag_write_string (&argv[i][0]); if ((argc - i) > 1) diag_write_char (' '); } } if (newline) diag_write_char ('\n'); return; }
void change_state(int id, char newstate) { cyg_mutex_lock(&state_mutex); #ifdef CYG_HAL_MN10300_MN103002 if( pstate[id] == 'E' ) eaters--; if( newstate == 'E' ) eaters++; // led(eaters); #endif pstate[id] = newstate; diag_write_string(pstate); #if 0 diag_write_char(' '); diag_write_dec(Cyg_Scheduler::get_thread_switches()); #endif diag_write_char('\n'); cyg_mutex_unlock(&state_mutex); }