Skip to content
Amir Hassan edited this page Mar 24, 2015 · 12 revisions

You can use virtual machines to test your ScreenInvader builds if you don't have spare hardware at hands. Currently this is a rather theoretical document since there is no arm release of the screeninvader yet. anyway if you feel like you really should have a screeninvader image for testing try to ask for it on the mailing list.

We are going to use a kernel for the vexpress-a9 because a full blown a20 kernel won't boot. please note that the emualted hardware is quite different (though functional) - if you need to test e.g. video playback performance or want to hack on the alsa configuration, you will need real hardware.

Get the kernel

wget https://mirrors.romanrm.net/sunxi/qemu/initrd.img-3.2.0-4-vexpress
wget https://mirrors.romanrm.net/sunxi/qemu/vmlinuz-3.2.0-4-vexpress

Install Qemu

apt-get install qemu-system

Boot the screeninvader

You'll need to replace image.dd with a screeninvader image file.

qemu-system-arm -M vexpress-a9 -kernel vmlinuz-3.2.0-4-vexpress -initrd initrd.img-3.2.0-4-vexpress -append root=/dev/mmcblk0p2 -drive if=sd,cache=unsafe,file=image.dd -sdl -net user,hostfwd=tcp::5555-:80,hostfwd=tcp::5556-:22 -net nic

Note that "-net user,hostfwd=tcp::5555-:80,hostfwd=tcp::5556-:22" does not allow any incoming network traffic to the guest system except for tcp connections on port 5555 and 5556 of the host system which are forwarded to the webserver and ssh server of the guest system. Please refer to the qemu documentation for more information on how to configure network settings.