Interrupts should be enabled when calling 16bit code.

Set most code paths to have interrupts on when calling 16bit code.
This fixes at least one optionrom that needed irqs on.
diff --git a/src/boot.c b/src/boot.c
index b6afd35..7b74007 100644
--- a/src/boot.c
+++ b/src/boot.c
@@ -328,6 +328,7 @@
 
     struct bregs br;
     memset(&br, 0, sizeof(br));
+    br.flags = F_IF;
     br.code = SEGOFF(bootseg, bootip);
     // Set the magic number in ax and the boot drive in dl.
     br.dl = bootdrv;
@@ -344,6 +345,7 @@
     // Read sector
     struct bregs br;
     memset(&br, 0, sizeof(br));
+    br.flags = F_IF;
     br.dl = bootdrv;
     br.es = bootseg;
     br.ah = 2;
@@ -459,6 +461,7 @@
     // Boot failed: invoke the boot recovery function
     struct bregs br;
     memset(&br, 0, sizeof(br));
+    br.flags = F_IF;
     call16_int(0x18, &br);
 }