summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--GNU_efi_HelloWorld/Makefile1
-rwxr-xr-xGNU_efi_HelloWorld/analyse_hello.sh8
-rw-r--r--GNU_efi_HelloWorld/hello.c5
-rwxr-xr-xGNU_efi_HelloWorld/hello.efibin46888 -> 46888 bytes
-rw-r--r--GNU_efi_HelloWorld/hello.obin2112 -> 2112 bytes
-rwxr-xr-xGNU_efi_HelloWorld/hello.sobin2171456 -> 2171456 bytes
-rw-r--r--documentation/GDB commands2
-rw-r--r--test_code/OVMF_VARS.fdbin540672 -> 540672 bytes
-rwxr-xr-xtest_code/analyse_hello.sh13
9 files changed, 20 insertions, 9 deletions
diff --git a/GNU_efi_HelloWorld/Makefile b/GNU_efi_HelloWorld/Makefile
index 31195ee..448e3f7 100644
--- a/GNU_efi_HelloWorld/Makefile
+++ b/GNU_efi_HelloWorld/Makefile
@@ -20,6 +20,7 @@ LDFLAGS = -nostdlib -znocombreloc -T $(EFI_LDS) -shared \
-Bsymbolic -L $(EFILIB) $(EFI_CRT_OBJS)
all: $(TARGET)
+ cp hello.efi ../test_code/hda-contents/
hello.so: $(OBJS)
ld $(LDFLAGS) $(OBJS) -o $@ -lefi -lgnuefi
diff --git a/GNU_efi_HelloWorld/analyse_hello.sh b/GNU_efi_HelloWorld/analyse_hello.sh
deleted file mode 100755
index c8b3103..0000000
--- a/GNU_efi_HelloWorld/analyse_hello.sh
+++ /dev/null
@@ -1,8 +0,0 @@
-#!/bin/bash
-
-echo "objdump -h hello.efi"
-objdump -h hello.efi
-
-echo "########################################################################"
-echo "peinfo hello.efi | grep text -A 5"
-./peinfo hello.efi | grep text -A 5
diff --git a/GNU_efi_HelloWorld/hello.c b/GNU_efi_HelloWorld/hello.c
index 171db1e..f40df6e 100644
--- a/GNU_efi_HelloWorld/hello.c
+++ b/GNU_efi_HelloWorld/hello.c
@@ -1,5 +1,6 @@
#include <efi.h>
#include <efilib.h>
+#include <efidebug.h>
EFI_STATUS
EFIAPI
@@ -23,7 +24,9 @@ efi_main (EFI_HANDLE ImageHandle, EFI_SYSTEM_TABLE *SystemTable) {
Print(L"Image base: 0x%lx\n", loaded_image->ImageBase);
- int wait = 1;
+ DEBUG((D_ERROR, "AllocatePool: out of pool %x\n", status));
+
+ volatile int wait = 1;
while(wait) {
__asm__ __volatile__("pause");
}
diff --git a/GNU_efi_HelloWorld/hello.efi b/GNU_efi_HelloWorld/hello.efi
index c8399c0..f8ea7e2 100755
--- a/GNU_efi_HelloWorld/hello.efi
+++ b/GNU_efi_HelloWorld/hello.efi
Binary files differ
diff --git a/GNU_efi_HelloWorld/hello.o b/GNU_efi_HelloWorld/hello.o
index 21583fe..37f6971 100644
--- a/GNU_efi_HelloWorld/hello.o
+++ b/GNU_efi_HelloWorld/hello.o
Binary files differ
diff --git a/GNU_efi_HelloWorld/hello.so b/GNU_efi_HelloWorld/hello.so
index b64f729..089f3f7 100755
--- a/GNU_efi_HelloWorld/hello.so
+++ b/GNU_efi_HelloWorld/hello.so
Binary files differ
diff --git a/documentation/GDB commands b/documentation/GDB commands
index 3316a38..1cbd2ac 100644
--- a/documentation/GDB commands
+++ b/documentation/GDB commands
@@ -96,3 +96,5 @@ gdb --tui
- tui disable
- next
+
+ - ctrl+x o || change active window
diff --git a/test_code/OVMF_VARS.fd b/test_code/OVMF_VARS.fd
index 852d584..d1888bc 100644
--- a/test_code/OVMF_VARS.fd
+++ b/test_code/OVMF_VARS.fd
Binary files differ
diff --git a/test_code/analyse_hello.sh b/test_code/analyse_hello.sh
new file mode 100755
index 0000000..2e9187f
--- /dev/null
+++ b/test_code/analyse_hello.sh
@@ -0,0 +1,13 @@
+#!/bin/bash
+
+echo "#### \$objdump -h hello.efi"
+objdump -h hda-contents/hello.efi
+
+echo "########################################################################"
+echo "#### \$peinfo hello.efi | grep text -A 5"
+./peinfo hda-contents/hello.efi | grep text -A 5
+
+
+echo "########################################################################"
+echo "#### \$cat debug.log | grep hello -A 5"
+cat debug.log | grep hello -A 5