Hi all, I am currently working on an extension to Banshee (an open source music player) to aid syncing with Rock Box based devices. I have already got it reading form the Tag Cache DB on the device so its music shows up in Banshee a few seconds after the player is inserted instead of the several minutes it takes to scan the devices file system with the generic Mass Storage syncing. I figured since the Banshee extension knows what changes its made to the file system it could update the DB much quicker than the player which would have to do a full file system scan. Not to mention the difference in resoures between a standard PC and the average Rock Box player.
So far the updating of the DB via my extensions appears to be working, all the additional entries show up as far as I can tell correctly in the Rock Box Database menus. The problem is if Rock Box is set to "Load DB in to RAM" a second or so after it boots it shows the below message and the device locks up. Data abort at 0004910C (0) I presume this means there's a problem with the DB my extension has written. I presume that's a memory address, is there any easy way to find out what that relates to? Comparing the output of a DB generated with Rock Box and one with my Extension I can't see any major differences. The only one I have found is with the entry in the index file after the first 4 version bytes (offset bytes 4-7). According to the Tag Cache DB Spec in the Wiki that is supposed to be the number of non header bytes in the index file however in the version created by Rock Box its about 2.5 times larger than the actual number of non header bytes. Is the wiki wrong and if so what does this field relate to ? Any suggestions would be greatly appreciated. Charlie M