On 2004-02-25, Arkady V.Belousov wrote:

> There is such (current) order of source and target in SYS:
> 
>   SYS {options} targetdrive:
>   SYS {options} sourcedrive: targetdrive: [bootsector.file]
>   SYS {options} sourcepath targetdrive: [bootsector.file]
> 
> But there also possible to handle <sourcepath> after <targetdrive:>:
> 
>   SYS {options} targetdrive: sourcepath [bootsector.file]
> 
> This is because "path" differs from "drive:" (for example, "SYS A:
> ."). Moreover, because "file" differs from "path" and "drive:" (file
> may opened), <bootsector.file> also may be recognized in any place
> (before, between or after source and target).
> 
> Is there objections against adding (any of) these two possibility
> (<sourcepath> after <targetdrive:> and <bootsector.file> in any
> place), which not neccessarily should be reflexed in help screen
> (only above shown lines in "Syntax:")?

This is almost perfectly okay, although you should documented the
*official* order of arguments as used by DR-DOS/MS-DOS/PC DOS:

  SYS {options} [sourcepath] targetdrive:

Some issues of PTS-DOS required the source and target to be specified
in reverse order, so for maximum cross-platform compatibility it is
even /desirable/ to auto-detect the order of source and target
arguments. BTW. The DR-DOS SYS does exactly that since about 1999
and this will be part of the future DR-DOS SYS. Any arguments are
accepted in any order, you can even use compound single-letter options
such as

  SYS c:\drdos\drdos.703\ a: /DR:703 /LKX (instead of /L/K/X)

although then you will have to ensure that their order does not match
one of the multi-character options.

In regard to the problem of some machines' IPL not supporting DL = bootunit.
Since the DR-DOS 7.02+ SYS was the first DR-DOS tool to write out bootsectors
depending on DL (since virtually all machines today support DL and this will
allow various boot specials in the future), it also introduced a new option
to revert the behaviour to the *o*ld use of fixed value 00h and 80h.

  /O[:nnn]      Override auto-detection of boot drive unit (n=0..126,128..254).

So, if you don't specify /O, it will use the modern boot sector taking
advantage of DL. If you specify /O it will use the boot unit value
stored in the XBPB and patch this to either 00h or 80h depending on
what kind of target media was detected. You can also use /O:nnn to change
the value in the XBPB to meet (unusual) special boot requirement, but only
values 0..126 and 128..254 are allowed. (127 and 255 are reserved for
ROM disks and should not be used.)
I was recently thinking about reverting to the old conservative behaviour
by default, so the user had to specify /O in order to force the boot sector
to use DL, but since the /O option is already documented since 7.02,
I hesitated to change the behaviour once more - and since meanwhile virtually
all other single-letter options are already in use for other purposes (except
for /T, /W and /Z), there was no room to introduce a *n*ew option such as /N...

Since you were discussing a similar feature recently, I would like to suggest
to use the same syntax for the same purpose in order to avoid "the great
confusion."

Greetings,

 Matthias

-- 
<mailto:[EMAIL PROTECTED]>; <mailto:[EMAIL PROTECTED]>
http://www.uni-bonn.de/~uzs180/mpdokeng.html; http://mpaul.drdos.org

"Programs are poems for computers."



-------------------------------------------------------
This SF.Net email is sponsored by: IBM Linux Tutorials
Free Linux tutorial presented by Daniel Robbins, President and CEO of
GenToo technologies. Learn everything from fundamentals to system
administration.http://ads.osdn.com/?ad_id=1470&alloc_id=3638&op=click
_______________________________________________
Freedos-kernel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/freedos-kernel

Reply via email to