#compdef qemu local _qemu_machines _qemu_machines=(${${${(f)"$(qemu -M \?)"}[2,-1]}%% *}) _arguments \ '-'{fda,fdb,hda,hdb,hdc,hdd,cdrom}':disk image:_files' \ '-M[target machine]:machine:('"${_qemu_machines:-none}"')' \ '-boot:boot device:(a c d)' \ '-snapshot[write to temporary files instead of disk image files]' \ '-no-fd-bootchk[disable boot sig checking for floppies in Bochs BIOS]' \ '-m[virtual RAM size]:megs:' \ '-m[simulate SMP system]:number of CPUs:' \ '-nographic[disable graphical output]' \ '-vnc[listen on VNC display]:display:' \ '-k[use keyboard layout]:keyboard layout language:(ar de-ch es fo fr-ca hu ja mk no pt-br sv da en-gb et fr fr-ch is lt nl pl ru th de en-us fi fr-be hr it lv nl-be pt sl tr)' \ '-audio-help[show audio subsystem help]' \ '-soundhw[enable audio and selected sound hardware]:cards to enable:(all)' \ '-localtime[set rtc to local time]' \ '-full-screen[start in full screen]' \ '-pidfile:pidfile:_files' \ '-win2k-hack' \ '-usb[enable USB driver]' \ '-usbdevice:usb device:' \ '-net:net config:(none)' \ '-tftp:prefix:' \ '-smb:dir:_files -/' \ '-redir:port redir config:' \ '-kernel:kernel image:_files' \ '-append:kernel cmd line:' \ '-initrd:initrd:_files' \ '-serial:dev:(vc stdio pty null /dev/ttyS0 /dev/partport0)' \ '-parallel:dev:(vc stdio pty null /dev/ttyS0 /dev/partport0)' \ '-monitor:dev:(vc stdio pty null /dev/ttyS0 /dev/partport0)' \ '-s[wait gdb connection to port 1234]' \ '-p[change gdb connection port]:port:_ports' \ '-S[do not start CPU at startup]' \ '-d[output log in /tmp/qemu.log]' \ '-hdachs:hd0 geometry:' \ '-std-vga[simulate standard VGA]' \ '-no-acpi[disable ACPI]' \ '-loadvm[start right away with a saved state]:file:_files' \ '-g[set initial graphic mode]:graphic mode:' \ ':disk image:_files'