https://git.reactos.org/?p=reactos.git;a=commitdiff;h=f37fb1f7f8950cdae899d…
commit f37fb1f7f8950cdae899d86c401f3135374cd3b1
Author:     Yaroslav Kibysh <yanet.prod(a)gmail.com>
AuthorDate: Thu Jun 13 22:26:42 2019 +0300
Commit:     Hermès Bélusca-Maïto <hermes.belusca-maito(a)reactos.org>
CommitDate: Tue Jun 25 02:32:09 2019 +0200
    [FREELDR] Always change video mode back to text-mode before starting up ReactOS.
    CORE-16116
    - This allows getting the /NOGUIBOOT mode working correctly, as the latter
      expects text-mode. Then, usetup (via BLUE driver) will change to a
      different text-mode, or, GUI boot will change (via BOOTVID) to VGA
      640*480 16-color.
    - Always hide the VGA cursor.
    - Remove also the deprecated boolean "Setup" in the *PrepareForReactOS()
      functions.
    Co-authored-by: Hermès Bélusca-Maïto <hermes.belusca-maito(a)reactos.org>
---
 boot/freeldr/freeldr/arch/arm/macharm.c           |  2 +-
 boot/freeldr/freeldr/arch/i386/machpc.c           |  4 ++--
 boot/freeldr/freeldr/arch/i386/machxbox.c         |  4 ++--
 boot/freeldr/freeldr/arch/i386/pcvideo.c          | 12 +++---------
 boot/freeldr/freeldr/arch/i386/xboxvideo.c        |  5 +++--
 boot/freeldr/freeldr/include/arch/i386/machxbox.h |  4 ++--
 boot/freeldr/freeldr/include/arch/pc/machpc.h     |  4 ++--
 boot/freeldr/freeldr/include/machine.h            |  6 +++---
 boot/freeldr/freeldr/ntldr/winldr.c               |  2 +-
 9 files changed, 19 insertions(+), 24 deletions(-)
diff --git a/boot/freeldr/freeldr/arch/arm/macharm.c
b/boot/freeldr/freeldr/arch/arm/macharm.c
index 8d4465f8d79..d9daad3bf95 100644
--- a/boot/freeldr/freeldr/arch/arm/macharm.c
+++ b/boot/freeldr/freeldr/arch/arm/macharm.c
@@ -90,7 +90,7 @@ ArmInit(IN PARM_BOARD_CONFIGURATION_BLOCK BootContext)
 }
 VOID
-ArmPrepareForReactOS(IN BOOLEAN Setup)
+ArmPrepareForReactOS(VOID)
 {
     return;
 }
diff --git a/boot/freeldr/freeldr/arch/i386/machpc.c
b/boot/freeldr/freeldr/arch/i386/machpc.c
index 527b944dee3..4e21727a19b 100644
--- a/boot/freeldr/freeldr/arch/i386/machpc.c
+++ b/boot/freeldr/freeldr/arch/i386/machpc.c
@@ -1391,10 +1391,10 @@ PcMachInit(const char *CmdLine)
 }
 VOID
-PcPrepareForReactOS(IN BOOLEAN Setup)
+PcPrepareForReactOS(VOID)
 {
     /* On PC, prepare video and turn off the floppy motor */
-    PcVideoPrepareForReactOS(Setup);
+    PcVideoPrepareForReactOS();
     DiskStopFloppyMotor();
 }
diff --git a/boot/freeldr/freeldr/arch/i386/machxbox.c
b/boot/freeldr/freeldr/arch/i386/machxbox.c
index 7dffa2baab6..c7873f0c0f3 100644
--- a/boot/freeldr/freeldr/arch/i386/machxbox.c
+++ b/boot/freeldr/freeldr/arch/i386/machxbox.c
@@ -211,10 +211,10 @@ XboxMachInit(const char *CmdLine)
 }
 VOID
-XboxPrepareForReactOS(IN BOOLEAN Setup)
+XboxPrepareForReactOS(VOID)
 {
     /* On XBOX, prepare video and turn off the floppy motor */
-    XboxVideoPrepareForReactOS(Setup);
+    XboxVideoPrepareForReactOS();
     DiskStopFloppyMotor();
 }
diff --git a/boot/freeldr/freeldr/arch/i386/pcvideo.c
b/boot/freeldr/freeldr/arch/i386/pcvideo.c
index 97327122ba8..6eb070fbb6c 100644
--- a/boot/freeldr/freeldr/arch/i386/pcvideo.c
+++ b/boot/freeldr/freeldr/arch/i386/pcvideo.c
@@ -1109,16 +1109,10 @@ PcVideoSync(VOID)
 }
 VOID
-PcVideoPrepareForReactOS(IN BOOLEAN Setup)
+PcVideoPrepareForReactOS(VOID)
 {
-    if (Setup)
-    {
-        PcVideoSetMode80x50_80x43();
-    }
-    else
-    {
-        PcVideoSetBiosMode(0x12);
-    }
+    // PcVideoSetMode80x50_80x43();
+    PcVideoSetMode80x25();
     PcVideoHideShowTextCursor(FALSE);
 }
diff --git a/boot/freeldr/freeldr/arch/i386/xboxvideo.c
b/boot/freeldr/freeldr/arch/i386/xboxvideo.c
index cbb8b92c55a..cb54dd2bf5f 100644
--- a/boot/freeldr/freeldr/arch/i386/xboxvideo.c
+++ b/boot/freeldr/freeldr/arch/i386/xboxvideo.c
@@ -240,9 +240,10 @@ XboxBeep(VOID)
 }
 VOID
-XboxVideoPrepareForReactOS(IN BOOLEAN Setup)
+XboxVideoPrepareForReactOS(VOID)
 {
-  XboxVideoClearScreenColor(MAKE_COLOR(0, 0, 0), TRUE);
+    XboxVideoClearScreenColor(MAKE_COLOR(0, 0, 0), TRUE);
+    XboxVideoHideShowTextCursor(FALSE);
 }
 /* EOF */
diff --git a/boot/freeldr/freeldr/include/arch/i386/machxbox.h
b/boot/freeldr/freeldr/include/arch/i386/machxbox.h
index c2a20056976..93bcb7835f1 100644
--- a/boot/freeldr/freeldr/include/arch/i386/machxbox.h
+++ b/boot/freeldr/freeldr/include/arch/i386/machxbox.h
@@ -43,8 +43,8 @@ BOOLEAN XboxVideoIsPaletteFixed(VOID);
 VOID XboxVideoSetPaletteColor(UCHAR Color, UCHAR Red, UCHAR Green, UCHAR Blue);
 VOID XboxVideoGetPaletteColor(UCHAR Color, UCHAR* Red, UCHAR* Green, UCHAR* Blue);
 VOID XboxVideoSync(VOID);
-VOID XboxVideoPrepareForReactOS(IN BOOLEAN Setup);
-VOID XboxPrepareForReactOS(IN BOOLEAN Setup);
+VOID XboxVideoPrepareForReactOS(VOID);
+VOID XboxPrepareForReactOS(VOID);
 VOID XboxMemInit(VOID);
 PVOID XboxMemReserveMemory(ULONG MbToReserve);
diff --git a/boot/freeldr/freeldr/include/arch/pc/machpc.h
b/boot/freeldr/freeldr/include/arch/pc/machpc.h
index e834eb383a0..444db26fa9a 100644
--- a/boot/freeldr/freeldr/include/arch/pc/machpc.h
+++ b/boot/freeldr/freeldr/include/arch/pc/machpc.h
@@ -44,8 +44,8 @@ BOOLEAN PcVideoIsPaletteFixed(VOID);
 VOID PcVideoSetPaletteColor(UCHAR Color, UCHAR Red, UCHAR Green, UCHAR Blue);
 VOID PcVideoGetPaletteColor(UCHAR Color, UCHAR* Red, UCHAR* Green, UCHAR* Blue);
 VOID PcVideoSync(VOID);
-VOID PcVideoPrepareForReactOS(IN BOOLEAN Setup);
-VOID PcPrepareForReactOS(IN BOOLEAN Setup);
+VOID PcVideoPrepareForReactOS(VOID);
+VOID PcPrepareForReactOS(VOID);
 PFREELDR_MEMORY_DESCRIPTOR PcMemGetMemoryMap(ULONG *MemoryMapSize);
diff --git a/boot/freeldr/freeldr/include/machine.h
b/boot/freeldr/freeldr/include/machine.h
index c104036a489..abf6a4d343c 100644
--- a/boot/freeldr/freeldr/include/machine.h
+++ b/boot/freeldr/freeldr/include/machine.h
@@ -55,7 +55,7 @@ typedef struct tagMACHVTBL
     VOID (*VideoGetPaletteColor)(UCHAR Color, UCHAR* Red, UCHAR* Green, UCHAR* Blue);
     VOID (*VideoSync)(VOID);
     VOID (*Beep)(VOID);
-    VOID (*PrepareForReactOS)(IN BOOLEAN Setup);
+    VOID (*PrepareForReactOS)(VOID);
     // NOTE: Not in the machine.c ...
     FREELDR_MEMORY_DESCRIPTOR* (*GetMemoryDescriptor)(FREELDR_MEMORY_DESCRIPTOR*
Current);
@@ -113,8 +113,8 @@ VOID MachInit(const char *CmdLine);
     MachVtbl.VideoSync()
 #define MachBeep()  \
     MachVtbl.Beep()
-#define MachPrepareForReactOS(Setup)    \
-    MachVtbl.PrepareForReactOS(Setup)
+#define MachPrepareForReactOS() \
+    MachVtbl.PrepareForReactOS()
 #define MachDiskGetBootPath(Path, Size) \
     MachVtbl.DiskGetBootPath((Path), (Size))
 #define MachDiskReadLogicalSectors(Drive, Start, Count, Buf)    \
diff --git a/boot/freeldr/freeldr/ntldr/winldr.c b/boot/freeldr/freeldr/ntldr/winldr.c
index e563188bc31..1127f2e88c7 100644
--- a/boot/freeldr/freeldr/ntldr/winldr.c
+++ b/boot/freeldr/freeldr/ntldr/winldr.c
@@ -832,7 +832,7 @@ LoadAndBootWindowsCommon(
     LoaderBlockVA = PaToVa(LoaderBlock);
     /* "Stop all motors", change videomode */
-    MachPrepareForReactOS(Setup);
+    MachPrepareForReactOS();
     /* Cleanup ini file */
     IniCleanup();