void terminal_operation(ringbuf_t *tx, char *op0, char *op1, char *op2, char *op3) { if (!strcmp(op0, "help") || !strcmp(op0, "?")) { ringbuf_put_str(tx, "\t*****************************\n" "\t**** Charge Station 6.12 ****\n" "\t**** Made by @Ryokeri14 ****\n" "\t*****************************\n\n" "\tprint_time(t)\n" "\tadjust_time(at) [hand:y,M,d,h,m,s] [value(decimal)]\n" "\tsettings(set) [port:left(l),center(c),right(r)]\n\t\t[auto_stop(as),always_on(ao),integrating_reset(ir)]\n" "\toutput_data(od) <- stopped by pressing the Enter key\n" "\ttouch [reset(r),initialize(init)] [value(%)]\n" "\n\tfor Developper\n" "\tRESET();\n" "\tbootload\n" ); } terminal_time(tx, op0, op1, op2); if (!strcmp(op0, "RESET();")) { RESET(); } if (!strcmp(op0, "bootload")) { bootload(); } if (!strcmp(op0, "od") || !strcmp(op0, "output_data")) { terminal_data_out = 1; } if (!strcmp(op0, "")) { terminal_data_out = 0; } if (!strcmp(op0, "touch")) { if (!strcmp(op1, "initialize") || !strcmp(op1, "init")) { uint8_t percentage = atoi(op2); if (percentage <= 100) { ctmu_ratio = percentage; ctmu_set_ratio(ctmu_ratio); ringbuf_put_str(tx, "\tinitializing complete\n"); } else { ringbuf_put_str(tx, "\tinvalid data\n\tinitializing failed\n"); } } if (!strcmp(op1, "reset") || !strcmp(op1, "r")) { ctmu_set_ratio(ctmu_ratio); ringbuf_put_str(tx, "\tseting complete\n"); } } }
void frame_process() { if(!frame_check_sync()) return; Packet pkt = framebuf.packets[node_id]; if(!packet_check_checksum(&pkt)) { /*leds_set(255, 0, 0);*/ return; } switch(pkt.cmd_id) { case CMD_SYNC: return; case CMD_SET_ID: set_node_id(&pkt); break; case CMD_BOOTLOAD: bootload(&pkt); break; default: leds_set(pkt.r, pkt.g, pkt.b); sound_set(pkt.sound_id, pkt.sound_freq, pkt.sound_mag); } }
void console_main(void) { enum input_result_enum success; int option, tempint1, tempint2; char tempchar, finished=FALSE; do { TEXTOUT_P(PSTR("\r\n\ \r\n\ ****** Main Menu ******\r\n\ \r\n\ 1. Upload new firmware\r\n\ 2. Speed set\r\n\ 3. Envelope set\r\n\ 4. Enter\r\n\ 5. Exit\r\n\ 6. Finalize\r\n\ 7. Tone\r\n\ 8. Minor\r\n\ 9. Major\r\n\ 0. exit\r\n\ ")); success=getint(&option, 0, 99); //if input failed, exit menu, or refresh menu if(success == INPUT_RESULT_TIMEOUT || success == INPUT_RESULT_ABORTED) finished=TRUE; else if(success == INPUT_RESULT_OK) { switch(option) { case 1: bootload(); break; case 2: getint(&option, -40000, +40000); sheppard_speedset(option); break; case 3: TEXTOUT_P(PSTR("Center ")); getint(&tempint1, 0, 255); TEXTOUT_P(PSTR("Width ")); getint(&tempint2, 1, 200); sheppard_envelopeset(tempint1, tempint2); break; case 4: sheppard_enter(); break; case 5: sheppard_exit(); break; case 6: sheppard_finalize(); break; case 7: sheppard_styleset(STYLE_TONE); break; case 8: sheppard_styleset(STYLE_MINOR); break; case 9: sheppard_styleset(STYLE_MAJOR); break; case 10: while(1) { if(interface_update_speed) { interface_update_speed=FALSE; TEXTOUT("Speed = "); TEXTOUT_INT(interface_output.speed); TEXTOUT("\r\n"); time=2; while(time) main_fly(); }; if(interface_update_window) { interface_update_window=FALSE; if(interface_output.width_onoff) { TEXTOUT("Width = "); TEXTOUT_INT(interface_output.width); TEXTOUT("\r\nCenter = "); TEXTOUT_INT(interface_output.center); TEXTOUT("\r\n\r\n"); sheppard_envelopeset(interface_output.center, interface_output.width); } else { TEXTOUT("Window off\r\n"); sheppard_envelopeset(-1, 0); }; time=2; while(time) main_fly(); }; main_fly(); }; }; };//INPUT_RESULT_NIL will simply refresh }while(!finished); TEXTOUT_P(PSTR("Exit\r\n")); }