Jump to content

ExFat filesystem for Win 9x/ME


Guest Win7Box

Recommended Posts


Hello.

4gb it's a barrier for some large files.

Can someone make this?

Installing a new Filesystem will not be sufficient.

The System APIs do not support >4GB, in particular SetFilePointer.

Link to comment
Share on other sites

Guest Win7Box
Installing a new Filesystem will not be sufficient.

The System APIs do not support >4GB, in particular SetFilePointer.

I know. I don't want install ExFat. There is no problem with this. It's time to fix Win98Dos and Win98 and make support for use ExFat. Here lies the rub. Blue Ray movies - 6,7,8GB. You know what I mean...

Edited by Win7Box
Link to comment
Share on other sites

Installing a new Filesystem will not be sufficient.

The System APIs do not support >4GB, in particular SetFilePointer.

I know. I don't want install ExFat. There is no problem with this. It's time to fix Win98Dos and Win98 and make support for use ExFat. Here lies the rub. Blue Ray movies - 6,7,8GB. You know what I mean...

Let me translate what RLoew said: [short version] It's *impossible*!

[long version] It's *impossible* without a *major* rewrite of the whole OS. And, in case one ever did it, after a rewrite of such magnitude it wouldn't actually even *be* Win 9x anymore.

Hello dencorso!!! Some problem with my topic?

Yes. The sole thing you asked was for someone to create an installable ExFat driver.

This is impossible. Then, in your next post you denied this, and instead escalated to a full system rewrite. This, while possible, is improbable and, if done, would result in a totally different OS... That said, I don't see how do you intend to continue this thread...

Link to comment
Share on other sites

Guest Win7Box
Let me translate what RLoew said: [short version] It's *impossible*!

[long version] It's *impossible* without a *major* rewrite of the whole OS. And, in case one ever did it, after a rewrite of such magnitude it wouldn't actually even *be* Win 9x anymore.

it's a "truth" like with esdi_506.pdr 4.10.2225 that it can not be...

Link to comment
Share on other sites

it's a "truth" like with esdi_506.pdr 4.10.2225 that it can not be...

No, it's not. And RLoew, who answered you before myself, did solve the 48-bit LBA problem before LLXX. Then he solved the RAM Limitation problem. He's one of those rare people who, single-handedly, contributed to break some of the worst barriers of Win 9x/ME. If it were feasible, belive me, he'd been working on it already.

Link to comment
Share on other sites

Guest Win7Box

It is NOT impossible! Why you do not ask Xeno? He will tell you, it is possible. Maybe some people don't want to make Exfat for Win98 and want to close this topic from this reason.

Link to comment
Share on other sites

Hello. 4gb it's a barrier for some large files. Can someone make this?

Did you try to manage such large files on NTFS using freeware "Paragon NTFS for Win98" driver? If yes, you should already know the answer. If not, do try and let us know the results.

The answer for now is:

There is possibility to create ExFAT driver for Win9x (and even for DOS), but it will not be fully functional.

Link to comment
Share on other sites

Let me translate what RLoew said: [short version] It's *impossible*!

[long version] It's *impossible* without a *major* rewrite of the whole OS. And, in case one ever did it, after a rewrite of such magnitude it wouldn't actually even *be* Win 9x anymore.

It would not be a rewrite of the "whole" OS, but a significant rewrite of the FileSystem API code (KERNEL32.DLL and possibly IOS.VXD) to add >4GiB File support. Adding ExFat would be somewhat simpler but would have limited functionality, similar to NTFS on Windows 9X.

Link to comment
Share on other sites

I believe that is correct - the problem ultimately isn't the filesystem in use, it's the fact that with the filesystem code as-is, a Win9x system won't be able to access and work with files larger than 4GB.

Link to comment
Share on other sites

Unfortunately I can't agree that implementing a filesystem driver would be a simple task.

The problem is that Windows 9x filesystem (IFS) API is very low level, I mean you have to deal with such stuff as buffering, VCache, name cache, path cache, file locking, file searching on your own. To make things worse, the IFS API documentation is very poor and missing important details.

That said, it is possible to implement basic filesystem driver (FSD) but it will have poor performance, lack many features and will behave differently than built-in drivers.

Personally I don't see implementing >4GiB file support as being that much of an issue, because as I said the IFS API is very low level and you can talk almost directly to a driver from KERNEL32 but of course such support would be limited only to new FSDs written with such support in mind.

Link to comment
Share on other sites

Unfortunately I can't agree that implementing a filesystem driver would be a simple task.

The problem is that Windows 9x filesystem (IFS) API is very low level, I mean you have to deal with such stuff as buffering, VCache, name cache, path cache, file locking, file searching on your own. To make things worse, the IFS API documentation is very poor and missing important details.

That said, it is possible to implement basic filesystem driver (FSD) but it will have poor performance, lack many features and will behave differently than built-in drivers.

Personally I don't see implementing >4GiB file support as being that much of an issue, because as I said the IFS API is very low level and you can talk almost directly to a driver from KERNEL32 but of course such support would be limited only to new FSDs written with such support in mind.

I never said the FSD (File System Driver) was simple, just simpler than the rewrite of the User API. Kernel32 itself limits SetFilePointer Calls to 32 Bits even though the specification for the Call is 64 Bits. Bypassing the limit check still results in truncation. If I recall correctly the internal file tables only support 32 bit positioning information.

Link to comment
Share on other sites

  • 2 months later...
Installing a new Filesystem will not be sufficient.

The System APIs do not support >4GB, in particular SetFilePointer.

I know. I don't want install ExFat. There is no problem with this. It's time to fix Win98Dos and Win98 and make support for use ExFat. Here lies the rub. Blue Ray movies - 6,7,8GB. You know what I mean...

Let me translate what RLoew said: [short version] It's *impossible*!

[long version] It's *impossible* without a *major* rewrite of the whole OS. And, in case one ever did it, after a rewrite of such magnitude it wouldn't actually even *be* Win 9x anymore.

Hello dencorso!!! Some problem with my topic?

Yes. The sole thing you asked was for someone to create an installable ExFat driver.

This is impossible. Then, in your next post you denied this, and instead escalated to a full system rewrite. This, while possible, is improbable and, if done, would result in a totally different OS... That said, I don't see how do you intend to continue this thread...

rloew and dencorso, I think you should tell MDGx about this that making an exfat driver for win9x is not possible as rloew said it would require rewriting the win9x architecture.

not only that, exfat under win9x would have also required also a DRV or VXD driver for full exfat support, in case the DLL/SYS exfat drivers from xp/vista don't work under w9x. getting win9x to recognize and access exfat partitions is one thing; getting win9x to even read, write or format/partition exfat volumes is another.

Edited by erpdude8
Link to comment
Share on other sites

rloew and dencorso, I think you should tell MDGx about this that making an exfat driver for win9x is not possible as rloew said it would require rewriting the win9x architecture.

not only that, exfat under win9x would have also required also a DRV or VXD driver for full exfat support, in case the DLL/SYS exfat drivers from xp/vista don't work under w9x. getting win9x to recognize and access exfat partitions is one thing; getting win9x to even read, write or format/partition exfat volumes is another.

Creating an ExFat driver is doable although a rather substantial task. It is when you go beyond the API limits, such as files larger than 4GB, that things get really hard. Tracking down all of the code that uses File Position information and/or the internal File Tables, and Patching them is a lot of work and requiring skills few people have. This is also why the Windows Resource issue is so hard to solve.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...