Currently `boards/qemu-i386/dist/term.py` expects QEMU to connect in
less than 5 seconds, which is plenty on any user machine. Travis CI,
which we use without paying a cent, sometimes fails to start QEMU in
this is timeframe, though.
This PR increases the timeout to one minute.
When qemu-i386 shuts down the instance on its own accord, like in the
hello-world example, then the terminal is broken afterwards.
This PR ensures that the terminal flags are restored on shutdown.
This includes GNU readline features and debugging.
Build with `make BOARD=qemu-i386 all-debug`.
Run with `make BOARD=qemu-i386 term`.
Debug with `make BOARD=qemu-i386 debug`. The default debugger is `gdb`.
Also supported are `debug-tui` (GDB Text User Interface), `debug-kdbg`,
and `debug-ddd`. Set a breakpoint in e.g. "startup" or "main", and
hit/write "continue".
The debugger can only run with a quite new toolchain (e.g. Debian
testing). Ubuntu 13.10. for example will likely report a crash in GDB
when switching from 16bit code to 32bit code.