ADD: started with adding a "LS" command that lists the commands without the help text printed. To give easy clean list.

This commit is contained in:
iceman1001 2015-07-22 11:19:15 +02:00
parent 5b59bf20c7
commit f445df401e
5 changed files with 26 additions and 3 deletions

View file

@ -1007,7 +1007,7 @@ void iso14443b_setup() {
LED_D_ON();
FpgaWriteConfWord(FPGA_MAJOR_MODE_HF_READER_TX | FPGA_HF_READER_TX_SHALLOW_MOD);
SpinDelay(100);
//SpinDelay(100);
// Start the timer
//StartCountSspClk();

View file

@ -225,7 +225,10 @@ void annotateIso7816(char *exp, size_t size, uint8_t* cmd, uint8_t cmdsize){
}
// R-block (ack)
else if ( ((cmd[0] & 0xD0) == 0x80) && ( cmdsize > 2) ) {
snprintf(exp, size, "R-block");
if ( (cmd[0] & 0x10) == 0 )
snprintf(exp, size, "R-block ACK");
else
snprintf(exp, size, "R-block NACK");
}
// I-block
else {

View file

@ -33,6 +33,7 @@ unsigned int current_command = CMD_UNKNOWN;
static int CmdHelp(const char *Cmd);
static int CmdQuit(const char *Cmd);
static int CmdRev(const char *Cmd);
static int CmdLS(const char *Cmd);
//For storing command that are received from the device
static UsbCommand cmdBuffer[CMD_BUFFER_SIZE];
@ -44,11 +45,12 @@ static int cmd_tail;//Starts as 0
static command_t CommandTable[] =
{
{"help", CmdHelp, 1, "This help. Use '<command> help' for details of a particular command."},
{"ls", CmdLS, 1, "list commands"},
{"data", CmdData, 1, "{ Plot window / data buffer manipulation... }"},
{"hf", CmdHF, 1, "{ High Frequency commands... }"},
{"hw", CmdHW, 1, "{ Hardware commands... }"},
{"lf", CmdLF, 1, "{ Low Frequency commands... }"},
{"reveng",CmdRev, 1, "Crc calculations from the software reveng1-30"},
{"reveng", CmdRev, 1, "Crc calculations from the software reveng 1.30"},
{"script", CmdScript, 1, "{ Scripting commands }"},
{"quit", CmdQuit, 1, "Exit program"},
{"exit", CmdQuit, 1, "Exit program"},
@ -64,6 +66,10 @@ int CmdHelp(const char *Cmd)
CmdsHelp(CommandTable);
return 0;
}
int CmdLS(const char *Cmd){
CmdsLS(CommandTable);
return 0;
}
int CmdQuit(const char *Cmd)
{

View file

@ -28,6 +28,18 @@ void CmdsHelp(const command_t Commands[])
}
}
void CmdsLS(const command_t Commands[])
{
if (Commands[0].Name == NULL) return;
int i = 0;
while (Commands[i].Name)
{
if (!offline || Commands[i].Offline)
PrintAndLog("%-16s", Commands[i].Name);
++i;
}
}
void CmdsParse(const command_t Commands[], const char *Cmd)
{
if(strcmp( Cmd, "XX_internal_command_dump_XX") == 0)

View file

@ -23,6 +23,8 @@ typedef struct command_s
// Print help for each command in the command array
void CmdsHelp(const command_t Commands[]);
// Print each command in the command array without help
void CmdsLS(const command_t Commands[]);
// Parse a command line
void CmdsParse(const command_t Commands[], const char *Cmd);
void dumpCommandsRecursive(const command_t cmds[], int markdown);