Monthly Archive for March, 2007

XTrace 1.1

At last XTrace 1.1 is out the door! This has been a long time coming, and has alot of changes & new features:

  • CMD+Shift+C now clears the log window
  • XTrace now automatically starts the trace server
  • Added the Sparkle (auto updating) framework
  • Added the ability to disable wrapping in the log window
  • Added the option for window auto-close (log window will close when the SWF it is connected to closes)
  • New icon thanks to Ale!
  • Log message coloring/formatting thanks to Daniel Giribet
  • Compiled & tested as a universal binary

I’ve recorded a quick tutorial on how XTrace works. If you’re new to XTrace, or just want a quick refresher I encourage you to take a look.

If you would like to get involved with development, please send me an email! If you have a feature you want added contact me and I’ll give you SVN access you so you can contribute to the project!

I want to give a big thanks to everyone who contributed ideas/code to this update, it’s great to see other people using my software and contributing time & effort to make it better for the flash community.

Actionscript 3

A lot of people have asked about Actionscript 3 support. Although I don’t use AS3 yet, someone is working on a port of my debug class to AS3 which will allow XTrace to work with AS3.

Zeroi Support

The folks over at Zeroi have created a plugin (modified

debug

class) that allows XTrace to work with Zeroi. If your a Zeroi user, or even if you aren’t, you may want to check it out.

Domain Change!

Just a quick notice, this blog is now ‘officially’ hosted on mabblog.com not developer.mabwebdesign.com. I eventually want to phase out the developer.mabwebdesign.com domain completly, so if you could update your RSS feeds/bookmarks/whatever accordingly I would greatly appreciate it.

Thanks!

mach_override on Intel Macs

I was disappointed last month when after a hour or two of hacking I couldn’t get mach_override (evil, I know) to work on my new MacBook Pro even though it had been ported to intel macs. I added myself to the

procmod

group and tried everything that google could come up with, but I could only get it to succesfully override local functions, it wouldn’t override any library/system functions no-matter what i did.

Today I’ve found the solution on the ExtendAMac mailing list hosted on sourceforge: this simple post contains a small patch that seems to fix all the issues I’ve been having. There doesn’t seem to be any replies to the post on the mailing list, and the post wont come up on any google searched related to mach_override on intel macs – pretty frusterating when you don’t know about the ExtendAMac mailing list. The solution is very simple, replace this block of code:

static AsmInstructionMatch possibleInstructions[] = {
    { 0x1, {0xFF}, {0x90} },                    // nop
    { 0x1, {0xFF}, {0x55} },                    // push %esp
    { 0x2, {0xFF, 0xFF}, {0x89, 0xE5} },            // mov %esp,%ebp
    { 0x1, {0xFF}, {0x53} },                    // push %ebx
    { 0x3, {0xFF, 0xFF, 0x00}, {0x83, 0xEC, 0x00} }, // sub 0x??, %esp
    { 0x0 }
};

with this:

static AsmInstructionMatch possibleInstructions[] = {
    { 0x1, {0xFF}, {0x90} },    // nop
    { 0x1, {0xF8}, {0x50} },     // push %eax | %ebx | %ecx | %edx | %ebp | %esp | %esi | %edi
    { 0x2, {0xFF, 0xFF}, {0x89, 0xE5} },        // mov %esp,%ebp
    { 0x3, {0xFF, 0xFF, 0x00}, {0x83, 0xEC, 0x00} }, // sub 0x??, %esp
    { 0x0 }
};

Hopefully this helps someone who was banging their head against the wall trying to figure this out like I was!