0
|
1 /* v09.h
|
|
2 This file is part of the 6809 simulator v09
|
|
3
|
|
4 created 1994 by L.C. Benschop.
|
|
5 copyleft (c) 1994-2014 by the sbc09 team, see AUTHORS for more details.
|
|
6 license: GNU General Public License version 2, see LICENSE for more details.
|
|
7
|
|
8 */
|
|
9
|
|
10 typedef unsigned char Byte;
|
|
11 typedef unsigned short Word;
|
|
12
|
|
13 /* 6809 registers */
|
|
14 engine Byte ccreg,dpreg;
|
|
15 engine Word xreg,yreg,ureg,sreg,ureg,pcreg;
|
|
16
|
|
17 engine Byte d_reg[2];
|
|
18 extern Word *dreg;
|
|
19 extern Byte *breg,*areg;
|
|
20
|
4
|
21 engine long memsize;
|
16
|
22 engine long rommemsize;
|
4
|
23 engine Byte * mmu;
|
0
|
24 /* 6809 memory space */
|
4
|
25 #ifdef USE_MMU
|
|
26 engine Byte * phymem;
|
|
27 engine Byte * mem;
|
|
28 #else
|
0
|
29 #ifdef MSDOS
|
|
30 engine Byte * mem;
|
|
31 #else
|
|
32 engine Byte mem[65536];
|
|
33 #endif
|
4
|
34 #endif
|
0
|
35
|
|
36 engine volatile int tracing,attention,escape,irq;
|
|
37 engine Word tracehi,tracelo;
|
|
38 engine char escchar;
|
|
39 engine int timer;
|
|
40 engine FILE *tracefile;
|
|
41
|
3
|
42 #ifndef IOPAGE
|
0
|
43 #define IOPAGE 0xe000
|
3
|
44 #endif
|
0
|
45
|
|
46 void interpr(void);
|
|
47 void do_exit(void);
|
|
48 int do_input(int);
|
|
49 void set_term(char);
|
|
50 void do_trace(FILE *);
|
|
51 void do_output(int,int);
|
|
52 void do_escape(void);
|
|
53
|
|
54
|