[ros-dev] Unable to use FreeLDR

Ros Arm ros.arm at reactos.org
Tue Sep 21 20:02:31 UTC 2010


Hello,

I propose a compromise similar to what embedded systems and Windows itself do:

A first-stage, 16-bit, raw loader (startup.com in Microsoft lingo).
A second-stage, 32-bit, protected mode loader (osloader.exe in Microsoft lingo).

The first part would be the low-level parts of FreeLDR that allow it to be booted from anywhere without these new limitations, while the second part would provide all the PE benefits.

This would also help with future efforts to PXE boot.

-r

> It seems there are some severe technical limitations to a PE FreeLoader.
> Unless there are good reasons for it to remain a PE file (and I don't think
> easier debugging is a good reason), I would like to see the PE changes to
> FreeLoader reverted.
> 
> -----Original Message-----
> From: ros-dev-bounces at reactos.org [mailto:ros-dev-bounces at reactos.org] On
> Behalf Of Ros Arm
> Sent: Tuesday, September 21, 2010 11:53 AM
> To: ReactOS Development List
> Subject: Re: [ros-dev] Unable to use FreeLDR
> 
> > Ros Arm wrote:
> > > Hello,
> > >
> > > After the switch in 48124 to PE FreeLDR, I am unable to boot FreeLDR any
> longer.
> > >
> > > I have tried official, as well as various unofficial freeldr.sys, none
> worked.
> > >
> > > 47892 version works fine, 48124 does not.
> > >
> > > On a 512MB IDE disk, I got the "_" VGA cursor scrolling
> endlessly/randomly on the screen, before even seeing "Loading FreeLDR..."
> > >
> > > With a 1GB SCSI disk, tested also with a 6GB IDE disk, it remains stuck
> at "Loading FreeLDR...".
> > >   
> > Did you do a "make install" or did you install from bootcd?
> 
> I used to use an older bootcd, and then copy freeldr, which has always
> worked for me.
> 
> > Did you reformat / repartition the disk?
> 
> I did, using the older bootcd.
> 
> > Did you install the VBR?
> 
> This was not an option.
> 
> Based on this, I thought, maybe a new bootcd is needed. I was unable to
> build one previously due to the fact my build system seemed unsupported, but
> I have fixed the issues.
> 
> I built a bootcd with the old FreeLDR, got the new option for MBR+VBR, etc,
> everything works fine.
> 
> I then did an svn up to get the new FreeLDR and SetupLDR, did a full "clean"
> + "make clean", and build a new bootcd.
> 
> Now the VM freezes after "Press any key to boot from CD..." when I press a
> key.
> 
> So it looks like something is really broken in the new "PE"
> FreeLDR/SetupLDR.
> 
> -r
> 
> > 
> > > This seems strange: "Now booting from fat partitions (looks like that's
> what sysreg does) works again. It's safe under the condition that the
> cluster size is at least 4352 bytes, which is true for harddisks of sizes
> bigger than 272MB. Booting from smaller fat disks, like floppy breaks when
> freeldr.sys gets fragmented, which should rarely happen."
> > >   
> > The FAT16 bootsector is only 512 byes. Too small, so it needs to load
> > additional code, which is the fathelper code in freeldr.sys. The 1st
> > bootsector doesn't handle fragmented files, so the fathelper code must
> > be in the first cluster of freeldr.sys. This is true for disks > 272MB.
> > 
> > 
> > _______________________________________________
> > Ros-dev mailing list
> > Ros-dev at reactos.org
> > http://www.reactos.org/mailman/listinfo/ros-dev
> 
> 
> 
> _______________________________________________
> Ros-dev mailing list
> Ros-dev at reactos.org
> http://www.reactos.org/mailman/listinfo/ros-dev
> 
> 
> _______________________________________________
> Ros-dev mailing list
> Ros-dev at reactos.org
> http://www.reactos.org/mailman/listinfo/ros-dev





More information about the Ros-dev mailing list