Please correct me, if I am wrong.
You are not wrong, nor right.
![:(](http://reboot.pro/public/style_emoticons/default/sad.png)
It depends on the scope of the .script, if you are making a "general" use tool or a "narrow" one.
My batch has a (known) limit (or feature)
![;)](http://reboot.pro/public/style_emoticons/default/wink.png)
:
- It won't check the given size for the image being a multiple of a given geometry, but it will make a partition calculated on the max multiple of the given geometry immediately smaller to the given size.
Such an image, unless the size given by the user
already is a multiple of the given geometry, will create an image with "spare" sectors (difference between multiple of geometry and size), which will produce a warning when mapped in grub4dos.
If you "fix" a geometry of 255/63 and you want to make an image of the "exact" size, respecting Cylinder boundaries, whatever the user gives as size needs to be "trimmed" down to the nearest smaller multiple of 255x63x512=8 225 280 bytes.
And it doesn't make any difference to this additional check if the size was given by the user was expressed in bytes, Kbytes, Mbytes, Gbytes.
But if it's a "narrow" tool, only intended to be loaded via grub4dos and firadisk, and with a partition to be formatted as NTFS, there should be no need to respect the Cylinder boundary.
Respecting the Cylinder boundary was introduced in the batch to:
- comply with "old" standards/OS and with any partition type, being it CHS or LBA mapped
- comply with "bad" BIOSes
Some tests need to be made to confirm this, but theoretically there should be no need for this compliance with Win2K/XP/2003/Vista/2008/7 on NTFS, and again, no difference depending on the unit of measure the size is given.
![;)](http://reboot.pro/public/style_emoticons/default/wink.png)
jaclaz