FreeCalypso > hg > freecalypso-sw
annotate rvinterf/tmsh/usercmd.c @ 836:6c5d3fecbc67
gdi: audio.c compiles
| author | Space Falcon <falcon@ivan.Harhan.ORG> | 
|---|---|
| date | Sat, 25 Apr 2015 19:21:20 +0000 | 
| parents | 4c6bee98e002 | 
| children | 1ee80bcb0fd0 | 
| rev | line source | 
|---|---|
| 
182
 
13a0348ffce4
rvinterf/etm: checkpointing not-yet-compilable code
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents:  
diff
changeset
 | 
1 /* | 
| 
 
13a0348ffce4
rvinterf/etm: checkpointing not-yet-compilable code
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents:  
diff
changeset
 | 
2 * This module implements fc-tmsh user command dispatch. | 
| 
 
13a0348ffce4
rvinterf/etm: checkpointing not-yet-compilable code
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents:  
diff
changeset
 | 
3 */ | 
| 
 
13a0348ffce4
rvinterf/etm: checkpointing not-yet-compilable code
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents:  
diff
changeset
 | 
4 | 
| 
 
13a0348ffce4
rvinterf/etm: checkpointing not-yet-compilable code
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents:  
diff
changeset
 | 
5 #include <sys/types.h> | 
| 
 
13a0348ffce4
rvinterf/etm: checkpointing not-yet-compilable code
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents:  
diff
changeset
 | 
6 #include <ctype.h> | 
| 
 
13a0348ffce4
rvinterf/etm: checkpointing not-yet-compilable code
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents:  
diff
changeset
 | 
7 #include <stdio.h> | 
| 
 
13a0348ffce4
rvinterf/etm: checkpointing not-yet-compilable code
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents:  
diff
changeset
 | 
8 #include <string.h> | 
| 
 
13a0348ffce4
rvinterf/etm: checkpointing not-yet-compilable code
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents:  
diff
changeset
 | 
9 #include <strings.h> | 
| 
 
13a0348ffce4
rvinterf/etm: checkpointing not-yet-compilable code
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents:  
diff
changeset
 | 
10 #include <stdlib.h> | 
| 
 
13a0348ffce4
rvinterf/etm: checkpointing not-yet-compilable code
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents:  
diff
changeset
 | 
11 | 
| 
 
13a0348ffce4
rvinterf/etm: checkpointing not-yet-compilable code
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents:  
diff
changeset
 | 
12 extern char usercmd[]; | 
| 
 
13a0348ffce4
rvinterf/etm: checkpointing not-yet-compilable code
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents:  
diff
changeset
 | 
13 | 
| 
198
 
c9ea2f7441a5
fc-tmsh: abb[rw] commands implemented
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents: 
192 
diff
changeset
 | 
14 extern void cmd_abbr(); | 
| 
 
c9ea2f7441a5
fc-tmsh: abb[rw] commands implemented
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents: 
192 
diff
changeset
 | 
15 extern void cmd_abbw(); | 
| 
257
 
c413e791595a
fc-tmsh: added check-ffs1 command, getting ready to begin ffs2 implementation
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents: 
198 
diff
changeset
 | 
16 extern void cmd_check_ffs1(); | 
| 
189
 
a95d253ef952
fc-tmsh: some basic tmcore commands implemented
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents: 
182 
diff
changeset
 | 
17 extern void cmd_dieid(); | 
| 
182
 
13a0348ffce4
rvinterf/etm: checkpointing not-yet-compilable code
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents:  
diff
changeset
 | 
18 extern void cmd_etmpkt(); | 
| 
258
 
ab66a2eea6a8
fc-tmsh: beginning of ffs2 command dispatch
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents: 
257 
diff
changeset
 | 
19 extern void cmd_ffs2(); | 
| 
189
 
a95d253ef952
fc-tmsh: some basic tmcore commands implemented
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents: 
182 
diff
changeset
 | 
20 extern void cmd_ping(); | 
| 
 
a95d253ef952
fc-tmsh: some basic tmcore commands implemented
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents: 
182 
diff
changeset
 | 
21 extern void cmd_r8(); | 
| 
 
a95d253ef952
fc-tmsh: some basic tmcore commands implemented
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents: 
182 
diff
changeset
 | 
22 extern void cmd_r16(); | 
| 
 
a95d253ef952
fc-tmsh: some basic tmcore commands implemented
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents: 
182 
diff
changeset
 | 
23 extern void cmd_r32(); | 
| 
263
 
b5b54feb111a
fc-tmsh: set-imeisv command implemented
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents: 
260 
diff
changeset
 | 
24 extern void cmd_set_imeisv(); | 
| 
264
 
0c938d8b5ba3
fc-tmsh: set-pcm-string and set-rfcap implemented
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents: 
263 
diff
changeset
 | 
25 extern void cmd_set_pcm_string(); | 
| 
 
0c938d8b5ba3
fc-tmsh: set-pcm-string and set-rfcap implemented
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents: 
263 
diff
changeset
 | 
26 extern void cmd_set_rfcap(); | 
| 
189
 
a95d253ef952
fc-tmsh: some basic tmcore commands implemented
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents: 
182 
diff
changeset
 | 
27 extern void cmd_tgtreset(); | 
| 
 
a95d253ef952
fc-tmsh: some basic tmcore commands implemented
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents: 
182 
diff
changeset
 | 
28 extern void cmd_version(); | 
| 
192
 
707aa640b2dc
fc-tmsh: w8/w16/w32 implemented
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents: 
189 
diff
changeset
 | 
29 extern void cmd_w8(); | 
| 
 
707aa640b2dc
fc-tmsh: w8/w16/w32 implemented
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents: 
189 
diff
changeset
 | 
30 extern void cmd_w16(); | 
| 
 
707aa640b2dc
fc-tmsh: w8/w16/w32 implemented
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents: 
189 
diff
changeset
 | 
31 extern void cmd_w32(); | 
| 
182
 
13a0348ffce4
rvinterf/etm: checkpointing not-yet-compilable code
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents:  
diff
changeset
 | 
32 | 
| 
 
13a0348ffce4
rvinterf/etm: checkpointing not-yet-compilable code
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents:  
diff
changeset
 | 
33 void | 
| 
 
13a0348ffce4
rvinterf/etm: checkpointing not-yet-compilable code
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents:  
diff
changeset
 | 
34 cmd_exit() | 
| 
 
13a0348ffce4
rvinterf/etm: checkpointing not-yet-compilable code
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents:  
diff
changeset
 | 
35 { | 
| 
 
13a0348ffce4
rvinterf/etm: checkpointing not-yet-compilable code
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents:  
diff
changeset
 | 
36 tty_cleanup(); | 
| 
 
13a0348ffce4
rvinterf/etm: checkpointing not-yet-compilable code
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents:  
diff
changeset
 | 
37 exit(0); | 
| 
 
13a0348ffce4
rvinterf/etm: checkpointing not-yet-compilable code
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents:  
diff
changeset
 | 
38 } | 
| 
 
13a0348ffce4
rvinterf/etm: checkpointing not-yet-compilable code
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents:  
diff
changeset
 | 
39 | 
| 
 
13a0348ffce4
rvinterf/etm: checkpointing not-yet-compilable code
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents:  
diff
changeset
 | 
40 static struct cmdtab { | 
| 
 
13a0348ffce4
rvinterf/etm: checkpointing not-yet-compilable code
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents:  
diff
changeset
 | 
41 char *cmd; | 
| 
 
13a0348ffce4
rvinterf/etm: checkpointing not-yet-compilable code
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents:  
diff
changeset
 | 
42 int minargs; | 
| 
 
13a0348ffce4
rvinterf/etm: checkpointing not-yet-compilable code
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents:  
diff
changeset
 | 
43 int maxargs; | 
| 
 
13a0348ffce4
rvinterf/etm: checkpointing not-yet-compilable code
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents:  
diff
changeset
 | 
44 void (*func)(); | 
| 
 
13a0348ffce4
rvinterf/etm: checkpointing not-yet-compilable code
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents:  
diff
changeset
 | 
45 } cmdtab[] = { | 
| 
198
 
c9ea2f7441a5
fc-tmsh: abb[rw] commands implemented
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents: 
192 
diff
changeset
 | 
46 {"abbr", 2, 2, cmd_abbr}, | 
| 
 
c9ea2f7441a5
fc-tmsh: abb[rw] commands implemented
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents: 
192 
diff
changeset
 | 
47 {"abbw", 3, 3, cmd_abbw}, | 
| 
257
 
c413e791595a
fc-tmsh: added check-ffs1 command, getting ready to begin ffs2 implementation
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents: 
198 
diff
changeset
 | 
48 {"check-ffs1", 0, 0, cmd_check_ffs1}, | 
| 
189
 
a95d253ef952
fc-tmsh: some basic tmcore commands implemented
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents: 
182 
diff
changeset
 | 
49 {"dieid", 0, 0, cmd_dieid}, | 
| 
182
 
13a0348ffce4
rvinterf/etm: checkpointing not-yet-compilable code
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents:  
diff
changeset
 | 
50 {"etmpkt", 1, 253, cmd_etmpkt}, | 
| 
 
13a0348ffce4
rvinterf/etm: checkpointing not-yet-compilable code
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents:  
diff
changeset
 | 
51 {"exit", 0, 0, cmd_exit}, | 
| 
259
 
35113b1964d3
fc-tmsh ffs2: a few request-sending commands implemented
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents: 
258 
diff
changeset
 | 
52 {"ffs2", 1, 3, cmd_ffs2}, | 
| 
189
 
a95d253ef952
fc-tmsh: some basic tmcore commands implemented
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents: 
182 
diff
changeset
 | 
53 {"ping", 0, 2, cmd_ping}, | 
| 
182
 
13a0348ffce4
rvinterf/etm: checkpointing not-yet-compilable code
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents:  
diff
changeset
 | 
54 {"quit", 0, 0, cmd_exit}, | 
| 
189
 
a95d253ef952
fc-tmsh: some basic tmcore commands implemented
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents: 
182 
diff
changeset
 | 
55 {"r8", 1, 2, cmd_r8}, | 
| 
 
a95d253ef952
fc-tmsh: some basic tmcore commands implemented
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents: 
182 
diff
changeset
 | 
56 {"r16", 1, 2, cmd_r16}, | 
| 
 
a95d253ef952
fc-tmsh: some basic tmcore commands implemented
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents: 
182 
diff
changeset
 | 
57 {"r32", 1, 2, cmd_r32}, | 
| 
263
 
b5b54feb111a
fc-tmsh: set-imeisv command implemented
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents: 
260 
diff
changeset
 | 
58 {"set-imeisv", 2, 2, cmd_set_imeisv}, | 
| 
264
 
0c938d8b5ba3
fc-tmsh: set-pcm-string and set-rfcap implemented
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents: 
263 
diff
changeset
 | 
59 {"set-pcm-string", 2, 2, cmd_set_pcm_string}, | 
| 
 
0c938d8b5ba3
fc-tmsh: set-pcm-string and set-rfcap implemented
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents: 
263 
diff
changeset
 | 
60 {"set-rfcap", 16, 16, cmd_set_rfcap}, | 
| 
189
 
a95d253ef952
fc-tmsh: some basic tmcore commands implemented
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents: 
182 
diff
changeset
 | 
61 {"tgtreset", 0, 0, cmd_tgtreset}, | 
| 
 
a95d253ef952
fc-tmsh: some basic tmcore commands implemented
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents: 
182 
diff
changeset
 | 
62 {"version", 1, 1, cmd_version}, | 
| 
192
 
707aa640b2dc
fc-tmsh: w8/w16/w32 implemented
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents: 
189 
diff
changeset
 | 
63 {"w8", 2, 246, cmd_w8}, | 
| 
 
707aa640b2dc
fc-tmsh: w8/w16/w32 implemented
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents: 
189 
diff
changeset
 | 
64 {"w16", 2, 123, cmd_w16}, | 
| 
 
707aa640b2dc
fc-tmsh: w8/w16/w32 implemented
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents: 
189 
diff
changeset
 | 
65 {"w32", 2, 62, cmd_w32}, | 
| 
182
 
13a0348ffce4
rvinterf/etm: checkpointing not-yet-compilable code
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents:  
diff
changeset
 | 
66 {0, 0, 0, 0} | 
| 
 
13a0348ffce4
rvinterf/etm: checkpointing not-yet-compilable code
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents:  
diff
changeset
 | 
67 }; | 
| 
 
13a0348ffce4
rvinterf/etm: checkpointing not-yet-compilable code
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents:  
diff
changeset
 | 
68 | 
| 
 
13a0348ffce4
rvinterf/etm: checkpointing not-yet-compilable code
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents:  
diff
changeset
 | 
69 void | 
| 
 
13a0348ffce4
rvinterf/etm: checkpointing not-yet-compilable code
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents:  
diff
changeset
 | 
70 dispatch_user_cmd() | 
| 
 
13a0348ffce4
rvinterf/etm: checkpointing not-yet-compilable code
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents:  
diff
changeset
 | 
71 { | 
| 
 
13a0348ffce4
rvinterf/etm: checkpointing not-yet-compilable code
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents:  
diff
changeset
 | 
72 char *argv[257]; | 
| 
 
13a0348ffce4
rvinterf/etm: checkpointing not-yet-compilable code
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents:  
diff
changeset
 | 
73 char *cp, **ap; | 
| 
 
13a0348ffce4
rvinterf/etm: checkpointing not-yet-compilable code
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents:  
diff
changeset
 | 
74 struct cmdtab *tp; | 
| 
 
13a0348ffce4
rvinterf/etm: checkpointing not-yet-compilable code
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents:  
diff
changeset
 | 
75 | 
| 
 
13a0348ffce4
rvinterf/etm: checkpointing not-yet-compilable code
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents:  
diff
changeset
 | 
76 for (cp = usercmd; isspace(*cp); cp++) | 
| 
 
13a0348ffce4
rvinterf/etm: checkpointing not-yet-compilable code
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents:  
diff
changeset
 | 
77 ; | 
| 
 
13a0348ffce4
rvinterf/etm: checkpointing not-yet-compilable code
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents:  
diff
changeset
 | 
78 if (!*cp || *cp == '#') | 
| 
 
13a0348ffce4
rvinterf/etm: checkpointing not-yet-compilable code
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents:  
diff
changeset
 | 
79 return; | 
| 
 
13a0348ffce4
rvinterf/etm: checkpointing not-yet-compilable code
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents:  
diff
changeset
 | 
80 argv[0] = cp; | 
| 
 
13a0348ffce4
rvinterf/etm: checkpointing not-yet-compilable code
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents:  
diff
changeset
 | 
81 while (*cp && !isspace(*cp)) | 
| 
 
13a0348ffce4
rvinterf/etm: checkpointing not-yet-compilable code
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents:  
diff
changeset
 | 
82 cp++; | 
| 
 
13a0348ffce4
rvinterf/etm: checkpointing not-yet-compilable code
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents:  
diff
changeset
 | 
83 if (*cp) | 
| 
 
13a0348ffce4
rvinterf/etm: checkpointing not-yet-compilable code
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents:  
diff
changeset
 | 
84 *cp++ = '\0'; | 
| 
 
13a0348ffce4
rvinterf/etm: checkpointing not-yet-compilable code
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents:  
diff
changeset
 | 
85 for (tp = cmdtab; tp->cmd; tp++) | 
| 
 
13a0348ffce4
rvinterf/etm: checkpointing not-yet-compilable code
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents:  
diff
changeset
 | 
86 if (!strcmp(tp->cmd, argv[0])) | 
| 
 
13a0348ffce4
rvinterf/etm: checkpointing not-yet-compilable code
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents:  
diff
changeset
 | 
87 break; | 
| 
 
13a0348ffce4
rvinterf/etm: checkpointing not-yet-compilable code
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents:  
diff
changeset
 | 
88 if (!tp->func) { | 
| 
 
13a0348ffce4
rvinterf/etm: checkpointing not-yet-compilable code
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents:  
diff
changeset
 | 
89 printf("error: no such command\n"); | 
| 
 
13a0348ffce4
rvinterf/etm: checkpointing not-yet-compilable code
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents:  
diff
changeset
 | 
90 return; | 
| 
 
13a0348ffce4
rvinterf/etm: checkpointing not-yet-compilable code
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents:  
diff
changeset
 | 
91 } | 
| 
 
13a0348ffce4
rvinterf/etm: checkpointing not-yet-compilable code
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents:  
diff
changeset
 | 
92 for (ap = argv + 1; ; ) { | 
| 
 
13a0348ffce4
rvinterf/etm: checkpointing not-yet-compilable code
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents:  
diff
changeset
 | 
93 while (isspace(*cp)) | 
| 
 
13a0348ffce4
rvinterf/etm: checkpointing not-yet-compilable code
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents:  
diff
changeset
 | 
94 cp++; | 
| 
 
13a0348ffce4
rvinterf/etm: checkpointing not-yet-compilable code
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents:  
diff
changeset
 | 
95 if (!*cp || *cp == '#') | 
| 
 
13a0348ffce4
rvinterf/etm: checkpointing not-yet-compilable code
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents:  
diff
changeset
 | 
96 break; | 
| 
 
13a0348ffce4
rvinterf/etm: checkpointing not-yet-compilable code
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents:  
diff
changeset
 | 
97 if (ap - argv - 1 >= tp->maxargs) { | 
| 
 
13a0348ffce4
rvinterf/etm: checkpointing not-yet-compilable code
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents:  
diff
changeset
 | 
98 printf("error: too many arguments\n"); | 
| 
 
13a0348ffce4
rvinterf/etm: checkpointing not-yet-compilable code
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents:  
diff
changeset
 | 
99 return; | 
| 
 
13a0348ffce4
rvinterf/etm: checkpointing not-yet-compilable code
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents:  
diff
changeset
 | 
100 } | 
| 
267
 
4c6bee98e002
fc-tmsh: support quoted strings for set-pcm-string
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents: 
264 
diff
changeset
 | 
101 if (*cp == '"') { | 
| 
 
4c6bee98e002
fc-tmsh: support quoted strings for set-pcm-string
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents: 
264 
diff
changeset
 | 
102 *ap++ = ++cp; | 
| 
 
4c6bee98e002
fc-tmsh: support quoted strings for set-pcm-string
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents: 
264 
diff
changeset
 | 
103 while (*cp && *cp != '"') | 
| 
 
4c6bee98e002
fc-tmsh: support quoted strings for set-pcm-string
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents: 
264 
diff
changeset
 | 
104 cp++; | 
| 
 
4c6bee98e002
fc-tmsh: support quoted strings for set-pcm-string
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents: 
264 
diff
changeset
 | 
105 if (*cp != '"') { | 
| 
 
4c6bee98e002
fc-tmsh: support quoted strings for set-pcm-string
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents: 
264 
diff
changeset
 | 
106 printf("error: unterminated quoted string\n"); | 
| 
 
4c6bee98e002
fc-tmsh: support quoted strings for set-pcm-string
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents: 
264 
diff
changeset
 | 
107 return; | 
| 
 
4c6bee98e002
fc-tmsh: support quoted strings for set-pcm-string
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents: 
264 
diff
changeset
 | 
108 } | 
| 
182
 
13a0348ffce4
rvinterf/etm: checkpointing not-yet-compilable code
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents:  
diff
changeset
 | 
109 *cp++ = '\0'; | 
| 
267
 
4c6bee98e002
fc-tmsh: support quoted strings for set-pcm-string
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents: 
264 
diff
changeset
 | 
110 } else { | 
| 
 
4c6bee98e002
fc-tmsh: support quoted strings for set-pcm-string
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents: 
264 
diff
changeset
 | 
111 *ap++ = cp; | 
| 
 
4c6bee98e002
fc-tmsh: support quoted strings for set-pcm-string
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents: 
264 
diff
changeset
 | 
112 while (*cp && !isspace(*cp)) | 
| 
 
4c6bee98e002
fc-tmsh: support quoted strings for set-pcm-string
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents: 
264 
diff
changeset
 | 
113 cp++; | 
| 
 
4c6bee98e002
fc-tmsh: support quoted strings for set-pcm-string
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents: 
264 
diff
changeset
 | 
114 if (*cp) | 
| 
 
4c6bee98e002
fc-tmsh: support quoted strings for set-pcm-string
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents: 
264 
diff
changeset
 | 
115 *cp++ = '\0'; | 
| 
 
4c6bee98e002
fc-tmsh: support quoted strings for set-pcm-string
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents: 
264 
diff
changeset
 | 
116 } | 
| 
182
 
13a0348ffce4
rvinterf/etm: checkpointing not-yet-compilable code
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents:  
diff
changeset
 | 
117 } | 
| 
 
13a0348ffce4
rvinterf/etm: checkpointing not-yet-compilable code
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents:  
diff
changeset
 | 
118 if (ap - argv - 1 < tp->minargs) { | 
| 
 
13a0348ffce4
rvinterf/etm: checkpointing not-yet-compilable code
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents:  
diff
changeset
 | 
119 printf("error: too few arguments\n"); | 
| 
 
13a0348ffce4
rvinterf/etm: checkpointing not-yet-compilable code
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents:  
diff
changeset
 | 
120 return; | 
| 
 
13a0348ffce4
rvinterf/etm: checkpointing not-yet-compilable code
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents:  
diff
changeset
 | 
121 } | 
| 
 
13a0348ffce4
rvinterf/etm: checkpointing not-yet-compilable code
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents:  
diff
changeset
 | 
122 *ap = 0; | 
| 
 
13a0348ffce4
rvinterf/etm: checkpointing not-yet-compilable code
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents:  
diff
changeset
 | 
123 tp->func(ap - argv, argv); | 
| 
 
13a0348ffce4
rvinterf/etm: checkpointing not-yet-compilable code
 
Michael Spacefalcon <msokolov@ivan.Harhan.ORG> 
parents:  
diff
changeset
 | 
124 } | 
