File: cmd_dump.html

package info (click to toggle)
sdcc 4.5.0%2Bdfsg-4
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 112,980 kB
  • sloc: ansic: 622,683; cpp: 259,454; makefile: 81,253; sh: 40,203; asm: 19,222; perl: 12,139; yacc: 7,761; awk: 3,378; lisp: 1,677; python: 1,097; lex: 1,028; sed: 76
file content (383 lines) | stat: -rw-r--r-- 17,376 bytes parent folder | download | duplicates (2)
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
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
<html>
  <head>
    <meta http-equiv="content-type" content="text/html; charset=ISO-8859-2">
    <title>Dump commands of &micro;Csim</title>
  </head>
  <body style="background-color: white;">
    <h2>Dump commands of &micro;Csim</h2>
    <a name="dump">
      <h3>dump <i>[/format] memory_type [start [end [bytes_per_line]]]</i>
        <br>
        dump <i>bit...</i></h3>
    </a>
    The first form can be used get the contents of memory while the second form can be
    used to check the value of one or more bits.
    <blockquote>
      <a name="dump_memory">
        <h4>dump <i>[/format] memory_name [start [end
            [bytes_per_line]]]</i></h4>
      </a>
      Dump a memory region.
      <p>The optional <b>/format</b> specifies how memory is to be dumped.
      <dl>
        <dt><b>/b</b> - binary</dt>
          <dd>Dumps raw binary data. The output MUST be redirected to a file.</dd>
        <dt><b>/h</b> - hexadecimal</dt>
          <dd>Dumps data in a tabular hexadecimal format with an accompanying
              table of equivalent characters to the right.</dd>
        <dt><b>/i</b> - ihex</dt>
          <dd>Dumps data in ihex format.</dd>
        <dt><b>/s</b> - string</dt>
          <dd>Dumps a single, null terminated string starting at <b>start</b>.</dd>
      </dl>
      If no <b>format</b> is given dump uses a "smart" mode. This will disassemble
      where the <a href="analyzer.html"> code analyzer</a> has identified executable
      code otherwise it is similar to
      the hexadecimal format except that where labels (vars that name an address)
      are found they are shown between the address and data and where HW
      registers (vars that name an address AND specify the full bit range)
      are found that address is shown on a line of its own and the data is
      given as binary, character, hex, unsigned decimal and, if the high bit
      is set, signed decimal. Note that smart mode only applies if
      <b>memory_name</b> is an address space since vars can only be set for
      cells within an address space. If <b>memory_name</b> is a chip the
      output is the same as hexadecimal (<b>/h</b>) output.
      </p>
      <p><b>memory_name</b> specifies
      memory. It can be the name of an address space or a chip, and can be
      checked using <a href="cmd_general.html#info_memory">info memory</a>
      command which lists size and name of all available memories.
      </p>
      <p><b>start</b> and <b>end</b> parameters can be used to specify the
        first and last address of the dumped region. If <b>end</b> is omitted
        then 64 memory locations are dumped. If both <b>start</b> and <b>end</b>
        are omitted then the next 64 memory locations will be dumped out. Every
        time when dump command is used the address of the last dumped memory
        location is stored and next dump command automatically continues at
        the next address.
      </p>
      <p><b>bytes_per_line</b> can be used to specify how many memory locations
        should be dumped out in one line. It is 8 by default.
      </p>
      <pre>$ <font color="#118811">ucsim_51</font>
uCsim 0.6-pre34, Copyright (C) 1997 Daniel Drotos.
uCsim comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
This is free software, and you are welcome to redistribute it
under certain conditions; type `show c' for details.
&gt; <font color="#118811">dump regs</font>
regs[0x0]      R0         0b00001000 0x08 '.'   8
regs[0x1]      R1         0b01110000 0x70 'p' 112
regs[0x2]      R2         0b11010100 0xd4 '.' 212 (212)
regs[0x3]      R3         0b10110010 0xb2 '.' 178 (178)
regs[0x4]      R4         0b10001010 0x8a '.' 138 (138)
regs[0x5]      R5         0b00101001 0x29 ')'  41
regs[0x6]      R6         0b01010100 0x54 'T'  84
regs[0x7]      R7         0b01001000 0x48 'H'  72
&gt; <font color="#118811">dump rom 0</font>
0x0000            00 00 00 00 00 00 00 00 ........
0x0008            00 00 00 00 00 00 00 00 ........
0x0010            00 00 00 00 00 00 00 00 ........
0x0018            00 00 00 00 00 00 00 00 ........
0x0020            00 00 00 00 00 00 00 00 ........
0x0028            00 00 00 00 00 00 00 00 ........
0x0030            00 00 00 00 00 00 00 00 ........
0x0038            00 00 00 00 00 00 00 00 ........
0x0040            00 00 00 00 00 00 00 00 ........
0x0048            00 00 00 00 00 00 00 00 ........
&gt; <font color="#118811">var label1 rom 0x0016</font>
&gt; <font color="#118811">var reg1 rom[0x0020][7:0]</font>
&gt; <font color="#118811">var reg2 rom[0x0021][7:0]</font>
&gt; <font color="#118811">dump rom 0</font>
0x0000            00 00 00 00 00 00 00 00 ........
0x0008            00 00 00 00 00 00 00 00 ........
0x0010            00 00 00 00 00 00       ......
0x0016 label1     00 00 00 00 00 00 00 00 ........
0x001e            00 00                   ..
0x0020 reg1       0b00000000 0x00 '.'   0
0x0021 reg2       0b00000000 0x00 '.'   0
0x0022            00 00 00 00 00 00 00 00 ........
0x002a            00 00 00 00 00 00 00 00 ........
0x0032            00 00 00 00 00 00 00 00 ........
0x003a            00 00 00 00 00 00 00 00 ........
0x0042            00 00 00 00 00 00 00 00 ........
0x004a            00 00 00 00 00 00       ......
&gt;
</pre>

      <pre>$ <font color="#118811">ucsim_51</font>
ucsim 0.2.38-pre2, Copyright (C) 1997 Daniel Drotos, Talker Bt.
ucsim comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
This is free software, and you are welcome to redistribute it
under certain conditions; type `show c' for details.
&gt; 55470 words read from remo.hex
55470 words read from remo.hex
&gt; <font color="#118811">run</font>
Simulation started, PC=0x000000

Stop at 0x000515: (105) User stopped
F 0x000515
&gt; <font color="#118811">du rom 20</font>
0x0014 00 ac ff ff ff ff ff ff ........
0x001c ff ff ff ff ff ff ff 02 ........
0x0024 01 1c ff ff ff ff ff 32 .......2
0x002c ff ff ff ff 02 0f a7 02 ........
0x0034 0e 9c 02 0d d2 02 08 41 .......A
0x003c c0 82 c0 83 c0 d0 c0 e0 ........
0x0044 c0 00 a2 90 c0 d0 c2 90 ........
0x004c 78 18 06 30 03 4b 20 92 x..0.K .
0x0054 48 30 07 05 c2 07 02 00 H0......
0x005c 9d 30 08 05 20 93 3a c2 .0.. .:.
&gt; <font color="#118811">du xram 10 20 10</font>
0x000a ff 01 00 fa 01 01 40 01 01 44 ......@..D
0x0014 01                            .
&gt; <font color="#118811">du xram</font>
0x0015 00 00 00 00 00 00 00 00 ........
0x001d 00 10 01 00 ae 01 00 ae ........
0x0025 02 12 e1 00 5a 85 00 01 ....Z...
0x002d 00 3b 00 00 5a 85 00 ab .;..Z...
0x0035 1f 80 00 00 01 00 01 00 ........
0x003d fa 0c 02 01 00 fa 00 02 ........
0x0045 00 01 00 ab 00 00 00 00 ........
0x004d 00 00 5a 85 ff 00 01 00 ..Z.....
0x0055 00 00 00 94 a7 01 0c a6 ........
0x005d 00 6f ff 00 00 00 00 00 .o......
&gt;
</pre>


<hr>

<a name="dump_bit">
        <h4>dump <i>bit_name...</i></h4>
      </a>This command can be used to print out values of bit(s). <a href="syntax.html#bit_param">Any
        form of bit address</a> can be used as parameter:
      <pre>0&gt; <font color="#118811">dump AC P1.2 0x21</font>
0xd6      AC:                       0b0 0x00 '.'   0
0x90.2                              0b-----1-- 0x01 '.'   1
0x24.1                              0b------0- 0x00 '.'   0
0&gt; 
</pre> </blockquote>
    <hr> <a name="dch">
      <h3>dch <i>[start [stop]]</i></h3>
    </a> Hexadecimal dump of code memory area from address <b>start</b> to
    address <b>stop</b>. Default value of start address is address of following
    memory cell which was dumped by previous <b>dch</b> command. If <b>stop</b>
    parameter is not given <b>dch</b> command lists 10 lines 8 bytes per line.
    <pre>$ <font color="#118811">ucsim_51 remo.hex</font>
ucsim 0.2.24, Copyright (C) 1997 Daniel Drotos, Talker Bt.
ucsim comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
This is free software, and you are welcome to redistribute it
under certain conditions; type `show c' for details.
58659 bytes read from remoansi.hex
&gt; <font color="#118811">wc remo</font>
0013da 52 65 6d 6f             Remo
&gt; <font color="#118811">dch 0x13da</font>
0013da 52 65 6d 6f 20 00 56 65 Remo .Ve
0013e2 72 73 69 6f 6e 20 31 2e rsion 1.
0013ea 30 20 00 43 6f 70 79 72 0 .Copyr
0013f2 69 67 68 74 20 28 63 29 ight (c)
0013fa 20 00 31 39 39 34 2c 39  .1994,9
001402 35 20 00 54 61 6c 6b 65 5 .Talke
00140a 72 20 42 74 2e 00 53 75 r Bt..Su
001412 6e 64 61 79 2e 00 4d 6f nday..Mo
00141a 6e 64 61 79 2e 00 54 68 nday..Th
001422 75 65 73 64 61 79 2e 00 uesday..
&gt; </pre>
    First element in every lines is address of first byte dumped out in the
    line. Next elements are hexadecimal values of bytes followed by ASCII
    characters of bytes dumped out in the line. If value of the memory cell is
    not printable than a dot is dumped out.
    <hr> <a name="dc">
      <h3>dc <i>[start [stop]]</i></h3>
    </a> Disassembled dump of code memory area. This command simply produces
    disassembled list of memory area specified by the parameters. Default value
    of <b>start</b> parameter is last address listed by previous <b>dc</b>
    command. If <b>stop</b> parameter is not given 20 lines are listed.
    <pre>$ <font color="#118811">ucsim_51 remoansi.hex</font> 
ucsim 0.2.12, Copyright (C) 1997 Daniel Drotos, Talker Bt.
ucsim comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
This is free software, and you are welcome to redistribute it
under certain conditions; type `show c' for details.
58659 bytes read from remoansi.hex
&gt; <font color="#118811">dc</font>
   000000 02 01 60 LJMP  0160
 * 000003 02 00 3c LJMP  003c
 * 000006 ff       MOV   R7,A
 * 000007 ff       MOV   R7,A
 * 000008 ff       MOV   R7,A
 * 000009 ff       MOV   R7,A
 * 00000a ff       MOV   R7,A
 * 00000b 02 3b e0 LJMP  3be0
 * 00000e ff       MOV   R7,A
 * 00000f ff       MOV   R7,A
 * 000010 ff       MOV   R7,A
 * 000011 ff       MOV   R7,A
 * 000012 ff       MOV   R7,A
 * 000013 02 00 ac LJMP  00ac
 * 000016 ff       MOV   R7,A
 * 000017 ff       MOV   R7,A
 * 000018 ff       MOV   R7,A
 * 000019 ff       MOV   R7,A
 * 00001a ff       MOV   R7,A
 * 00001b ff       MOV   R7,A
 * 00001c ff       MOV   R7,A
&gt; </pre>
    <hr> <a name="disassemble">
      <h3>disassemble <i>[start [offset [lines]]]</i></h3>
    </a> Disassemble code. This command can be used to list disassembled
    instructions which discovered by the <a href="analyzer.html">code analyser</a>.
    First two parameters specify the address where the list starts. First
    parameter is address where the command starts to search an instruction. This
    search goes forward. When the first instruction marked by code analyzer
    found the simulator skips as many instructions as you specify in second
    parameter. If <b>offset</b> is negative the simulator goes backward and
    skips specified number of instructions. Default value of <b>start</b>
    parameter is last address which was listed by previous <b>dis</b> command
    and default value of <b>offset</b> is -1. It means you can make continuous
    list repeating parameterless <b>dis</b> command.
    <p>In third parameter you can specify how many instructions you want to
      list. Default value is 20. </p>
    <pre>$ <font color="#118811">ucsim_51 remoansi.hex</font>
ucsim 0.2.12, Copyright (C) 1997 Daniel Drotos, Talker Bt.
ucsim comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
This is free software, and you are welcome to redistribute it
under certain conditions; type `show c' for details.
58659 bytes read from remoansi.hex
&gt; <font color="#118811">dis</font>
   000000 02 01 60 LJMP  0160
   000160 c2 90    CLR   P1.0
   000162 c2 97    CLR   P1.7
   000164 d2 b5    SETB  P3.5
   000166 d2 b4    SETB  P3.4
   000168 75 81 22 MOV   SP,#22
   00016b 75 d0 00 MOV   PSW,#00
   00016e 7e 00    MOV   R6,#00
   000170 7f 00    MOV   R7,#00
   000172 79 04    MOV   R1,#04
   000174 12 0d b8 LCALL 0db8
   000177 0f       INC   R7
   000178 d9 fa    DJNZ  R1,0174
   00017a 75 0b 00 MOV   0b,#00
   00017d 75 0c 00 MOV   0c,#00
   000180 02 02 2a LJMP  022a
   000183 78 22    MOV   R0,#22
   000185 76 00    MOV   @R0,#00
   000187 d8 fc    DJNZ  R0,0185
&gt; <font color="#118811">br 0x180</font>
&gt; <font color="#118811">tbr 0x189</font>
&gt; <font color="#118811">dis 0x180 -3 10</font>
   000178 d9 fa    DJNZ  R1,0174
   00017a 75 0b 00 MOV   0b,#00
   00017d 75 0c 00 MOV   0c,#00
F  000180 02 02 2a LJMP  022a
   000183 78 22    MOV   R0,#22
   000185 76 00    MOV   @R0,#00
   000187 d8 fc    DJNZ  R0,0185
D  000189 22       RET
   00018a 90 09 ec MOV   DPTR,#09ec
   00018d ae 83    MOV   R6,DPH
&gt; </pre>
    If there is an <b>F</b> or <b>D</b> character at the beginning of the
    line, it means that there is a fix or dynamic fetch breakpoint at listed
    address. Next element on the list can be an asterisk (<b>*</b>) which means
    that the listed address is not marked by the code analyzer. <b>dis</b>
    lists marked instructions only so asterisk never appears in the list. Next
    element of the list is address displayed as six digit hexadecimal number.
    Address is followed by hexadecimal dump of instruction's code. Last element
    of the list is disassembled instruction. Every number appeared on the list
    is hexadecimal number.
    <hr> <a name="di">
      <h3>di <i>[start [stop]]</i></h3>
    </a> Hexadecimal dump of <b>iram</b> named address space area from address
    <b>start</b> to address <b>stop</b>. Default value of start address is
    address of following memory cell which was dumped by previous <b>di</b>
    command. If <b>stop</b> parameter is not given <b>di</b> command lists 10
    lines 8 bytes per line.
    <pre>$ <font color="#118811">ucsim_51 remoansi.hex</font>
ucsim 0.5.0-pre3, Copyright (C) 1997 Daniel Drotos, Talker Bt.
ucsim comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
This is free software, and you are welcome to redistribute it
under certain conditions; type `show c' for details.
58659 bytes read from remoansi.hex
0&gt; <font color="#118811">set opt irq_stop 1</font>
0&gt; <font color="#118811">go</font>
Simulation started, PC=0x000000
Stop at 000023: (5) Interrupt
F 000023
0&gt; <font color="#118811">di</font>
000000 18 02 16 ba 00 02 00 0a ........
000008 00 00 00 00 00 00 00 00 ........
000010 00 00 00 00 00 00 00 00 ........
000018 4a 00 00 00 00 00 00 00 J.......
000020 bc 27 06 2d 02 ee 35 8f .'.-..5.
000028 31 e7 42 01 0e 01 0b 00 1.B.....
000030 ec 0b 7f 10 7f a9 7e 08 ......~.
000038 fe 03 09 00 00 00 af 08 ........
000040 af 08 00 00 00 00 00 00 ........
000048 00 00 00 00 00 00 00 00 ........
0&gt;
</pre>
    <hr> <a name="dx">
      <h3>dx <i>[start [stop]]</i></h3>
    </a> Hexadecimal dump of <b>xram</b> named address space area from address
    <b>start</b> to address <b>stop</b>. Default value of start address is
    address of following memory cell which was dumped by previous <b>dx</b>
    command. If <b>stop</b> parameter is not given <b>dx</b> command lists 10
    lines 8 bytes per line.
    <pre>$ <font color="#118811">ucsim_51 remoansi.hex</font>
ucsim 0.5.0-pre3, Copyright (C) 1997 Daniel Drotos, Talker Bt.
ucsim comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
This is free software, and you are welcome to redistribute it
under certain conditions; type `show c' for details.
58659 bytes read from remoansi.hex
0&gt; <font color="#118811">set opt irq_stop 1</font>
0&gt; <font color="#118811">go</font>
Simulation started, PC=0x000000
Stop at 000023: (5) Interrupt
F 000023
0&gt; <font color="#118811">dx 0x100</font>
000100 00 00 00 00 00 00 00 00 ........
000108 00 00 00 00 00 00 00 00 ........
000110 00 00 00 00 00 00 00 00 ........
000118 00 00 00 00 00 00 00 00 ........
000120 00 00 00 00 00 00 00 00 ........
000128 00 00 00 00 00 00 00 44 .......D
000130 61 6e 69 00 00 00 02 02 ani.....
000138 07 00 00 ff 00 00 07 cb ........
000140 08 0c 32 00 07 cb 06 05 ..2.....
000148 02 00 24 00 00 00 00 00 ..$.....
0&gt;
</pre>
    <hr> <a name="ds">
      <h3>ds <i>[start [stop]]</i></h3>
    </a> Hexadecimal dump of <b>sfr</b> named address space area from address <b>start</b>
    to address <b>stop</b>. Default value of start address is address of
    following memory cell which was dumped by previous <b>ds</b> command. If <b>stop</b>
    parameter is not given <b>ds</b> command lists 10 lines 8 bytes per line.
    <pre>$ <font color="#118811">ucsim_51 remo.hex</font>
ucsim 0.5.0-pre3, Copyright (C) 1997 Daniel Drotos, Talker Bt.
ucsim comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
This is free software, and you are welcome to redistribute it
under certain conditions; type `show c' for details.
58659 bytes read from remoansi.hex
0&gt; <font color="#118811">set opt irq_stop 1</font>
0&gt; <font color="#118811">go</font>
Simulation started, PC=0x000000
Stop at 000023: (5) Interrupt
F 000023
0&gt; <font color="#118811">ds</font>
0x80 ff 2a 1e 13 00 00 00 80 .*......
0x88 d5 21 f7 fd 50 fd 00 00 .!..P...
0x90 fe 00 00 00 00 00 00 00 ........
0x98 7e 0a 00 00 00 00 00 00 ~.......
0xa0 ff 00 00 00 00 00 00 00 ........
0xa8 97 00 00 00 00 00 00 00 ........
0xb0 ff 00 00 00 00 00 00 00 ........
0xb8 15 00 00 00 00 00 00 00 ........
0xc0 00 00 00 00 00 00 00 00 ........
0xc8 00 00 00 00 00 00 00 00 ........
0&gt;
</pre>
    <hr>
  </body>
</html>