I've just finished a very very early preliminary not complete Pre-Alpha version of a SID player for the Catweasel Mk4! If anybody has any comments please email them to me (ian.gledhill@btinternit.com but it's internEt not nIt).
On the plus side, it now more or less works. PSID files work better than RSID, as you'd expect, but RSID files usually do a fair rendition. You'll find many SID files don't work properly, I'd imagine, but the ones that do will have that true SID sound (as it's a real SID!). It's inefficient at the moment - just building the Catweasel FIFO each 1/50th or 1/60 of a second. Therefore you'll notice the tune slow down when it can't get the data fast enough. You'll need the catweasel.device, catweaselsid.device and the executable "tinysid". It's actually a very heavily modified version of the Linux version of tinysid, hence the executable name (that'll change as it becomes less and less like tinysid).
Any comments by email or on this thread would be awesome. Enjoy!
Please note you need to set the stack size high before running the tinysid program - I use 2048000.
Ian, very good! It's the wee hours here and I am just getting home, but tomorrow if I can I will test this on my X1000 with CatWeasel Mark IV and its pair of SID chips. I'll let you know how I make out.
Now much better handling of files, better support for SIDs, and no longer slows down when the CPU gets busy! Using OWB on my Sam440ep and it's playing Cybernoid II theme without skipping a beat. Nice. :)
great to see you improving the CW SID support Ian ! I unfortunately can't test this time as I ended up taking my SIDS out of my CW as my original breadbin 64 was crying for them back
Ian, tested and works here, although I do hear some distortion in some of the tunes I tried. Also, booting my X1000 with the supplied catweasel.device in devs: causes a guru. I went back to my previous catweasel.device version 1.9 and no more gurus.
It's just my current versions of catweasel.device and catweaselsid.device, along with the current prefs program. If you could let me know if this works better (with catweaselsid AND the disk drives) that'd be great!
Ian, sorry for the delay before I could run the test. Just installed your latest stuff from the archive linked above.
Booting the X1000 results in the following Grim Reaper dialogue box before Workbench is fully up. It's on "Workbench Screen" but the screen is white with no icons. The text...
Guru Meditation: 80000003 Task 0x6220ec80 ("DF0/FastFileSystem 53.2 ") generated an error of type DSI (Data Storage Interrupt) on address 0x7fdaeadc Redzone was not damanged Stackpointer is inside bounds
There is one 3.5-inch floppy drive connected and DF0: dosdriver mounted.
Reverted to previoys catweasel.device v1.9 gets rid of the Grim Reaper at boot.
Did you try using the Prefs program to save the settings again? They've changed since 1.9... they're supposed to be compatible but I may have made a mistake as it was a long time ago that 1.9 was latest.
Ian, that seemed to do the trick. I also removed DF0: from dosdrivers and later after a reboot added it back. Not sure if that helped or not, but booting without the error and access to 880K floppies is working via DF0:. I have only re-tested read access so far.
I did call up CatWeasel prefs editor and am able to play SID test tones for both chips. However, when i SAVE settings I get this error...
touch: Unknown command touch failed returncode 10
What is this "thouch" all about? Am I missing a command?
mbrantley wrote: Ian, sorry for the delay before I could run the test. Just installed your latest stuff from the archive linked above.
Guru Meditation: 80000003 Task 0x6220ec80 ("DF0/FastFileSystem 53.2 ") generated an error of type DSI (Data Storage Interrupt) on address 0x7fdaeadc Redzone was not damanged Stackpointer is inside bounds
Same here... You'll need the 68k touch command of aminet too.
Libraries and devices stay in memory until the open lib/dev count is zero, it's important to restart your computer to make shore the devices and libraries are reloaded. I guess you automount the CW4 MK4 devices at boot.
(NutsAboutAmiga)
Basilisk II for AmigaOS4 AmigaInputAnywhere Excalibur and other tools and apps.
"Touch" command does nothing but update the date and time on the file, it will not help.
"Touch" is used when you compile a program, if you setup you C compiler correct in the Makefiles, you can get it to compile only the parts where the source code is newer then executable (or object files), sometimes this source codes include other files like .h or .i files that you have modified, and so you need to trick makefile system by updating the date and time on the source code, (this can also be resolved by listing all dependencies in the makefile, but sometimes you don't want to do that.)
You can also force it to recompile the executable or object files by deleting the executable or object files, this normally done by "make clean"
(NutsAboutAmiga)
Basilisk II for AmigaOS4 AmigaInputAnywhere Excalibur and other tools and apps.
You don't actually need the Touch command - but without it you need to reboot.
The reason for this is that when the catweasel.device is loaded into memory, it reads the prefs file. This tells the driver what kinds of drives are attached and all that. When you change the prefs, it alters the catweasel.prefs file, but the catweasel.device doesn't know that it's been changed. The Touch command is used by the prefs program to alter the modified date of catweasel.device, forcing it to expunge from memory and be reloaded (thereby reloading the prefs). Without it, the prefs change will be ignored until reboot.
There may be an easier way of doing it, but this works. :)
There may be an easier way of doing it, but this works.
You might want to check out DOS Notification on the wiki. This is how the system preferences work by setting up notification on the various prefs files.
Note dos.library has universal notification built-in now so it will work no matter what file system is underneath. See the DOS autodocs for more info.
Finally, you can view what notifications are setup using Ranger. Makes it much easier to test things.