Revision 80cabfad vl.h
b/vl.h | ||
---|---|---|
29 | 29 |
/* vl.c */ |
30 | 30 |
extern int reset_requested; |
31 | 31 |
extern int64_t ticks_per_sec; |
32 |
extern int pit_min_timer_count; |
|
32 | 33 |
|
33 | 34 |
typedef void (IOPortWriteFunc)(struct CPUState *env, uint32_t address, uint32_t data); |
34 | 35 |
typedef uint32_t (IOPortReadFunc)(struct CPUState *env, uint32_t address); |
35 | 36 |
|
36 | 37 |
int register_ioport_read(int start, int length, IOPortReadFunc *func, int size); |
37 | 38 |
int register_ioport_write(int start, int length, IOPortWriteFunc *func, int size); |
38 |
void pic_set_irq(int irq, int level); |
|
39 | 39 |
int64_t cpu_get_ticks(void); |
40 |
uint64_t muldiv64(uint64_t a, uint32_t b, uint32_t c); |
|
40 | 41 |
|
41 |
void kbd_put_keycode(int keycode);
|
|
42 |
void net_send_packet(int net_fd, const uint8_t *buf, int size);
|
|
42 | 43 |
|
43 |
#define MOUSE_EVENT_LBUTTON 0x01 |
|
44 |
#define MOUSE_EVENT_RBUTTON 0x02 |
|
45 |
#define MOUSE_EVENT_MBUTTON 0x04 |
|
46 |
void kbd_mouse_event(int dx, int dy, int dz, int buttons_state); |
|
44 |
void hw_error(const char *fmt, ...); |
|
45 |
|
|
46 |
int load_image(const char *filename, uint8_t *addr); |
|
47 |
extern const char *bios_dir; |
|
48 |
|
|
49 |
void pstrcpy(char *buf, int buf_size, const char *str); |
|
50 |
char *pstrcat(char *buf, int buf_size, const char *s); |
|
47 | 51 |
|
48 | 52 |
/* block.c */ |
49 | 53 |
typedef struct BlockDriverState BlockDriverState; |
... | ... | |
139 | 143 |
char boot_device); |
140 | 144 |
int fdctrl_disk_change (int idx, const unsigned char *filename, int ro); |
141 | 145 |
|
146 |
/* ne2000.c */ |
|
147 |
|
|
148 |
#define MAX_ETH_FRAME_SIZE 1514 |
|
149 |
|
|
150 |
void ne2000_init(int base, int irq); |
|
151 |
int ne2000_can_receive(void); |
|
152 |
void ne2000_receive(uint8_t *buf, int size); |
|
153 |
|
|
154 |
extern int net_fd; |
|
155 |
|
|
156 |
/* pckbd.c */ |
|
157 |
|
|
158 |
void kbd_put_keycode(int keycode); |
|
159 |
|
|
160 |
#define MOUSE_EVENT_LBUTTON 0x01 |
|
161 |
#define MOUSE_EVENT_RBUTTON 0x02 |
|
162 |
#define MOUSE_EVENT_MBUTTON 0x04 |
|
163 |
void kbd_mouse_event(int dx, int dy, int dz, int buttons_state); |
|
164 |
|
|
165 |
void kbd_init(void); |
|
166 |
|
|
167 |
/* mc146818rtc.c */ |
|
168 |
|
|
169 |
typedef struct RTCState { |
|
170 |
uint8_t cmos_data[128]; |
|
171 |
uint8_t cmos_index; |
|
172 |
int irq; |
|
173 |
} RTCState; |
|
174 |
|
|
175 |
extern RTCState rtc_state; |
|
176 |
|
|
177 |
void rtc_init(int base, int irq); |
|
178 |
void rtc_timer(void); |
|
179 |
|
|
180 |
/* serial.c */ |
|
181 |
|
|
182 |
void serial_init(int base, int irq); |
|
183 |
int serial_can_receive(void); |
|
184 |
void serial_receive_byte(int ch); |
|
185 |
void serial_receive_break(void); |
|
186 |
|
|
187 |
/* i8259.c */ |
|
188 |
|
|
189 |
void pic_set_irq(int irq, int level); |
|
190 |
void pic_init(void); |
|
191 |
|
|
192 |
/* i8254.c */ |
|
193 |
|
|
194 |
#define PIT_FREQ 1193182 |
|
195 |
|
|
196 |
typedef struct PITChannelState { |
|
197 |
int count; /* can be 65536 */ |
|
198 |
uint16_t latched_count; |
|
199 |
uint8_t rw_state; |
|
200 |
uint8_t mode; |
|
201 |
uint8_t bcd; /* not supported */ |
|
202 |
uint8_t gate; /* timer start */ |
|
203 |
int64_t count_load_time; |
|
204 |
int64_t count_last_edge_check_time; |
|
205 |
} PITChannelState; |
|
206 |
|
|
207 |
extern PITChannelState pit_channels[3]; |
|
208 |
|
|
209 |
void pit_init(void); |
|
210 |
void pit_set_gate(PITChannelState *s, int val); |
|
211 |
int pit_get_out(PITChannelState *s); |
|
212 |
int pit_get_out_edges(PITChannelState *s); |
|
213 |
|
|
214 |
/* pc.c */ |
|
215 |
void pc_init(int ram_size, int vga_ram_size, int boot_device, |
|
216 |
DisplayState *ds, const char **fd_filename, int snapshot, |
|
217 |
const char *kernel_filename, const char *kernel_cmdline, |
|
218 |
const char *initrd_filename); |
|
219 |
|
|
142 | 220 |
#endif /* VL_H */ |
Also available in: Unified diff