- Details
- Hits: 2490
Today, it is exactly three years since I released version 1.0.0 of WUDSN IDE - (to himself) Wow. I can safely say that I never thought it would become so rich in features and widely used in terms of platform. I am sure it would have failed if I had started with these goals in mind. The same goes for the video tutorials. I started them because I found it too hard to re-write the feature list into proper documentation. And they turned out to be how to get information to the consumers. With the new recording equipment, this is also easy for me, and I plan to create a "Coding an 8-bit oldschool cracktro in 15 minutes" tutorial soon after the next release.
- Details
- Hits: 4048
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 for which 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 are stable now. Here's the complete list of enhancements and fixes.
Menu
- New context menu "Convert" for converting all decimal, hexadecimal ($123), and binary (%010101) numbers in a selection into a standardized byte-aligned representation.
- Context menu entries "Convert" and "Sort" for text editors are 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 work correctly now. Proper use of white spaces after instructions and a maximum of one block per source line is 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, and XASM.
- Default compiler options for XASM are extended by "/p" to enable fully qualified file names, so error messages are associated with the correct file.
- The preferences tabs for not configured compilers 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 compilers they do not use. 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 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 a program's type and start address is only contained in the directory structure. 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
- The extended section "WUDSN IDE" includes mainly the documentation from the website.
- Video links to the tutorial and release news
- Features
- Installation
- FAQ
- Credits/Links
- The new section, "Assemblers," includes information on the supported assemblers and their properties.
- General - links, syntax, and support features
- Instructions - all supported instructions, including their descriptions, grouped by type
- Manual - direct access to the PDF, HTML, or text manual file or files that are part of the compiler installation
- The new section, "Hardware Platforms", includes information on the supported hardware 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
Fixes
- The first character of numbers is now correctly highlighted in #123.
- The source file include directive "INCSRC", is now correctly detected for ASM6.
- Details
- Hits: 2557
Useful things first. As learning from "update disaster", I have extended the update site. If the update fails or the installed version has 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 "https://www.wudsn.com/update" or previously released versions starting with 1.6.0 from "https://www.wudsn.com/update/1.6.0", "https://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 give kudos via Facebook.
- Details
- Hits: 3751
A bug in 1.6.1 can cause lockups when typing the "." of a directive that 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 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" were 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
- The default color for illegal opcodes changed to red as it was intended.
- German localization for the graphics editor is finally completed
- Sorting of applications in the preferences now is "Default, A...Z, User Defined" also in non-English localizations
- Details
- Hits: 3948
After 13 months of development, the new version is ready and released. It contains so many improvements and fixes that the most challenging part will be rolling them all out in a structured way. That is why I'll group the features, fix them together per topic this time, and mention the same thing multiple times 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 is to roll the version out to you. The new features are not yet described on the tab "Features" on WUDSN IDE, and there are no screenshots 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 note down your settings because some might be gone afterward.
- 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 the graphics editor.
Atari 7800
- Atari 7800 was added as a supported platform, with EMU7800 as the 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}"
- The default command line for Altirra now includes the new "/singleinstance" option, so the emulator must not 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 assistance 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 positioned to the first error or warning. Now, you may also choose to place the cursor only on the first error and ignore warning messages for positioning. This is helpful when cleaning up large projects with many warnings, such as unused labels in decompiled executables.
- Syntax highlighting now correctly recognizes identifiers, labels, and numbers and whether they are parts of other identifiers.
- Hyperlink navigation for compound labels "foo.bar" is now resolved to "foo" or "for.bar", depending on the part of the identifier the cursor is pointing at
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 has 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 note that you must close and re-open the file to take effect.
Compiling
- A new preferences option, "Wait for the end of application", was 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 an emulator but a complex script.
- Am improved console output, including the date & time of compilation and the full command line for the compiler and application.
- Duplicate error messages caused by multi-pass compiling are now filtered out in the "Problems" view.
Emulators
- The 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
- The new source property "@com.wudsn.ide.asm.mainsourcefile=" can specify which main/parent source file comment shall be used when compiling a source include file.
- Error messages are now correctly attached to the include files, provided the files reside in the same or 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".
KickAss
- Constants, including their descriptions (that was a hell of a 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 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
- The new section "Assemblers" in the built-in help with links to the compiler help file or directory and a complete list of instructions grouped by their type.
- Video tutorial 7 added to overview.
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.
- The "Open Folder" command now works for objects that are no resources or files but can be adapted to one of these types—for example, project explorer entries for Java classes.