+ else
+ {
+ fprintf_filtered (file, "0x%04x ", (unsigned) rval);
+ if (regno != HARD_PC_REGNUM && regno != HARD_SP_REGNUM
+ && regno != SOFT_FP_REGNUM && regno != M68HC12_HARD_PC_REGNUM)
+ print_longest (file, 'd', 1, rval);
+ }
+ }
+
+ if (regno == HARD_CCR_REGNUM)
+ {
+ /* CCR register */
+ int C, Z, N, V;
+ unsigned char l = rval & 0xff;
+
+ fprintf_filtered (file, "%c%c%c%c%c%c%c%c ",
+ l & M6811_S_BIT ? 'S' : '-',
+ l & M6811_X_BIT ? 'X' : '-',
+ l & M6811_H_BIT ? 'H' : '-',
+ l & M6811_I_BIT ? 'I' : '-',
+ l & M6811_N_BIT ? 'N' : '-',
+ l & M6811_Z_BIT ? 'Z' : '-',
+ l & M6811_V_BIT ? 'V' : '-',
+ l & M6811_C_BIT ? 'C' : '-');
+ N = (l & M6811_N_BIT) != 0;
+ Z = (l & M6811_Z_BIT) != 0;
+ V = (l & M6811_V_BIT) != 0;
+ C = (l & M6811_C_BIT) != 0;
+
+ /* Print flags following the h8300 */
+ if ((C | Z) == 0)
+ fprintf_filtered (file, "u> ");
+ else if ((C | Z) == 1)
+ fprintf_filtered (file, "u<= ");
+ else if (C == 0)
+ fprintf_filtered (file, "u< ");
+
+ if (Z == 0)
+ fprintf_filtered (file, "!= ");
+ else
+ fprintf_filtered (file, "== ");
+
+ if ((N ^ V) == 0)
+ fprintf_filtered (file, ">= ");
+ else
+ fprintf_filtered (file, "< ");
+
+ if ((Z | (N ^ V)) == 0)
+ fprintf_filtered (file, "> ");
+ else
+ fprintf_filtered (file, "<= ");