1 /* $NetBSD: boot_ufs.h,v 1.2 2002/03/17 16:14:30 minoura 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 __P((const char *msg)) __attribute__((noreturn)); 13 int badbaddr __P((volatile void *adr)); 14 #ifdef SCSI_ADHOC_BOOTPART 15 void RAW_READ0 __P((void *buf, u_int32_t blkpos, size_t bytelen)); 16 #endif 17 unsigned B_KEYINP __P((void)); 18 void B_PUTC __P((unsigned int c)); 19 void B_PRINT __P((const unsigned char *p)); 20 unsigned B_COLOR __P((unsigned int w)); 21 22 extern unsigned ID; /* target SCSI ID */ 23 extern 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 28 extern unsigned FDMODE; /* Floppy access mode: PDA x 256 + MODE */ 29 extern 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 38 extern u_int32_t SCSI_PARTTOP; /* top position of boot partition in sector */ 39 extern u_int32_t SCSI_BLKLEN; /* sector len 0: 256, 1: 512, 2: 1024 */ 40 #endif 41