[physfs] descent and physfs

Ryan C. Gordon icculus at clutteredmind.org
Mon Mar 17 23:26:36 EST 2003

> So I was looking at physfs, and I realized that if I switched d2x's file loading
> stuff over to physfs, I could eliminate countless ugly hacks and workarounds.
> To do so, physfs would need a couple more archive formats added: HOG and MVL.
> these are both trivial formats, similar to GRP, and I have already written the
> drivers for them.

Please send them to me; I'll take a look and see about committing them
to the physfs cvs.

> ARJ would also be pretty useful to have, as it would enable d2x to
> read its data directly from the CD.

Is there a spec for ARJ format somewhere?

> One feature that would be important to have is case-insensitivity.
> This is easy enough to add to my drivers, and I noticed that the qpak
> driver is case-insensitive. But I was thinking: shouldn't this be a
> feature that can be turned on and off, and in order to be consistent,
> shouldn't all the drivers be capable of being case-insensitive?
> including the DIR driver?

Good question...the current (documented) assumption is that any given dir
or archive may be case sensitive, so good practice is to always assume
that this is true and code with it mind.

The qpak driver was changed because the only thing that presumably will
use it is legacy code (specifically, Quake 2), which does not use good
practice in this respect.

Still, perhaps a more explicit means to do this might be useful, since
file case IS a big stumbling block in game portability...

PHYSFS_caseIsSignificant(int TrueOrFalse) or something like that.

Besides an API addition, it would take some backend work (to ignore case
on Unix and NOT ignore it on win32).

Alternately, this could be done at a higher level with the
PHYSFS_enumerateFile() function, but that's a question of efficiency.

Let me think about this for awhile. In the meantime, fire the HOG/MVL
archivers over to me.


More information about the physfs mailing list