Tuesday
Jun242008
Building ABCDump
Tuesday, June 24, 2008 I spent ages trying to get abcdump to build, and I finally figured it out! Doh, it only works with Tamarin-Central and not tamarin-tracing. Without further adieu, the steps to get abcdump to work on OS X:
1) Get Tamarin-Central, and build it with the release
cd tamarin-central
xcodebuild -configuration Release -project platform/mac/shell/shell.xcodeproj
2) Get ASC$ svn co http://opensource.adobe.com/svn/opensource/flex/sdk/trunk/modules/asc <local-directory>
$ cd asc/build/java
$ ant
...
jar:
[jar] Building jar asc\lib\asc.jar
$ java -jar asc.jar
# shows usage
3) put asc.jar in Tamarin-Central/utils/asc.jar4) Build ByteArray.as
cd Tamarin-Central/shell
java -jar ../utils/asc.jar -import ../core/Builtin.abc ByteArray.as
5) Build abcdumpcd Tamarin-CEntral/utils
java -jar asc.jar -exe ../platform/mac/shell/build/Release/shell -import ../core/Builtin.abc -import ../shell/ByteArray.abc abcdump.asabcdump.abc, 28715 bytes written
abcdump.exe, 1504179 bytes written
6) chmod +x abcdump.exe7) ./abcdump.exe /path/To/yourScript.abc
8) ????
9) Profit!
For some reason, if I copy the abcdump.exe to /usr/bin, it won't execute :( But other than that it works.
tagged
Tamarin
Tamarin 
Reader Comments (4)
We should be able to get abcdump to work on tamarin-tracing. Some of the shell apis are different. (for example ByteArray). Conditional compilation in asc could sort out the differences.
I just fixed abcdump in TT
Bug in ABCdump?!
In my SWF there is a flash variable with strings and doubles. In the dumpfile there are just the strings and not the doubles: they are told to be 0 (zero), what is not correct!
I’m quite sure that the bug is in class MethodInfo, function dump, then "case OP_pushdouble:"
If you could help me to find the bug and maybe fix it I would be very happy and appreciate it !!!
Thanks for any help!!
Joe
Some lines of the dump:
42 pushstring "Publikumsfonds"
45 pushdouble 0
48 pushdouble 0
51 pushdouble 0
54 newarray [5]
56 pushdouble 0
59 pushstring "AMK"
62 pushdouble 0
65 pushdouble 0
68 pushdouble 0
71 newarray [5]
73 pushdouble 0
76 pushstring "Aktienfonds"
79 pushdouble 0
82 pushdouble 0
Sorry, ABCdump is working fine!
Seems that the bug is in Xcelsius, a tool from Business Objects (SAP).