1 /*
2  * apple2_cards.h
3  *
4  * interface for apple2 peripheral cards
5  */
6 
7 /* $Id: apple2_cards.h,v 1.2 2000/07/01 15:44:01 nyef Exp $ */
8 
9 #ifndef APPLE2_CARDS_H
10 #define APPLE2_CARDS_H
11 
12 #include "types.h"
13 #include "event.h"
14 
15 struct apple2_card;
16 
17 typedef u8 (*a2_card_read)(struct apple2_card *card, u16 address);
18 typedef void (*a2_card_write)(struct apple2_card *card, u16 address, u8 data);
19 
20 struct apple2_card {
21     a2_card_read read;
22     a2_card_write write;
23     u8 *rom;
24 };
25 
26 struct apple2_mainboard;
27 
28 void apple2_register_event(struct apple2_mainboard *apple2, struct event *the_event);
29 
30 struct ui_menu;
31 
32 void apple2_set_child_menu(struct ui_menu *menu, int id);
33 
34 /* card init routines */
35 
36 struct apple2_card *apple2_disk_init(struct apple2_mainboard *apple2);
37 
38 #endif /* APPLE2_CARDS_H */
39 
40 /*
41  * $Log: apple2_cards.h,v $
42  * Revision 1.2  2000/07/01 15:44:01  nyef
43  * added preliminary per-card menu hook
44  *
45  * Revision 1.1  2000/03/11 01:12:22  nyef
46  * Initial revision
47  *
48  */
49