Fix some disasm issues
authorandrewfish <andrewfish@6f19259b-4bc3-4df7-8a09-765794883524>
Tue, 2 Feb 2010 04:34:19 +0000 (04:34 +0000)
committerandrewfish <andrewfish@6f19259b-4bc3-4df7-8a09-765794883524>
Tue, 2 Feb 2010 04:34:19 +0000 (04:34 +0000)
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9908 6f19259b-4bc3-4df7-8a09-765794883524

BeagleBoardPkg/Library/EblCmdLib/EblCmdLib.c

index 6ce3f70f6dd0d2b53f4065493c0177b50260195c..2623eb3bbec5a15eafb9054e6e9c9e7667df9edc 100644 (file)
@@ -47,7 +47,7 @@ EblDisassembler (
   IN CHAR8  **Argv\r
   )\r
 {\r
-  UINT8   *Ptr;\r
+  UINT8   *Ptr, *CurrentAddress;\r
   UINT32  Address;\r
   UINT32  Count;\r
   CHAR8   Buffer[80];\r
@@ -57,13 +57,15 @@ EblDisassembler (
   }\r
   \r
   Address = AsciiStrHexToUintn (Argv[1]);\r
-  Count   = (Argc > 2) ? (UINT32)AsciiStrHexToUintn (Argv[2]) : 10;\r
+  Count   = (Argc > 2) ? (UINT32)AsciiStrHexToUintn (Argv[2]) : 20;\r
 \r
   Ptr = (UINT8 *)(UINTN)Address;  \r
-  while (Count-- > 0) {\r
+  do {\r
+    CurrentAddress = Ptr;\r
     DisassembleInstruction (&Ptr, TRUE, TRUE, Buffer, sizeof (Buffer));\r
-    AsciiPrint ("0x%08x: %a", Address, Buffer);\r
-  }\r
+    AsciiPrint ("0x%08x: %a\n", CurrentAddress, Buffer);\r
+  } while (Count-- > 0);\r
\r
 \r
   return EFI_SUCCESS;\r
 }\r