mirror of
https://github.com/freebsd/freebsd-src.git
synced 2024-12-04 01:38:57 +00:00
2ca2c11464
Re-organised files, moved bootcode routines into their own files. Check return types of everything and pass error messages to windows so we get good diagnostics. Made start on stage 2 installation. Implemented a status file that keeeps track of where we are in the installation process and allows installation from media sequences.
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;
|
|
};
|