1/*	$NetBSD: boot_ufs.h,v 1.4 2007/12/24 15:46:45 perry Exp $	*/
2
3/***************************************************************
4 *
5 *	file: boot.h
6 *
7 *	author: chapuni(GBA02750@niftyserve.or.jp)
8 *
9 */
10
11/* xxboot.S */
12__dead void BOOT_ERROR(const char *msg);
13int badbaddr(volatile void *adr);
14#ifdef SCSI_ADHOC_BOOTPART
15void RAW_READ0(void *buf, u_int32_t blkpos, size_t bytelen);
16#endif
17unsigned B_KEYINP(void);
18void B_PUTC(unsigned int c);
19void B_PRINT(const char *p);
20unsigned B_COLOR(unsigned int w);
21
22extern unsigned ID;		/* target SCSI ID */
23extern unsigned BOOT_INFO;	/* result of IOCS(__BOOTINF) */
24
25/* check whether the bootinf is SCSI or floppy */
26#define BINF_ISFD(pbinf)	(*((char *)(pbinf) + 1) == 0)
27
28extern unsigned FDMODE;		/* Floppy access mode: PDA x 256 + MODE */
29extern struct {
30	struct fdfmt{
31		unsigned char	N;	/* sector length 0: 128, ..., 3: 1K */
32		unsigned char	C;	/* cylinder # */
33		unsigned char	H;	/* head # */
34		unsigned char	R;	/* sector # */
35	} minsec, maxsec;
36} FDSECMINMAX;			/* FD format type of the first track */
37#ifdef SCSI_ADHOC_BOOTPART
38extern u_int32_t SCSI_PARTTOP;	/* top position of boot partition in sector */
39extern u_int32_t SCSI_BLKLEN;	/* sector len 0: 256, 1: 512, 2: 1024 */
40#endif
41