summaryrefslogtreecommitdiffstats
path: root/private/ntos/fw/mips/monitor.h
blob: 8ed2203450ab5eac4264a46538e6e5864a8bf382 (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
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
/*++

Copyright (c) 1991  Microsoft Corporation

Module Name:

    monitor.h

Abstract:

    This module contains definitions for monitor.c

Author:

    Lluis Abello (lluis) 09-Sep-1991

Revision History:

--*/

#ifndef _MONITOR_
#define _MONITOR_

//
// Define register names.
//
typedef enum _REGISTER_NAME_ID {
    zero,           // general register 0
    at,             // general register 1
    v0,             // general register 2
    v1,             // general register 3
    a0,             // general register 4
    a1,             // general register 5
    a2,             // general register 6
    a3,             // general register 7
    t0,             // general register 8
    t1,             // general register 9
    t2,             // general register 10
    t3,             // general register 11
    t4,             // general register 12
    t5,             // general register 13
    t6,             // general register 14
    t7,             // general register 15
    s0,             // general register 16
    s1,             // general register 17
    s2,             // general register 18
    s3,             // general register 19
    s4,             // general register 20
    s5,             // general register 21
    s6,             // general register 22
    s7,             // general register 23
    t8,             // general register 24
    t9,             // general register 25
    k0,             // general register 26
    k1,             // general register 27
    gp,             // general register 28
    sp,             // general register 29
    s8,             // general register 30
    ra,             // general register 31
    f0,             // fp register 0
    f1,             // fp register 1
    f2,             // fp register 2
    f3,             // fp register 3
    f4,             // fp register 4
    f5,             // fp register 5
    f6,             // fp register 6
    f7,             // fp register 7
    f8,             // fp register 8
    f9,             // fp register 9
    f10,            // fp register 10
    f11,            // fp register 11
    f12,            // fp register 12
    f13,            // fp register 13
    f14,            // fp register 14
    f15,            // fp register 15
    f16,            // fp register 16
    f17,            // fp register 17
    f18,            // fp register 18
    f19,            // fp register 19
    f20,            // fp register 20
    f21,            // fp register 21
    f22,            // fp register 22
    f23,            // fp register 23
    f24,            // fp register 24
    f25,            // fp register 25
    f26,            // fp register 26
    f27,            // fp register 27
    f28,            // fp register 28
    f29,            // fp register 29
    f30,            // fp register 30
    f31,            // fp register 31
    fsr,            // fp status register
    index,          // cop0 register 0
    random,         // cop0 register 1
    entrylo0,       // cop0 register 2
    entrylo1,       // cop0 register 3
    context,        // cop0 register 4
    pagemask,       // cop0 register 5
    wired,          // cop0 register 6
    badvaddr,       // cop0 register 8
    count,          // cop0 register 9
    entryhi,        // cop0 register 10
    compare,        // cop0 register 11
    psr,            // cop0 register 12
    cause,          // cop0 register 13
    epc,            // cop0 register 14
    prid,           // cop0 register 15
    config,         // cop0 register 16
    lladdr,         // cop0 register 17
    watchlo,        // cop0 register 18
    watchhi,        // cop0 register 19
    ecc,            // cop0 register 26
    cacheerror,     // cop0 register 27
    taglo,          // cop0 register 28
    taghi,          // cop0 register 29
    errorepc,       // cop0 register 30
    invalidregister
} REGISTER_NAME_ID;

extern PCHAR RegisterNameTable[(REGISTER_NAME_ID)invalidregister];

extern ULONG RegisterTable[(REGISTER_NAME_ID)invalidregister];

//
// Define Command names.
//
typedef enum _COMMAND_NAME_ID {
    Dump,
    DumpByte,
    DumpWord,
    DumpDouble,
    Enter,
    EnterByte,
    EnterWord,
    EnterDouble,
    Output,
    OutputByte,
    OutputWord,
    OutputDouble,
    Input,
    InputByte,
    InputWord,
    InputDouble,
    Register,
    Zero,
    Fill,
    AvailableDevices,
    Help,
    Help2,
#ifdef DUO
    SwitchProcessor,
#endif
    Quit,
    invalidcommand
} COMMAND_NAME_ID;

extern PCHAR CommandNameTable[(COMMAND_NAME_ID)invalidcommand];

#endif // _MONITOR_