#!/bin/bash # This file is part of noxos and licensed under the MIT open source license EMUFLAGS="-no-reboot -machine type=q35,accel=kvm -cpu max -m 256M \ -drive file=build/noxos.iso \ -chardev stdio,id=log,logfile=noxos.log -serial chardev:log" OVMF_PATH="/usr/share/ovmf/x64/OVMF.fd" if [[ -f "/usr/share/OVMF/OVMF.fd" ]]; then OVMF_PATH="/usr/share/OVMF/OVMF.fd" fi emulate_bios() { echo "<=====| Emulating |=====>" qemu-system-x86_64 $EMUFLAGS } emulate_uefi() { echo "<=====| Emulating in UEFI mode |=====>" qemu-system-x86_64 -bios $OVMF_PATH $EMUFLAGS } # qemu will wait for gdb to connect, before booting emulate_debug() { echo "<=====| Emulating in debug mode |=====>" qemu-system-x86_64 -s -S -bios $OVMF_PATH $EMUFLAGS } case $1 in "debug") emulate_debug ;; "bios") emulate_bios ;; *) emulate_uefi ;; esac