fork of PCE focusing on macplus, supporting DaynaPort SCSI network emulation
1The PCE monitor interface
2==============================================================================
3
4Generic monitor commands
5==============================================================================
6
7These commands are available in both PCE/ibmpc and PCE/macplus. Addresses
8in PCE/ibmpc take the form <expr>[:<expr>], in PCE/macplus they are a
9single expression.
10
11b c [index]
12 Clear a breakpoint. If no breakpoint index is specified, clear all
13 breakpoints.
14
15b l
16 List all breakpoints.
17
18b s addr [pass [reset]]
19 Set an address breakpoint [pass=1 reset=0]. The breakpoint triggers
20 after <addr> has been reached <pass> times. If <reset> is 0 then
21 the breakpoint is cleared after triggering, otherwise it is reset with
22 the original values of <addr>, <pass> and <reset>.
23
24b s x expr [pass [reset]]
25 Set an expression breakpoint [pass=1 reset=0]. The breakpoint triggers
26 after <expr> evaluates to true (non-zero) <pass> times. Note that
27 <expr> is a string and will not be evaluated until the emulator is
28 run with breakpoints enabled (gb, see below). If <expr> contains
29 whitespace, it must be enclosed in double quotes.
30
31c [cnt]
32 Clock the emulated machine <cnt> times. The default is 1.
33
34di name [drive] ["ro"] ["rw"]
35 Insert the disk image <name> into drive <drive>.
36
37d [addr [cnt]]
38 Display <cnt> bytes of memory at address <addr>.
39
40e addr [val | string...]
41 Enter bytes into memory.
42
43g b [addr...]
44 Run with breakpoints. If one or more addresses are given, address
45 breakpoints are set at those addresses with pass=1 and reset=0.
46 Otherwise only breakpoints set by bss or bsx are used.
47
48g
49 Run without breakpoints.
50
51h
52 Print help summary.
53
54m msg [val]
55 Send a message to the emulation core. Refer to doc/messages.txt
56 for a list of valid messages.
57
58p [cnt]
59 Execute cnt instructions, without trace in calls. The default is 1.
60
61q
62 Quit.
63
64r [reg [val]]
65 Set a register or print a register value.
66
67t [cnt]
68 Execute cnt instructions. The default is 1.
69
70u [addr [cnt]]
71 Disassemble <cnt> bytes at <addr>.
72
73v [expr...]
74 Evaluate expressions. If no expression is given, print a list of
75 all user-defined variables.
76
77w <filename> addr cnt
78 Save <cnt> bytes of memory at address <addr> to file <filename>.
79
80
81PCE/ibmpc monitor commands
82==============================================================================
83
84g far
85 Run until CS changes.
86
87h m
88 Print help on messages.
89
90i [b|w] <port>
91 Input a byte or word from a port.
92
93key [[+|-]<key>...]
94 Simulate pressing (+) or releasing (-) a key. Key names are
95 documented in doc/keys.txt.
96
97log int l
98 List all interrupt log expressions.
99
100log int <n> [<expr>]
101 Set an interrupt log expression. Whenever interrupt <n> is triggered
102 the expression <expr> is evaluated and if it is non-zero the interrupt
103 is logged.
104 If <expr> is omitted the interrupt log expression for interrupt <n>
105 is cleared.
106
107o [b|w] <port> <val>
108 Output a byte or word to a port.
109
110pq c
111 Clear the prefetch queue.
112
113pq f
114 Fill the prefetch queue.
115
116pq s
117 Print prefetch queue status.
118
119s [what]
120 Print status (pc|cpu|mem|pit|ppi|pic|time|uart|video|xms).
121
122
123PCE/macplus monitor commands
124==============================================================================
125
126copy src dst cnt
127 Copy <cnt> bytes of memory from address <src> to address <dst>.
128
129f addr size [val...]
130 Find bytes in memory
131
132g e [exception]
133 Run until exception"
134
135halt [val]
136 Set halt state [2]
137
138reset
139 Reset the emulated machine.
140
141rte
142 Execute to next rte.
143
144s [what]
145 Print status (cpu|mem|scc|via).
146
147
148Expressions
149==============================================================================
150
151Expressions can be used in commands wherever a numerical value is expected.
152All expressions are evaluated using 32 bit unsigned arithmetic.
153
154%<ident> Variables defined by the emulation core (e.g. CPU registers,
155 see below)
156$<ident> User defined variables
157const A hexadecimal constant
158(<expr>) Force priority
159
160!x Logical negation
161~x Binary negation
162+x Positive sign (ignored)
163-x Arithmetic negation
164
165x * y Multiplication
166x / y Division
167x % y Modulo
168
169x + y Addition
170x - y Subtractions
171
172x << y Shift left
173x >> y Shift right
174
175x < y Less than
176x > y Greater than
177x <= y Less than or equal
178x >= y Greater than or equal
179
180x == y Equal
181x != y Not equal
182
183x & y Binary and
184
185x ^ y Binary exclusive or
186
187x | y Binary or
188
189x && y Logical and
190
191x || y Logical or
192
193x ? y : z If .. then .. else
194
195x = y Assignment
196x += y Assignemnt with addition
197x -= y Assignment with subtraction
198x *= y Assignment with multiplication
199x /= y Assignment with division
200x <<= y Assignment with shift left
201x >>= y Assignment with shift right
202x |= y Assignment with binary or
203x &= y Assignment with bianry and
204x ^= y Assignment with binary exclusive or
205
206x, y Expression sequence
207
208
209PCE/ibmpc symbols
210==============================================================================
211
212%intv If an interrupt occured before the
213 current instruction, %intv contains
214 the number of that interrupt. Otherwise
215 %intv contains the number of the last
216 interrupt plus 256.
217
218%ax %ah %al Data registers
219%bx %bh %bl
220%cx %ch %cl
221%dx %dh %dl
222%sp The stack pointer
223%bp
224%si
225%di
226
227%cs Segment registers
228%ds
229%es
230%ss
231
232%ip The instruction pointer
233%flags The flag register
234
235
236PCE/macplus symbols
237==============================================================================
238
239%d0 %d0.b %d0.w %d0.l Data registers
240%d1 %d1.b %d1.w %d1.l
241%d2 %d2.b %d2.w %d2.l
242%d3 %d3.b %d3.w %d3.l
243%d4 %d4.b %d4.w %d4.l
244%d5 %d5.b %d5.w %d5.l
245%d6 %d6.b %d6.w %d6.l
246%d7 %d7.b %d7.w %d7.l
247
248%a0 %a0.b %a0.w %a0.l Address registers
249%a1 %a1.b %a1.w %a1.l
250%a2 %a2.b %a2.w %a2.l
251%a3 %a3.b %a3.w %a3.l
252%a4 %a4.b %a4.w %a4.l
253%a5 %a5.b %a5.w %a5.l
254%a6 %a6.b %a6.w %a6.l
255%a7 %a7.b %a7.w %a7.l
256
257%sp The stack pointer
258%usp The user stack pointer
259%ssp The supervisor stack pointer
260
261%sr The status register
262%ccr The condition code register
263
264%pc The current PC
265%lpc The last PC
266
267%op0 The word at (PC)
268%op1 The word at (PC + 2)
269%op2 The word at (PC + 4)
270%op3 The word at (PC + 6)