-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathmcore.hpp
71 lines (63 loc) · 1.18 KB
/
mcore.hpp
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
/*
* IDA MCORE plugin
* Copyright (c) 2004-05
* rshade@hushmail.com
*
*/
#ifndef MCORE_HPP
#define MCORE_HPP
#include "idp.hpp"
//----------------------------------------------------------------------
// Redefine temporary names
//
// means this pair of operands is an "indirect memory reference"
// 1st is the "real op" that the processor uses
// 2nd is the "programmer/assembler-friendly op" used to make cross-
// references more useful
#define ind_op specflag1
#define o_regrange o_idpspec0
//------------------------------------------------------------------------
enum mcore_registers {
rR0,
rR1,
rR2,
rR3,
rR4,
rR5,
rR6,
rR7,
rR8,
rR9,
rR10,
rR11,
rR12,
rR13,
rR14,
rR15,
rPC,
rPSR,
rVBR,
rEPSR,
rFPSR,
rEPC,
rFPC,
rSS0,
rSS1,
rSS2,
rSS3,
rSS4,
rGCR,
rGSR,
rVcs,
rVds,
rLAST
};
//------------------------------------------------------------------------
void header(outctx_t *ctx);
void footer(outctx_t *ctx);
void segstart(ea_t ea);
int ana(insn_t *cmd);
int emu(insn_t *cmd);
void out(outctx_t *ctx);
bool outop(outctx_t *ctx, const op_t &x);
#endif