Sign in Join

Live chat for Free Pascal, Lazarus, Delphi and every Pascal programmer.

Mailing lists / fpc-pascal / 2001-02

fp under Windows

21 messages · 10 people · –

Reply by email Subscribe to this list Your subscription

Read-only archive. Use j and k to move between messages.

Unknown author

With regard to the use of free-pascal (fp) under Windows (95 or 98 or higher) I wondered whether fp still depends on the presence of a DOS-shell. In the future such DOS-shells will disappear from the Windows Operating system (I have heard that in Windows NT they have already vanished). Will it still be possible to run fp under such a windows system. After installing fp under Windows 95 I noticed that when you start fp it still opens a DOS-shell. I would greatly appreciate an answer to this question in order to study the portability from pascal software to Windows.

Sincerely,

P.H. de Vries

P.H. de Vries
Dept. of Psychology
University of Groningen
Grote Kruisstraat 2/1
9712 TS Groningen NL
email:
tel. +31 50 3636454 (6472)
fax. +31 50 3636304

Marco van de Voort
to Unknown author
With regard to the use of free-pascal (fp) under Windows (95 or 98 or higher) I wondered whether fp still depends on the presence of a DOS-shell.

The dos version yes. The windows version should work in a NT commandshell.

In the future such DOS-shells will disappear from the

Windows Operating system (I have heard that in Windows NT they have already vanished).

In NT/2000 they haven't vanished, but there are some limitations.

Don't forget there is a fundamental difference between a "real" dos shell, and a commandline interpreter. Not everything that isn't GUI is dos.

Will it still be possible to run fp under such a windows system. After installing fp under Windows 95 I noticed that when you start fp it still opens a DOS-shell.

If that is a win32 version, it should start a win32 console box.

Michael Van Canneyt
to Unknown author: With regard to the use of free-pascal (fp) under Windows (95 or 98 or higher) I wondered…
Show quoted text 9 lines
With regard to the use of free-pascal (fp) under Windows (95 or 98 or higher) I wondered whether fp still depends on the presence of a DOS-shell. In the future such DOS-shells will disappear from the Windows Operating system (I have heard that in Windows NT they have already vanished). Will it still be possible to run fp under such a windows system. After installing fp under Windows 95 I noticed that when you start fp it still opens a DOS-shell. I would greatly appreciate an answer to this question in order to study the portability from pascal software to Windows.

the Win32 version of FP runs on Windows NT 4 and Windows 2000 without problems. The DOS shells will not disappear from the Windows OS; these are just called command-windows, and the FP program runs perfectly in that.

Michael.

Lee, John

All shells aren't dos shells! eg there are NT shells and also 4nt and 4dos shells (and of the course the many completely unuseable (IMO) UNIX shells which I'm not speaking about). Maybe a case of where it has a yellow break, quacks, flies and has a dir function it isn't necessarily a (dos) duck!

In any event even dos shells won't dissappear from NT/lose2000 in my lifetime...eg jpsoft are selling 4nt, 4dos etc for nt/lose2000

And finally fpc win32 doesn't need a dos shell... tho' a 4dos/4nt shell cli is sometimes (always?) still (IMO) the easiest way to run it.

HTH
John

Earlier message 31 lines
-----Original Message----- From: Sent: Wednesday, February 07, 2001 11:22 To: Subject: [fpc-pascal]fp under Windows With regard to the use of free-pascal (fp) under Windows (95 or 98 or higher) I wondered whether fp still depends on the presence of a DOS-shell. In the future such DOS-shells will disappear from the Windows Operating system (I have heard that in Windows NT they have already vanished). Will it still be possible to run fp under such a windows system. After installing fp under Windows 95 I noticed that when you start fp it still opens a DOS-shell. I would greatly appreciate an answer to this question in order to study the portability from pascal software to Windows. Sincerely, P.H. de Vries P.H. de Vries Dept. of Psychology University of Groningen Grote Kruisstraat 2/1 9712 TS Groningen NL email: tel. +31 50 3636454 (6472) fax. +31 50 3636304
Gabor DEAK JAHN

At 02/08/2001 06:30, you wrote:

Dear Friend,

Show quoted text 5 lines
With regard to the use of free-pascal (fp) under Windows (95 or 98 or higher) I wondered whether fp still depends on the presence of a DOS-shell. In the future such DOS-shells will disappear from the Windows Operating system (I have heard that in Windows NT they have already vanished). Will it still be possible to run fp under such

Has not, I use it all the time on NT.

Besides, not everything that opens an alphanumeric window is a DOS shell or a DOS program. Win32 programs can come in two flavors, as both GUI and console applications. Console programs (like FPC or the Command Prompt in NT) might deceptively look like legacy DOS programs running in a DOS box, however, they are not. They are genuine Win32 programs, running in the same environment, using the same resources any graphical Win32 program does, just happen to use an alphanumeric output. Many programs, including most of the network utilities of NT belong to this category, so there is no need and reason why this should disappear.

Regards,

   Gabor DEAK JAHN

------------------------------------------------------------------- Gabor DEAK JAHN -- Budapest, Hungary.
WWW: <http://www.tramontana.co.hu/>www.tramontana.co.hu E-mail:

Matt Emson
Has not, I use it all the time on NT.

No, you use the NT Console window.. this (at the moment) emulates DOS (fairly badly on 2000) and the support fot 16 MS DOS *will* dissappear in the not too distant future.. certainly when the 64-bit version of Windows arrives.. I'm sure not even Microsoft will want to emaulate both a 32-bit runtime environment *and* a 16-bit runtime environment!! Especially now that they're trying to remove legacy suppport. In Windows ME ther *is* no DOS prompt.. you have to hack ME before you can even get one to appear.

Show quoted text 7 lines
They are genuine Win32 programs, running in the same environment, using the same resources any graphical Win32 program does, just happen to use an alphanumeric output. Many programs, including most of the network utilities of NT belong to this category, so there is no need and reason why this should disappear.

The thing you have to remember here though is that, first of all these are 32 bit applications that wil not run outside of Windows, and secondly, once DOS support does go (and it will at some point) Microsoft will either replace the Console, or certainly re-think the way it works. NT has the ability to have other Kernals plugged in (somebody even wrote a Unix based replacement Kernal).

Relying on the fact that the DOS version of the Console will always exist is possibly fool-hardy. The DOS batch language has already been 'superceded' by the active scripting engine..

Matt

Gabor DEAK JAHN

At 02/09/2001 12:00, you wrote:

Dear Matt,

No, you use the NT Console window.. this (at the moment) emulates DOS

(fairly

badly on 2000) and the support for 16 MS DOS *will* dissappear in the not

too

distant future.. certainly when the 64-bit version of Windows arrives.. I'm

Right, but we were speaking about just the opposite, that FPC is *not* a DOS program but a Win32 console application (meaning the Win32 version of FPC, of course, but why would anybody try to run a different one on Win32 systems?), so it will work regardless of whether NT or any other Windows has or will have a genuine DOS box or not.

Actually, I can use both. I don't remember whether this comes with NT automatically or I added it to the Start Menu later myself (I installed my system several years ago), but I can start either SYSTEM32\CMD.EXE or SYSTEM32\COMMAND.COM. The first is the Command Prompt, the second a DOS Window.

But when I use FPC, I *don't* start a Command Prompt. I call FPC directly from the editor I use. It simply starts as any other Win32 program. The part of the kernel responsible for launching programs knows from a field inside the EXE header that it is supposed to be a console application, not a GUI one, so it sets up the window and everything else accordingly. This functionality will not disappear from future versions of Windows, this is for sure. But even if it does, the only thing to do would be to add a GUI front layer to FPC, and that would be fairly easy.

The thing you have to remember here though is that, first of all these

are 32

bit applications that wil not run outside of Windows, and secondly, once DOS support does go (and it will at some point) Microsoft will either replace

the

Console, or certainly re-think the way it works.

The console has nothing to do with DOS, there is no link between the two. The Command Prompt is a 32-bit console application (CMD.EXE in NT) which happens to reproduce some functionality of the old DOS command interpreter (COMMAND.COM). It is a completely independent program, requiring no DOS to rely on. Anybody could write such a CMD.EXE, in FPC for instance, that asks for commands, interprets and executes them, starting other programs if necessary.

DOS can go (actually, as you mentioned, NT has no real DOS, never had, from day one it was only a DOS interface of documented DOS functions, meaning that well-behaved DOS programs ran without any problem but ill-behaved ones, especially games, did not; NT was never intended to be a gaming platform, fortunately, I might add), and the console can and will stay.

Regards,

   Gabor DEAK JAHN

------------------------------------------------------------------- Gabor DEAK JAHN -- Budapest, Hungary.
WWW: <http://www.tramontana.co.hu/>www.tramontana.co.hu E-mail:

Mike Hodgson
to Matt Emson: No, you use the NT Console window.. this (at the moment) emulates DOS (fairly badly on…
Matt Emson wrote 10 lines
>Has not, I use it all the time on NT. No, you use the NT Console window.. this (at the moment) emulates DOS (fairly badly on 2000) and the support fot 16 MS DOS *will* dissappear in the not too distant future.. certainly when the 64-bit version of Windows arrives.. I'm sure not even Microsoft will want to emaulate both a 32-bit runtime environment *and* a 16-bit runtime environment!! Especially now that they're trying to remove legacy suppport. In Windows ME ther *is* no DOS prompt.. you have to hack ME before you can even get one to appear.

That is totally wrong, I have heard others say that as well. I bought a new computer with
ME pre-installed and it DOES have a DOS prompt. It is, by default, in Start -> Programs ->
Acessories, not in the main Programs list like previous versions of Windows. The one thing
you can NOT do in ME or any new versions of Windows is boot to DOS (by hitting F8 or by
"Reboot to DOS" when you shut down).

Just wanted to clear that up :)

Mike

Ralf Quint
to Matt Emson: No, you use the NT Console window.. this (at the moment) emulates DOS (fairly badly on…
you wrote 11 lines
>Has not, I use it all the time on NT. No, you use the NT Console window.. this (at the moment) emulates DOS (fairly badly on 2000) and the support fot 16 MS DOS *will* dissappear in the not too distant future.. certainly when the 64-bit version of Windows arrives.. I'm sure not even Microsoft will want to emaulate both a 32-bit runtime environment *and* a 16-bit runtime environment!! Especially now that they're trying to remove legacy suppport. In Windows ME ther *is* no DOS prompt.. you have to hack ME before you can even get one to appear.

Sorry, not right. Most people are just claiming this without having a real look at a Windows ME system. As already in Windows 2000, the name has changed (the entry is now called "Command prompt" instead of "MS-DOS Prompt") and it has moved from the "Start-Programs" folder to "Start-Programs-Accessories".
The only thing that has been "removed" in Windows ME is the ability to start/re-start the computer in plain DOS mode (without a 3rd party hack).....

Ralf

Matt Emson
That is totally wrong, I have heard others say that as well. I bought a new computer with ME pre-installed and it DOES have a DOS prompt.

Fair play, but did you have to quote all the NT stuff too? NT doesn't have a 'DOS' prompt, and it only emulates DOS in the Console window. Win2K is even less compatible than NT.. As ME is a Win 9x version, DOS probably is possible. I'd heard it reported however that you couldn't easily get a DOS prompt.. maybe that was a bet version.. who knows?!

Matt

Matt Emson
The only thing that has been "removed" in Windows ME is the ability to start/re-start the computer in plain DOS mode (without a 3rd party hack).....

As 2000 is the 'future' of 32-bit Windows, 2000 is based on NT, and NT doesn't do DOS, except through emulation.. um.. you'll still lose your *DOS* prompt at some point. I wouldn't personally touch ME with a bargepole.. I found 98 bad enough (had to use it quite a bit recently).. NT is definately the way forward.

Matt

Ralf Quint
to Matt Emson
you wrote 7 lines
>The only thing that has been "removed" in Windows ME is the ability to >start/re-start the computer in plain DOS mode (without a 3rd party hack)..... As 2000 is the 'future' of 32-bit Windows, 2000 is based on NT, and NT doesn't do DOS, except through emulation.. um.. you'll still lose your *DOS* prompt

Well, i doubt that. First of all they changed the name as i mentioned to "Command prompt" and if i would gamble, i would make a bet that "console mode" will be available even in all future versions too. You even can start W2K in a "recovery console mode" which doesn't have a GUI either. And even on Linux you still have console access... ;-)))

at some point. I wouldn't personally touch ME with a bargepole.. I found 98 bad enough (had to use it quite a bit recently).. NT is definately the way forward.

Sorry, Matt, but I think this is one of those exaggerated anti-Windows attitudes. I use Windows 95SR2/98SE, Windows ME, NT4.0 and W2K every day at home and at work and i have only minor problems with ALL of them (and Linux too). I get my work done on all of them, and that is what matters (at least to me)....

Ralf

Jonas Maebe
to Ralf Quint
Ralf Quint wrote 6 lines
>As 2000 is the 'future' of 32-bit Windows, 2000 is based on NT, and NT doesn't >do DOS, except through emulation.. um.. you'll still lose your *DOS* prompt Well, i doubt that. First of all they changed the name as i mentioned to "Command prompt" and if i would gamble, i would make a bet that "console mode" will be available even in all future versions too. You even can start

I think you are talking about two different things. The reason for the confusion is probably that MS always called it a Dos prompt and gave it an MSDOS icon. A "prompt window" will probably always be available in some form unde Win**, but it will most likely evoluate to a form where it can't run any Dos programs anymore (or only with very bad compatibility, since it seems to get worse with every new Windows release).

But all this does not have any impact on fp: there are both Windows and Dos versions available of fp. Same goes for ppc386.

Jonas

Marco van de Voort
to Ralf Quint: Well, i doubt that. First of all they changed the name as i mentioned to "Command prompt"…
Show quoted text 8 lines
>As 2000 is the 'future' of 32-bit Windows, 2000 is based on NT, and NT doesn't >do DOS, except through emulation.. um.. you'll still lose your *DOS* prompt Well, i doubt that. First of all they changed the name as i mentioned to "Command prompt" and if i would gamble, i would make a bet that "console mode" will be available even in all future versions too. You even can start W2K in a "recovery console mode" which doesn't have a GUI either. And even on Linux you still have console access... ;-))

So do I. As long as Textmode is the default startup mode of a PC.

>at some point. I wouldn't personally touch ME with a bargepole..

Neither would I. I work at an ISP, and ME *has* problems, also relative to
98. The network part is bad, and the new driver model causes conflicts with the old. AND it is slower and bigger.
On the other hand, it packages some new drivers :-)

Show quoted text 8 lines
>I found 98 >bad enough (had to use it quite a bit recently).. NT is definately the way >forward. Sorry, Matt, but I think this is one of those exaggerated anti-Windows attitudes. I use Windows 95SR2/98SE, Windows ME, NT4.0 and W2K every day at home and at work and i have only minor problems with ALL of them (and Linux too). I get my work done on all of them, and that is what matters (at least to me)....

NT/2000 is significantly more stable, but is a little harder to configurate, and a bit less tolerant towards legacy (win 3.11 and dos) apps. NT moreover doesn't support longfilenames in a dosbox. (for dos programs, not win32 programs like FPC/Win32)

ME adds nothing and causes problems. 98 is simple, straight and compatible.

Ray & Debbie Smith
to Marco van de Voort

----- Original Message -----

Earlier message 14 lines
From: Marco van de Voort To: Sent: Saturday, February 10, 2001 9:23 PM Subject: Re: [fpc-pascal]Re: fp under Windows > NT moreover doesn't support longfilenames in a dosbox. (for dos programs, > not win32 programs like FPC/Win32) I'm no expert but I beleive (as mentioned previosly??) their are two command shells on NT, 1. cmd32.exe - the new one allowing long file names, and 2. command.com the legacy shell with 8.3 type file names. Ray Smith
Marco van de Voort
to Ray & Debbie Smith
Show quoted text 6 lines
> not win32 programs like FPC/Win32) I'm no expert but I beleive (as mentioned previosly??) their are two command shells on NT, 1. cmd32.exe - the new one allowing long file names, and 2. command.com the legacy shell with 8.3 type file names.

Both only allow 8.3 type filenames for DOS programs. (windows commandline can use lfns)

Matt Emson
Show quoted text 5 lines
At 11:45 PM 02/09/2001 +0000, you wrote: Well, i doubt that. First of all they changed the name as i mentioned to "Command prompt" and if i would gamble, i would make a bet that "console mode" will be available even in all future versions too.

But it's not *DOS*. It's an *emulation* of DOS. A lot of DOS software is incompatible with it and/or has issues (I'm thinking especially of games here..)

You even can start W2K in a "recovery console mode" which doesn't have a GUI either.

You can't exactly do very much with it tho can you? And it's also still a window, not plian DOS (in 2000 at least.)

And even on Linux you still have console access... ;-)))

Linux has little to do with DOS and Windows console mode though ;)

Sorry, Matt, but I think this is one of those exaggerated anti-Windows attitudes.

Yeah, but are you a programmer who uses Windows every day? Believe me, if something goes wrong, it's a hell of a lot easier to shut it down in NT. NT is far more stable than 9x period. I'm using 98SE at the moment.. I used to have 2000 on this machine, but the hard drive died before Christmas. I figured it would be interesting to try 98 (only had a 1 giger in my 'spage box').. I'm still regretting it now!! I've not had the time/money to replace the dead drive, and so I tend to use my company Laptop (and 2000) all the time now (excep for the Net.)

I use Windows 95SR2/98SE, Windows ME, NT4.0 and W2K every day at home and at work and i have only minor problems with ALL of them (and Linux too).

I like 95SR2.. it's okay.. but 98 sucks ass.. sorry, I can't stand it. Same machine, same spec - runs like a dog. The only difference is the Hard Drive, and to be honest, that shouldn't make *this* much of a difference.

I get my work done on all of them, and that is what matters (at least to me)....

Different horses.. ;)

Matt

Matt Emson
so it will work regardless of whether NT or any other Windows has or will have a genuine DOS box or not.

Yeah, the Win32 version.. I wasn't talking about the Win32 version though. Neither was the original poster IIRC.

Show quoted text 6 lines
Actually, I can use both. I don't remember whether this comes with NT automatically or I added it to the Start Menu later myself (I installed my system several years ago), but I can start either SYSTEM32\CMD.EXE or SYSTEM32\COMMAND.COM. The first is the Command Prompt, the second a DOS Window.

You must have added it.. NT only comes with CMD.EXE. Generally if you try to run COMMAND.COM you get a 'Wrong DOS version' error.

But when I use FPC, I *don't* start a Command Prompt...

Neither do I, but then I wasn't talking about the Win32 version. There is a DOS version as well y'know. This is the version that will fail to run at some point if the DOS support get's any worse.. It already kills a lot of straight DOS apps with its DMPI support.

This functionality will not disappear from future versions of Windows, this

is

for sure. But even if it does, the only thing to do would be to add a GUI front layer to FPC, and that would be fairly easy.

Don't be so sure! .NET for one will kill traditional Win32. 64-bit version of Windows will most likely only 'Emulate' Win32.. That will be phased out in time.

The console has nothing to do with DOS, there is no link between the two.

Appart from the sole reason it exists is to Emulate DOS. There's absolutely no other reason for it to exist. Look at the MAC for an example of an OS without a Command Prompt.

The Command Prompt is a 32-bit console application (CMD.EXE in NT) which happens to reproduce some functionality of the old DOS command interpreter (COMMAND.COM).

Lol.. If it didn't emulate DOS, no one would have switched to NT3.x.

It is a completely independent program, requiring no DOS to rely on.

True.

Anybody could write such a CMD.EXE, in FPC for instance, that asks for commands, interprets and executes them, starting other programs if necessary.

As NT is completely Modular in Design, anyone could replace any part of it (bar maybe some of the Kernal stuff I suppose.)

Microsoft themselves xrote a Unix based replacement module for NT.. it just didn't catch on..

Show quoted text 8 lines
DOS can go (actually, as you mentioned, NT has no real DOS, never had, from day one it was only a DOS interface of documented DOS functions, meaning that well-behaved DOS programs ran without any problem but ill-behaved ones, especially games, did not; NT was never intended to be a gaming platform, fortunately, I might add), and the console can and will stay.

Appart from the fact that it will.. because 2000 (or 2001 or whatever) will replace 9x at some point.

Matt Emson
I think you are talking about two different things. The reason for the confusion is probably that MS always called it a Dos prompt and gave it an MSDOS icon.

Yep, that's what I was trying to point out.

Show quoted text 5 lines
A "prompt window" will probably always be available in some form unde Win**, but it will most likely evoluate to a form where it can't run any Dos programs anymore (or only with very bad compatibility, since it seems to get worse with every new Windows release).

Exactly!!! I glad someone else understands ;)

But all this does not have any impact on fp: there are both Windows and Dos versions available of fp. Same goes for ppc386.

Exactly my point too. I never said FP had a problem on the Win32 platform.. just the DOS version.

Matt Emson
Show quoted text 5 lines
I'm no expert but I beleive (as mentioned previosly??) their are two command shells on NT, 1. cmd32.exe - the new one allowing long file names, and 2. command.com the legacy shell with 8.3 type file names.

There's not afaik on 2000, and I can vouch that if you run the Win95 command.com from 2000 (both OS' installed on the same fat32 partition) it doesn't work.. there must be more to it that them both 'existing' on the machine.

Matt

Ray & Debbie Smith
to Marco van de Voort: Both only allow 8.3 type filenames for DOS programs. (windows commandline can use lfns)

----- Original Message -----

Earlier message 16 lines
From: Marco van de Voort To: Sent: Sunday, February 11, 2001 12:35 AM Subject: Re: [fpc-pascal]Re: fp under Windows > Both only allow 8.3 type filenames for DOS programs. (windows commandline > can use lfns) Was there an NT service pack update that fixed this? I had a problem at work where I couldn't "cd" to a specific directory longer than 8 characters. It turned out I had started the old command.com which didn't recognise long file names. When I went to the cmd32.exe console it did recognise the long file names. Ray Smith