summaryrefslogtreecommitdiffstatshomepage
path: root/src/emu/cpu/m6502/mincce02.h
blob: a401f489dba4d5f35a4bc2156da8b1df93f9c39d (plain) (blame)
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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
/*****************************************************************************
 *
 *   mincce02.h
 *   Base macros for 65ce02 CPU files
 *
 *****************************************************************************/


/* 65ce02 flags */
#define F_C	0x01
#define F_Z	0x02
#define F_I	0x04
#define F_D	0x08
#define F_B	0x10
#define F_E	0x20
#define F_V	0x40
#define F_N	0x80

/* some shortcuts for improved readability */
#define A	m65ce02->a
#define X	m65ce02->x
#define Y	m65ce02->y
#define P	m65ce02->p
#define Z	m65ce02->z
#define B	m65ce02->zp.b.h
#define SW	m65ce02->sp.w.l
#define SPL	m65ce02->sp.b.l
#define SPH	m65ce02->sp.b.h
#define SPD	m65ce02->sp.d

#define NZ	m65ce02->nz

#define EAL	m65ce02->ea.b.l
#define EAH	m65ce02->ea.b.h
#define EAW	m65ce02->ea.w.l
#define EAD	m65ce02->ea.d

#define ZPL	m65ce02->zp.b.l
#define ZPH	m65ce02->zp.b.h
#define ZPW	m65ce02->zp.w.l
#define ZPD	m65ce02->zp.d

#define PCL	m65ce02->pc.b.l
#define PCH	m65ce02->pc.b.h
#define PCW	m65ce02->pc.w.l
#define PCD	m65ce02->pc.d

#define PPC	m65ce02->ppc.d

#define RDMEM_ID	m65ce02->rdmem_id
#define WRMEM_ID	m65ce02->wrmem_id

#define IRQ_STATE	m65ce02->irq_state
#define AFTER_CLI	m65ce02->after_cli

#define CHANGE_PC	change_pc(PCD)

/***************************************************************
 *  RDOP    read an opcode
 ***************************************************************/
#define RDOP()	program_decrypted_read_byte(PCW++); m65ce02->icount -= 1

/***************************************************************
 *  RDOPARG read an opcode argument
 ***************************************************************/
#define RDOPARG()	program_raw_read_byte(PCW++); m65ce02->icount -= 1

#define PEEK_OP()	program_decrypted_read_byte(PCW)

#define RDMEM(addr)			program_read_byte_8le(addr); m65ce02->icount -= 1
#define WRMEM(addr,data)	program_write_byte_8le(addr,data); m65ce02->icount -= 1