Re: [Freedos-kernel] Can the Kernel start my program instead of command.com?

2016-12-09 Thread Mateusz Viste
On Fri, 09 Dec 2016 02:07:24 -0700, David Kay wrote:
> Is it possible to get the kernel to load my program directly instead of
> via autoexec.bat? Then my system would just be composed of the kernel
> and my program?

Have you tried to declare your program in CONFIG.SYS using the SHELL= 
directive ? Seems like an easy test that would provide you with the 
answer you look for. Renaming your program to COMMAND.COM is also a 
possible test, albeit perhaps less elegant. I wouldn't expect troubles, 
but as usual, testing it out is the only way to be sure.

cheers,
Mateusz


--
Developer Access Program for Intel Xeon Phi Processors
Access to Intel Xeon Phi processor-based developer platforms.
With one year of Intel Parallel Studio XE.
Training and support from Colfax.
Order your platform today.http://sdm.link/xeonphi
___
Freedos-kernel mailing list
Freedos-kernel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freedos-kernel


Re: [Freedos-kernel] ke2042: nasm fails to assemble files during build time

2016-11-29 Thread Mateusz Viste
On Tue, 29 Nov 2016 13:02:59 -0800, H. Peter Anvin wrote:
> But why the batch file in the first place?  It truly makes no sense: it
> pollutes the namespace equally, and can just cause problems (e.g. in the
> case of more than 9 arguments.)  Not to mention slowing down a make.

Here's the thing: I, as a user, store lots of useful software on my PC. 
Many of these programs are so useful that I like to have them available 
immediately from anywhere: ZIP, UNZIP, UNRAR, UPX, NASM, TCC, OPTIPNG, 
QV, MPXPLAY, UHEX, GOPHERUS, LAME... the list goes on and on.

To achieve this, I know of four ways. Each comes with some limitations.

Method 1: Store every program in its own directory, and add each 
directory to the %PATH%. Problem: obviously the environment will get very 
bloated, very fast. Besides, some programs come with add-on tools that I 
do not want to be available from within my path.

Method 2: Trim out the programs from everything besides a single exe, and 
put them all in a single directory declared in my %PATH%. But this poses 
two problems that I cannot live with: first, not every program can be 
trimmed out to a single executable file (data files, config files, etc), 
and second - almost all programs come with their respective README files 
and other valuable documentation that I really want to keep within the 
vicinity of the executable (ie. in the same directory).

Method 3: Store each tool in its own directory, and place a COPY of its 
executable inside a directory in the %PATH%. Well, this is just messy - 
upgrading the program needs to think about replacing the executable each 
time in both places, and it's simply a waste of disk space.

Method 4: Keep each program in its own directory with all its original 
files, and only store *.bat "links" in a single directory somewhere in 
the PATH. This mitigates the troubles of methods 1 and 2, at the cost, 
unfortunately, of *.bat's own limitations (max 9 args and '=' processing 
weirdness).

The method 4 is what I started doing back in the nineties, and as of 
today I still didn't find a better (or let's say, less worse) way. That's 
a lifetime project it would seem.

The method 4 is also something that I implemented last year inside FDNPKG 
(the FreeDOS package manager), but since I discovered recently how oddly 
the '=' character is processed in %1-like arguments (there's a separate 
thread about that on freedos-devel), I will have to figure out some 
improved method... first thought pointed to computing some COM loader 
relying on INT21,4Bh but that's far less trivial than the current batch 
method, and hobby time is scarce.

Mateusz


--
___
Freedos-kernel mailing list
Freedos-kernel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freedos-kernel


[Freedos-kernel] ke2042 doesn't compile with Turbo C 2.01

2016-11-24 Thread Mateusz Viste
Hello,

I noticed that the ke2042 svn tag doesn't compile using Turbo C 2.01. The 
reason is quite trivial:

config.c:
Error config.c 407: Expression syntax in function PreConfig2

Indeed, config.c contains two commented line at 407 and 408:

//  if (UmbState == 2)
//umb_init();

I have no idea why these lines are commented, but the fact is that they 
are commented using non-C89 comments.
Simply replacing them with ANSI C /* */ comments solves the issue.

It's nothing important, an annoyance more than anything, but perhaps it 
would be worth "fixing" it in svn to avoid frustrating other users that 
might try compiling the kernel with Turbo C or something else that 
doesn't know about '//' comments...

Mateusz


--
___
Freedos-kernel mailing list
Freedos-kernel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freedos-kernel


[Freedos-kernel] ke2042: nasm fails to assemble files during build time

2016-11-23 Thread Mateusz Viste
Hello group,

I am trying to compile the FreeDOS kernel from svn's tag ke2042, but it 
appears that build.bat fails to assemble several files. For instance:

  nasm -DTC2 -DWITHFAT32 -i../hdr/ -DXCPU=86 -f obj floppy.asm
  nasm: error: more than one input file specified
  nasm: error: more than one input file specified

Not sure why this happens, the command looks sane. If I redo the nasm 
command by hand, I get the same message. Trying to compile on DOSEMU, 
using nasm v2.12.02.

Have I missed something obvious? Any clue?

regards,
Mateusz


--
___
Freedos-kernel mailing list
Freedos-kernel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freedos-kernel