Rev 2915 | Rev 2923 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
| Rev 2915 | Rev 2922 | ||
|---|---|---|---|
| Line 60... | Line 60... | ||
| 60 | static void cmd_break(int argc, char *argv[]) |
60 | static void cmd_break(int argc, char *argv[]) |
| 61 | { |
61 | { |
| 62 | uintptr_t addr; |
62 | uintptr_t addr; |
| 63 | char brkp[1]; |
63 | char brkp[1]; |
| 64 | int rc; |
64 | int rc; |
| - | 65 | breakpoint_t *brk; |
|
| - | 66 | int i; |
|
| - | 67 | ||
| - | 68 | brk = NULL; |
|
| - | 69 | for (i = 0; i < MAX_BRKPTS; i++) |
|
| - | 70 | if (brk_list[i].set == 0) brk = brk_list+i; |
|
| - | 71 | ||
| - | 72 | if (!brk) { |
|
| - | 73 | printf("too many breakpoints\n"); |
|
| - | 74 | return; |
|
| - | 75 | } |
|
| 65 | 76 | ||
| 66 | (void)argc; |
77 | (void)argc; |
| 67 | addr = strtoul(argv[1], NULL, 0); |
78 | addr = strtoul(argv[1], NULL, 0); |
| 68 | 79 | ||
| 69 | printf("You requested a breakpoint at 0x%x\n", addr); |
80 | printf("You requested a breakpoint at 0x%x\n", addr); |
| - | 81 | rc = udebug_mem_read(app_phone, &brk->back, addr, 1); |
|
| - | 82 | printf("udebug_mem_read() -> %d\n", rc); |
|
| 70 | brkp[0] = 0xcc; |
83 | brkp[0] = 0xcc; |
| 71 | rc = udebug_mem_write(app_phone, brkp, addr, 1); |
84 | rc = udebug_mem_write(app_phone, brkp, addr, 1); |
| 72 | printf("udebug_mem_write() -> %d\n", rc); |
85 | printf("udebug_mem_write() -> %d\n", rc); |
| - | 86 | ||
| - | 87 | brk->addr = addr; |
|
| - | 88 | brk->set = 1; |
|
| 73 | } |
89 | } |
| 74 | 90 | ||
| 75 | void cmd_help(int argc, char *argv[]) |
91 | void cmd_help(int argc, char *argv[]) |
| 76 | { |
92 | { |
| 77 | int i; |
93 | int i; |