Have a very smali Christmas!

December 25, 2009

As my Christmas present to everyone, I present smali/baksmali v1.1

This version has significant new functionality, and is much better able to handle the larger framework files that are floating around. There are a number of bug fixes as well.

As usual, you can grab the new versions from the googlecode download page

The changes for this version include:

  • Added support for a new .locals directive, which can be used instead of the .registers directive, to specify the number of non-parameter registers in the method
  • Added support for the --use-locals/-l option in baksmali, to use the .locals directive instead of the .registers directive
  • Added support for the --sequential-labels/-q option in baksmali, which causes baksmali to create label names using a sequential numbering scheme, instead of basin it on the bytecode address
  • Added support for automatically upgrading const-string to const-string/jumbo when needed and upgrading goto or goto/16 to goto/16 or goto/32 when needed
  • Added support for the --no-fix-string-const/-c option in smali, to prevent automatically upgrading const-string instructions to const-string/jumbo
  • Added support for the --no-fix-goto/-g option in smali, to prevent automatically upgrading goto and goto/16 instructions
  • Added support for the --no-debug-info/-b option in baksmali, to prevent the output of any type of debugging info (.local, .line, .parameter, etc.)
  • misc. bugfixes

Tags: ,



9 Responses to “Have a very smali Christmas!”

  1.   Tweets that mention JesusFreke's AndBlog » Blog Archive » Have a very smali Christmas! -- Topsy.com Says:

    [...] This post was mentioned on Twitter by Jermaine Maine, Drizzy Drake Rogers. Drizzy Drake Rogers said: Jesus Freke's Christmas present to us http://jf.andblogs.net/2009/12/25/have-a-very-smali-christmas/ [...]

  2.   vovkab Says:

    Thak you for your work! Only one question, how can i replace resource addresses with their type and name?

    Reply

    jf Reply:

    Not sure what you mean, sorry.

    Reply

  3.   Isaac Waller Says:

    Thanks for your hard work, smali and baksmali come in handy a lot when editing system applications like Market and Gmail!

    Reply

  4.   David Laotzu Says:

    Thanks for your great work. It really helps me!!!!
    I have one question: is it possible to transform the disassembly codes into java source codes format?

    Reply

    jf Reply:

    Nope, not currently. Unless you do it manually of course. I am aware of a project in the works to do this though :)

    Reply

  5.   Koush Says:

    Can smali be used to generate code at runtime? Specifically, does it provide an object model to generate code? (I’m not looking to actually output text assembly and compile that on the phone)

    Reply

  6.   myn Says:

    Nice release :)

    I was wondering if the /framework/services.jar issue has been resolved?

    A bunch of us have had issues in the past with Amon_RA’s RAv. We were unable to alter the services.jar.

    Thanks again for all

    Reply

    jf Reply:

    Can you be more specific? I left my crystal ball at home today :)

    Actually, I would prefer if you created an issue at http://code.google.com/p/smali/issues/list

    Reply

Leave a Reply