47 lines
1.2 KiB
C
47 lines
1.2 KiB
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 BOOT_MAGIC 0xAA55
|
||
|
#define ACTIVE 0x80
|
||
|
#define BOOT1 "/usr/mdec/sdboot"
|
||
|
#define BOOT2 "/usr/mdec/bootsd"
|
||
|
|
||
|
/* XXX -- calculate these, this is nasty */
|
||
|
#define DEFFSIZE 1024
|
||
|
#define DEFFRAG 8
|
||
|
|
||
|
extern char *part_type(int);
|
||
|
extern int disk_size(int);
|
||
|
extern int enable_label(int);
|
||
|
extern int disable_label(int);
|
||
|
extern int write_bootblocks(int, off_t, int);
|
||
|
extern int build_bootblocks(struct disklabel *);
|
||
|
extern void build_disklabel(struct disklabel *, int, int);
|
||
|
extern int write_bootarea(int);
|
||
|
extern int read_bootarea(int);
|
||
|
|
||
|
struct bootarea
|
||
|
{
|
||
|
unsigned char padding[2]; /* force longs to be long aligned */
|
||
|
unsigned char bootcode[DOSPARTOFF];
|
||
|
struct dos_partition dospart[4];
|
||
|
unsigned short signature;
|
||
|
};
|
||
|
|
||
|
struct part_type
|
||
|
{
|
||
|
unsigned char type;
|
||
|
char *name;
|
||
|
};
|