forked from hchunhui/tiny386
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathmisc.h
More file actions
31 lines (24 loc) · 1.06 KB
/
misc.h
File metadata and controls
31 lines (24 loc) · 1.06 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
#ifndef MISC_H
#define MISC_H
#include <stdint.h>
typedef struct U8250 U8250;
U8250 *u8250_init(int irq, void *pic, void (*set_irq)(void *pic, int irq, int level));
uint8_t u8250_reg_read(U8250 *uart, int off);
void u8250_reg_write(U8250 *uart, int off, uint8_t val);
void u8250_update(U8250 *uart);
void CaptureKeyboardInput();
typedef struct CMOS CMOS;
CMOS *cmos_init(long mem_size, int irq, void *pic, void (*set_irq)(void *pic, int irq, int level));
void cmos_update_irq(CMOS *s);
uint8_t cmos_ioport_read(CMOS *cmos, int addr);
void cmos_ioport_write(CMOS *cmos, int addr, uint8_t val);
uint8_t cmos_set(void *cmos, int addr, uint8_t val);
typedef struct EMULINK EMULINK;
EMULINK *emulink_init();
int emulink_attach_floppy(EMULINK *e, int i, const char *filename);
uint32_t emulink_status_read(void *s);
void emulink_cmd_write(void *s, uint32_t val);
void emulink_data_write(void *s, uint32_t val);
int emulink_data_write_string(void *s, uint8_t *buf, int size, int count);
int emulink_data_read_string(void *s, uint8_t *buf, int size, int count);
#endif /* MISC_H */