DSmaps service release 0.2.1a

This is a service release to address the file system corruption problems that have affected a very small number of users in recent days. You can download it from here. Two changes have been made:

  1. I have fixed a bug in the library that DSmaps uses to interact with the file system on the microSD card. At issue was a fairly obscure detail in the FAT file system specification, which results in the ‘rule’ for top-level folders being subtly different to other folders. The bug only affects the FAT32 variant of the file system. Judging from comments I’ve received and postings in various forums, this bug seems to have affected other homebrew projects too. So I’ve passed my fix to the maintainers of the library and I guess it may be included in their next release. That’s up to them.
  2. In getting familiar with the FAT specification, I’ve realised just how incredibly badly it accommodates long file names. I had no idea what a nasty hack it is. And supporting this hack adds considerable complexity to the file system library that DSmaps uses. All this complexity is completely shortcutted however if file names follow the ancient MS-DOS “filename.ext” pattern. As a result, I’ve changed the naming scheme for files in the tile cache so that they do just that. The upside for DSmaps users is better performance, less space used on your microSD card, and far less complexity to go wrong. The downside is that any files already in your tile cache will be silently ignored once you install this service release. It might be better to completely blow away your DSMAPS folder and start again.

As a service release, I haven’t made any other changes to DSmaps, i.e. there are no new features to play with. But now that these file system woes are hopefully behind me (it has taken two nights) I can get back to working on release 0.3a. Expect to see that in 2-3 weeks, and please keep those comments coming!

Advertisements

5 Responses to DSmaps service release 0.2.1a

  1. Cabbage says:

    This is a very nice app you have here. Useful, and does its job. Thank you very much! šŸ˜€

  2. Ryan says:

    I get constant error 20 and “file was not in png format!” after trying to zoom in past freeway level.

  3. Ryan says:

    After more playing with it it typically goes like this for me (on m3 lite slot2):

    Able to scroll/zoom fine until missing tile.
    Connects and *always* fetches first tile.
    Can fetch another 2-20 tiles before it gets stuck saying “Downloading”
    Few seconds elapse – “File was not in png format”
    Try doing anything at this point, zoom in/out, pan and you will get a bunch of error 20.

    If I had to guess there is a bug in the routine that fetches the tiles and occasionally gets mangled/worthless data and is unable to recover from such an event.

  4. Mgamerz says:

    Your program is great! But I also like to use programs like Morning Timer by Infantile Paralyzer and other programs that map out the entire card first (I’m using a Compact Flash on Max Media Dock). All the folders it’ss making is causing these programs to overload during startup reading… I love your program but I won’t use it if it doesn’t let me use my other programs… Is it possible that you change it from folders to filenames in the same folder…? I’m sure many other users have noticed this too. I browse around my local area so i have a local cache.
    Another feature to add would be search, if that’s possible.
    Keep up the good work.

  5. Falafel says:

    Wow! This sure is one of the coolest homebrew apps!
    Is it perhaps possible or planned to make it possible to switch to “satellite” view?

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: