Author: silverblade Date: Mon Jan 19 17:38:08 2009 New Revision: 38962
URL: http://svn.reactos.org/svn/reactos?rev=38962&view=rev Log: setupldr previously worked by faking the FreeLdr OS menu function. Now FreeLdr has a special OS type for ReactOS Setup, which will only work for the bootcd. As a result, bootcd can display a menu now. This opens up the possibility of including both a "live" environment for users to play with as well as the opportunity to install, from the same disc.
Modified: trunk/reactos/boot/freeldr/freeldr/bootmgr.c trunk/reactos/boot/freeldr/freeldr/freeldr_base.rbuild trunk/reactos/boot/freeldr/freeldr/freeldr_main.rbuild trunk/reactos/boot/freeldr/freeldr/include/freeldr.h trunk/reactos/boot/freeldr/freeldr/reactos/setupldr.c trunk/reactos/boot/freeldr/freeldr/setupldr_main.rbuild
Modified: trunk/reactos/boot/freeldr/freeldr/bootmgr.c URL: http://svn.reactos.org/svn/reactos/trunk/reactos/boot/freeldr/freeldr/bootmg... ============================================================================== --- trunk/reactos/boot/freeldr/freeldr/bootmgr.c [iso-8859-1] (original) +++ trunk/reactos/boot/freeldr/freeldr/bootmgr.c [iso-8859-1] Mon Jan 19 17:38:08 2009 @@ -115,6 +115,14 @@ { LoadAndBootReactOS(OperatingSystemSectionNames[SelectedOperatingSystem]); } +#ifdef FREELDR_ROS_SETUP + else if (_stricmp(SettingValue, "ReactOSSetup") == 0) + { + // Could probably pass the selection across at a later date + // which might be useful for different install methods? + RunReactOSSetup(); + } +#endif #ifdef __i386__ else if (_stricmp(SettingValue, "WindowsNT40") == 0) {
Modified: trunk/reactos/boot/freeldr/freeldr/freeldr_base.rbuild URL: http://svn.reactos.org/svn/reactos/trunk/reactos/boot/freeldr/freeldr/freeld... ============================================================================== --- trunk/reactos/boot/freeldr/freeldr/freeldr_base.rbuild [iso-8859-1] (original) +++ trunk/reactos/boot/freeldr/freeldr/freeldr_base.rbuild [iso-8859-1] Mon Jan 19 17:38:08 2009 @@ -77,6 +77,12 @@ <file>version.c</file> <file>cmdline.c</file> <file>machine.c</file> + <file>drivemap.c</file> + <file>miscboot.c</file> + <file>options.c</file> + <file>linuxboot.c</file> + <file>oslist.c</file> + <file>custom.c</file> <directory name="include"> <pch>freeldr.h</pch> </directory>
Modified: trunk/reactos/boot/freeldr/freeldr/freeldr_main.rbuild URL: http://svn.reactos.org/svn/reactos/trunk/reactos/boot/freeldr/freeldr/freeld... ============================================================================== --- trunk/reactos/boot/freeldr/freeldr/freeldr_main.rbuild [iso-8859-1] (original) +++ trunk/reactos/boot/freeldr/freeldr/freeldr_main.rbuild [iso-8859-1] Mon Jan 19 17:38:08 2009 @@ -7,10 +7,4 @@ <compilerflag>-fno-inline</compilerflag> <compilerflag>-fno-zero-initialized-in-bss</compilerflag> <file>bootmgr.c</file> - <file>drivemap.c</file> - <file>miscboot.c</file> - <file>options.c</file> - <file>linuxboot.c</file> - <file>oslist.c</file> - <file>custom.c</file> </module>
Modified: trunk/reactos/boot/freeldr/freeldr/include/freeldr.h URL: http://svn.reactos.org/svn/reactos/trunk/reactos/boot/freeldr/freeldr/includ... ============================================================================== --- trunk/reactos/boot/freeldr/freeldr/include/freeldr.h [iso-8859-1] (original) +++ trunk/reactos/boot/freeldr/freeldr/include/freeldr.h [iso-8859-1] Mon Jan 19 17:38:08 2009 @@ -107,5 +107,6 @@
VOID BootMain(LPSTR CmdLine); VOID RunLoader(VOID); +VOID RunReactOSSetup(VOID);
#endif // defined __FREELDR_H
Modified: trunk/reactos/boot/freeldr/freeldr/reactos/setupldr.c URL: http://svn.reactos.org/svn/reactos/trunk/reactos/boot/freeldr/freeldr/reacto... ============================================================================== --- trunk/reactos/boot/freeldr/freeldr/reactos/setupldr.c [iso-8859-1] (original) +++ trunk/reactos/boot/freeldr/freeldr/reactos/setupldr.c [iso-8859-1] Mon Jan 19 17:38:08 2009 @@ -42,7 +42,7 @@
#define USE_UI
-VOID RunLoader(VOID) +VOID RunReactOSSetup(VOID) { ULONG i; LPCSTR SourcePath;
Modified: trunk/reactos/boot/freeldr/freeldr/setupldr_main.rbuild URL: http://svn.reactos.org/svn/reactos/trunk/reactos/boot/freeldr/freeldr/setupl... ============================================================================== --- trunk/reactos/boot/freeldr/freeldr/setupldr_main.rbuild [iso-8859-1] (original) +++ trunk/reactos/boot/freeldr/freeldr/setupldr_main.rbuild [iso-8859-1] Mon Jan 19 17:38:08 2009 @@ -4,11 +4,15 @@ <include base="setupldr_main">include</include> <include base="ntoskrnl">include</include> <define name="_NTHAL_" /> + <define name="FREELDR_ROS_SETUP" /> <compilerflag>-ffreestanding</compilerflag> <compilerflag>-fno-builtin</compilerflag> <compilerflag>-fno-inline</compilerflag> <compilerflag>-fno-zero-initialized-in-bss</compilerflag> <compilerflag>-Os</compilerflag> + + <file>bootmgr.c</file> + <directory name="inffile"> <file>inffile.c</file> </directory>