Commit 4c27ba27c5dd810fdcfbe82e3998a174a6e793f2

Authored by bellard
1 parent ba91cd80

added 'info pic' - added 16/32 bit x86 instruction dump


git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@750 c046a42c-6fe2-441c-8c8c-71466251a162
Showing 1 changed file with 22 additions and 6 deletions
monitor.c
... ... @@ -350,10 +350,17 @@ static void memory_dump(int count, int format, int wsize,
350 350 int flags;
351 351 flags = 0;
352 352 #ifdef TARGET_I386
353   - /* we use the current CS size */
354   - if (!(cpu_single_env->segs[R_CS].flags & DESC_B_MASK))
  353 + if (wsize == 2) {
355 354 flags = 1;
356   -#endif
  355 + } else if (wsize == 4) {
  356 + flags = 0;
  357 + } else {
  358 + /* as default we use the current CS size */
  359 + flags = 0;
  360 + if (!(cpu_single_env->segs[R_CS].flags & DESC_B_MASK))
  361 + flags = 1;
  362 + }
  363 +#endif
357 364 monitor_disas(addr, count, is_physical, flags);
358 365 return;
359 366 }
... ... @@ -516,6 +523,8 @@ static term_cmd_t info_cmds[] = {
516 523 "", "show the cpu registers" },
517 524 { "history", "", do_info_history,
518 525 "", "show the command line history", },
  526 + { "pic", "", pic_info,
  527 + "", "show i8259 (PIC) state", },
519 528 { NULL, NULL, },
520 529 };
521 530  
... ... @@ -1047,16 +1056,23 @@ static void term_handle_command(const char *cmdline)
1047 1056 term_printf("invalid char in format: '%c'\n", *p);
1048 1057 goto fail;
1049 1058 }
1050   - if (size < 0)
1051   - size = default_fmt_size;
1052 1059 if (format < 0)
1053 1060 format = default_fmt_format;
  1061 + if (format != 'i') {
  1062 + /* for 'i', not specifying a size gives -1 as size */
  1063 + if (size < 0)
  1064 + size = default_fmt_size;
  1065 + }
1054 1066 default_fmt_size = size;
1055 1067 default_fmt_format = format;
1056 1068 } else {
1057 1069 count = 1;
1058 1070 format = default_fmt_format;
1059   - size = default_fmt_size;
  1071 + if (format != 'i') {
  1072 + size = default_fmt_size;
  1073 + } else {
  1074 + size = -1;
  1075 + }
1060 1076 }
1061 1077 if (nb_args + 3 > MAX_ARGS)
1062 1078 goto error_args;
... ...