As Klaus Rudolph wrote: > >-C option: provide a "coredump" after simulation finished
> Is there a typical format for this? It's a fairly homegrown (of the old simulavr) text file. I'm attaching one for reference. Also, it's always using a fixed name. Changing the format might be an option, though the human readable text file for sure does have some merit. Right now, avr-libc's testsuite uses a Python script to extract the desired information (exitcode from r24/r25, and possibly a message string from "external memory" starting at address 0x2000). This allows for a fairly simple interface to pass a result code and possibly a message from the testsuite C source file to the user. > Because it is mostly a memory dump it could be binary from address 0 to > end_of_ram/flash or it could be a complete elf-file which also includes > the debug symbols from the loaded elf prog. Host systems typically use ELF as the coredump format, yes, but they don't duplicate the information that was already present in the actual executable file. Thus, when using a debugger to analyze a coredump file, you always have to pass both, the executable as well as the dump itself to the debugger. > >The avr-libc testsuite uses the option -B <addr>, aka. --breakpoint > ><addr>, in order to stop the simulation. [...] > I can add that. Is there a new option format required like 0x... 0000h > or something? I have no idea which format simulavrxx already have :-) Thanks for adding it. The format is a standard C string so you could use strtoul(..., 0). -- cheers, J"org .-.-. --... ...-- -.. . DL8DTL http://www.sax.de/~joerg/ NIC: JW11-RIPE Never trust an operating system you don't have sources for. ;-)
PC = 0x0004d6 (PC*2 = 0x0009ac) General Purpose Register Dump: r00=00 r01=00 r02=00 r03=00 r04=00 r05=00 r06=00 r07=00 r08=00 r09=00 r10=00 r11=00 r12=00 r13=00 r14=00 r15=00 r16=01 r17=66 r18=0e r19=02 r20=8b r21=00 r22=2a r23=00 r24=01 r25=00 r26=06 r27=02 r28=d0 r29=07 r30=8b r31=00 IO Register Dump: 20 : Reserved : 0x00 40 : Reserved : 0x00 21 : Reserved : 0x00 41 : WDTCR : 0x00 22 : Reserved : 0x00 42 : Reserved : 0x00 23 : Reserved : 0x00 43 : Reserved : 0x00 24 : Reserved : 0x00 44 : ICR1L : 0x00 25 : Reserved : 0x00 45 : ICR1H : 0x00 26 : Reserved : 0x00 46 : Reserved : 0x00 27 : Reserved : 0x00 47 : Reserved : 0x00 28 : ACSR : 0x00 48 : OCR1BL : 0x00 29 : UBRR : 0x00 49 : OCR1BH : 0x00 2a : UCR : 0x00 4a : OCR1AL : 0x00 2b : USR : 0x00 4b : OCR1AH : 0x00 2c : UDR : 0x00 4c : TCNT1L : 0x00 2d : SPCR : 0x00 4d : TCNT1H : 0x00 2e : SPSR : 0x00 4e : TCCR1B : 0x00 2f : SPDR : 0x00 4f : TCCR1A : 0x00 30 : PIND : 0x00 50 : Reserved : 0x00 31 : DDRD : 0x00 51 : Reserved : 0x00 32 : PORTD : 0x00 52 : TCNT0 : 0x00 33 : PINC : 0x00 53 : TCCR0 : 0x00 34 : DDRC : 0x00 54 : Reserved : 0x00 35 : PORTC : 0x00 55 : MCUCR : 0x00 36 : PINB : 0x00 56 : Reserved : 0x00 37 : DDRB : 0x00 57 : Reserved : 0x00 38 : PORTB : 0x00 58 : TIFR : 0x00 39 : PINA : 0x00 59 : TIMSK : 0x00 3a : DDRA : 0x00 5a : GIFR : 0x00 3b : PORTA : 0x00 5b : GIMSK : 0x00 3c : EECR : 0x00 5c : Reserved : 0x00 3d : EEDR : 0x00 5d : SPL : 0x5d 3e : EEARL : 0x00 5e : SPH : 0x02 3f : EEARH : 0x00 5f : SREG : 0x35 Internal SRAM Memory Dump: 0060 : 1a 00 1f 00 26 00 2d 00 32 00 39 00 3f 00 49 00 0070 : 32 00 8b 00 00 00 2a 00 00 00 03 2e 00 00 00 ff 0080 : 01 00 00 0e 02 bc 02 21 02 8b 00 94 01 00 00 1b 0090 : 00 cd 00 01 02 00 62 72 12 00 cd 00 01 03 00 66 00a0 : 6f 78 08 00 cd 00 01 03 00 66 6f 78 07 00 c1 00 00b0 : 01 02 00 71 75 46 01 06 02 01 04 00 62 6f 77 00 00c0 : 66 3a 01 06 02 01 05 00 64 6f 67 2e 20 5e 00 53 00d0 : 01 01 05 00 62 72 6f 77 6e 1c 00 0f 01 01 05 00 00e0 : 62 72 6f 6e 20 08 00 0f 01 01 03 00 6f 76 65 06 00f0 : 00 0f 01 01 01 00 6a 2a 00 53 01 01 03 00 54 68 0100 : 65 20 00 53 01 01 07 00 6a 75 6d 65 20 6c 61 12 0110 : 00 53 01 01 05 00 74 7a 79 20 00 06 00 83 01 00 0120 : 01 00 66 08 00 53 01 01 03 00 6f 76 65 08 00 53 0130 : 01 01 03 00 6f 20 00 07 00 53 01 01 02 00 64 6f 0140 : 08 00 53 01 01 03 00 54 20 00 b1 00 06 02 01 02 0150 : 00 71 75 a8 00 06 02 01 04 00 71 63 6b 20 07 00 0160 : 83 01 01 02 00 54 68 0c 00 83 01 01 07 00 6f 76 0170 : 65 7a 79 20 00 11 00 d9 01 01 05 00 64 6f 67 20 0180 : 00 8d 01 03 00 d9 01 01 09 00 d9 01 01 04 00 64 0190 : 6f 67 20 27 00 d9 01 01 03 00 74 68 65 1d 00 d9 01a0 : 01 01 02 00 71 75 14 00 d9 01 01 04 00 6a 75 6d 01b0 : 70 09 00 d9 01 01 04 00 66 6f 78 20 08 00 d9 01 01c0 : 01 03 00 54 68 65 15 00 f3 01 01 02 00 66 6f 0c 01d0 : 00 f3 01 01 03 00 62 72 6f 02 00 f3 01 07 00 f3 01e0 : 01 01 02 00 6a 20 15 00 06 02 01 06 00 74 68 7a 01f0 : 79 20 00 08 00 06 02 00 03 00 62 6f 77 22 00 00 0200 : 00 01 02 00 66 00 19 00 00 00 01 02 00 64 6f 08 0210 : 00 00 00 01 03 00 66 6f 78 06 00 00 00 01 01 00 0220 : 71 a5 a5 a5 a5 a5 a5 a5 a5 a5 a5 a5 a5 a5 a5 a5 0230 : a5 a5 a5 a5 a5 a5 a5 a5 a5 a5 a5 a5 a5 a5 a5 a5 0240 : a5 a5 a5 a5 a5 a5 a5 a5 a5 01 ff 04 29 01 1d 00 External SRAM Memory Dump: 0260 : 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -- last line repeats -- fff0 : 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 Program Flash Memory Dump: 0000 : c027 c04a c049 c048 c047 c046 c045 c044 0008 : c043 c042 c041 c040 c03f 6854 2065 7100 0010 : 6975 6b63 0020 7262 776f 206e 6600 786f 0018 : 0020 756a 706d 2073 6f00 6576 2072 7400 0020 : 6568 6c20 7a61 2079 6400 676f 202e 0020 0028 : 2411 be1f e5cf e0d2 bfde bfcd e8eb e0f0 0030 : ea85 9381 e082 35ef 07f8 f3d0 e010 e6a0 0038 : e0b0 eaee e0f9 c003 95c8 9631 920d 37aa 0040 : 07b1 f7d1 e010 e7aa e0b0 c001 921d 38ab 0048 : 07b1 f7e1 d0f6 c3e8 cfb3 91e0 007b 91f0 0050 : 007c 9730 f469 e1ea e0f0 95c8 2d80 9631 0058 : 93f0 007c 93e0 007b 2799 fd87 9590 9508 0060 : 95c8 2d20 9631 93f0 007c 93e0 007b 2322 0068 : f4b1 9180 007a 5f8f 9380 007a 3088 f411 0070 : 9210 007a 91e0 007a 27ff 0fee 1fff 5ae0 0078 : 4fff 8180 8191 9390 007c 9380 007b 2f82 0080 : 2799 fd87 9590 9508 930f 931f 91e0 0081 0088 : 91f0 0082 9730 f419 e28c e090 d3a5 8100 0090 : 8111 2f8e 2f9f d1fe 9310 0082 9300 0081 0098 : 911f 910f 9508 91e0 0081 91f0 0082 9730 00a0 : f109 9180 007d 9190 007e 2b89 f441 8182 00a8 : 2388 f0c1 9635 93f0 007e 93e0 007d 91e0 00b0 : 007d 91f0 007e 9181 93f0 007e 93e0 007d 00b8 : 2388 f429 9210 007e 9210 007d dfc5 e081 00c0 : e090 9508 e080 e090 9508 931f 93cf 93df 00c8 : 2f18 91c0 007f 91d0 0080 9720 f419 e28a 00d0 : e090 c035 816b 817c 5f6a 4f7f 2f8c 2f9d 00d8 : d27e 2fb9 2fa8 9700 f419 e080 e090 c030 00e0 : 2ff9 2fe8 8183 8194 0fe8 1ff9 8315 9601 00e8 : 2ffb 2fea 8394 8383 17ac 07bd f0f9 91e0 00f0 : 0081 91f0 0082 17ce 07df f439 93b0 0082 00f8 : 93a0 0081 c00f 2ff9 2fe8 9730 f031 8180 0100 : 8191 178c 079d f7b9 c003 e28b e090 d32c 0108 : 83b1 83a0 93b0 0080 93a0 007f e081 e090 0110 : 91df 91cf 911f 9508 931f 2f18 e086 e090 0118 : d0bf 2ff9 2fe8 2b89 f419 e080 e090 c01f 0120 : e081 e090 8394 8383 8315 8211 8210 8212 0128 : 91a0 007f 91b0 0080 9710 f449 93f0 0080 0130 : 93e0 007f 93f0 0082 93e0 0081 c008 93ed 0138 : 93fc 93f0 0080 93e0 007f e081 e090 911f 0140 : 9508 e5cf e0d2 bfde bfcd e382 e090 9390 0148 : 0071 9380 0070 e26a e070 e080 e090 d1fe 0150 : e0c0 e0d0 e000 d1f6 2f26 2f37 2f48 2f59 0158 : 2f97 2f86 7081 7090 2b89 f0f1 deee 2f18 0160 : 2300 f411 dfb1 c001 df60 2388 f049 9180 0168 : 0083 9190 0084 9601 9390 0084 9380 0083 0170 : 2311 f011 e001 c016 91e0 007f 91f0 0080 0178 : e081 8382 e000 c00e ff21 c00c df1c 2388 0180 : f049 9180 0085 9190 0086 9601 9390 0086 0188 : 9380 0085 9621 e087 3dc0 07d8 f621 2300 0190 : f099 e080 df32 2388 f049 9180 0083 9190 0198 : 0084 9601 9390 0084 9380 0083 91e0 007f 01a0 : 91f0 0080 e081 8382 e26a e070 e080 e090 01a8 : d1a5 c00c def0 2388 f049 9180 0085 9190 01b0 : 0086 9601 9390 0086 9380 0085 9180 0081 01b8 : 9190 0082 2b89 f771 9120 0083 9130 0084 01c0 : 9180 0085 9190 0086 1728 0739 f019 e081 01c8 : e090 c00a 91e0 0089 91f0 008a 8182 8193 01d0 : 2b89 f019 e082 e090 d25f e080 e090 c25c 01d8 : 93cf 93df 2f48 2f59 9702 f410 e042 e050 01e0 : 91a0 0089 91b0 008a 2ffb 2fea e0c0 e0d0 01e8 : e020 e030 c023 8180 8191 1784 0795 f471 01f0 : 8182 8193 9720 f019 839b 838a c004 9390 01f8 : 008a 9380 0089 2f2e 2f3f c038 1748 0759 0200 : f440 1521 0531 f019 1782 0793 f410 2f28 0208 : 2f39 2fce 2fdf 8002 81f3 2de0 9730 f6d9 0210 : 1521 0531 f1d1 2f93 2f82 1b84 0b95 9704 0218 : f410 2f53 2f42 e0e0 e0f0 c02d 918d 919c 0220 : 9711 1782 0793 f519 1748 0759 f491 2fdb 0228 : 2fca 818a 819b 9730 f019 8393 8382 c004 0230 : 9390 008a 9380 0089 2f2a 2f3b 5f2e 4f3f 0238 : c054 1b84 0b95 2ffb 2fea 0fe8 1ff9 9341 0240 : 9351 9702 938d 939c 2f2e 2f3f c046 2ffb 0248 : 2fea 81a2 81b3 9710 f689 9180 0087 9190 0250 : 0088 2b89 f441 9180 0072 9190 0073 9390 0258 : 0088 9380 0087 9120 0074 9130 0075 1521 0260 : 0531 f441 b72d b73e 9180 0070 9190 0071 0268 : 1b28 0b39 91a0 0087 91b0 0088 17a2 07b3 0270 : f4d0 1b2a 0b3b 1724 0735 f0a8 2f95 2f84 0278 : 9602 1728 0739 f078 2f2a 2f3b 5f2e 4f3f 0280 : 2f93 2f82 0f84 1f95 9390 0088 9380 0087 0288 : 934d 935c c002 e020 e030 2f93 2f82 91df 0290 : 91cf 9508 93cf 93df 9700 f409 c056 2fd9 0298 : 2fc8 9722 821b 821a 91a0 0089 91b0 008a 02a0 : 9710 f129 e040 e050 c002 2fb9 2fa8 17ac 02a8 : 07bd f110 83bb 83aa 2ffd 2fec 9121 9131 02b0 : 0fe2 1ff3 17ea 07fb f479 918d 919c 9711 02b8 : 0f28 1f39 5f2e 4f3f 8339 8328 2ffb 2fea 02c0 : 8182 8193 839b 838a 1541 0551 f469 93d0 02c8 : 008a 93c0 0089 c021 2ffb 2fea 8182 8193 02d0 : 2f4a 2f5b 9700 f689 2ff5 2fe4 83d3 83c2 02d8 : 9121 9131 0fe2 1ff3 17ec 07fd f471 8188 02e0 : 8199 0f28 1f39 5f2e 4f3f 2ff5 2fe4 8331 02e8 : 8320 818a 819b 8393 8382 91df 91cf 9508 02f0 : e0a0 e0b0 efe5 e0f2 c18a 2fd9 2fc8 8168 02f8 : 8179 818a 819b 1561 0571 0581 0591 f449 0300 : e284 2ea8 ed89 2eb8 e58b 2ec8 e087 2ed8 0308 : c004 2ea6 2eb7 2ec8 2ed9 2d9d 2d8c 2d7b 0310 : 2d6a e12d ef33 e041 e050 d146 ea27 e431 0318 : e040 e050 d126 2ee6 2ef7 2f08 2f19 2d9d 0320 : 2d8c 2d7b 2d6a e12d ef33 e041 e050 d134 0328 : 2f95 2f84 2f73 2f62 e124 e03b e040 e050 0330 : d110 1ae6 0af7 0b08 0b19 2f91 2f80 2d7f 0338 : 2d6e ff17 c004 5061 4070 4080 4890 8368 0340 : 8379 838a 839b 779f e0ea b7cd b7de c153 0348 : dfa7 9508 e786 e090 dfa3 9508 9360 0076 0350 : 9370 0077 9380 0078 9390 0079 9508 e0a0 0358 : e0b0 e5ec e0f3 c121 2ee8 2ef9 9700 f431 0360 : 2f97 2f86 de75 2ee8 2ef9 c0c8 2f08 2f19 0368 : 5002 4010 2fd9 2fc8 0fc6 1fd7 17c0 07d1 0370 : f408 c0ba ef8e 2e88 ef8f 2e98 0e8c 1e9d 0378 : 2fb1 2fa0 914d 915c 9711 1746 0757 f0c8 0380 : 3045 0551 f408 c0aa 2f95 2f84 9704 1786 0388 : 0797 f408 c0a3 1b46 0b57 5042 4050 2df9 0390 : 2de8 8351 8340 936d 937c 2f8c 2f9d defa 0398 : c095 2fb7 2fa6 1ba4 0bb5 91e0 0089 91f0 03a0 : 008a 24cc 24dd 24aa 24bb c048 15e8 05f9 03a8 : f5c9 8120 8131 172a 073b f1a0 2f93 2f82 03b0 : 9602 178a 079b f0b8 5f4e 4f5f 0f42 1f53 03b8 : 2fb1 2fa0 934d 935c 8182 8193 14c1 04d1 03c0 : f029 2ddd 2dcc 839b 838a c068 9390 008a 03c8 : 9380 0089 c063 1b2a 0b3b 5022 4030 8331 03d0 : 8320 14c1 04d1 f029 2ddd 2dcc 83fb 83ea 03d8 : c004 93f0 008a 93e0 0089 2ff1 2fe0 8371 03e0 : 8360 c04c 8180 8191 16a8 06b9 f410 2ea8 03e8 : 2eb9 2ece 2edf 8002 81f3 2de0 9730 f009 03f0 : cfb5 0d4e 1d5f 9180 0087 9190 0088 1784 03f8 : 0795 f4f1 16a6 06b7 f4d8 9120 0074 9130 0400 : 0075 1521 0531 f441 b72d b73e 9180 0070 0408 : 9190 0071 1b28 0b39 17c2 07d3 f4e8 93d0 0410 : 0088 93c0 0087 2fb1 2fa0 936d 937c c016 0418 : 2f97 2f86 ddbd 2fd9 2fc8 9700 f069 2ff1 0420 : 2fe0 8140 8151 2d7f 2d6e d010 2d9f 2d8e 0428 : de69 2eec 2efd c002 24ee 24ff 2d9f 2d8e 0430 : e0ec b7cd b7de c065 94f8 c0a0 2fe6 2ff7 0438 : 2fa8 2fb9 c002 9001 920d 5041 4050 f7d8 0440 : 9508 27ff 27ee 27bb 27aa ff60 c004 0fa2 0448 : 1fb3 1fe4 1ff5 0f22 1f33 1f44 1f55 9596 0450 : 9587 9577 9567 f789 9700 0776 f771 2f9f 0458 : 2f8e 2f7b 2f6a 9508 fb97 2e09 2605 d00e 0460 : fd57 d004 d04c d00a 1c00 f438 9550 9540 0468 : 9530 9521 4f3f 4f4f 4f5f 9508 f7f6 9590 0470 : 9580 9570 9561 4f7f 4f8f 4f9f 9508 922f 0478 : 923f 924f 925f 926f 927f 928f 929f 92af 0480 : 92bf 92cf 92df 92ef 92ff 930f 931f 93cf 0488 : 93df b7cd b7de 1bca 0bdb b60f 94f8 bfde 0490 : be0f bfcd 9409 882a 8839 8848 845f 846e 0498 : 847d 848c 849b 84aa 84b9 84c8 80df 80ee 04a0 : 80fd 810c 811b 81aa 81b9 0fce 1dd1 b60f 04a8 : 94f8 bfde be0f bfcd 2fca 2fdb 9508 e2a1 04b0 : 2e1a 1baa 1bbb 2fea 2ffb c00d 1faa 1fbb 04b8 : 1fee 1fff 17a2 07b3 07e4 07f5 f020 1ba2 04c0 : 0bb3 0be4 0bf5 1f66 1f77 1f88 1f99 941a 04c8 : f769 9560 9570 9580 9590 2f26 2f37 2f48 04d0 : 2f59 2f6a 2f7b 2f8e 2f9f 9508 9598 001a 04d8 : 001f 0026 002d 0032 0039 003f 0049 0020 04e0 : 008b 0000 0001 0000 ffff ffff ffff ffff 04e8 : ffff ffff ffff ffff ffff ffff ffff ffff -- last line repeats -- 0ff8 : ffff ffff ffff ffff ffff ffff ffff ffff
_______________________________________________ Simulavr-devel mailing list [email protected] http://lists.nongnu.org/mailman/listinfo/simulavr-devel
