jb302@39
|
1 #LyX 2.0 created this file. For more info see http://www.lyx.org/
|
jb302@39
|
2 \lyxformat 413
|
jb302@39
|
3 \begin_document
|
jb302@39
|
4 \begin_header
|
jb302@39
|
5 \textclass article
|
jb302@39
|
6 \use_default_options true
|
jb302@39
|
7 \maintain_unincluded_children false
|
jb302@39
|
8 \language english
|
jb302@39
|
9 \language_package default
|
jb302@39
|
10 \inputencoding auto
|
jb302@39
|
11 \fontencoding global
|
jb302@39
|
12 \font_roman default
|
jb302@39
|
13 \font_sans default
|
jb302@39
|
14 \font_typewriter default
|
jb302@39
|
15 \font_default_family default
|
jb302@39
|
16 \use_non_tex_fonts false
|
jb302@39
|
17 \font_sc false
|
jb302@39
|
18 \font_osf false
|
jb302@39
|
19 \font_sf_scale 100
|
jb302@39
|
20 \font_tt_scale 100
|
jb302@39
|
21
|
jb302@39
|
22 \graphics default
|
jb302@39
|
23 \default_output_format default
|
jb302@39
|
24 \output_sync 0
|
jb302@39
|
25 \bibtex_command default
|
jb302@39
|
26 \index_command default
|
jb302@39
|
27 \paperfontsize default
|
jb302@39
|
28 \use_hyperref false
|
jb302@39
|
29 \papersize default
|
jb302@39
|
30 \use_geometry false
|
jb302@39
|
31 \use_amsmath 1
|
jb302@39
|
32 \use_esint 1
|
jb302@39
|
33 \use_mhchem 1
|
jb302@39
|
34 \use_mathdots 1
|
jb302@39
|
35 \cite_engine basic
|
jb302@39
|
36 \use_bibtopic false
|
jb302@39
|
37 \use_indices false
|
jb302@39
|
38 \paperorientation portrait
|
jb302@39
|
39 \suppress_date false
|
jb302@39
|
40 \use_refstyle 1
|
jb302@39
|
41 \index Index
|
jb302@39
|
42 \shortcut idx
|
jb302@39
|
43 \color #008000
|
jb302@39
|
44 \end_index
|
jb302@39
|
45 \secnumdepth 3
|
jb302@39
|
46 \tocdepth 3
|
jb302@39
|
47 \paragraph_separation indent
|
jb302@39
|
48 \paragraph_indentation default
|
jb302@39
|
49 \quotes_language english
|
jb302@39
|
50 \papercolumns 1
|
jb302@39
|
51 \papersides 1
|
jb302@39
|
52 \paperpagestyle default
|
jb302@39
|
53 \tracking_changes false
|
jb302@39
|
54 \output_changes false
|
jb302@39
|
55 \html_math_output 0
|
jb302@39
|
56 \html_css_as_file 0
|
jb302@39
|
57 \html_be_strict false
|
jb302@39
|
58 \end_header
|
jb302@39
|
59
|
jb302@39
|
60 \begin_body
|
jb302@39
|
61
|
jb302@39
|
62 \begin_layout Part
|
jb302@39
|
63 The Debugger
|
jb302@39
|
64 \end_layout
|
jb302@39
|
65
|
jb302@39
|
66 \begin_layout Section
|
jb302@39
|
67 Design
|
jb302@39
|
68 \end_layout
|
jb302@39
|
69
|
jb302@39
|
70 \begin_layout Standard
|
jb302@39
|
71 The debugger is designed to issue commands to and receive data from an instant
|
jb302@39
|
72 of the emulator running either as a process or on a micro-controller.
|
jb302@39
|
73 \end_layout
|
jb302@39
|
74
|
jb302@39
|
75 \begin_layout Standard
|
jb302@39
|
76 \begin_inset ERT
|
jb302@39
|
77 status open
|
jb302@39
|
78
|
jb302@39
|
79 \begin_layout Plain Layout
|
jb302@39
|
80
|
jb302@39
|
81
|
jb302@39
|
82 \backslash
|
jb302@39
|
83 bigskip
|
jb302@39
|
84 \end_layout
|
jb302@39
|
85
|
jb302@39
|
86 \end_inset
|
jb302@39
|
87
|
jb302@39
|
88
|
jb302@39
|
89 \end_layout
|
jb302@39
|
90
|
jb302@39
|
91 \begin_layout Standard
|
jb302@39
|
92 \begin_inset Graphics
|
jb302@39
|
93 filename /home/jmz/qm/ede/docs/img/dbg/debugger_overview.svg
|
jb302@39
|
94 display false
|
jb302@39
|
95
|
jb302@39
|
96 \end_inset
|
jb302@39
|
97
|
jb302@39
|
98
|
jb302@39
|
99 \end_layout
|
jb302@39
|
100
|
jb302@39
|
101 \begin_layout Standard
|
jb302@39
|
102 \begin_inset ERT
|
jb302@39
|
103 status open
|
jb302@39
|
104
|
jb302@39
|
105 \begin_layout Plain Layout
|
jb302@39
|
106
|
jb302@39
|
107
|
jb302@39
|
108 \backslash
|
jb302@39
|
109 bigskip
|
jb302@39
|
110 \end_layout
|
jb302@39
|
111
|
jb302@39
|
112 \end_inset
|
jb302@39
|
113
|
jb302@39
|
114
|
jb302@39
|
115 \end_layout
|
jb302@39
|
116
|
jb302@39
|
117 \begin_layout Standard
|
jb302@39
|
118 The debugger will implement the protocol described under the Emulator Design
|
jb302@39
|
119 section of this report.
|
jb302@39
|
120 \end_layout
|
jb302@39
|
121
|
jb302@39
|
122 \begin_layout Standard
|
jb302@39
|
123 \begin_inset Newpage pagebreak
|
jb302@39
|
124 \end_inset
|
jb302@39
|
125
|
jb302@39
|
126
|
jb302@39
|
127 \end_layout
|
jb302@39
|
128
|
jb302@39
|
129 \begin_layout Section
|
jb302@39
|
130 Implementation
|
jb302@39
|
131 \end_layout
|
jb302@39
|
132
|
jb302@39
|
133 \begin_layout Subsection
|
jb302@39
|
134 dbg.py
|
jb302@39
|
135 \end_layout
|
jb302@39
|
136
|
jb302@39
|
137 \begin_layout Standard
|
jb302@39
|
138 The debugger has been implemented as a Python class with the following functions
|
jb302@39
|
139 \end_layout
|
jb302@39
|
140
|
jb302@39
|
141 \begin_layout Standard
|
jb302@39
|
142 \begin_inset ERT
|
jb302@39
|
143 status open
|
jb302@39
|
144
|
jb302@39
|
145 \begin_layout Plain Layout
|
jb302@39
|
146
|
jb302@39
|
147
|
jb302@39
|
148 \backslash
|
jb302@39
|
149 bigskip
|
jb302@39
|
150 \end_layout
|
jb302@39
|
151
|
jb302@39
|
152 \end_inset
|
jb302@39
|
153
|
jb302@39
|
154
|
jb302@39
|
155 \end_layout
|
jb302@39
|
156
|
jb302@39
|
157 \begin_layout Standard
|
jb302@39
|
158 \begin_inset Tabular
|
jb302@39
|
159 <lyxtabular version="3" rows="17" columns="3">
|
jb302@39
|
160 <features tabularvalignment="middle">
|
jb302@39
|
161 <column alignment="center" valignment="top" width="0">
|
jb302@39
|
162 <column alignment="left" valignment="top" width="2cm">
|
jb302@39
|
163 <column alignment="center" valignment="top" width="7cm">
|
jb302@39
|
164 <row>
|
jb302@39
|
165 <cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
|
jb302@39
|
166 \begin_inset Text
|
jb302@39
|
167
|
jb302@39
|
168 \begin_layout Plain Layout
|
jb302@39
|
169 Function
|
jb302@39
|
170 \end_layout
|
jb302@39
|
171
|
jb302@39
|
172 \end_inset
|
jb302@39
|
173 </cell>
|
jb302@39
|
174 <cell multicolumn="1" alignment="left" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
|
jb302@39
|
175 \begin_inset Text
|
jb302@39
|
176
|
jb302@39
|
177 \begin_layout Plain Layout
|
jb302@39
|
178 Arguments
|
jb302@39
|
179 \end_layout
|
jb302@39
|
180
|
jb302@39
|
181 \end_inset
|
jb302@39
|
182 </cell>
|
jb302@39
|
183 <cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
|
jb302@39
|
184 \begin_inset Text
|
jb302@39
|
185
|
jb302@39
|
186 \begin_layout Plain Layout
|
jb302@39
|
187 Description
|
jb302@39
|
188 \end_layout
|
jb302@39
|
189
|
jb302@39
|
190 \end_inset
|
jb302@39
|
191 </cell>
|
jb302@39
|
192 </row>
|
jb302@39
|
193 <row>
|
jb302@39
|
194 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
|
jb302@39
|
195 \begin_inset Text
|
jb302@39
|
196
|
jb302@39
|
197 \begin_layout Plain Layout
|
jb302@39
|
198 snd
|
jb302@39
|
199 \end_layout
|
jb302@39
|
200
|
jb302@39
|
201 \end_inset
|
jb302@39
|
202 </cell>
|
jb302@39
|
203 <cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
|
jb302@39
|
204 \begin_inset Text
|
jb302@39
|
205
|
jb302@39
|
206 \begin_layout Plain Layout
|
jb302@39
|
207 byte
|
jb302@39
|
208 \end_layout
|
jb302@39
|
209
|
jb302@39
|
210 \end_inset
|
jb302@39
|
211 </cell>
|
jb302@39
|
212 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
|
jb302@39
|
213 \begin_inset Text
|
jb302@39
|
214
|
jb302@39
|
215 \begin_layout Plain Layout
|
jb302@39
|
216 send a byte to the emulator via a serial or file buffer
|
jb302@39
|
217 \end_layout
|
jb302@39
|
218
|
jb302@39
|
219 \end_inset
|
jb302@39
|
220 </cell>
|
jb302@39
|
221 </row>
|
jb302@39
|
222 <row>
|
jb302@39
|
223 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
|
jb302@39
|
224 \begin_inset Text
|
jb302@39
|
225
|
jb302@39
|
226 \begin_layout Plain Layout
|
jb302@39
|
227 rcv
|
jb302@39
|
228 \end_layout
|
jb302@39
|
229
|
jb302@39
|
230 \end_inset
|
jb302@39
|
231 </cell>
|
jb302@39
|
232 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
|
jb302@39
|
233 \begin_inset Text
|
jb302@39
|
234
|
jb302@39
|
235 \begin_layout Plain Layout
|
jb302@39
|
236 length
|
jb302@39
|
237 \end_layout
|
jb302@39
|
238
|
jb302@39
|
239 \end_inset
|
jb302@39
|
240 </cell>
|
jb302@39
|
241 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
|
jb302@39
|
242 \begin_inset Text
|
jb302@39
|
243
|
jb302@39
|
244 \begin_layout Plain Layout
|
jb302@39
|
245 receive length number of bytes from a serial or file buffer
|
jb302@39
|
246 \end_layout
|
jb302@39
|
247
|
jb302@39
|
248 \end_inset
|
jb302@39
|
249 </cell>
|
jb302@39
|
250 </row>
|
jb302@39
|
251 <row>
|
jb302@39
|
252 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
|
jb302@39
|
253 \begin_inset Text
|
jb302@39
|
254
|
jb302@39
|
255 \begin_layout Plain Layout
|
jb302@39
|
256 step
|
jb302@39
|
257 \end_layout
|
jb302@39
|
258
|
jb302@39
|
259 \end_inset
|
jb302@39
|
260 </cell>
|
jb302@39
|
261 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
|
jb302@39
|
262 \begin_inset Text
|
jb302@39
|
263
|
jb302@39
|
264 \begin_layout Plain Layout
|
jb302@39
|
265 -
|
jb302@39
|
266 \end_layout
|
jb302@39
|
267
|
jb302@39
|
268 \end_inset
|
jb302@39
|
269 </cell>
|
jb302@39
|
270 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
|
jb302@39
|
271 \begin_inset Text
|
jb302@39
|
272
|
jb302@39
|
273 \begin_layout Plain Layout
|
jb302@39
|
274 Execute instruction at PC
|
jb302@39
|
275 \end_layout
|
jb302@39
|
276
|
jb302@39
|
277 \end_inset
|
jb302@39
|
278 </cell>
|
jb302@39
|
279 </row>
|
jb302@39
|
280 <row>
|
jb302@39
|
281 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
|
jb302@39
|
282 \begin_inset Text
|
jb302@39
|
283
|
jb302@39
|
284 \begin_layout Plain Layout
|
jb302@39
|
285 run
|
jb302@39
|
286 \end_layout
|
jb302@39
|
287
|
jb302@39
|
288 \end_inset
|
jb302@39
|
289 </cell>
|
jb302@39
|
290 <cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
|
jb302@39
|
291 \begin_inset Text
|
jb302@39
|
292
|
jb302@39
|
293 \begin_layout Plain Layout
|
jb302@39
|
294 -
|
jb302@39
|
295 \end_layout
|
jb302@39
|
296
|
jb302@39
|
297 \end_inset
|
jb302@39
|
298 </cell>
|
jb302@39
|
299 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
|
jb302@39
|
300 \begin_inset Text
|
jb302@39
|
301
|
jb302@39
|
302 \begin_layout Plain Layout
|
jb302@39
|
303 Execute instructions from PC until a break point is reached
|
jb302@39
|
304 \end_layout
|
jb302@39
|
305
|
jb302@39
|
306 \end_inset
|
jb302@39
|
307 </cell>
|
jb302@39
|
308 </row>
|
jb302@39
|
309 <row>
|
jb302@39
|
310 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
|
jb302@39
|
311 \begin_inset Text
|
jb302@39
|
312
|
jb302@39
|
313 \begin_layout Plain Layout
|
jb302@39
|
314 set_reg
|
jb302@39
|
315 \end_layout
|
jb302@39
|
316
|
jb302@39
|
317 \end_inset
|
jb302@39
|
318 </cell>
|
jb302@39
|
319 <cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
|
jb302@39
|
320 \begin_inset Text
|
jb302@39
|
321
|
jb302@39
|
322 \begin_layout Plain Layout
|
jb302@39
|
323 register address, value
|
jb302@39
|
324 \end_layout
|
jb302@39
|
325
|
jb302@39
|
326 \end_inset
|
jb302@39
|
327 </cell>
|
jb302@39
|
328 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
|
jb302@39
|
329 \begin_inset Text
|
jb302@39
|
330
|
jb302@39
|
331 \begin_layout Plain Layout
|
jb302@39
|
332 Set a register (register address between 0 and 16 as described under Memory
|
jb302@39
|
333 Design in the Emulator Design section)
|
jb302@39
|
334 \end_layout
|
jb302@39
|
335
|
jb302@39
|
336 \end_inset
|
jb302@39
|
337 </cell>
|
jb302@39
|
338 </row>
|
jb302@39
|
339 <row>
|
jb302@39
|
340 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
|
jb302@39
|
341 \begin_inset Text
|
jb302@39
|
342
|
jb302@39
|
343 \begin_layout Plain Layout
|
jb302@39
|
344 get_reg
|
jb302@39
|
345 \end_layout
|
jb302@39
|
346
|
jb302@39
|
347 \end_inset
|
jb302@39
|
348 </cell>
|
jb302@39
|
349 <cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
|
jb302@39
|
350 \begin_inset Text
|
jb302@39
|
351
|
jb302@39
|
352 \begin_layout Plain Layout
|
jb302@39
|
353 register address
|
jb302@39
|
354 \end_layout
|
jb302@39
|
355
|
jb302@39
|
356 \end_inset
|
jb302@39
|
357 </cell>
|
jb302@39
|
358 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
|
jb302@39
|
359 \begin_inset Text
|
jb302@39
|
360
|
jb302@39
|
361 \begin_layout Plain Layout
|
jb302@39
|
362 Get the value of a register
|
jb302@39
|
363 \end_layout
|
jb302@39
|
364
|
jb302@39
|
365 \end_inset
|
jb302@39
|
366 </cell>
|
jb302@39
|
367 </row>
|
jb302@39
|
368 <row>
|
jb302@39
|
369 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
|
jb302@39
|
370 \begin_inset Text
|
jb302@39
|
371
|
jb302@39
|
372 \begin_layout Plain Layout
|
jb302@39
|
373 set_flag
|
jb302@39
|
374 \end_layout
|
jb302@39
|
375
|
jb302@39
|
376 \end_inset
|
jb302@39
|
377 </cell>
|
jb302@39
|
378 <cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
|
jb302@39
|
379 \begin_inset Text
|
jb302@39
|
380
|
jb302@39
|
381 \begin_layout Plain Layout
|
jb302@39
|
382 flag bit, 0 or 1
|
jb302@39
|
383 \end_layout
|
jb302@39
|
384
|
jb302@39
|
385 \end_inset
|
jb302@39
|
386 </cell>
|
jb302@39
|
387 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
|
jb302@39
|
388 \begin_inset Text
|
jb302@39
|
389
|
jb302@39
|
390 \begin_layout Plain Layout
|
jb302@39
|
391 Turn a flag bit on or off.
|
jb302@39
|
392 LSB = 0, MSB =7
|
jb302@39
|
393 \end_layout
|
jb302@39
|
394
|
jb302@39
|
395 \end_inset
|
jb302@39
|
396 </cell>
|
jb302@39
|
397 </row>
|
jb302@39
|
398 <row>
|
jb302@39
|
399 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
|
jb302@39
|
400 \begin_inset Text
|
jb302@39
|
401
|
jb302@39
|
402 \begin_layout Plain Layout
|
jb302@39
|
403 get_flag
|
jb302@39
|
404 \end_layout
|
jb302@39
|
405
|
jb302@39
|
406 \end_inset
|
jb302@39
|
407 </cell>
|
jb302@39
|
408 <cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
|
jb302@39
|
409 \begin_inset Text
|
jb302@39
|
410
|
jb302@39
|
411 \begin_layout Plain Layout
|
jb302@39
|
412 flag bit
|
jb302@39
|
413 \end_layout
|
jb302@39
|
414
|
jb302@39
|
415 \end_inset
|
jb302@39
|
416 </cell>
|
jb302@39
|
417 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
|
jb302@39
|
418 \begin_inset Text
|
jb302@39
|
419
|
jb302@39
|
420 \begin_layout Plain Layout
|
jb302@39
|
421 Get the value of a flag bit
|
jb302@39
|
422 \end_layout
|
jb302@39
|
423
|
jb302@39
|
424 \end_inset
|
jb302@39
|
425 </cell>
|
jb302@39
|
426 </row>
|
jb302@39
|
427 <row>
|
jb302@39
|
428 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
|
jb302@39
|
429 \begin_inset Text
|
jb302@39
|
430
|
jb302@39
|
431 \begin_layout Plain Layout
|
jb302@39
|
432 set_block
|
jb302@39
|
433 \end_layout
|
jb302@39
|
434
|
jb302@39
|
435 \end_inset
|
jb302@39
|
436 </cell>
|
jb302@39
|
437 <cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
|
jb302@39
|
438 \begin_inset Text
|
jb302@39
|
439
|
jb302@39
|
440 \begin_layout Plain Layout
|
jb302@39
|
441 address high, address low, length high, length low, [byte array]
|
jb302@39
|
442 \end_layout
|
jb302@39
|
443
|
jb302@39
|
444 \end_inset
|
jb302@39
|
445 </cell>
|
jb302@39
|
446 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
|
jb302@39
|
447 \begin_inset Text
|
jb302@39
|
448
|
jb302@39
|
449 \begin_layout Plain Layout
|
jb302@39
|
450 Set a block of memory of arbitrary length with the bytes in the byte array
|
jb302@39
|
451 \end_layout
|
jb302@39
|
452
|
jb302@39
|
453 \end_inset
|
jb302@39
|
454 </cell>
|
jb302@39
|
455 </row>
|
jb302@39
|
456 <row>
|
jb302@39
|
457 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
|
jb302@39
|
458 \begin_inset Text
|
jb302@39
|
459
|
jb302@39
|
460 \begin_layout Plain Layout
|
jb302@39
|
461 get_block
|
jb302@39
|
462 \end_layout
|
jb302@39
|
463
|
jb302@39
|
464 \end_inset
|
jb302@39
|
465 </cell>
|
jb302@39
|
466 <cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
|
jb302@39
|
467 \begin_inset Text
|
jb302@39
|
468
|
jb302@39
|
469 \begin_layout Plain Layout
|
jb302@39
|
470 address high, address low, length high, length low
|
jb302@39
|
471 \end_layout
|
jb302@39
|
472
|
jb302@39
|
473 \end_inset
|
jb302@39
|
474 </cell>
|
jb302@39
|
475 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
|
jb302@39
|
476 \begin_inset Text
|
jb302@39
|
477
|
jb302@39
|
478 \begin_layout Plain Layout
|
jb302@39
|
479 Read a block of memory of arbitrary length
|
jb302@39
|
480 \end_layout
|
jb302@39
|
481
|
jb302@39
|
482 \end_inset
|
jb302@39
|
483 </cell>
|
jb302@39
|
484 </row>
|
jb302@39
|
485 <row>
|
jb302@39
|
486 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
|
jb302@39
|
487 \begin_inset Text
|
jb302@39
|
488
|
jb302@39
|
489 \begin_layout Plain Layout
|
jb302@39
|
490 get_a
|
jb302@39
|
491 \end_layout
|
jb302@39
|
492
|
jb302@39
|
493 \end_inset
|
jb302@39
|
494 </cell>
|
jb302@39
|
495 <cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
|
jb302@39
|
496 \begin_inset Text
|
jb302@39
|
497
|
jb302@39
|
498 \begin_layout Plain Layout
|
jb302@39
|
499 -
|
jb302@39
|
500 \end_layout
|
jb302@39
|
501
|
jb302@39
|
502 \end_inset
|
jb302@39
|
503 </cell>
|
jb302@39
|
504 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
|
jb302@39
|
505 \begin_inset Text
|
jb302@39
|
506
|
jb302@39
|
507 \begin_layout Plain Layout
|
jb302@39
|
508 Get value of A
|
jb302@39
|
509 \end_layout
|
jb302@39
|
510
|
jb302@39
|
511 \end_inset
|
jb302@39
|
512 </cell>
|
jb302@39
|
513 </row>
|
jb302@39
|
514 <row>
|
jb302@39
|
515 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
|
jb302@39
|
516 \begin_inset Text
|
jb302@39
|
517
|
jb302@39
|
518 \begin_layout Plain Layout
|
jb302@39
|
519 get_flags
|
jb302@39
|
520 \end_layout
|
jb302@39
|
521
|
jb302@39
|
522 \end_inset
|
jb302@39
|
523 </cell>
|
jb302@39
|
524 <cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
|
jb302@39
|
525 \begin_inset Text
|
jb302@39
|
526
|
jb302@39
|
527 \begin_layout Plain Layout
|
jb302@39
|
528 -
|
jb302@39
|
529 \end_layout
|
jb302@39
|
530
|
jb302@39
|
531 \end_inset
|
jb302@39
|
532 </cell>
|
jb302@39
|
533 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
|
jb302@39
|
534 \begin_inset Text
|
jb302@39
|
535
|
jb302@39
|
536 \begin_layout Plain Layout
|
jb302@39
|
537 Get value of flags
|
jb302@39
|
538 \end_layout
|
jb302@39
|
539
|
jb302@39
|
540 \end_inset
|
jb302@39
|
541 </cell>
|
jb302@39
|
542 </row>
|
jb302@39
|
543 <row>
|
jb302@39
|
544 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
|
jb302@39
|
545 \begin_inset Text
|
jb302@39
|
546
|
jb302@39
|
547 \begin_layout Plain Layout
|
jb302@39
|
548 get_ir
|
jb302@39
|
549 \end_layout
|
jb302@39
|
550
|
jb302@39
|
551 \end_inset
|
jb302@39
|
552 </cell>
|
jb302@39
|
553 <cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
|
jb302@39
|
554 \begin_inset Text
|
jb302@39
|
555
|
jb302@39
|
556 \begin_layout Plain Layout
|
jb302@39
|
557 -
|
jb302@39
|
558 \end_layout
|
jb302@39
|
559
|
jb302@39
|
560 \end_inset
|
jb302@39
|
561 </cell>
|
jb302@39
|
562 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
|
jb302@39
|
563 \begin_inset Text
|
jb302@39
|
564
|
jb302@39
|
565 \begin_layout Plain Layout
|
jb302@39
|
566 Get Value of IR
|
jb302@39
|
567 \end_layout
|
jb302@39
|
568
|
jb302@39
|
569 \end_inset
|
jb302@39
|
570 </cell>
|
jb302@39
|
571 </row>
|
jb302@39
|
572 <row>
|
jb302@39
|
573 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
|
jb302@39
|
574 \begin_inset Text
|
jb302@39
|
575
|
jb302@39
|
576 \begin_layout Plain Layout
|
jb302@39
|
577 run_len
|
jb302@39
|
578 \end_layout
|
jb302@39
|
579
|
jb302@39
|
580 \end_inset
|
jb302@39
|
581 </cell>
|
jb302@39
|
582 <cell multirow="3" alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
|
jb302@39
|
583 \begin_inset Text
|
jb302@39
|
584
|
jb302@39
|
585 \begin_layout Plain Layout
|
jb302@39
|
586 length high, length low
|
jb302@39
|
587 \end_layout
|
jb302@39
|
588
|
jb302@39
|
589 \end_inset
|
jb302@39
|
590 </cell>
|
jb302@39
|
591 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
|
jb302@39
|
592 \begin_inset Text
|
jb302@39
|
593
|
jb302@39
|
594 \begin_layout Plain Layout
|
jb302@39
|
595 Run for length number of instruction
|
jb302@39
|
596 \end_layout
|
jb302@39
|
597
|
jb302@39
|
598 \end_inset
|
jb302@39
|
599 </cell>
|
jb302@39
|
600 </row>
|
jb302@39
|
601 <row>
|
jb302@39
|
602 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
|
jb302@39
|
603 \begin_inset Text
|
jb302@39
|
604
|
jb302@39
|
605 \begin_layout Plain Layout
|
jb302@39
|
606 free_run
|
jb302@39
|
607 \end_layout
|
jb302@39
|
608
|
jb302@39
|
609 \end_inset
|
jb302@39
|
610 </cell>
|
jb302@39
|
611 <cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
|
jb302@39
|
612 \begin_inset Text
|
jb302@39
|
613
|
jb302@39
|
614 \begin_layout Plain Layout
|
jb302@39
|
615 -
|
jb302@39
|
616 \end_layout
|
jb302@39
|
617
|
jb302@39
|
618 \end_inset
|
jb302@39
|
619 </cell>
|
jb302@39
|
620 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
|
jb302@39
|
621 \begin_inset Text
|
jb302@39
|
622
|
jb302@39
|
623 \begin_layout Plain Layout
|
jb302@39
|
624 Run forever - Bypass controller
|
jb302@39
|
625 \end_layout
|
jb302@39
|
626
|
jb302@39
|
627 \end_inset
|
jb302@39
|
628 </cell>
|
jb302@39
|
629 </row>
|
jb302@39
|
630 <row>
|
jb302@39
|
631 <cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
|
jb302@39
|
632 \begin_inset Text
|
jb302@39
|
633
|
jb302@39
|
634 \begin_layout Plain Layout
|
jb302@39
|
635 set_bp
|
jb302@39
|
636 \end_layout
|
jb302@39
|
637
|
jb302@39
|
638 \end_inset
|
jb302@39
|
639 </cell>
|
jb302@39
|
640 <cell alignment="left" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
|
jb302@39
|
641 \begin_inset Text
|
jb302@39
|
642
|
jb302@39
|
643 \begin_layout Plain Layout
|
jb302@39
|
644 break point index, address high, address low
|
jb302@39
|
645 \end_layout
|
jb302@39
|
646
|
jb302@39
|
647 \end_inset
|
jb302@39
|
648 </cell>
|
jb302@39
|
649 <cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
|
jb302@39
|
650 \begin_inset Text
|
jb302@39
|
651
|
jb302@39
|
652 \begin_layout Plain Layout
|
jb302@39
|
653 Set 1 of 8 possible break points
|
jb302@39
|
654 \end_layout
|
jb302@39
|
655
|
jb302@39
|
656 \end_inset
|
jb302@39
|
657 </cell>
|
jb302@39
|
658 </row>
|
jb302@39
|
659 </lyxtabular>
|
jb302@39
|
660
|
jb302@39
|
661 \end_inset
|
jb302@39
|
662
|
jb302@39
|
663
|
jb302@39
|
664 \end_layout
|
jb302@39
|
665
|
jb302@39
|
666 \begin_layout Standard
|
jb302@40
|
667 The class also has the attribute 'Emu' which can be set to point the debugger
|
jb302@40
|
668 at either an emulator process or a serial port.
|
jb302@39
|
669 \end_layout
|
jb302@39
|
670
|
jb302@39
|
671 \begin_layout Standard
|
jb302@39
|
672 \begin_inset Newpage pagebreak
|
jb302@39
|
673 \end_inset
|
jb302@39
|
674
|
jb302@39
|
675
|
jb302@39
|
676 \end_layout
|
jb302@39
|
677
|
jb302@39
|
678 \begin_layout Standard
|
jb302@39
|
679 The rcv function needs to check that the emulator's output buffer is the
|
jb302@39
|
680 correct length before returning the data to the user.
|
jb302@39
|
681 Below is a pseudo-code representation of how this is achieved.
|
jb302@39
|
682 \end_layout
|
jb302@39
|
683
|
jb302@39
|
684 \begin_layout Standard
|
jb302@39
|
685 \begin_inset listings
|
jb302@39
|
686 lstparams "basicstyle={\ttfamily},captionpos=b,frame=tb,framexbottommargin=1em,framextopmargin=1em,keywordstyle={\color{blue}},tabsize=4"
|
jb302@39
|
687 inline false
|
jb302@39
|
688 status open
|
jb302@39
|
689
|
jb302@39
|
690 \begin_layout Plain Layout
|
jb302@39
|
691
|
jb302@39
|
692 rcv ( length ):
|
jb302@39
|
693 \end_layout
|
jb302@39
|
694
|
jb302@39
|
695 \begin_layout Plain Layout
|
jb302@39
|
696
|
jb302@39
|
697 while output buffer size != length:
|
jb302@39
|
698 \end_layout
|
jb302@39
|
699
|
jb302@39
|
700 \begin_layout Plain Layout
|
jb302@39
|
701
|
jb302@39
|
702 wait
|
jb302@39
|
703 \end_layout
|
jb302@39
|
704
|
jb302@39
|
705 \begin_layout Plain Layout
|
jb302@39
|
706
|
jb302@39
|
707 return output buffer
|
jb302@39
|
708 \end_layout
|
jb302@39
|
709
|
jb302@39
|
710 \end_inset
|
jb302@39
|
711
|
jb302@39
|
712
|
jb302@39
|
713 \end_layout
|
jb302@39
|
714
|
jb302@39
|
715 \begin_layout Subsection
|
jb302@39
|
716 cli.py
|
jb302@39
|
717 \end_layout
|
jb302@39
|
718
|
jb302@40
|
719 \begin_layout Standard
|
jb302@40
|
720 This file offers the user a text based interface to the debug class.
|
jb302@40
|
721 It implements the following commands:
|
jb302@40
|
722 \end_layout
|
jb302@40
|
723
|
jb302@40
|
724 \begin_layout Standard
|
jb302@40
|
725 \begin_inset ERT
|
jb302@40
|
726 status open
|
jb302@40
|
727
|
jb302@40
|
728 \begin_layout Plain Layout
|
jb302@40
|
729
|
jb302@40
|
730
|
jb302@40
|
731 \backslash
|
jb302@40
|
732 bigskip
|
jb302@40
|
733 \end_layout
|
jb302@40
|
734
|
jb302@40
|
735 \end_inset
|
jb302@40
|
736
|
jb302@40
|
737
|
jb302@40
|
738 \end_layout
|
jb302@40
|
739
|
jb302@40
|
740 \begin_layout Standard
|
jb302@40
|
741 \begin_inset Tabular
|
jb302@40
|
742 <lyxtabular version="3" rows="16" columns="2">
|
jb302@40
|
743 <features tabularvalignment="middle">
|
jb302@40
|
744 <column alignment="center" valignment="top" width="0">
|
jb302@40
|
745 <column alignment="left" valignment="top" width="2cm">
|
jb302@40
|
746 <row>
|
jb302@40
|
747 <cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
|
jb302@40
|
748 \begin_inset Text
|
jb302@40
|
749
|
jb302@40
|
750 \begin_layout Plain Layout
|
jb302@40
|
751 Command
|
jb302@40
|
752 \end_layout
|
jb302@40
|
753
|
jb302@40
|
754 \end_inset
|
jb302@40
|
755 </cell>
|
jb302@40
|
756 <cell multicolumn="1" alignment="left" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
|
jb302@40
|
757 \begin_inset Text
|
jb302@40
|
758
|
jb302@40
|
759 \begin_layout Plain Layout
|
jb302@40
|
760 Function
|
jb302@40
|
761 \end_layout
|
jb302@40
|
762
|
jb302@40
|
763 \end_inset
|
jb302@40
|
764 </cell>
|
jb302@40
|
765 </row>
|
jb302@40
|
766 <row>
|
jb302@40
|
767 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
|
jb302@40
|
768 \begin_inset Text
|
jb302@40
|
769
|
jb302@40
|
770 \begin_layout Plain Layout
|
jb302@40
|
771 step
|
jb302@40
|
772 \end_layout
|
jb302@40
|
773
|
jb302@40
|
774 \end_inset
|
jb302@40
|
775 </cell>
|
jb302@40
|
776 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
|
jb302@40
|
777 \begin_inset Text
|
jb302@40
|
778
|
jb302@40
|
779 \begin_layout Plain Layout
|
jb302@40
|
780 step
|
jb302@40
|
781 \end_layout
|
jb302@40
|
782
|
jb302@40
|
783 \end_inset
|
jb302@40
|
784 </cell>
|
jb302@40
|
785 </row>
|
jb302@40
|
786 <row>
|
jb302@40
|
787 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
|
jb302@40
|
788 \begin_inset Text
|
jb302@40
|
789
|
jb302@40
|
790 \begin_layout Plain Layout
|
jb302@40
|
791 run
|
jb302@40
|
792 \end_layout
|
jb302@40
|
793
|
jb302@40
|
794 \end_inset
|
jb302@40
|
795 </cell>
|
jb302@40
|
796 <cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
|
jb302@40
|
797 \begin_inset Text
|
jb302@40
|
798
|
jb302@40
|
799 \begin_layout Plain Layout
|
jb302@40
|
800 run
|
jb302@40
|
801 \end_layout
|
jb302@40
|
802
|
jb302@40
|
803 \end_inset
|
jb302@40
|
804 </cell>
|
jb302@40
|
805 </row>
|
jb302@40
|
806 <row>
|
jb302@40
|
807 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
|
jb302@40
|
808 \begin_inset Text
|
jb302@40
|
809
|
jb302@40
|
810 \begin_layout Plain Layout
|
jb302@40
|
811 sr
|
jb302@40
|
812 \end_layout
|
jb302@40
|
813
|
jb302@40
|
814 \end_inset
|
jb302@40
|
815 </cell>
|
jb302@40
|
816 <cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
|
jb302@40
|
817 \begin_inset Text
|
jb302@40
|
818
|
jb302@40
|
819 \begin_layout Plain Layout
|
jb302@40
|
820 set_reg
|
jb302@40
|
821 \end_layout
|
jb302@40
|
822
|
jb302@40
|
823 \end_inset
|
jb302@40
|
824 </cell>
|
jb302@40
|
825 </row>
|
jb302@40
|
826 <row>
|
jb302@40
|
827 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
|
jb302@40
|
828 \begin_inset Text
|
jb302@40
|
829
|
jb302@40
|
830 \begin_layout Plain Layout
|
jb302@40
|
831 gr
|
jb302@40
|
832 \end_layout
|
jb302@40
|
833
|
jb302@40
|
834 \end_inset
|
jb302@40
|
835 </cell>
|
jb302@40
|
836 <cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
|
jb302@40
|
837 \begin_inset Text
|
jb302@40
|
838
|
jb302@40
|
839 \begin_layout Plain Layout
|
jb302@40
|
840 get_reg
|
jb302@40
|
841 \end_layout
|
jb302@40
|
842
|
jb302@40
|
843 \end_inset
|
jb302@40
|
844 </cell>
|
jb302@40
|
845 </row>
|
jb302@40
|
846 <row>
|
jb302@40
|
847 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
|
jb302@40
|
848 \begin_inset Text
|
jb302@40
|
849
|
jb302@40
|
850 \begin_layout Plain Layout
|
jb302@40
|
851 sf
|
jb302@40
|
852 \end_layout
|
jb302@40
|
853
|
jb302@40
|
854 \end_inset
|
jb302@40
|
855 </cell>
|
jb302@40
|
856 <cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
|
jb302@40
|
857 \begin_inset Text
|
jb302@40
|
858
|
jb302@40
|
859 \begin_layout Plain Layout
|
jb302@40
|
860 set_flag
|
jb302@40
|
861 \end_layout
|
jb302@40
|
862
|
jb302@40
|
863 \end_inset
|
jb302@40
|
864 </cell>
|
jb302@40
|
865 </row>
|
jb302@40
|
866 <row>
|
jb302@40
|
867 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
|
jb302@40
|
868 \begin_inset Text
|
jb302@40
|
869
|
jb302@40
|
870 \begin_layout Plain Layout
|
jb302@40
|
871 gr
|
jb302@40
|
872 \end_layout
|
jb302@40
|
873
|
jb302@40
|
874 \end_inset
|
jb302@40
|
875 </cell>
|
jb302@40
|
876 <cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
|
jb302@40
|
877 \begin_inset Text
|
jb302@40
|
878
|
jb302@40
|
879 \begin_layout Plain Layout
|
jb302@40
|
880 get_flag
|
jb302@40
|
881 \end_layout
|
jb302@40
|
882
|
jb302@40
|
883 \end_inset
|
jb302@40
|
884 </cell>
|
jb302@40
|
885 </row>
|
jb302@40
|
886 <row>
|
jb302@40
|
887 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
|
jb302@40
|
888 \begin_inset Text
|
jb302@40
|
889
|
jb302@40
|
890 \begin_layout Plain Layout
|
jb302@40
|
891 sb
|
jb302@40
|
892 \end_layout
|
jb302@40
|
893
|
jb302@40
|
894 \end_inset
|
jb302@40
|
895 </cell>
|
jb302@40
|
896 <cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
|
jb302@40
|
897 \begin_inset Text
|
jb302@40
|
898
|
jb302@40
|
899 \begin_layout Plain Layout
|
jb302@40
|
900 set_block
|
jb302@40
|
901 \end_layout
|
jb302@40
|
902
|
jb302@40
|
903 \end_inset
|
jb302@40
|
904 </cell>
|
jb302@40
|
905 </row>
|
jb302@40
|
906 <row>
|
jb302@40
|
907 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
|
jb302@40
|
908 \begin_inset Text
|
jb302@40
|
909
|
jb302@40
|
910 \begin_layout Plain Layout
|
jb302@40
|
911 gb
|
jb302@40
|
912 \end_layout
|
jb302@40
|
913
|
jb302@40
|
914 \end_inset
|
jb302@40
|
915 </cell>
|
jb302@40
|
916 <cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
|
jb302@40
|
917 \begin_inset Text
|
jb302@40
|
918
|
jb302@40
|
919 \begin_layout Plain Layout
|
jb302@40
|
920 get_block
|
jb302@40
|
921 \end_layout
|
jb302@40
|
922
|
jb302@40
|
923 \end_inset
|
jb302@40
|
924 </cell>
|
jb302@40
|
925 </row>
|
jb302@40
|
926 <row>
|
jb302@40
|
927 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
|
jb302@40
|
928 \begin_inset Text
|
jb302@40
|
929
|
jb302@40
|
930 \begin_layout Plain Layout
|
jb302@40
|
931 ga
|
jb302@40
|
932 \end_layout
|
jb302@40
|
933
|
jb302@40
|
934 \end_inset
|
jb302@40
|
935 </cell>
|
jb302@40
|
936 <cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
|
jb302@40
|
937 \begin_inset Text
|
jb302@40
|
938
|
jb302@40
|
939 \begin_layout Plain Layout
|
jb302@40
|
940 get_a
|
jb302@40
|
941 \end_layout
|
jb302@40
|
942
|
jb302@40
|
943 \end_inset
|
jb302@40
|
944 </cell>
|
jb302@40
|
945 </row>
|
jb302@40
|
946 <row>
|
jb302@40
|
947 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
|
jb302@40
|
948 \begin_inset Text
|
jb302@40
|
949
|
jb302@40
|
950 \begin_layout Plain Layout
|
jb302@40
|
951 gf
|
jb302@40
|
952 \end_layout
|
jb302@40
|
953
|
jb302@40
|
954 \end_inset
|
jb302@40
|
955 </cell>
|
jb302@40
|
956 <cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
|
jb302@40
|
957 \begin_inset Text
|
jb302@40
|
958
|
jb302@40
|
959 \begin_layout Plain Layout
|
jb302@40
|
960 get_flags
|
jb302@40
|
961 \end_layout
|
jb302@40
|
962
|
jb302@40
|
963 \end_inset
|
jb302@40
|
964 </cell>
|
jb302@40
|
965 </row>
|
jb302@40
|
966 <row>
|
jb302@40
|
967 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
|
jb302@40
|
968 \begin_inset Text
|
jb302@40
|
969
|
jb302@40
|
970 \begin_layout Plain Layout
|
jb302@40
|
971 gir
|
jb302@40
|
972 \end_layout
|
jb302@40
|
973
|
jb302@40
|
974 \end_inset
|
jb302@40
|
975 </cell>
|
jb302@40
|
976 <cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
|
jb302@40
|
977 \begin_inset Text
|
jb302@40
|
978
|
jb302@40
|
979 \begin_layout Plain Layout
|
jb302@40
|
980 get_ir
|
jb302@40
|
981 \end_layout
|
jb302@40
|
982
|
jb302@40
|
983 \end_inset
|
jb302@40
|
984 </cell>
|
jb302@40
|
985 </row>
|
jb302@40
|
986 <row>
|
jb302@40
|
987 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
|
jb302@40
|
988 \begin_inset Text
|
jb302@40
|
989
|
jb302@40
|
990 \begin_layout Plain Layout
|
jb302@40
|
991 runl
|
jb302@40
|
992 \end_layout
|
jb302@40
|
993
|
jb302@40
|
994 \end_inset
|
jb302@40
|
995 </cell>
|
jb302@40
|
996 <cell multirow="3" alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
|
jb302@40
|
997 \begin_inset Text
|
jb302@40
|
998
|
jb302@40
|
999 \begin_layout Plain Layout
|
jb302@40
|
1000 run_length
|
jb302@40
|
1001 \end_layout
|
jb302@40
|
1002
|
jb302@40
|
1003 \end_inset
|
jb302@40
|
1004 </cell>
|
jb302@40
|
1005 </row>
|
jb302@40
|
1006 <row>
|
jb302@40
|
1007 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
|
jb302@40
|
1008 \begin_inset Text
|
jb302@40
|
1009
|
jb302@40
|
1010 \begin_layout Plain Layout
|
jb302@40
|
1011 frun
|
jb302@40
|
1012 \end_layout
|
jb302@40
|
1013
|
jb302@40
|
1014 \end_inset
|
jb302@40
|
1015 </cell>
|
jb302@40
|
1016 <cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
|
jb302@40
|
1017 \begin_inset Text
|
jb302@40
|
1018
|
jb302@40
|
1019 \begin_layout Plain Layout
|
jb302@40
|
1020 free_run
|
jb302@40
|
1021 \end_layout
|
jb302@40
|
1022
|
jb302@40
|
1023 \end_inset
|
jb302@40
|
1024 </cell>
|
jb302@40
|
1025 </row>
|
jb302@40
|
1026 <row>
|
jb302@40
|
1027 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
|
jb302@40
|
1028 \begin_inset Text
|
jb302@40
|
1029
|
jb302@40
|
1030 \begin_layout Plain Layout
|
jb302@40
|
1031 sbp
|
jb302@40
|
1032 \end_layout
|
jb302@40
|
1033
|
jb302@40
|
1034 \end_inset
|
jb302@40
|
1035 </cell>
|
jb302@40
|
1036 <cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
|
jb302@40
|
1037 \begin_inset Text
|
jb302@40
|
1038
|
jb302@40
|
1039 \begin_layout Plain Layout
|
jb302@40
|
1040 set_bp
|
jb302@40
|
1041 \end_layout
|
jb302@40
|
1042
|
jb302@40
|
1043 \end_inset
|
jb302@40
|
1044 </cell>
|
jb302@40
|
1045 </row>
|
jb302@40
|
1046 <row>
|
jb302@40
|
1047 <cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
|
jb302@40
|
1048 \begin_inset Text
|
jb302@40
|
1049
|
jb302@40
|
1050 \begin_layout Plain Layout
|
jb302@40
|
1051 exc
|
jb302@40
|
1052 \end_layout
|
jb302@40
|
1053
|
jb302@40
|
1054 \end_inset
|
jb302@40
|
1055 </cell>
|
jb302@40
|
1056 <cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
|
jb302@40
|
1057 \begin_inset Text
|
jb302@40
|
1058
|
jb302@40
|
1059 \begin_layout Plain Layout
|
jb302@40
|
1060 exc
|
jb302@40
|
1061 \end_layout
|
jb302@40
|
1062
|
jb302@40
|
1063 \end_inset
|
jb302@40
|
1064 </cell>
|
jb302@40
|
1065 </row>
|
jb302@40
|
1066 </lyxtabular>
|
jb302@40
|
1067
|
jb302@40
|
1068 \end_inset
|
jb302@40
|
1069
|
jb302@40
|
1070
|
jb302@40
|
1071 \end_layout
|
jb302@40
|
1072
|
jb302@40
|
1073 \begin_layout Standard
|
jb302@40
|
1074 \begin_inset ERT
|
jb302@40
|
1075 status open
|
jb302@40
|
1076
|
jb302@40
|
1077 \begin_layout Plain Layout
|
jb302@40
|
1078
|
jb302@40
|
1079
|
jb302@40
|
1080 \backslash
|
jb302@40
|
1081 bigskip
|
jb302@40
|
1082 \end_layout
|
jb302@40
|
1083
|
jb302@40
|
1084 \end_inset
|
jb302@40
|
1085
|
jb302@40
|
1086
|
jb302@40
|
1087 \end_layout
|
jb302@40
|
1088
|
jb302@40
|
1089 \begin_layout Standard
|
jb302@40
|
1090 Commands are issued at a terminal followed by any arguments separated by
|
jb302@40
|
1091 a space.
|
jb302@40
|
1092 The exc function enables the interpreter mode described in the EDE Use
|
jb302@40
|
1093 Cases section above.
|
jb302@40
|
1094 \end_layout
|
jb302@40
|
1095
|
jb302@40
|
1096 \begin_layout Standard
|
jb302@40
|
1097 \begin_inset Newpage pagebreak
|
jb302@40
|
1098 \end_inset
|
jb302@40
|
1099
|
jb302@40
|
1100
|
jb302@40
|
1101 \end_layout
|
jb302@40
|
1102
|
jb302@40
|
1103 \begin_layout Standard
|
jb302@40
|
1104 Symbols are defined which map parts of the emulators memory to the encoding
|
jb302@40
|
1105 used in the control functions.
|
jb302@41
|
1106 Tables are provided below.
|
jb302@40
|
1107 \end_layout
|
jb302@40
|
1108
|
jb302@40
|
1109 \begin_layout Standard
|
jb302@40
|
1110 \begin_inset ERT
|
jb302@40
|
1111 status open
|
jb302@40
|
1112
|
jb302@40
|
1113 \begin_layout Plain Layout
|
jb302@40
|
1114
|
jb302@40
|
1115
|
jb302@40
|
1116 \backslash
|
jb302@40
|
1117 bigskip
|
jb302@40
|
1118 \end_layout
|
jb302@40
|
1119
|
jb302@40
|
1120 \end_inset
|
jb302@40
|
1121
|
jb302@40
|
1122
|
jb302@40
|
1123 \end_layout
|
jb302@40
|
1124
|
jb302@40
|
1125 \begin_layout Standard
|
jb302@40
|
1126 \begin_inset Tabular
|
jb302@40
|
1127 <lyxtabular version="3" rows="17" columns="2">
|
jb302@40
|
1128 <features tabularvalignment="middle">
|
jb302@40
|
1129 <column alignment="center" valignment="top" width="0">
|
jb302@40
|
1130 <column alignment="center" valignment="top" width="0">
|
jb302@40
|
1131 <row>
|
jb302@40
|
1132 <cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
|
jb302@40
|
1133 \begin_inset Text
|
jb302@40
|
1134
|
jb302@40
|
1135 \begin_layout Plain Layout
|
jb302@40
|
1136 Register
|
jb302@40
|
1137 \end_layout
|
jb302@40
|
1138
|
jb302@40
|
1139 \end_inset
|
jb302@40
|
1140 </cell>
|
jb302@40
|
1141 <cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
|
jb302@40
|
1142 \begin_inset Text
|
jb302@40
|
1143
|
jb302@40
|
1144 \begin_layout Plain Layout
|
jb302@40
|
1145 Encoding
|
jb302@40
|
1146 \end_layout
|
jb302@40
|
1147
|
jb302@40
|
1148 \end_inset
|
jb302@40
|
1149 </cell>
|
jb302@40
|
1150 </row>
|
jb302@40
|
1151 <row>
|
jb302@40
|
1152 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
|
jb302@40
|
1153 \begin_inset Text
|
jb302@40
|
1154
|
jb302@40
|
1155 \begin_layout Plain Layout
|
jb302@40
|
1156 R0_0
|
jb302@40
|
1157 \end_layout
|
jb302@40
|
1158
|
jb302@40
|
1159 \end_inset
|
jb302@40
|
1160 </cell>
|
jb302@40
|
1161 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
|
jb302@40
|
1162 \begin_inset Text
|
jb302@40
|
1163
|
jb302@40
|
1164 \begin_layout Plain Layout
|
jb302@40
|
1165 0
|
jb302@40
|
1166 \end_layout
|
jb302@40
|
1167
|
jb302@40
|
1168 \end_inset
|
jb302@40
|
1169 </cell>
|
jb302@40
|
1170 </row>
|
jb302@40
|
1171 <row>
|
jb302@40
|
1172 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
|
jb302@40
|
1173 \begin_inset Text
|
jb302@40
|
1174
|
jb302@40
|
1175 \begin_layout Plain Layout
|
jb302@40
|
1176 R1_0
|
jb302@40
|
1177 \end_layout
|
jb302@40
|
1178
|
jb302@40
|
1179 \end_inset
|
jb302@40
|
1180 </cell>
|
jb302@40
|
1181 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
|
jb302@40
|
1182 \begin_inset Text
|
jb302@40
|
1183
|
jb302@40
|
1184 \begin_layout Plain Layout
|
jb302@40
|
1185 1
|
jb302@40
|
1186 \end_layout
|
jb302@40
|
1187
|
jb302@40
|
1188 \end_inset
|
jb302@40
|
1189 </cell>
|
jb302@40
|
1190 </row>
|
jb302@40
|
1191 <row>
|
jb302@40
|
1192 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
|
jb302@40
|
1193 \begin_inset Text
|
jb302@40
|
1194
|
jb302@40
|
1195 \begin_layout Plain Layout
|
jb302@40
|
1196 R2_0
|
jb302@40
|
1197 \end_layout
|
jb302@40
|
1198
|
jb302@40
|
1199 \end_inset
|
jb302@40
|
1200 </cell>
|
jb302@40
|
1201 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
|
jb302@40
|
1202 \begin_inset Text
|
jb302@40
|
1203
|
jb302@40
|
1204 \begin_layout Plain Layout
|
jb302@40
|
1205 2
|
jb302@40
|
1206 \end_layout
|
jb302@40
|
1207
|
jb302@40
|
1208 \end_inset
|
jb302@40
|
1209 </cell>
|
jb302@40
|
1210 </row>
|
jb302@40
|
1211 <row>
|
jb302@40
|
1212 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
|
jb302@40
|
1213 \begin_inset Text
|
jb302@40
|
1214
|
jb302@40
|
1215 \begin_layout Plain Layout
|
jb302@40
|
1216 R3_0
|
jb302@40
|
1217 \end_layout
|
jb302@40
|
1218
|
jb302@40
|
1219 \end_inset
|
jb302@40
|
1220 </cell>
|
jb302@40
|
1221 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
|
jb302@40
|
1222 \begin_inset Text
|
jb302@40
|
1223
|
jb302@40
|
1224 \begin_layout Plain Layout
|
jb302@40
|
1225 3
|
jb302@40
|
1226 \end_layout
|
jb302@40
|
1227
|
jb302@40
|
1228 \end_inset
|
jb302@40
|
1229 </cell>
|
jb302@40
|
1230 </row>
|
jb302@40
|
1231 <row>
|
jb302@40
|
1232 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
|
jb302@40
|
1233 \begin_inset Text
|
jb302@40
|
1234
|
jb302@40
|
1235 \begin_layout Plain Layout
|
jb302@40
|
1236 DPH
|
jb302@40
|
1237 \end_layout
|
jb302@40
|
1238
|
jb302@40
|
1239 \end_inset
|
jb302@40
|
1240 </cell>
|
jb302@40
|
1241 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
|
jb302@40
|
1242 \begin_inset Text
|
jb302@40
|
1243
|
jb302@40
|
1244 \begin_layout Plain Layout
|
jb302@40
|
1245 4
|
jb302@40
|
1246 \end_layout
|
jb302@40
|
1247
|
jb302@40
|
1248 \end_inset
|
jb302@40
|
1249 </cell>
|
jb302@40
|
1250 </row>
|
jb302@40
|
1251 <row>
|
jb302@40
|
1252 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
|
jb302@40
|
1253 \begin_inset Text
|
jb302@40
|
1254
|
jb302@40
|
1255 \begin_layout Plain Layout
|
jb302@40
|
1256 SPH
|
jb302@40
|
1257 \end_layout
|
jb302@40
|
1258
|
jb302@40
|
1259 \end_inset
|
jb302@40
|
1260 </cell>
|
jb302@40
|
1261 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
|
jb302@40
|
1262 \begin_inset Text
|
jb302@40
|
1263
|
jb302@40
|
1264 \begin_layout Plain Layout
|
jb302@40
|
1265 5
|
jb302@40
|
1266 \end_layout
|
jb302@40
|
1267
|
jb302@40
|
1268 \end_inset
|
jb302@40
|
1269 </cell>
|
jb302@40
|
1270 </row>
|
jb302@40
|
1271 <row>
|
jb302@40
|
1272 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
|
jb302@40
|
1273 \begin_inset Text
|
jb302@40
|
1274
|
jb302@40
|
1275 \begin_layout Plain Layout
|
jb302@40
|
1276 PCH
|
jb302@40
|
1277 \end_layout
|
jb302@40
|
1278
|
jb302@40
|
1279 \end_inset
|
jb302@40
|
1280 </cell>
|
jb302@40
|
1281 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
|
jb302@40
|
1282 \begin_inset Text
|
jb302@40
|
1283
|
jb302@40
|
1284 \begin_layout Plain Layout
|
jb302@40
|
1285 6
|
jb302@40
|
1286 \end_layout
|
jb302@40
|
1287
|
jb302@40
|
1288 \end_inset
|
jb302@40
|
1289 </cell>
|
jb302@40
|
1290 </row>
|
jb302@40
|
1291 <row>
|
jb302@40
|
1292 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
|
jb302@40
|
1293 \begin_inset Text
|
jb302@40
|
1294
|
jb302@40
|
1295 \begin_layout Plain Layout
|
jb302@40
|
1296 TMPH
|
jb302@40
|
1297 \end_layout
|
jb302@40
|
1298
|
jb302@40
|
1299 \end_inset
|
jb302@40
|
1300 </cell>
|
jb302@40
|
1301 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
|
jb302@40
|
1302 \begin_inset Text
|
jb302@40
|
1303
|
jb302@40
|
1304 \begin_layout Plain Layout
|
jb302@40
|
1305 7
|
jb302@40
|
1306 \end_layout
|
jb302@40
|
1307
|
jb302@40
|
1308 \end_inset
|
jb302@40
|
1309 </cell>
|
jb302@40
|
1310 </row>
|
jb302@40
|
1311 <row>
|
jb302@40
|
1312 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
|
jb302@40
|
1313 \begin_inset Text
|
jb302@40
|
1314
|
jb302@40
|
1315 \begin_layout Plain Layout
|
jb302@40
|
1316 R0_1
|
jb302@40
|
1317 \end_layout
|
jb302@40
|
1318
|
jb302@40
|
1319 \end_inset
|
jb302@40
|
1320 </cell>
|
jb302@40
|
1321 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
|
jb302@40
|
1322 \begin_inset Text
|
jb302@40
|
1323
|
jb302@40
|
1324 \begin_layout Plain Layout
|
jb302@40
|
1325 8
|
jb302@40
|
1326 \end_layout
|
jb302@40
|
1327
|
jb302@40
|
1328 \end_inset
|
jb302@40
|
1329 </cell>
|
jb302@40
|
1330 </row>
|
jb302@40
|
1331 <row>
|
jb302@40
|
1332 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
|
jb302@40
|
1333 \begin_inset Text
|
jb302@40
|
1334
|
jb302@40
|
1335 \begin_layout Plain Layout
|
jb302@40
|
1336 R1_1
|
jb302@40
|
1337 \end_layout
|
jb302@40
|
1338
|
jb302@40
|
1339 \end_inset
|
jb302@40
|
1340 </cell>
|
jb302@40
|
1341 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
|
jb302@40
|
1342 \begin_inset Text
|
jb302@40
|
1343
|
jb302@40
|
1344 \begin_layout Plain Layout
|
jb302@40
|
1345 9
|
jb302@40
|
1346 \end_layout
|
jb302@40
|
1347
|
jb302@40
|
1348 \end_inset
|
jb302@40
|
1349 </cell>
|
jb302@40
|
1350 </row>
|
jb302@40
|
1351 <row>
|
jb302@40
|
1352 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
|
jb302@40
|
1353 \begin_inset Text
|
jb302@40
|
1354
|
jb302@40
|
1355 \begin_layout Plain Layout
|
jb302@40
|
1356 R2_1
|
jb302@40
|
1357 \end_layout
|
jb302@40
|
1358
|
jb302@40
|
1359 \end_inset
|
jb302@40
|
1360 </cell>
|
jb302@40
|
1361 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
|
jb302@40
|
1362 \begin_inset Text
|
jb302@40
|
1363
|
jb302@40
|
1364 \begin_layout Plain Layout
|
jb302@40
|
1365 10
|
jb302@40
|
1366 \end_layout
|
jb302@40
|
1367
|
jb302@40
|
1368 \end_inset
|
jb302@40
|
1369 </cell>
|
jb302@40
|
1370 </row>
|
jb302@40
|
1371 <row>
|
jb302@40
|
1372 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
|
jb302@40
|
1373 \begin_inset Text
|
jb302@40
|
1374
|
jb302@40
|
1375 \begin_layout Plain Layout
|
jb302@40
|
1376 R3_1
|
jb302@40
|
1377 \end_layout
|
jb302@40
|
1378
|
jb302@40
|
1379 \end_inset
|
jb302@40
|
1380 </cell>
|
jb302@40
|
1381 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
|
jb302@40
|
1382 \begin_inset Text
|
jb302@40
|
1383
|
jb302@40
|
1384 \begin_layout Plain Layout
|
jb302@40
|
1385 11
|
jb302@40
|
1386 \end_layout
|
jb302@40
|
1387
|
jb302@40
|
1388 \end_inset
|
jb302@40
|
1389 </cell>
|
jb302@40
|
1390 </row>
|
jb302@40
|
1391 <row>
|
jb302@40
|
1392 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
|
jb302@40
|
1393 \begin_inset Text
|
jb302@40
|
1394
|
jb302@40
|
1395 \begin_layout Plain Layout
|
jb302@40
|
1396 DPL
|
jb302@40
|
1397 \end_layout
|
jb302@40
|
1398
|
jb302@40
|
1399 \end_inset
|
jb302@40
|
1400 </cell>
|
jb302@40
|
1401 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
|
jb302@40
|
1402 \begin_inset Text
|
jb302@40
|
1403
|
jb302@40
|
1404 \begin_layout Plain Layout
|
jb302@40
|
1405 12
|
jb302@40
|
1406 \end_layout
|
jb302@40
|
1407
|
jb302@40
|
1408 \end_inset
|
jb302@40
|
1409 </cell>
|
jb302@40
|
1410 </row>
|
jb302@40
|
1411 <row>
|
jb302@40
|
1412 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
|
jb302@40
|
1413 \begin_inset Text
|
jb302@40
|
1414
|
jb302@40
|
1415 \begin_layout Plain Layout
|
jb302@40
|
1416 SPL
|
jb302@40
|
1417 \end_layout
|
jb302@40
|
1418
|
jb302@40
|
1419 \end_inset
|
jb302@40
|
1420 </cell>
|
jb302@40
|
1421 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
|
jb302@40
|
1422 \begin_inset Text
|
jb302@40
|
1423
|
jb302@40
|
1424 \begin_layout Plain Layout
|
jb302@40
|
1425 13
|
jb302@40
|
1426 \end_layout
|
jb302@40
|
1427
|
jb302@40
|
1428 \end_inset
|
jb302@40
|
1429 </cell>
|
jb302@40
|
1430 </row>
|
jb302@40
|
1431 <row>
|
jb302@40
|
1432 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
|
jb302@40
|
1433 \begin_inset Text
|
jb302@40
|
1434
|
jb302@40
|
1435 \begin_layout Plain Layout
|
jb302@40
|
1436 PCL
|
jb302@40
|
1437 \end_layout
|
jb302@40
|
1438
|
jb302@40
|
1439 \end_inset
|
jb302@40
|
1440 </cell>
|
jb302@40
|
1441 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
|
jb302@40
|
1442 \begin_inset Text
|
jb302@40
|
1443
|
jb302@40
|
1444 \begin_layout Plain Layout
|
jb302@40
|
1445 14
|
jb302@40
|
1446 \end_layout
|
jb302@40
|
1447
|
jb302@40
|
1448 \end_inset
|
jb302@40
|
1449 </cell>
|
jb302@40
|
1450 </row>
|
jb302@40
|
1451 <row>
|
jb302@40
|
1452 <cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
|
jb302@40
|
1453 \begin_inset Text
|
jb302@40
|
1454
|
jb302@40
|
1455 \begin_layout Plain Layout
|
jb302@40
|
1456 TMPL
|
jb302@40
|
1457 \end_layout
|
jb302@40
|
1458
|
jb302@40
|
1459 \end_inset
|
jb302@40
|
1460 </cell>
|
jb302@40
|
1461 <cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
|
jb302@40
|
1462 \begin_inset Text
|
jb302@40
|
1463
|
jb302@40
|
1464 \begin_layout Plain Layout
|
jb302@40
|
1465 15
|
jb302@40
|
1466 \end_layout
|
jb302@40
|
1467
|
jb302@40
|
1468 \end_inset
|
jb302@40
|
1469 </cell>
|
jb302@40
|
1470 </row>
|
jb302@40
|
1471 </lyxtabular>
|
jb302@40
|
1472
|
jb302@40
|
1473 \end_inset
|
jb302@40
|
1474
|
jb302@40
|
1475
|
jb302@40
|
1476 \begin_inset Tabular
|
jb302@40
|
1477 <lyxtabular version="3" rows="9" columns="2">
|
jb302@40
|
1478 <features tabularvalignment="middle">
|
jb302@40
|
1479 <column alignment="center" valignment="top" width="0">
|
jb302@40
|
1480 <column alignment="center" valignment="top" width="0">
|
jb302@40
|
1481 <row>
|
jb302@40
|
1482 <cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
|
jb302@40
|
1483 \begin_inset Text
|
jb302@40
|
1484
|
jb302@40
|
1485 \begin_layout Plain Layout
|
jb302@40
|
1486 Flag
|
jb302@40
|
1487 \end_layout
|
jb302@40
|
1488
|
jb302@40
|
1489 \end_inset
|
jb302@40
|
1490 </cell>
|
jb302@40
|
1491 <cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
|
jb302@40
|
1492 \begin_inset Text
|
jb302@40
|
1493
|
jb302@40
|
1494 \begin_layout Plain Layout
|
jb302@40
|
1495 Encoding
|
jb302@40
|
1496 \end_layout
|
jb302@40
|
1497
|
jb302@40
|
1498 \end_inset
|
jb302@40
|
1499 </cell>
|
jb302@40
|
1500 </row>
|
jb302@40
|
1501 <row>
|
jb302@40
|
1502 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
|
jb302@40
|
1503 \begin_inset Text
|
jb302@40
|
1504
|
jb302@40
|
1505 \begin_layout Plain Layout
|
jb302@40
|
1506 BS
|
jb302@40
|
1507 \end_layout
|
jb302@40
|
1508
|
jb302@40
|
1509 \end_inset
|
jb302@40
|
1510 </cell>
|
jb302@40
|
1511 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
|
jb302@40
|
1512 \begin_inset Text
|
jb302@40
|
1513
|
jb302@40
|
1514 \begin_layout Plain Layout
|
jb302@40
|
1515 0
|
jb302@40
|
1516 \end_layout
|
jb302@40
|
1517
|
jb302@40
|
1518 \end_inset
|
jb302@40
|
1519 </cell>
|
jb302@40
|
1520 </row>
|
jb302@40
|
1521 <row>
|
jb302@40
|
1522 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
|
jb302@40
|
1523 \begin_inset Text
|
jb302@40
|
1524
|
jb302@40
|
1525 \begin_layout Plain Layout
|
jb302@40
|
1526 IE
|
jb302@40
|
1527 \end_layout
|
jb302@40
|
1528
|
jb302@40
|
1529 \end_inset
|
jb302@40
|
1530 </cell>
|
jb302@40
|
1531 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
|
jb302@40
|
1532 \begin_inset Text
|
jb302@40
|
1533
|
jb302@40
|
1534 \begin_layout Plain Layout
|
jb302@40
|
1535 1
|
jb302@40
|
1536 \end_layout
|
jb302@40
|
1537
|
jb302@40
|
1538 \end_inset
|
jb302@40
|
1539 </cell>
|
jb302@40
|
1540 </row>
|
jb302@40
|
1541 <row>
|
jb302@40
|
1542 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
|
jb302@40
|
1543 \begin_inset Text
|
jb302@40
|
1544
|
jb302@40
|
1545 \begin_layout Plain Layout
|
jb302@40
|
1546 OV
|
jb302@40
|
1547 \end_layout
|
jb302@40
|
1548
|
jb302@40
|
1549 \end_inset
|
jb302@40
|
1550 </cell>
|
jb302@40
|
1551 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
|
jb302@40
|
1552 \begin_inset Text
|
jb302@40
|
1553
|
jb302@40
|
1554 \begin_layout Plain Layout
|
jb302@40
|
1555 2
|
jb302@40
|
1556 \end_layout
|
jb302@40
|
1557
|
jb302@40
|
1558 \end_inset
|
jb302@40
|
1559 </cell>
|
jb302@40
|
1560 </row>
|
jb302@40
|
1561 <row>
|
jb302@40
|
1562 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
|
jb302@40
|
1563 \begin_inset Text
|
jb302@40
|
1564
|
jb302@40
|
1565 \begin_layout Plain Layout
|
jb302@40
|
1566 S
|
jb302@40
|
1567 \end_layout
|
jb302@40
|
1568
|
jb302@40
|
1569 \end_inset
|
jb302@40
|
1570 </cell>
|
jb302@40
|
1571 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
|
jb302@40
|
1572 \begin_inset Text
|
jb302@40
|
1573
|
jb302@40
|
1574 \begin_layout Plain Layout
|
jb302@40
|
1575 3
|
jb302@40
|
1576 \end_layout
|
jb302@40
|
1577
|
jb302@40
|
1578 \end_inset
|
jb302@40
|
1579 </cell>
|
jb302@40
|
1580 </row>
|
jb302@40
|
1581 <row>
|
jb302@40
|
1582 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
|
jb302@40
|
1583 \begin_inset Text
|
jb302@40
|
1584
|
jb302@40
|
1585 \begin_layout Plain Layout
|
jb302@40
|
1586 P
|
jb302@40
|
1587 \end_layout
|
jb302@40
|
1588
|
jb302@40
|
1589 \end_inset
|
jb302@40
|
1590 </cell>
|
jb302@40
|
1591 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
|
jb302@40
|
1592 \begin_inset Text
|
jb302@40
|
1593
|
jb302@40
|
1594 \begin_layout Plain Layout
|
jb302@40
|
1595 4
|
jb302@40
|
1596 \end_layout
|
jb302@40
|
1597
|
jb302@40
|
1598 \end_inset
|
jb302@40
|
1599 </cell>
|
jb302@40
|
1600 </row>
|
jb302@40
|
1601 <row>
|
jb302@40
|
1602 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
|
jb302@40
|
1603 \begin_inset Text
|
jb302@40
|
1604
|
jb302@40
|
1605 \begin_layout Plain Layout
|
jb302@40
|
1606 AC
|
jb302@40
|
1607 \end_layout
|
jb302@40
|
1608
|
jb302@40
|
1609 \end_inset
|
jb302@40
|
1610 </cell>
|
jb302@40
|
1611 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
|
jb302@40
|
1612 \begin_inset Text
|
jb302@40
|
1613
|
jb302@40
|
1614 \begin_layout Plain Layout
|
jb302@40
|
1615 5
|
jb302@40
|
1616 \end_layout
|
jb302@40
|
1617
|
jb302@40
|
1618 \end_inset
|
jb302@40
|
1619 </cell>
|
jb302@40
|
1620 </row>
|
jb302@40
|
1621 <row>
|
jb302@40
|
1622 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
|
jb302@40
|
1623 \begin_inset Text
|
jb302@40
|
1624
|
jb302@40
|
1625 \begin_layout Plain Layout
|
jb302@40
|
1626 Z
|
jb302@40
|
1627 \end_layout
|
jb302@40
|
1628
|
jb302@40
|
1629 \end_inset
|
jb302@40
|
1630 </cell>
|
jb302@40
|
1631 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
|
jb302@40
|
1632 \begin_inset Text
|
jb302@40
|
1633
|
jb302@40
|
1634 \begin_layout Plain Layout
|
jb302@40
|
1635 6
|
jb302@40
|
1636 \end_layout
|
jb302@40
|
1637
|
jb302@40
|
1638 \end_inset
|
jb302@40
|
1639 </cell>
|
jb302@40
|
1640 </row>
|
jb302@40
|
1641 <row>
|
jb302@40
|
1642 <cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
|
jb302@40
|
1643 \begin_inset Text
|
jb302@40
|
1644
|
jb302@40
|
1645 \begin_layout Plain Layout
|
jb302@40
|
1646 C
|
jb302@40
|
1647 \end_layout
|
jb302@40
|
1648
|
jb302@40
|
1649 \end_inset
|
jb302@40
|
1650 </cell>
|
jb302@40
|
1651 <cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
|
jb302@40
|
1652 \begin_inset Text
|
jb302@40
|
1653
|
jb302@40
|
1654 \begin_layout Plain Layout
|
jb302@40
|
1655 7
|
jb302@40
|
1656 \end_layout
|
jb302@40
|
1657
|
jb302@40
|
1658 \end_inset
|
jb302@40
|
1659 </cell>
|
jb302@40
|
1660 </row>
|
jb302@40
|
1661 </lyxtabular>
|
jb302@40
|
1662
|
jb302@40
|
1663 \end_inset
|
jb302@40
|
1664
|
jb302@40
|
1665
|
jb302@40
|
1666 \end_layout
|
jb302@40
|
1667
|
jb302@39
|
1668 \begin_layout Section
|
jb302@39
|
1669 Debugger Testing
|
jb302@39
|
1670 \end_layout
|
jb302@39
|
1671
|
jb302@42
|
1672 \begin_layout Standard
|
jb302@42
|
1673 The debugger was tested with an automated test method using python scripting.
|
jb302@42
|
1674 The script uses the debug controller class to fill all of the emulators
|
jb302@42
|
1675 memory structures with known values.
|
jb302@42
|
1676 It then requests these values back and compares the results, if the values
|
jb302@42
|
1677 are not the same the test fails.
|
jb302@42
|
1678 The test then steps through the emulators entire memory space, and then
|
jb302@42
|
1679 checks the program counter to see if it has reached the end.
|
jb302@42
|
1680 The test files and results can be found in the Supporting Material.
|
jb302@42
|
1681 \end_layout
|
jb302@42
|
1682
|
jb302@39
|
1683 \end_body
|
jb302@39
|
1684 \end_document
|