Arduino ver 15 .LST files


Just upgraded to version 15.

Went to INSTALLATION item in FILE-menu.

Checked my RUN-environment and closed when I was satisfied.

Ran a Test-program. (TEST1.INO)

Saw a lot of listing in the lower window on the screen.

Then searched for the TEST1.LST file. But could not find it.

Can anyone tell me where it is (if existing) ?

KRIS aka. Snestrup2000

It would be found in the temporary build folder, which you can find by examining the lower window as you did but the Arduino IDE doesn't appear to generate this file by default. You could probably edit platform.txt for the hardware package of the selected board to make it produce that file. I believe there is some discussion on that topic here:

and in the forum thread linked from that issue. Or you could just do it manually when needed.

If you will tell us why you need the .lst file maybe someone can provide better help.


Last question first:

My 12 years old grandson is trying to teach himself C++ (Arduino C++), so I have tried to teach him some Assembler (primary XXX86 assembler), and the relation between C++ (read: HIGH-level language) and Assembler. He was "hooked". Now he want to examine the Arduino "assembler" at a closer look (read: C++ to Assembler for the Atmel microcontroller family) and how Arduino C++ actually does that job.

The boards(s) in question are a 2560 MEGA and the UNO

I will read the article in your link very carefully.


As I had mentioned in the linked issue, I like to use the -S option with avr-objdump to get intermixed source code. I find this makes it much easier for me to figure things out. This functionality had been broken at the time I wrote that issue but is now working again with the current version of Arduino AVR Boards. An example of the disassembly command I use:

avr-objdump -d -S -j .text C:\Users\per\AppData\Local\Temp\arduino_build_84577\Blink.ino.elf > disassembly.txt

Note that you need to save the sketch before compiling if it's modified in order to get intermixed source code because modified sketches are saved to a temporary sketch folder before the compilation and then deleted immediately after.

I wrote a batch file that finds the .elf file in the most recently created temporary build folder and does the disassembly on it so I can just compile and then run the batch file to get disassembly.

Add a "-C" option to the objdump command to get it to un-mangle C++ names.

Add a "-C" option to the objdump command to get it to un-mangle C++ names.

Thanks westfw! That's a huge improvement in readability.

I also just added the -l option, which seems useful.

Here's my batch file just in case snestrup2000 happens to be using Windows and might find it useful:

I didn't mention it earlier because it had been broken by Arduino changing the build folder naming scheme in recent IDE versions but I have that fixed now.