X-Git-Url: https://review.openocd.org/gitweb?p=openocd.git;a=blobdiff_plain;f=src%2Ftarget%2Farmv4_5.c;h=2ee34e29c4c540b6bdc3465c8bbf4f812140487c;hp=51fd4b42732dc8813a8dd4d6de7c28a46b197740;hb=82d2633b5f550115e9e7c7d0520babb6680aa38f;hpb=8b4e882a1630d63bbc9840fa3f968e36b6ac3702 diff --git a/src/target/armv4_5.c b/src/target/armv4_5.c index 51fd4b4273..2ee34e29c4 100644 --- a/src/target/armv4_5.c +++ b/src/target/armv4_5.c @@ -17,7 +17,13 @@ * Free Software Foundation, Inc., * * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. * ***************************************************************************/ +#ifdef HAVE_CONFIG_H #include "config.h" +#endif + +#include "replacements.h" + +#include "arm_disassembler.h" #include "armv4_5.h" @@ -377,6 +383,47 @@ int handle_armv4_5_core_state_command(struct command_context_s *cmd_ctx, char *c return ERROR_OK; } +int handle_armv4_5_disassemble_command(struct command_context_s *cmd_ctx, char *cmd, char **args, int argc) +{ + target_t *target = get_current_target(cmd_ctx); + armv4_5_common_t *armv4_5 = target->arch_info; + u32 address; + int count; + int i; + arm_instruction_t cur_instruction; + u32 opcode; + int thumb; + + if (armv4_5->common_magic != ARMV4_5_COMMON_MAGIC) + { + command_print(cmd_ctx, "current target isn't an ARMV4/5 target"); + return ERROR_OK; + } + + if (argc < 2) + { + command_print(cmd_ctx, "usage: armv4_5 disassemble