In article <gIy68SAOfTA7EwBO@tcs02.demon.co.uk>, Martin Liddle <martin@tcs02.demon.co.uk> writes
In article <200105151140.NAA09220@goedel.fjf.gnu.de>, Frank Heckenbach <frank@g-n-u.de> writes
Martin Liddle wrote:
Does anybody have a code fragment to read the boot sector of a PC running Linux (Red Hat 6.2 if it matters)?
Linux by itself does not use a boot sector. It can be loaded by various boot loaders like LILO, grub or loadlin. While the latter one is a Dos executable, the former two contain their own boot sectors. You may want to look into their source code (C, of course) to find out more.
I think my terminology may be faulty. What I am after is the Master Boot Record (MBR) which I think will be present on a PC, almost irrespective of the operating system. I have downloaded the source for grub but there is a lot to plough through. I just hoped somebody had done it before.
To answer my own question, I finally managed to start to think and came up with this, which seems to do what I want: Var InBuffer: Array[0..511] of Byte; InFile:File; Reset(InFile,'/dev/hda',512); Blockread(Infile,InBuffer,1); -- Martin Liddle, Tynemouth Computer Services, 27 Garforth Close, Cramlington, Northumberland, England, NE23 6EW. Phone: 01670-712624. Fax: 01670-717324. Web site: <http://www.tynecomp.co.uk>.