Re: [edk2] Running EFI Shell

Subject: Re: [edk2] Running EFI Shell

From: Jordan Justen <jljusten@gmail.com>

To: edk2-devel@lists.sourceforge.net

Date: 2012-10-26 22:47:53

On Fri, Oct 26, 2012 at 12:43 AM,    wrote:
> I resoved that assert by additional loading Uc2OnUcThunk.efi and then Shell
> started.
> But now I have new question: how to load those *.efi files from Shell code?

Maybe a .nsh script could be used to load them and then the shell?

-Jordan

> 2012/10/26   
>>
>> >>I think it might be easier to change code in the newer UEFI shell.
>> Which newer UEFI Shell code you mean?
>>
>> I tried manually load HiiDatabase.efi and DevicePathDxe.efi, but after
>> that i got new error:
>> ASSERT_EFI_ERROR(Status= Device Error)
>> at that lines of code
>>   Status = ShellCommandLibConstructor (ImageHandle, SystemTable);
>>   ASSERT_EFI_ERROR (Status);
>> in Autogen.c
>>
>> P.S. to clarify, I would like to say that I will need to run builded shell
>> not from internal shell, but separately, placing on FAT partition to a file
>> EFI/BOOT/BOOTX64.EFI
>>
>> --
>> Valery.
>> 2012/10/26 Jordan Justen 
>>>
>>> On Thu, Oct 25, 2012 at 11:19 AM,   
>>> wrote:
>>> > Binaries in EdkShellBinPkg works pretty good, but, unfortunately, i
>>> > need to
>>> > build Shell, because i want to change some things.
>>>
>>> I think it might be easier to change code in the newer UEFI shell.
>>>
>>> > 2012/10/25 Jordan Justen 
>>> >> On Thu, Oct 25, 2012 at 6:53 AM,   
>>> >> wrote:
>>> >> > I am trying to build with GCC44 and run any version of EFI Shell
>>> >> > with
>>> >> > edk2. When I build ShellPkg and tried to run it, i got ASSERT() at
>>> >> > this point:
>>> >> >
>>> >> >  //
>>> >> >   // Retrieve the pointer to the UEFI HII String Protocol
>>> >> >   //
>>> >> >   Status = gBS->LocateProtocol (&gEfiHiiStringProtocolGuid, NULL,
>>> >> > (VOID **) &gHiiString);
>>> >> >   ASSERT_EFI_ERROR (Status);
>>> >>
>>> >> I believe this is what happens when you try to run the UEFI Shell on
>>> >> an older (EFI, not UEFI) system.
>>>
>>> I think Andrew Fish might have previously mentioned that it was
>>> possible to run the new shell on older systems by first loading the
>>> HiiDatabase.efi and DevicePathDxe.efi drivers on the system first.
>>>
>>> To do this, first build MdeModulePkg for your architecture.
>>>
>>> Then locate HiiDatabase.efi and DevicePathDxe.efi under the build
>>> directory.
>>>
>>> Then load the two drivers in the old EFI shell on your system:
>>> > load HiiDatabase.efi
>>> > load DevicePathDxe.efi
>>>
>>> Then run the new Shell.efi.
>>>
>>> Can you give this a try?
>>>
>>> If this is not workable for you, maybe Andrew or I could test the
>>> current GccShellPkg to see if it working.
>>>
>>> -Jordan
>>>
>>>
>>> ------------------------------------------------------------------------------
>>> Everyone hates slow websites. So do we.
>>> Make your web apps faster with AppDynamics
>>> Download AppDynamics Lite for free today:
>>> http://p.sf.net/sfu/appdyn_sfd2d_oct
>>> _______________________________________________
>>> edk2-devel mailing list
>>> edk2-devel@lists.sourceforge.net
>>> https://lists.sourceforge.net/lists/listinfo/edk2-devel
>>
>>
>
>
> ------------------------------------------------------------------------------
> Everyone hates slow websites. So do we.
> Make your web apps faster with AppDynamics
> Download AppDynamics Lite for free today:
> http://p.sf.net/sfu/appdyn_sfd2d_oct
> _______________________________________________
> edk2-devel mailing list
> edk2-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/edk2-devel
>

------------------------------------------------------------------------------
WINDOWS 8 is here. 
Millions of people.  Your app in 30 days.
Visit The Windows 8 Center at Sourceforge for all your go to resources.
http://windows8center.sourceforge.net/
join-generation-app-and-make-money-coding-fast/
_______________________________________________
edk2-devel mailing list
edk2-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/edk2-devel