1 0

Better FlashDevelop!

Alright, I have to say it out loud that I haven’t had so much fun working on an IDE after Visual Studio 6. Flash Develop is definitely one of the best IDEs for professional flash programming out there. I’ve worked with Flex/Flash Builder, FDT and IDEAj but after spending some time with these IDEs, I believe they’re bloated with over-engineered features that don’t belong in the Flash environment. If there is anything that Flash Develop lacks against these IDEs, it is better Refactor support.

Anyhow, this post is not about which IDE is better. I’ve worked with Flash Develop for a long time now and there are some plugins that I’ve used to increase my productive time. These plugins make your development faster and much more robust. I thought I should make a log of these plugins and if they would help anyone using Flash Develop in their routine development.

Name: Ant Plugin
URL: http://code.google.com/p/fd-ant-plugin/

Anybody working on projects with multiple targets or components cannot avoid the power of ANT. ANT is the definite tool for automating builds and continuous integration. This plugin simplifies the process of integrating ANT in your project. You can drag drop your build targets into your project panel and build targets selectively. Highly recommended.

Name: NME Target
URL: http://www.flashdevelop.org/community/viewtopic.php?f=4&t=9309

Haxe is amazingly simple to port your flash environment to and anyone coming from the flash world can pick it up fast. What makes it even better is the fact that FlashDevelop is the best IDE to develop in Haxe. If you’re working on an NME project,this plugin will help you immensely. The plugin will put multiple build targets to your FD toolbar. You can select a target like Flash, HTML5 or Android on the fly. The toolbar is customizable as well.

Name: Project Export
URL: http://www.flashdevelop.org/community/viewtopic.php?f=4&t=4641

This plugin was one of the first Flash Develop 4 plugins I used and before I found the ANT plugin. It helps you with many regular tasks on any project. For example: Create Documentation,export your deployment directory etc. If you’re not ANT savvy, this plugin can ease some of those tasks.

Name: Export SWC
URL: http://sourceforge.net/projects/exportswc/

Building SWCs is one of the core components of Flash development. You do not need the FlashIDE for building an SWC anymore. This plugin makes it very easy to build an SWC from you current project.

Name: Quick Navigate and Navigation bar
URL: http://code.google.com/p/fd-quick-navigate-plugin/


URL:https://github.com/JoeRobich/fd-navigationbar

I really missed the quick navigation of Visual Studio and these two plugins make it a snap to find and navigate through your code. The quick navigation dialog can find code, variables through string matching. The navigation bar adds visual studio like class and function/property dropdowns under your Flash Develop toolbar. Really handy!!

Name: SlimTimer
URL: http://code.google.com/p/fd3slimtimer/

I always wanted to track time on my development environment for clients or my job. This plugins integrates with the SlimTimer service and logs your projects automatically. It’s integrated really well and does not get in your way. Highly recommended if you want to track your time and it is for FREE!!.

Apart from some plugins that I use for Flash Develop, there are some snippets that help me with certain requirements. So here goes:

Name: SVN Revision info generation
URL: http://www.blixtsystems.com/2008/05/svn-version-control-in-flashdevelop-projects/

Name: Build Organization
cmd.exe /c “xcopy /Y $(OutputDir)\$(OutputName) $(OutputDir)\$(BuildConfig)\”

Just put the above command in your post build field and it should automatically move your debug and release swfs in respective folders. Very handy!!

Let me know if you guys know of any other useful plugins or scripts.

Read full story »

WCK vs NAPE

Update:  The NAPE demo is updated for rotation as pointed out by a reader. However, I see that it made no difference to the benchmark. Let me know, how it works for you guys.

I don’t like to deliver useless speeches on current affairs and by that I definitely mean the Flash death fiasco that spawned a while back. Adobe announced that that they were making Alchemy a commercial product that rang my ears because we were using Alchemy in a project and it’s about to go into production. Adobe announced recently that older Alchemy products will not work in Flash Player 11.2+. This was definitely a painful decision to make but we had to look for alternatives, e.g. Apparat, Haxe etc.

I searched for alternatives to WCK and stumbled upon NAPE in the next search. It was surprising how many good reports I saw about Nape and the absence of a native Flash Physics engine. I know about APE but it’s outdated and isn’t in active development any more. I had to test NAPE before I could make a decision. So, I searched for a test and I found this. The test is good and shows the comparison between WCK and NAPE on Desktops and Mobile platforms. However, there is one thing missing from this test that I had to test myself. For 2D accelerated APIs, I had Starling and ND2D in the contender list but I chose the former for its better API. I’ll check Starling later as well. The test below was originally posted on ND2D site but doesn’t work anymore. I recreated it to work on current FP11 releases. For now, check out the two demos:

 

 

 

 

 

 

 

 

 

 

 

 

To test these demos, you must be on FP11.1 for WCK. FP11.2+ will not run WCK or any Alchemy SWF, so if you get a blank screen, it’s definitely because you’re running FP11.2. For me the results of these demos are somewhat strange. The demo has 1000 balls in it. The Machine I am running these demos on:

Processor: Intel Core i5 2500k 4.6Ghz
RAM: 16GB DDR3 1833Mhz RAM
GPU: GTX 560 Ti DF 1GHz 1280MB

WCK:

FPS:  Initial 25-26, Settling 33-36, Settled 52-60 (Note:  Messing with the settled balls brings the FPS down to 35FPS for 3-6 seconds)
Memory: Initial 23-28MB, Minimum 22MB, Maximum 36MB
GPU Load: Initial 12%, Movement 3%, Settled 26%
GPU Memory: 286MB
SWF Size: 361KB

NAPE:

FPS:   Initial 35-40, Settling 52-53, Settled 60 (Note:  Messing with the settled balls keeps the FPS at 60FPS, which is amazing)
Memory: Initial 15-16.1MB, Minimum 15MB, Maximum 33.4MB
GPU Load: Initial 1-3%, Movement 12%, Settled 26%
GPU Memory: 268MB
SWF Size: 309KB

NAPE is the definite winner. You may download the sources for yourself and test the demos. I’d be glad to know results in different browsers from users or mobile machines.

WCK Sources
NAPE Sources

Read full story »

The Troubled Sandy Bridge Platform – Error Codes 0D, 62, 94, D2

The Sandy Bridge platform has seen quite a lot of down hill turns in his short life time. First the Cougar Point issue, then a series of Processor and Motherboard delays, and the P67/Z68 Fiasco and the failed attempt to keep the platform up to date with bios and driver releases. Of course, the third party manufacturers like ASUS, Gigabyte and MSI have their share of bad support for the platform as well but it’s mainly Intel that’s to blame. People have faced so many issues on the Sandy Bridge platform that it feels flaky at best. I just wonder my PC would shutdown any moment. It’s happened to me and a lot of other people.

Apart from many of the “bigger” and “widespread” issues with the Sandy Platform, like the one I blogged about some time ago, there has been another issue that’s been plaguing the users of Sandy Motherboards. The issue has something to do with no POST on cold boot and the following error codes:

0C-0D - Reserved for future AMI SEC Error codes

62 - Installation of the PCH Runtime Services

94 - PCI Bus Enumeration has started

D2 - PCH Initialization Error

There is no detailed information about these error codes in the manuals or the AMI website. I picked those definitions up from my P67 manual. I believe it should be the same for all Sandy Bridge motherboards with EFI bioses. Let me go through the error for reminder’s sake:

On a cold boot, your monitor will not show any display and your motherboard won’t POST. If you have the internal speaker attached to your motherboard, you will hear beeps about those error codes as well. However, the error is specifically noticeable when you look at your motherboard physically. The following signs should tell you what’s going on

1. Your VGA LED next to your PCIExpress x 16 slot is constantly lit.

2. If your motherboard has Q Code or Debug Code LEDs on it, you will see it either stuck at 0D62 or 94 or in rare cases at D2.

3. Your Motherboard boot LEDs might be constantly lit as well.

If you’ve seen any of the above symptoms, you may have scoured the internet for a solution. The issue happens to be more frequent in ASUS motherboards. People on the internet have exchanged their motherboards in hopes to kill the error, and some have been successful after an exchange but others have been unlucky. Some have pointed out that it’s because the PCI Bridge is dead/corrupted or damaged.

Some people have shifted from their primary PciExpress x 16 slots to their secondary slots x8 and the issue seems to go away. However, it has returned for some in that case as well. This is very frustrating if you’ve hit the issue.

Somehow, I was not satisfied with the sudden notion that the hardware went bad just like that. So, I searched myself and found all the same results and then I turned back to the motherboard manual and datasheets from the manufacturers themselves. I found this:

The Image tells us that the PCIExpress x 16 slot shares IRQs with other components on the motherboard. This sounds exactly like where it’s going. An IRQ conflict/sharing issue. I went to the ASUS motherboard pages to verify if the components shared bandwidth as well and I found this for the P8P67/P8Z68 Pro:

 *1: The PCIe x16_3 slot shares bandwidth with PCIe x1_1 slot, PCIe x1_2 slot, USB3_34 and ESATA12. The PCIe x16_3 runs at x1 mode by default for system resource optimization.(PCIe x1_2 will be disabled.)

The above note is only mentioned in the P8P67 Pro and lower models and the Deluxe/Extreme models do not have this note displayed. I can’t say if it is only for marketing but perhaps the upper models share bandwidth with the components as well.

Why, you ask? Because I solved the issue by disconnecting the USB3_34 Front Panel slots that share bandwidth with the PCIExpress x 16 slot. I have disconnected, reconnected, changed Graphic cards and slots to test my motherboard and it keeps working with the above solution.

This is strange and is possibly a fault in the BIOS. I recommend you to not upgrade to the Beta bioses posted by ASUS and other manufacturers. These bioses might damage your system because they threw the QA garbage over to the customers.

I’d be glad to know if this works out for any of you. It’s a detailed post, I know but I like to detail what caused the issue in the first place.

Read full story »
Page 1 of 1812345...10...Last »