boot - Fix BIOS lockup due to H2 probe on small medias

* Some BIOSes (found w/Intel atom D525 w/Foxconn mobo, AMIBIOS) will
  implode when asked to read a disk address beyond the EOM.  The HAMMER2
  probe tries to read a volume header at the 0, 2G, 4G, and 6G marks.
  This appears to blow up the BIOS when booting from USB media.

* To work around the problem, for now we do not proceed to test all four
  volume header offsets if the first one (at offset 0) does not have a
  HAMMER2 signature.

* Thanks to tm512 (Kyle Davis) for spending ~4+ hours helping us find
  the problem.

Reported-by: tm512 (Kyle Davis)
boot - Timeout seta20 for normal boots as well as for cd boots.

* Bring code from cdboot into boot1.S

* Also use a more correct segment:offset when trying to reboot.

Reported-by: karu.pruun (karu.pruun@gmail.com),
	     Roman Neuhauser (neuhauser@sigpipe.cz)
boot - consistently reload v86.ctl/v86.addr (non-bug)

* This is not a bug.  Be more consistent when loading the v86 structure,
  do not try to optimize out fields that are already loaded in distinct
  code sections.
boot - Return proper sense from probe_keyboard()

* The sense was reversed.  Return the proper sense.

Taken-From: FreeBSD