FreeCalypso > hg > freecalypso-tools
comparison rvinterf/tmsh/omw.c @ 149:c81d0e9ac3b4
fc-tmsh: omw command and response handling added
author | Mychaela Falconia <falcon@freecalypso.org> |
---|---|
date | Sun, 05 Mar 2017 08:41:31 +0000 |
parents | |
children |
comparison
equal
deleted
inserted
replaced
148:0e7a85356130 | 149:c81d0e9ac3b4 |
---|---|
1 /* | |
2 * Old-style memory write command | |
3 */ | |
4 | |
5 #include <sys/types.h> | |
6 #include <stdio.h> | |
7 #include <string.h> | |
8 #include <strings.h> | |
9 #include <stdlib.h> | |
10 #include "pktmux.h" | |
11 #include "limits.h" | |
12 #include "localtypes.h" | |
13 #include "tm3.h" | |
14 #include "exitcodes.h" | |
15 | |
16 cmd_omw(argc, argv) | |
17 char **argv; | |
18 { | |
19 u32 addr, v; | |
20 u_char cmdpkt[MAX_PKT_TO_TARGET]; | |
21 int di; | |
22 char **ap; | |
23 | |
24 addr = strtoul(argv[1], 0, 16); | |
25 cmdpkt[1] = MEM_WRITE; | |
26 cmdpkt[2] = addr; | |
27 cmdpkt[3] = addr >> 8; | |
28 cmdpkt[4] = addr >> 16; | |
29 cmdpkt[5] = addr >> 24; | |
30 di = 6; | |
31 for (ap = argv + 2; *ap; ap++) { | |
32 v = strtoul(*ap, 0, 16); | |
33 cmdpkt[di++] = v; | |
34 } | |
35 send_etm_cmd(cmdpkt, di - 1); | |
36 return(0); | |
37 } |