WUDSN IDE update 1.4.0 released

It's 4 am and the new release is finally out. I'll just summarize the new features and updates here and update the "Features" tab tomorrow since I really feel like I ought to be in bed now ;-)

Features:

  • Support for MADS and XASM directives is complete now. The definitions of folding and outline sections are now based on a descriptive configuration which can be easily adapted. This will make is quite easy to add additional platforms and compiler in the future with reasonable effort. The remaining coding for the parsing of MADS source for example is now down to 16 (!) lines.
    MADS directive definitions
  • Every type of section now has an own type icon in the content outline and the content outline now also recursively parses source include files on the fly. This allows the drill down into include files without even opening them. It is also the basis for the planned future features macro syntax highlighting and forward navigation. In the toolbar of the content outline, there is a toggle button for sorting the sections and labels. The state of the button is persisted automatically along with the respective source file. For files which do not have a setting yet, the setting from the currently opened file will be used.
    IDE content outline
  • The content outline folding and positioning now remains stable as you type. For example if you introduce a new label in a local section which is open, the tree will insert that label in the correct position and will keep the opened sections as they are.
  • The restriction that opcodes or directives must not start in the first column no longer applies.
  • The console for the compiler now has a localized title "Compiler Console" and is brought to front automatically when the compiler is started. This prevents the compiler output from being hidden behind other consoles in the console view.
  • Single line comment for the current line selection can be toggled using "CTRL-7" or the context menu entry "Toggle Comments".
  • The "Open With Hex Editor" menu entry now closes an existing editor in case the file is already opened and thereby forces the file to be opened with the hex editor. In addition the hex editor is set as the default editor this one file. As a consequence double clicking the file in the package explorer will open it automatically with the hex editor, no matter which type of file is actually is. This saves you from always using the context menu, just because the file has no known file type. You can change the default editor again by just using the "Open With" context menu entry.
  • The new graphics plugin is included as alpha-version. You can open the "Graphics Editor" via the context menu entry "Open with Graphics Editor" just as for the hex editor. Saving images and conversion from an image to files is no supported yet. The editor will try to default to a suitable converter based on the file size, file name and content. For example files of size 1024 and 2048 are assumed to be fonts. Files of size 7680 or 7684 bytes are assumed to be MicroPainter pictures. I even hacked in a support for opening compressed MicroPainter images based on the source of the excellent "FAIL (First Atari Image Library)" tool by FOX and his friends. Note that it works only for opening by now, not for conversion. I really like to say thanks a lot to FOX for the tips and the example files.
    IDE graphics editor

Fixes:

  • The "Assembler" menu is visible now only if an Assembler editor is active. The contained entries and their short cuts are disabled if no Assembler editor is active.
  • The output file is not deleted anymore before the compiler is started, instead it is only checked for being writeable. This allows for direct compilation into an existing ATR image.
  • The name of the application used to open the output file is now included in the info message.

Finally Progressing - The Graphics Plugin

Its been a long time since the last update so here are some news. The assembler and editor part is almost complete with many major and minor improvements especially regarding MADS. The whole project has been restructured to allow the addition of C64 assemblers and the the new "Graphics" plugin. This plugin is what I've always wanted to have ever since I started cross-platform development back in 1990. Since almost 20 years now I've been converting graphics to and from my Atari using "for" loops and any language you can think of. But I never got to complete the interactive converter with parameters I dreamed of. The first trial was done in the language "E" on my Amiga, the next was done in Delphi on my PC both never could be finished. But now there Eclipse and SWT and finally there is a first working version. To be honest some parts of SWT are far more complex than back in the days on my Amiga or with Delphi controls. For example it took me 3 days and 2 tutorials to get a properly scrolling and resizing image area. But on the other hand you get really high execution speed, flexibility and it will run under any operating system.
The alpha version will be part of WUDSN IDE 1.4.0. It includes loading and displaying fonts, bitmaps and sprites from Atari and C64 and the creation of ".cnv" conversion parameter files so you can repeat the conversion for example when the original files have changed. The conversion will also work in the other direction of course. New converters are pluggable via an extension point.

The graphics editor

WUDSN IDE update 1.3.2 released

Welcome to the "M&M" release featuring support for Mac OS X and MADS content outline You can use the menu entry "Help/Software updates/Available Software" to update from version 1.2.0 to 1.3.2. Note you have to uninstall version 1.2.0 explicitly before installing version 1.3.2 this time because of the restructuring of the packages and extended preferences settings. After the installation the have to set some of the preferences again, since there are more options available now and some options have moved.

WUDSN IDE on Mac OS X
Features: See the tab "Features" on WUDSN IDE for screen shots

  • Support for Mac OS X consists of the corresponding binaries for Mac OS X (Intel and PowerPC) contained in the updated download package and the support for Mac OS X default application. This means that by default the same application is used to open the output file as is normally used when you open the file in the Finder. See the news from 2009-07-22 for the details on the binaries.
  • Support for MADS content outline currently handles labels, equates, "ORG", ".PROC", ".MACRO", ".LOCAL" and ".IF" directives as well as all binary and source include directives. You can open the view via the menu "Window/Show View/Outline", in case it is not open yet. The parsing support is not complete yet but usable already. Completing it is my next major task. There also is one restriction which should not disturb: If you place opcodes or directives in the first column, they are consider labels. This is for performance reasons to keep parsing fast and will probably remain for performance reasons also in subsequent releases. But as mentioned before, this is not the case in normal source anyway, so it should not hinder you from anything.
  • Split preferences pages for editor setting and compiler plus emulator settings.
  • Dedicated support for Atari++, Atari800MacX, Atari800Win in the preferences including download link, default command line and explicitly specified command line to open the output file.
  • Application or emulator to open the output file can be configured per compiler.
  • When using "Compile and Run", the application used is output as info message.
  • Configurations for different emulators and one user defined application can be maintained in parallel, which is useful for testing.
  • Support for zero-configuration start of the emulator based on the default application based the file extension specified for the output file.

Fixes:

  • Content outline sometimes only found the first macro definition.
  • Folding did not show up in all situations.
  • Under Mac OS X, the file select dialog can now choose an "*.app" application like "Atari800MacX.app" even though this is folder. The solution is a workaround for a general Eclipse problem under MacOS X, see BUG 82155.

Site Update:

  • Section "Preferences" split into "Preferences for editing" and "Preferences for compiling.
  • Section "Installing Atar800Win" renamed to "Installing Atari800Win and other emulators", rewritten and extended"
  • Feature section updated with new screen shots.

Site Update

  • The archive containing all supported Atari compilers has been updated. It now includes the Linux versions provided by me and CAS and the Mac OS X versions provided by Spookt. Thanks a lot to Tebe for the update of MADS so it runs smoothly under Mac OS X and Linux now. The most recent version of the following table is available on the tab "Installation" on WUDSN IDE from now on.

    CompilerOperating SystemArchitectureCompiler VersionExecutable Path
    ATASM Windows Intel - 32 bit 1.06 ATASM / atasm.exe
    ATASM Mac OS X Intel 1.06 ATASM / atasm.macosx-intel
    ATASM Mac OS X PowerPC 1.06 ATASM / atasm.macosx-powerpc
    ATASM Linux Intel - 32 bit 1.06 ATASM / atasm.linux-i386
    MADS Windows Intel - 32 bit 1.8.8 MADS / mads.exe
    MADS Mac OS X Intel 1.8.8 MADS / mads.macosx-intel
    MADS Mac OS X PowerPC 1.8.8 MADS / mads.macosx-powerpc
    MADS Linux Intel - 32 bit 1.8.8 MADS / mads.linux-i386
    XASM Windows Intel - 32 bit 3.0.1 XASM / xasm.exe
  • The description on how to configure the "Problems" view correctly is now included in the section "Installing Eclipse" and in the FAQ. This step has to be performed once after the installation since the default configuration is not suitable for assembler files.

WUDSN IDE update 1.2.0 released

After a major rework a lot of new features were added and the first usable version of the MADS integration is available now. Now "only" content outline and label file creation are not available yet. I know may people are waiting for the content outline, but I first had to get the syntax for all definitions of pseudo opcodes and directives straight and had to extend the parsing to block comments. Otherwise parsing for a content outline is simply not possible. And comparing the 61 definitions in ATASM (described in an English manual) to the 168 (!) definitions in MADS (described in a Polish manual) you may understand what kept me busy in the past weeks. And without the great support from Tebe for the technical details it would surely not have been possible! Also my wife did a great job in translating the relevant sections of the MADS manual for me, so thanks for that!

Unfortunately the starting the emulator automatically on Mac OS X does not work yet. At least if have Mac OS X emulation up and running now for my tests and found out that the problem is passing parameters to the "open" command in addition to the binary file name.

You can use the menu entry "Help/Software updates/Available Software" to update from version 1.1.0 to 1.2.0.

Features: See the tab "Features" on WUDSN IDE for screen shots

  • Syntax highlighting complete for all MADS pseudo opcodes and directives.
  • Compiler log parsing and source positioning complete for MADS including recognition of errors from source include files.
  • New menu entries to directly open the source and the output folder.
  • New Console view with original compiler output opens automatically in the background after compiling which useful in cases where the plugin is not yet complete.
  • ATASM ".bank" warnings are mapped to info messages.
  • Size of output file now also given in hexa-decimal notation.
  • Support for several single line comment delimiters per compiler.
  • Support for several multiple lines comment delimiters per compiler.
  • Support for several string delimiters per compiler.
  • Automatic append of ".asm" extension for "ICL" source includes in MADS, if extension is missing.
  • Automatic append of ".asx" extension for "ICL" source includes in XASM, if extension is missing.
  • New "Open Folder" context menu available for all folders and files.
  • New "Sort" context menu with sub-menu available for all text files.
  • "Open with Hex Editor" context menu entry now also supports multi-file selection.
  • Preferences automatically activate the tab for the compiler of the active editor upon opening.
  • Improved handling and message for misconfiguration and errors during launching of compiler and emulator.

Fixes:

  • The "OK" and "Apply" buttons in the preferences are now always enabled, irrespective of the specified compiler and emulator paths.
  • Focus back in editor window after compiling.
  • Automatic positioning to line of the first error or warning after compiling.
  • Syntax highlighting of illegal opcodes fixed, now also uses the preferences setting.

Site Update:

  • New section "Is there source version control?" added to FAQ.
  • New section "Why is ATASM the primary compiler?" added to FAQ.
  • Feature section updated with new screen shots.
  • Configuration of file associations added to section "Installation".