Hello,

>At the end of the BLKDROP.BAT file, you will see this:
>
>:Done
>set _LINK.BLKDROP=

I don't know how I could miss that last line where _LNK_.BLKDROP is
cleared... Thanks for pointing that out :-)

What I still don't understand is, why use binary .com files for links
instead of .bat files? In my C:\FreeDos\Links directory I have 6 .bat
files and 9 .com files. What is the difference between creating a link
file as a batch file vs creating it as a binary .com file?

Thanks
/Osman

Den tir. 27. dec. 2022 kl. 01.26 skrev Jim Hall <[email protected]>:
>
> > > The link files in C:\FreeDos\Links set an environment variable. For
> > > example I found this in the file blkdrop.bat
> > >
> > > set _LINK.BLKDROP=%DOSDRV%\GAMES\BLKDROP\BLKDROP.EXE
> > >
> > > If I run this, I expect the environment variable _LINK.BLKDROP to be
> > > added to the system, but when I do a "set" I don't see it. Why is
> > > that? (I must be misunderstanding how the "set" command works).
> >
> > After you type SET xxx=yyy you should see it show up when you type
> > the SET command afterwards.  There are two reasons I can think of
> > why it wouldn't show up.  One would be if you are out of environment
> > space so it never actually got added.  The amount of environment
> > space is limited, and I'm not sure how different DOS versions react
> > if a variable never got added due to a size limitation (some may just
> > fail silently).  I don't remember having that problem myself, so I'm
> > not sure.
>
> At the end of the BLKDROP.BAT file, you will see this:
>
> :Done
> set _LINK.BLKDROP=
>
>
> That effectively "clears" the _LINK.BLKDROP environment variable, so
> it is removed from the environment, thus SET doesn't display it
> afterwards.
>
>
> > > Why are some of the link files .COM files containing binary data?
> >
> > I'm not sure what you mean by "link files .COM files".  COM files
> > are binary executable files and always contain binary data.  They can
> > (and usually do) contain some readable text data embedded in the binary
> > code, but they don't have to.
> >
>
> These .COM programs are there. You can find them in C:\FREEDOS\LINKS
> which is part of the default PATH when you install FreeDOS. Here's
> mine: (basic install, plus a few compilers, so there's not much there)
>
> C:\FREEDOS\LINKS>dir /w /b
> [.]            [..]           BLKDROP.BAT    I16ADDR2.COM   I16AR.COM
> I16AS.COM      I16BUTIL.COM   I16CPP.COM     I16CXXFI.COM   I16ELFED.COM
> I16GCC-A.COM   I16GCC-N.COM   I16GCC-R.COM   I16GCC.COM     I16GCOV-.COM
> I16GCOV.COM    I16GPROF.COM   I16LD.COM      I16NM.COM      I16OBJCO.COM
> I16OBJDU.COM   I16RANLI.COM   I16READE.COM   I16SIZE.COM    I16STRIN.COM
> I16STRIP.COM
>
>
> These are very tiny "shortcuts" that are there to run other programs
> that wouldn't normally be part of the PATH. Rather than setting a
> longer PATH that has the programs you want in it, the C:\FREEDOS\LINKS
> directory contains them.
>
> On my system, I always rewrite my FDAUTO.BAT file to be very simple,
> and it doesn't include the C:\FREEDOS\LINKS directory in the PATH. But
> for more general users, it's a way to make more programs available by
> default without overloading the PATH variable.
>
>
> Jim
>
>
> _______________________________________________
> Freedos-user mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/freedos-user


_______________________________________________
Freedos-user mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/freedos-user

Reply via email to