diff --git a/dlls/kernel/dosmem.c b/dlls/kernel/dosmem.c
index 72ce56b36531ed57c238a7ceb8322f3ccec11f1e..d863fbcfca2c59712e1d93033556e905ef9a5026 100644
--- a/dlls/kernel/dosmem.c
+++ b/dlls/kernel/dosmem.c
@@ -265,6 +265,9 @@ static void DOSMEM_FillBiosSegments(void)
 
     /* BIOS ID */
     *(pBiosSys+0xfffe) = 0xfc;
+
+    /* Reboot vector (f000:fff0 or ffff:0000) */
+    *(DWORD*)(pBiosSys + 0xfff0) = VM_STUB(0x19);
 }
 
 /***********************************************************************
diff --git a/dlls/winedos/int19.c b/dlls/winedos/int19.c
index 3262f6cb9e8173ad3b267f98ca4db6ad1830a2ba..cca68188c3c1ffe438ca381e04644f2f6955d8e7 100644
--- a/dlls/winedos/int19.c
+++ b/dlls/winedos/int19.c
@@ -32,5 +32,6 @@ WINE_DEFAULT_DEBUG_CHANNEL(int);
  */
 void WINAPI DOSVM_Int19Handler( CONTEXT86 *context )
 {
-    WARN("Attempted Reboot\n");
+    TRACE( "Attempted Reboot\n" );
+    ExitProcess(0);
 }
diff --git a/dlls/winedos/interrupts.c b/dlls/winedos/interrupts.c
index f981c6d51f7c752981e07572abf7460512f91321..64ee72c26d47079a79735820cc472b1a6e552140 100644
--- a/dlls/winedos/interrupts.c
+++ b/dlls/winedos/interrupts.c
@@ -40,7 +40,7 @@ static const INTPROC DOSVM_VectorsBuiltin[] =
   /* 0C */ 0,                  0,                  0,                  0,
   /* 10 */ DOSVM_Int10Handler, DOSVM_Int11Handler, DOSVM_Int12Handler, DOSVM_Int13Handler,
   /* 14 */ 0,                  DOSVM_Int15Handler, DOSVM_Int16Handler, DOSVM_Int17Handler,
-  /* 18 */ 0,                  0,                  DOSVM_Int1aHandler, 0,
+  /* 18 */ 0,                  DOSVM_Int19Handler, DOSVM_Int1aHandler, 0,
   /* 1C */ 0,                  0,                  0,                  0,
   /* 20 */ DOSVM_Int20Handler, DOSVM_Int21Handler, 0,                  0,
   /* 24 */ 0,                  DOSVM_Int25Handler, DOSVM_Int26Handler, 0,