April 2006 - Posts

Microsoft Releases Visual A++ (Object Oriented Assembler)

Today, the Redmond giant revealed the fruits of its hush-hush labours. Visual A++, or Object Oriented Assembler, is available as a free language add-on for Visual Studio 2005 and targets the .NET Framework.

It supports the full 80x86 set of opcodes, up to an including the new opcodes introduced in Intel's Prescott chip. A subsequent version, due out mid-summer, will include opcode support for some specialized AMD opcodes.

There are many obvious benefits of having things like a static register class, structured JUMP blocks, and writing device drivers in a class-based assembly language. Windows Vista will support device drivers written entirely in managed C# or VB code so Visual A++ is no doubt part of this strategy.

The version of Visual A++ that ships with Orcas is expected to add the ability to define custom processors and mix the unique opcodes from various processors through DLLs in much the same way that VB and C# work together.

This allows assembler programmers from any background to instantly write not just libraries and device drivers but also Windows Forms and Web Forms applications. The seasoned programmer can immediately see the benefit of switching from VB to Motorola 6800 Assembler for ASP.NET 2.0 development.

The most dynamite feature, however, is the full compatibility with classic MASM and TASM, meaning that any old piece of 80x86 code will compile and target the .NET Framework. Thexder, Deskmate, and Bedford Accounting are among the old DOS applications due to be re-released as full Windows applications in managed code early in 2007. No more than a mere recompile is required.

In fact, any EXE, DLL, or set of executable components can be decompiled into Assembly language, used in Visual Studio, and compiled to IL. Combine this with the Mono project and we may just see Microsoft Word or any Windows software suddenly become available for Linux.

Just think of what this will do to open up the markets for your software projects. Rumor has it that there is one team currently working on a fully-managed Windows XP port and a version of .NET that will run on Motorola and PowerPC processors.

This means that OSX may not be the only choice for your pre-Intel G4. It's about time that someone broke Apple's unfair OS monopoly on its own hardware.

Also exciting is a rumor that Microsoft developers are presently hard at work on A#, which is pure CIL integrated into Visual Studio. Developers may soon be able to use a cil{} block in C# to drop to Common Intermediate Language, just like C developers can drop to Assembler.

I would leave you to ponder the future of computing if it were not for my closing:

Happy Coding and Happy April Fools Day
- Shaun

with 0 Comments