## @file\r
#\r
-# EFI/Framework Emulation Platform with UEFI HII interface supported.\r
+# UEFI/PI Emulation Platform with UEFI HII interface supported.\r
#\r
# The Emulation Platform can be used to debug individual modules, prior to creating\r
# a real platform. This also provides an example for how an DSC is created.\r
PLATFORM_GUID = 05FD064D-1073-E844-936C-A0E16317107D\r
PLATFORM_VERSION = 0.3\r
DSC_ SPECIFICATION = 0x00010005\r
+!if $(BUILD_32)\r
+ OUTPUT_DIRECTORY = Build/EmuUnixIa32\r
+!else\r
OUTPUT_DIRECTORY = Build/EmuUnixX64\r
- SUPPORTED_ARCHITECTURES = X64\r
+!endif\r
+\r
+ SUPPORTED_ARCHITECTURES = X64|IA32\r
BUILD_TARGETS = DEBUG|RELEASE\r
SKUID_IDENTIFIER = DEFAULT\r
FLASH_DEFINITION = InOsEmuPkg/Unix/UnixX64.fdf\r
\r
gInOsEmuPkgTokenSpaceGuid.PcdEmuApCount|L"1"\r
\r
+ # For a CD-ROM/DVD use L"diag.dmg:RO:2048"\r
gInOsEmuPkgTokenSpaceGuid.PcdEmuVirtualDisk|L"disk.dmg:FW"\r
gInOsEmuPkgTokenSpaceGuid.PcdEmuGop|L"GOP Window"\r
gInOsEmuPkgTokenSpaceGuid.PcdEmuFileSystem|L".!../../../../EdkShellBinPkg/Bin"\r
# generated for it, but the binary will not be put into any firmware volume.\r
#\r
###################################################################################################\r
+\r
+[Components.X64]\r
+ MdeModulePkg/Core/DxeIplPeim/DxeIpl.inf {\r
+ <LibraryClasses>\r
+ # turn off CR3 write so that DXE IPL will not crash emulator\r
+ BaseLib|UnixPkg/Library/UnixBaseLib/UnixBaseLib.inf\r
+ }\r
+\r
+[Components.IA32]\r
+ MdeModulePkg/Core/DxeIplPeim/DxeIpl.inf \r
+\r
[Components]\r
!if $(SEC_ONLY)\r
##\r
- # SEC Phase modules\r
+ # Emulator, OS POSIX application\r
##\r
InOsEmuPkg/Unix/Sec/SecMain.inf\r
!else\r
InOsEmuPkg/FirmwareVolumePei/FirmwareVolumePei.inf\r
InOsEmuPkg/FlashMapPei/FlashMapPei.inf\r
InOsEmuPkg/ThunkPpiToProtocolPei/ThunkPpiToProtocolPei.inf\r
- MdeModulePkg/Core/DxeIplPeim/DxeIpl.inf {\r
- <LibraryClasses>\r
- # turn off CR3 write so that DXE IPL will not crash emulator\r
- BaseLib|UnixPkg/Library/UnixBaseLib/UnixBaseLib.inf\r
- }\r
\r
##\r
# DXE Phase modules\r
MdeModulePkg/Universal/Console/TerminalDxe/TerminalDxe.inf\r
IntelFrameworkModulePkg/Universal/BdsDxe/BdsDxe.inf\r
MdeModulePkg/Universal/DevicePathDxe/DevicePathDxe.inf \r
- # {\r
- # <LibraryClasses> \r
- # NULL|InOsEmuPkg/Library/DevicePathTextLib/DevicePathTextLib.inf\r
- # }\r
+ #{\r
+ # <LibraryClasses> \r
+ # NULL|InOsEmuPkg/Library/DevicePathTextLib/DevicePathTextLib.inf\r
+ #}\r
\r
MdeModulePkg/Universal/Disk/DiskIoDxe/DiskIoDxe.inf\r
MdeModulePkg/Universal/Disk/PartitionDxe/PartitionDxe.inf\r
ShellLib|ShellPkg/Library/UefiShellLib/UefiShellLib.inf\r
SortLib|ShellPkg/Library/UefiSortLib/UefiSortLib.inf\r
PrintLib|MdePkg/Library/BasePrintLib/BasePrintLib.inf\r
+# SafeBlockIoLib|ShellPkg/Library/SafeBlockIoLib/SafeBlockIoLib.inf\r
+# SafeOpenProtocolLib|ShellPkg/Library/SafeOpenProtocolLib/SafeOpenProtocolLib.inf\r
+\r
<PcdsFixedAtBuild>\r
gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask|0xFF\r
gEfiShellPkgTokenSpaceGuid.PcdShellLibAutoInitialize|FALSE\r