Skip to main content
adaniel
Associate III
August 30, 2010
Question

STM32 disassembler

Posted on August 30, 2010 at 15:24

STM32 disassembler

#cortex-disassembler
    This topic has been closed for replies.

    15 replies

    stforum2
    Visitor II
    May 17, 2011
    Posted on May 17, 2011 at 14:04

    We have put together a brief tutorial ''Simulating through the Bootloader'' for guidance:

    http://www.crossware.com/arm/tutorials/STM32/bootloader/index.htm

    adaniel
    adanielAuthor
    Associate III
    May 17, 2011
    Posted on May 17, 2011 at 14:04

    Thanks guys to all of you! This has been of great help. I finally got the bootloader disassembly by 3 different ways:

     1 - Thanks Clive1 for your attachment. That is all what I needed.

     2 - Keil's RealView debugger with Keil's Ulink. STmicro's STlink doesn't show the bootloader.

     3 - Keil's simulator doesn't show the bootloader, but I could load its intel HEX file in the disassembly window! (I generated the HEX file from the binary download).

    So far I didn't succed to achieve what I wanted: finding an entry point bypassing the ports setup. Clive1 I tend to accept your suggestion that it would be much easier to re-write a new bootloader from scratch.
    damh
    Associate III
    May 17, 2011
    Posted on May 17, 2011 at 14:04

    I have reengineered it for a while.

    I agree with clive. Rewrite the bootloader. The code isn't very clever and you cannot know, where to jump. The addresses of all functions aren't constant.

    The bootloader has only one advantage. It cannot be destroyed by dumb code, bugs, ...

    cortex
    Visitor II
    May 17, 2011
    Posted on May 17, 2011 at 14:04

    I've created simple M0/M3 disassembler just for those situations where you need to quickly disassemble binary file or dump.

    You can get it here 

    http://digital.codewaves.com/

    adaniel
    adanielAuthor
    Associate III
    May 17, 2011
    Posted on May 17, 2011 at 14:04

    I absolutely agree with you and Clive1.

    Meanwhile, I found a very stupid hardware turnaround: a pullup resistor solved the problem...

    So I'm dropping the whole idea, but the discussion here was very interesting.