diff options
author | Benedikt Spranger <b.spranger@pengutronix.de> | 2004-10-04 13:17:39 +0000 |
---|---|---|
committer | Benedikt Spranger <b.spranger@pengutronix.de> | 2004-10-04 13:17:39 +0000 |
commit | 0f170f3018b87ac027dc8175523d63ce1a753bef (patch) | |
tree | c9998fd796b0b20761ce4dce4d9331e193e27ac2 | |
parent | 5da371227c83b4c2da15d1283ae974d549d9dcf9 (diff) | |
download | memedit-0f170f3018b87ac027dc8175523d63ce1a753bef.tar.gz memedit-0f170f3018b87ac027dc8175523d63ce1a753bef.tar.xz |
BSP: little help added.
-rw-r--r-- | fpgaedit.l | 6 | ||||
-rw-r--r-- | fpgaedit.y | 19 |
2 files changed, 23 insertions, 2 deletions
@@ -30,6 +30,12 @@ quit { return EXIT; } +h | +help { + if (debug > 4) printf ("HELP\n"); + return HELP; +} + m[dm](\.[biw])* { if (strlen (yytext) == 2) yylval.val = 4; else switch (*(yytext + 3)) { @@ -23,6 +23,8 @@ variable *vlist; void set_variable (char *param, int val); int get_variable (char *param); void hex_output (int offset, int len, int count); +void print_help (void); + extern void yyerror (const char *s); extern int yylex (void); %} @@ -49,8 +51,10 @@ char *tptr; %left <val> MD %left <val> MM %left <val> EQ -%left <val> EXIT -%left <val> CR +%token <val> EXIT +%token <val> HELP +%token <val> CR + %type <val> num @@ -64,6 +68,7 @@ line: CR | open CR | close CR | EXIT CR { exit(EXIT_SUCCESS); } + | HELP CR { print_help(); } | NAME CR { printf ("%s = %d\n", $1, get_variable($1)); free($1); } | mem CR | NAME EQ num CR { set_variable ($1, $3); free($1); } @@ -140,6 +145,16 @@ num: NUM ; %% +void print_help (void) { + printf ("help:\n"); + printf ("open <file>\n\topen file <file>\n"); + printf ("close\n\tclose file\n"); + printf ("md [<start> [<end>]]\n\tdisplay from current position or <start> to <end>\n"); + printf ("mm <offset> <val1> .. <valN>\n\tmodify from value <offset>\n"); + printf ("<var> = <expr>\n\tset variable <var> to <expr>\n"); + printf ("<var>\n\tprint variable <var>\n"); +} + void set_variable (char *param, int val) { variable *l, *tmp; |