Welcome to the WUDSN ursel home page

WUDSN ursel - or short WUDSN - is a demo group founded in 1991 . There is an explanation why the group and the site are named like that, but that's a different story you can find in the FAQ. For the time being it should be sufficient for you to know that me, aka JAC! am one of the members ever since. I have created this web site to offer my tools and productions and to share the fun I have had for more than 20 years now with my Atari-8 bit computer and other classic computers.

2013-03-18 Easy math for bulb@

Since bulb@ had some trouble understanding my comments on Ye Olde Plasma and seems to be new to the Atari scene (and actually also to the rest of the scene if not even the whole world) I decided to follow his suggestion and add a little guide here. The Atari Composite file format is a segments file format originating from Atari DOS 2.5. Each segment consists of the start address and the (inclusive end address). The first segment requires $ffff as additional prefix, adding a total of 6 bytes to the file length a minimum file. Though this header is larger than the 2 byte C64 header it is still much smaller than the header of for example Atari ST executable format. Therefore compo rules of Atari related parties like Forever take the header into account and refer to the file size, like this is done on most other platforms. This means that this actually quite nice intro does not fit in to the 256 bytes category on Atari 8-bit. So bulb@ selected the wrong category, but hey that happens. And instead of starting to bash him, I contacted the coder Dimitry instead, sent some respect for cross platform coding and gave some tips on how to even make this better and smaller. I like the scene, competition and exchanging ideas with cool people. I actually don't like trolls, though.
255+6=261, really

2013-02-22 Site update

This week I attended a course about "Sematic web technologies" at the Open HPI university where I learned new things about RDFa and Microdata . So I tried enriching my site and ended up with one of the "One day I will..." improvement which have been planned for too long. The list of productions on the Atari 8-bit tab is now generated in PHP based on a simple CSV file. The resulting HTML contains all semantic information about the productions, so search engines can use it. See what the Google Webmaster Tools can get out of this now.

2013-02-09 SillyPack 2k13 released

On Thursday Grey announced that 2k13 IS going to happen, today my 1st price for RGBA arrived. And it works perfectly with AspeQT and POKEY divisor 0 at 125.000 kbaud. Well, that's what I call motivation - Count my in for SillyVenture 2k13!
SillyPack 2k12

2013-01-17 SillyPack 2k12 released

This pack contains a disk image in MyDos format with all Atari 8-bit releases of SillyVenture 2k12. The disk was originally compiled by PIN/TRISTESSE. I felt this is a good idea and SillyVenture deserves a good presentation, esp. the graphics and music releases for which no art pack/music disk exists. This is an updated version with a proper results viewer which also acts as a menu from where you can directly start all releases and read the readmes. The menu remains memory resident, so you don't have to load it again every time. This makes watching the graphics entries and listening to the music entries much more fun, esp. on the real machine. These are the controls for the menu:
  • Pressing any key during loading the menu takes you to the DOS shell.
  • Pressing RESET in the menu performs a cold start.
  • Pressing RESET in while a release is running returns to menu, if possible.
  • Further controls are displayed in the menu itself.

SillyPack 2k12

2012-12-24 RGBA - 1st place and final version released

RGBA yielded the 1st place in the Atari Intro Competition at SillyVenture. Though the party version was way tooooo long, the youtube video of RGBA got 1000 views in only one week! And in two late-night coding sessions I have now re-synced the whole thing. The result is the final version which has 4 times faster transitions, less text and much a better pace. The new version including the sources are available on the Atari 8-bit tab. And the best thing for me after all was finding this one. A true Atari guy stunned by the unexpected demo ending. It really made my day :-)
[65XE] WTF? Crazy Demo Crash Craziness!!

2012-12-09 RGBA - Rasters Girls Beer Atari released at SillyVenture 2012

Once again I totally failed. Once I again I decided to enter a limited size competition because "with less space I'll be done earlier". With 10974 lines of final code, this became the largest project I've ever had so far - once again :-). All packed into 16k together with 2 girls, great music by 505 and a nice 70'ies Disco font by OOZ giving 7 minutes of effects. Fun fact: The original of the KickStart ending screen was coded 21 years ago to the day - back in 1991 on my Amiga 500 in my teenage room.

RGBA - Rasters Girls Beer Atari RGBA - Rasters Girls Beer Atari RGBA - Rasters Girls Beer Atari RGBA - Rasters Girls Beer Atari RGBA - Rasters Girls Beer Atari RGBA - Rasters Girls Beer Atari RGBA - Rasters Girls Beer Atari RGBA - Rasters Girls Beer Atari RGBA - Rasters Girls Beer Atari RGBA - Rasters Girls Beer Atari
The download archive is available on the Atari 8-bit tab and contains a pre-configure Altirra emulator. I strongly recommend using real hardware and TV set or Altirra if that's not possible. I also created a youtube video, but as usual 30 FPS cannot give you the real feeling and smoothness.
RGBA on youtube - frame-blended recording

2012-08-14 Fujiama 2012 - Lots of code, fun and beer

Fujiama was simply great again. I finally met 505 of Checkpoint in person, made some WUDSN customers like happy (hi 1ng), made some "prospects" new customers also (hi Norbert, I'm 'looking forward to the final Asteroids emulator) and got to know new coders (hi RA). Sascha created a great time lapse video. Click on the image below to watch it online. By the way, the small green point that doesn't move away from the keyboard all the time is me :-)

Fujiama time lapse video

2012-06-09 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

2012-07-28 Radek - you are not forgotten

One year ago, Radek Štěrba, also known as R.A.S.T.E.R., left us forever. In a few days we all will be be at the Fujiama Party - and we all will remember you. This year in in all the year to come.

2012-07-12 Apple II - late birthday present

Why oh why am I so easy to distract. I hope the C64 people forgive me. Triggered by all the buzz about 35th anniversary of the Apple II , I had a look at the platform again and at the mails Nick Westgate wrote me quite a while back. The key issue was that there no such thing as defined executable format on the Apple II. Everything is strictly bound to the DOS and hence to the disk image. But when I realized the possibilities which arise from the idea of creating disk images directly as part of the IDE, I simply had to go and try it. Now WUDSN IDE supports the full develop, compile executable, build image, inspect image and run image required for Apple II. And I have written my first Apple II program to send greetings to the people who helped to make this work.

Apple II editor, disk image and emualtor

2012-07-10 Site update

After fiddling around a lot with validators and selfhtml, I finally managed to make the site work again. I should now also work fine in FireFox. The Facebook button remains removed until I found out how to make it an asynchronous call. Otherwise the site takes ages to come up.

2012-06-30 Open Source - supporting and getting support

I know I should rather get KickAss up an running correctly, but I had some many new ideas and input in the past two weeks that I simply had to try out a few things. In particular I found that supporting other people and getting support becomes more important as the IDE grows. I have worked intensively on Apple II support and have a first prototype running. Thanks to Sean, Nick, Brendan and Robert for their support. The major steps towards improving WUDSN IDEs features are related to three projects: AppleCommander, JavaHexEditor and Jexel.
Currently I am working on my contributions for all of then, so I the next versions of these tools are ready to be included into WUDSN IDE. This way i can support other projects, keeping the WUDSN IDE's own code base small. AppleCommander will be used for creating disk images, i.e. the IDE will learn to put the output files directly onto bootable images. JavaHexEditor will be refactored and its core will be the basis for the improved Hex Editor in WUDSN IDE. It will be much faster, functionally complete (cut/copy/paste) and work for files or arbitrary size. Finally Jexel will be used as expression parser for a built in calculator/cheat sheet, which was inspired by Barbarossa's feedback at CSDB.
Project Contributor
AppleCommander Robert Greene (robgreene)
AppleWin (Apple II) Nick Westgate
JACE (Apple II) Brendan Robert
Virtu (Apple II) Sean Fausett (fool)
Java Hex Editor & Plugin Pordi Estaqual (pestatije)
Java Expression Language Parser Aaron Gadberry (aaron)

And besides this, there are also two more video tutorials available now.
Part 8: New Features in version 1.6.2
Tutorial part 8
Part 9: Source Level Debugging
Tutorial part 9

2012-06-28 Fujiama Party 2012 - See you all in Lengenfeld

6 weeks to go! on 10th-12th of August Fujiama Party 2012 is taking place again. A long weekend with Atari and other nerdy systems and nerdy people in one place. Visit the official web site , register yourself and spread the word. Unfortunately it's also the weekend when Evoke takes place, I won't be not be at Evoke (of course :-). The bad news is that I didn't finish it because of this, the good news is that I have enough time to get completely lost in WUDSN IDE enhancements.

Fujiama 2012

2012-06-12 Celebrating 3 years WUDSN IDE - 6500 hits - 1000 views for the video tutorial

Today it is exactly 3 years since I've release version 1.0.0 of WUDSN IDE - (to himself) Wow. I can safely say that I never thought it would become so rich in terms of features and so widely used in terms of platform. Even more, I am sure it would have failed if I had started out 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 a proper documentation. And they turned out to be the based way of getting information to the consumers. With the new recoding equipment this 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.

Tutorial part 1

2012-05-30 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 .

2012-05-16 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

2012-05-12 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

2012-03-21 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

2012-02-23 Visdom I and II story and fixed versions

I don't like bugs and they keep bothering me even after many years. What I did this week are very likely the most delayed updates in the 8-bit system history . On the tab Atari 8-bit (previously named "Productions") you can now find only 19 respectively 21 years after the original release ...
  • Visdom I - fixed version plus sources
    Fixes: Checks for 64k, runs properly on NTSC machines, accepts any key to start part 2, no more color artifacts in the scroller.
  • Visdom II - fixed single file version plus sources
    Fixes: Checks for 64k and PAL, no more color artifacts in the wiggle effect, available a standalone executable.
  • Visdom II - full background story of the demo
    The description of the unique circumstances under which the demo was created and the technical details.
Upload on Pouet and video captures will follow.
Visdom-I Visdom-II

2011-12-09 Teenage dream challenge

Today I started with the ambiguous assembler project I ever did. In the 1990ies I used ATMAS the largest project were around 1.000 lines of code. Visdom II took 6 months of coding on an Amiga 500 cross-development system and has about 2.000 lines of code. Thanks to MADS and WUDSN IDE, I could create Silly Things within 3 months and the result has 10.000 lines of code.

The new project exceeds this in two aspects:
  • First, it is in a class of programs in which I've tried to succeed many times - and I failed
  • Second, first estimations show that there will be more than 17.000 lines of code for sure
But why the hell do I think it can be done? Well, this is something I have been dreaming of for years. I feel now I have the experience to give a teenage dream a try. Also my tools are now so good that I can use a totally different approach to tackle the complexity. Unfortunately there are also some legal aspects that have to be clarified first. If I am unlucky, the legal aspects will prevent my project. Let's wait and see...

2011-11-13 Sillyventure 2k11 - .. and how it ended

When Grey and I discussed the compo rules for the VCS compo, I also suggested limiting the cartridge size to 8k . One the one hand 8k was the typical size many real cartridges. On the other 8k can be filled within some weeks for sure, so I won't spend so much time on the demo. And in fact, all effects were ready after 6 weeks . And they took 12k. Damn. Consequently I spent 4 more months reworking and code in order to squeeze it into the 8k boundary. At the same time I was hoping and waiting for Jakub Husak to complete the tune for which I had reserved 1k. The first deadline passed and in the night when the extended deadline also passed, Jakub sent the final tune. After 1 hour of tracking down a bug in the player routine, it compiled properly and reported: 335 bytes free. WHAT? 335 bytes free? I cannot release an 8k demo with 335 bytes free . So I sat down and added again most of stuff and details which got removed in the months before. 4 hours later, i.e. 2 hours after the extended deadline, I sent my mail to Grey ... who had extended the extended deadline meanwhile ... thanks ;-)

The result is ISO which went 1st place in the first VCS only demo compo in history. It also climbed up to the 3rd place in the top of the month of Pouet and received a loot of nice feedback. Thanks for all your votes!
ISO - Final version Best rank in the top of the month

2011-11-03 Sillyventure 2k11 - How it started...

In March Grey^MSB contacted me and asked if I would contribute a demo for Sillyventure 2k11. Well, creating Silly Things took the whole three months of my parental leave for my youngest daughter. Therefore my immediate reply was: Sorry, I cannot beget another child just to have enough time for a new release. Then he told me that he already has two possible entries on VCS and he was looking for a third one in order to hold the first VCS only demo compo in history. My first tough was: OK, the worst then is becoming third - that's cool. I immediately started coding on VCS and my first VCS demo BeamRacer was released in the Oldschool 4k demo compo at Revision 2011 . There I had the same problem as the two VCS demos in the Sillyventure 2k10 combined demo compo: 4k Amiga demos simply look more impressive, especially if most people don't even know about the VCS and it's restrictions. So it ranked 5th in the compo, not bad for a first release though. Also there was a lot of trouble getting it on the big screen. Therefore I had to tweak the faster and more colorful final NTSC version (left) into a slower and less colorful PAL version for the beamer (right).
Beam Racer - Final NTSC version Beam Racer - Party PAL version live footage

2011-10-29 ABBUC JHV 2011

The JHV (AGM) is over and here are some impressions. After getting lost in the "Palz" due to my outdated navigation system, I even managed to arrive just in time. It was a joyful day with playing Warlords and impressing people with the preview of me new VCS demo for the Sillyventure 2k11 . Later in the evening, mega-hz, hias and I discussed the top-secret new hardware developments for the hardware contest 2012 .. and 2013. Thanks to the good reaction of mega-hz, the top-secret prototype is hidden behind his hand an a glass of beer.
JAC! arriving just in time Can you spot my VCS with my new TV set? mega-hz and me discussing the new entries for the hardware content 2012 and 2013

2011-10-19 Atari Speed Reading

One of the most distinctive features of the Atari is the fact that the program recorder uses one channel for serial data and one for normal sound. This means that you can replay music and spoken words during loading. Based on this feature, Atari released a number of educational software titles. One of them is the "Atari Speed Reading" course from 1981. On the picture below you can see Tigerduck an me after we spent the whole evening trying to sample the first tape using a notebook with AudaCity, a hi-fi system and put a back on a tape again. It took quite a while but finally we managed to find the right recoding and re-recording settings to make it work also on the Atari again.
Atari Speed Reading

2011-09-27 Site Update

  • Credits tab added with the list of contributors and related projects like compilers, emulators, graphics and sound libraries
  • Eclipse 3.6.2 Platform Runtime Binary (50 MB) direct link is now correct and positions correctly within the target page
  • Update of the compilers download archive
    • For MADS 1.9.3 the Mac OS X version for Intel and PowerPC are now included
    • XASM for Windows has been updated from 3.0.1 to 3.0.2
    • ACME 0.90, KickAss V3.21 and TASS 1.46 r38 are now included as preparation for supporting them

2011-09-23 Site Update

The content has been split into into individual PHP pages. So instead of editing an HTML document with almost 4000 lines, I can not update more selectively and more frequently. In case you experience problem with the site now, please contact me.
  • The FAQ section on the tab WUDSN IDE has been structured into the sections ""Installation, Configuration, Editing and Compiling"
  • The following FAQs have been added or updated
    • When I try to start Eclipse is get an error like "Failed to load the JNI shared library 'C:\Program Files (x86)\Java\jre6\bin\client\jvm.dll'". What is wrong?
    • Why is WUDSN IDE not available via the update site?
    • Why is MADS the primary compiler?
    • Why do I get the error "No ORG defined" when compiling the example from the tutorial?
    • How to I convert an ATASM source for to MADS format?
  • All supported 6502 compilers are now contained in a single download archive . The installation section for compilers has been updated accordingly
  • The download URL for DASM has been changed to dasm-dillon.sourceforge.net because some ... Atari lawyers forced Andrew Davie to shut down www.atari2600.org after 11 years
  • For DASM the new version 2.10.11 is now included. The Mac OS X PowerPC version is now also included
  • For MADS the new version 1.9.3 (source, examples and Windows executable) is now included. Executables for other platforms will follow
  • The source example and related screen shots in the section "Creating and compiling an example project" have been updated to the syntax of MADS, which is the default compiler since 1.6.0

2011-07-28 Rest in peace Radek

On this date, one of the most prominent, influential and gentle guys in the Atari 8-bit scene died: Radek Štěrba, also known as R.A.S.T.E.R.

On 30th of July I was preparing my stuff for the Fujiama party. When I was there last year I met Raster personally after all the years of admiring him and using his tools, games, demos and hardware. He always had the strangest and funniest ideas what to do and how to do it on the Atari. We all competed in his multijoy game Cervi . He won - of course :-)

Radek and me at Fujiama 2010 Radek wins at Fujiama 2010
I was hoping to see him again next week. Now I'm deeply sad and to be honest don't know how to handle it. I met him on the 30th of July, and that's also the day when I lost him.

For those who did not have the chance to meet him personally, I recommend to have a look at the more then 100 releases from Radek. And that's only the software part. Therefore I provide here the English translation of Fandal's blog entry from 2008-01-28. Thanks to twh for the German translation .

Tribute to Raster

When writing something about Radek Štěrba you cannot but write in superlatives. For the majority of Atarians he is a living legend, simply superhuman, for some even a demigod. Imagine that. Raster is dedicated to software and hardware development, is an outstanding musician, graphic designer, coder and writes games and demos. In the world there are not many people like him, especially not here with us. When Jirka Bernášek (Bewesoft) and Davi Spilka (Datri) left the Atari scene, he had absolutely no competitors left in the Czech Republic and nothing indicates that this situation will ever change. So let us take a closer look at Raster.

Let's start with software. The database on atari.fandal.cz contains more than 80 (!!) entries with his name - quite unbelievable. Some of the most famous games from Raster include undoubtedly the outstanding Naturix, Magnetit, Videopoly and Dangerous Street, as well as the games series created in cooperation with Robert Knill which includes Gunhead, Predator or Imagine which where. More recently he created incredibly popular Multijoy games like Cervi, Cervi 2, and Shot’em All. In the demo scene Raster scored a lot with his "Self Demo" and his 1kb intros with which he beat his competitors at the famous Forever Party on more than one occasion. Of course we should not forget the famous Raster Music Tracker, a Windows music editor which unleashed a real revolution in the musical development of the small Atari. Finally, Raster created a large amount of native and cross-platform utilities. All this is just unbelievable!

And the list does not end with Raster’s software activities in the Atari Scene. He is also a hardware guru. By creating Multijoy Raster created an interface that makes it possible to connect 8 or even 16 joysticks to a single Atari. This hardware wonder allows you to play together simultaneously. Moreover, our hero is responsible for the S/XEGS RAMCart Project, a programmable 128 kB cartridge which supports the vast majority of our beloved Atari's cartridge types. At present Raster is working together with Bob!K on another - initially top secret - hardware project, which will make an impact again – you can be sure of that.

To sum it up: Raster is a hyperactive Atari all-rounder, an Atari master at professor level, the driving force of Atari Club Prostějov, the first man in the Flop-magazine, a superstar with format who deserves a monument. He is by far the most notable and famous Czech Atarian of all time and his popularity will continue to grow every year. We can be glad to have him in our midst. I believe that not only foreign Atarians, but also people from other platforms are secretly envious of us. PS: If this tribute sounds like some heroic epic, then you should know that this is completely intentional. This man really deserves it. Someone just had to say it.

2011-04-02 IDE update 1.6.0 released

After 5 months I have completed a new major update of WUDSN IDE with a bunch a new features and improvements. Some of the new features like the graphics conversion and the content assist for identifier are still "beta" but already usable and useful. For example the syntax highlighting sometimes detects keywords within other words. This will be corrected soon.

Features: See the tab "Features" on WUDSN IDE for screen shots or click on the inline links
  • .ENUM and .STRUCT are now displayed as sections with own icons in the content outline
  • .VAR and .ZPVAR definitions are now displayed as equate definitions in the outline, they will get their own icon in the next version
  • .PROC, .LOCAL, .PAGES and binary includes now implicitly end a definition section even without ORG statement
  • The expanded nodes and the selected elements in the outline are now stable. In case of structural changes, the selection is repositioned automatically to the next higher visible parent element
  • The bold and italic style of the syntax highlighting is now also visualized directly in list within the preferences
  • Separately configurable syntax highlighting for all types of identifiers and numbers. For non unique identifiers, the syntax highlighting will try to be a best guess
    Syntax highlighting for all types of identifiers and numbers
  • Altirra is now available in the preferences as standard emulator for the Atari 8-bit editors
  • All editor names have been extended with the platform like "ACME (C64)"
  • The toolbar icon for "Compile and Run" now adapts based on the hardware of the currently opened editor, for example it will show a C64 icon when using the "ACME (C64)" editor
  • The toolbar icon for "Compile and Run" now has a pull down menu which allows running the output file with any of the applications configured in the preferences. This way you can run the output file easily with different emulators without changing the preferences. That can be very helpful if one emulator show a different behavior than another or in case you have specified a build script as user defined application in the preferences
    Run with... for Atari 2600 Run with... for Atari 8-bit Run with... for C64
  • MADS (Atari 8-bit) is the new default editor for the file extension ".asm" for new installations. You can change this as you desire in the preferences panel "General/Editors/File Associations"
  • Symbols file "*.lbl" is now only created if there are actually any symbols. An existing symbols file is deleted if it is empty
  • The graphics editor now supports viewing for all 23 Atari 8-bit image formats supported by version 1.0.1 of "FAIL (First Atari Image Library)" plus C64 charsets and sprites. This includes hires and multi color charsets, images with palettes and true color images.
    Platform File Extension File Format
    Atari 8-bit AP3 80x192, 256 colors, interlaced
    Atari 8-bit APC Any Point, Any Color, 80x96, 256 colors, interlaced
    Atari 8-bit CHR 8x8 charset, mono or multicolor
    Atari 8-bit CCI Champions' Interlace, 160x192, compressed
    Atari 8-bit CIN Champions' Interlace, 160x192
    Atari 8-bit CHG Gephard Hires Graphics, up to 320x200, mono
    Atari 8-bit CPR Trzmiel, 320x192, mono, compressed
    Atari 8-bit FNT Standard 8x8 font, mono
    Atari 8-bit GR8 Standard 320x192, mono
    Atari 8-bit GR9 Standard 80x192, grayscale
    Atari 8-bit HIP Hard Interlace Picture, 160x200, grayscale
    Atari 8-bit HR Hires 256x239, 3 colors, interlaced
    Atari 8-bit HR2 Hires 320x200, 5 colors, interlaced
    Atari 8-bit ILC APAC 80x192, 256 colors interlaced
    Atari 8-bit INP Interlace Picture 160x200, 7 colors, interlaced
    Atari 8-bit INT INT95a, up to 160x239, 16 colors, interlaced
    Atari 8-bit MCP McPainter, 160x200, 16 colors, interlaced
    Atari 8-bit MIC Micropainter 160x192, 4 colors
    Atari 8-bit PIC Koala MicroIllustrator, 160x192, 4 colors, compressed
    Atari 8-bit PLM Plama 256, 80x96, 256 colors
    Atari 8-bit RIP Rocky Interlace Picture, up to 160x239
    Atari 8-bit SXS 16x16 font, mono
    Atari 8-bit TIP Taquart Interlace Picture, up to 160x119
    C64 64C Charset, mono or multi color
    C64 SPR Sprite, mono or multi color
  • The graphics editor now supports conversion to the following 8-bit file formats using a flexible JavaScript based approach. Default scripts for most of these format are part of the delivery, more will follow.
    Conversion from GIF/JPG/BMP/PNG images to binary files or 8-bit images files
  • The new image palette view associated with the graphics editor displays the palette entries and the color histogram. It supports filtering of unused colors, sorting by index and color frequencies, pre-settings and editing the palette when displaying 8-bit images
    Image palette view
  • The file chooser dialog now has a hierarchical display including automatic positioning to the next suitable folder in the hierarchy
  • The content assist now recognizes if there is already and instruction in the current line and suggests the available identifiers instead if this is the case. This is the first version and it supports global identifiers in the current source file and source file included from there. Scoped identifiers of the form "a.b" are not yet supported
  • The online help now contains the entry "WUDSN IDE Guide" which contains the overview of all tutorial videos and release news videos
    Integrated Help
Fixes:
  • Hyperlink navigation now also works for labels which contain an underscore
  • The key binding for the "Compile" menu is now "Shift-Ctrl-9" because it turned out that "Ctrl-0" is not available in all cases
  • The HexEditor is now also detecting the situation that the first block of a COM file is incorrect and display this correctly
  • Content assist has now correct new lines when inserting #IF, #WHILE and .TEST
  • Fonts and colors resources are disposed correctly now
  • Resetting to default syntax colors in the preferences works now
  • Elements of .ENUM are recognized as equates now also if they do not start of position 0
  • Elements of .STRUCT are recognized as labels now also if they do not start of position 0
  • Cursor is now positioned to the first character of an equate or label also if it is not defined starting at position 0
Site:
  • New section tutorials added to the "WUDSN IDE" tab

2011-02-23 ABBUC Awards 2010

Normal ABBUC contests are exclusively for ABBUC club members. But since there are also a lot Atari people outside the ABBUC community, the ABBUC decided to also honor people and products outside the club in a non-monetary way. The so called ABBUC Awards are awarded for the best application, best game, best demo, best coder, best best sound, best graphics and best Atari related PC program. The decision is taken by a jury. This year I was part of the jury - but since I was also nominated in two categories, I was not allowed to vote in these categories. This is why I'm even more proud to be awarded in both categories: best demo and best coder. Congratulations also to the other winners!
ABBUC Award 2010 - Best demo ABBUC Award 2010 - Best coder

2011-03-20 WUDSN IDE Tutorial Part 5 and 6

By now you have seen a text editor with syntax highlighting and nice compiler configuration. The following part will show you what makes WUDSN IDE unique: The parser, the content outline and the hyperlink navigation integration for source files, binary files and identifiers. When I started implementation two years ago, I was dreaming of it but I didn't think it would be possible. But piece by piece it to came together. Of course it is not yet 100% complete, but, well, it never is ;-)
Part 5: Working with Projects, Folders and Files
Tutorial part 5
Part 6: Content Outline and Navigation - the Heart of the the IDE
Tutorial part 6

2011-03-14 WUDSN IDE Tutorial Part 3 and 4

The feedback was very positive, so I sat down and talked to my computer again. Two more parts are finished. All parts are recorded in 720p HD format and best watched directly on youtube in full screen mode.
Part 3: Setting up Editors and File Extensions correctly
Tutorial part 3
Part 4: Syntax highlighting and Content Assist
Tutorial part 4

2011-03-12 WUDSN IDE Tutorial Part 2

I never thought it'd be the case, be actually creating this video stuff is much simpler than creating a written tutorial. Any most likely more people will benefit from it than from any written document. So here it is. This time even with a reasonable screen resolution and aspect ratio (not 1400x1050) and with the mouse cursor visible.
Tutorial part 2

2011-03-11 WUDSN IDE Tutorial Part 1

For quite a long time, I've been thinking about creating a tutorial for WUDSN IDE and rather early I decided to go for a video based approach. Today I finally took courage and created the first part with the basic overview of what the IDE is, how it is installed and used.
Tutorial part 1

2011-01-22 HomeCon 10

After quite a long break, Tigerduck and me attended the HomeCon this weekend. So finally I found the time to test my 1st price from the Silly Venture competition. It contains a VBXE expansion which acts both as memory and graphics expansion. Unfortunately the additional plug was no standard VGA plug as expected, so I was not able to run VBXE games. But the memory expansion works fine, so I could test one of my forthcoming demos on the real hardware. The rest of the day we spent playing Robix in two player mode and finally defeated the first end boss. And as a special highlight for me, I won Rally Speedway against Tigerduck this time. The photo was taken by Boris, the issuer of the RETURN magazine, to whom I gave a short presentation of WUDSN IDE. Maybe I'll create an article for the mag with a short tutorial on the IDE.
Tigerduck and me at HomeCon 10

2010-12-22 Silly Things - Fast Mix released

My "Silly Things" demo scored 1st place in 8-bit competition at Silly Venture 2010 . And I remember that when Grey/MSB told me that LaResistance is also going contribute an entry to the competition my thought was "OK, it's simply no use". Now I finally managed to create fixed version and the "Fast Mix" of the demo which contains even faster and smoother effects. So if you like it, I'd be very happy to get your feedback on Pouet where you can also find the download with all versions. Here is the capped.tv recordings of the fast mix.

Silly Things Fast Mix

2010-12-12 Silly Things - party version released

This weekend my new demo "Silly Things" was shown at Silly Venture 2010 . At least I hope so, because unfortunately I was not able to join the party and know nothing about the results yet. This is the first time I entered a demo competition - after 21 years of demo coding. But thanks to be wife - who supported my during the 3 months of development - and thanks to 505 and OOZ who provided the music and the graphics, this became what it is now: my best demo so far. I just can't tell you how excited I am to see how the competition will end.

So if you like it, I'd be very happy to get your feedback on Pouet where you can also find the download. Here is the capped.tv recording.

Silly Things party version Silly Things

2010-10-27 IDE update 1.5.0 released

This version has Eclipse 3.6.0 as minimum requirement. See the tab "Installation" for the description and the link to the Eclipse download.

Features: See the tab "Features" on WUDSN IDE for screen shots
  • New supported hardware "Atari2600" added with DASM as default compiler and Stella as default emulator. A complete package atari2600-binaries.zip with compiler and sample sources is also available
  • Recursive and circular source includes are now detected. Source includes are now only parsed once and visualized once in the content outline
  • Completion proposal auto activation without pressing CTRL-Space after typing compiler dependent characters, for example "." in ATASM, "." or "#" in MADS and "!" in ACME
  • Multi-line content completion and explicit cursor positioning, for example ".MA" becomes ".MACRO <cursor is here> <newline> .ENDM"
    Muli-line content completion and cursor positioning
  • Syntax highlighting and support for illegal opcodes completed for ACME
  • New variables are now available for compiler and the application/emulator preferences
    • {$sourceFolderPath} The absolute path to the source folder
    • {$outputFolderPath} The absolute path to the output folder
    • {$outputFileName} The name of the output file including its extension, for example "TestFile123.asm"
    • {$outputFileNameWithoutExtension} The name of the output file without extension, for example "TestFile123"
    • {$outputFileNameShortWithoutExtension} The name of the output file without extension shortened to 8 alphanumeric characters, for example "TESTFILE"
  • Hover help in the preferences to explain the available variables
    Over help for variables
Fixes:
  • Syntax highlighting remains active now also after "Save as..."
  • Cursor is now placed correctly by content assist
  • The key binding for the "Compile" menu is now "Ctrl-0" instead of "Ctrl-Alt-0", so entering "}" is now possible again
  • XASM editor now correctly detects the "ORG" directive
  • The assembler editor toolbar contribution now also displays the label "Assembler" in the customizing dialog for the perspective
Site:
  • Section "Installing WUDSN IDE" updated with the new Eclipse 3.6 installation steps and screen shots
  • New section "Installing Apple 2, Atari 2600 and C64 compilers like DASM and ACME" added to installation guide
  • New FAQ "Why does CTRL-Space not open content assist?" added

2010-09-01 IDE update 1.4.4 released

Here it comes, the last version of WUDSN IDE which is downwards compatible Eclipse 3.4.2. All subsequent versions will require Eclipse 3.6.0 at least. Of course you can already update Eclipse to version 3.6.0 now to benefit from the new features like block selection mode.

Features: See the tab "Features" on WUDSN IDE for screen shots
  • Forward navigation via "control-click" hyperlink navigation to labels, equates, local definitions, macro definitions and procedure definitions. In case there is only one target, direct navigation takes place. In case there is more than one possible target, the type and line number of the target are displayed in a hyperlink popup. All included source files are also taken into account like in the content outline. In case there are targets from different files, the file name is also displayed as differentiator in the hyperlink popup.
    IDE navigation to labels,
			equates, local definitions, macro definitions and procedure definitions
  • The archive containing all supported Atari compilers has been updated with the latest versions of ATASM 1.7.0 and MADS 1.9.0 for all platforms, XASM for Mac OS X and ATASM for Linux 64-bit. See the section "Installation" for details
  • The new ATASM 1.7.0 directive ".BANKNUM" is now included in content assist and highlighting
  • Preferences for compilers and applications are now internally stored separately for every supported hardware (Apple, Atari, C64). The existing preferences are migrated automatically upon the first start of the new version. I have tested the migration to a certain extend but there might be cases where you have to set some preferences again after the upgrade
Fixes:
  • The directive ".LOCAL" in ATASM is a normal directive now and does not start a folding section while in MADS it is really is a folding section from ".LOCAL" to ".ENDL"
  • "SIN()" and "RND()" in MADS are now recognized correctly even if there are no spaces before or after the directive
  • ".EN" and ."END" in MADS are now recognized correctly
  • Labels in "ORG" lines are now recognized correctly and rendered as separate tree entries
  • Preferences for lower/upper case instructions in content assist are now also evaluated if the for directives which do not start with letters like ".end"
  • When opening a file which is located outside of the workspace, the action to open folders and to compile the file are now not doing anything and will not cause exceptions. They will also be disabled once the new Eclipse version is mandatory
  • The 16 bytes per row in the hex editor are now separated by a space
Site:
  • New FAQ "How to run a makefile script instead of an emulator?" added

2010-08-24 Fujiama pictures

For those who were not able to attend "Fujiama 2010", here are some pictures to give an impression what was going on there at 12:00, 20:00 and 02:00am. I really recommend to everybody to plan to visit Fujiama next year and to have fun with all those nerdy people there.
JAC! ... early in the day JAC! ... later in the day JAC! ... already the next day

2010-08-11 Site update

The Atari convention "Fujiama 2010" is over and it was a really great experience to be with so many crazy people for 3 days. And it was really great to present WUDSN IDE and to make atarixlxe, Bernd, Dietrich and mega-hz new happy users. I got a lot a new input and ideas and there will be a new version of WUDSN IDE soon. Be prepared: It will be the last version which runs on an Eclipse version less than 3.6.0. The new Eclipse version will allow me to fix some UI shortcomings and also includes block selection mode. But don't worry. Updating Eclipse is as simple as unzipping a file to a folder and all you files and settings in the workspace will remain.

The tab Productions has been updated with a youtube playlist overview and download entries plus the detailed story behind the "size-coding for fun" production "Dieter und Gisela ... wie die wilden Tiere in Nachbars Whirlpool". You can also comment on Pouet if you like.
Dieter und Gisela bumsen wie die wilden Tiere in Nachbars Whirlpool

The tab WUDSN IDE has been updated:
  • The section regarding installation on the tab "WUDSN IDE" has been updated with the feedback from the new users
  • All IDE related FAQs have been moved to the new section "FAQ" on the tab "WUDSN IDE"
  • New FAQ "How do I use Eclipse at all?" added
  • New FAQ "Is there support for block selection mode?" added
  • New FAQ "How does ATASM generate segments in executable files?" added
  • New FAQ "Why do I see wrong messages in the "Problems" view?" added

2010-06-15 ABBUC Magazin 99 intro added and 20 € for you

This intro for the 99th issue of the ABBUC disk mag was released in December 2009 and was my first real Atari release after 7 years. You can read the entry in the Productions area for the details, downloads and story behind it and visit Pouet to leave some comments. Also this time I uploaded a recording to YouTube. But again the 50 FPS PAL recording end up in a jerky, blocky and clipped 30 FPS playback. The video looks really bad compared to the original. There will be a proper capped.tv upload in the future.
ABBUC Magazin 99 intro

2010-04-28 IDE update 1.4.3 released

After having recovered from BreakPoint 2010 I managed to compile a new version.

Features: See the tab "Features" on WUDSN IDE for screen shots
  • The compiler output directory mode in the preferences now also allows the specification of a fixed folder to simplify cases where you for example compile into the hard disk emulation folder without creating disk images. I hope Jonathan will be happy with it :-)
  • The graphics editor can now also save images as ".bmp", ".gif" and ".jpg"
  • The graphics editor supports relative file paths. If the file path is in the same folder as the ".cnv" file, it it automatically converted to a relative file path when the file name is defaulted or picked from the file browser dialog. This allows to move the ".cnv" file and the referenced source files around together without breaking the saved paths
  • The hex editor now displays the file length and file mode in separate fields
  • The hex editor now has auto detection support for the following file types and allows explicit switching between them, in case the it is possible: binary file, Atari COM files (with blocks), Atari ATR disk image (with sectors). It detects the cases when the file type does not match at all and the case when only the end of the file if corrupted
  • The hex editor context menu now has entries to copy the marked file section to the clipboard in different formats: hex values (".byte $01,$02,..."), decimal values (".byte 1,2,...") and ASCII string. This is very helpful to turn parts of a file into source code. The possibility to copy/paste into the binary file itself in order to modify is prepared but not working yet and will be completed later
  • Upon request of Nick Westgate , one of the developers of the Java based Apple 2 emulator Java-ACE - the new platform "Apple 2" has been added. The current extensions are only stubs for Nick to start, but I'm really looking forward to his contribution
Fixes:
  • The output file is not opened anymore in case it has been there before but was not updated by the compiler due to compiler errors
  • The scroll bar and cursor in the editor are now stable also in the cases when the outline is changed by the latest user input
  • The hex editor now get the focus correctly also when clicking on already opened files
  • The XHTML errors on the web site have been cleaned up

2010-04-27 BreakPoint 2010 - The day after tomorrow

BreakPoint 2010 was absolutely great. I never thought I'd be there and in particular not with my Atari. Since I was quite unprepared I had no camera with me and so there are only the pictures Mr. Curly from Abyss Connection took while I was running my demos on this Commodore monitor which did not like the composite signal at all. For those whole like to get a feeling of the party I recommend visiting the BreakPoint web site. In addition you should image a dark hall crowded with crazy people and huge posters like this one ;-)
Me at BreakPoint with my Atari My ABBUC 34 intro on a Commodore monitor ;-)

2010-03-29 HomeCon 5 Invitation

The HomeCon is a small German convention for 8/16 bit consoles and is organized every 3-4 months in the area of Frankfurt/Germany. I have been there 3 times by now and have met many cool and crazy people. Based on some party coding I did to show the way WUDSN IDE works, I decided to promote the party by turning my party coding into a real invitation. Given that fact that there have been more than 400 views on YouTube already, I think it is really time to upload my latest production to my own site. Since the YouTube video is my first upload ever, then encoding is quite jerking and one sound channel is missing. So you might better check out the entry in the Productions area, read the German blog entry or visit Pouet to leave some comments.
HomeCon 5 invitation

2010-03-28 Site Update

After a long period of being busy with things that provide money, I finally managed to come back to the things that provide fun. All the time I shied away from creating a new version of the IDE because I had a lot of changes to the site structure pending which I wanted to finish first. Now finally it's done. The WUDSN site is now member of the Atari 8-bit WebRing . Thanks to Raphael Espino for his support. In addition you can now find it via DMOZ Directory in the branch Computers > Systems > Atari > 8-Bit . And those who like that new way of chatting, you can now contact me via WUDSN on Twitter .

2009-10-11 IDE update 1.4.2 released

Once again it's early morning and I'm finally done with packaging the new version. As usual you can update the feature via the update site. Note that the file format of the ".cnv" files for the graphics editor alpha version has changed incompatibly - and probably also not for the the last time ;-)

Features: See the tab "Features" on WUDSN IDE for screen shots
  • The context menu entries "Open Folder", "Open With Hex Editor", "Open Graphics Editor" are now positioned as they should be in the project explorer context menu
  • New context menu in the hex editor with the entry "Copy as Hex Values"
  • New context menu entry "Open With Graphics Editor" in the hyperlink navigation for binary includes
  • The graphics editor has an improved layout, better checks and supported saving the resulting image as ".png" file
  • The dependency to the "org.eclipse.jdt.code" plugin has been removed, so you can run WUDSN IDE in a minimal Eclipse installation without the Java Development Toolkit (JDT). I use this for example to run Eclipse in an Ubuntu Linux image test bed in Virtualbox
  • Separate content types for Atari 8-bit and C64 source files
  • Separate compiler preferences pages for Atari 8-bit and C64 compilers
  • Preliminary support for the C64 compiler "ACME". It will take some to to complete this since it support quite complex syntax. But I have managed MADS, so I'm going to manage this once also - and code a HomeCon invitation on C64 as a tribute maybe
    Hardware Compiler Download Help Compiling Single-Line Comments Block Comments Strings Opcodes Directives Compile Log Parsing Content Outline Hyperlink Navigation Label Definition Files Format
    C64 ACME Yes Yes Yes Yes: ;| n/a Yes: " Yes Yes Yes Yes Yes ACME
Fixes:
  • The line end comments are now used as description for source and binary includes in the content outline
  • The "Open Folder" context menu entry works again, bug was introduced in version 1.4.0
  • The folder which contains the output file and the symbols file is refreshed automatically after compiling to ensure that the Eclipse resource cache is in synch with the file system

2009-10-09 IDE update 1.4.2 announced

As you can see it took far more time but now the features tab is updated. I have added all the new features of version 1.4.0 and also the features from version 1.4.2 which is going to be released next weekend. Originally I had planned to use "PNG" as the file format for the conversion files of the graphics editor. The idea was to store the converted image as thumbnail in the conversion file itself. This way you could have watched the conversion files in the Explorer directly without creating separate image files. I got the idea from the nice game "Crayon Physics" which I bought some time ago. There they use the "tEXt" chunks of the PNG file to store the level information together with the level map thumbnail. Unfortunately it turned out that - even after tweaking the registry - Windows refused to display thumbnails of PNG files if the file extensions was ".cnv" and not ".png". And since I want to keep the focus of this project I decided not to start creating C# code or DLLs to make that work. So I had to revert all my changes for the file format and that is the reason why there is no official version 1.4.1.
Open to try to open this file with a text editor and search for 'tEXt'

A major enhancement of the forthcoming version is the result of the past two HomeCon parties where I met many very nice people using Commodore machines. Some of them were very interested in WUDSN IDE an Draco provided me the ACME compiler and samples source (after he actually bought an Atari 800 XL, too ;-). So I added the support for multiple types of hardware, i.e. besides Atari 8-bit compilers now also C64 compilers and emulators can be added.
The first version of C64
			compiler integration in WUDSN IDE

2009-09-13 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.

2009-09-10 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

2009-07-26 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 to the 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.

2009-07-22 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.

    Compiler Operating System Architecture Compiler Version Executable 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.

2009-07-12 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".

2009-07-10 Visdom Logo

Thanks to Thorsten, the web-master of www.nizagam.org for creating the following absolutely cool impression of this historical moment of 1992. Funny, when I first created this site, I tried to do exactly the same using a face-morphing program. Well, the result was an epic fail. So I have added Thorsten's excellent version to the FAQ section.

VISDOM becomes WUDSN

2009-07-08 MADS and Mac OS X

Thanks for the support from Tebe regarding MADS and thanks for the support from Spookt regarding Mac OS X! Meanwhile a lot of bug fixes and new features are ready, especially the first version of the compile log parser for MADS works now. The sheer amount of 115 additional directives in MADS made it a tough job to get the syntax coloring correct, but now I'm through. So prepare for WUDSN IDE 1.2.0 next weekend. I hardly dare to think of the content outline parser, therefore that will be included at earliest in the subsequent version...

2009-06-28 IDE update 1.1.0 released

You can use the menu entry "Help/Software updates/Available Software" to update from version 1.0.0 to 1.1.0.
If you have problem during installation, uninstall version 1.0.0 first.
Note that you have to do you compiler settings again since the data structure of the preferences was changed to support multiple compilers at once.

Features: See the tab "Features" on WUDSN IDE for screen shots
  • New content type and file association for "MADS Source File (*.asm)".
  • Dedicated syntax highlighting and content assist icon for pseudo opcodes, for example "BGE" and "BGE" in ATASM.
  • Configurable support for 16-bit opcodes of 65816.
  • New menu entry "Compiler Help" opens the compiler specific documentation if it is available.
  • Preliminary support for MADS and XASM, will be completed over time.
  • Extension mechanism to include additional compilers via Eclipse extension points and improve them step by step.
  • Download hyperlink labels in the preferences to download the compilers and emulator to simplify installation.
  • Default extensions for path browsing in the preferences is now "*.exe" on windows, and "*.*" on all other operation systems including Mac OS X.
  • Build-in read-only hex editor with support for Atari COM files and file segment outline.
  • Choice via popup menu for binary includes to open the file with the build in hex editor, the default Eclipse editor (e.g. a text editor), system editor (e.g. an emulator or a paint program).
  • German localization for all Eclipse plugin texts. The original compiler messages are not translated.
Fixes:
  • ResourceException in German installations fixed.
  • Syntax highlighting settings are now correctly restore upon "Restore Defaults".
Site Update:
  • Features section updated with the latest features and screen shots.
  • Download for single archive containing all supported Atari compilers including the Mac OS X versions provided by Spookt.
  • See the tab Features on WUDSN IDE for the new installation description.
    • ATASM 1.06, Windows and MaxOS X.
    • MADS 1.8.5, Windows and MaxOS X (version 1.8.4).
    • XASM 3.0.1, Windows.

2009-06-09 Site update

New section FAQ added with "What is WUDSN?" and "Why did you create WUDSN IDE?"
Broken links fixed, favorite icon fixed (moved to web root), XHTML errors fixed, e-mail scripted against spam.
MADS support added as planned feature, provided there are people helping with that.
Project creation example extended to directly open the correct editor. Screen shots added.

2009-06-08 First official version 1.0.0 of WUDSN IDE released

I am very happy to announce that finally "WUDSN IDE", the free integrated Atari 8-bit development plugin for Eclipse is available.
It features syntax highlighting, content assistance, content outlining and many more features which are helpful when developing 6502 assembler code.
The first version is 1.0.0 and was released on 2009-06-08 .
I have released it though I know about some bugs already, but - damn it - I need to get this web site up and running now.
If you already have Eclipse 3.3 oder newer installed, just add http://www.wudsn.com/update to the available update sites and install the latest version.
Click on the tab WUDSN IDE to get a complete overview of the features and the the instructions how to install and configure the plugin.

Fully integrated editor

What is WUDSN?

Back in 1992 I was sitting in my room together with my friend Erwin Steif . There was a demo group called "Visdom" which produced demos for the Amiga and I was the "8-bit guy" in that group. I always tried to port the latest releases of my friends from the Amiga to my Atari, just to keep them angry. That day I was using DPaint 3 on my Amiga 500 to draw the "Visdom" logo you can see above. After a while I was very satisfied with the result. Then I left the room just for two minutes and when I returned there was no longer "Visdom" on my screen, but Erwin had all the letters mixed and mirrored. It looked like the drawing of a three years' old nerd who hit the mouse and the keyboard for the first time and it read "WUDSN". So Erwin smiled at me and announced: "I have just founded the first demo group which only consists of people who don't know how to code". Because I created the basis for the logo (actually I had to draw it again because my version had not been saved...) I became a honorary member of "WUDSN". Note that all this has absolute nothing to do with the Waseda University Doctoral Student Network (WUDSN) , except that we share the same acronym.

Thanks to Thorsten, the web-master of www.nizagam.org for creating the following absolutely cool impression of this historical moment of 1992.

VISDOM becomes WUDSN

Why did you create WUDSN IDE?

I've been working with Eclipse as IDE more than 5 years now. When I was in a different company, one of my team members created a small Eclipse plugin to integrate our repository and our pre-processor with the IDE to simplify the life of our developers. Meanwhile I am working for SAP and have no way of coding Java anymore at work, so I tried at least to code some Atari demos when I'm late in the office. But I could not find a reasonable, free editor which was legal and able to run ATASM (under Vista the output could not be captured). And then one day a colleague told me "Look I have created an editor with syntax highlighting and code completion in 1 day based on the 'xText' domain specific language (DSL) tool from openArchitectureWare . That was the day when my idea was born and two weeks later there was a first version for ATASM. Thanks to Alexander Nittka for that. But it was incomplete and the way the ATASM/assembler syntax work is quite different from todays XML like languages. As a result I got stuck. 4 weeks later my hard disk reported a physical error and than never reported anything again. All source where lost. Today I call it good luck, because I had to start all over and now have a quite good experience in what can be done in Eclipse easily and how. I also found the ASMPlugin for Eclipse on SourceForge. This plugin is targeted at x86 development on PC and it was the template from which I started to create my own plugin. Thanks to Andy Reek and Daniel Mitte for that. Meanwhile the IDE has matured and thanks to the continuous development of the excellent MADS compiler by Tomasz Biela (tebe) and the excellent Altirra emulator by Avery Lee (phaeron) it now represents probably the best cross-platform 6502 assembler IDE. Most features like content outline, hyperlink navigation and content assistances for opcodes, labels, macros and so on where only a far away dream when I started, but now they are for real and they become better with every release.

Where can I find answers for problems regarding WUDSN IDE?

First you should check the FAQ section on the WUDSN IDE tab. If you cannot find the answer there, you can use the corresponding threads I have created in the in English AtariAge forum or the German ABBUC forum . Of course you can also just write an e-mail to My e-mail address or drop me some lines on Twitter .

Impressum

Für den Inhalt verantwortlicher Ansprechpartner:

Impressum

Haftung für Inhalte:

Die Inhalte unserer Seiten wurden mit größter Sorgfalt erstellt. Für die Richtigkeit, Vollständigkeit und Aktualität der Inhalte können wir jedoch keine Gewähr übernehmen.

Als Diensteanbieter sind wir gemäß § 7 Abs.1 TMG für eigene Inhalte auf diesen Seiten nach den allgemeinen Gesetzen verantwortlich. Nach §§ 8 bis 10 TMG sind wir als Diensteanbieter jedoch nicht verpflichtet, übermittelte oder gespeicherte fremde Informationen zu überwachen oder nach Umständen zu forschen, die auf eine rechtswidrige Tätigkeit hinweisen. Verpflichtungen zur Entfernung oder Sperrung der Nutzung von Informationen nach den allgemeinen Gesetzen bleiben hiervon unberührt. Eine diesbezügliche Haftung ist jedoch erst ab dem Zeitpunkt der Kenntnis einer konkreten Rechtsverletzung möglich. Bei bekannt werden von entsprechenden Rechtsverletzungen werden wir diese Inhalte umgehend entfernen.

Haftung für Links:

Unser Angebot enthält Links zu externen Webseiten Dritter, auf deren Inhalte wir keinen Einfluss haben. Deshalb können wir für diese fremden Inhalte auch keine Gewähr übernehmen. Für die Inhalte der verlinkten Seiten ist stets der jeweilige Anbieter oder Betreiber der Seiten verantwortlich. Die verlinkten Seiten wurden zum Zeitpunkt der Verlinkung auf mögliche Rechtsverstöße überprüft. Rechtswidrige Inhalte waren zum Zeitpunkt der Verlinkung nicht erkennbar. Eine permanente inhaltliche Kontrolle der verlinkten Seiten ist jedoch ohne konkrete Anhaltspunkte einer Rechtsverletzung nicht zumutbar. Bei bekannt werden von Rechts- verletzungen werden wir derartige Links umgehend entfernen.

Urheberrecht:

Die durch die Seitenbetreiber erstellten Inhalte und Werke auf diesen Seiten unterliegen dem deutschen Urheberrecht. Beiträge Dritter sind als solche gekennzeichnet. Die Vervielfältigung, Bearbeitung, Verbreitung und jede Art der Verwertung außerhalb der Grenzen des Urheberrechtes bedürfen der schriftlichen Zustimmung des jeweiligen Autors bzw. Erstellers. Downloads und Kopien dieser Seite sind nur für den privaten, nicht kommerziellen Gebrauch gestattet.

Die Betreiber der Seiten sind bemüht, stets die Urheberrechte anderer zu beachten bzw. auf selbst erstellte sowie lizenzfreie Werke zurückzugreifen.

Datenschutz:

Soweit auf unseren Seiten personenbezogene Daten (beispielsweise Name, Anschrift oder eMail-Adressen) erhoben werden, erfolgt dies soweit möglich stets auf freiwilliger Basis. Die Nutzung der Angebote und Dienste ist, soweit möglich, stets ohne Angabe personenbezogener Daten möglich.

Wir weisen darauf hin, dass die Datenübertragung im Internet (z.B. bei der Kommunikation per E-Mail) Sicherheitslücken aufweisen kann. Ein lückenloser Schutz der Daten vor dem Zugriff durch Dritte ist nicht möglich.

Der Nutzung von im Rahmen der Impressumspflicht veröffentlichten Kontaktdaten durch Dritte zur Übersendung von nicht ausdrücklich angeforderter Werbung und Informationsmaterialien wird hiermit ausdrücklich widersprochen.Die Betreiber der Seiten behalten sich ausdrücklich rechtliche Schritte im Falle der unverlangten Zusendung von Werbeinformationen, etwa durch Spam-Mails, vor.

Quelle:

eRecht24.de - Rechtsberatung von Anwalt Sören Siebert

Welcome to "WUDSN IDE", the free integrated Apple II, Atari 2600, Atari 7800, Atari 8-bit, C64 and NES development plugin for Eclipse

WUDSN IDE combines the powerful capabilities of Eclipse with the speed of native 6502 cross compilers.
If you already have Eclipse 3.6 oder newer installed, just add http://www.wudsn.com/update to the available update sites and install the latest version of the plugin.
Click on the tab Tutorials to see the short video tutorials, the tab Features to get a complete overview of the all features and details and on the tab Installation for the instructions how to install and configure the plugin. In case of problems check the FAQ tab for answers to known problems.
The latest version is 1.6.3 and was released on 2012-08-09 .

If you have comments, bugs reports or suggestions, please contact me per e-mail to My e-mail address or drop me some lines on Facebook Twitter .
You can also use the corresponding threads in the com.sys.apple2 newsgroup , AtariAge forum , the ABBUC forum (German) , CSDB forum and NesDev forum .

Fully integrated editor
When I was thinking about creating tutorials, I decided not to simply write text but to create short videos instead. They are best viewed in full screen mode and in HD video resolution. I think this is the best way to show how things are intended to be used. On the other hand, these tutorials cannot tackle every detail of a supported feature. So please also check the features section.

Part 1: Introduction, Installation and Use
Tutorial part 1
Part 2: Setting up Perspective, Views and Editors
Tutorial part 2
Part 3: Setting up Editors and File Extensions correctly
Tutorial part 3
Part 4: Syntax highlighting and Content Assist
Tutorial part 4
Part 5: Working with Projects, Folders and Files
Tutorial part 5
Part 6: Content Outline and Navigation - the Heart of the IDE
Tutorial part 6
Part 7: New Features in version 1.6.0
Tutorial part 7
Part 8: New Features in version 1.6.2
Tutorial part 8
Part 9: Source Level Debugging
Tutorial part 9
The latest version contains the following features:
General IDE enhancements   » top
  • "Open Folder" context menu available for all folders and files
  • "Sort" context menu with sub-menu available for all text files including
    • Case sensitive, case insensitive and numeric sorting
    • Sorting with and without removal of duplicates
    • Reverse ordering
    Open folder action in context menu Sort action in text editor context menu
  • The online help contains the entry "WUDSN IDE Guide" which contains multiple sections.
    • WUDSN IDE - mainly the documentation from the web site
      • Video links to the tutorial and release news
      • Features
      • Installation
      • FQA
      • Link
    • 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
    • Hardware - 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
Fully integrated assembler editor   » top
  • The Eclipse platform contains editors like for example the generic text editor. Editors can support one or more content types identified by file extensions. One editor can be the default for a specific file extension. WUDSN IDE provides an assembler editor and a corresponding content type for every compiler. Every assembler editor has a default compiler associated which in turn defines via the preferences which application is used to run the output file.
    IDE editors, content types and file associations
  • New content types and file associations for Atari 2600 compilers
    • DASM Source File (*.asm)
  • New content types and file associations for Atari 8-bit compilers
    • ATASM Source File (*.asm)
    • MADS Source File (*.asm, default)
    • XASM Source File (*.asx, default)
  • New content types and file associations for C64 compilers
    • ACME Source File (*.a, default)
  • New content types and file associations for NES compilers
    • ASM6 Source File (*.asm)
  • The default editor for an extension can be configured in section "File Associations" of the preferences with the button "Default"
    IDE file associations
  • Syntax highlighting colors and styles for comments, directives, all types of identifiers, legal opcodes, illegal opcodes, pseudo opcodes and strings
  • Single line comments for the current line selection can be toggled using "CTRL-7" or the editor context menu entry "Toggle Comment"
  • Configurable support for 16-bit opcodes of 65816
  • Build in support for ATASM compiler , MADS compiler , XASM compiler , ACME compiler
  • Build in support for running compiler output files with the operating system default application without configuration effort
  • Build in support for Altirra emulator , Atari800Win emulator , Atari800MacX emulator , Atari++ emulator
  • Adding support for new compilers and application is possible via Eclipse extension points
    IDE compiler extensions
  • Compile or compile and run with a single key stroke or via menu
  • Toolbar button for "Compile and Run" which adapts to the hardware of the currently opened editor, for example it will show a C64 icon when using the "ACME (C64)" editor
  • The toolbar button for "Compile and Run" offers a pulldown menu which allows to run the output file with any of the applications configured in the preferences. This way you can run the output file easily with different emulators without changing the preferences. That can be very helpful if one emulator show a different behaviour than another or in case you have specified a build script as user defined application in the preferences
    Run with... for Atari 2600 Run with... for Atari 8-bit Run with... for C64
  • Open source and output folder directly from menu
  • Open compiler help directly from menu if the documentation is available in the default folder structure of the compiler executable
    IDE assembler menu
  • Complete list of compiler error and warning messages in the problems view
  • Direct navigation to the source location of the via double click on the problem message
  • Problem markers in the scroll area including tooltip with problem message
    IDE example source
  • German localization for all Eclipse plugin texts. The original compiler messages are not translated but some are mapped automatically
    • ATASM ".bank" warnings are mapped to info messages
  • Console view with original compiler output opens automatically in the background after compiling which useful in cases where the plugin is not yet complete. The "Compiler Console" is automatically brought to front when the compiler starts. This prevents the compiler output from being hidden behind other consoles in the console view
    IDE compiler console view
Content outline and source folding   » top
  • Activated via the standard menu "Window/Show View/Outline"
  • Automated asynchronous parsing while typing
  • Automated recursive parsing of source includes and merge with current outline
  • Positioning in the content outline remains stable while typing unless structure changes appear
  • Folding is active automatically when outline is visible
  • Folding for if/else/endif blocks
  • Outline and folding for definition section and implementation sections
  • Outline for equate definitions (including defining expression), label definitions and variable definitions
  • Outline and folding for enum and struct definitions
  • Outline and folding for macros definitions
  • Outline and folding for repeat sections
  • Outline and folding for procedure definitions
  • Outline and folding for local sections
  • Outline for source includes and binary includes
  • Type specific outline icons
  • Nested folding with tooltip for folded sections
  • Line end comment is used as short description
  • Toolbar with button to toggle the sorting order of 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
    IDE content folding
Content assist and code completion   » top
  • Content assist by pressing CTRL-Space for directives, legal opcode, illegal opcodes and pseudo opcodes
  • The content assist also recognizes if there is already and instruction in the current line and suggests the available identifiers instead if this is the case. This is the first version and it supports global identifiers in the current source file and source file included from there. Scoped identifiers of the form "a.b" are not yet supported
  • Completion proposal auto activation without pressing CTRL-Space after typing compiler dependent characters, for example "." in ATASM, "." or "#" in MADS and "!" in ACME
  • Type specific icon and mnemonic highlighting
  • Progressive filtering as you type
  • Automatic detection of lower case / upper case based on current input
  • Default case configurable in preferences
  • Illegal opcodes can be hidden via preferences
  • 16-bit opcodes of 65816 can hidden via preferences
    IDE content assist
  • Multi-line content completion and explicit cursor positioning, for example ".MA" becomes ".MACRO <cursor is here> <newline> .ENDM"
    Muli-line content completion and cursor positioning
  • Hyperlink navigation via CTRL-click to source includes and binary includes
  • Support for relative and absolute file paths
  • Source file are always opened with the same assembler editor, irrespective of the extension
  • The ".asm" extension for "ICL" source includes is appended automatically in MADS, if it is missing
  • The ".asx" extension for "ICL" source includes is appended automatically in XASM, if it is missing
  • Choice for binary includes to open the file with
    • the build in hex editor
    • the build in graphics editor
    • the default Eclipse editor (e.g. a text editor)
    • system editor (e.g. an emulator or a paint program)
  • Hyperlink navigation via CTRL-click to labels, equates, local definitions, macro definitions and procedure definitions. In case there is only one target, direct navigation takes place. In case there is more than one possible target, the type and line number of the target are displayed in a hyperlink popup. All included source files are also taken into account like in the content outline. In case there are targets from different files, the file name is also displayed as differentiator in the hyperlink popup.

    IDE navigation to source file
    IDE navigation to binary file
    IDE navigation to labels, equates, local definitions, macro definitions and procedure definitions
Creation of label definition files for emulators   » top
  • Automated creation of label definition files for compilers which for not support the required format
  • Label files be loaded directly into the emulator using the "LABELS" command of the debugger, for example Atar800Win can load the "xasm-3.0.1" standard format
    IDE success messages
    Atari800Win labels
Hex Editor   » top
  • Read-only hex editor to inspect arbitrary files
  • Available via context menu including multi-file-selection to open several files at once
    Open With Hex Editor
  • The "Open With Hex Editor" menu entry 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
  • Available via hyperlink navigation for binary includes
  • Context menu to copy parts of the file into the clipboard in different formats:
    • hex values (".byte $01,$02,...")
    • decimal values (".byte 1,2,...")
    • ASCII string
    This is very helpful to turn parts of a file into source code. The possibility to copy/paste into the binary file itself in order to modify is prepared but not working yet and will be completed later.
    Hex Editor context menu
  • Support for binary files, Atari COM files and Atari Disk Images
    Hex Editor file mode selection
  • The possible file modes for a binary file are computed automatically and used as default when opening the file
  • Unsupported file modes are detected and cannot be used
  • Files with a block structure get an outline in the outline view
  • Files with a corrupted block structure are detected and displayed as good as possible
    Hex Editor outline view
    Hex Editor with corrupted Atari COM file
Graphics Editor   »
  • Viewer for binary files and 8-bit image files.
    The most suitable supported converter and the corresponding default parameters are computed based on the file content, size and extension.
    The converters for the Atari standard image formats are based on FAIL , the excellent First Atari Image Library created by Piotr Fusik and Adrian Matoga.
    Platform File Extension File Format
    Atari 8-bit AP3 80x192, 256 colors, interlaced
    Atari 8-bit APC Any Point, Any Color, 80x96, 256 colors, interlaced
    Atari 8-bit CHR 8x8 charset, mono or multicolor
    Atari 8-bit CCI Champions' Interlace, 160x192, compressed
    Atari 8-bit CIN Champions' Interlace, 160x192
    Atari 8-bit CHG Gephard Hires Graphics, up to 320x200, mono
    Atari 8-bit CPR Trzmiel, 320x192, mono, compressed
    Atari 8-bit FNT Standard 8x8 font, mono
    Atari 8-bit GR8 Standard 320x192, mono
    Atari 8-bit GR9 Standard 80x192, grayscale
    Atari 8-bit HIP Hard Interlace Picture, 160x200, grayscale
    Atari 8-bit HR Hires 256x239, 3 colors, interlaced
    Atari 8-bit HR2 Hires 320x200, 5 colors, interlaced
    Atari 8-bit ILC APAC 80x192, 256 colors interlaced
    Atari 8-bit INP Interlace Picture 160x200, 7 colors, interlaced
    Atari 8-bit INT INT95a, up to 160x239, 16 colors, interlaced
    Atari 8-bit MCP McPainter, 160x200, 16 colors, interlaced
    Atari 8-bit MIC Micropainter 160x192, 4 colors
    Atari 8-bit PIC Koala MicroIllustrator, 160x192, 4 colors, compressed
    Atari 8-bit PLM Plama 256, 80x96, 256 colors
    Atari 8-bit RIP Rocky Interlace Picture, up to 160x239
    Atari 8-bit SXS 16x16 font, mono
    Atari 8-bit TIP Taquart Interlace Picture, up to 160x119
    C64 64C Charset, mono or multi color
    C64 SPR Sprite, mono or multi color
  • Viewer for GIF/JPG/BMP/PNG images
  • Available via context menu including multi-file-selection to open several files at once
    Open With Graphics Editor
  • The "Open With Graphics Editor" menu entry closes an existing editor in case the file is already opened and thereby forces the file to be opened with the graphics editor. In addition the graphics 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 graphics 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
  • Available via hyperlink navigation for binary includes
  • Conversion from binary files or 8-bit images files to GIF/JPG/BMP/PNG images
    • Up to different 3 source files depending on the converter
    • Configurable start offset for every source file, useful for extracting character sets
    • Configurable palette via the Image Palette view
    • Configurable number of rows and columns
    • Configurable spacing width for and spacing color to separate tiles and unused areas
    • Separate aspect ratio for display and saving the image file
    Conversion from binary files or 8-bit images files to GIF/JPG/BMP/PNG images
  • Conversion from GIF/JPG/BMP/PNG images to binary files or 8-bit images using JavaScript.
    • Separate aspect ratio for loading and displaying the image file
    • Default scripts are included. They can adjusted and saved along with the other parameters

    Conversion from GIF/JPG/BMP/PNG images to binary files or 8-bit images files
  • The image palette view associated with the graphics editor displays the palette entries and the color histogram. It supports filtering of unused colors, sorting by index and color frequencies, pre-settings and editing the palette when displaying 8-bit images
    Image palette view
  • Conversion files with extension ".cnv" are used to save the conversion direction and all conversion parameters
  • Support for relative file paths. If the file path is in the same folder as the ".cnv" file, it it automatically converted to a relative file path when the file name is defaulted or picked from the file browser dialog. This allows to move the ".cnv" file and the referenced source files around together without breaking the saved paths
Preferences for editing   » top
  • Available via entry "Preferences" from the menu "Window" (in Windows and Linux) or the menu "Eclipse" (in Mac OS X)
  • Configuration of syntax highlighting colors and styles for comments, directives, all types of identifiers, legal opcodes, illegal opcodes, numbers, pseudo opcodes and strings
  • For non unique identifiers, the syntax highlighting will try to be a best guess
  • Configuration of default case in content assist
    Preferences for compilers
Preferences for compiling   » top
  • Available via entry "Preferences" from the menu "Window" (in Windows and Linux) or the menu "Eclipse" (in Mac OS X)
  • Separate compiler preferences page for every type of hardware, i.e. Atari 8-bit and C64; Apple 2 support is in development by Nick Westgate
  • Preferences can be maintained for all compilers in parallel
  • Upon opening the compiler preferences, the tab for the compiler of the active editor is activated automatically
  • Configuration of illegal opcodes and 65816 opcodes support in syntax highlighting and content assist
    The configuration is offered only if the compiler supports the respective feature
  • Download links, configurable paths and default parameters for all compilers
  • The default file extension filter is set to "*.exe" on Windows and "*.*" on all other operating systems
  • The button "Apply Defaults" does explicitly not reset the paths to the executables
  • Configuration of parameters per compiler including predefined defaults to run out-of-the-box
    Possible variables are:
    • {$sourceFolderPath} The absolute path to the source folder
    • {$sourceFilePath} The absolute path to the source file
    • {$outputFolderPath} The absolute path to the output folder
    • {$outputFilePath} The absolute path to the output file
    • {$outputFileName} The name of the output file including its extension, for example "TestFile123.asm"
    • {$outputFileNameWithoutExtension} The name of the output file without extension, for example "TestFile123"
    • {$outputFileNameShortWithoutExtension} The name of the output file without extension shortened to 8 alphanumeric characters, for example "TESTFILE"
    Make sure that you don't remove parameters when you specify your own values
    If not, either creating the label definition file or parsing the compiler log may fail
    • ATASM requires the "-s" parameter to be present"
    • MADS requires the "-p" parameter to be present
    • ACME requires the "!to" directive in the source to be commented out to ensure the output file name from the command line is used
  • Preferences can be maintained for all possible applications of all compilers in parallel
    • Possibility to use the "Default Application" of the platform to open the output file
      For Windows and Mac OS X choosing the "Default Application" means that for ".xex" file the emulator will be started automatically without any further configuration
    • Possibility to use one of the pre-defined applications and optionally change the command line
    • Possibility to use a user defined application to open the output file
    • Possible variables are:
      • {$runnerExecutablePath} The absolute path to the executable of the application
      • {$sourceFolderPath} The absolute path to the source folder
      • {$sourceFilePath} The absolute path to the source file
      • {$outputFolderPath} The absolute path to the output folder
      • {$outputFilePath} The absolute path to the output file
      • {$outputFileName} The name of the output file including its extension, for example "TestFile123.asm"
      • {$outputFileNameWithoutExtension} The name of the output file without extension, for example "TestFile123"
      • {$outputFileNameShortWithoutExtension} The name of the output file without extension shortened to 8 alphanumeric characters, for example "TESTFILE"
  • Download links, configurable paths and default command lines for Atari++, Atari800Win, Atari800MacX emulators per compiler
  • The default file extension filter is set to "*.exe" on Windows and "*.*" on all other operating systems
    Preferences for compilers
Known bugs   » top
Open bugs:
  • If you find any, please contact me
Fixed bugs:
  • Hyperlink navigation now also works for labels which contain an underscore
  • The key binding for the "Compile" menu is now "Shift-Ctrl-9" because it turned out that "Ctrl-0" is not available in all cases
  • The HexEditor is now also detecting the situation that the first block of a COM file is incorrect and display this correctly
  • Content assist has now correct new lines when inserting #IF, #WHILE and .TEST
  • Fonts and colors resources are disposed correctly now
  • Resetting to default syntax colors in the preferences works now
  • Elements of .ENUM are recognized as equates now also if they do not start of position 0
  • Elements of .STRUCT are recognized as labels now also if they do not start of position 0
  • Cursor is now position to the first character of an equate or label also if it is not defined starting at position 0
  • Syntax highlighting remains active now also after "Save as..."
  • Cursor is now placed correctly by content assist
  • The key binding for the "Compile" menu is now "Ctrl-0" instead of "Ctrl-Alt-0", so entering "}" is now possible again
  • XASM editor now correctly detects the "ORG" directive
  • The assembler editor toolbar contribution now also displays the label "Assembler" in the customizing dialog for the perspective
  • The directive ".LOCAL" in ATASM is a normal directive now and does not start a folding section while in MADS it is really is a folding section from ".LOCAL" to ".ENDL"
  • "SIN()" and "RND()" in MADS are now recognized correctly even if there are no spaces before or after the directive
  • ".EN" and ."END" in MADS are now recognized correctly
  • Labels in "ORG" lines are now recognized correctly and rendered as separate tree entries
  • Preferences for lower/upper case instructions in content assist are now also evaluated if the for directives which do not start with letters like ".end"
  • When opening a file which is located outside of the workspace, the action to open folders and to compile the file are now not doing anything and will not cause exceptions. They will also be disabled once the new Eclipse version is mandatory
  • The 16 bytes per row in the hex editor are now separated by a space
  • The output file is not opened anymore in case it has been there before but was not updated by the compiler due to compiler errors
  • The scroll bar and cursor in the editor are now stable also in the cases when the outline is changed by the latest user input
  • The hex editor now get the focus correctly also when clicking on already opened files
  • The folder which contains the output file and the symbols file is refreshed automatically after compiling to ensure that the Eclipse resource cache is in synch with the file system
  • Line end comments are now used as description for source and binary includes in the content outline
  • The "Open Folder" context menu entry works again, bug was introduced in version 1.4.0
  • The "Assembler" menu is visible now only if an Assembler editor is active. The contained entries and their short cuts are now 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
  • The 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" since this is folder. The solution is a workaround to the a general Eclipse problem under MacOS X, see BUG 82155
  • The "OK" and "Apply" buttons in the preferences are now always enabled, irrespective of the specified compiler and emulator paths
  • The focus is not back in editor window after compiling
  • The syntax highlighting of illegal opcodes fixed, now also uses the preferences setting
  • On German operating systems, the properties for the correct locale are not found
Planned features   » top
  • See the table below for the current feature set for the features which depend on the compiler.
    Features which are not supported by the compiler itself and hence cannot be supported by the IDE are marked as "n/a".
    Compiler Default Hardware Auto Completion Activation Single-Line Comments Block Comments Strings Opcodes Directives Compile Log Parsing Include Log Parsing Content Outline Label Definition File Format
    ACME C64 Yes: ! Yes: ;| n/a Yes: " Yes Partly Yes TBD Partly ACME
    ATASM Atari 8-bit Yes: . Yes: ; n/a Yes: " Yes Yes Yes TBD Yes XASM 3.0.1
    MADS Atari 8-bit Yes: . # Yes: ; * // Yes Yes: ' " Yes Yes Yes TBD Yes MADS
    XASM Atari 8-bit n/a Yes: ; * | n/a Yes: ' " Yes Yes Planned TBD Yes XASM 3.0.1
The installation steps are described here. In case something is not correct or not working, please contact me:
Installing Eclipse   » top
  • Download Eclipse from http://www.eclipse.org/downloads
  • If you don't know which version to take, use Eclipse 3.7.2 Platform Runtime Binary (51 MB)
    This is a minimum size installation which does not include the Java Development Toolkit (JDT). WUDSN IDE has no dependency to the JDT but of course to the Java Runtime Environment (JRE). Make sure you also have the 64-bit version of the JRE installed if you want to use the 64-bit version of Eclipse
  • Unzip the downloaded archive file and store the contained folder "eclipse" where you want Eclipse to be located on you local harddrive
  • Start the Eclipse executable from that folder
  • Upon the first start you are prompted to specify the folder where the workspace shall be located
  • Normally a start link a created to this end. You can use the parameter "-nl" to specify the locale if you want. Use "en_US" for English or "de_DE" for German. Example: "C:\Program Files\Eclipse\3.7.2\eclipse\eclipse.exe" -Xmx512M -nl en_US"
  • It is recommended to create the workspace folder in your home directory
  • After you have read the welcome page and got familiar with the Eclipse UI, just switch to the Resource perspective
  • Open the view "Problems" via the menu "Window/Show View/Problems" and then click the entry "Configure Contents..." from its view menu
    Open configuration of the problems view
  • Select the configuration "All Errors", the radio button "On selected element and its children" and the check boxes ""Error", "Warning" and "Info"
    Configuration of the problems view
  • Now Eclipse itself is ready and you can proceed with step Installing WUDSN IDE
Installing WUDSN IDE   » top
  • Start Eclipse
  • Select the entry "Install New Software..." from the menu "Help"
  • Enter "http://www.wudsn.com/update" in the "Work with" field and press ENTER
  • Select the latest version of the feature "WUDSN IDE" for in and press the button "Next"
    You don't need to install the "General Eclipse Enhancements" feature as it is already included in the "WUDSN IDE" feature"
  • Review the installation details and press the button "Next"
  • Read the license agreement, choose the option "I accept..." and press the button "Finish"
  • In case you get a security warning that the content is unsigned, confirm the warning by pressing the button "OK"
  • When you are prompted to restart Eclipse not, press the button "Yes"
  • 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 from "http://www.wudsn.com/update/1.6.0", ""http://www.wudsn.com/update/1.6.2", etc.

    IDE installation steps
Installing compilers like ATASM, MADS, XASM...   » top
  • Start Eclipse
  • Select the entry "Preferences" from the menu "Window" (in Windows and Linux) or the menu "Eclipse" (in Mac OS X)
  • Open the preferences page "Assembler/Atari 8-bit Compilers" or the respective page for your platform.
  • Select the tab for the compiler of your choice
    The following compilers are or will be supported:
    Compiler Default Target Platform
    ACME C64
    ASM6 NES
    ATASM Atari 8-bit
    DASM Atari 2600
    KickAss C64
    MADS Atari 8-bit
    XASM Atari 8-bit
    TASS C64 (in preparation)
  • Click the "Download"" link to open the home page of the compiler
  • Follow the instruction on the download site for install the compiler to the folder of your choice
  • Alternatively you can download the single archive containing all supported 6502 compilers including the Linux and Mac OS X versions where available. The archive was updated on 2012-05-16.
    Compiler Operating System Architecture Compiler Version Executable Path Compile Date Compiled By
    ACME Windows Intel - 32 bit 0.90 ACME / acme.exe 2006-03-19 Krzysztof Dabrowski
    ASM6 Windows Intel - 32 bit 1.6 ASM6 / asm6.exe 2011-03-11 loopy
    ATASM Windows Intel - 32 bit 1.07 (non-final) ATASM / atasm.exe 2010-05-10 M. Schmelzenbach
    ATASM Mac OS X Intel 1.07 (non-final) ATASM / atasm.macosx-intel 2010-07-27 JAC
    ATASM Mac OS X PowerPC 1.07 (non-final) ATASM / atasm.macosx-powerpc 2010-07-27 JAC
    ATASM Linux Intel - 32 bit 1.07 (non-final) ATASM / atasm.linux-i386 2010-07-27 JAC
    ATASM Linux Intel - 64 bit 1.07 (non-final) ATASM / atasm.linux-x86-64 2010-XX-XX CAS
    DASM Windows Intel - 32 bit 2.20.11 DASM / bin / dasm.exe 2008-04-08 Peter H. Froehlich
    DASM Mac OS X PowerPC 2.20.11 DASM / bin / dasm.macosx-powerpc 2008-04-08 Peter H. Froehlich
    MADS Windows Intel - 32 bit 1.9.3 (new features since 1.9.0 are not supported in WUDSN IDE yet) MADS / mads.exe 2011-07-31 TeBe
    MADS Mac OS X Intel 1.9.3 (new features since 1.9.0 are not supported in WUDSN IDE yet) MADS / mads.macosx-intel 2011-09-25 JAC
    MADS Mac OS X PowerPC 1.9.3 (new features since 1.9.0 are not supported in WUDSN IDE yet) MADS / mads.macosx-powerpc 2011-09-25 JAC
    KickAss All Java V3.21 KICKASS / KickAss.jar 2011-09-28 Mads Nielsen
    MADS Linux Intel - 32 bit 1.9.0 MADS / mads.linux-i386 2010-07-27 JAC
    TASS Windows Intel - 32 bit 1.46 r38 TASS / 64tass.exe 2011-07-03 Soci
    XASM Windows Intel - 32 bit 3.0.2 XASM / xasm.exe 2009-10-17 0xF
    XASM Mac OS X Intel - 32 bit 3.0.1 XASM / xasm.macosx-intel 2009-07-18 Spookt
  • In the section "Browse..." button for the field "Path to Compiler" to locate the executable
  • If not explicit compiler parameters are specified, the default parameters are used
  • If explicit compiler parameters are specified, the default parameters are ignored
  • The variable "${sourceFilePath}" is replaced by the absolute path to the source file
    The variable "${outputFilePath}" is replaced by the absolute path to the output file
    For more variables see section preferences for compiling
  • Choose if you want to use the source folder or the temporary folder as output folder
  • Choose the file extension for the output file, for example ".xex" or ".bin"
  • Press the button "OK"
  • Using the button "Restore Defaults" all values are reset, except for the paths to the compilers

    Configuration of compiler executable path
  • Using the button "Default" in the "File Associations" preferences you can set the default editor for a file extension, for example "MADS" for "*.asm"
    IDE file associations
Installing Atari800Win and other emulators   » top
  • Start Eclipse
  • Select the entry "Preferences" from the menu "Window" (for Windows and Linux) or "Eclipse" (for Mac OS X)
  • Open the preferences page "Assembler/Atari 8-bit Compilers" and select to tab for your compiler
  • The field "Application to open Output File" is defaulted to "Default Application"
    • If you have the emulator registered as default application for the extension of the output file, for example "Atari800Win" or "Atari800MacX" for ".xex", you don't need to configure anything in addition and can skip the steps below
    • If your operating system, like for example Linux, does not support default applications or if you need a special output file extension and special parameters to open the output file in the emulator you can choose the emulator in the field "Application to open Output File" and configure the command line on the corresponding tab
    • You can also use the "User Defined Application" for open the output file with and arbitrary application like a script, linker or whatever
  • If you have not yet downloaded the corresponding emulator, you can use the download link on the tab of the emulator and follow the instruction on the download site for install the emulator
  • Use the "Browse..." button for the field "Path to Application" to locate the executable. If required you can specify your own command line based on the default command line displayed.
  • If not explicit command line is specified, the default command line is used
  • If an explicit command line is specified, the default command line is ignored
  • The variable "${runnerExecutablePath}" is replaced by the path to the application executable
    The variable "${outputFilePath}" is replaced by the absolute path to the output file
    For more variables see section preferences for compiling
  • Press the button "OK"
  • In case you also need the Atari ROM files, you can find them in the file PCXF380.ZIP which is available at http://www.emulators.com
  • The patch to convert the English version into a German version including a German keyboard layout is available from ABBUC . It also contains the ROM files
    Configuration of emulator executable path
Creating and compiling an example project   » top
  • Start Eclipse
  • Select the entry "New/Project" from the menu "File"
  • Select the wizard "General/Project" and press the button "Next"
  • Enter the project name "Atari800" and press the button "Finish"
  • The new project will appear in the "Project Explorer"
  • Select the newly created project and open its context menu
  • Select the entry "New/File", enter the file name "Example.asm" and press the button "Finish"
  • The new empty file will now be opened in the MADS editor
  • Copy the following source text and paste it into the file

    ; WUDSN IDE Atari Rainbow Example - MADS syntax

          org $4000 ;Start of code

    start lda #0 ;Disable screen DMA
          sta 559
    loop  lda $d40b ;Load VCOUNT
          clc
          adc 20 ;Add counter
          sta $d40a
          sta $d01a ;Change background color
          jmp loop

          run start ;Define run address

  • Select the entry "Compile and run" from the menu "Assembler" or press "SHIFT-CTRL-0"
  • Enjoy your famous first rainbow effect
  • In case of problems, open the view "Problems" and the output of the view "Console" for details and post a message with the screen shots in the English AtariAge forum if you get stuck

    Congratulations, when you did everything correctly - this is your first rainbow effect
Here you can find the answers to some frequently asked questions. If your question is not answered here, please have a look at the video tutorials or contact me.

Installation

How to I install Eclipse at all?

If you are no familiar with Eclipse at all, make sure that you have installed the Eclipse platform distribution only - without Java or J2EE tools. This distribution is much smaller (normally around 50-70 MB instead of 170 MD) and will not confuse you with tons of features and buttons you do not need at all. See the section "Installing Eclipse" on the tab "Installation" for the required steps.

When I try to start Eclipse is get an error like "Failed to load the JNI shared library 'C:\Program Files (x86)\Java\jre6\bin\client\jvm.dll'". What is wrong?

The Eclipse version and the Java version on your system are not compatible. The Eclipse is not pure Java, but uses platform specific native libraries to run and debug Java efficiently. For example you must install the 64-bit version Java (JRE or JDK) if you want to use the 64-bit version of the Eclipse. This is a frequent issue under Windows 7, because be default there is only the 32-bit version of Java installed. See the section "Installing Eclipse" on the tab "Installation" for the required steps.

How to I use Eclipse at all?

Start the build-in help of Eclipse via the menu "Help/Help Content" and read the section "Workbench User Guide".
Workbench user guide

Why is WUDSN IDE not available via the update site?

Most likely you typed in the wrong update site URL, for example using "wusdn" instead of "wudsn". The correct URL is "http://www.wudsn.com/update". In addition you should disable the checkbox "Hide items that are already installed", so you see what really is there. See the section "Installing WUDSN IDE" the tab "Installation" for the required steps.
Installation dialog with update site

Configuration

Why do I see wrong messages in the "Problems" view?

The default configuration of the "Problems" view show all error from all files in the current project. While this is a good default for Java programming, it does not fit at all for compiling single independent assembler files. Therefore you have to configure the "Problems" view accordingly. See the section "Installing Eclipse" on the tab "Installation" for the required steps.

Editing

Is there support for source version control?

Yes, there are several plugins available to connect Eclipse to CSV or subversion. Also the "Local History" feature is installed by default. You can configure it in the preferences. It automatically records all changes to the source file and let's you compare versions in-place.
Source version control

Is there support for block selection mode?

Yes, there is a toolbar button and the shortcut "ALT+SHIFT+A" to toggle block selection mode in all text editors. This can be very useful for adding and removing common prefixes such as line numbers.
Toggle block selection mode
In case the toolbar button is not visible, you have to set it to visible via the menu entry "Customize Perspective" in the context menu of the main toolbar. In the customizing dialog you have to activate the commend group "Editor Presentation" and then the toolbar entries you want to see.
Toggle block selection mode

Why does CTRL-Space not open content assist?

There is a known key conflict when using Messenger Plus Live! v4.85.0.386 with Microsoft Messenger 2009 on Windows 7 Ultimate. This may also occur in other version of course. Justin Payne has provided the following description of the solution.
  1. Start up and log into MS Messenger.
  2. From the main window, hit the ALT key to bring up the main menu and select "Plus! | Preferences & Options".
  3. From the Preferences Windows, Select the Messenger tab and uncheck "Activate Messenger Lock with a system-wide shortcut" OR change the value in it's text box to something other than "CTRL + Space"
  4. Select OK button.
The key combination can also be mapped to a feature found in "Region and Settings" under "Windows Control Panel". It was not tested if this will cause a conflict but if you are using multiple keyboard layouts, the CTRL-Space is mapped to allow you to cycle between the different keyboard regional layouts. You should probably be aware of how to turn the feature off since you're probably using this features, but if you don't...
  1. Within "Windows Control Panel", open "Region and Settings".
  2. Select the "Keyboard and Languages" tab, select "Change Keyboards...".
  3. In the "Text Services and Input Languages" windows, select "Advanced Key Settings".
  4. In the "Hot Keys for input languages" list box, select "Between input languages" and then select "Change Key Sequence..."
  5. In the "Change Key Sequence" window, choose another radio button other than the one next to CTRL+Shift.
  6. OK your way out of all of the screen.
Of course, this is Windows 7 and we know how Microsoft loves to change their layouts and names, but for fact this option is available back to Windows XP.

Compiling

Why is MADS the primary compiler?

When I started with WUDSN IDE, ATASM was the first support compiler. The reason was simple: 90% of my sources are in ATASM format. ATASM is very comprehensive and fast. Its capabilities to define constants an byte sequence is very complete (".BYTE", ".WORD", ".DBYTE", ".FLOAT", ."SBYTE" for ATASCII, ".CBYTE" for terminated strings, separate offset for all constants). Over time additional platform compilers haven been added and support for them will be completed step by step. When the support for MADS was rather complete, I found that it is the most powerful compiler I have ever seen and used. The support for ".PROC/.ENDPROC" has revolutionized the way I write assembler code now. It allows logical structuring and visibility control without any runtime overhead. At the same time MADS is compatible to MAC/65 and XASM and even ATASM sources can be adapted to MADS with a few minor changes described below. Therefore MADS is the primary compiler since WUDSN IDE version 1.6.0.

Why do I get the error "No ORG defined" when compiling the example from the tutorial?

Since WUDSN IDE version 1.6.0 MADS is the primary compiler which is registered for the file extensions ".asm" upon installation. You are trying to run the code example for version 1.5.0 or before, which is in ATASM format. Therefore you can either

How to I convert an ATASM source for to MADS format?

Because both ATASM and MADS syntax are based on the MAC/65 syntax, there are not really many differences. Therefore manual conversion using "Find/Replace (CTRL-F)" is very easy.
  • Replace the origin definition "* = address" by "ORG address".
  • Replace ".INCLUDE" by "ICL" for source includes.
  • Replace ".INCBIN" by "INS" for binary includes.
  • Replace "* = $2E0;.WORD address" by "RUN address" to specify the run address.
  • Replace "* = $2E2;.WORD address" by "INI address" to specify the init address.
  • Check the quotes of ".BYTE" and "DTA" statements. In MADS, single quotes result in ASCII codes, double quotes in ATARI screen codes.
  • Remove all ".BANK" statements. While ATASM sorts and merges all segments within one bank statement, MADS simply uses the order of segments as defined in the source file. Every "ORG" statement automatically generates new file segment.

How does ATASM generate segments in executable files?

A helpful feature for small projects is that by default ATASM sorts the segments by address and warns if the same address is overwritten by code or data. Since version 1.05 the ".BANK" directive is available, which allows you to create COM files with "INITAD" segments and arbitrary segment counts. If you don't use the ".BANK" directive, ATASM will sort the segments by their address and will put consecutive blocks into a single segment by default. While this saves some bytes, it might be confusing if you are used to other assemblers. Note that you have to use the ".SET 6" directive to set the assembler origin offset in every bank if you use it in one of the banks.

; Bank 0
.bank
.set 6,0
* = $8000
start lda #0
jmp *

; Bank 1
.bank .set 6,0
* = $2e0
.word start;

; Bank 2
.bank
.set 6,$4300-$C000
* = $C000
lda #1
sta label+1
label lda #2
jmp *

How do I compile ROM images?

Plain ROM Images do not have header bytes by default, or at least they do not have the same header bytes as executable files. In order to create raw object files without headers, compiler specific options have to be used. Some cases are listed below. See the manual of the specific compiler for more details.
  • ACME: Use the compiler parameter " -f plain " instead of "-f cbm" (default) to switch to "plain" mode without header
  • ATASM: Extend the compiler parameter "-o${outputFilePath}" to " -r -o${outputFilePath}" to switch to "raw" mode without header
  • MADS: Use " OPT h-f+ " at the very beginning of the source file disables header and enabled "fill" mode, i.e. no segments are created if there are gaps in the object code

How do I compile into disk images?

Atari 8-bit
For ATARI 8-bit, the ATASM compiler has dedicated parameter to write the executable file directly into ".ATR" or ".XFD" disk images. The disk image must be formatted with Atari DOS 2.0S, Atari DOS DOS 2.5 or a compatible DOS. All Atari 8-bit disk formats can be created using the "dir2atr.exe" tool of the AtariSIO tools by Matthias Reichl (hias). The tool can create a complete disk image with arbitrary DOS (Atari DOS 2.5, MyDos, SpartaDOS) and size based on a folder which contains "DOS.SYS", "DUP.SYS" (or the equivalent files of the respective DOS) and all other files requires. I have packaged an example including the "dir2atr" tool, a batch script to call the tool and the emulator and the "files" folder in this archive . Unpack the archive to your output folder. Double-click "makefile.bat" to see how the disk image is created and started. Read section How to run a makefile script instead of an emulator? for the details how to configure the call to "makefile.bat". For productive usage you should of course put the "hias" folder into a central location and use the most recent version from hias' site.
Apple II
For Apple II, WUDSN IDE automatically generates a bootable AppleDos disk image with extension ".dsk" if one of the predefined emulators is used for execution. If you want to use another DOS or disk size or if you want to but more files into the disk after compilation, you can use the command line version of AppleCommander to achieve this. Create a makefile script and configured it as described in How to run a makefile script instead of an emulator? .
Other hardwares
If you find a tool similar to "dir2atr.exe" for the Atari 8-bit or "AppleCommander" for the Apple II, you can use create your own script an run it as described in How to run a makefile script instead of an emulator? .

How can I run a makefile or script instead of an emulator?

Sometimes it is useful to run a makefile script instead of the emulator, for example if the output file shall be combined with other files into a single ATR file. To execute a such a script select "User Defined Application" as the "Application to open Output File". Specify the path to the shell as "Path to Application". In the command line you can then use the standard variables to start the shell, pass the name of the script and pass the file path of the compiled output file. Since the working directory at the time of execution is the output folder of the compiler you must place the script file there or you must specify the script file with its absolute path. If you are using Windows and "cmd.exe" as shell, you must specify "/c" before the name of the script to prevent "cmd.exe" from remaining as process after the script has finished. The resulting command line is "${runnerExecutablePath} /c makefile.bat ${outputFilePath}", assuming "makefile.bat" is located in the output folder". See How do I compile into disk images? for the example how to use this for compiling complete disk images.
Configure makefile script
A project like WUDSN IDE is not possible and not worth anything without the contributions provided by others. So here's the list of credits of all involved people and related projects.
Compiler Contributor
ACME Krzysztof Dabrowski (BruSH/ElysiuM)
ATASM M. Schmelzenbach (schmelze)
DASM Peter H. Froehlich (pfh)
KickAss Mads Nielsen (Slammer)
MADS Tomasz Biela (tebe)
XASM Piotr Fusik (fox)
Linux compiling Carsten Strohmann (cas)
Mac OS X compiling Spookt
Graphic library or tool Contributor
FAIL Piotr Fusik (fox)
Grafx2 Adrien Destugues (PulkoMandy), Yves Rizoud (yrizoud)
Sound library Contributor
ASAP Piotr Fusik (fox)
JSIDPLAY2 Ken Händel (kenchis)
File system library Contributor
AppleCommander Robert Greene (robgreene)
Emulator Contributor
AppleWin (Apple II) Nick Westgate
Altirra (Atari 8-bit) Avery Lee (phaeron)
Atari800Win (Atari 8-bit) Marcin Lewandowski (jaskier)
CCS64 (C64) Håkan Sundell (phs)
JACE (Apple II) Brendan Robert
Stella (Atari VCS) Stephen Anthony, Bradford Mott, Eckhard Stolberg, Brian Watson
Virtu (Apple II) Sean Fausett (fool)
Eclipse plugin or library Contributor
Eclipse Eclipse Foundation
x86 ASM Plugin Andy Reek, Daniel Mitte
Rhino JavaScript engine Mozilla Foundation
Eclipse Hex Editor Plugin (used as inspiration) Marcel Palko (randallco)
Java Hex Editor & Plugin Pordi Estaqual (pestatije)
Java Expression Language Parser Aaron Gadberry (aaron)
Welcome to the Atari 8-bit productions of Peter Dell also known "JAC!"

It seemed that quite many of you know my "Visdom" and "Visdom II" demos. It also seems that some of you like them and like to know how I did them back in the "golden days". So here is the complete set of my releases. Actually it is not complete yet and you will find many "Coming soon" entries here, but is will be completed over time. For each of them you'll find a detailed description and the background story on the corresponding sidebar tab. All my releases are also uploaded on Pouet for the group JAC! .
Title capped.tv and YouTube recordings
Year of release 2010, permanently updated
Type of release Video recordings and playlists
Watch on capped.tv (best quality) , YouTube (poor framerate)
Note Unfortunately YouTube encodes everything at 30 FPS what makes my 50 FPS PAL productions look really bad. Therefore I really recommend to watch them on the real machine or in an emulator instead. Alternatively watch them on capped.tv in correct framerate.
youtube playlist
TitleSillyPack 2k12
Date of release
Type of releaseDemo, music and art pack. 1MB ATR disk image in MyDos format
Download fromWUDSN (updated 2013-12-01), WUDSN (sources)
Rate and comment onPouet
NoteDownload contains ready to run pre-configured Altirra. Just start "SillyPack2k12.bat."
SillyPack 2k12
TitleRGBA - Rasters Girls Beer Atari
Date of release
Type of releaseSingle file, 16k, released at Sillyventure 2012
Download fromWUDSN (fixed version), WUDSN (sources)
Rate and comment onPouet Fandal
NoteRequires 64k only. This is the fixed party version. Download contains ready to run pre-configured Altirra. Just start "RGBA.bat."
RGBA - Rasters Girls Beer Atari
TitleHomeCon 5 Invitation
Date of release
Type of releaseSingle file, 16k
Download fromWUDSN (fixed version), WUDSN (sources)
Rate and comment onPouet Fandal
NoteCan be started from normal DOS. Press any key to perform a warm start. The fixed version also runs properly on NTSC machines.
HomeCon 5 Invitation
TitleABBUC Magazin Issue 99 Intro
Date of release
Type of releaseSingle file, 16k
Download fromWUDSN (original version), WUDSN (sources)
Rate and comment onPouet
NoteCan be started from normal DOS. Press any key or trigger to perform a warm start after fading out.
ABBUC Magazin Issue 99 Intro
Titleproductions_atari800_dug2007
Date of release
Type of releaseSingle file, 64 bytes
Download fromWUDSN (original version), WUDSN (sources)
Rate and comment onPouet
NoteCan be started from normal DOS. Depending on the DOS version, it does not start automatically. In this case, just run the code from address $4000, for example via "M" and "4000" under DOS 2.5. This one was created just for fun and was my first trip into size-coding to celebrate the fact that I joined Pouet.
productions_atari800_dug2007
TitleVisdom II Demo
Date of release
Type of releaseSingle file, 16k, released as part of the Halle Project 1993
Download fromWUDSN (original and fixed version), WUDSN (sources)
Rate and comment onPouet Fandal
NotePress HELP to enter the info screens, SPACE to return to the main screen and SHIFT to leave the demo.
Visdom II Demo
TitleVisdom Demo
Date of release
Type of releaseSingle file, 10k
Download fromWUDSN (original and fixed version), WUDSN (sources)
Rate and comment onPouet Fandal
NoteThe fixed version also runs on NTSC and allows leaving part one with any key.
Visdom Demo
Back in the golden times of 1991 everybody was chasing after the record for creating as many hardware or software sprites as possible. My never released contribution to this was called NetBalls. Here is the download of the executable.

NetBalls

Somehow the source got lost and though I always wanted to incorporate this effect into a real release, the missing source kept me from doing this. Then, in spring 2009, I attended a meeting of the ABBUC Regionalgruppe Frankfurt for the very first time. I booted a disk with my old unreleased effects and showed it to the party people. When they saw the effect, they were quite impressed and asked I a could complete it. So I decided to just disassemble the executable and put it all into my brand new WUDSN IDE in order to make it my first production every build in my own IDE. The real proof of concept so to say. The decision where to release it was also quite obvious: After all those years of absence I wanted to tell all the Atari people in Germany that I am back, so I decided to go for the intro competition of the issue 99 of the ABBUC Magazin So once again it was important to complete this production in time, because there was a fixed deadline on 2010-12-06. Our club manager need the binaries by then to have enough time to create the more than 400 copies of the disk magazine. So I had everything ready by that day and thought: Let's test it on the real machine - just in case.... and it didn't work. I had been very proud to have used the full 240 scan lines to find out two things. First, this is not a real achievement in multicolor mode, it simply works. Second, is it not possible in hire mode, causing the hires up-scroller to end up in a completely distorted screen. It was running fine in the emulator simply the synchronization effects of the TV set are not emulated. So I had to revert the hire up-scroll back to 239 scanlines in a hurry. I even had to send my wife and my daughter to go an see Santa Clause without me just to finish the production. Recently there has been some good input from Rybags regarding the 240th scan line, so maybe there will be an update in the future.

Multi Color Balls Hires Up-Scroller

This fun production called "Dieter und Gisela bumsen wie die wilden Tiere in Nachbars Whirlpool" is a little 64 bytes effect (58 bytes+6 byte file header) for the Atari 800 XL (PAL). I created it on 2007-06-06 between 23:31:00 and 23:57:14. In case you are familiar with German, please don't be offended by the title but read the explanation below instead. In case you are not familiar with German: "Dieter and Giesela are fu..ing like wild animals in their neighbour's whirl pool".

I had just re-discovered that there is this strange web-site called Pouet which is dedicated to demo sceners. I found out that I even had an account there which was created many years ago. But ever since then I never had the time to look after demos or to even create one again. So browsing through all the latest releases there I found "Dieter und Gisela trinken Limonade und Hören Beat" by Camelot and the comment from "am-fm" on the 2007-06-01. When I read that comment I first had to laugh out loud and immediately started Ultraedit and ATASM just to be the first to occupy that cool title. Indeed my first production after many years, yep, thanks am-fm! The effect will start right away from any game DOS or emulator and will change every 5 seconds.

That's

When loaded from a normal DOS, it might not start automatically depending on the DOS version. In this case, just run the code from address $4000, for example via "M" and "4000" under DOS 2.5 The reason is that there no explicit RUNADR segment. Otherwise only 64-6-6 = 52 bytes would be left for a 64 bytes production. Compared to 64-2 = 62 bytes on a C64 this would be quite a drawback. Here's the complete source of the only known release whose the executable requires less bytes than the title - which consists of 67 characters.

That's why I love 6502

What started out at HomeCon 3 as party coding to show that modern laptops are really useful peripheral devices for 8 bit computer is not finally completed: A real invitation intro for the HomeCon 5 party. As you could imagine it runs on an Atari 800 XL and was created using WUDSN IDE. The executable, the sources and the video  have been published on   Pouet . There I got quite a lot of positive feedback and finally my neat little production went up to the 5th place in the "top of the month" on 2010-02-02. That's what I call product placement ;-)
Top of the month

Isn't it great that there are not movable dates. New year's day for example is always on the first of January. And for some years PPS has been collecting everything that the Atari fan community has created regarding X-mas, new year's day and anything else in the world that has 8 bit. This means pictures, sounds, games and demos. All that is compiled on one disc an then published for free as the New Year's Disc . It means a pretty variety for the "retro spare time" at the turn of the year. This year I had decided to take part in all this it soon it was clear what should be the contribution. It had started some time back...

At the HomeCon 3 party I had spent my time with testing my 6502 IDE for Eclipse in a productive scenario. That meant to create some real executable Atari code instead of playing around with the IDE itself. Complexity did not have to be too big since the few hours of a HomeCon party are over quite fast. Fortunately I have quite a lot of unfinished and never released effect from my hyper active time 1990-1994. Many of these effects are conversions of Amiga Demos of that time. Of course, because firstly I had an Amiga and seconds those were the demo years. So my choice was the "Rainbow on Mars" sequence from Joyride by Phenomena . This one allows the Atari palette to show up nicely. A demo tune was also found quickly since about one year ago 505 from Checkpoint had sent my a disc with his creations. Then I painted the HomeCon logo on checkered paper and added the 2 bit planes fading effect which I had always wanted to create.

2 bit planes fading effect

Where the ... is that charset now and why is the executable now loading properly, aargh, I have overwritten the DOS area, and now it is jerking because there's not enough raster time left ... after about 5 hours the whole thing was done and working on the real hardware. So I swiftly took a picture and a small video and then HomeCon 3 was over and almost nobody had seen the production at all. Well, damn. Finally I failed in uploading the video due to its file format and I failed with all the rest due to my missing spare time..

HomeCon 3 Party Version

That meant I had some partly finished but not ready for releasing - as always. That really annoyed me. So I decided to turn the quick hack into a real release for the New Year's Disk 2010. I sat down after X-mas and reworked the whole thing: Replaced the tune, changed the loop into interrupts so the effect can run in parallel, added two scrollers, added up-scrolling of the rainbow effect, added fading for the logo, reworked the color scheme, wrote the scroll texts, synchronized the texts and the music, ported to inflate routine from FOX to ATASM to compress the rainbow animation (32k to 8k), created the loaded, optimized everything so it also works on NTSC. Done. It is 2010-12-31 17:45 and I am DONE. Even before the dead line- I can hardly believe something like this happened my life. At this point I really like to thank Nils for the great tune and above all to my wife who encouraged my all the time to get this one done.

On 2010-01-01 the New Year's Disc was released and in parallel I uploaded the executable, the sources and the video on Pouet . And since that day I am as happy like a child when somebody adds comment, a thumb or a view.

The "Visdom" demo, called "Visdom I" after the release of "Visdom II" was coded on the Atari 800 XL with ATMAS II. The idea of the demo was to port my favorite C64 intro (cracktro actually) by the "Hotline" crew to my machine because I simply loved the style and the "smooth criminal" tune. Since I never was into composing sounds and didn't know much about creating sounds I had a problem. But there was an Atari Basic listing for a tune named "Honkey Tonkey" in some printed computer magazine that I bought in the super market and so I ported the replayer and the DATA statements into assembler. Maybe one day I'll find out the original author and send him some regards. See the Atari version versus the C64 version below.

Visdom I demo part 1 on ATARI 800XL Original Hotline intro on C64

The second part of the "Visdom I" demo was the result of a "coding battle". I already had an Amiga 500 at that time and some friends of mine, who also were coders, had started to create demos on that machine. So the group "Visdom" was an Amiga group of 5 people and I was the "one man Atari division". We had meetings every 3 or 4 weeks where the guys showed their progress in their Amiga Demos and the latest stuff they had received from other groups. Well, and I always tried to port their achievements to the Atari XL until the next meeting. And I won this "competition" quite often and it really was fun (and beer). One day they presented the new Megademo from the "Royal Amiga Force" in 1989. I was amazed by the demo and immediately tried to port is to my Atari. Here is the download of the executable. Press the space key to move the logo. If you look at the lower left screen shots you will find the waving "RAF" logo in front of the copper bars. And since most of the other guys came from C64, they were stunned by the large waving logo and any distortion effects with more than 4*8 pixels. So I decided to create a demo that could not be done an C64 and looked like this part of the RAF demo. The first version actually had an "RAF" logo, but I changed it (since R.A.F. is the short form of a former German terrorist group ...) as soon as I had designed my own logo in DPaint.

Royal Amiga Force on ATARI 800XL Visdom I demo part 2 on ATARI 800XL

The final version was done for our on meeting 04-05-91. Because I didn't have any other Atari contacts at that time I decided to send that version including a small note intro to the "Disk Line" disk magazine from PPP (Power per Post) but I don't remember that I ever got any feedback.

PPP note intro

Despite of this, people from all over the world contacted my years later because they had somehow received that demo. That was really funny to me. Some weeks ago I came across an article by Heaven the the ABBUC Magazin 46 where he wrote about coding scrollers in the demo corner. There he mentioned the "Visdom" demo for having a graphics 0 scroll with single pixel resolution and that this probably is an example of heavy bit shifting. To be honest, this single pixel scroll takes no more additional cycles for the single pixel effect. Every 8 pixels, the screen memory is shifted. Every 2 pixels the HSCROLL position is changed and for the single pixel resolution, I exploited that every 8x8 charset is actually a 7x7 or 7x8 charset, at least for all normal characters like letters or digits. Otherwise adjacent characters would stick to each other. So the initialization simply creates a second charset which is shifted 1 bit to the right and this charset is used for the odd pixel positions. Resulting in about 10 additional cycles for this in the DLI.

Meanwhile I also found some minor bugs in the demo and its successor. Fixed versions can be found on my web site. To be honest all bugs amount to the same root cause: I only had a quite bad color TV set at that time, so some flaws were simple not visible. But todays emulators and screens are merciless in this regard and I don't want to be blamed for a dutch color scheme after all these years ;-)

Recently I also found and nice external reference on Page 6 : "Requires enhanced density drive. Another selection of demos from the Continent to show off the power of your Atari. The first is from Visdom with an excellent massive scroller with bendy letters and a rainbow added to the massive logo, obviously this is the source for the even better Visdom demo on The Halle Project. Next up Is a desktop type screen with messages scrolling in every possible direction. This is followed by an extremely busy screen with every type of scroll imaginable taking place at the same time. Four more demos include many bouncing effects and some great music and in one pressing the space bar gives access to a Ninja type game (although we're not sure if it is actually playable). Overall a nice disk, not as strong as some, but still with plenty to impress you and your friends."
The Visdom II demo is the second major mile stone in my demo career. It was created in 1992 and was the first demo that I created as contribution for something like a computer convention and therefore the first demo for a large audience. The "Halle Project" was an Atari 8-bit demo compilation organized by Carsten Schmitt (CSS) for the computer convention in Halle. This convention was the successor of the "Hobbytronic" which had taken place multiple times in the years before. Many people were impressed by the demo and in fact it is still one of my all-time-favorite creations. Here's an excerpt from a Page 6 article

"This is the official continuation of the Hobbytronic demos comprising demos from groups all over Europe and presented on three disk sides! There are 5 demos each on sides 1 and 2 and 4 on side 3 ranging from the simple scrolling message to effects that you have never seen before on your Atari. It is not possible to detail every demo but if we could only select one it would be the Visdom demo on side 1. This has a large VISDOM logo at the top with a scrolling message at the bottom. The logo is large 'hollow' letters which are filled one by one with a rainbow scroll but what makes this quite stunning is that each rainbow scroll is different! This should not be possible! At the same time the centre of the screen is filled with blended colours in a sort of water reflection which scrolls up the screen. The total effect is amazing and nothing like it has ever been done on the Atari Classic before. This is just one of 14 demos to choose and many have a choice of music and other effects by pressing various keys (try everything). This disk set represents the very best programming to be found on the Atari as those extremely talented programmers from Europe squeeze every bit of power from the Classic. The ethos behind this demo is 'if we can dream it, we can do it' and boy, have they done it!"

It pushed the Atari to expose the maximum of colors in ways that were unseen before and which exploit many effects in the hardware that were unused or even unknown at that time. Therefore it also became a benchmark for Atari emulators later, as you can see in the screen shots of the Atari800 emulator for example.

The demo was very unique at the time of creation and the main reason for that is that the process of creation was very unique in itself. It took 6 months of tough coding and designing... In 1992 I was stuck in the Germany Army. After 3 months of basic military service in Holland (i.e. near the end of the world), I ended up in Karlsruhe (i.e. at the end of the world). I was the only one out of 400 soldiers there who did not live in Karlsruhe but 200 miles away. As a consequence, I was the only person left at the barracks after 4 p.m. While the hours from 7 a.m. to 4 p.m. where boring (cleaning the room, painting the tanks, reading porn ...), the afternoon and the evening were boring as hell. Even using retro communication systems was no fun there.
Retro style tele communications in action

Soon I figured out that the only solution was to bring my Atari XL computer there, including the Amiga 500 cross development system which I had created for my own purposes. The cross development system called DTrans consisted of a Seka Assembler used as editor, a modified ASM 6502 cross-assembler, a self-made connector cable to link the printer port of the Amiga with the two joystick ports of the Atari, and a self made OS ROM for the Atari. With a set of command shell tools it was possible to transfer single files from and to the Atari (put/get) or to even transfer complex programs consisting of several chunks of data (rec). The self-made OS ROM in the Atari checked for a pending transmission upon RESET and then booted from the Amiga with about 14 kb per second. It also contained a very specialized monitor which allowed fast analysis of programs and finding bugs.
DTRANS - Amiga to Atari file transfer JACMON - build in monitor
The later versions of the OS could also be loaded from disk into a modified BIBOMON board where I had exchanged the 16k ROM by 32k RAM with a battery backup. All together this was a very comfortable and powerful environment, comparable to today cross-development using emulators. And the KickStart power-up screen in the OS is something that I really miss nowadays.
JACROM - Startup screen with an hommage to my Amiga

I created large wooden box (rather a cupboard) which contained two layers one for the Amiga and one for the Atari. Like on a modern computer table, the layers could be pulled out of the box individually. At the bottom of the box, there was enough space to store the Amiga monitor and the TV set for the Atari. Here a some impression from the last day at the army. On the second image you can see room mate carrying the parts of my wooden computer box
The last day - as you can see I was a bit 'different' :-) My room mate carrying the parts of my wooden computer box

So every day at 4 p.m. I opened my magic box, put the monitor and the TV set on top, pulled the keyboards and sat down on my chair in front of the box and started coding. The three main effects are the raster split logo, the "Wiggle" and the waving "ImpRes" pattern. The most sophisticated is in fact the "Wiggle".
The wiggle .. in different colors
The raster split in the "Wiggle" effect uses two hardware effects at the same time. It is based on a self modifying kernel loop which delays the split of $d01a with 1 cycle accuracy. Since this is too coarse to achieve full coverage and reach every single pixel, the missile 0 is used in the 5th player mode of PRIOR and quadruple width to color the missing pixels. The original version has a minor bug when choosing the random colors for the "Wiggle" which results in sporadic artifacts created by missle 0 in certain color combinations. Therefore it is recommended to download this fixed version which prevents that and which is a single executable file which can be loaded from DOS.

Wiggle initialization Wiggle kernel

Discovering the famous "GTIA bug" was a side effect of trying to find the exact timing for the raster splits. Because the graphics 9 pixels were hard to distinguish on my old color TV, I used graphics 10 with a flashing color / luminance during the development to find the correct split and missile position (see "braxtab"). But for half of the pixels the missile position wasn't correct when I ran the split with graphics 9 afterwards. The investigation yielded what I called "ImpRes" (Impossible Resolution) because it was just a fake based on a picture pattern with a very special layout. It gives the impression of having 16 shades in a graphics 15 resolution in full overscan.
IMPRES - the impossible resolution .. in different colors

I told TLB about my findings and he used the one pixel delay of "ImpRes" to let the converted version of Peachy's excellent snake picture look more natural in his part on the third disk of Overmind
Peachy's excellent snake picture TLB's conversion in Overmind .

Some years later Polish coders started to exploit the GTIA bug in all variations to create interlace pictures (HIP,RIP,TIP). And though there is of course no "inventor" of the bug in the GTIA, I can fairly say that I was the first to exploit it. And yes - I'm fuckin' proud of it :-).

While the demo runs, you can press "HELP" at any time to display info screens (German) which explain the effects in detail , contain the greetings, flame war against somebody who claimed to be the coder of Visdom I, funny nonsense and state that army suxx big time. Pressing "HELP" again displays the next info screen,"SPACE" returns to the demo main screen and "SHIFT" ends the demo and loads the next part of the compilation." Finally there is also a hidden part included to make sure nobody can claims he's the coder this time.
Visdom II Visdom II Visdom II Visdom II Visdom II/> Visdom II/> Visdom II/> Visdom II/> Visdom II/> Visdom II/> Visdom II/> Visdom II/> Visdom II/>