Jump to content

Patched IO.SYS for 9x/ME


jaclaz

Recommended Posts

For my personal edification if nothing else I'm trying to follow the logic of the Microsoft code .

Although possibly a little off-topic, may I ask the techie types on this thread where you find the layout of the drive data table in FAT-32 enabled versions of DOS 7 (8) ? In Ralf's interrupt list we have got the previous format (for DOS without FAT 32) as table #2603 at int 2F/0803, but I can't locate the newer expanded table layout (96h bytes per drive IIRC) :=(

Of course I'm not exactly young any longer and my glasses surely need adjustment ... If it is in RBL, pray tell under which table and/or interrupt number; else any on-line reference ? It is not practical for me to acquire printed books from oversea (and as much as I hate to admit I'm near to being broke)

Thanks

Edited by Czerno
Link to comment
Share on other sites


For my personal edification if nothing else I'm trying to follow the logic of the Microsoft code .

Although possibly a little off-topic, may I ask the techie types on this thread where you find the layout of the drive data table in FAT-32 enabled versions of DOS 7 (8) ? In Ralf's interrupt list we have got the previous format (for DOS without FAT 32) as table #2603 at int 2F/0803, but I can't locate the newer expanded table layout (96h bytes per drive IIRC) :=(

Of course I'm not exactly young any longer and my glasses surely need adjustment ... If it is in RBL, pray tell under which table and/or interrupt number; else any on-line reference ? It is not practical for me to acquire printed books from oversea (and as much as I hate to admit I'm near to being broke)

Thanks

I haven't seen one. I have been reverse engineering the code to find the purpose of various fields and flags.

Link to comment
Share on other sites

The official documents about FAT-32 are the following:

You should read the thread that quote comes from, On Bootable CD's Floppy Emulation, and it's sister thread On Superfloppies and their Images, both in full, for a lot more of interesting information and references. It's worth the effort, believe me.

Link to comment
Share on other sites

The official documents about FAT-32 are the following:

You should read the thread that quote comes from, On Bootable CD's Floppy Emulation, and it's sister thread On Superfloppies and their Images, both in full, for a lot more of interesting information and references. It's worth the effort, believe me.

Unfortunately those documents describe the formats of the partitions themselves, not the format of the internal tables used by IO.SYS.

Link to comment
Share on other sites

Unfortunately those documents describe the formats of the partitions themselves, not the format of the internal tables used by IO.SYS.

Of course. That remains undocumented (and, hence, is only knowable through RE). The official documentation never reveals more than what's deemed strictly necessary, as usual. But I thought maybe Czerno would find useful those pointers to the existing documentation of FAT-32, even if they do not contain the info he's seeking. It's unfortunate RBIL ended with v. 61, BTW... A v. 62, containing a lot of MS-DOS 7.xx - 8.00 info would be a dream come true, but I guess it'll never be more than just a dream... :no:

Link to comment
Share on other sites

  • 1 month later...

The following is a BDIFF dump of my full Patch to the KB311561 (2001/12/01) Version of IO.SYS for the various Partition handling bugs I have found:


<-000016C0 B3 01 *..*

->000016C0 00 3E *.>*

<-000054C2 4D 50 41 44 4D 50 41 44 4D 50 41 44 4D 50 41 44 *MPADMPADMPADMPAD*
<-000054D2 4D 50 41 44 4D 50 *MPADMP*

->000054C2 1E 56 57 51 06 1F 8D B5 96 00 B9 4B 00 F3 A5 59 *.VWQ.......K...Y*
->000054D2 5F 5E 1F E9 9D C3 *_^....*

This Patch is complete. Unlike the previously posted Patch, Saunderson's Patches are not needed.

This Patch does not include Saunderson's controversial change to LBA handling that has caused problems and is not in jds's Version.

Link to comment
Share on other sites

Where do you get this latest patch?

I've somewhat followed this long convoluted technical discussion and I must say it's very confusing.

1 - I think the implication is you HexEdit it yourself with the above.

2 - A little, yes. You have to think twice after reading to get the gist.

Got a little bug myself that I haven't got around to trying (above) patches (except the jds) on yet (haven't had time to boot/test the 98SE yet). In my case, the last Logical Drive on the Last Logical Partition is a 42.8gb (as seen in Explorer) NTFS partition.

edit - and data on it, so don't dare attempt resize+add small non-NTFS after...

rloew will probably confirm/deny assertion #1 pretty soon...

Edited by submix8c
Link to comment
Share on other sites

Where do you get this latest patch?

I've somewhat followed this long convoluted technical discussion and I must say it's very confusing.

I haven't written a Patch Program for it. You need to use a Hex Editor to Patch the File.

I previously posted a less comprehensive Patch Program on this forum.

Most of the technical discussion on this subject was about Saunderson's earlier Patch.

Both Patches were needed to cover all issues.

@submix8c: My earlier or current Patch should handle the problem caused by your NTFS Partition.

Edited by rloew
Link to comment
Share on other sites

I previously posted a less comprehensive Patch Program on this forum.

Most of the technical discussion on this subject was about Saunderson's earlier Patch.

Both Patches were needed to cover all issues.

Forgive me if I sound dense, but...

It appears that the IOSYS Zip file first needs applied and then subsequently the above manual patch to correct all known bugs? (sans the Saunderson patches, i.e. ONLY your patches are necessary?)

EDIT!!! Just read your above "edit". - Just the above patch covers all "known bugs". Correct?

Edited by submix8c
Link to comment
Share on other sites

I previously posted a less comprehensive Patch Program on this forum.

Most of the technical discussion on this subject was about Saunderson's earlier Patch.

Both Patches were needed to cover all issues.

Forgive me if I sound dense, but...

It appears that the IOSYS Zip file first needs applied and then subsequently the above manual patch to correct all known bugs? (sans the Saunderson patches, i.e. ONLY your patches are necessary?)

EDIT!!! Just read your above "edit". - Just the above patch covers all "known bugs". Correct?

This Patch is "complete". Do not use Saunderson's Patch OR my earlier Patch with it.

I wouldn't say "all known bugs" as there are bugs unrelated to the issues addressed here.

Link to comment
Share on other sites

The patch is included in the U98SESP3. Now you don't have to install the SP but you will need to download and extract the file from the package.

That is KB311561 Win 98SE IO.SYS patched with both jds' revision of the Phelum patch and RLoew's earlier patch. CRC32 = 30D4D998 and MD5 = BC7FE0D6DC0AF9F3303C0A444C74442B. You can use MS CRC.EXE and MS FCIV.EXE to confirm the CRC32 and MD5 hashes, but you must extract the latter from inside KB841290, since the installer refuses to run on Win 9x, but FCIV.EXE itself runs OK on Win 9x. That should solve your issue, all right, submix8c. :yes:

I decided to post the hashes to help distinguishing among the various versions of IO.SYS that are around at present.

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...