X-Git-Url: https://git.ucc.asn.au/?p=tpg%2Facess2.git;a=blobdiff_plain;f=RunQemu;h=e69a55ee9b796956ff2da5d806a6a7d0bdcd1b25;hp=10776d54e6870bf2917175899c642a946de364be;hb=5b487e31cf5145372e9777e9f82a8cd661d4f1b4;hpb=bfacdd3b71576cf6ceaa83352d3a7d162adb75e1 diff --git a/RunQemu b/RunQemu index 10776d54..e69a55ee 100755 --- a/RunQemu +++ b/RunQemu @@ -3,27 +3,50 @@ QEMU=qemu-system-x86_64 USE_GDB= +BOOTOPT="-fda DiskImage.img -boot a" -QEMU_PARAMS="-fda DiskImage.img -boot a" +QEMU_PARAMS="" QEMU_PARAMS=$QEMU_PARAMS" -hda AcessHDD.img" QEMU_PARAMS=$QEMU_PARAMS" -vga std" QEMU_PARAMS=$QEMU_PARAMS" -smp 2" -QEMU_PARAMS=$QEMU_PARAMS" -net nic" +MODS="" -QEMU_PARAMS=$QEMU_PARAMS" -usb" -QEMU_PARAMS=$QEMU_PARAMS" -drive id=test_usb_image,file=USB_Test_Image.img,if=none" -QEMU_PARAMS=$QEMU_PARAMS" -device usb-storage,drive=test_usb_image" -QEMU_PARAMS=$QEMU_PARAMS" -usbdevice mouse" -_NETTYPE="user" +_NETTYPE="user,hostfwd=tcp::5555-:23" +_NETMODEL=e1000 + +_EVAL=eval while [ $# -ne 0 ]; do case $1 in -gdb) QEMU_PARAMS=$QEMU_PARAMS" -s -S" ;; + -mod) + shift + MODS=$MODS","$1 + ;; + -dbin) + shift + if [ "x$2" = "xdefault" ] || [ "x$2" = "x" ]; then + _kfile="KernelLand/Acess2.$1.bin" + else + _kfile="KernelLand/Acess2.$1-$2.bin" + fi + BOOTOPT="-kernel $_kfile" + BOOTOPT=$BOOTOPT" -initrd KernelLand/Modules/Filesystems/FS_InitRD.kmd.$1$MODS -append \"$3\"" + shift + shift + ;; -dbgbin) QEMU=/home/tpg/apps/bin/qemu-system-x86_64 ;; + -bin) + shift + QEMU=$1 + ;; + -dbgscript) + QEMU="echo $QEMU" + ;; -extramem) QEMU_PARAMS=$QEMU_PARAMS" -m 768" ;; @@ -31,16 +54,60 @@ while [ $# -ne 0 ]; do shift QEMU_PARAMS=$QEMU_PARAMS" "$1 ;; + -n) + _EVAL=echo + ;; -fwd) _NETTYPE=$_NETTYPE",hostfwd=tcp::10023-10.0.2.10:23" ;; -tuntap) _NETTYPE="tap" + ;; + -nousb) + _NOUSB="yes" + ;; + -notee) + _NOTEE="yes" + ;; + -nographic) + _NOGRAPHIC="yes" + ;; + -netmodel) + shift + _NETMODEL=$1 + ;; + -pciserial) + QEMU_PARAMS=$QEMU_PARAMS" -device pci-serial,chardev=serial2" + QEMU_PARAMS=$QEMU_PARAMS" -chardev socket,id=serial2,host=localhost,port=10023,server,telnet" + ;; esac shift done + +QEMU_PARAMS=$QEMU_PARAMS" -net nic,model="$_NETMODEL QEMU_PARAMS=$QEMU_PARAMS" -net "$_NETTYPE +if [ "x$_NOUSB" != "xyes" ] ; then + QEMU_PARAMS=$QEMU_PARAMS" -usb" + QEMU_PARAMS=$QEMU_PARAMS" -device usb-ehci" + QEMU_PARAMS=$QEMU_PARAMS" -drive id=test_usb_image,file=USB_Test_Image.img,if=none" + QEMU_PARAMS=$QEMU_PARAMS" -device usb-storage,drive=test_usb_image" + QEMU_PARAMS=$QEMU_PARAMS" -usbdevice mouse" +# QEMU_PARAMS=$QEMU_PARAMS" -usbdevice keyboard" +fi + +if [ "x$_NOTEE" = "xyes" ] ; then + _TEECMD= +else + _TEECMD=" | tee QemuLog.txt" +fi + # /home/tpg/apps/bin/qemu-system-x86_64 $QEMU_PARAMS -serial stdio -serial file:QemuLog.txt # qemu-system-x86_64 $QEMU_PARAMS -serial stdio | tee QemuLog.txt -$QEMU $QEMU_PARAMS -serial stdio | tee QemuLog.txt +#echo $QEMU $BOOTOPT $QEMU_PARAMS +if [ "x$_NOGRAPHIC" = "xyes" ] ; then + $_EVAL $QEMU $BOOTOPT $QEMU_PARAMS -nographic $_TEECMD + exit +fi + +$_EVAL $QEMU $BOOTOPT $QEMU_PARAMS -serial stdio $_TEECMD