"2"\r
};\r
\r
-#define COND(_a) gCondition[(_a) >> 28]\r
+#define COND(_a) gCondition[((_a) >> 28)]\r
\r
CHAR8 *gReg[] = {\r
"r0",\r
- "r1",\r
"r2",\r
"r3",\r
"r4",\r
if ((OpCode & 0xfd70f000 ) == 0xf550f000) {\r
Index = AsciiSPrint (Buf, Size, "PLD");\r
} else {\r
- Index = AsciiSPrint (Buf, Size, "%a%a%a%a %a, ", L ? "LDR" : "STR", COND (OpCode), BYTE (B), (!P & W) ? "T":"", gReg[Rd]); \r
+ Index = AsciiSPrint (Buf, Size, "%a%a%a%a %a, ", L ? "LDR" : "STR", COND (OpCode), BYTE (B), (!(P) && W) ? "T":"", gReg[Rd]); \r
}\r
if (P) {\r
if (!I) {\r