From 0c826060e7014f20254ad81504ada6281400471f Mon Sep 17 00:00:00 2001
From: Bensong Liu <bensl@microsoft.com>
Date: Mon, 7 Dec 2020 17:33:58 +0800
Subject: [PATCH] cleanup repo

---
 Makefile                                            |  8 +++++---
 bootloader-legacy/Makefile                          | 13 +++++++------
 bootloader-legacy/boot.asm                          |  4 ++++
 {efi => playground}/efi_helo.demo/build.sh          |  0
 {efi => playground}/efi_helo.demo/efi/LICENSE       |  0
 {efi => playground}/efi_helo.demo/efi/README.md     |  0
 {efi => playground}/efi_helo.demo/efi/efi-bs.h      |  0
 {efi => playground}/efi_helo.demo/efi/efi-ct.h      |  0
 {efi => playground}/efi_helo.demo/efi/efi-rs.h      |  0
 {efi => playground}/efi_helo.demo/efi/efi-st.h      |  0
 {efi => playground}/efi_helo.demo/efi/efi-time.h    |  0
 {efi => playground}/efi_helo.demo/efi/efi.h         |  0
 .../efi_helo.demo/efi/protocol/efi-acpitp.h         |  0
 .../efi_helo.demo/efi/protocol/efi-dpp.h            |  0
 .../efi_helo.demo/efi/protocol/efi-fp.h             |  0
 .../efi_helo.demo/efi/protocol/efi-gop.h            |  0
 .../efi_helo.demo/efi/protocol/efi-lidpp.h          |  0
 .../efi_helo.demo/efi/protocol/efi-lip.h            |  0
 .../efi_helo.demo/efi/protocol/efi-sfsp.h           |  0
 .../efi_helo.demo/efi/protocol/efi-stip.h           |  0
 .../efi_helo.demo/efi/protocol/efi-stop.h           |  0
 .../efi_helo.demo/efi/protocol/efi-vmpp.h           |  0
 {efi => playground}/efi_helo.demo/ehelo.demo.c      |  0
 {bootloader-legacy => playground}/test.asm          |  0
 24 files changed, 16 insertions(+), 9 deletions(-)
 rename {efi => playground}/efi_helo.demo/build.sh (100%)
 rename {efi => playground}/efi_helo.demo/efi/LICENSE (100%)
 rename {efi => playground}/efi_helo.demo/efi/README.md (100%)
 rename {efi => playground}/efi_helo.demo/efi/efi-bs.h (100%)
 rename {efi => playground}/efi_helo.demo/efi/efi-ct.h (100%)
 rename {efi => playground}/efi_helo.demo/efi/efi-rs.h (100%)
 rename {efi => playground}/efi_helo.demo/efi/efi-st.h (100%)
 rename {efi => playground}/efi_helo.demo/efi/efi-time.h (100%)
 rename {efi => playground}/efi_helo.demo/efi/efi.h (100%)
 rename {efi => playground}/efi_helo.demo/efi/protocol/efi-acpitp.h (100%)
 rename {efi => playground}/efi_helo.demo/efi/protocol/efi-dpp.h (100%)
 rename {efi => playground}/efi_helo.demo/efi/protocol/efi-fp.h (100%)
 rename {efi => playground}/efi_helo.demo/efi/protocol/efi-gop.h (100%)
 rename {efi => playground}/efi_helo.demo/efi/protocol/efi-lidpp.h (100%)
 rename {efi => playground}/efi_helo.demo/efi/protocol/efi-lip.h (100%)
 rename {efi => playground}/efi_helo.demo/efi/protocol/efi-sfsp.h (100%)
 rename {efi => playground}/efi_helo.demo/efi/protocol/efi-stip.h (100%)
 rename {efi => playground}/efi_helo.demo/efi/protocol/efi-stop.h (100%)
 rename {efi => playground}/efi_helo.demo/efi/protocol/efi-vmpp.h (100%)
 rename {efi => playground}/efi_helo.demo/ehelo.demo.c (100%)
 rename {bootloader-legacy => playground}/test.asm (100%)

diff --git a/Makefile b/Makefile
index c29155a..6347967 100644
--- a/Makefile
+++ b/Makefile
@@ -1,14 +1,16 @@
 
+BITS ?= 64
+
 default: assemble-legacy
 
 bootloader-legacy:
-	$(MAKE) -C bootloader-legacy
+	BITS=$(BITS) $(MAKE) -C bootloader-legacy
 
 bootloader-uefi:
-	$(MAKE) -C bootloader-uefi
+	# BITS=$(BITS) $(MAKE) -C bootloader-uefi
 
 kernel:
-	$(MAKE) -C kernel
+	BITS=$(BITS) $(MAKE) -C kernel
 
 .PHONY: bootloader-legacy bootloader-uefi kernel
 
diff --git a/bootloader-legacy/Makefile b/bootloader-legacy/Makefile
index 8fa0cee..1e60247 100644
--- a/bootloader-legacy/Makefile
+++ b/bootloader-legacy/Makefile
@@ -1,11 +1,12 @@
-build:
-	nasm -f bin boot.asm -o boot.img
-
-build_x86:
-
-build_x86_64:
+BITS ?= 64
 
+build:
+	nasm -f bin boot.asm -DTARGET_BITS=$(BITS) -o boot.img
 
 run: build
 	qemu-system-x86_64 boot.img
 
+clean:
+	rm -f boot.img
+
+
diff --git a/bootloader-legacy/boot.asm b/bootloader-legacy/boot.asm
index 58d5801..df57a71 100644
--- a/bootloader-legacy/boot.asm
+++ b/bootloader-legacy/boot.asm
@@ -100,6 +100,7 @@ _prot_begin:
     mov ebx, _motd_32
     call println_vga
 
+%if TARGET_BITS == 64
     ; Test if 64bit available
     call test_support_long_mode
     cmp eax, 0
@@ -112,6 +113,9 @@ _test_passed:
     jmp inline_enter_long_mode
 %include "./inline_x64lib.inc"
     jmp _call_kern_64
+%else
+    jmp _call_kern_32
+%endif
 
 [bits 32]
 _call_kern_32:
diff --git a/efi/efi_helo.demo/build.sh b/playground/efi_helo.demo/build.sh
similarity index 100%
rename from efi/efi_helo.demo/build.sh
rename to playground/efi_helo.demo/build.sh
diff --git a/efi/efi_helo.demo/efi/LICENSE b/playground/efi_helo.demo/efi/LICENSE
similarity index 100%
rename from efi/efi_helo.demo/efi/LICENSE
rename to playground/efi_helo.demo/efi/LICENSE
diff --git a/efi/efi_helo.demo/efi/README.md b/playground/efi_helo.demo/efi/README.md
similarity index 100%
rename from efi/efi_helo.demo/efi/README.md
rename to playground/efi_helo.demo/efi/README.md
diff --git a/efi/efi_helo.demo/efi/efi-bs.h b/playground/efi_helo.demo/efi/efi-bs.h
similarity index 100%
rename from efi/efi_helo.demo/efi/efi-bs.h
rename to playground/efi_helo.demo/efi/efi-bs.h
diff --git a/efi/efi_helo.demo/efi/efi-ct.h b/playground/efi_helo.demo/efi/efi-ct.h
similarity index 100%
rename from efi/efi_helo.demo/efi/efi-ct.h
rename to playground/efi_helo.demo/efi/efi-ct.h
diff --git a/efi/efi_helo.demo/efi/efi-rs.h b/playground/efi_helo.demo/efi/efi-rs.h
similarity index 100%
rename from efi/efi_helo.demo/efi/efi-rs.h
rename to playground/efi_helo.demo/efi/efi-rs.h
diff --git a/efi/efi_helo.demo/efi/efi-st.h b/playground/efi_helo.demo/efi/efi-st.h
similarity index 100%
rename from efi/efi_helo.demo/efi/efi-st.h
rename to playground/efi_helo.demo/efi/efi-st.h
diff --git a/efi/efi_helo.demo/efi/efi-time.h b/playground/efi_helo.demo/efi/efi-time.h
similarity index 100%
rename from efi/efi_helo.demo/efi/efi-time.h
rename to playground/efi_helo.demo/efi/efi-time.h
diff --git a/efi/efi_helo.demo/efi/efi.h b/playground/efi_helo.demo/efi/efi.h
similarity index 100%
rename from efi/efi_helo.demo/efi/efi.h
rename to playground/efi_helo.demo/efi/efi.h
diff --git a/efi/efi_helo.demo/efi/protocol/efi-acpitp.h b/playground/efi_helo.demo/efi/protocol/efi-acpitp.h
similarity index 100%
rename from efi/efi_helo.demo/efi/protocol/efi-acpitp.h
rename to playground/efi_helo.demo/efi/protocol/efi-acpitp.h
diff --git a/efi/efi_helo.demo/efi/protocol/efi-dpp.h b/playground/efi_helo.demo/efi/protocol/efi-dpp.h
similarity index 100%
rename from efi/efi_helo.demo/efi/protocol/efi-dpp.h
rename to playground/efi_helo.demo/efi/protocol/efi-dpp.h
diff --git a/efi/efi_helo.demo/efi/protocol/efi-fp.h b/playground/efi_helo.demo/efi/protocol/efi-fp.h
similarity index 100%
rename from efi/efi_helo.demo/efi/protocol/efi-fp.h
rename to playground/efi_helo.demo/efi/protocol/efi-fp.h
diff --git a/efi/efi_helo.demo/efi/protocol/efi-gop.h b/playground/efi_helo.demo/efi/protocol/efi-gop.h
similarity index 100%
rename from efi/efi_helo.demo/efi/protocol/efi-gop.h
rename to playground/efi_helo.demo/efi/protocol/efi-gop.h
diff --git a/efi/efi_helo.demo/efi/protocol/efi-lidpp.h b/playground/efi_helo.demo/efi/protocol/efi-lidpp.h
similarity index 100%
rename from efi/efi_helo.demo/efi/protocol/efi-lidpp.h
rename to playground/efi_helo.demo/efi/protocol/efi-lidpp.h
diff --git a/efi/efi_helo.demo/efi/protocol/efi-lip.h b/playground/efi_helo.demo/efi/protocol/efi-lip.h
similarity index 100%
rename from efi/efi_helo.demo/efi/protocol/efi-lip.h
rename to playground/efi_helo.demo/efi/protocol/efi-lip.h
diff --git a/efi/efi_helo.demo/efi/protocol/efi-sfsp.h b/playground/efi_helo.demo/efi/protocol/efi-sfsp.h
similarity index 100%
rename from efi/efi_helo.demo/efi/protocol/efi-sfsp.h
rename to playground/efi_helo.demo/efi/protocol/efi-sfsp.h
diff --git a/efi/efi_helo.demo/efi/protocol/efi-stip.h b/playground/efi_helo.demo/efi/protocol/efi-stip.h
similarity index 100%
rename from efi/efi_helo.demo/efi/protocol/efi-stip.h
rename to playground/efi_helo.demo/efi/protocol/efi-stip.h
diff --git a/efi/efi_helo.demo/efi/protocol/efi-stop.h b/playground/efi_helo.demo/efi/protocol/efi-stop.h
similarity index 100%
rename from efi/efi_helo.demo/efi/protocol/efi-stop.h
rename to playground/efi_helo.demo/efi/protocol/efi-stop.h
diff --git a/efi/efi_helo.demo/efi/protocol/efi-vmpp.h b/playground/efi_helo.demo/efi/protocol/efi-vmpp.h
similarity index 100%
rename from efi/efi_helo.demo/efi/protocol/efi-vmpp.h
rename to playground/efi_helo.demo/efi/protocol/efi-vmpp.h
diff --git a/efi/efi_helo.demo/ehelo.demo.c b/playground/efi_helo.demo/ehelo.demo.c
similarity index 100%
rename from efi/efi_helo.demo/ehelo.demo.c
rename to playground/efi_helo.demo/ehelo.demo.c
diff --git a/bootloader-legacy/test.asm b/playground/test.asm
similarity index 100%
rename from bootloader-legacy/test.asm
rename to playground/test.asm
-- 
GitLab