@sa InstallProtocolInterface\r
**/\r
EFI_STATUS\r
-ConsoleLoggerInstall(\r
- IN CONST UINTN ScreensToSave,\r
- OUT CONSOLE_LOGGER_PRIVATE_DATA **ConsoleInfo\r
+ConsoleLoggerInstall (\r
+ IN CONST UINTN ScreensToSave,\r
+ OUT CONSOLE_LOGGER_PRIVATE_DATA **ConsoleInfo\r
)\r
{\r
- EFI_STATUS Status;\r
- ASSERT(ConsoleInfo != NULL);\r
+ EFI_STATUS Status;\r
\r
- (*ConsoleInfo) = AllocateZeroPool(sizeof(CONSOLE_LOGGER_PRIVATE_DATA));\r
+ ASSERT (ConsoleInfo != NULL);\r
+\r
+ (*ConsoleInfo) = AllocateZeroPool (sizeof (CONSOLE_LOGGER_PRIVATE_DATA));\r
if ((*ConsoleInfo) == NULL) {\r
return (EFI_OUT_OF_RESOURCES);\r
}\r
(*ConsoleInfo)->OurConOut.Mode = gST->ConOut->Mode;\r
(*ConsoleInfo)->Enabled = TRUE;\r
\r
- Status = ConsoleLoggerResetBuffers(*ConsoleInfo);\r
- if (EFI_ERROR(Status)) {\r
- SHELL_FREE_NON_NULL((*ConsoleInfo));\r
+ Status = ConsoleLoggerResetBuffers (*ConsoleInfo);\r
+ if (EFI_ERROR (Status)) {\r
+ SHELL_FREE_NON_NULL ((*ConsoleInfo));\r
*ConsoleInfo = NULL;\r
return (Status);\r
}\r
\r
- Status = gBS->InstallProtocolInterface(&gImageHandle, &gEfiSimpleTextOutProtocolGuid, EFI_NATIVE_INTERFACE, (VOID*)&((*ConsoleInfo)->OurConOut));\r
- if (EFI_ERROR(Status)) {\r
- SHELL_FREE_NON_NULL((*ConsoleInfo)->Buffer);\r
- SHELL_FREE_NON_NULL((*ConsoleInfo)->Attributes);\r
- SHELL_FREE_NON_NULL((*ConsoleInfo));\r
+ Status = gBS->InstallProtocolInterface (&gImageHandle, &gEfiSimpleTextOutProtocolGuid, EFI_NATIVE_INTERFACE, (VOID *)&((*ConsoleInfo)->OurConOut));\r
+ if (EFI_ERROR (Status)) {\r
+ SHELL_FREE_NON_NULL ((*ConsoleInfo)->Buffer);\r
+ SHELL_FREE_NON_NULL ((*ConsoleInfo)->Attributes);\r
+ SHELL_FREE_NON_NULL ((*ConsoleInfo));\r
*ConsoleInfo = NULL;\r
return (Status);\r
}\r
//\r
gST->Hdr.CRC32 = 0;\r
gBS->CalculateCrc32 (\r
- (UINT8 *)&gST->Hdr,\r
- gST->Hdr.HeaderSize,\r
- &gST->Hdr.CRC32\r
- );\r
+ (UINT8 *)&gST->Hdr,\r
+ gST->Hdr.HeaderSize,\r
+ &gST->Hdr.CRC32\r
+ );\r
return (Status);\r
}\r
\r
@return other The operation failed. This was from UninstallProtocolInterface.\r
**/\r
EFI_STATUS\r
-ConsoleLoggerUninstall(\r
- IN CONSOLE_LOGGER_PRIVATE_DATA *ConsoleInfo\r
+ConsoleLoggerUninstall (\r
+ IN CONSOLE_LOGGER_PRIVATE_DATA *ConsoleInfo\r
)\r
{\r
- ASSERT(ConsoleInfo != NULL);\r
- ASSERT(ConsoleInfo->OldConOut != NULL);\r
+ ASSERT (ConsoleInfo != NULL);\r
+ ASSERT (ConsoleInfo->OldConOut != NULL);\r
\r
if (ConsoleInfo->Buffer != NULL) {\r
- FreePool(ConsoleInfo->Buffer);\r
- DEBUG_CODE(ConsoleInfo->Buffer = NULL;);\r
- DEBUG_CODE(ConsoleInfo->BufferSize = 0;);\r
+ FreePool (ConsoleInfo->Buffer);\r
+ DEBUG_CODE (\r
+ ConsoleInfo->Buffer = NULL;\r
+ );\r
+ DEBUG_CODE (\r
+ ConsoleInfo->BufferSize = 0;\r
+ );\r
}\r
+\r
if (ConsoleInfo->Attributes != NULL) {\r
- FreePool(ConsoleInfo->Attributes);\r
- DEBUG_CODE(ConsoleInfo->Attributes = NULL;);\r
- DEBUG_CODE(ConsoleInfo->AttribSize = 0;);\r
+ FreePool (ConsoleInfo->Attributes);\r
+ DEBUG_CODE (\r
+ ConsoleInfo->Attributes = NULL;\r
+ );\r
+ DEBUG_CODE (\r
+ ConsoleInfo->AttribSize = 0;\r
+ );\r
}\r
\r
gST->ConsoleOutHandle = ConsoleInfo->OldConHandle;\r
- gST->ConOut = ConsoleInfo->OldConOut;\r
+ gST->ConOut = ConsoleInfo->OldConOut;\r
\r
//\r
// Update the CRC32 in the EFI System Table header\r
//\r
gST->Hdr.CRC32 = 0;\r
gBS->CalculateCrc32 (\r
- (UINT8 *)&gST->Hdr,\r
- gST->Hdr.HeaderSize,\r
- &gST->Hdr.CRC32\r
- );\r
+ (UINT8 *)&gST->Hdr,\r
+ gST->Hdr.HeaderSize,\r
+ &gST->Hdr.CRC32\r
+ );\r
\r
- return (gBS->UninstallProtocolInterface(gImageHandle, &gEfiSimpleTextOutProtocolGuid, (VOID*)&ConsoleInfo->OurConOut));\r
+ return (gBS->UninstallProtocolInterface (gImageHandle, &gEfiSimpleTextOutProtocolGuid, (VOID *)&ConsoleInfo->OurConOut));\r
}\r
\r
/**\r
@param[in] ConsoleInfo The pointer to the instance of the console logger information.\r
**/\r
EFI_STATUS\r
-ConsoleLoggerDisplayHistory(\r
- IN CONST BOOLEAN Forward,\r
- IN CONST UINTN Rows,\r
- IN CONSOLE_LOGGER_PRIVATE_DATA *ConsoleInfo\r
+ConsoleLoggerDisplayHistory (\r
+ IN CONST BOOLEAN Forward,\r
+ IN CONST UINTN Rows,\r
+ IN CONSOLE_LOGGER_PRIVATE_DATA *ConsoleInfo\r
)\r
{\r
- UINTN RowChange;\r
+ UINTN RowChange;\r
\r
- ASSERT(ConsoleInfo != NULL);\r
+ ASSERT (ConsoleInfo != NULL);\r
\r
//\r
// Calculate the row number change\r
//\r
switch (Rows) {\r
- case ((UINTN)(-1)):\r
- RowChange = ConsoleInfo->RowsPerScreen;\r
- break;\r
- case (0):\r
- RowChange = ConsoleInfo->RowsPerScreen / 2;\r
- break;\r
- default:\r
- RowChange = Rows;\r
- break;\r
+ case ((UINTN)(-1)):\r
+ RowChange = ConsoleInfo->RowsPerScreen;\r
+ break;\r
+ case (0):\r
+ RowChange = ConsoleInfo->RowsPerScreen / 2;\r
+ break;\r
+ default:\r
+ RowChange = Rows;\r
+ break;\r
}\r
\r
//\r
//\r
// Clear the screen\r
//\r
- ConsoleInfo->OldConOut->ClearScreen(ConsoleInfo->OldConOut);\r
+ ConsoleInfo->OldConOut->ClearScreen (ConsoleInfo->OldConOut);\r
\r
//\r
// Set the new start row\r
//\r
// Change the screen\r
//\r
- return (UpdateDisplayFromHistory(ConsoleInfo));\r
+ return (UpdateDisplayFromHistory (ConsoleInfo));\r
}\r
\r
/**\r
@sa UpdateDisplayFromHistory\r
**/\r
EFI_STATUS\r
-ConsoleLoggerStopHistory(\r
- IN CONSOLE_LOGGER_PRIVATE_DATA *ConsoleInfo\r
+ConsoleLoggerStopHistory (\r
+ IN CONSOLE_LOGGER_PRIVATE_DATA *ConsoleInfo\r
)\r
{\r
- ASSERT(ConsoleInfo != NULL);\r
+ ASSERT (ConsoleInfo != NULL);\r
if (ConsoleInfo->CurrentStartRow == ConsoleInfo->OriginalStartRow) {\r
return (EFI_SUCCESS);\r
}\r
//\r
// Clear the screen\r
//\r
- ConsoleInfo->OldConOut->ClearScreen(ConsoleInfo->OldConOut);\r
+ ConsoleInfo->OldConOut->ClearScreen (ConsoleInfo->OldConOut);\r
\r
ConsoleInfo->CurrentStartRow = ConsoleInfo->OriginalStartRow;\r
- return (UpdateDisplayFromHistory(ConsoleInfo));\r
+ return (UpdateDisplayFromHistory (ConsoleInfo));\r
}\r
\r
/**\r
@return other The operation failed.\r
**/\r
EFI_STATUS\r
-UpdateDisplayFromHistory(\r
- IN CONSOLE_LOGGER_PRIVATE_DATA *ConsoleInfo\r
+UpdateDisplayFromHistory (\r
+ IN CONSOLE_LOGGER_PRIVATE_DATA *ConsoleInfo\r
)\r
{\r
- EFI_STATUS Status;\r
- EFI_STATUS RetVal;\r
- CHAR16 *Screen;\r
- INT32 *Attributes;\r
- UINTN CurrentRow;\r
- CHAR16 TempCharHolder;\r
- UINTN Column;\r
- INT32 CurrentAttrib;\r
- UINTN CurrentColumn;\r
- CHAR16 *StringSegment;\r
- CHAR16 *StringSegmentEnd;\r
- CHAR16 StringSegmentEndChar;\r
- INT32 OrigAttribute;\r
-\r
- ASSERT(ConsoleInfo != NULL);\r
+ EFI_STATUS Status;\r
+ EFI_STATUS RetVal;\r
+ CHAR16 *Screen;\r
+ INT32 *Attributes;\r
+ UINTN CurrentRow;\r
+ CHAR16 TempCharHolder;\r
+ UINTN Column;\r
+ INT32 CurrentAttrib;\r
+ UINTN CurrentColumn;\r
+ CHAR16 *StringSegment;\r
+ CHAR16 *StringSegmentEnd;\r
+ CHAR16 StringSegmentEndChar;\r
+ INT32 OrigAttribute;\r
+\r
+ ASSERT (ConsoleInfo != NULL);\r
TempCharHolder = CHAR_NULL;\r
- RetVal = EFI_SUCCESS;\r
- OrigAttribute = ConsoleInfo->OldConOut->Mode->Attribute;\r
+ RetVal = EFI_SUCCESS;\r
+ OrigAttribute = ConsoleInfo->OldConOut->Mode->Attribute;\r
\r
//\r
// Disable cursor visibility and move it to the top left corner\r
//\r
- ConsoleInfo->OldConOut->EnableCursor (ConsoleInfo->OldConOut, FALSE);\r
- ConsoleInfo->OldConOut->SetCursorPosition (ConsoleInfo->OldConOut, 0, 0);\r
+ ConsoleInfo->OldConOut->EnableCursor (ConsoleInfo->OldConOut, FALSE);\r
+ ConsoleInfo->OldConOut->SetCursorPosition (ConsoleInfo->OldConOut, 0, 0);\r
\r
- Screen = &ConsoleInfo->Buffer[(ConsoleInfo->ColsPerScreen + 2) * ConsoleInfo->CurrentStartRow];\r
+ Screen = &ConsoleInfo->Buffer[(ConsoleInfo->ColsPerScreen + 2) * ConsoleInfo->CurrentStartRow];\r
Attributes = &ConsoleInfo->Attributes[ConsoleInfo->ColsPerScreen * ConsoleInfo->CurrentStartRow];\r
for ( CurrentRow = 0\r
- ; CurrentRow < ConsoleInfo->RowsPerScreen\r
- ; CurrentRow++\r
- , Screen += (ConsoleInfo->ColsPerScreen + 2)\r
- , Attributes += ConsoleInfo->ColsPerScreen\r
- ){\r
+ ; CurrentRow < ConsoleInfo->RowsPerScreen\r
+ ; CurrentRow++,\r
+ Screen += (ConsoleInfo->ColsPerScreen + 2),\r
+ Attributes += ConsoleInfo->ColsPerScreen\r
+ )\r
+ {\r
//\r
// dont use the last char - prevents screen scroll\r
//\r
- if (CurrentRow == (ConsoleInfo->RowsPerScreen-1)){\r
- TempCharHolder = Screen[ConsoleInfo->ColsPerScreen - 1];\r
+ if (CurrentRow == (ConsoleInfo->RowsPerScreen-1)) {\r
+ TempCharHolder = Screen[ConsoleInfo->ColsPerScreen - 1];\r
Screen[ConsoleInfo->ColsPerScreen - 1] = CHAR_NULL;\r
}\r
\r
for ( Column = 0\r
- ; Column < ConsoleInfo->ColsPerScreen\r
- ; Column++\r
- ){\r
+ ; Column < ConsoleInfo->ColsPerScreen\r
+ ; Column++\r
+ )\r
+ {\r
if (Screen[Column] != CHAR_NULL) {\r
CurrentAttrib = Attributes[Column];\r
CurrentColumn = Column;\r
//\r
StringSegmentEndChar = CHAR_NULL;\r
for ( StringSegmentEnd = StringSegment\r
- ; *StringSegmentEnd != CHAR_NULL\r
- ; StringSegmentEnd++\r
- , Column++\r
- ){\r
+ ; *StringSegmentEnd != CHAR_NULL\r
+ ; StringSegmentEnd++,\r
+ Column++\r
+ )\r
+ {\r
if (Attributes[Column] != CurrentAttrib) {\r
StringSegmentEndChar = *StringSegmentEnd;\r
*StringSegmentEnd = CHAR_NULL;\r
// Now write out as much as had the same Attributes\r
//\r
\r
- ConsoleInfo->OldConOut->SetAttribute(ConsoleInfo->OldConOut, CurrentAttrib);\r
- ConsoleInfo->OldConOut->SetCursorPosition(ConsoleInfo->OldConOut, CurrentColumn, CurrentRow);\r
- Status = ConsoleInfo->OldConOut->OutputString(ConsoleInfo->OldConOut, StringSegment);\r
+ ConsoleInfo->OldConOut->SetAttribute (ConsoleInfo->OldConOut, CurrentAttrib);\r
+ ConsoleInfo->OldConOut->SetCursorPosition (ConsoleInfo->OldConOut, CurrentColumn, CurrentRow);\r
+ Status = ConsoleInfo->OldConOut->OutputString (ConsoleInfo->OldConOut, StringSegment);\r
\r
- if (EFI_ERROR(Status)) {\r
- ASSERT(FALSE);\r
+ if (EFI_ERROR (Status)) {\r
+ ASSERT (FALSE);\r
RetVal = Status;\r
}\r
\r
// a segment with that new attribute\r
//\r
if (StringSegmentEndChar != CHAR_NULL) {\r
- *StringSegmentEnd = StringSegmentEndChar;\r
+ *StringSegmentEnd = StringSegmentEndChar;\r
StringSegmentEndChar = CHAR_NULL;\r
Column--;\r
}\r
//\r
if (TempCharHolder != CHAR_NULL) {\r
Screen[ConsoleInfo->ColsPerScreen - 1] = TempCharHolder;\r
- TempCharHolder = CHAR_NULL;\r
+ TempCharHolder = CHAR_NULL;\r
}\r
} // row for loop\r
\r
//\r
if (ConsoleInfo->CurrentStartRow == ConsoleInfo->OriginalStartRow) {\r
ConsoleInfo->OldConOut->SetAttribute (\r
- ConsoleInfo->OldConOut,\r
- ConsoleInfo->HistoryMode.Attribute\r
- );\r
+ ConsoleInfo->OldConOut,\r
+ ConsoleInfo->HistoryMode.Attribute\r
+ );\r
ConsoleInfo->OldConOut->SetCursorPosition (\r
- ConsoleInfo->OldConOut,\r
- ConsoleInfo->HistoryMode.CursorColumn,\r
- ConsoleInfo->HistoryMode.CursorRow - ConsoleInfo->OriginalStartRow\r
- );\r
+ ConsoleInfo->OldConOut,\r
+ ConsoleInfo->HistoryMode.CursorColumn,\r
+ ConsoleInfo->HistoryMode.CursorRow - ConsoleInfo->OriginalStartRow\r
+ );\r
\r
Status = ConsoleInfo->OldConOut->EnableCursor (\r
- ConsoleInfo->OldConOut,\r
- ConsoleInfo->HistoryMode.CursorVisible\r
- );\r
+ ConsoleInfo->OldConOut,\r
+ ConsoleInfo->HistoryMode.CursorVisible\r
+ );\r
if (EFI_ERROR (Status)) {\r
RetVal = Status;\r
}\r
} else {\r
ConsoleInfo->OldConOut->SetAttribute (\r
- ConsoleInfo->OldConOut,\r
- OrigAttribute\r
- );\r
+ ConsoleInfo->OldConOut,\r
+ OrigAttribute\r
+ );\r
}\r
\r
return (RetVal);\r
EFI_STATUS\r
EFIAPI\r
ConsoleLoggerReset (\r
- IN EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL *This,\r
- IN BOOLEAN ExtendedVerification\r
+ IN EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL *This,\r
+ IN BOOLEAN ExtendedVerification\r
)\r
{\r
- EFI_STATUS Status;\r
- CONSOLE_LOGGER_PRIVATE_DATA *ConsoleInfo;\r
- ConsoleInfo = CONSOLE_LOGGER_PRIVATE_DATA_FROM_THIS(This);\r
+ EFI_STATUS Status;\r
+ CONSOLE_LOGGER_PRIVATE_DATA *ConsoleInfo;\r
+\r
+ ConsoleInfo = CONSOLE_LOGGER_PRIVATE_DATA_FROM_THIS (This);\r
\r
//\r
// Forward the request to the original ConOut\r
// Check that the buffers are still correct for logging\r
//\r
if (!EFI_ERROR (Status)) {\r
- ConsoleLoggerResetBuffers(ConsoleInfo);\r
+ ConsoleLoggerResetBuffers (ConsoleInfo);\r
if (ExtendedVerification) {\r
ConsoleInfo->OriginalStartRow = 0;\r
- ConsoleInfo->CurrentStartRow = 0;\r
+ ConsoleInfo->CurrentStartRow = 0;\r
}\r
}\r
\r
@param[in] ConsoleInfo The pointer to the instance of the console logger information.\r
**/\r
EFI_STATUS\r
-AppendStringToHistory(\r
- IN CONST CHAR16 *String,\r
- IN CONSOLE_LOGGER_PRIVATE_DATA *ConsoleInfo\r
+AppendStringToHistory (\r
+ IN CONST CHAR16 *String,\r
+ IN CONSOLE_LOGGER_PRIVATE_DATA *ConsoleInfo\r
)\r
{\r
CONST CHAR16 *Walker;\r
UINTN PrintIndex;\r
UINTN Index;\r
\r
- ASSERT(ConsoleInfo != NULL);\r
+ ASSERT (ConsoleInfo != NULL);\r
\r
for ( Walker = String\r
- ; Walker != NULL && *Walker != CHAR_NULL\r
- ; Walker++\r
- ){\r
+ ; Walker != NULL && *Walker != CHAR_NULL\r
+ ; Walker++\r
+ )\r
+ {\r
switch (*Walker) {\r
- case (CHAR_BACKSPACE):\r
- if (ConsoleInfo->HistoryMode.CursorColumn > 0) {\r
- ConsoleInfo->HistoryMode.CursorColumn--;\r
- }\r
- break;\r
- case (CHAR_LINEFEED):\r
- if (ConsoleInfo->HistoryMode.CursorRow >= (INT32)((ConsoleInfo->RowsPerScreen * ConsoleInfo->ScreenCount)-1)) {\r
- //\r
- // Should never be bigger\r
- //\r
- ASSERT(ConsoleInfo->HistoryMode.CursorRow == (INT32)((ConsoleInfo->RowsPerScreen * ConsoleInfo->ScreenCount)-1));\r
-\r
- //\r
- // scroll history attributes 'up' 1 row and set the last row to default attribute\r
- //\r
- CopySize = ConsoleInfo->ColsPerScreen\r
- * ((ConsoleInfo->RowsPerScreen * ConsoleInfo->ScreenCount) - 1)\r
- * sizeof(ConsoleInfo->Attributes[0]);\r
- ASSERT(CopySize < ConsoleInfo->AttribSize);\r
- CopyMem(\r
- ConsoleInfo->Attributes,\r
- ConsoleInfo->Attributes + ConsoleInfo->ColsPerScreen,\r
- CopySize\r
- );\r
-\r
- for ( Index = 0\r
- ; Index < ConsoleInfo->ColsPerScreen\r
- ; Index++\r
- ){\r
- *(ConsoleInfo->Attributes + (CopySize/sizeof(ConsoleInfo->Attributes[0])) + Index) = ConsoleInfo->HistoryMode.Attribute;\r
+ case (CHAR_BACKSPACE):\r
+ if (ConsoleInfo->HistoryMode.CursorColumn > 0) {\r
+ ConsoleInfo->HistoryMode.CursorColumn--;\r
}\r
\r
- //\r
- // scroll history buffer 'up' 1 row and set the last row to spaces (L' ')\r
- //\r
- CopySize = (ConsoleInfo->ColsPerScreen + 2)\r
- * ((ConsoleInfo->RowsPerScreen * ConsoleInfo->ScreenCount) - 1)\r
- * sizeof(ConsoleInfo->Buffer[0]);\r
- ASSERT(CopySize < ConsoleInfo->BufferSize);\r
- CopyMem(\r
- ConsoleInfo->Buffer,\r
- ConsoleInfo->Buffer + (ConsoleInfo->ColsPerScreen + 2),\r
- CopySize\r
- );\r
+ break;\r
+ case (CHAR_LINEFEED):\r
+ if (ConsoleInfo->HistoryMode.CursorRow >= (INT32)((ConsoleInfo->RowsPerScreen * ConsoleInfo->ScreenCount)-1)) {\r
+ //\r
+ // Should never be bigger\r
+ //\r
+ ASSERT (ConsoleInfo->HistoryMode.CursorRow == (INT32)((ConsoleInfo->RowsPerScreen * ConsoleInfo->ScreenCount)-1));\r
+\r
+ //\r
+ // scroll history attributes 'up' 1 row and set the last row to default attribute\r
+ //\r
+ CopySize = ConsoleInfo->ColsPerScreen\r
+ * ((ConsoleInfo->RowsPerScreen * ConsoleInfo->ScreenCount) - 1)\r
+ * sizeof (ConsoleInfo->Attributes[0]);\r
+ ASSERT (CopySize < ConsoleInfo->AttribSize);\r
+ CopyMem (\r
+ ConsoleInfo->Attributes,\r
+ ConsoleInfo->Attributes + ConsoleInfo->ColsPerScreen,\r
+ CopySize\r
+ );\r
+\r
+ for ( Index = 0\r
+ ; Index < ConsoleInfo->ColsPerScreen\r
+ ; Index++\r
+ )\r
+ {\r
+ *(ConsoleInfo->Attributes + (CopySize/sizeof (ConsoleInfo->Attributes[0])) + Index) = ConsoleInfo->HistoryMode.Attribute;\r
+ }\r
\r
- //\r
- // Set that last row of chars to spaces\r
- //\r
- SetMem16(((UINT8*)ConsoleInfo->Buffer)+CopySize, ConsoleInfo->ColsPerScreen*sizeof(CHAR16), L' ');\r
- } else {\r
- //\r
- // we are not on the last row\r
- //\r
+ //\r
+ // scroll history buffer 'up' 1 row and set the last row to spaces (L' ')\r
+ //\r
+ CopySize = (ConsoleInfo->ColsPerScreen + 2)\r
+ * ((ConsoleInfo->RowsPerScreen * ConsoleInfo->ScreenCount) - 1)\r
+ * sizeof (ConsoleInfo->Buffer[0]);\r
+ ASSERT (CopySize < ConsoleInfo->BufferSize);\r
+ CopyMem (\r
+ ConsoleInfo->Buffer,\r
+ ConsoleInfo->Buffer + (ConsoleInfo->ColsPerScreen + 2),\r
+ CopySize\r
+ );\r
+\r
+ //\r
+ // Set that last row of chars to spaces\r
+ //\r
+ SetMem16 (((UINT8 *)ConsoleInfo->Buffer)+CopySize, ConsoleInfo->ColsPerScreen*sizeof (CHAR16), L' ');\r
+ } else {\r
+ //\r
+ // we are not on the last row\r
+ //\r
+\r
+ //\r
+ // We should not be scrolling history\r
+ //\r
+ ASSERT (ConsoleInfo->OriginalStartRow == ConsoleInfo->CurrentStartRow);\r
+ //\r
+ // are we at the end of a row?\r
+ //\r
+ if (ConsoleInfo->HistoryMode.CursorRow == (INT32)(ConsoleInfo->OriginalStartRow + ConsoleInfo->RowsPerScreen - 1)) {\r
+ ConsoleInfo->OriginalStartRow++;\r
+ ConsoleInfo->CurrentStartRow++;\r
+ }\r
+\r
+ ConsoleInfo->HistoryMode.CursorRow++;\r
+ }\r
\r
+ break;\r
+ case (CHAR_CARRIAGE_RETURN):\r
//\r
- // We should not be scrolling history\r
+ // Move the cursor to the beginning of the current row.\r
//\r
- ASSERT (ConsoleInfo->OriginalStartRow == ConsoleInfo->CurrentStartRow);\r
+ ConsoleInfo->HistoryMode.CursorColumn = 0;\r
+ break;\r
+ default:\r
//\r
- // are we at the end of a row?\r
+ // Acrtually print characters into the history buffer\r
//\r
- if (ConsoleInfo->HistoryMode.CursorRow == (INT32) (ConsoleInfo->OriginalStartRow + ConsoleInfo->RowsPerScreen - 1)) {\r
- ConsoleInfo->OriginalStartRow++;\r
- ConsoleInfo->CurrentStartRow++;\r
- }\r
- ConsoleInfo->HistoryMode.CursorRow++;\r
- }\r
- break;\r
- case (CHAR_CARRIAGE_RETURN):\r
- //\r
- // Move the cursor to the beginning of the current row.\r
- //\r
- ConsoleInfo->HistoryMode.CursorColumn = 0;\r
- break;\r
- default:\r
- //\r
- // Acrtually print characters into the history buffer\r
- //\r
\r
- PrintIndex = ConsoleInfo->HistoryMode.CursorRow * ConsoleInfo->ColsPerScreen + ConsoleInfo->HistoryMode.CursorColumn;\r
-\r
- for ( // no initializer needed\r
- ; ConsoleInfo->HistoryMode.CursorColumn < (INT32) ConsoleInfo->ColsPerScreen\r
- ; ConsoleInfo->HistoryMode.CursorColumn++\r
- , PrintIndex++\r
- , Walker++\r
- ){\r
- if (*Walker == CHAR_NULL\r
- ||*Walker == CHAR_BACKSPACE\r
- ||*Walker == CHAR_LINEFEED\r
- ||*Walker == CHAR_CARRIAGE_RETURN\r
- ){\r
+ PrintIndex = ConsoleInfo->HistoryMode.CursorRow * ConsoleInfo->ColsPerScreen + ConsoleInfo->HistoryMode.CursorColumn;\r
+\r
+ for ( // no initializer needed\r
+ ; ConsoleInfo->HistoryMode.CursorColumn < (INT32)ConsoleInfo->ColsPerScreen\r
+ ; ConsoleInfo->HistoryMode.CursorColumn++,\r
+ PrintIndex++,\r
+ Walker++\r
+ )\r
+ {\r
+ if ( (*Walker == CHAR_NULL)\r
+ || (*Walker == CHAR_BACKSPACE)\r
+ || (*Walker == CHAR_LINEFEED)\r
+ || (*Walker == CHAR_CARRIAGE_RETURN)\r
+ )\r
+ {\r
Walker--;\r
break;\r
- }\r
- //\r
- // The buffer is 2*CursorRow more since it has that many \r\n characters at the end of each row.\r
- //\r
+ }\r
\r
- ASSERT(PrintIndex + ConsoleInfo->HistoryMode.CursorRow < ConsoleInfo->BufferSize);\r
- ConsoleInfo->Buffer[PrintIndex + (2*ConsoleInfo->HistoryMode.CursorRow)] = *Walker;\r
- ASSERT(PrintIndex < ConsoleInfo->AttribSize);\r
- ConsoleInfo->Attributes[PrintIndex] = ConsoleInfo->HistoryMode.Attribute;\r
- } // for loop\r
+ //\r
+ // The buffer is 2*CursorRow more since it has that many \r\n characters at the end of each row.\r
+ //\r
\r
- //\r
- // Add the carriage return and line feed at the end of the lines\r
- //\r
- if (ConsoleInfo->HistoryMode.CursorColumn >= (INT32)ConsoleInfo->ColsPerScreen) {\r
- AppendStringToHistory(L"\r\n", ConsoleInfo);\r
- Walker--;\r
- }\r
+ ASSERT (PrintIndex + ConsoleInfo->HistoryMode.CursorRow < ConsoleInfo->BufferSize);\r
+ ConsoleInfo->Buffer[PrintIndex + (2*ConsoleInfo->HistoryMode.CursorRow)] = *Walker;\r
+ ASSERT (PrintIndex < ConsoleInfo->AttribSize);\r
+ ConsoleInfo->Attributes[PrintIndex] = ConsoleInfo->HistoryMode.Attribute;\r
+ } // for loop\r
\r
- break;\r
+ //\r
+ // Add the carriage return and line feed at the end of the lines\r
+ //\r
+ if (ConsoleInfo->HistoryMode.CursorColumn >= (INT32)ConsoleInfo->ColsPerScreen) {\r
+ AppendStringToHistory (L"\r\n", ConsoleInfo);\r
+ Walker--;\r
+ }\r
+\r
+ break;\r
} // switch for character\r
} // for loop\r
\r
rendered and were skipped.\r
**/\r
EFI_STATUS\r
-ConsoleLoggerOutputStringSplit(\r
- IN CONST CHAR16 *String,\r
- IN CONSOLE_LOGGER_PRIVATE_DATA *ConsoleInfo\r
+ConsoleLoggerOutputStringSplit (\r
+ IN CONST CHAR16 *String,\r
+ IN CONSOLE_LOGGER_PRIVATE_DATA *ConsoleInfo\r
)\r
{\r
- EFI_STATUS Status;\r
+ EFI_STATUS Status;\r
\r
//\r
// Forward the request to the original ConOut\r
//\r
- Status = ConsoleInfo->OldConOut->OutputString (ConsoleInfo->OldConOut, (CHAR16*)String);\r
+ Status = ConsoleInfo->OldConOut->OutputString (ConsoleInfo->OldConOut, (CHAR16 *)String);\r
\r
- if (EFI_ERROR(Status)) {\r
+ if (EFI_ERROR (Status)) {\r
return (Status);\r
}\r
\r
- return (AppendStringToHistory(String, ConsoleInfo));\r
+ return (AppendStringToHistory (String, ConsoleInfo));\r
}\r
\r
/**\r
@return other Break was choosen\r
**/\r
EFI_STATUS\r
-ConsoleLoggerDoPageBreak(\r
+ConsoleLoggerDoPageBreak (\r
VOID\r
)\r
{\r
- SHELL_PROMPT_RESPONSE *Resp;\r
- EFI_STATUS Status;\r
+ SHELL_PROMPT_RESPONSE *Resp;\r
+ EFI_STATUS Status;\r
\r
Resp = NULL;\r
- ASSERT(ShellInfoObject.PageBreakEnabled);\r
+ ASSERT (ShellInfoObject.PageBreakEnabled);\r
ShellInfoObject.PageBreakEnabled = FALSE;\r
- Status = ShellPromptForResponseHii(ShellPromptResponseTypeQuitContinue, STRING_TOKEN(STR_SHELL_QUIT_CONT), ShellInfoObject.HiiHandle, (VOID**)&Resp);\r
+ Status = ShellPromptForResponseHii (ShellPromptResponseTypeQuitContinue, STRING_TOKEN (STR_SHELL_QUIT_CONT), ShellInfoObject.HiiHandle, (VOID **)&Resp);\r
ShellInfoObject.PageBreakEnabled = TRUE;\r
- ASSERT(Resp != NULL);\r
+ ASSERT (Resp != NULL);\r
if (Resp == NULL) {\r
return (EFI_NOT_FOUND);\r
}\r
- if (EFI_ERROR(Status)) {\r
+\r
+ if (EFI_ERROR (Status)) {\r
if (Resp != NULL) {\r
- FreePool(Resp);\r
+ FreePool (Resp);\r
}\r
+\r
return (Status);\r
}\r
+\r
if (*Resp == ShellPromptResponseContinue) {\r
- FreePool(Resp);\r
- ShellInfoObject.ConsoleInfo->RowCounter = 0;\r
-// ShellInfoObject.ConsoleInfo->OurConOut.Mode->CursorRow = 0;\r
-// ShellInfoObject.ConsoleInfo->OurConOut.Mode->CursorColumn = 0;\r
+ FreePool (Resp);\r
+ ShellInfoObject.ConsoleInfo->RowCounter = 0;\r
+ // ShellInfoObject.ConsoleInfo->OurConOut.Mode->CursorRow = 0;\r
+ // ShellInfoObject.ConsoleInfo->OurConOut.Mode->CursorColumn = 0;\r
\r
return (EFI_SUCCESS);\r
} else if (*Resp == ShellPromptResponseQuit) {\r
- FreePool(Resp);\r
+ FreePool (Resp);\r
ShellInfoObject.ConsoleInfo->Enabled = FALSE;\r
//\r
// When user wants to quit, the shell should stop running the command.\r
gBS->SignalEvent (ShellInfoObject.NewEfiShellProtocol->ExecutionBreak);\r
return (EFI_DEVICE_ERROR);\r
} else {\r
- ASSERT(FALSE);\r
+ ASSERT (FALSE);\r
}\r
+\r
return (EFI_SUCCESS);\r
}\r
+\r
/**\r
Worker function to handle printing the output with page breaks.\r
\r
rendered and were skipped.\r
**/\r
EFI_STATUS\r
-ConsoleLoggerPrintWithPageBreak(\r
- IN CONST CHAR16 *String,\r
- IN CONSOLE_LOGGER_PRIVATE_DATA *ConsoleInfo\r
+ConsoleLoggerPrintWithPageBreak (\r
+ IN CONST CHAR16 *String,\r
+ IN CONSOLE_LOGGER_PRIVATE_DATA *ConsoleInfo\r
)\r
{\r
CONST CHAR16 *Walker;\r
CHAR16 TempChar;\r
\r
StringCopy = NULL;\r
- StringCopy = StrnCatGrow(&StringCopy, NULL, String, 0);\r
+ StringCopy = StrnCatGrow (&StringCopy, NULL, String, 0);\r
if (StringCopy == NULL) {\r
return (EFI_OUT_OF_RESOURCES);\r
}\r
\r
- for ( Walker = StringCopy\r
- , LineStart = StringCopy\r
- ; Walker != NULL && *Walker != CHAR_NULL\r
- ; Walker++\r
- ){\r
+ for ( Walker = StringCopy,\r
+ LineStart = StringCopy\r
+ ; Walker != NULL && *Walker != CHAR_NULL\r
+ ; Walker++\r
+ )\r
+ {\r
switch (*Walker) {\r
- case (CHAR_BACKSPACE):\r
- if (ConsoleInfo->OurConOut.Mode->CursorColumn > 0) {\r
- ConsoleInfo->OurConOut.Mode->CursorColumn--;\r
- }\r
- break;\r
- case (CHAR_LINEFEED):\r
- //\r
- // add a temp NULL terminator\r
- //\r
- TempChar = *(Walker + 1);\r
- *((CHAR16*)(Walker+1)) = CHAR_NULL;\r
-\r
- //\r
- // output the string\r
- //\r
- ConsoleLoggerOutputStringSplit (LineStart, ConsoleInfo);\r
-\r
- //\r
- // restore the temp NULL terminator to its original character\r
- //\r
- *((CHAR16*)(Walker+1)) = TempChar;\r
-\r
- //\r
- // Update LineStart Variable\r
- //\r
- LineStart = Walker + 1;\r
-\r
- //\r
- // increment row count\r
- //\r
- ShellInfoObject.ConsoleInfo->RowCounter++;\r
- ConsoleInfo->OurConOut.Mode->CursorRow++;\r
-\r
- break;\r
- case (CHAR_CARRIAGE_RETURN):\r
- //\r
- // Move the cursor to the beginning of the current row.\r
- //\r
- ConsoleInfo->OurConOut.Mode->CursorColumn = 0;\r
- break;\r
- default:\r
- //\r
- // increment column count\r
- //\r
- ConsoleInfo->OurConOut.Mode->CursorColumn++;\r
- //\r
- // check if that is the last column\r
- //\r
- if ((INTN)ConsoleInfo->ColsPerScreen == ConsoleInfo->OurConOut.Mode->CursorColumn + 1) {\r
- //\r
- // output a line similar to the linefeed character.\r
- //\r
+ case (CHAR_BACKSPACE):\r
+ if (ConsoleInfo->OurConOut.Mode->CursorColumn > 0) {\r
+ ConsoleInfo->OurConOut.Mode->CursorColumn--;\r
+ }\r
\r
+ break;\r
+ case (CHAR_LINEFEED):\r
//\r
// add a temp NULL terminator\r
//\r
- TempChar = *(Walker + 1);\r
- *((CHAR16*)(Walker+1)) = CHAR_NULL;\r
+ TempChar = *(Walker + 1);\r
+ *((CHAR16 *)(Walker+1)) = CHAR_NULL;\r
\r
//\r
// output the string\r
//\r
// restore the temp NULL terminator to its original character\r
//\r
- *((CHAR16*)(Walker+1)) = TempChar;\r
+ *((CHAR16 *)(Walker+1)) = TempChar;\r
\r
//\r
// Update LineStart Variable\r
LineStart = Walker + 1;\r
\r
//\r
- // increment row count and zero the column\r
+ // increment row count\r
//\r
ShellInfoObject.ConsoleInfo->RowCounter++;\r
ConsoleInfo->OurConOut.Mode->CursorRow++;\r
+\r
+ break;\r
+ case (CHAR_CARRIAGE_RETURN):\r
+ //\r
+ // Move the cursor to the beginning of the current row.\r
+ //\r
ConsoleInfo->OurConOut.Mode->CursorColumn = 0;\r
- } // last column on line\r
- break;\r
+ break;\r
+ default:\r
+ //\r
+ // increment column count\r
+ //\r
+ ConsoleInfo->OurConOut.Mode->CursorColumn++;\r
+ //\r
+ // check if that is the last column\r
+ //\r
+ if ((INTN)ConsoleInfo->ColsPerScreen == ConsoleInfo->OurConOut.Mode->CursorColumn + 1) {\r
+ //\r
+ // output a line similar to the linefeed character.\r
+ //\r
+\r
+ //\r
+ // add a temp NULL terminator\r
+ //\r
+ TempChar = *(Walker + 1);\r
+ *((CHAR16 *)(Walker+1)) = CHAR_NULL;\r
+\r
+ //\r
+ // output the string\r
+ //\r
+ ConsoleLoggerOutputStringSplit (LineStart, ConsoleInfo);\r
+\r
+ //\r
+ // restore the temp NULL terminator to its original character\r
+ //\r
+ *((CHAR16 *)(Walker+1)) = TempChar;\r
+\r
+ //\r
+ // Update LineStart Variable\r
+ //\r
+ LineStart = Walker + 1;\r
+\r
+ //\r
+ // increment row count and zero the column\r
+ //\r
+ ShellInfoObject.ConsoleInfo->RowCounter++;\r
+ ConsoleInfo->OurConOut.Mode->CursorRow++;\r
+ ConsoleInfo->OurConOut.Mode->CursorColumn = 0;\r
+ } // last column on line\r
+\r
+ break;\r
} // switch for character\r
\r
//\r
// check if that was the last printable row. If yes handle PageBreak mode\r
//\r
if ((ConsoleInfo->RowsPerScreen) -1 == ShellInfoObject.ConsoleInfo->RowCounter) {\r
- if (EFI_ERROR(ConsoleLoggerDoPageBreak())) {\r
+ if (EFI_ERROR (ConsoleLoggerDoPageBreak ())) {\r
//\r
// We got an error which means 'break' and halt the printing\r
//\r
- SHELL_FREE_NON_NULL(StringCopy);\r
+ SHELL_FREE_NON_NULL (StringCopy);\r
return (EFI_DEVICE_ERROR);\r
}\r
}\r
} // for loop\r
\r
- if (LineStart != NULL && *LineStart != CHAR_NULL) {\r
+ if ((LineStart != NULL) && (*LineStart != CHAR_NULL)) {\r
ConsoleLoggerOutputStringSplit (LineStart, ConsoleInfo);\r
}\r
\r
- SHELL_FREE_NON_NULL(StringCopy);\r
+ SHELL_FREE_NON_NULL (StringCopy);\r
return (EFI_SUCCESS);\r
}\r
\r
EFI_STATUS\r
EFIAPI\r
ConsoleLoggerOutputString (\r
- IN EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL *This,\r
- IN CHAR16 *WString\r
+ IN EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL *This,\r
+ IN CHAR16 *WString\r
)\r
{\r
- EFI_STATUS Status;\r
- EFI_SIMPLE_TEXT_INPUT_EX_PROTOCOL *TxtInEx;\r
- EFI_KEY_DATA KeyData;\r
- UINTN EventIndex;\r
- CONSOLE_LOGGER_PRIVATE_DATA *ConsoleInfo;\r
+ EFI_STATUS Status;\r
+ EFI_SIMPLE_TEXT_INPUT_EX_PROTOCOL *TxtInEx;\r
+ EFI_KEY_DATA KeyData;\r
+ UINTN EventIndex;\r
+ CONSOLE_LOGGER_PRIVATE_DATA *ConsoleInfo;\r
\r
- ConsoleInfo = CONSOLE_LOGGER_PRIVATE_DATA_FROM_THIS(This);\r
+ ConsoleInfo = CONSOLE_LOGGER_PRIVATE_DATA_FROM_THIS (This);\r
if (ShellInfoObject.ShellInitSettings.BitUnion.Bits.NoConsoleOut) {\r
return (EFI_UNSUPPORTED);\r
}\r
- ASSERT(ShellInfoObject.ConsoleInfo == ConsoleInfo);\r
\r
- Status = gBS->HandleProtocol (gST->ConsoleInHandle, &gEfiSimpleTextInputExProtocolGuid, (VOID **) &TxtInEx);\r
+ ASSERT (ShellInfoObject.ConsoleInfo == ConsoleInfo);\r
+\r
+ Status = gBS->HandleProtocol (gST->ConsoleInHandle, &gEfiSimpleTextInputExProtocolGuid, (VOID **)&TxtInEx);\r
if (!EFI_ERROR (Status)) {\r
while (ShellInfoObject.HaltOutput) {\r
-\r
ShellInfoObject.HaltOutput = FALSE;\r
//\r
// just get some key\r
Status = gBS->WaitForEvent (1, &TxtInEx->WaitForKeyEx, &EventIndex);\r
ASSERT_EFI_ERROR (Status);\r
Status = TxtInEx->ReadKeyStrokeEx (TxtInEx, &KeyData);\r
- if (EFI_ERROR(Status)) {\r
+ if (EFI_ERROR (Status)) {\r
break;\r
}\r
\r
((KeyData.KeyState.KeyShiftState == (EFI_SHIFT_STATE_VALID | EFI_LEFT_CONTROL_PRESSED)) ||\r
(KeyData.KeyState.KeyShiftState == (EFI_SHIFT_STATE_VALID | EFI_RIGHT_CONTROL_PRESSED))\r
)\r
- ) {\r
+ )\r
+ {\r
ShellInfoObject.HaltOutput = TRUE;\r
}\r
}\r
if (!ShellInfoObject.ConsoleInfo->Enabled) {\r
return (EFI_DEVICE_ERROR);\r
} else if (ShellInfoObject.PageBreakEnabled) {\r
- return (ConsoleLoggerPrintWithPageBreak(WString, ConsoleInfo));\r
+ return (ConsoleLoggerPrintWithPageBreak (WString, ConsoleInfo));\r
} else {\r
- return (ConsoleLoggerOutputStringSplit(WString, ConsoleInfo));\r
+ return (ConsoleLoggerOutputStringSplit (WString, ConsoleInfo));\r
}\r
}\r
\r
EFIAPI\r
ConsoleLoggerTestString (\r
IN EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL *This,\r
- IN CHAR16 *WString\r
+ IN CHAR16 *WString\r
)\r
{\r
- CONSOLE_LOGGER_PRIVATE_DATA *ConsoleInfo;\r
- ConsoleInfo = CONSOLE_LOGGER_PRIVATE_DATA_FROM_THIS(This);\r
+ CONSOLE_LOGGER_PRIVATE_DATA *ConsoleInfo;\r
+\r
+ ConsoleInfo = CONSOLE_LOGGER_PRIVATE_DATA_FROM_THIS (This);\r
//\r
// Forward the request to the original ConOut\r
//\r
EFIAPI\r
ConsoleLoggerQueryMode (\r
IN EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL *This,\r
- IN UINTN ModeNumber,\r
- OUT UINTN *Columns,\r
- OUT UINTN *Rows\r
+ IN UINTN ModeNumber,\r
+ OUT UINTN *Columns,\r
+ OUT UINTN *Rows\r
)\r
{\r
- CONSOLE_LOGGER_PRIVATE_DATA *ConsoleInfo;\r
- ConsoleInfo = CONSOLE_LOGGER_PRIVATE_DATA_FROM_THIS(This);\r
+ CONSOLE_LOGGER_PRIVATE_DATA *ConsoleInfo;\r
+\r
+ ConsoleInfo = CONSOLE_LOGGER_PRIVATE_DATA_FROM_THIS (This);\r
//\r
// Forward the request to the original ConOut\r
//\r
return (ConsoleInfo->OldConOut->QueryMode (\r
- ConsoleInfo->OldConOut,\r
- ModeNumber,\r
- Columns,\r
- Rows\r
- ));\r
+ ConsoleInfo->OldConOut,\r
+ ModeNumber,\r
+ Columns,\r
+ Rows\r
+ ));\r
}\r
\r
/**\r
EFI_STATUS\r
EFIAPI\r
ConsoleLoggerSetMode (\r
- IN EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL *This,\r
- IN UINTN ModeNumber\r
+ IN EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL *This,\r
+ IN UINTN ModeNumber\r
)\r
{\r
- EFI_STATUS Status;\r
+ EFI_STATUS Status;\r
\r
- CONSOLE_LOGGER_PRIVATE_DATA *ConsoleInfo;\r
- ConsoleInfo = CONSOLE_LOGGER_PRIVATE_DATA_FROM_THIS(This);\r
+ CONSOLE_LOGGER_PRIVATE_DATA *ConsoleInfo;\r
+\r
+ ConsoleInfo = CONSOLE_LOGGER_PRIVATE_DATA_FROM_THIS (This);\r
\r
//\r
// Forward the request to the original ConOut\r
//\r
if (!EFI_ERROR (Status)) {\r
ConsoleInfo->OurConOut.Mode = ConsoleInfo->OldConOut->Mode;\r
- ConsoleLoggerResetBuffers(ConsoleInfo);\r
+ ConsoleLoggerResetBuffers (ConsoleInfo);\r
ConsoleInfo->OriginalStartRow = 0;\r
- ConsoleInfo->CurrentStartRow = 0;\r
+ ConsoleInfo->CurrentStartRow = 0;\r
ConsoleInfo->OurConOut.ClearScreen (&ConsoleInfo->OurConOut);\r
}\r
\r
EFI_STATUS\r
EFIAPI\r
ConsoleLoggerSetAttribute (\r
- IN EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL *This,\r
- IN UINTN Attribute\r
+ IN EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL *This,\r
+ IN UINTN Attribute\r
)\r
{\r
- EFI_STATUS Status;\r
+ EFI_STATUS Status;\r
\r
- CONSOLE_LOGGER_PRIVATE_DATA *ConsoleInfo;\r
- ConsoleInfo = CONSOLE_LOGGER_PRIVATE_DATA_FROM_THIS(This);\r
+ CONSOLE_LOGGER_PRIVATE_DATA *ConsoleInfo;\r
+\r
+ ConsoleInfo = CONSOLE_LOGGER_PRIVATE_DATA_FROM_THIS (This);\r
\r
//\r
// Forward the request to the original ConOut\r
// Record console output history\r
//\r
if (!EFI_ERROR (Status)) {\r
- ConsoleInfo->HistoryMode.Attribute = (INT32) Attribute;\r
+ ConsoleInfo->HistoryMode.Attribute = (INT32)Attribute;\r
}\r
\r
return Status;\r
IN EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL *This\r
)\r
{\r
- EFI_STATUS Status;\r
- CHAR16 *Screen;\r
- INT32 *Attributes;\r
- UINTN Row;\r
- UINTN Column;\r
- CONSOLE_LOGGER_PRIVATE_DATA *ConsoleInfo;\r
+ EFI_STATUS Status;\r
+ CHAR16 *Screen;\r
+ INT32 *Attributes;\r
+ UINTN Row;\r
+ UINTN Column;\r
+ CONSOLE_LOGGER_PRIVATE_DATA *ConsoleInfo;\r
\r
if (ShellInfoObject.ShellInitSettings.BitUnion.Bits.NoConsoleOut) {\r
return (EFI_UNSUPPORTED);\r
}\r
\r
- ConsoleInfo = CONSOLE_LOGGER_PRIVATE_DATA_FROM_THIS(This);\r
+ ConsoleInfo = CONSOLE_LOGGER_PRIVATE_DATA_FROM_THIS (This);\r
\r
//\r
// Forward the request to the original ConOut\r
// Record console output history\r
//\r
if (!EFI_ERROR (Status)) {\r
- Screen = &ConsoleInfo->Buffer[(ConsoleInfo->ColsPerScreen + 2) * ConsoleInfo->CurrentStartRow];\r
+ Screen = &ConsoleInfo->Buffer[(ConsoleInfo->ColsPerScreen + 2) * ConsoleInfo->CurrentStartRow];\r
Attributes = &ConsoleInfo->Attributes[ConsoleInfo->ColsPerScreen * ConsoleInfo->CurrentStartRow];\r
for ( Row = ConsoleInfo->OriginalStartRow\r
- ; Row < (ConsoleInfo->RowsPerScreen * ConsoleInfo->ScreenCount)\r
- ; Row++\r
- ){\r
+ ; Row < (ConsoleInfo->RowsPerScreen * ConsoleInfo->ScreenCount)\r
+ ; Row++\r
+ )\r
+ {\r
for ( Column = 0\r
- ; Column < ConsoleInfo->ColsPerScreen\r
- ; Column++\r
- , Screen++\r
- , Attributes++\r
- ){\r
- *Screen = L' ';\r
+ ; Column < ConsoleInfo->ColsPerScreen\r
+ ; Column++,\r
+ Screen++,\r
+ Attributes++\r
+ )\r
+ {\r
+ *Screen = L' ';\r
*Attributes = ConsoleInfo->OldConOut->Mode->Attribute;\r
}\r
+\r
//\r
// Skip the NULL on each column end in text buffer only\r
//\r
Screen += 2;\r
}\r
+\r
ConsoleInfo->HistoryMode.CursorColumn = 0;\r
ConsoleInfo->HistoryMode.CursorRow = 0;\r
}\r
EFIAPI\r
ConsoleLoggerSetCursorPosition (\r
IN EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL *This,\r
- IN UINTN Column,\r
- IN UINTN Row\r
+ IN UINTN Column,\r
+ IN UINTN Row\r
)\r
{\r
- EFI_STATUS Status;\r
- CONSOLE_LOGGER_PRIVATE_DATA *ConsoleInfo;\r
+ EFI_STATUS Status;\r
+ CONSOLE_LOGGER_PRIVATE_DATA *ConsoleInfo;\r
\r
if (ShellInfoObject.ShellInitSettings.BitUnion.Bits.NoConsoleOut) {\r
return (EFI_UNSUPPORTED);\r
}\r
\r
- ConsoleInfo = CONSOLE_LOGGER_PRIVATE_DATA_FROM_THIS(This);\r
+ ConsoleInfo = CONSOLE_LOGGER_PRIVATE_DATA_FROM_THIS (This);\r
//\r
// Forward the request to the original ConOut\r
//\r
Status = ConsoleInfo->OldConOut->SetCursorPosition (\r
- ConsoleInfo->OldConOut,\r
- Column,\r
- Row\r
- );\r
+ ConsoleInfo->OldConOut,\r
+ Column,\r
+ Row\r
+ );\r
\r
//\r
// Record console output history\r
EFIAPI\r
ConsoleLoggerEnableCursor (\r
IN EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL *This,\r
- IN BOOLEAN Visible\r
+ IN BOOLEAN Visible\r
)\r
{\r
- EFI_STATUS Status;\r
+ EFI_STATUS Status;\r
\r
- CONSOLE_LOGGER_PRIVATE_DATA *ConsoleInfo;\r
- ConsoleInfo = CONSOLE_LOGGER_PRIVATE_DATA_FROM_THIS(This);\r
+ CONSOLE_LOGGER_PRIVATE_DATA *ConsoleInfo;\r
+\r
+ ConsoleInfo = CONSOLE_LOGGER_PRIVATE_DATA_FROM_THIS (This);\r
//\r
// Forward the request to the original ConOut\r
//\r
history buffers.\r
**/\r
EFI_STATUS\r
-ConsoleLoggerResetBuffers(\r
- IN CONSOLE_LOGGER_PRIVATE_DATA *ConsoleInfo\r
+ConsoleLoggerResetBuffers (\r
+ IN CONSOLE_LOGGER_PRIVATE_DATA *ConsoleInfo\r
)\r
{\r
- EFI_STATUS Status;\r
+ EFI_STATUS Status;\r
\r
if (ConsoleInfo->Buffer != NULL) {\r
- FreePool(ConsoleInfo->Buffer);\r
+ FreePool (ConsoleInfo->Buffer);\r
ConsoleInfo->Buffer = NULL;\r
ConsoleInfo->BufferSize = 0;\r
}\r
+\r
if (ConsoleInfo->Attributes != NULL) {\r
- FreePool(ConsoleInfo->Attributes);\r
+ FreePool (ConsoleInfo->Attributes);\r
ConsoleInfo->Attributes = NULL;\r
ConsoleInfo->AttribSize = 0;\r
}\r
\r
Status = gST->ConOut->QueryMode (gST->ConOut, gST->ConOut->Mode->Mode, &ConsoleInfo->ColsPerScreen, &ConsoleInfo->RowsPerScreen);\r
- if (EFI_ERROR(Status)){\r
+ if (EFI_ERROR (Status)) {\r
return (Status);\r
}\r
\r
- ConsoleInfo->BufferSize = (ConsoleInfo->ColsPerScreen + 2) * ConsoleInfo->RowsPerScreen * ConsoleInfo->ScreenCount * sizeof(ConsoleInfo->Buffer[0]);\r
- ConsoleInfo->AttribSize = ConsoleInfo->ColsPerScreen * ConsoleInfo->RowsPerScreen * ConsoleInfo->ScreenCount * sizeof(ConsoleInfo->Attributes[0]);\r
+ ConsoleInfo->BufferSize = (ConsoleInfo->ColsPerScreen + 2) * ConsoleInfo->RowsPerScreen * ConsoleInfo->ScreenCount * sizeof (ConsoleInfo->Buffer[0]);\r
+ ConsoleInfo->AttribSize = ConsoleInfo->ColsPerScreen * ConsoleInfo->RowsPerScreen * ConsoleInfo->ScreenCount * sizeof (ConsoleInfo->Attributes[0]);\r
\r
- ConsoleInfo->Buffer = (CHAR16*)AllocateZeroPool(ConsoleInfo->BufferSize);\r
+ ConsoleInfo->Buffer = (CHAR16 *)AllocateZeroPool (ConsoleInfo->BufferSize);\r
\r
if (ConsoleInfo->Buffer == NULL) {\r
return (EFI_OUT_OF_RESOURCES);\r
}\r
\r
- ConsoleInfo->Attributes = (INT32*)AllocateZeroPool(ConsoleInfo->AttribSize);\r
+ ConsoleInfo->Attributes = (INT32 *)AllocateZeroPool (ConsoleInfo->AttribSize);\r
if (ConsoleInfo->Attributes == NULL) {\r
- FreePool(ConsoleInfo->Buffer);\r
- ConsoleInfo->Buffer = NULL;\r
+ FreePool (ConsoleInfo->Buffer);\r
+ ConsoleInfo->Buffer = NULL;\r
return (EFI_OUT_OF_RESOURCES);\r
}\r
\r