1 /*
2  *  REU.h - 17xx REU emulation
3  *
4  *  Frodo (C) 1994-1997,2002 Christian Bauer
5  */
6 
7 #ifndef _REU_H
8 #define _REU_H
9 
10 
11 class MOS6510;
12 class Prefs;
13 
14 class REU {
15 public:
16 	REU(MOS6510 *CPU);
17 	~REU();
18 
19 	void NewPrefs(Prefs *prefs);
20 	void Reset(void);
21 	uint8 ReadRegister(uint16 adr);
22 	void WriteRegister(uint16 adr, uint8 byte);
23 	void FF00Trigger(void);
24 
25 private:
26 	void open_close_reu(int old_size, int new_size);
27 	void execute_dma(void);
28 
29 	MOS6510 *the_cpu;	// Pointer to 6510
30 
31 	uint8 *ex_ram;		// REU expansion RAM
32 
33 	uint32 ram_size;		// Size of expansion RAM
34 	uint32 ram_mask;		// Expansion RAM address bit mask
35 
36 	uint8 regs[16];		// REU registers
37 };
38 
39 #endif
40