From 0cfaff51b9f535e6709a932fc3388f25d2ecc65a Mon Sep 17 00:00:00 2001 From: TomAwezome Date: Mon, 31 Oct 2022 03:15:50 -0400 Subject: [PATCH] Change build system to copy all files to Tmp/OSBuild, then perform build inside OS using reboots without using host script to repeatedly power off and on again. --- build/AUTO.ISO | Bin 3538944 -> 3540992 bytes build/build-iso.sh | 30 ++++------------------- src/Misc/Auto/AutoFullDistro0.ZC | 6 ++++- src/Misc/Auto/AutoFullDistro00.ZC | 11 +++++++-- src/Misc/Auto/AutoFullDistro000.ZC | 36 ++++++++++++++++++++++++++++ src/Misc/Auto/AutoFullDistro0000.ZC | 33 +++++++++++++++++++++++++ 6 files changed, 88 insertions(+), 28 deletions(-) create mode 100755 src/Misc/Auto/AutoFullDistro000.ZC create mode 100755 src/Misc/Auto/AutoFullDistro0000.ZC diff --git a/build/AUTO.ISO b/build/AUTO.ISO index 362ed54361b278e80e4a7f455718ff3aaba4d88f..1516d807221a021581bb7da2202525f74aba028e 100755 GIT binary patch delta 53793 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 delta 52597 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 F{|m%%cTWHS diff --git a/build/build-iso.sh b/build/build-iso.sh index 2e742b38..e5132dd2 100755 --- a/build/build-iso.sh +++ b/build/build-iso.sh @@ -46,39 +46,19 @@ echo "Building ZealBooter..." set +e echo "Making temp vdisk, running auto-install ..." -qemu-img create -f raw $TMPDISK 192M +qemu-img create -f raw $TMPDISK 1024M qemu-system-x86_64 -machine q35,accel=kvm -drive format=raw,file=$TMPDISK -m 1G -rtc base=localtime -smp 4 -cdrom AUTO.ISO -device isa-debug-exit -echo "Copying src/Kernel/KStart16.ZC and src/Kernel/KernelA.HH into vdisk ..." -rm ../src/Home/Registry.ZC 2> /dev/null -rm ../src/Home/MakeHome.ZC 2> /dev/null -mount_tempdisk -sudo cp -rf ../src/Kernel/KStart16.ZC $TMPMOUNT/Kernel/ -sudo cp -rf ../src/Kernel/KernelA.HH $TMPMOUNT/Kernel/ -umount_tempdisk - -echo "Rebuilding kernel headers ..." -qemu-system-x86_64 -machine q35,accel=kvm -drive format=raw,file=$TMPDISK -m 1G -rtc base=localtime -smp 4 -device isa-debug-exit - -echo "Copying all kernel code into vdisk ..." -rm ../src/Home/Registry.ZC 2> /dev/null -rm ../src/Home/MakeHome.ZC 2> /dev/null -mount_tempdisk -sudo cp -rf ../src/Kernel/* $TMPMOUNT/Kernel/ -umount_tempdisk - -echo "Rebuilding kernel..." -qemu-system-x86_64 -machine q35,accel=kvm -drive format=raw,file=$TMPDISK -m 1G -rtc base=localtime -smp 4 -device isa-debug-exit - -echo "Copying all src/ code into vdisk ..." +echo "Copying all src/ code into vdisk Tmp/OSBuild/ ..." rm ../src/Home/Registry.ZC 2> /dev/null rm ../src/Home/MakeHome.ZC 2> /dev/null rm ../src/Boot/Kernel.ZXE 2> /dev/null mount_tempdisk -sudo cp -r ../src/* $TMPMOUNT +sudo mkdir $TMPMOUNT/Tmp/OSBuild/ +sudo cp -r ../src/* $TMPMOUNT/Tmp/OSBuild umount_tempdisk -echo "Building Distro ISO ..." +echo "Rebuilding kernel headers, kernel, OS, and building Distro ISO ..." qemu-system-x86_64 -machine q35,accel=kvm -drive format=raw,file=$TMPDISK -m 1G -rtc base=localtime -smp 4 -device isa-debug-exit LIMINE_BINARY_BRANCH="v4.x-branch-binary" diff --git a/src/Misc/Auto/AutoFullDistro0.ZC b/src/Misc/Auto/AutoFullDistro0.ZC index 791b8b47..acf30208 100755 --- a/src/Misc/Auto/AutoFullDistro0.ZC +++ b/src/Misc/Auto/AutoFullDistro0.ZC @@ -18,11 +18,15 @@ U0 Auto() } } + WinMax; BootMHDIns('C'); in_str = MStrPrint("Sleep(700);In(\"CC\\n%d\\n\\n\\n\\n\");", ata_port); OnceDrive('C', in_str); Free(in_str); - in_str = MStrPrint("BootHDIns;OnceFlush;Once(\"#include \\\"/Misc/Auto/AutoFullDistro00\\\";;Auto;\");OutU8(0x501,0x31);"); + in_str = MStrPrint( "BootHDIns;" + "OnceFlush;" + "Once(\"#include \\\"/Misc/Auto/AutoFullDistro00\\\";;Auto;\");" + "Reboot;"); OnceDrive('C', in_str); OutU8(0x501,0x31); } diff --git a/src/Misc/Auto/AutoFullDistro00.ZC b/src/Misc/Auto/AutoFullDistro00.ZC index c9c58e39..dfdfb802 100755 --- a/src/Misc/Auto/AutoFullDistro00.ZC +++ b/src/Misc/Auto/AutoFullDistro00.ZC @@ -18,13 +18,20 @@ U0 Auto() } } + WinMax; + BootMHDIns('C'); + Copy("C:/Tmp/OSBuild/Kernel/KStart16.ZC", "C:/Kernel/"); + Copy("C:/Tmp/OSBuild/Kernel/KernelA.HH", "C:/Kernel/"); in_str = MStrPrint("CC\n%d\n\n\n\n", ata_port); Sleep(700); In(in_str); BootHDIns; OnceFlush; - in_str = MStrPrint("#include \"/Misc/Auto/AutoFullDistro1\";;Auto;;"); + Free(in_str); + in_str = MStrPrint( "OnceFlush;" + "Once(\"#include \\\"/Misc/Auto/AutoFullDistro000\\\";;Auto;\");" + "Reboot;"); OnceDrive('C', in_str); - OutU8(0x501,0x31); + Reboot; } Auto; diff --git a/src/Misc/Auto/AutoFullDistro000.ZC b/src/Misc/Auto/AutoFullDistro000.ZC new file mode 100755 index 00000000..df4c90ca --- /dev/null +++ b/src/Misc/Auto/AutoFullDistro000.ZC @@ -0,0 +1,36 @@ +U0 Auto() +{ + I64 i, ata_port = -1; + CAHCIPort *port; + U8 *in_str; + + for (i = 0; i < AHCI_MAX_PORTS; i++) + + { + if (PCIBt(&blkdev.ahci_hba->ports_implemented, i)) + { + port = &blkdev.ahci_hba->ports[i]; + if (port->signature == AHCI_PxSIG_ATA) + { + ata_port = i; + break; + } + } + } + + WinMax; + BootMHDIns('C'); + CopyTree("C:/Tmp/OSBuild/Kernel/", "C:/Kernel/"); + in_str = MStrPrint("CC\n%d\n\n\n\n", ata_port); + Sleep(700); + In(in_str); + BootHDIns; + OnceFlush; + Free(in_str); + in_str = MStrPrint( "OnceFlush;" + "Once(\"#include \\\"/Misc/Auto/AutoFullDistro0000\\\";;Auto;\");" + "Reboot;"); + OnceDrive('C', in_str); + Reboot; +} +Auto; diff --git a/src/Misc/Auto/AutoFullDistro0000.ZC b/src/Misc/Auto/AutoFullDistro0000.ZC new file mode 100755 index 00000000..a85d2fab --- /dev/null +++ b/src/Misc/Auto/AutoFullDistro0000.ZC @@ -0,0 +1,33 @@ +U0 Auto() +{ + I64 i, ata_port = -1; + CAHCIPort *port; + U8 *in_str; + + for (i = 0; i < AHCI_MAX_PORTS; i++) + + { + if (PCIBt(&blkdev.ahci_hba->ports_implemented, i)) + { + port = &blkdev.ahci_hba->ports[i]; + if (port->signature == AHCI_PxSIG_ATA) + { + ata_port = i; + break; + } + } + } + + WinMax; + CopyTree("C:/Tmp/OSBuild/", "C:/"); + in_str = MStrPrint("CC\n%d\n\n\n\n", ata_port); + Sleep(700); + In(in_str); + BootHDIns; + OnceFlush; + in_str = MStrPrint("#include \"/Misc/Auto/AutoFullDistro1\";;Auto;;"); + OnceDrive('C', in_str); + DelTree("C:/Tmp/OSBuild"); + Reboot; +} +Auto;