[hatari-devel] Improved host long filename support for Hatari GEMDOS Emulation, please TEST!

George Nakos ggn at hol.gr
Wed Jan 20 23:33:38 CET 2010


Hello Eero,

Thursday, January 21, 2010, 12:14:46 AM, you wrote:

> Hi,

> Attached is the latest patch for the improved long name support.
> It applies on top of the latest Hatari repository code.

> I'm going to commit it in couple of days to Hatari repository unless
> somebody has objections to it.  The main thing I would like to be tested
> is whether it works on something else than Linux/Unix, e.g. Windows.

> George, could you check Windows side?

I'll  compile  and  try  it  tomorrow. I guess I'll need to get latest
version and patch -p1?

> Improvements it provides over current Hatari GEMDOS emulation's
> cruder long host filename support are:

> * Renaming something like HDDRIVER.PRG to HDDRIVER.PR works properly.
>    (Current GEMDOS code tries always long match and if *.PRG is write
>    protected, rename fails, my code tries first exact match)

> * Supports also long directory names, not just long file names.

> * Illegal GEMDOS characters are converted to '@' _and_ matched correctly
>   when Atari programs try later to find the files with these names from
>   the emulated drive.

> * In general one should now be able to have any kind of long filenames in
>   GEMDOS directories without them   breaking Atari fileselector, desktop
>   etc.


> Earlier version of the patch forced all callers of the host name search to
> have FILENAME_MAX sized buffer (or it asserted).  As changing everything
> that could get into that function would have made this patch much larger,
> I changed it to handle shorter buffers.

> It will also alert user with a Dialog if host filename won't fit to given
> buffer so that user can either:
> * Ask us to fix it, or
> * Move GEMDOS emu dir higher in the directory hierarchy to shorten
>   the host paths

> Instead of GEMDOS file operations just mysteriously not working properly
> if the host paths were too long for the provided buffers (like can happen
> with current code).  Currently buffers for this are 256 chars long, so it's
> unlikely that many would have bumbed into this issue, though.


Right, I'll give all this a try


-- 
Best regards,
 George                            mailto:ggn at hol.gr




More information about the hatari-devel mailing list