as mentioned in another thread here is a short documentation about cross compiling M680x0 and DSP56001 on the PC. It's not quite perfect but I think it's a good start to have a developent tool for the two processors of the Atari Falcon.
Cross compiling for the M680x0 is well documented and there are a few compilers available. However, generating code for the DSP56001 is not that easy. In fact, there are some assemblers available but unfortunately there are no real native Linux assemblers (except for Asm56k which I am not familiar with). Also I would like to keep my old DSP sources which are being assembled by the original Motorola DSP development tools for the Atari Falcon. Unfortunately DSP assembling on the Atari is not the fastest and neither is it convenient so it would be nice to have an DSP assembler running on the PC.
The search for Motorola DSP tools for the PC resulted in finding an old DOS version which unfortunately uses the DOS4GW extender. So assembling was fast but the need of invoking the tools within DOSBox wasn't satisfying either. An interesting article about this method can be found on the Avelino's Chamelion cross development page.
I still wanted a native Linux DSP56001 assembler but Motorola has never released one and you're not able to find any downloadable programs on the Motorola site. Luckily, further investigations revealed the existence of Windows DSP tools. The name to search for was "Win56000.exe" and you can also find a download link (file size is about 50 MB). And finally there are the programs I was looking for: "asm56000.exe" and "cldlod.exe" as native Windows programs which can be invoked using Vista/Windows 7 or Wine (Linux).
For the main development environment I have chosen the Eclipse IDE for C/C++ Developers. The recommended GCC cross compiler package is the m68k-atari-mint toolkit ported by Vincent Rivière. Please follow the instructions how to get it running on either Windows (Cygwin) or Linux. As noted before you need to have Wine installed on a Linux machine as well.
At first start the Eclipse IDE. Create a new C project (type: "Executable"/"Empty Project") using the "Cross GCC" toolchain. Click "Next". Click "Advanced Settings". Select "[All configurations]" and click on the "Build Steps" tab. Enter "../asm56k.sh" as the command for the "pre-build steps". Click on the "Build Artifact" tab and set the "Artifact extension" to "tos". Click "OK". Click "Next" and enter "m68k-atari-mint-" as the cross compiler prefix. Select the path to the cross compiler binaries. Click "Finish".
Add the files from the attached archive to the project (please don't complain about the quick and dirty code).
Now copy the asm56000.exe and cldlod.exe into the same project directory (on Linux you need to do a "chmod a+x" on these both files as well). Refresh the project view in Eclipse.
Please note that you need to do the following on a Linux machine:
Code: Select all
chmod a+x asm56k.sh
chmod a+x asm56000.exe
chmod a+x cldlod.exe
Building and starting
Now start building the project. Congratulations: your Atari Falcon DSP test program can now be found in the "Debug" folder named "dsp_test.tos". Please note that you always need the "dsp_test.lod" file in the same directory as well to start the program.
On the Falcon it should look like this:
Ok, it's late now and I have to go to bed. Comments and improvements and so on are appreciated. Please let me know if you have problems with this tutorial.