mirror of
https://github.com/Dev-KATECH/ADM.git
synced 2026-05-17 01:43:59 +09:00
645 lines
10 KiB
Plaintext
645 lines
10 KiB
Plaintext
cmd_main ()
|
|
{
|
|
int argc;
|
|
int ret;
|
|
char * argv[8];
|
|
char * tmp;
|
|
|
|
<bb 2> :
|
|
# DEBUG BEGIN_STMT
|
|
# DEBUG BEGIN_STMT
|
|
# DEBUG BEGIN_STMT
|
|
ret = get_line (128);
|
|
# DEBUG BEGIN_STMT
|
|
if (ret == 0)
|
|
goto <bb 3>; [INV]
|
|
else
|
|
goto <bb 12>; [INV]
|
|
|
|
<bb 3> :
|
|
# DEBUG BEGIN_STMT
|
|
_1 = gb.cmd_buf[0];
|
|
if (_1 == 0)
|
|
goto <bb 4>; [INV]
|
|
else
|
|
goto <bb 5>; [INV]
|
|
|
|
<bb 4> :
|
|
# DEBUG BEGIN_STMT
|
|
debug_printf ("%s", "MR $ ");
|
|
# DEBUG BEGIN_STMT
|
|
// predicted unlikely by early return (on trees) predictor.
|
|
goto <bb 13>; [INV]
|
|
|
|
<bb 5> :
|
|
# DEBUG BEGIN_STMT
|
|
tmp = strtok (&gb.cmd_buf, " \r\n\t");
|
|
# DEBUG BEGIN_STMT
|
|
argc = 0;
|
|
goto <bb 8>; [INV]
|
|
|
|
<bb 6> :
|
|
# DEBUG BEGIN_STMT
|
|
if (tmp != 0B)
|
|
goto <bb 7>; [INV]
|
|
else
|
|
goto <bb 9>; [INV]
|
|
|
|
<bb 7> :
|
|
# DEBUG BEGIN_STMT
|
|
argv[argc] = tmp;
|
|
# DEBUG BEGIN_STMT
|
|
tmp = strtok (0B, " \r\n\t");
|
|
# DEBUG BEGIN_STMT
|
|
argc = argc + 1;
|
|
|
|
<bb 8> :
|
|
# DEBUG BEGIN_STMT
|
|
if (argc <= 7)
|
|
goto <bb 6>; [INV]
|
|
else
|
|
goto <bb 9>; [INV]
|
|
|
|
<bb 9> :
|
|
# DEBUG BEGIN_STMT
|
|
ret = execute_cmd (argc, &argv);
|
|
# DEBUG BEGIN_STMT
|
|
if (ret == 1)
|
|
goto <bb 10>; [INV]
|
|
else
|
|
goto <bb 11>; [INV]
|
|
|
|
<bb 10> :
|
|
# DEBUG BEGIN_STMT
|
|
debug_printf ("Command not found\r\n");
|
|
|
|
<bb 11> :
|
|
# DEBUG BEGIN_STMT
|
|
debug_printf ("%s", "MR $ ");
|
|
# DEBUG BEGIN_STMT
|
|
// predicted unlikely by early return (on trees) predictor.
|
|
goto <bb 13>; [INV]
|
|
|
|
<bb 12> :
|
|
argv = {CLOBBER};
|
|
goto <bb 14>; [INV]
|
|
|
|
<bb 13> :
|
|
argv = {CLOBBER};
|
|
|
|
<bb 14> :
|
|
return;
|
|
|
|
}
|
|
|
|
|
|
execute_cmd (int argc, char * * argv)
|
|
{
|
|
int i;
|
|
int D.10820;
|
|
|
|
<bb 2> :
|
|
# DEBUG BEGIN_STMT
|
|
# DEBUG BEGIN_STMT
|
|
i = 0;
|
|
goto <bb 6>; [INV]
|
|
|
|
<bb 3> :
|
|
# DEBUG BEGIN_STMT
|
|
_1 = *argv;
|
|
_2 = mmi_cmd[i].name;
|
|
_3 = strcmp (_1, _2);
|
|
if (_3 == 0)
|
|
goto <bb 4>; [INV]
|
|
else
|
|
goto <bb 5>; [INV]
|
|
|
|
<bb 4> :
|
|
# DEBUG BEGIN_STMT
|
|
_4 = mmi_cmd[i].func;
|
|
_4 (argc, argv);
|
|
# DEBUG BEGIN_STMT
|
|
D.10820 = 0;
|
|
// predicted unlikely by early return (on trees) predictor.
|
|
goto <bb 8>; [INV]
|
|
|
|
<bb 5> :
|
|
# DEBUG BEGIN_STMT
|
|
i = i + 1;
|
|
|
|
<bb 6> :
|
|
# DEBUG BEGIN_STMT
|
|
_5 = mmi_cmd[i].name;
|
|
if (_5 != 0B)
|
|
goto <bb 3>; [INV]
|
|
else
|
|
goto <bb 7>; [INV]
|
|
|
|
<bb 7> :
|
|
# DEBUG BEGIN_STMT
|
|
D.10820 = 1;
|
|
|
|
<bb 8> :
|
|
return D.10820;
|
|
|
|
}
|
|
|
|
|
|
cmd_help (int argc, char * * argv)
|
|
{
|
|
int len;
|
|
int j;
|
|
int i;
|
|
|
|
<bb 2> :
|
|
# DEBUG BEGIN_STMT
|
|
# DEBUG BEGIN_STMT
|
|
# DEBUG BEGIN_STMT
|
|
# DEBUG BEGIN_STMT
|
|
debug_printf ("\r\nShow using command\r\n");
|
|
# DEBUG BEGIN_STMT
|
|
debug_printf ("---------------------------------------------------------\r\n");
|
|
# DEBUG BEGIN_STMT
|
|
i = 0;
|
|
goto <bb 7>; [INV]
|
|
|
|
<bb 3> :
|
|
# DEBUG BEGIN_STMT
|
|
_1 = mmi_cmd[i].name;
|
|
debug_printf (" %s", _1);
|
|
# DEBUG BEGIN_STMT
|
|
_2 = mmi_cmd[i].name;
|
|
_3 = strlen (_2);
|
|
len = (int) _3;
|
|
# DEBUG BEGIN_STMT
|
|
len = 20 - len;
|
|
# DEBUG BEGIN_STMT
|
|
j = 0;
|
|
goto <bb 5>; [INV]
|
|
|
|
<bb 4> :
|
|
# DEBUG BEGIN_STMT
|
|
debug_printf (" ");
|
|
# DEBUG BEGIN_STMT
|
|
j = j + 1;
|
|
|
|
<bb 5> :
|
|
# DEBUG BEGIN_STMT
|
|
if (j < len)
|
|
goto <bb 4>; [INV]
|
|
else
|
|
goto <bb 6>; [INV]
|
|
|
|
<bb 6> :
|
|
# DEBUG BEGIN_STMT
|
|
_4 = mmi_cmd[i].usage;
|
|
debug_printf ("%s\r\n", _4);
|
|
# DEBUG BEGIN_STMT
|
|
i = i + 1;
|
|
|
|
<bb 7> :
|
|
# DEBUG BEGIN_STMT
|
|
_5 = mmi_cmd[i].name;
|
|
if (_5 != 0B)
|
|
goto <bb 3>; [INV]
|
|
else
|
|
goto <bb 8>; [INV]
|
|
|
|
<bb 8> :
|
|
# DEBUG BEGIN_STMT
|
|
debug_printf ("---------------------------------------------------------\r\n");
|
|
# DEBUG BEGIN_STMT
|
|
return;
|
|
|
|
}
|
|
|
|
|
|
cmd_show (int argc, char * * argv)
|
|
{
|
|
u32 i;
|
|
|
|
<bb 2> :
|
|
# DEBUG BEGIN_STMT
|
|
# DEBUG BEGIN_STMT
|
|
# DEBUG BEGIN_STMT
|
|
# DEBUG BEGIN_STMT
|
|
debug_printf ("\r\nShow Information\r\n");
|
|
# DEBUG BEGIN_STMT
|
|
debug_printf ("---------------------------------------------------------\r\n");
|
|
# DEBUG BEGIN_STMT
|
|
_1 = gb.tmr_cnt;
|
|
debug_printf (" TMR COUNTER : %d\n", _1);
|
|
# DEBUG BEGIN_STMT
|
|
debug_printf ("---------------------------------------------------------\r\n");
|
|
# DEBUG BEGIN_STMT
|
|
i = 0;
|
|
goto <bb 4>; [INV]
|
|
|
|
<bb 3> :
|
|
# DEBUG BEGIN_STMT
|
|
_2 = gb.adc[i].avr;
|
|
_3 = (int) _2;
|
|
debug_printf (" ADC [%d] : %d\n", i, _3);
|
|
# DEBUG BEGIN_STMT
|
|
i = i + 1;
|
|
|
|
<bb 4> :
|
|
# DEBUG BEGIN_STMT
|
|
if (i <= 3)
|
|
goto <bb 3>; [INV]
|
|
else
|
|
goto <bb 5>; [INV]
|
|
|
|
<bb 5> :
|
|
# DEBUG BEGIN_STMT
|
|
debug_printf ("---------------------------------------------------------\r\n");
|
|
# DEBUG BEGIN_STMT
|
|
return;
|
|
|
|
}
|
|
|
|
|
|
cmd_clear (int argc, char * * argv)
|
|
{
|
|
<bb 2> :
|
|
# DEBUG BEGIN_STMT
|
|
# DEBUG BEGIN_STMT
|
|
# DEBUG BEGIN_STMT
|
|
debug_printf ("%c[2J%c[H", 27, 27);
|
|
# DEBUG BEGIN_STMT
|
|
# DEBUG BEGIN_STMT
|
|
return;
|
|
|
|
}
|
|
|
|
|
|
cmd_reset (int argc, char * * argv)
|
|
{
|
|
<bb 2> :
|
|
# DEBUG BEGIN_STMT
|
|
# DEBUG BEGIN_STMT
|
|
# DEBUG BEGIN_STMT
|
|
debug_printf ("SYSTEM RESET\n");
|
|
# DEBUG BEGIN_STMT
|
|
system_reset ();
|
|
return;
|
|
|
|
}
|
|
|
|
|
|
cmd_save (int argc, char * * argv)
|
|
{
|
|
<bb 2> :
|
|
# DEBUG BEGIN_STMT
|
|
# DEBUG BEGIN_STMT
|
|
return;
|
|
|
|
}
|
|
|
|
|
|
cmd_debug (int argc, char * * argv)
|
|
{
|
|
char * iftmp.1;
|
|
|
|
<bb 2> :
|
|
# DEBUG BEGIN_STMT
|
|
# DEBUG BEGIN_STMT
|
|
# DEBUG BEGIN_STMT
|
|
if (argc != 2)
|
|
goto <bb 3>; [INV]
|
|
else
|
|
goto <bb 7>; [INV]
|
|
|
|
<bb 3> :
|
|
# DEBUG BEGIN_STMT
|
|
_1 = gb.debug;
|
|
if (_1 == 0)
|
|
goto <bb 4>; [INV]
|
|
else
|
|
goto <bb 5>; [INV]
|
|
|
|
<bb 4> :
|
|
iftmp.1 = "ON";
|
|
goto <bb 6>; [INV]
|
|
|
|
<bb 5> :
|
|
iftmp.1 = "OFF";
|
|
|
|
<bb 6> :
|
|
debug_printf ("DEBUG FLAG %s\n", iftmp.1);
|
|
# DEBUG BEGIN_STMT
|
|
// predicted unlikely by early return (on trees) predictor.
|
|
goto <bb 11>; [INV]
|
|
|
|
<bb 7> :
|
|
# DEBUG BEGIN_STMT
|
|
_2 = argv + 4;
|
|
_3 = *_2;
|
|
_4 = strncasecmp (_3, "ON", 2);
|
|
if (_4 == 0)
|
|
goto <bb 8>; [INV]
|
|
else
|
|
goto <bb 9>; [INV]
|
|
|
|
<bb 8> :
|
|
# DEBUG BEGIN_STMT
|
|
debug_printf ("DEBUG FLAG ON\n");
|
|
# DEBUG BEGIN_STMT
|
|
gb.debug = 0;
|
|
goto <bb 11>; [INV]
|
|
|
|
<bb 9> :
|
|
# DEBUG BEGIN_STMT
|
|
_5 = argv + 4;
|
|
_6 = *_5;
|
|
_7 = strncasecmp (_6, "OFF", 3);
|
|
if (_7 == 0)
|
|
goto <bb 10>; [INV]
|
|
else
|
|
goto <bb 11>; [INV]
|
|
|
|
<bb 10> :
|
|
# DEBUG BEGIN_STMT
|
|
debug_printf ("DEBUG FLAG OFF\n");
|
|
# DEBUG BEGIN_STMT
|
|
gb.debug = 1;
|
|
|
|
<bb 11> :
|
|
return;
|
|
|
|
}
|
|
|
|
|
|
cmd_md (int argc, char * * argv)
|
|
{
|
|
u32 * addr;
|
|
u32 i;
|
|
u32 len;
|
|
|
|
<bb 2> :
|
|
# DEBUG BEGIN_STMT
|
|
# DEBUG BEGIN_STMT
|
|
argc.0_1 = (unsigned int) argc;
|
|
_2 = argc.0_1 + 4294967294;
|
|
if (_2 > 1)
|
|
goto <bb 3>; [INV]
|
|
else
|
|
goto <bb 4>; [INV]
|
|
|
|
<bb 3> :
|
|
# DEBUG BEGIN_STMT
|
|
// predicted unlikely by goto predictor.
|
|
# DEBUG usage => NULL
|
|
# DEBUG BEGIN_STMT
|
|
debug_printf ("\nUsage:\n");
|
|
# DEBUG BEGIN_STMT
|
|
debug_printf ("\tmd [addr]\n");
|
|
# DEBUG BEGIN_STMT
|
|
debug_printf ("\tmd [addr] [length]\n");
|
|
# DEBUG BEGIN_STMT
|
|
goto <bb 13>; [INV]
|
|
|
|
<bb 4> :
|
|
# DEBUG BEGIN_STMT
|
|
if (argc == 2)
|
|
goto <bb 5>; [INV]
|
|
else
|
|
goto <bb 6>; [INV]
|
|
|
|
<bb 5> :
|
|
# DEBUG BEGIN_STMT
|
|
len = 1;
|
|
goto <bb 7>; [INV]
|
|
|
|
<bb 6> :
|
|
# DEBUG BEGIN_STMT
|
|
_3 = argv + 8;
|
|
_4 = *_3;
|
|
len = strtoul (_4, 0B, 16);
|
|
|
|
<bb 7> :
|
|
# DEBUG BEGIN_STMT
|
|
_5 = argv + 4;
|
|
_6 = *_5;
|
|
_7 = strtoul (_6, 0B, 16);
|
|
addr = (u32 *) _7;
|
|
# DEBUG BEGIN_STMT
|
|
i = 0;
|
|
# DEBUG BEGIN_STMT
|
|
goto <bb 11>; [INV]
|
|
|
|
<bb 8> :
|
|
# DEBUG BEGIN_STMT
|
|
_8 = i & 7;
|
|
if (_8 == 0)
|
|
goto <bb 9>; [INV]
|
|
else
|
|
goto <bb 10>; [INV]
|
|
|
|
<bb 9> :
|
|
# DEBUG BEGIN_STMT
|
|
debug_printf ("\n0x%08X : ", addr);
|
|
|
|
<bb 10> :
|
|
# DEBUG BEGIN_STMT
|
|
_9 = *addr;
|
|
debug_printf ("0x%08X ", _9);
|
|
# DEBUG BEGIN_STMT
|
|
addr = addr + 4;
|
|
# DEBUG BEGIN_STMT
|
|
i = i + 1;
|
|
# DEBUG BEGIN_STMT
|
|
len = len + 4294967295;
|
|
|
|
<bb 11> :
|
|
# DEBUG BEGIN_STMT
|
|
if (len != 0)
|
|
goto <bb 8>; [INV]
|
|
else
|
|
goto <bb 12>; [INV]
|
|
|
|
<bb 12> :
|
|
# DEBUG BEGIN_STMT
|
|
debug_printf ("\n");
|
|
# DEBUG BEGIN_STMT
|
|
|
|
<bb 13> :
|
|
return;
|
|
|
|
}
|
|
|
|
|
|
cmd_mm (int argc, char * * argv)
|
|
{
|
|
u32 val;
|
|
u32 * addr;
|
|
|
|
<bb 2> :
|
|
# DEBUG BEGIN_STMT
|
|
# DEBUG BEGIN_STMT
|
|
if (argc != 3)
|
|
goto <bb 3>; [INV]
|
|
else
|
|
goto <bb 4>; [INV]
|
|
|
|
<bb 3> :
|
|
# DEBUG BEGIN_STMT
|
|
// predicted unlikely by goto predictor.
|
|
# DEBUG usage => NULL
|
|
# DEBUG BEGIN_STMT
|
|
debug_printf ("\r\nUsage:\r\n");
|
|
# DEBUG BEGIN_STMT
|
|
debug_printf ("\tmm [addr] [value]\n");
|
|
# DEBUG BEGIN_STMT
|
|
goto <bb 5>; [INV]
|
|
|
|
<bb 4> :
|
|
# DEBUG BEGIN_STMT
|
|
_1 = argv + 4;
|
|
_2 = *_1;
|
|
_3 = strtoul (_2, 0B, 16);
|
|
addr = (u32 *) _3;
|
|
# DEBUG BEGIN_STMT
|
|
_4 = argv + 8;
|
|
_5 = *_4;
|
|
val = strtoul (_5, 0B, 16);
|
|
# DEBUG BEGIN_STMT
|
|
*addr = val;
|
|
# DEBUG BEGIN_STMT
|
|
debug_printf ("Memory value changed\n");
|
|
# DEBUG BEGIN_STMT
|
|
|
|
<bb 5> :
|
|
return;
|
|
|
|
}
|
|
|
|
|
|
cmd_pwm (int argc, char * * argv)
|
|
{
|
|
u32 ratio;
|
|
u32 ch;
|
|
|
|
<bb 2> :
|
|
# DEBUG BEGIN_STMT
|
|
# DEBUG BEGIN_STMT
|
|
if (argc != 3)
|
|
goto <bb 3>; [INV]
|
|
else
|
|
goto <bb 4>; [INV]
|
|
|
|
<bb 3> :
|
|
# DEBUG BEGIN_STMT
|
|
// predicted unlikely by goto predictor.
|
|
goto <bb 9>; [INV]
|
|
|
|
<bb 4> :
|
|
# DEBUG BEGIN_STMT
|
|
_1 = argv + 4;
|
|
_2 = *_1;
|
|
ch = strtoul (_2, 0B, 10);
|
|
# DEBUG BEGIN_STMT
|
|
_3 = argv + 8;
|
|
_4 = *_3;
|
|
ratio = strtoul (_4, 0B, 10);
|
|
# DEBUG BEGIN_STMT
|
|
if (ch > 7)
|
|
goto <bb 5>; [INV]
|
|
else
|
|
goto <bb 6>; [INV]
|
|
|
|
<bb 5> :
|
|
# DEBUG BEGIN_STMT
|
|
// predicted unlikely by goto predictor.
|
|
goto <bb 9>; [INV]
|
|
|
|
<bb 6> :
|
|
# DEBUG BEGIN_STMT
|
|
if (ratio > 100)
|
|
goto <bb 7>; [INV]
|
|
else
|
|
goto <bb 8>; [INV]
|
|
|
|
<bb 7> :
|
|
# DEBUG BEGIN_STMT
|
|
// predicted unlikely by goto predictor.
|
|
goto <bb 9>; [INV]
|
|
|
|
<bb 8> :
|
|
# DEBUG BEGIN_STMT
|
|
debug_printf ("PWM SET[%d], %d[%%]\n", ch, ratio);
|
|
# DEBUG BEGIN_STMT
|
|
set_pwm (ch, ratio);
|
|
# DEBUG BEGIN_STMT
|
|
goto <bb 10>; [INV]
|
|
|
|
<bb 9> :
|
|
usage:
|
|
# DEBUG BEGIN_STMT
|
|
debug_printf ("\r\nUsage:\r\n");
|
|
# DEBUG BEGIN_STMT
|
|
debug_printf ("\tpwm [channel] [ratio]\n");
|
|
# DEBUG BEGIN_STMT
|
|
|
|
<bb 10> :
|
|
return;
|
|
|
|
}
|
|
|
|
|
|
cmd_adc (int argc, char * * argv)
|
|
{
|
|
u32 ch;
|
|
|
|
<bb 2> :
|
|
# DEBUG BEGIN_STMT
|
|
# DEBUG BEGIN_STMT
|
|
if (argc != 2)
|
|
goto <bb 3>; [INV]
|
|
else
|
|
goto <bb 4>; [INV]
|
|
|
|
<bb 3> :
|
|
# DEBUG BEGIN_STMT
|
|
// predicted unlikely by goto predictor.
|
|
goto <bb 7>; [INV]
|
|
|
|
<bb 4> :
|
|
# DEBUG BEGIN_STMT
|
|
_1 = argv + 4;
|
|
_2 = *_1;
|
|
ch = strtoul (_2, 0B, 10);
|
|
# DEBUG BEGIN_STMT
|
|
if (ch > 1)
|
|
goto <bb 5>; [INV]
|
|
else
|
|
goto <bb 6>; [INV]
|
|
|
|
<bb 5> :
|
|
# DEBUG BEGIN_STMT
|
|
// predicted unlikely by goto predictor.
|
|
goto <bb 7>; [INV]
|
|
|
|
<bb 6> :
|
|
# DEBUG BEGIN_STMT
|
|
debug_printf ("START ADC CH[%d]\n", ch);
|
|
# DEBUG BEGIN_STMT
|
|
Adc_Sar_Ip_StartConversion (ch, 0);
|
|
# DEBUG BEGIN_STMT
|
|
goto <bb 8>; [INV]
|
|
|
|
<bb 7> :
|
|
usage:
|
|
# DEBUG BEGIN_STMT
|
|
debug_printf ("\r\nUsage:\r\n");
|
|
# DEBUG BEGIN_STMT
|
|
debug_printf ("\tadc [channel]\n");
|
|
# DEBUG BEGIN_STMT
|
|
|
|
<bb 8> :
|
|
return;
|
|
|
|
}
|
|
|
|
|