3 Copyright (c) 2007, Intel Corporation
4 All rights reserved. This program and the accompanying materials
5 are licensed and made available under the terms and conditions of the BSD License
6 which accompanies this distribution. The full text of the license may be found at
7 http://opensource.org/licenses/bsd-license.php
9 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
10 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
25 IN CHAR16
*CommandArg
,
26 IN EFI_DEBUGGER_PRIVATE_DATA
*DebuggerPrivate
,
27 IN EFI_EXCEPTION_TYPE ExceptionType
,
28 IN OUT EFI_SYSTEM_CONTEXT SystemContext
34 DebuggerCommand - Help
38 CommandArg - The argument for this command
39 DebuggerPrivate - EBC Debugger private data structure
40 InterruptType - Interrupt type.
41 SystemContext - EBC system context.
45 EFI_DEBUG_CONTINUE - formal return value
52 // if no argument, print all the command title
54 if (CommandArg
== NULL
) {
55 for (Index
= 0; DebuggerPrivate
->DebuggerCommandSet
[Index
].CommandName
!= NULL
; Index
++) {
56 EDBPrint (DebuggerPrivate
->DebuggerCommandSet
[Index
].ClassName
);
57 if (StrCmp (DebuggerPrivate
->DebuggerCommandSet
[Index
].CommandTitle
, L
"") != 0) {
59 EDBPrint (DebuggerPrivate
->DebuggerCommandSet
[Index
].CommandTitle
);
62 return EFI_DEBUG_CONTINUE
;
66 // If there is argument, the argument should be command name.
67 // Find the command and print the detail information.
69 for (Index
= 0; DebuggerPrivate
->DebuggerCommandSet
[Index
].CommandName
!= NULL
; Index
++) {
70 if (StriCmp (CommandArg
, DebuggerPrivate
->DebuggerCommandSet
[Index
].CommandName
) == 0) {
71 EDBPrint (DebuggerPrivate
->DebuggerCommandSet
[Index
].CommandHelp
);
72 EDBPrint (DebuggerPrivate
->DebuggerCommandSet
[Index
].CommandSyntax
);
73 return EFI_DEBUG_CONTINUE
;
80 EDBPrint (L
"No help info for this command\n");
85 return EFI_DEBUG_CONTINUE
;