Remove PC98 and Alpha support.
[dragonfly.git] / sys / boot / pc98 / boot2 / boot.h
1 /*
2  * Mach Operating System
3  * Copyright (c) 1992, 1991 Carnegie Mellon University
4  * All Rights Reserved.
5  *
6  * Permission to use, copy, modify and distribute this software and its
7  * documentation is hereby granted, provided that both the copyright
8  * notice and this permission notice appear in all copies of the
9  * software, derivative works or modified versions, and any portions
10  * thereof, and that both notices appear in supporting documentation.
11  *
12  * CARNEGIE MELLON ALLOWS FREE USE OF THIS SOFTWARE IN ITS "AS IS"
13  * CONDITION.  CARNEGIE MELLON DISCLAIMS ANY LIABILITY OF ANY KIND FOR
14  * ANY DAMAGES WHATSOEVER RESULTING FROM THE USE OF THIS SOFTWARE.
15  *
16  * Carnegie Mellon requests users of this software to return to
17  *
18  *  Software Distribution Coordinator  or  Software.Distribution@CS.CMU.EDU
19  *  School of Computer Science
20  *  Carnegie Mellon University
21  *  Pittsburgh PA 15213-3890
22  *
23  * any improvements or extensions that they make and grant Carnegie Mellon
24  * the rights to redistribute these changes.
25  *
26  *      from: Mach, Revision 2.2  92/04/04  11:35:03  rpd
27  * $FreeBSD: src/sys/boot/pc98/boot2/boot.h,v 1.5 2002/10/03 16:20:14 nyan Exp $
28  * $DragonFly: src/sys/boot/pc98/boot2/Attic/boot.h,v 1.4 2003/11/10 06:08:38 dillon Exp $
29  */
30
31 #include <sys/param.h>
32 #include <sys/time.h>
33
34 typedef int32_t ufs_daddr_t;
35
36 #define MAXFRAG 8
37
38 #include "quota.h"
39 #include "inode.h"
40 #include "fs.h"
41
42 #define RB_DUAL         0x40000         /* XXX */
43 #define RB_PROBEKBD     0x80000         /* XXX */
44
45 extern char *devs[];
46 extern char *name;
47 extern struct fs *fs;
48 extern struct inode inode;
49 extern int dosdev, unit, slice, part, maj, boff, poff;
50 extern unsigned tw_chars;
51 extern int loadflags;
52 extern struct disklabel disklabel;
53
54 /* asm.S */
55 #if ASM_ONLY
56 void real_to_prot(void);
57 void prot_to_real(void);
58 #endif
59 void startprog(unsigned int physaddr, int howto, int bootdev,
60                /* XXX struct bootinfo * */ unsigned int bootinfo);
61 void pcpy(const void *src, void *dst, size_t count);
62
63 /* bios.S */
64 int biosread(int dev, int cyl, int head, int sec, int nsec, void *offset);
65 void putc(int c);
66 int getc(void);
67 int ischar(void);
68 int get_diskinfo(int drive);
69 int memsize(int extended);
70
71 /* boot.c */
72 void boot(int drive);
73
74 /* boot2.S */
75 void boot2(void);
76
77 /* disk.c */
78 int devopen(void);
79 void devread(char *iodest, int sector, int cnt);
80
81 /* io.c */
82 void gateA20(void);
83 void printf(const char *format, ...);
84 void putchar(int c);
85 void delay1ms(void);
86 int gets(char *buf);
87 int strcmp(const char *s1, const char *s2);
88 #ifdef CDBOOT
89 int strcasecmp(const char *s1, const char *s2);
90 #endif /* !CDBOOT */
91 void bcopy(const void *from, void *to, size_t len);
92 void twiddle(void);
93 #ifdef PC98
94 void machine_check(void);
95 #endif
96
97 /* probe_keyboard.c */
98 int probe_keyboard(void);
99
100 /* serial.S */
101 void serial_putc(int ch);
102 int serial_getc(void);
103 int serial_ischar(void);
104 void init_serial(void);
105
106 /* sys.c */
107 void xread(char *addr, int size);
108 void read(char *buffer, int count);
109 int openrd(void);
110
111 #ifdef PC98
112 #define V(ra)   (ra - BOOTSEG * 0x10)
113 #endif
114