[syslinux] [PATCH] Correct chain.c32 v. 6.04-pre1 for Reactos

Ady Ady ady-sf at hotmail.com
Mon Feb 20 11:17:55 PST 2017


Correct the "seg=" value(s) corresponding to the "reactos=" option
for chain.c32.

The correct segment parameter should be "seg=0x0F80",
instead of the incorrect / failing ones "seg=0:0x8000:0x8100".

References:
 https://svn.reactos.org/svn/reactos/trunk/reactos/boot/freeldr/notes.txt?revision=73859&view=markup&pathrev=73859#l24 

 https://git.reactos.org/?p=reactos.git;a=blob;f=reactos/boot/freeldr/notes.txt;hb=HEAD 

 https://git.reactos.org/?p=reactos.git&a=search&h=HEAD&st=grep&s=FREELDR_BASE 

 https://git.reactos.org/?p=reactos.git;a=blob;f=reactos/boot/freeldr/freeldr/include/arch/pc/x86common.h;h=c747d145cb3b35f68caab5291dc65dcdca21f17d;hb=HEAD#l17 

 https://git.reactos.org/?p=reactos.git;a=blob;f=reactos/boot/freeldr/freeldr/include/arch/pc/x86common.h;hb=HEAD 

At the time of writing this patch, the up-to-date bootsectors referring to
the above 'define' ("FREELDR_BASE") have a filename extension ending with ".S".

There is also "multiboot.S", FWIW.

Regards,
Ady.


diff U3 com32/chain/options.c com32/chain/options.c
--- com32/chain/options.c	Wed Mar 02 07:06:29 2016
+++ com32/chain/options.c	Mon Feb 18 19:19:29 2017
@@ -224,15 +224,9 @@
 	    opt.setbpb = true;
 	    opt.hand = false;
 	} else if (!strncmp(argv[i], "reactos=", 8)) {
-	    /*
-	     * settings based on commit
-	     *   ad4cf1470977f648ee1dd45e97939589ccb0393c
-	     * note, conflicts with:
-	     *   http://reactos.freedoors.org/Reactos%200.3.13/ReactOS-0.3.13-REL-src/boot/freeldr/notes.txt
-	     */
-	    opt.fseg = 0;
-	    opt.foff = 0x8000;
-	    opt.fip = 0x8100;
+	    opt.fseg = 0x0F80;
+	    opt.foff = 0;
+	    opt.fip = 0;
 	    opt.file = argv[i] + 8;
 	    opt.setbpb = true;
 	    opt.hand = false;
diff U3 doc/chain.txt doc/chain.txt
--- doc/chain.txt	Wed Mar 02 07:06:02 2016
+++ doc/chain.txt	Mon Feb 18 18:45:10 2017
@@ -296,7 +296,7 @@
 patched with "cmdcons\0". Remarks the same as in 'ntldr='.
 
 	reactos=<file>
-	sets: file=<file> seg=0:0x8000:0x8100 setbpb nohand
+	sets: file=<file> seg=0x0F80 setbpb nohand
 
 Prepares to load ReactOS's freeldr directly. You might want to add 'save'
 option to store corrected BPB values.

 --




More information about the Syslinux mailing list