Jump to content
JAC!

WUDSN IDE: The free integrated Atari 8-bit development plugin for Eclipse

Recommended Posts

EPZ holly shit... how where did Peter Finzel got that... :) Atmas 2 is cool... but you need to get used to assemble and load files etc... I needed to get into it when we ressourected Hard unreleased source codes and I moved most of them to MADS.

 

So it's relativly easy... I guess most annoying was low/high byte as that could not be easily handled with "replace".

Share this post


Link to post
Share on other sites

Anybody tried installing Wudsn lately ?

Eclipse updated today and when it tried downloading wudsn it failed...

I've tried adding it using link "http://www.wudsn.com/update"but it doesn't show up.

Entering that link in browser shows "This domain name has just been registered" :(

Any ideas ?

Share this post


Link to post
Share on other sites

Thanks for the hint. Entering the link in the browser never worked, because there are just the Eclipse update files.
The "This domain name has just been registered" somehow was sent by my provider because there was no index.html.
Now I've also put a proper index.html there which sends a short notice and then redirects you to the installation.

  • Like 1

Share this post


Link to post
Share on other sites

So I thought about setting this up to start learning assembler again.

 

I'm using my Thinkpad with Fedora 27 , installed Eclipse, WUDSN , Atari800 ( was already installed ), Wine and downloaded Altirra 3.10 .

 

Everything works but I'm now up to Part 1 - Executables in the Tutorials and whenever I Enable the Debugger in Altirra64 , Wine64 just freezes after 5 seconds.

 

Anybody got a clue ?

Share this post


Link to post
Share on other sites

So I thought about setting this up to start learning assembler again.

 

I'm using my Thinkpad with Fedora 27 , installed Eclipse, WUDSN , Atari800 ( was already installed ), Wine and downloaded Altirra 3.10 .

 

Everything works but I'm now up to Part 1 - Executables in the Tutorials and whenever I Enable the Debugger in Altirra64 , Wine64 just freezes after 5 seconds.

 

Anybody got a clue ?

 

This seems to be related to using Altirra in Wine. I've seen the same effect on my Mac and this weekend on skr's Mac. Maybe posting the question in the Altirra thread will be beneficial.

If you use Linux, you may also try Atari800 as emulator instead.

Share this post


Link to post
Share on other sites

 

This seems to be related to using Altirra in Wine. I've seen the same effect on my Mac and this weekend on skr's Mac. Maybe posting the question in the Altirra thread will be beneficial.

If you use Linux, you may also try Atari800 as emulator instead.

 

 

Thanks, I have Atari800 installed but I'm trying to follow your tutorials which use the debugger in Altirra :)

Share this post


Link to post
Share on other sites

I'm using (and loving) wudsn IDE v1.6.6 to develop a frogger-a-like for the Atari 800XL and I encountered a bug in the wudsn IDE's "Char Set 1x1 - Multi Color" converter. I couldn't find anyone else talking about the bug here so I thought I'd share my fix.

 

There are a couple of bugs in how convertToFileData function for the converter processes data for multi-color fonts, using the wrong calculation for the number of columns and a bit of a mess in the inner loop for packing the bits for four pixels into a single byte of output. This is my fixed version:

function convertToFileData(data) {
    var columns = data.getImageDataWidth() / 4;
    var rows    = data.getImageDataHeight() / 8;
    var chars   = 256;
    var char    = 0;
    var bytes   = [];
    var offset  = 0;
    for (var r = 0; r < rows; r++) {
        for (var c = 0; c < columns; c++) {
            if (char < chars) {
                for (var l=0;l<8;l++) {
                    var b = 0;
                    var x,y,c1,c2,c3,c4;
                    x = c*4;
                    y = r*8 + l;
                    c1 = data.getPixel(x, y) & 0x3;
                    c2 = data.getPixel(x+1, y) & 0x3;
                    c3 = data.getPixel(x+2, y) & 0x3;
                    c4 = data.getPixel(x+3, y) & 0x3;
                    b = c1 << 6 | c2 << 4 | c3 << 2 | c4; 
                    bytes[offset++] = b;
                }
                char++;
            }
        }
    }
    data.setTargetFileObject(0, bytes);
}

(I'm new here and not certain of the etiquette, so I apologize if this isn't the right place for this post - just let me know :) )

  • Like 7

Share this post


Link to post
Share on other sites

I'm using (and loving) wudsn IDE v1.6.6 to develop a frogger-a-like for the Atari 800XL and I encountered a bug in the wudsn IDE's "Char Set 1x1 - Multi Color" converter. I couldn't find anyone else talking about the bug here so I thought I'd share my fix.

 

Welcome! Great to see new users sending such excellent feedback. Added it to the 1.7.0 development branch and the fixes list.

  • Like 1

Share this post


Link to post
Share on other sites

I'm using (and loving) wudsn IDE v1.6.6 to develop a frogger-a-like for the Atari 800XL and I encountered a bug in the wudsn IDE's "Char Set 1x1 - Multi Color" converter. I couldn't find anyone else talking about the bug here so I thought I'd share my fix.

 

Welcome! Great to see new users sending such excellent feedback. Added it to the 1.7.0 development branch and the fixes list.

post-17404-0-21429400-1542415030_thumb.png

  • Like 3

Share this post


Link to post
Share on other sites

 

Welcome! Great to see new users sending such excellent feedback. Added it to the 1.7.0 development branch and the fixes list.

Nice.

 

thanks for the welcome, and thanks so much for your great work with wudsn. As a kid I cut my programming teeth on a 400 and later an 800XL, I'd played around with emulators over the years but it wasn't until a friend pointed me to wudsn that I found the appetite to revisit programming for these wonderful old computers. Rediscovering them with modern development tools (and an adult brain) is such a pleasure!

Edited by General Lee Inept
  • Like 5

Share this post


Link to post
Share on other sites

Triggered by some discussions in other threads I finally kicked myself and created what kept me from releasing version 1.7.0 for 3 years now: A semi-automatic latest build so people can test and send feedback as they do with Altirra's release candidates.

You can now find the experimental daily (= in development) build of WUDSN IDE here: https://www.wudsn.com/update/daily

DO NOT use this as your main working version. It is really only for testing a release candidate. And that may be incompatible with your current workspace/projects.
So please use a separate Eclipse installation and workspace for testing and uninstall the WUDSN IDE feature before installing newer builds.
Technically a simple "Check for Updates" will work, but you will spam your drive with the different versions.

 

You can activate profiling of the IDE in this version by setting the property "-Dcom.wudsn.ide.common.base.Profiler=true" in the "eclipse.ini" file.

post-17404-0-82791200-1543450475_thumb.png

 

If you do this, you will see the time consumed by the parser and editor in the "Error Log" view and id the ".metadata/.log" file of the workspace.

post-17404-0-13103900-1543450502_thumb.png

 

Looking forward to your feedback.

  • Like 4

Share this post


Link to post
Share on other sites

WUDSN IDE has always been open source, but the source has only been included in the plugins itself. Keeping backups manually, keeping track of the changes and building releases are cumbersome for me and part of the reason why updates have been rare. Now I have invested a lot of time to provide a daily build to iterate faster. And finally, I have climbed the hills of Git in Eclipse, GitHub and TLS 1.2 to make the source available to the public in a reasonable way. From today on, the source code is available on GitHub via https://github.com/peterdell/wudsn-ide.

Consequently, the source code will be removed from the future feature builds. This will make the plugin installation even smaller.

2018-12-31-wudsn-on-github.png

  • Like 4

Share this post


Link to post
Share on other sites

WUDSN IDE version 1.7.0 released

 

After 4 years, a new major version of the IDE is available via the update site and as zero installation download. It includes the following improvements:

 

Daily build

  • Besides the last stable version of the IDE, which is always available via the update site http://www.wudsn.com/update a beta version of the next version is now always available via the update site http://www.wudsn.com/update/daily. It includes the current state of development and allows for testing new features and fixes for users who are interested in them while keeping the stable version untouched.
New source code annotations:
  • For most use-cases, the defaults provided for the compilers and in the preferences are sufficient. But if you want to develop in parallel in multiple projects, for different platforms (Apple II and Atari 8-bit) or in different output formats (".XEX" and ".BIN") with the same compiler it may become cumbersome to change the preferences every time. Therefore WUDSN IDE offers annotations which you can put into the source code files. These annotations override the defaults and the preferences.
  • @com.wudsn.ide.asm.outputfoldermode
    • Overrides the "Output Folder Mode" from the preferences.
    • Allowed values are "SOURCE_FOLDER", "TEMP_FOLDER", "FIXED_FOLDER".
    • This annotation is only relevant to the main source file.
    • Example: @com.wudsn.ide.asm.outputfoldermode=SOURCE_FOLDER
  • @com.wudsn.ide.asm.outputfolder
    • Overrides the "Output Folder" from the preferences and the "@com.wudsn.ide.asm.outputfoldermode" annotation.
    • Allowed values are file paths relative to the folder of the main source file and absolute file paths.
    • This annotation is only relevant to the main source file.
    • Example: @com.wudsn.ide.asm.outputfolder=..\out
  • @com.wudsn.ide.asm.outputfileextension
    • Overrides the "Output File Extension" from the preferences.
    • Allowed values have to start with a period.
    • This annotation is only relevant to the main source file.
    • Example: @com.wudsn.ide.asm.outputfileextension=.bin
  • @com.wudsn.ide.asm.outputfile
    • Overrides the "Output Folder", "Output File Extension" from the preferences and the automatic computation of the out file name based on the main source file name.
    • Allowed values are file paths relative to the folder of the main source file and absolute file paths.
    • This annotation is only relevant to the main source file.
    • Example: @com.wudsn.ide.asm.outputfile=..\out\output.bin
Editor:
  • When you press "Compile" or "Compile and Run", the changes of all open editors are saved automatically before the compilation step. This ensures that all your changes are visible to the compiler, especially when working with include files.
  • Hyperlink navigation is now available also via the context menu and the standard key binding to the function key "F3". If there are multiple matching targets, the first will be used automatically.

    ide-hyperlink-navigation-context-menu.pn

Breakpoints:
  • The "Go to File" context menu entry, toolbar entry and the double click on the "Breakpoints" view now navigates to the corresponding source file location. If required, the file is opened for this.
  • By activating the "Breakpoints" command group in the "Customize Perspective" menu, you can make the standard keyboard shortcut "Ctrl-Shift-B" available for toggling line breakpoints plus as the "Skip All Breakpoints" toolbar button.

    ide-breakpoints-activation.png

DASM:
  • The default parameters of DASM have been extended with "-s${outputFilePathWithoutExtension}.sym" to generate a symbols file with a name that is automatically loaded by Stella 4.0 and later. The list file generated with "-l${outputFilePathWithoutExtension}.lst" is also loaded automatically.
  • Due to a small bug in Stella, auto-loading the symbols and list file will not work if the ROM image is binary identical to a ROM in the known ROMs database. In this case, you have to load the symbols manually. The bug has been reported to the Stella team.

    2014-08-06-stella-autoload-dasm-symbols.

Symbols View:
  • New view "Symbols" that displays all symbols and their effective values from the last compile run has been added. The view can be visible via "Window / Show View / Other / Debug / Symbols".
  • The result in the view can be filtered. The filter can consist of one or more sub-strings. The filter applies to the name, the hexadecimal value, the decimal value and the text value of the symbol.
  • The ".lbl" symbols file which was previously automatically generated by the IDE in "XASM 3.0.1" format is now no longer generated. It's only use-case was using Atari800Win with ATASM/MADS. Maybe the feature will be added again in future in a more general way, so it works specifically for each emulator.

    ide-compiler-symbols-view.png

Preferences
  • Performing multiple changes to the syntax highlighting and the compiler settings in the "Assembler" preferences panes now only causes a single redraw of the open editors instead of one redraw per change.
  • Changes to the "General / Appearance / Colors and Fonts" settings do now take effect in all open editors immediately.
  • The values maintained in the "Assembler" preferences panes can now be exported from a workspace into a file and be re-imported in another workspace.

    ide-assembler-preferences-export-01.gifide-assembler-preferences-export-02.gif

Hex-Editor:
  • New context menu entry "Copy as Decimal Values in Block Format" added to copy the selection in a way that all digit use 3 characters and commas are aligned vertically. This is useful when structured content is copied and later edited in block mode.
  • New context menu entry "Save Selection As..." added to save larger chunks of a file into a new file. This can be used for example to extract one or more segments of an Atari COM-File.

    ide-hex-editor-context-menu.png

  • New content types "Atari MADS File" and "Atari SpartaDos X File" are now recognized and the hex editor displays the structure and content of these content type specifically.

    ide-hex-editor-outline-mads.pngide-hex-editor-outline-sdx.png

Sound Editor
  • Atari 8-bit sound files and C64 sound files can now be opened and played directly within WUDSN IDE thanks to the excellent ASAP by Piotr Fusik (fox) and JSIDPLAY2 by Ken Händel (kenchis).
  • Supported file extensions and file formats are currently "sap, cmc, cm3, cmr, cms, dmc, dlt, mpt, mpd, rmt, tmc, tm2, tm8" for Atari 8-bit and "sid" for C64.
  • The binary song data can be saved together with a replayer into a file for use in your programs.

    ide-sound-editor.png

Graphics Editor
  • New file category "Apple II Graphics" added.
  • New converter for monochrome "HGR" images added for both directions.
  • Online Help:
  • New section "Releases" added which contains the overview of all previous releases of WUDSN IDE. It also lists the required minimum Java and Eclipse version plus the link to the release news article and release news video where available.
  • Compilers can now have different help files for different languages. MADS, for example, has "mads.html" in Polish and "mads-en.html" in English. The "Compiler Help" menu and the online help automatically determine the best fitting help file for the current locale.
  • Error messages related to the online help are now more explicit, for example in case the compiler executable path is not set or the help file is missing.
  • New online help section "CPUs" which lists the opcodes on every supported CPU type. For every compiler, the mnemonic and the supported addressing modes are also displayed. This is particularly helpful when converting sources with illegal opcodes or 65816 opcodes between compilers, because their names may differ.
  • Better visualization of all tables, especially the border of tables, rows, and cells.
  • FAQ extended with "Why do CTRL-SHIFT-0/9 and other key combinations not work?"
  • FAQ extended with "Why is editing sometimes slow or even everything is blocked showing the wait cursor?
Fixes:
  • For compilers that have case-insensitive identifiers, the hyperlink navigation for symbols now also works if the source and target are different with respect to lower case and upper case.
  • Folding in the source code now collapses the sections to a single line instead of two and works correctly also for the last line in the source even if there is no final line break.
  • Using file names in source code includes with different upper/lowercase than the actual file system now results in an error message. This ensures that compiler messages can be mapped to the correct include file.
  • Using file names with spaces is now supported in the generated Altirra ".atdbg" files. The file path in breakpoints is now quoted as "`Example with Space.asm:123`".
  • XASM labels and symbols are now parsed correctly. Also warning messages and return codes of the compiler and converted correctly now.
  • Hex-Editor now correctly starts with the first byte of a selection and not with the last byte of the previous section, in case the section is selected completely.
  • Opening a file without file extension in the graphics editor now no longer causes an exception.
  • ACME and TASS now have "65C02" also listed in the dropdown for the CPU/instruction set.
  • ASM6 and ACME download links adapted to new locations
  • MADS editor now supports ".ifdef" and ".ifndef"
  • Online displays plain text help files for ACME (resolve files in docs folder) and TASS (newlines converted to CR-LF) correctly now.
  • Graphics conversion script for CharSet1x1MultiColorConverter works correctly now. Thanks to General Lee Inept for the fix.
  • Like 5

Share this post


Link to post
Share on other sites

Wow! Going to take some time to digest all that. Thanks so much for the continued work.

Share this post


Link to post
Share on other sites

Hi,

 

Just did check for updates in Eclipse (Linux, 64-bit), update went fine, restarted Eclipse, did a test compile, no problems at all.

 

Thanks very much JAC! for the excellent environment!

Share this post


Link to post
Share on other sites

I worked for some days with this yet, as when I worked on NYD I checked for updates of wudsn. It was around dec.30 if I remember correct - so I think I was a very early user of the new version ;)

Share this post


Link to post
Share on other sites

I updated today and all is looking good. I use WUDSN daily so it's great to know that it's actively being developed.

 

There are so many useful improvements; for example, I often forget to 'Save All' before assembling so the addition of the automatic save is really helpful. I may no longer be pulling out my hair so much ... there's not a lot left! ;)

 

Once again, thanks for all of the hard work.

 

Jon

  • Like 2

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...

  • Recently Browsing   1 member

×
×
  • Create New...