WUDSN IDE update 1.6.3 released

After my vacation I was sufficiently relaxed to sit down and decide to get ONE thing DONE instead of starting the next cool - but never finished - thing. So here's the update the C64 people have been waiting for (too long). The parser has been extended to handle the block definition of KickAss. Also the Apple II support and the dynamic online help have a stable state now. Here's the complete list of enhancements and fixes.

Menu

  • New context menu "Convert" for converting all decimal, hexa-decimal ($123), binary (%010101) numbers in a selection into a standardized byte-aligned representation
  • Context menu entries "Convert" and "Sort" for text editors is now also available via the main menu "Edit/Sort"
  • Context menu entries "Convert" and "Sort" prompt for removing the read-only property of a file when required
  • For all contributed menu entries the mnemonics are maintained correctly now

Compilers

  • Generic block support for KickAss, i.e. detection of "{" and "}", so the content outline and the source folding works correctly now. Proper use of white spaces after instructions and a maximum of one block per source line are of course required
  • Download archive compilers.zip updated with KickAss 3.25 and CA65 2.13.3 (in preparation)
  • Log file parsing implemented where missing and improved towards include file handling for ASM6, ATASM, DASM, MADS, KickAss, XASM
  • Default compiler options for XASM extended by "/p" to enable fully qualified file names, so error messages are associated with the correct file


KickAss content outline and source folding
Preferences

  • The preferences tabs for compilers which are not configured now show the message "Path to ... compiler is not set in the 'Assembler' preferences". This simplifies the configuration because users are not distracted by options for compiler they do not use at all. I would have preferred hiding the unused tabs completely, but SWT does not support this

Emulators

  • The Apple II hardware is now fully supported. The emulators AppleWin, JACE and Virtu are available with their defaults in the preferences

Disk Image Creation

  • When compiling and running for the Apple II hardware, the IDE automatically creates a bootable ".dsk" disk image in addition to the object file. The creation of the disk image allows direct execution in Apple II emulators which would not be possible otherwise because there is no such thing as an executable file format on Apple II. Instead the information about the type and start address of a program are contained in the directory structure only. The Java based API of AppleCommander 1.3.5 is used for creating the disk image

Disk Image Editors

  • A disk image editor for Apple II disk images based on the SWT version of AppleCommander 1.3.5 has been added

Online Help

  • Extended section "WUDSN IDE" - mainly the documentation from the web site
    • Video links to the tutorial and release news
    • Features
    • Installation
    • FQA
    • Link
  • New section "Assemblers" - the information on the supported assemblers and their properties
    • General - links, syntax and support features
    • Instructions - all supported instruction including their descriptions grouped by type
    • Manual - direct access to the PDF, HTML or text manual file or files which are part of the compiler installation
  • New section "Hardwares" - the information on the supported hardwares and the corresponding emulators and links
    • Reference documentation - Hardware specific PDF, HTML or text files with CPU and customer chips reference sheets and programming guides


Integrated Help
Fixes

  • First character of numbers is now correctly highlighted in #123
  • Source file includes via "INCSRC" are now correctly detected for ASM6

PayPal, Facebook ... and some really useful things

Useful things first. As a learning from "update disaster", I have extended the update site. If the update fails for whatever reason or if the installed version turns out to have severe issues you can uninstall it via the link "What is already installed" in the "Install New Software..." dialog and restart the IDE. Then you can reinstall the latest version from "http://www.wudsn.com/update" or previously released versions starting with 1.6.0 from "http://www.wudsn.com/update/1.6.0", "http://www.wudsn.com/update/1.6.2", etc.

For those who like the IDE I have added buttons on the header to donate via PayPal or Flattr or simply give kudos via Facebook.

WUDSN IDE update 1.6.2 released

A bug in 1.6.1 can cause lockups when typing the "." of a directive which starts with ".". This should be fixed in this version, if not, please notify me. Platforms

  • New consistent icons for all platforms based on the icons Apple ][ Atari 2600 Atari 7800 Atari 7800 C64 NES from pouet.net
  • New Platform "NES" added
  • New Compiler "ASM6" with default platform "NES" added and included into download archive
  • New NES emulators "BSNES", "FCEUX" and "Nintendulator" added

Source Level Breakpoints & Debugging

  • Default compiler options for ATASM are now "-s -o${outputFilePath} -l${outputFilePathWithoutExtension}.lab ${sourceFilePath}" to enable label translation in Altirra
  • Default compiler options for XASM are now "/o:${outputFilePath} /t:${outputFilePathWithoutExtension}.lab /l:${outputFilePathWithoutExtension}.lst ${sourceFilePath}" to enable source level breakpoints and debugging in Altirra

Fixes

  • Default color for illegal opcodes changed to red as it was intended
  • German localization for the graphics editor is finally completed
  • Sorting of application in the preferences now is "Default, A...Z, User Defined" also in non English localizations

WUDSN IDE update 1.6.1 released

After 13 months of development, the new version is ready and released. It contains so many improvements and fixes that the most difficult part will be rolling them all out in a structured way. That why I'll group the features and fixed together per topic this time and mention the same thing multiple time when required. Currently I am not even sure if a single release news video will be enough to cover everything without driving me crazy and without demanding too much from the audience. And of course they will be bugs but I think the best way to find them it roll the version out to you. The new features are not yet described on the tab "Features" on WUDSN IDE and also there a no screen shots yet, but they will follow.

Installation

  • Because of the massive restructuring in the source and the packaging, please make sure you uninstall any previous version of WUDSN IDE first and remove all plugins named "com.wudsn...." in the "eclipse/plugins" folder of your installation.
  • Due to the restructuring in the preferences you should also note down your settings because some of them might be gone afterwards
  • Then you can install it as usual via the update site http://www.wudsn.com/update
  • Please note that the JDK 1.6.x or above as runtime is now mandatory

Atari 2600

  • Asymmetrical Playfield converter added to graphics editor

Atari 7800

  • Atari 7800 added as supported platform with EMU7800 as emulator

Atari 8-bit

  • Atari 800 Emulator added to preferences including the not so simple required Linux command line "xterm -e atari800 -keypad -run ${outputFilePath}"
  • Default command line for Altirra nows include the new "/singleinstance" option, so the emulator does not have to be stopped manually before pressing "Compile & Run". New default command line is "${runnerExecutablePath} /singleinstance ${outputFilePath}"

Editor

  • Directives, opcodes and identifiers can now also be case sensitive. This enables proper syntax highlighting and content assist for KickAss.
  • New outline type and separate icons for binary include files and binary output files (".SAV" in MADS, ".TO" in ACME)
  • New preferences setting to choose the handling of errors and warnings. By default the cursor is position to the first error or warning. Now you may also choose to position only to the first error and ignore warnings for positioning. This is helpful when cleaning up large projects which have many warnings, for example unused labels in decompiled executables
  • Syntax highlighting now correctly recognizes identifiers, label and numbers and if they are parts of other identifiers or not
  • Hyperlink navigation for compound labels "foo.bar" now resolved to "foo" or "for.bar", depending on the part of the identifier the cursor is pointing at
    Hyperlink navigation for compound labels

Compilers

  • All compilers can now be used on all platforms. The layout of the preferences has been adapted accordingly. You specify the path the compiler executable once and can customize its parameters then for every platform
  • Every compiler comes with a default platform, e.g. "ATARI8BIT" for MADS and "C64" for KickAsss
  • New source property "@com.wudsn.ide.asm.hardware=" can be used to specify the platform in a source file comment when compiling for a non-default platform, e.g. "@com.wudsn.ide.asm.hardware=C64" when compiler for C64 with MADS. Please not that you must close and re-open the file for this to take effect currently

Compiling

  • New preferences option "Wait for end of application" added to wait for every application to complete and record its output in the console window. This is useful in case you don't simply start and emulator but a complex script
  • Improved console output including date & time of compilation and full command line for compiler and application
  • Duplicate error messages caused by multi-pass compiling are now filtered out in the "Problems" view

Emulators

  • Emulator is not started now if the binary output of the compiler has zero length. DASM creates such files in case of fatal errors
  • Java based compilers like KickAss are now supported. The selection of the compiler executable now allows ".jar" files and starts them as "java -jar <file.jar>"

Include File Handling

  • New source property "@com.wudsn.ide.asm.mainsourcefile=" can be used to specify which main/parent source file comment shall used when compiling an include file
  • Error messages are now correctly attached to the include files, provided the include files reside in the same or in a sub-directory. Currently applies to ATASM, DASM, and MADS. The other compilers will follow of course

Source Level Breakpoints & Debugging

  • The "dream team" WUDSN IDE - MADS - Altirra is proud to present the first source level debugging for 6502 environments
  • New preferences variable "${outputFilePathWithoutExtension}" added as short form of "${outputFolderPath}/${outputFileNameWithoutExtension}"
  • DASM support completed. Default compiler options for DASM are now "${sourceFilePath} -o${outputFilePath} -f3 -v5 -l${outputFilePathWithoutExtension}.lst" and the ".lst" file is parsed for all types of errors
  • MADS default compiler options "${sourceFilePath} -o:${outputFilePath} -p -t:${outputFilePathWithoutExtension}.lab -l:${outputFilePathWithoutExtension}.lst"
    Source level breakpoints

KickAss

  • Constants including their descriptions (that was hell of job...) added
  • Case sensitive instructions are now supported
  • Case sensitive identifiers are now supported
  • The selection of the executable compiler now allows ".jar" files and starts them as "java -jar <file.jar>"
  • Label definitions can have a ":" suffix
  • Hyperlink navigation works for source includes via ".import", binary includes via "LoadBinary/LoadSID/LoadPicture", binary file output via "createFile"
  • Source folding for blocks work
  • Notes:
    • Only labels can start a column 0. Mark a block and press TAB/SHIFT-TAB to indent all code, vars and functions as required
    • Named blocks and macro definitions are not yet handled correctly, especially when they are nested
    • Some built-in functions like "sin()" are not yet highlighted

HexEditor

  • HexEditor detects and supports C64 PRG files now
  • Clicking on a block in the HexEditor outline now selects the corresponding block in the editor for easy copying

Online Help

  • New section "Assemblers" in the online help with links to the compiler help file or directory and complete list of instructions grouped by their type
  • Video tutorial 7 added to overview
    Instructions per compiler in the online help

Fixes

  • Clicking in the outline always positions the cursor correctly in the source, not only the first time
  • All names of content types are now translated correctly in the preferences
  • "Open Folder" command now also works for objects which are no resource or file themselves but can be adapted to one of these types. For example project explorer entries for Java classes

WUDSN IDE Tutorial part 7: New features in version 1.6.0

After 10 months, multiple adapters, cables, drivers and failures I finally managed to buy a working USB head set which is compatible with my PC. So I am able to continue my tutorial series today and present the new features and fixes.

Part 7: New features in version 1.6.0
Tutorial part 7