summaryrefslogtreecommitdiffhomepage
path: root/Boot
diff options
context:
space:
mode:
Diffstat (limited to 'Boot')
-rw-r--r--Boot/NetBoot/Module.cxx5
-rw-r--r--Boot/NetBoot/NetBoot.hxx12
-rw-r--r--Boot/Source/BootloaderRsrc.rsrc2
-rw-r--r--Boot/makefile (renamed from Boot/Source/makefile)32
4 files changed, 34 insertions, 17 deletions
diff --git a/Boot/NetBoot/Module.cxx b/Boot/NetBoot/Module.cxx
index c296903b..57841904 100644
--- a/Boot/NetBoot/Module.cxx
+++ b/Boot/NetBoot/Module.cxx
@@ -8,10 +8,11 @@
*/
#include <BootKit/BootKit.hxx>
+#include <NetBoot/NetBoot.hxx>
-EXTERN_C Int32 EfiMain(Void)
+EXTERN_C Int32 ModuleMain(Void)
{
- /// - Find a network drive called "/OnlineBoot"
+ /// - Find a network drive called "/Remote/NewOSKrnl"
/// - Download our image
/// - Boot from it.
diff --git a/Boot/NetBoot/NetBoot.hxx b/Boot/NetBoot/NetBoot.hxx
new file mode 100644
index 00000000..d45f1de1
--- /dev/null
+++ b/Boot/NetBoot/NetBoot.hxx
@@ -0,0 +1,12 @@
+/*
+ * ========================================================
+ *
+ * NetBoot
+ * Copyright SoftwareLabs, all rights reserved.
+ *
+ * ========================================================
+ */
+
+#pragma once
+
+#include <NewKit/Defines.hpp>
diff --git a/Boot/Source/BootloaderRsrc.rsrc b/Boot/Source/BootloaderRsrc.rsrc
index d79211e7..0282192b 100644
--- a/Boot/Source/BootloaderRsrc.rsrc
+++ b/Boot/Source/BootloaderRsrc.rsrc
@@ -15,7 +15,7 @@ BEGIN
VALUE "FileVersion", BOOTLOADER_VERSION
VALUE "InternalName", "NewBoot"
VALUE "LegalCopyright", "Copyright SoftwareLabs, all rights reserved."
- VALUE "OriginalFilename", "NewBoot.exe"
+ VALUE "OriginalFilename", "NewOSLdr.exe"
VALUE "ProductName", "NewBoot"
VALUE "ProductVersion", BOOTLOADER_VERSION
END
diff --git a/Boot/Source/makefile b/Boot/makefile
index 70fa7232..878cee2a 100644
--- a/Boot/Source/makefile
+++ b/Boot/makefile
@@ -22,19 +22,20 @@ ifeq ($(NEWS_MODEL), )
NEWOS_MODEL=-DkMachineModel="\"Generic NeWS HD\""
endif
+BIOS=OVMF.fd
IMG=epm.img
IMG_2=epm-slave.img
-EMU_FLAGS=-net none -smp 4 -m 8G -M q35 \
- -bios OVMF.fd -device piix3-ide,id=ide \
- -drive id=disk,file=$(IMG),format=raw,if=none \
+EMU_FLAGS=-net none -smp 4,sockets=1,cores=4,threads=1 -m 8G -M q35 \
+ -bios Source/$(BIOS) -device piix3-ide,id=ide \
+ -drive id=disk,file=Source/$(IMG),format=raw,if=none \
-device ide-hd,drive=disk,bus=ide.0 -drive \
- file=fat:rw:Root,index=2,format=raw -d int -hdd epm-slave.img
+ file=fat:rw:Source/Root,index=2,format=raw -d int -hdd Source/$(IMG_2)
LD_FLAGS=-e Main --subsystem=10
ifeq ($(NEWS_STANDLONE), )
-OBJ=*.o ../../Kernel/Objects/*.obj
+OBJ=*.o ../Kernel/Objects/*.obj
else
RESCMD=$(WINDRES) BootloaderRsrc.rsrc -O coff -o BootloaderRsrc.o
STANDALONE_MACRO=-D__STANDALONE__
@@ -46,11 +47,11 @@ REM_FLAG=-f
FLAG_ASM=-f win64
FLAG_GNU=-fshort-wchar -D__EFI_x86_64__ -mno-red-zone -D__KERNEL__ -D__NEWBOOT__ \
- -DEFI_FUNCTION_WRAPPER -I../ -I../../Kernel -I./ -c -nostdlib -fno-rtti -fno-exceptions \
+ -DEFI_FUNCTION_WRAPPER -I./ -I../Kernel -I./ -c -nostdlib -fno-rtti -fno-exceptions \
-std=c++20 -D__HAVE_MAHROUSS_APIS__ -D__MAHROUSS__ -D__BOOTLOADER__ -I./
-BOOT_LOADER=NewBoot.exe
-KERNEL=NewKernel.exe
+BOOT_LOADER=NewOSLdr.exe
+KERNEL=NewOSKrnl.exe
.PHONY: invalid-recipe
invalid-recipe:
@@ -59,10 +60,10 @@ invalid-recipe:
.PHONY: all
all: compile-amd64
mkdir -p Root/EFI/BOOT
- $(LD_GNU) $(OBJ) $(LD_FLAGS) -o $(BOOT_LOADER)
- $(COPY) $(BOOT_LOADER) Root/EFI/BOOT/BOOTX64.EFI
- $(COPY) $(BOOT_LOADER) Root/EFI/BOOT/NEWBOOT.EFI
- $(COPY) ../../Kernel/$(KERNEL) Root/$(KERNEL)
+ $(LD_GNU) $(OBJ) $(LD_FLAGS) -o Source/$(BOOT_LOADER)
+ $(COPY) Source/$(BOOT_LOADER) Source/Root/EFI/BOOT/BOOTX64.EFI
+ $(COPY) Source/$(BOOT_LOADER) Source/Root/EFI/BOOT/NEWBOOT.EFI
+ $(COPY) ../Kernel/$(KERNEL) Source/Root/$(KERNEL)
ifneq ($(DEBUG_SUPPORT), )
DEBUG = -D__DEBUG__
@@ -71,7 +72,10 @@ endif
.PHONY: compile-amd64
compile-amd64:
$(RESCMD)
- $(CC_GNU) $(NEWOS_MODEL) $(STANDALONE_MACRO) $(FLAG_GNU) $(DEBUG) $(wildcard HEL/AMD64/*.cxx) $(wildcard HEL/AMD64/*.S) $(wildcard *.cxx)
+ $(CC_GNU) $(NEWOS_MODEL) $(STANDALONE_MACRO) $(FLAG_GNU) $(DEBUG) \
+ $(wildcard Source/HEL/AMD64/*.cxx) \
+ $(wildcard Source/HEL/AMD64/*.S)
+ $(wildcard Source/*.cxx)
.PHONY: run-efi-amd64
run-efi-amd64:
@@ -88,7 +92,7 @@ download-edk:
$(HTTP_GET) https://retrage.github.io/edk2-nightly/bin/DEBUGX64_OVMF.fd -O OVMF.fd
BINS=*.bin
-EXECUTABLES=NewBoot.exe NewKernel.exe OVMF.fd
+EXECUTABLES=NewOSLdr.exe NewOSKrnl.exe OVMF.fd
TARGETS=$(REM_FLAG) $(OBJ) $(BIN) $(IMG) $(IMG_2) $(EXECUTABLES)