b4740339e8
All the mbr code now seems to be working. We can build a basic unix disklabel in any existing DOS partition while retaining the existing mbr bootcode or we can install to the whole disk which puts FreeBSD's boot code into the MBR and creates a clean MBR partition table with FreeBSD in partition 0 taking up the whole disk.
29 lines
871 B
C
29 lines
871 B
C
/*
|
|
* Copyright (c) 1994, Paul Richards.
|
|
*
|
|
* All rights reserved.
|
|
*
|
|
* This software may be used, modified, copied, distributed, and
|
|
* sold, in both source and binary form provided that the above
|
|
* copyright and these terms are retained, verbatim, as the first
|
|
* lines of this file. Under no circumstances is the author
|
|
* responsible for the proper functioning of this software, nor does
|
|
* the author assume any responsibility for damages incurred with
|
|
* its use.
|
|
*/
|
|
|
|
#define BOOT1 "/stand/sdboot"
|
|
#define BOOT2 "/stand/bootsd"
|
|
|
|
/* XXX -- calculate these, this is nasty */
|
|
#define DEFFSIZE 1024
|
|
#define DEFFRAG 8
|
|
|
|
int enable_label(int);
|
|
int disable_label(int);
|
|
int write_bootblocks(int, off_t, int);
|
|
int build_bootblocks(struct disklabel *);
|
|
int Mb_to_cylbdry(int, struct disklabel *);
|
|
void default_disklabel(struct disklabel *, int, int);
|
|
int disk_size(int);
|