FreeDOS 21st century?

DOS specific questions.
DamageX
Posts: 130
Joined: Nov 21, 2009 8:42

Re: FreeDOS 21st century?

Post by DamageX »

Does the night kernel carry on with the old DOS/DPMI API or does it have a new API? It sounds interesting but I can`t find the slightest info about it.
counting_pine
Site Admin
Posts: 6323
Joined: Jul 05, 2005 17:32
Location: Manchester, Lancs

Re: FreeDOS 21st century?

Post by counting_pine »

There seems to be a forum of sorts for the Night Kernel at https://groups.google.com/forum/#!forum ... dos-kernel
dasyar
Posts: 372
Joined: Dec 04, 2008 15:31

Re: FreeDOS 21st century?

Post by dasyar »

I am still following the progress of the Knight kernel. It seems like there still seems to be some progress going on with the project. On my Linux box, I set up a "play along" section where I have the Knight kernel source and the NASM compiler, and I do an occasional compile to see how it all works.

I had a really crazy thought the other day of maybe making derivative build of the Knight kernel. Instead of having a freeDOS+command.com setup, build something that just runs with the Knight kernel, then you could have a straight forward control of the multitasking aspect of the Knight kernel. But, what do I know.
dasyar
Posts: 372
Joined: Dec 04, 2008 15:31

Re: FreeDOS 21st century?

Post by dasyar »

Just a quick update, Night kernel is moving at snails pace, at least there is still some movement. This is not a criticism, just an observation. It is being done by some programmers, in their spare time, and for free. Also it is open source.

Once it does become available, I am curious, how many people will be using it. Granted, it is still DOS, but it will have multi-tasking, and it will be 32 bit.
angros47
Posts: 2321
Joined: Jun 21, 2005 19:04

Re: FreeDOS 21st century?

Post by angros47 »

Not many people would use it... because a small linux kernel, with dosemu installed, would have the same hardware requirements, more or less, and would offer support for all dos programs, in a 32 bit or 64 bit environment. There would be no reason to use the night kernel.

Also, Dosemu uses freedos.
caseih
Posts: 2157
Joined: Feb 26, 2007 5:32

Re: FreeDOS 21st century?

Post by caseih »

Sure, but it would be fun!
dasyar
Posts: 372
Joined: Dec 04, 2008 15:31

Re: FreeDOS 21st century?

Post by dasyar »

Not many people would use it... because a small linux kernel, with dosemu installed...
Now the question is, how many people are using dosemu? And, I do not think that dosemu is 32 bit, in terms of running 32 bit DOS programs. Yea, I know, how many 32 bit DOS programs are out there.

I am thinking maybe with the new Night kernel, a new old DOS could be created. The Night kernel will be running in protected mode, so I think that it will have "real" multi-tasking, as opposed to a simulated software version. The other thing to consider is UEFI, maybe the new old DOS could be fixed to be able to start in UEFI. It sounds like their could be all kinds of new possibilities.
caseih
Posts: 2157
Joined: Feb 26, 2007 5:32

Re: FreeDOS 21st century?

Post by caseih »

I think @angros47 means that a linux kernel (which is already light-weight) running multiple dosemu instances will accomplish right now, in a way that supports a range of hardware, multi-tasking 16-bit real-mode dos programs.

Many years ago I had a friend running OS/2 2.1, but instead of the heavy graphical environment, he was running a text mode only environment that he used to multitask DOS programs. It was really impressive at the time.
DamageX
Posts: 130
Joined: Nov 21, 2009 8:42

Re: FreeDOS 21st century?

Post by DamageX »

I haven't kept up with this since I don't use google groups, but when there is a release I'll be sure to check it out. It'll be interesting to see how the multitasking works out.
jj2007
Posts: 2326
Joined: Oct 23, 2016 15:28
Location: Roma, Italia
Contact:

Re: FreeDOS 21st century?

Post by jj2007 »

To run 16-bit DOS stuff on my Win7-64 machine, I use the MS-DOS Player. Extract binary\i486_x64\msdos.exe and run it e.g. as msdos.exe my16bit.exe (works like a charm, even for my16bit.com programs).
D.J.Peters
Posts: 8586
Joined: May 28, 2005 3:28
Contact:

Re: FreeDOS 21st century?

Post by D.J.Peters »

@jj2007 thank you for sharing I never heard MS DOS Player before.
The best are the source code many stuff to read and learn :-)

Joshy
dasyar
Posts: 372
Joined: Dec 04, 2008 15:31

Re: FreeDOS 21st century?

Post by dasyar »

I am looking at the Night kernel from a freeBasic perspective, how it will run and cooperate with the new kernel.

I take it that you will have to use the freeBasic DOS version? Will that version be able to use all the new features of the Night kernel? Will freeBasic be able to create a new command.com, if somebody decided to enhance it to create a new experience? Would the choice of development languages become a choice between C and freeBasic?

Since the Night kernel is 32bit, I think that expands the memory available to 4GB, right? No more excuses about DOS and the limited availability of memory. Even more interesting, how would one use the multi-tasking aspect with freeBasic? Lots of questions come to mind, will get to some, later on.
D.J.Peters
Posts: 8586
Joined: May 28, 2005 3:28
Contact:

Re: FreeDOS 21st century?

Post by D.J.Peters »

I don't trust precopiled *.exe from any hobby coder so I build msdos_xxx.exe self !

But I have fixed some stuff before the orignal code is more VisualStudio style then open source mingw64 I use at all :-)

for example: foo(__in int x, __out int y) isn't GNU compiler syntax !

in file "source\Makefile.mingw" I added:
LIBS = -lwinmm -lpsapi -lwsock32 -lsetupapi -lgdi32 -lmpr

in file "source\common.h" I added (direct after #include <windows.h> the order is important)
#include <windows.h>
#include <initguid.h>
#include <ntddstor.h>
#include <setupapi.h>

...

again in file "source\common.h" I added
#ifndef __in
#define __in
#endif
#ifndef __out
#define __out
#endif


in file "msdos.cpp" line 11145 I added ...
#ifndef SUBLANG_SERBIAN_CROATIA
#define SUBLANG_SERBIAN_CROATIA 0x01
#endif


that fixed a bunch of error's

build msdos_xxx.exe
>D:\emus\msdos\source>D:\mingw64\bin\mingw32-make -f makefile.mingw

the new fresh binaries are:
D:\emus\msdos\binary\msdos_i286.exe
D:\emus\msdos\binary\msdos_i386.exe
D:\emus\msdos\binary\msdos_i486.exe

happy coding :-)

Joshy

Code: Select all

D:\emus\msdos\binary>msdos_i486.exe
MS-DOS Player (i486) for Win32-x64 console

Usage: MSDOS [-b] [-c[(new exec file)] [-p[P]]] [-d] [-e] [-i] [-m] [-n[L[,C]]]
             [-s[P1[,P2[,P3[,P4]]]]] [-vX.XX] [-wX.XX] [-x] (command) [options]

        -b      stay busy during keyboard polling
        -c      convert command file to 64bit execution file
        -p      record current code page when convert command file
        -d      pretend running under straight DOS, not Windows
        -e      use a reduced environment block
        -i      ignore invalid instructions
        -m      restrict free memory to 0x7FFF paragraphs
        -n      create a new buffer (25 lines, 80 columns by default)
        -s      enable serial I/O and set host's COM port numbers
        -v      set the DOS version
        -w      set the Windows version
        -x      enable LIM EMS, VCPI, and XMS
jj2007
Posts: 2326
Joined: Oct 23, 2016 15:28
Location: Roma, Italia
Contact:

Re: FreeDOS 21st century?

Post by jj2007 »

D.J.Peters wrote:I don't trust precopiled *.exe from any hobby coder so I build msdos_xxx.exe self !
...
the new fresh binaries are:
D:\emus\msdos\binary\msdos_i286.exe
D:\emus\msdos\binary\msdos_i386.exe
D:\emus\msdos\binary\msdos_i486.exe
Joshy,
I admire that you are able to compile that successfully - I am not such C/C++ expert. Can you post the binaries somewhere?
D.J.Peters
Posts: 8586
Joined: May 28, 2005 3:28
Contact:

Re: FreeDOS 21st century?

Post by D.J.Peters »

jj2007 wrote:Can you post the binaries somewhere?
YES WE CAN :-) good old days before the Trump disaster !

download: msdos-player.zip

Don't quote or post the link please !

(may be I change it soon and I don't like dead links to my server)

Joshy
Post Reply