README This is a Memtest version for UEFI, based on the code of memtest86+ for BIOS. (TODO Link) >>Changelog<< - Replace bootloader by UEFI application entry point - UefiMain() - Libs and GenFW from edkII - Assembly to 64 bit version - Pointer to Int conversion - Display + General + Config menu + Scrollbuffer (no text mode) - Logger - GetMemoryMap() - SMBIOS Table - Keyboard Input TABLE OF CONTENTS ====================== 1) DEPENDENCIES 2) DOWNLOAD 3) HOW TO BUILD AND RUN 4) OPEN TASKS 5) CONTACT 1) DEPENDENCIES ==================== The build process is tested on - Ubuntu 18.04.5 LTS - Kernel version 5.4.0-80-generic - qemu-system-x86_64 version 2.11.1 - Uefi Spec 2.8 - gcc 7.5.0 - GNU Make 4.1 - System: Intel® Core™ i5-3470 CPU @ 3.20GHz × 4 AMD ... 2) DOWNLOAD ================ git clone git@git.openslx.org:openslx-ng/memtest86.git !! Note: If you want to make tests with Uefi's AllocatePages() function, switch to allocate-pages branch 3) HOW TO BUILD AND RUN ================== a) via QEMU: Open a Terminal, navigate into efi_memtest directory and execute -- sudo make to build and run in qemu -- sudo make run to run in qemu Inside QEMU: - type "fs0:" to switch into filesystems containing MemtestEfi.efi - type "MemtestEfi.efi" to run the application b) via USB: - Rename MemtestEfi.efi to BOOTX64.efi - Format USB drive to FAT32 - copy the efi file into /efi/boot/BOOTX64.efi - If you want to use the logger, create a file "memtest_log" in efi/ directory I had to disable the Networkstack in BIOS, then enter the bootmenu via F12 during the boot process and choose the USB drive c) via PXE: Create a TFTP server, copy MemtestEfi.efi on this server Enable Networkboot on the test computer 4) OPEN TASKS ================== The MemtestEfi project is still in development so there are still a lot of open tasks. You can see a summary of known issues at https://lab.ks.uni-freiburg.de/projects/memtest86-efi with no guarantee of completeness. The entry point is UefiMain() in MemtestEfi.c. This function calls test_start() which is the entry point of the original Memtest86+ code. 5) CONTACT =============== Regina König