#include #include EFI_STATUS efi_main (EFI_HANDLE image, EFI_SYSTEM_TABLE *systab) { unsigned long bytes, mbytes; CHAR16 *prompt = W2U(L"Enter number of Mbytes: "); CHAR16 input[255]; int input_len = 255; void *buffer; EFI_STATUS status; unsigned long i; long *temp; CHAR16 *ugh = W2U(L"test"); InitializeLib(image, systab); Input(prompt, input, input_len); mbytes = Atoi(input); bytes = mbytes*1024*1024; Print (W2U(L"\nAllocating pool of %d bytes\n"), bytes); status = BS->AllocatePool(EfiBootServicesData, bytes, &buffer); if(status != EFI_SUCCESS) { Print(W2U(L"AllocatePool Failed with ")); switch(status) { case EFI_OUT_OF_RESOURCES: Print(W2U(L"EFI_OUT_OF_RESOURCES\n")); break; case EFI_INVALID_PARAMETER: Print(W2U(L"EFI_INVALID_PARAMETER\n")); break; default: Print(W2U(L"%d\n"), status); } return status; } Print(W2U(L"Allocation succeeded. Buffer start :%016x\n"), buffer); Print(W2U(L"Setting Memory to 0xDEADBEEF")); for(i=0; iConIn->WaitForKey, 0); RT->ResetSystem(EfiResetWarm, EFI_SUCCESS, 0, NULL); return EFI_SUCCESS; }