Want to work on subsystem

Here you can discuss ReactOS related topics.

Moderator: Moderator Team

counting_pine
Posts: 237
Joined: Fri Nov 26, 2004 10:44 pm
Location: Fallowfield

Post by counting_pine »

Even if it's in "No GUI" mode, without a 16-bit subsystem, ReactOS still won't run 16-bit apps. Especially if they're Windows apps.

I think the best solution is to do what Windows does and have a V86 mode. Not only does it let most 16-bit programs work, but it also lets them coexist with the 32-bit part. They can access the filesystem and mapped drives, and have access to the clipboard. You can't even do that if you install Windows 3.1 on DOSBox.

Also, there's the speed issue. If we implement it the same way as Windows NT, then we should be able to run 16-bit apps at the same speed Windows NT can.
AcetoliNe
Posts: 115
Joined: Wed Jan 05, 2005 10:53 pm
Location: a thousand miles from Hinterland
Contact:

Post by AcetoliNe »

A console system would NOT work.
One thing that a lot of people don't immediately realize is that DOS and Windows (esp. WinNT) are two _completely different_ operating systems. I think it's the fact that the two have been merged for so long that has paled this fact. DOS under windows is just an _emulation_, not so different from the UNIX subsystem that WinNT has. Most people immediately think 'dos' when they see a command prompt. So it seems natural to think that a no-gui reduced capability ros could run DOS apps.
If you think so, you are dearly misinformed. A command prompt wouldn't be able to run dos apps any more than a PowerPC running Linux. WinNT and DOS are that different.
it would be fine when you integrate a function like the windows 95/98 function "restart in the dos mode" then the user found a freedos (16BIT)

EDIT: Maybe with a dos NTFS/ext2/ext3/reiserfs driver?
With a correct driver this would work, but It would be very inconvenient. Think of restarting your computer every time you wanted to play a game.
caveman LIKES chocolate.
we shall reinvent the wheel until it turns properly.
azeemarif
Posts: 25
Joined: Fri Dec 31, 2004 8:53 am

Post by azeemarif »

Actually, if ReactOS DOS subsystem is properly implemented, it will be able to run most of the dos applications.

In that case, it you boot ReactOS in "No GUI" mode, you'll be as good as booting in dos mode (Not exactly but because DOS subsystem can still run the DOS apps and as Acetoline said.. most people take command prompt as "DOS mode").

Acetoline:
I was going through ReactOS source code and I found that it already provides APIs to hook our own GPF (general protection fault) handler, which we will need to run variaous DOS apps (apps which use INT 13 or so).

It is just matter of time before I start working on the real code (but off course before that I'll discuss my approach with you)
AcetoliNe
Posts: 115
Joined: Wed Jan 05, 2005 10:53 pm
Location: a thousand miles from Hinterland
Contact:

Post by AcetoliNe »

In that case, it you boot ReactOS in "No GUI" mode, you'll be as good as booting in dos mode (Not exactly but because DOS subsystem can still run the DOS apps and as Acetoline said.. most people take command prompt as "DOS mode").
You're quite right. What I meant by my previous post was that just a simple console will not cut it; you have to have a properly implemented subsystem no matter what you do.
It is just matter of time before I start working on the real code (but off course before that I'll discuss my approach with you)
Great! :D
BTW, do you have write access?
caveman LIKES chocolate.
we shall reinvent the wheel until it turns properly.
Pentiumforever
Posts: 198
Joined: Sun Jan 16, 2005 5:47 pm
Location: Duesseldorf, Germany
Contact:

Post by Pentiumforever »

AcetoliNe wrote:
it would be fine when you integrate a function like the windows 95/98 function "restart in the dos mode" then the user found a freedos (16BIT)

EDIT: Maybe with a dos NTFS/ext2/ext3/reiserfs driver?
With a correct driver this would work, but It would be very inconvenient. Think of restarting your computer every time you wanted to play a game.
Better than under Windows XP where I must have a DOS Bootdisk when I want to play a DOS game with Sound!
Mammlouk
Posts: 40
Joined: Mon Nov 29, 2004 3:25 pm

Post by Mammlouk »

pentiumforever wrote: Better than under Windows XP where I must have a DOS Bootdisk when I want to play a DOS game with Sound!
You should download VDMSound. I recently started using it and it works wonders for sound compatibility in DOS games.
AcetoliNe
Posts: 115
Joined: Wed Jan 05, 2005 10:53 pm
Location: a thousand miles from Hinterland
Contact:

Post by AcetoliNe »

azeemarif: If you want to discuss your approach, I think it's best to do it in the ros-dev mailing list (but only serious discussion; no talk of consoles and drivers and gui-deprived kernels. I don't want ros developers flaming me and getting me banned :? )
So go on. I'm dying to know what you have in mind ;)

Also, I'm going to be moving to a new city tomorrow (600km from where I currently live) so until things settle down I may not check my emails (It may even be a week, but I suspect it'll only be for a day or two).
caveman LIKES chocolate.
we shall reinvent the wheel until it turns properly.
Toxigenicpoem
Posts: 29
Joined: Wed Jan 26, 2005 6:48 pm

Post by Toxigenicpoem »

Is there a program that can intercept DOS clock cycle instructions? I'm having problems with speed settings.
AcetoliNe
Posts: 115
Joined: Wed Jan 05, 2005 10:53 pm
Location: a thousand miles from Hinterland
Contact:

Post by AcetoliNe »

Is there a program that can intercept DOS clock cycle instructions? I'm having problems with speed settings.
What kind of problems? I've found that CPUKiller (http://www.cpukiller.com/) is a valuable method for slowing down dos progs. If you're getting Runtime Error 200 (the most common dos-related speed problem) then cpukiller will probably do it. (one thing you have to remember is to turn off cpukiller when the app has passed the loading stage).

DOS clock cycle instructions? :? never heard of that before. Maybe you mean how to modify the CPU clock frequency?
caveman LIKES chocolate.
we shall reinvent the wheel until it turns properly.
Toxigenicpoem
Posts: 29
Joined: Wed Jan 26, 2005 6:48 pm

Post by Toxigenicpoem »

DOS clock cycle instructions?
Frequency is the number of Cycles per second or Clock Cycles, perhaps this is a term not heard often outside of the Telecommunications industrie where we rely heavily on Frequencies, so we express them in Direct Clock Cycles or Cycles per Second (can change via company too) which gives you Frequency. I wasn't sure if there was a direct way of influencing DOS based programs, or CPU cycles over all. Thanks for answering my question! :D
azeemarif
Posts: 25
Joined: Fri Dec 31, 2004 8:53 am

Post by azeemarif »

AcetoliNe wrote:
BTW, do you have write access?
No, I don't.

AcetoliNe wrote:
If you want to discuss your approach, I think it's best to do it in the ros-dev mailing list
I agree.

AcetoliNe wrote:
I'm going to be moving to a new city tomorrow.
My best wishes for your stay in the new city.

AcetoliNe wrote:
so until things settle down I may not check my emails
Even I am busy with another project at the moment (trying to make a linux livecd distribution :-) ). So it is ok.
As soon as I am little bit free, I'll have a disscussion with you.
Radiomaan
Posts: 3
Joined: Fri Feb 18, 2005 9:00 am

Post by Radiomaan »

azeemarif wrote:hello,

I am back with my silly posts :-)

But this time, after seriously reading and experimenting with FreeDos and DosEmu code.

As many people suggested FreeDOS as an option to run as ReactOS subsystem, I concentrated more on FreeDOS.

Something I came to know are

1) We need ReactOS DOS/Win16 subsystem so that we can run 16bit DOS applications on ReactOS.

2) FreeDOS itself is 16bit system

3) Compiling FreeDOS code with 32bit compiler is so difficult that it gave birth to a new project FreeDOS-32 (I tried compiling FreeDOS code with MinGW with no success)

4) FreeDOS-32 is in its infancy. Currently it can't even run simple DOS applications

5) DOSEmu is really slow



Please give your valuable suggestions.
Another free dos clone is rxdos, which was written in assembly, natively supports long filenames (something freedos hasn't fully completed yet), and allows multitasking. On the downside, it has had development in recent years and has a few unfixed bugs. There was a book written about the internals of rxdos and with the book it could be considered very well documented. It's worth a look at http://world.std.com/~mikep/rxdos-page.html and http://sourceforge.net/projects/rxdos/. See also a large list of dos alternatives at http://pcgem.iwarp.com/.

One dos version of interest but which the download site is now a dead link is DCP. It is an East German clone of MS-DOS that supposedly had advanced features. It was not copyrighted. What little I could find on it was at http://www.freeos.com.
AcetoliNe wrote:That doesn't necessarily mean that FreeDOS can't be compiled with a 32-bit compiler. It just means it can't be compiled with MinGW. DJGPP perhaps?
I believe the freedos-32 project started as an attempt to compile freedos under djgpp.
azeemarif
Posts: 25
Joined: Fri Dec 31, 2004 8:53 am

Post by azeemarif »

Radiomaan:
There was a book written about the internals of rxdos
I have that book on my desk right now :-) It is called "Disecting DOS"

But I think I'll use it as reference on and write my own code for ROS subsystem.
uniQ
Posts: 246
Joined: Sat Dec 04, 2004 8:58 am

Post by uniQ »

Radiomaan wrote:One dos version of interest but which the download site is now a dead link is DCP. It is an East German clone of MS-DOS that supposedly had advanced features. It was not copyrighted. What little I could find on it was at http://www.freeos.com.
Heyhey! http://web.archive.org/web/*/http://www ... loads.html

-Q
Coming on, coming up, let me help ROS and I'll be able to look @ a life well used.
cyborg
Posts: 22
Joined: Sun Feb 20, 2005 2:27 pm

Post by cyborg »

I am still for dosemu

Slow? I dont think so. maybe compile it again, I could use most of my old apps without problems, even a bit too fast.

DOS "fastness" is not a factor. most of the pcs today are simply too fast in DOS to use dos based programs.

I think dosemu is the BEST alternative, the FASTEST way to get the goal, and fast enough to emulate a very fast running dosbox.

I mean, for what do you need DOS to be at native speed? think about it.
Mostly, you have to slow down your PC anyway to get old dos progs working.

for quake and descent and other games, they run under win32 too. I never tried them on my dosemu box, but I think they will run there too.

most of my old dos games only work in dosemu. windows' dos emulation is not the best, and if you can run a prog, its mostly too fast, gets a division by zero or stuff like this.
Post Reply

Who is online

Users browsing this forum: No registered users and 43 guests