summaryrefslogtreecommitdiff
path: root/src/cpu/core.h
blob: 03d20d0115d424f99848ea95668f99bd9ac9cb11 (plain)
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
#ifndef CPU_CORE_H
#define CPU_CORE_H

typedef unsigned char
	byte;
typedef unsigned short
	address;

enum Addressing {
	eImmediate,
	eAccumulator,
	eZeroPage,
	eZeroPageIndexedX,
	eZeroPageIndexedY,
	eAbsolute,
	eAbsoluteIndexedX,
	eAbsoluteIndexedY,
	eIndexedIndirect,
	eIndirectIndexed,
	eImplied,
	eIndirectAbsolute,
	eRelative
};

typedef int Addressing;

typedef struct AddData{
	int cycles;
	int length;
	address add;
	byte value;
} AddData;

byte getMemory(address x);

void setMemory(address x, byte y);

#endif