Jump to content

Windows NT 4.0 and GRUB4DOS


ppgrainbow

Recommended Posts

The undocumented commands mapped the first hard disk (hd0), the hard disk image (hd1) and the hidden RAM drive (rd) and swapped them completely.

Well, IMHO, no, but again, if you are happy with them, that's good. :)

If you could provide some documentation/examples about using map with THREE driives it would be nice. :yes:

In your menu.lst (hd1) is never defined, does your PC have two "real" hard disks?

The floppy mapping remains unmodified as it is designed to map only one floppy.

If no floppy mapping is changed, there is no need to explicitly set the number of floppies, the number will remain as it was before.

A 64 Mb image could normally be 129/16/63 or (a little larger) 130/16/63.

And this is a good occasion to inaugurate latest work by larryb123456:

Forrestreversedisappear_version1.gif

jaclaz

Edited by jaclaz
Link to comment
Share on other sites


If I get the chance to provide some documentation about mapping three (or more) drives), I'll let you know. The laptop has one removable hard disk. The hard disk image mounted on hd1 is mapped as hd0 when executing MS-DOS 6.22 at boot.

That's correct. The floppy mapping remains unchanged as it is not designed to detect drive B (second floppy drive).

When a 64 MB hard disk image is created using FSUTIL or Qemu-img commands, the cylinder/head/sector values are defaulted to 130/16/63 for a total of 131,040 sectors which equals almost 64 MB in size. That's not the case when creating a hard disk image from DOSBox Megabuild's IMGMAKE command.

:)

Link to comment
Share on other sites

When a 64 MB hard disk image is created using FSUTIL or Qemu-img commands, the cylinder/head/sector values are defaulted to 130/16/63 for a total of 131,040 sectors which equals almost 64 MB in size. That's not the case when creating a hard disk image from DOSBox Megabuild's IMGMAKE command.

Sure :), the whole point being that a 129/16/63 or 120/16/63 is "right" (in the sense of standard) and a 936/4/35 is UNstandard.

I still don't get from your reply if the laptop has one or two "real" hard disks and if two on which hard disk is the /msdos.img. :unsure:

Let's say that on a single hard disk with a single partition a "normal" DOS 6.22 in a "standard" roughly 64 Mb image CHS 130/16/63 works allright here with this menu.lst (that it seems to me simpler than the one you posted):

title Microsoft MS-DOS 6.22 64 Mb
map (hd0) (hd1)
map --mem (hd0,0)/msdos.img (hd0)
map --hook
root (hd0,0)
chainloader +1

(the need for A20 settings may depend from your BIOS, though it sounds "stange" to me that you actually need both the settings you have posted :unsure: )

jaclaz

Link to comment
Share on other sites

Sure :), the whole point being that a 129/16/63 or 120/16/63 is "right" (in the sense of standard) and a 936/4/35 is UNstandard.

A hard disk image that has 120 cylinders, 16 heads and 63 sectors per track would equal 59 MB. A hard disk image with the 936/4/35 CHS setting is custom and based on how the hard disk image was created using IMGMAKE. The internal physical hard disk image (hd0) is where Windows NT 4 boots at start up. The hard disk image (hd1 mapped as hd0), MSDOS.IMG is where it boots MS-DOS both as a RAM disk and for maintenance use.

Let's say that on a single hard disk with a single partition a "normal" DOS 6.22 in a "standard" roughly 64 Mb image CHS 130/16/63 works allright here with this menu.lst (that it seems to me simpler than the one you posted):

title Microsoft MS-DOS 6.22 64 Mb
map (hd0) (hd1)
map --mem (hd0,0)/msdos.img (hd0)
map --hook
root (hd0,0)
chainloader +1

(the need for A20 settings may depend from your BIOS, though it sounds "stange" to me that you actually need both the settings you have posted :unsure: )

The portion of the setup code (found in lines 7 to 20 of menu.lst) that boots into MS-DOS 6.22 in RAM only consumes 64 MB of system memory and reducing the size of the total physical memory available to DOS from 144 MB to 80 MB.

The eXtended Memory Specification Application Programming Interface (XMS API) version 3.0 that is used in MS-DOS has a 4 GB memory limitation. However, the HIMEM.SYS XMS 3.x driver that was used in MS-DOS 6.0 to MS-DOS 6.22 uses a unsigned 16-bit value (up to 65,535 KB of physical memory) to store the amount of physical memory to MS-DOS in kilobytes. If more than 64 MB of system memory is reported to MS-DOS, then only 64 MB will be usable to the OS.

If the HIMEM.SYS XMS driver is version 2.x, then MS-DOS cannot even use the memory above the 16 MB limit. The HIMEM.SYS XMS 2.x drivers were shipped with MS-DOS 5.0 and Windows 3.0 respectively..

(Unfortunately, on a bit of a off-topic note, Windows 3.0 does not support system memory above this 16 MB limitation in both Standard Mode and 386 Enhanced Mode as the OS relies on the HIMEM.SYS XMS 2.x driver to enforce this limit. While Windows 3.0 will continue to work with more than 16 MB of memory in 386 Enhanced Mode, any attempts to run Windows 3.0 in Standard Mode with more than 16 MB of memory will cause the system to hang unless a RAM disk is installed to reduce the available memory to 16 MB of less.)

By adding the lines "map --ram-drive=0x9f", "map --rd-base=0x5000000", "map --rd-size=0x100000" and adding (rd) to the end of "map (hd0) (hd1)", this reduces the total amount of available for MS-DOS to 80 MB. And along with a 64 MB hard disk image, it further cuts down the size of the physical memory available to MS-DOS to just 16 MB which is reasonable enough for most MS-DOS and Win16-based software.

As for the need to re-enable A20 support, I can try to change the line that reads "map --a20-keep-on=0" to "map --a20-keep-on=1" to see if MS-DOS will boot with Gate A20 support enabled and remove the "--disable-a20" reference to the chainloader command.

Edited by ppgrainbow
Link to comment
Share on other sites

A hard disk image that has 120 cylinders, 16 heads and 63 sectors per track would equal 59 MB. A hard disk image with the 936/4/35 CHS setting is custom and based on how the hard disk image was created using IMGMAKE. The internal physical hard disk image (hd0) is where Windows NT 4 boots at start up. The hard disk image (hd1 mapped as hd0), MSDOS.IMG is where it boots MS-DOS both as a RAM disk and for maintenance use.

....

Evidently I cannot have a conversation with you :w00t: , there must be something lost in translation that we seem not to be able to overcome.

The message is/was simple:

You are using mostly unneededly a set of unstandard, partly wrong, overly complex procedures, commands and settings that can IMHO be greatly simplified.

Some of these "unstandard" settings will most probably result in a number of applications having issues with the system. :ph34r:

Just for the record, you never talked of Windows 3.0, but only of Windows 3.1 or 3.11 until your last post.

As said, if you are happy with them, I am very happy too :).

jaclaz

Edited by jaclaz
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...