Archive

Posts Tagged ‘Debugging’

Alcon 3.1 Update

April 5th, 2009 No comments

Although Alcon version 4 is currently under development I’ve decided to release a small update for Alcon 3, version 3.1 since I’ve received a code signing certificate from Adobe and wanted to keep up with re-releasing the now-signed application on the AIR Market Place.

Besides that Alcon is now code-signed there is exactly one new feature in v3.1 which I called Key Tracer. You can toggle Key Tracing Mode from the Log menu. If you enable it you are able to press any keys and their key code (and if available character code) will be listed in Alcon’s output window which is a useful feature if you want to know the codes for some specific keys quickly.

More features where planned (and already started) like a Search function, Log Level Filtering and even a Calculator but these haven’t made it finished yet into v3 so most of them will come with version 4, which is – yet again – a complete re-write (I do loathe my source code that is over one year old ;) ).

The newest version can as always be found here.

Categories: Dev Tags: , , , ,

Customizing toString()

September 8th, 2008 11 comments

When writing classes for a framework I usually put a custom toString method into important classes so that debugging becomes easier. Normally they would go like something along the lines of:

override public function toString():String {
	return "[ClassName]";
}

… Sometimes adding properties to the returned String that give back information about the class, e.g.

override public function toString():String {
	return "[ImageClass, size=" + _size + "]";
}

But writing them rigid like that is a disadvantage when you decide later to refactor class names. Admittedly it’s also not a very elegant way so I got the idea to take the class name that is returned by getQualifiedClassName(). The only problem is that getQualifiedClassName not only provides the type name but also the whole package String of the class. Regular Expressions to the rescue! After twiddling around with them for a while (I’m by no means a RegExp expert) I got my toString method into the shape that I desired:

override public function toString():String {
	return "[" + getQualifiedClassName(this).match("[^:]*$")[0] + ", size=" + _size + "]";
}

This way it matches the String returned by getQualifiedClassName with the Regular Expression [^:]*$ which checks from the right end for an arbitrary text up to the first occurring colon, but without including the colon. Taking the first element of the Array returned by match() and you got what you need!

A nice way of using this is when writing abstract classes that contain the toString method and any subclass can use that toString method without the need to override it … that is of course unless you want ot add other output information.

Alcon 3 Out Now!

August 25th, 2008 4 comments

It took longer than expected thanks to obstacles like a crashed harddisk and other minorities in between but it’s finally done and I now can announce the immediate availability of Alcon 3! It runs currently on Windows and Mac and hopefully soon on Linux too. When I tested it on Ubuntu it installed and started fine but the LocalConnection seems not to cut it in the current alpha release of the Linux AIR Runtime. Anyone know more details about this?

I recommend to check out the Alcon Page for more details and of course the download link. Enjoy your debugging!

Categories: Dev Tags: , , , ,

Alcon 3 Preview

August 21st, 2008 11 comments

Since so many of you (well, at least four people) are feverishly waiting for the release of Alcon 3 here’s a preview screenshot to comfort your waiting time. The shot shows Alcon’s trace output panel with some bogus Array being traced iteratively and as a hex dump. the top of the window displays Alcon’s new App Monitor which can be used to monitor framerate, frame render time and memory consumption. It also shows the version of the runtime that the monitored application is run in (clicking on the version text will list all System.capabilities properties in the Trace panel).

Then there’s the Options dialog with Trace options opened where you will be able to set font, colors etc. On the File Loggers Options you will be able to optionally enable up to two File Loggers that can be used for example to log the flashlog.txt to see output made by ActionScript’s own trace method.
There’s of course the new Object Inspector and a new Help panel for Quickstart Help and API Docs. Alcon 3 is being written 99% in ActionScript 3 using FDT (the 1% left being the Main.mxml that is necessary to compile a Flex application). It’s only a matter of a few days now until release, some bug fixing, finishing touches and a few more documentation to write and it will be out so please endure!

Categories: Dev Tags: , , , , ,

Announcing Alcon 3

July 23rd, 2008 7 comments

Alcon 3 is in the works! The new version is being written for Adobe AIR and that means no more hackish OS integration! Thanks to AIR the debugging tool will run nice and smooth on any supported OS and it will restore your windows size and position where you last left it, Stay On Top works properly, auto-update etc. etc. etc.

Some of the new features besides the already existing Trace Command and File Loggers are a Memory Consumption and Frames-Per-Second Monitor, a completely new and improved Object Inspector that is finally useful for Debugging, an Options dialog to comfortably configure Alcon, proper AS2 support and a couple of other minorities here and there.

The progress moves on quick enough that I dare to say that the release date is only a few weeks away from now so sit tight, it’ll be there in a heartbeat.

Categories: Dev Tags: , , ,

Alcon 2.0 Public Beta released

April 29th, 2007 5 comments

I’m happy to announce that Alcon 2.0 has finally been made public. The new version was completely rewritten using ActionScript 3 and Flex 2 and contains several new features that I missed in version 1. The most significant additions are the following:

– Output of up to four log files. You can define which log files to output by changing the settings in the AlconConfig.xml file. Like this it is easily possible to watch the flashlog.txt file that can be created with the Flash Debug Player (more info on this here and here).
– Alcon now features an Inspect panel for inspecting objects.
– A hexadecimal dump of an object can be made. Don’t ask me what this might be useful for now but you never know. ;)
– Alcon now features a stopwatch that can be used to measure passed time more easily.
– You are now able to monitor the current host application’s stage framerate and memory usage.

For more info and download check out the Alcon page over at osflash.org.

Please note that this is a beta version! It still has bugs and the Debug class for ActionScript 2.0 is not yet included.

Categories: Dev Tags: , ,

Alcon v1.0.8 – Added AS3.0 Support

July 12th, 2006 4 comments

I’ve updated Alcon (ActionScript Logging Console) to v1.0.8! The only thing that has been added in this version is a Debug Class for use with ActionScript 3.0, everything else hasn’t been changed. The AS3.0 Debug Class can be found in the com.hexagonstar.util.debug package.
Note that you must use Debug.trace() since I’m not even sure if it’s somehow possible with the MXMLC to redirect to a custom trace method (like it is possible with MTASC). If you got any hints on this, please let me know! The new version can be found as always on it’s page at the Flash Game Programming Wiki! Enjoy!

Categories: Dev Tags: , ,

Alcon – ActionScript Logging Console

July 25th, 2005 4 comments

Alcon is a lightweight external output console for Flash ActionScript that allows developers to view debugging information without relying on the Flash IDE. SWF files can be debugged and monitored no matter if they are in the web browser, Flash Player or a standalone executable. While that Alcon tries to keep inclusion into projects as simple as possible. In fact all that needs to be done is importing the Debug class into a project and you are ready to send debug information to the console with a simple Debug.trace() command.
Included into a project Alcon keeps a small footprint and takes less than a Kilobyte of filesize while still offering some other helpful features.

Categories: Dev Tags: , ,