Re: [hatari-devel] ACSI max disk size

[ Thread Index | Date Index | More lists.tuxfamily.org/hatari-devel Archives ]


Am Sat, 21 May 2016 00:29:03 +0200
schrieb Vincent Rivière <vincent.riviere@xxxxxxxxxxx>:

> Hello.
> 
> I have an image of a CompactFlash card wich is 3.73 GB. I can use it
> in Hatari with EmuTOS as an IDE drive, it works fine. But I can't use
> it as ACSI. In the debug log, I get:
> "ERROR: unable to access/get HD file size!"
> 
> By looking at src/hdc.c, I see:
> 	off_t filesize;
> ...
> 	filesize = File_Length(filename);
> 	if (filesize < 0)
> 	{
> 		Log_Printf(LOG_ERROR, "ERROR: unable to access/get HD
> file size!\n");
> 
> Does this mean that ACSI disks are limited to 2 GB?

If File_Length() does not work with files > 2 GB, that means your
version of Hatari has not been built with 64-bit file function support,
i.e. the off_t type is only 32-bit and functions like ftello() and
fseeko() do not work with 64-bit offsets.
This should not happen anymore on Linux ... but you are using Windows,
aren't you? Not sure about Windows, can you specify how your Hatari
binary has been built? According to
http://stackoverflow.com/questions/18908557/how-to-enable-largefile-support-on-windows-using-mingw-autotools
it should work if using the latest version of the mingw-w64 compiler.

By the way, if Hatari has been build without 64-bit off_t, the IDE code
likely will also fail as soon as you try to access a sector beyond the
2 GB (or maybe 4 GB?) limit.

 Thomas



Mail converted by MHonArc 2.6.19+ http://listengine.tuxfamily.org/