Sign in Join

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

Mailing lists / fpc-pascal / 2001-05

dos approx delay fn that releases cpu

26 messages · 11 people · –

Reply by email Subscribe to this list Your subscription

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

Lee, John

Anyone know anything better than the code below (from John Stockton's site), comments from [fpc-devel] , which releases cpu that will work for win95 and win 2000? this is results so far from fpc developers...

I've noticed that although this seems to work mostly in fpc dos program under win2000 it sometimes crashes & creates an exception...Under win95 it _always_ seems to work, so assume win2000 problem is the dos emulator...The code relies on the timer interupt working correctly as in real dos.

What is the 'best' fpc dos code (including the dos_idle pls which
does approx delay w/o wasting cputime and can be compiled with go32v2 . TIA
----------------------------------------------
{delay of n ticks releasing cpu}
procedure dlay(n : integer) ;
   const t : byte = 0 { static! saves some stack space } ;
   var timer : byte absolute $0040:$006C ;
   begin while n > 0 do begin
       t := timer ;
       repeat  asm  hlt  end  until timert ;
       Dec(n) ;
       end end ;
------------------------------------------------
Show quoted text 6 lines
> Stockton's site) that works in tp (under win95 and on win2000) > and releases cpu time. Is there an equivalent that'll work in fpc? It may be possible to add this to the go32v2 crt unit's current delay function (simply add a "hlt" in both the initdelay and delay functions internal loop). It might cause a loss of accuracy though...

_If_ we decide to add something similar to the delay unit, we should replace the halt instruction with the DOS idle call, because that many TSRs use this one under plain DOS and it's still supported under Wxx to lower the CPU load.

Reply by email

Thomas Schatzl
to Lee, John

Hello,

Anyone know anything better than the code below (from John Stockton's

site),

comments from [fpc-devel] , which releases cpu that will work for win95

and

[fpc-devel] ??

win 2000? this is results so far from fpc developers... I've noticed that although this seems to work mostly in fpc dos program under win2000 it sometimes crashes & creates an exception...Under

Excerpt from the Intel docs:

The HLT instruction is a privileged instruction. When the processor is running in protected or virtual-8086 mode, the privilege level of a program or procedure must be 0 to execute the HLT instruction.

-> Should always exit a normal FPC program by force on NT. (It does here)

NT uses that instruction in the idle process to lower CPU power consumption. W9x doesn't.

Regards,
Thomas

Reply by email

Thomas Schatzl
to Lee, John: Anyone know anything better than the code below (from John Stockton's site), comments…

Hi again,

Show quoted text 9 lines
> > Stockton's site) that works in tp (under win95 and on win2000) > > and releases cpu time. Is there an equivalent that'll work in fpc? > It may be possible to add this to the go32v2 crt unit's > current delay function (simply add a "hlt" in both the initdelay and > delay functions internal loop). It might cause a loss of accuracy > though... _If_ we decide to add something similar to the delay unit, we should replace the halt instruction with the DOS idle call, because that many

TSRs

use this one under plain DOS and it's still supported under Wxx to lower

the

CPU load.

I did some tests with W2k and it seems as if the DOS idle call is not supported anymore (because it's not DOS the program is running). It might be some programming mistake too though:

{delay of n ticks releasing cpu}
uses go32;
var
 timer : byte absolute $0040:$006C ;
var
 r : registers;
procedure dlay(n : integer) ;
const t : byte = 0 { static! saves some stack space } ;
begin
 while n > 0 do begin
         t := timer ;
         repeat
        // call DOS idle interrupt (my IR list from Ralf Brown says it's int
28h)
        // since the register structures' ss:sp is zero on entry the dpmi
host
        // automatically provides a real mode stack
          realintr($28, r);
         until timert ;
         Dec(n) ;
        end;
end;
begin
// wait approx. 5 secs
 dlay(18*5);
end.

This program drives the cpu usage meter to 100% here.... it seems to me that the DOS idle call is just a more elaborate way to accomplish a 'nop'.

Could anyone try with W9x ?

Btw, isn't the accuracy of the delay quite bad when using the timer IR ? Because It only changes ~18.2 times per second giving a resolution of ~54 ms. The variance of the result is also quite high; +- a full timer tick depending on the spot within a timer tick the timer is read first.... Although it's usually not that serious if the default delay is off a few ms this is imho a little bit too much.

Regards,
Thomas

Reply by email

Gabor DEAK JAHN
to Thomas Schatzl

At 5/5/01 01:52 PM, you wrote:

Thomas,

Btw, isn't the accuracy of the delay quite bad when using the timer IR? Because It only changes ~18.2 times per second giving a resolution of ~54 ms. The variance of the result is also quite high; +- a full timer tick

The interrupt comes quite rare, that's true, but the timer counters count quite fast. You can measure in the range of microseconds if you read the counter value as well. There is no need to reprogram the timer to do that.

Regards,

   Gabor DEAK JAHN

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

Reply by email

Thomas Schatzl
to Gabor DEAK JAHN

Hello,

> Btw, isn't the accuracy of the delay quite bad when using the timer IR? > Because It only changes ~18.2 times per second giving a resolution of

~54

Show quoted text 5 lines
> ms. The variance of the result is also quite high; +- a full timer tick The interrupt comes quite rare, that's true, but the timer counters count quite fast. You can measure in the range of microseconds if you read the counter value as well. There is no need to reprogram the timer to do that.

Actually this was just meant as a side note and was not really the key point imho. Never talked about reprogramming the timer; this isn't possible under the NT-VM anyway afaik under normal circumstances (e.g. ring 3). I'm sorry if I couldn't clearly point out what my main concern was:

The hlt instruction not being available with NT and int 28 (dos idle IR call) not having the desired effect too (or at least I'm not using it correctly).
Example programs which demonstrate int 28h install their own int28 IR handler which issues a hlt instruction. This is not possible as I told you before, and the default handler is a 'nop'.
Another IR call (Release current VM time slice, int 2Fh / 2680h) which probably would fit too doesn't work either with W2k. (It seems to be just another wonderful idea which never managed to become reality since it's a DPMI 1.0 call).

Or is there any other IR / system / whatever call I don't know of ? Additionally I'm interested if my small program I posted yesterday has the desired effect under W9x systems (plain curiousity). Because if it does there it might be an argument to implement it regardless of it not working with NT. Then at least W9x could systems profit from this enhancement, can't they ?

Regards,
Thomas

Reply by email

Lee, John

Tried this under w95 & it works ie gives delay, but hogs the cpu! So still looking for way to do fpc dos delay, that works in w2000, NT & w9x...

Current status is that my original program works ok for w9x (ie gives delay and releases cpu), but we do not have a way to do this in w2000/NT... Any more ideas? What about using the get & put interupt vector instructions to change the timer interupt to an _internal_ routine which counts clock interupts and doing a dos idle in between (believe that releases cpu in NT/w2000???). Anyone know exactly the the code for that would look...?

We could then check whether it's w9x & either execute my original, or the new w2000/nt code., and we'd have a general purpose dos calleable approx delay that releases cpu... John

Earlier message 73 lines
----Original Message----- From: Thomas Schatzl Sent: Saturday, May 05, 2001 12:53 To: Subject: Re: [fpc-pascal]dos approx delay fn that releases cpu Hi again, > > > Stockton's site) that works in tp (under win95 and on win2000) > > > and releases cpu time. Is there an equivalent that'll work in fpc? > > It may be possible to add this to the go32v2 crt unit's > > current delay function (simply add a "hlt" in both the initdelay and > > delay functions internal loop). It might cause a loss of accuracy > > though... > > _If_ we decide to add something similar to the delay unit, we should > replace the halt instruction with the DOS idle call, because that many TSRs > use this one under plain DOS and it's still supported under Wxx to lower the > CPU load. I did some tests with W2k and it seems as if the DOS idle call is not supported anymore (because it's not DOS the program is running). It might be some programming mistake too though: {delay of n ticks releasing cpu} uses go32; var timer : byte absolute $0040:$006C ; var r : registers; procedure dlay(n : integer) ; const t : byte = 0 { static! saves some stack space } ; begin while n > 0 do begin t := timer ; repeat // call DOS idle interrupt (my IR list from Ralf Brown says it's int 28h) // since the register structures' ss:sp is zero on entry the dpmi host // automatically provides a real mode stack realintr($28, r); until timert ; Dec(n) ; end; end; begin // wait approx. 5 secs dlay(18*5); end. This program drives the cpu usage meter to 100% here.... it seems to me that the DOS idle call is just a more elaborate way to accomplish a 'nop'. Could anyone try with W9x ? Btw, isn't the accuracy of the delay quite bad when using the timer IR ? Because It only changes ~18.2 times per second giving a resolution of ~54 ms. The variance of the result is also quite high; +- a full timer tick depending on the spot within a timer tick the timer is read first.... Although it's usually not that serious if the default delay is off a few ms this is imho a little bit too much. Regards, Thomas

Reply by email

Full_Name
to Lee, John

Has anybody developing the FPC compiler given FreeCLX any thought??

FreeCLX is the GPL'd portion of the CLX that comes with Kylix and will come with Delphi 6.

As Kylix rocks, and is Delphi language compatible, can we assume that FPC will compile and run against FreeCLX?? Is anyone thinking/working on this?? I figure it should be pretty easy, appart from the slight dialectual differences between FPC and Delphi/Kylix.

Take a look at: http://sourceforge.net/projects/freeclx/

Nothing to download yet, but afaik this will be the 'hub' for the FreeCLX.

I don't have the Linux version of FPC downloaded, otherwise I'd try it ;) (not enough of a masochist to try porting to windows!!)

The LCL/FCL status seems to be slow,. and FreeCLX is already theoretically a fully tested product - release quality.

Just thought that Lazarus could do with a kick up the arse (joke!! no flames please!!) Having used Kylix for the last few months (yes beta) I can say it currently kick Lazarus/fpc's collective Linux butt :P

Matt

Reply by email

Matt Emson
to Unknown author: We did. We are trying to get it to compile. We know. Actually, the GPL is a problem,…
> Has anybody developing the FPC compiler given FreeCLX any thought?? We did. We are trying to get it to compile.

That's good ;)

> FreeCLX is the GPL'd portion of the CLX that comes with Kylix and will

come

> with Delphi 6. We know. Actually, the GPL is a problem, since it explicitly forbids development of commercial applications. the FPC license does.

They have to make money somehow!!

> As Kylix rocks, Partly, yes. But I wouldn't try to develop serious applications with it

yet,

given the long list of bugs and the fact that Kylix crashes still about 20 times a day. But it is definitely easier to make small apps.

Sorry, not seen had it crash on me since FT 2 or 3. The release version is stable under Mandrake 7.2.

Show quoted text 5 lines
Actually, it is NOT so easy, since there are some issues: - Multithreading support of FPC is not yet finished - WideString support also is not done - Variants are not yet integrated in the language. These are the main issues, and they require some work on the compiler.

All this is planned however?

FPC could be used to put FreeCLX onto platforms not yet supported by Borland (BSD etc.)

You can use CVS to download the FreeCLX. I have a copy. If you look at the bug list you'll also see a series of bugs I submitted, some of them quite basic.

Only looked at it really quickly.. nothing in the Files section.

> The LCL/FCL status seems to be slow,. Actually, there is quite some progress, just the websites are not really up-to-date.

One good reason to update them then ;)

I beg to differ. I have extensively worked with kylix, and it is _not_ release quality. Late-stage Beta at most, but not release.

I'm currently using Kylix Desktop Developer - no had any problems under Mandrake since FT 3 (the first one that was usable) and to be honest the release version works like a charm ;) Which distro are you using? Used Kylix under Mandrake 7.1 and 7.2.. wouldn't touch any other distro bar maybe Red Hat.. not really into sparse installers... (mind you Suse is probably better than it was last time I used it by now!)

What is more, many essential parts (netclx, midas, reporting tools) are missing from the commercial and free version.

Not missing much. A whole bunch of SOAP and XML from the press release I have read.

> Just thought that Lazarus could do with a kick up the arse (joke!! no

flames

> please!!) Having used Kylix for the last few months (yes beta) I can say

it

Show quoted text 8 lines
> currently kick Lazarus/fpc's collective Linux butt :P But, may I remind you that 1) Qt (the underlying building blocks of VisualCLX) is maintained since about 5-6 years by a commercial company. 2) Kylix is managed by a company with about 800 employees, of which about 50 on the R&D staff only. 3) FPC is maintained by essentially 6-7 people in their spare time.

There are only about 2 guys working on Delphi at any one time. More come release time, but on average two guys, for the whole product. (or so I was told by a Borland employee.)

Given that, I think the comparision is not really fair.

Kylix is a commercial product that cost money to produce.. FPC is free.. It all kind of evens out in the mix ;)

But, as I said: We're working on it, and in a year or so, we'll see who will kick who's butt, to use your words :)

That's exactly what I want to hear.. though Lasarus was supposed to be kicking Delphi's butt about 2 years ago ;) (nuff said.. only messin/joking :)

That said, feel free to join in, we can use some help.

Oh that I had some time!! I'd truely like to get a MacOS/BeOS port under way (PowerPC for Mac, 8086 for BeOS) but I don't have the time. I have a fairly basic 6100 powermac now, so if anyone needs a beta tester for the Mac Port.. I'm there dude!! I'm helping out on a few other projects that are PalmOS based... Hopefull they'll surface soon!!!

Matt

Reply by email

Gabor DEAK JAHN

At 5/8/01 12:35 PM, you wrote:

John,

interupts and doing a dos idle in between (believe that releases cpu in NT/w2000???). Anyone know exactly the code for that would look...?

NT (and 2000) have a function specifically for this purpose, WaitForSingleObject (Sleep is also available but GUI programs should avoid using Sleep). This function returns if either the object is waits for becomes signaled or the timeout interval elapses. We can simply use our own thread as the object to be waited for. It will remain non-signaled while it runs, thus the timeout will prevail. The thread stays in a very efficient wait state during the delay, consuming very little processor time. The actual call would be:

WaitForSingleObject (GetCurrentThread, DelayMS);

Bye,
Gábor

------------------------------------------------------------------- Gabor DEAK JAHN -- Budapest, Hungary.
E-mail:

Reply by email

Marco van de Voort
to Matt Emson: That's good ;) come They have to make money somehow!! Sorry, not seen had it crash on me…
Show quoted text 8 lines
> > FreeCLX is the GPL'd portion of the CLX that comes with Kylix and will come > > with Delphi 6. > > We know. Actually, the GPL is a problem, since it explicitly forbids > development of commercial applications. the FPC license does. They have to make money somehow!!

Yup, but we don't have to help them!!!

Show quoted text 7 lines
> Actually, it is NOT so easy, since there are some issues: > - Multithreading support of FPC is not yet finished > - WideString support also is not done > - Variants are not yet integrated in the language. > These are the main issues, and they require some work on the compiler. All this is planned however?

Partially supported yes.

Show quoted text 9 lines
> I beg to differ. I have extensively worked with kylix, and it is _not_ > release quality. Late-stage Beta at most, but not release. I'm currently using Kylix Desktop Developer - no had any problems under Mandrake since FT 3 (the first one that was usable) and to be honest the release version works like a charm ;) Which distro are you using? Used Kylix under Mandrake 7.1 and 7.2.. wouldn't touch any other distro bar maybe Red Hat.. not really into sparse installers... (mind you Suse is probably better than it was last time I used it by now!)

Otherway around. And Linux is already ugly enough if you are used to BSD :-) Let alone one of the more commercial distro's :)

Show quoted text 15 lines
> But, may I remind you that > 1) Qt (the underlying building blocks of VisualCLX) > is maintained since about 5-6 years by a commercial company. > 2) Kylix is managed by a company with about 800 employees, of which about > 50 on the R&D staff only. > 3) FPC is maintained by essentially 6-7 people in their spare time. There are only about 2 guys working on Delphi at any one time. More come release time, but on average two guys, for the whole product. (or so I was told by a Borland employee.) > Given that, I think the comparision is not really fair. Kylix is a commercial product that cost money to produce.. FPC is free.. It all kind of evens out in the mix ;)

That is the problem. If we use FreeCLX, then we would be less free.

If we would build something on it, nobody could do anything commercial with the result, and we would depend on Borland to decide what was commercial or not. (And RMS would be on Borlands side on that one).

As a result, we can't build anything of some size on top of it, so the only reason for porting would be compiler testing. So the porting should be done (for testing and for GPL apps), but there is no real hurry, since it isn't going to be a building block.

GPL is not a problem for end applications, but

Show quoted text 6 lines
> But, as I said: We're working on it, and in a year or so, we'll see who > will kick who's butt, to use your words :) That's exactly what I want to hear.. though Lasarus was supposed to be kicking Delphi's butt about 2 years ago ;) (nuff said.. only messin/joking :)

Actually, then it still was Medigo :-)
But the problem is that nearly nobody has time.......

Reply by email

Unknown author
to Full_Name: Has anybody developing the FPC compiler given FreeCLX any thought?? FreeCLX is the GPL'd…
Full_Name wrote
Has anybody developing the FPC compiler given FreeCLX any thought??

We did. We are trying to get it to compile.

FreeCLX is the GPL'd portion of the CLX that comes with Kylix and will come with Delphi 6.

We know. Actually, the GPL is a problem, since it explicitly forbids development of commercial applications. the FPC license does.

As Kylix rocks,

Partly, yes. But I wouldn't try to develop serious applications with it yet, given the long list of bugs and the fact that Kylix crashes still about 20 times a day. But it is definitely easier to make small apps.

and is Delphi language compatible, can we assume that FPC will compile and run against FreeCLX?? Is anyone thinking/working on this?? I figure it should be pretty easy, appart from the slight dialectual differences between FPC and Delphi/Kylix.

Actually, it is NOT so easy, since there are some issues:
- Multithreading support of FPC is not yet finished
- WideString support also is not done
- Variants are not yet integrated in the language.

These are the main issues, and they require some work on the compiler.

Take a look at: http://sourceforge.net/projects/freeclx/ Nothing to download yet, but afaik this will be the 'hub' for the FreeCLX.

You can use CVS to download the FreeCLX. I have a copy. If you look at the bug list you'll also see a series of bugs I submitted, some of them quite basic.

I don't have the Linux version of FPC downloaded, otherwise I'd try it ;) (not enough of a masochist to try porting to windows!!)

There is no need to port this, it will run on Windows as is. Delphi 6 ships with it. (Should be available June 8)

The LCL/FCL status seems to be slow,.

Actually, there is quite some progress, just the websites are not really up-to-date.

and FreeCLX is already theoretically a fully tested product - release quality.

I beg to differ. I have extensively worked with kylix, and it is _not_ release quality. Late-stage Beta at most, but not release.

What is more, many essential parts (netclx, midas, reporting tools) are missing from the commercial and free version.

Just thought that Lazarus could do with a kick up the arse (joke!! no flames please!!) Having used Kylix for the last few months (yes beta) I can say it currently kick Lazarus/fpc's collective Linux butt :P

I agree that development is definitely easier with Kylix.

But, may I remind you that
1) Qt (the underlying building blocks of VisualCLX) is maintained since about 5-6 years by a commercial company.
2) Kylix is managed by a company with about 800 employees, of which about 50 on the R&D staff only.
3) FPC is maintained by essentially 6-7 people in their spare time.

Given that, I think the comparision is not really fair.

But, as I said: We're working on it, and in a year or so, we'll see who will kick who's butt, to use your words :)

That said, feel free to join in, we can use some help.

Michael.

Reply by email

Neil Graham
you wrote
We know. Actually, the GPL is a problem, since it explicitly forbids development of commercial applications. the FPC license does.

This is something I have been wondering about th FPC licence. I see all of the various game basics like DarkBasic/BlitzBasic etc. and was considering doing a Pascal variant.

If I were to make an IDE and code libraries designed for game making, could I sell a bundle containing these and freepascal?

It would seem just a waste If I had to write a pascal compiler myself because This isn't the area I want to focus on (I'd rather be working on tools).

Reply by email

Thomas Schatzl
to Gabor DEAK JAHN: NT (and 2000) have a function specifically for this purpose, WaitForSingleObject (Sleep…
Show quoted text 9 lines
John, > interupts and doing a dos idle in between (believe that releases cpu in > NT/w2000???). Anyone know exactly the code for that would look...? NT (and 2000) have a function specifically for this purpose, WaitForSingleObject (Sleep is also available but GUI programs should avoid using Sleep). This function returns if either the object is waits for becomes signaled or the timeout interval elapses. We can simply use our own

[....]

Imho John is in search of a cpu-releasing delay routine which works for GO32V2 programs in a NT VDM.

Regards,
Thomas

Reply by email

Michael Van Canneyt
to Neil Graham: This is something I have been wondering about th FPC licence. I see all of the various…
Neil Graham wrote 10 lines
At 10:49 PM 5/8/01 +0200, you wrote: >We know. Actually, the GPL is a problem, since it explicitly forbids >development of commercial applications. the FPC license does. This is something I have been wondering about th FPC licence. I see all of the various game basics like DarkBasic/BlitzBasic etc. and was considering doing a Pascal variant. If I were to make an IDE and code libraries designed for game making, could I sell a bundle containing these and freepascal?

Yes.
You cannot charge for the FreePascal compiler, but you can charge for your own program.

Michael.

Reply by email

Marco van de Voort
to Michael Van Canneyt
Show quoted text 16 lines
On Wed, 9 May 2001, Neil Graham wrote: > At 10:49 PM 5/8/01 +0200, you wrote: > >We know. Actually, the GPL is a problem, since it explicitly forbids > >development of commercial applications. the FPC license does. > > This is something I have been wondering about th FPC licence. I see all of > the various game basics like DarkBasic/BlitzBasic etc. and was considering > doing a Pascal variant. > > If I were to make an IDE and code libraries designed for game making, could > I sell a bundle containing these and freepascal? Yes. You cannot charge for the FreePascal compiler, but you can charge for your own program.

And you cannot integrate the compiler or IDE, as that would violate the GPL, it has to remain a standalone binary.

Reply by email

Michael Van Canneyt
to Matt Emson: That's good ;) come They have to make money somehow!! Sorry, not seen had it crash on me…
Matt Emson wrote 14 lines
> > Has anybody developing the FPC compiler given FreeCLX any thought?? > > We did. We are trying to get it to compile. That's good ;) > > FreeCLX is the GPL'd portion of the CLX that comes with Kylix and will come > > with Delphi 6. > > We know. Actually, the GPL is a problem, since it explicitly forbids > development of commercial applications. the FPC license does. They have to make money somehow!!

I will not argue with that :)

Show quoted text 10 lines
> > As Kylix rocks, > > Partly, yes. But I wouldn't try to develop serious applications with it yet, > given the long list of bugs and the fact that Kylix crashes still about 20 > times a day. But it is definitely easier to make small apps. Sorry, not seen had it crash on me since FT 2 or 3. The release version is stable under Mandrake 7.2.

Yesterday I had - in 1 evening - about 10 crashes, while debugging a _very_ simple program. Mostly errors occur when debugging.

Show quoted text 8 lines
> Actually, it is NOT so easy, since there are some issues: > - Multithreading support of FPC is not yet finished > - WideString support also is not done > - Variants are not yet integrated in the language. > These are the main issues, and they require some work on the compiler. All this is planned however?

Yes.

FPC could be used to put FreeCLX onto platforms not yet supported by Borland (BSD etc.)

AFAIK, some german is trying to get Kylix to work on BSD.

Show quoted text 6 lines
> You can use CVS to download the FreeCLX. I have a copy. If you look at the > bug list you'll also see a series of bugs I submitted, some of them quite > basic. Only looked at it really quickly.. nothing in the Files section.

I know, you need to pull the files directly with CVS. Instructions are found on their page.

Show quoted text 7 lines
> > The LCL/FCL status seems to be slow,. > > Actually, there is quite some progress, just the websites are not really > up-to-date. One good reason to update them then ;)

Maybe, but better do some work to get it ready first ...

Show quoted text 10 lines
> I beg to differ. I have extensively worked with kylix, and it is _not_ > release quality. Late-stage Beta at most, but not release. I'm currently using Kylix Desktop Developer - no had any problems under Mandrake since FT 3 (the first one that was usable) and to be honest the release version works like a charm ;) Which distro are you using? Used Kylix under Mandrake 7.1 and 7.2.. wouldn't touch any other distro bar maybe Red Hat.. not really into sparse installers... (mind you Suse is probably better than it was last time I used it by now!)

I use SuSE 7.1, and the installer beats anything else I have seen, including various Windows versions. But that is my personal opinion.

Show quoted text 6 lines
> What is more, many essential parts (netclx, midas, reporting tools) are > missing from the commercial and free version. Not missing much. A whole bunch of SOAP and XML from the press release I have read.

Not missing much ? No reporting, No midware, no apache stuff ? This is why people would buy Kylix ! You don't need kylix for a small app with 3 edits and a memo, you need kylix for the more serious work.

SOAP and XML are nice in the D6 version, but the Kylix version is far from what D5 professional/enterprise offers...

Show quoted text 17 lines
> > Just thought that Lazarus could do with a kick up the arse (joke!! no flames > > please!!) Having used Kylix for the last few months (yes beta) I can say it > > currently kick Lazarus/fpc's collective Linux butt :P > > But, may I remind you that > 1) Qt (the underlying building blocks of VisualCLX) > is maintained since about 5-6 years by a commercial company. > 2) Kylix is managed by a company with about 800 employees, of which about > 50 on the R&D staff only. > 3) FPC is maintained by essentially 6-7 people in their spare time. There are only about 2 guys working on Delphi at any one time. More come release time, but on average two guys, for the whole product. (or so I was told by a Borland employee.)

This definitely conflicts with what I have _seen_ when I he was talking about the compiler and IDE, but the VCL needs lots of work and I doubt this can be done by 1-2 persons on average.

Michael.

Reply by email

Marco van de Voort
to Michael Van Canneyt
Show quoted text 5 lines
> > FPC could be used to put FreeCLX onto platforms not yet supported by Borland > (BSD etc.) AFAIK, some german is trying to get Kylix to work on BSD.

With the Linux emulation probably, not native I think.

Reply by email

Full_Name
to Michael Van Canneyt: I will not argue with that :) Yesterday I had - in 1 evening - about 10 crashes, while…

Quoting Michael Van Canneyt :

Show quoted text 5 lines
> FPC could be used to put FreeCLX onto platforms not yet supported by Borland > (BSD etc.) AFAIK, some german is trying to get Kylix to work on BSD.

Now that I'd like to se.. Solaris too.

Show quoted text 12 lines
> > > You can use CVS to download the FreeCLX. I have a copy. If you look at the > > bug list you'll also see a series of bugs I submitted, some of them quite > > basic. > > Only looked at it really quickly.. nothing in the Files section. I know, you need to pull the files directly with CVS. Instructions are found on their page.

Did it last night. The bug list isn't too high!!??!! I've seen much worse, believe me!! ;)

Maybe, but better do some work to get it ready first ...

The more info the better to be honest ;)

I use SuSE 7.1, and the installer beats anything else I have seen, including various Windows versions. But that is my personal opinion.

Mandrakes installer beats suse.. at least the last suse I used.

Not missing much ? No reporting, No midware, no apache stuff ? This is why people would buy Kylix ! You don't need kylix for a small app with 3 edits and a memo, you need kylix for the more serious work.

You get the server edition for all that stuff.. To be honest, giving away the DB controls with the basic version is 'very unlike Borland'.

SOAP and XML are nice in the D6 version, but the Kylix version is far from what D5 professional/enterprise offers...

I had this discussion the other day with a fellow co-worker. What's the point in having slick technologically advanced controls if the compiler sucks?? I'd rather get a rock solid compiler and IDE before I get a whole lot of extra stuff on top.

As for your crashes.. The Borland released GlibC patches are notoriously bad. Did you try the official ones from Suse? A lot of the crashes go onece you do so.

This definitely conflicts with what I have _seen_ when I was at Borland. Maybe he was talking about the compiler and IDE, but the VCL needs lots of work and I doubt this can be done by 1-2 persons on average.

But the VCL/CLX is common across the C++ Builder/Delphi/Kylix toolset, so that doesn't really count as pure *Delphi* development.

Matt

Reply by email

Jonas
to Neil Graham: This is something I have been wondering about th FPC licence. I see all of the various…
Neil Graham wrote
> We know. Actually, the GPL is a problem, since it explicitly forbids > development of commercial applications. the FPC license does.

The GPL doesn't forbid the writing of commercial programs, but of closed source programs. That's not the same (there are plenty of free closed source programs, though the reverse doesn't happen that much).

If I were to make an IDE and code libraries designed for game making, could I sell a bundle containing these and freepascal?

You libraries would be no problem, but the IDE is something else. The GPL says that all "derived" works of a GPL'd piece of code have to be released under the GPL as well. The problem is that no-one really knows what is derived and what not. That's one of the reasons why Apple includes no *crucial* GPL'd tools with Mac OS X. Otherwise, RMS could decide that because for the OS to be able to function, it requires some piece of GPL'd code, that the whole OS falls under the GPL...

Personally, I wouldn't mind at all if someone would write a closed source IDE for FPC (and I don't think anyone else would either, in fact, I think there are already some), it's just that GPL is very viral in nature and that you have to be careful for open source fanatics in this regard...

And as I said, the "derived" part is not strictly defined anywhere, so it's very well possible to interpret it so that an IDE which doesn't share any code with the compiler isn't a derived work.

Jonas

Reply by email

Lee, John

100% right Thomas, I know about sleep etc for win32, but want simliar fpc dos routine that'll work for w9x, NT & w2000. For reasons won't go into here (but related to file opening difficulties for locked files in fpc win32) I can't use a win32 fpc program!

Earlier message 26 lines
-----Original Message----- From: Thomas Schatzl Sent: 09 May 2001 07:06 To: Subject: Re: [fpc-pascal]dos approx delay fn that releases cpu >John, > > > interupts and doing a dos idle in between (believe that releases cpu in > > NT/w2000???). Anyone know exactly the code for that would look...? > >NT (and 2000) have a function specifically for this purpose, >WaitForSingleObject (Sleep is also available but GUI programs should avoid >using Sleep). This function returns if either the object is waits for >becomes signaled or the timeout interval elapses. We can simply use our own [....] Imho John is in search of a cpu-releasing delay routine which works for GO32V2 programs in a NT VDM. Regards, Thomas

Reply by email

Rich Pasco
John" wrote
100% right Thomas, I know about sleep etc for win32, but want simliar fpc dos routine that'll work for w9x, NT & w2000.

I routinely use programs compiled for w32 under Windows 98, NT 4.0, and Windows 2000 with no trouble whatsoever.

For reasons won't go into here (but related to file opening difficulties for locked files in fpc win32) I can't use a win32 fpc program!

Perhaps this is the problem area you should be addressing, rather than trying to find a sleep/delay procedure for GO32V2.

- Rich

Reply by email

Michael Van Canneyt
to Rich Pasco
Rich Pasco wrote 14 lines
"Lee, John" wrote: > 100% right Thomas, I know about sleep etc for win32, but want simliar fpc > dos routine that'll work for w9x, NT & w2000. I routinely use programs compiled for w32 under Windows 98, NT 4.0, and Windows 2000 with no trouble whatsoever. > For reasons won't go into > here (but related to file opening difficulties for locked files in fpc > win32) I can't use a win32 fpc program! Perhaps this is the problem area you should be addressing, rather than trying to find a sleep/delay procedure for GO32V2.

I also think this should be addressed then, instead of some ad-hoc patch. If you can explain (preferably with some example code) the probles you're having with locked files, maybe we can try to solve them.

Michael.

Reply by email

Jonas
to Michael Van Canneyt
Michael Van Canneyt wrote 8 lines
> Perhaps this is the problem area you should be addressing, rather than > trying to find a sleep/delay procedure for GO32V2. I also think this should be addressed then, instead of some ad-hoc patch. If you can explain (preferably with some example code) the probles you're having with locked files, maybe we can try to solve them.

The problem is that Windows keeps a lock on a file for a few seconds after a (Win32) program has released it, that's all. It's an OS bug/feature, I don't think you can work around it in your program (except for always trying during 2 seconds or so to open a file before giving up, but that's not very nice)

Jonas

Reply by email

Michael Van Canneyt
to Jonas
Jonas wrote 17 lines
On woensdag, mei 9, 2001, at 05:08 , Michael Van Canneyt wrote: >> Perhaps this is the problem area you should be addressing, rather than >> trying to find a sleep/delay procedure for GO32V2. > > I also think this should be addressed then, instead of some ad-hoc > patch. > If you can explain (preferably with some example code) the probles > you're > having with locked files, maybe we can try to solve them. The problem is that Windows keeps a lock on a file for a few seconds after a (Win32) program has released it, that's all. It's an OS bug/feature, I don't think you can work around it in your program (except for always trying during 2 seconds or so to open a file before giving up, but that's not very nice)

? But don't dos programs have the same problem then when running under windows?

Michael.

Reply by email

Jonas
to Michael Van Canneyt
Michael Van Canneyt wrote 8 lines
> The problem is that Windows keeps a lock on a file for a few seconds > after a (Win32) program has released it, that's all. It's an OS > bug/feature, I don't think you can work around it in your program > (except for always trying during 2 seconds or so to open a file before > giving up, but that's not very nice) ? But don't dos programs have the same problem then when running under windows?

Apparently not (I assume that otherwise John wouldn't be asking this :)

Jonas

Reply by email

Gabor DEAK JAHN
to Jonas: The problem is that Windows keeps a lock on a file for a few seconds after a (Win32)…

At 5/9/01 05:32 PM, you wrote:

Jonas,

The problem is that Windows keeps a lock on a file for a few seconds

after a

(Win32) program has released it, that's all. It's an OS bug/feature,

Could you provide an example program? I tried running several programs on NT 4 now, observing all the handles they keep open (using HandleEx from SysInternals) and their release was instantaneous as I closed the programs themselves.

I have written a program some time ago where two EXEs were communicating through DDE and using a common file for passing data in one direction and results or error messages in the other. As soon as Program 1 wrote the data to be processed, closed the file and notified Program 2 to start processing, the second opened the file and started to work immediately. During the two seconds you mentioned, hundreds if not thousands of such file close-reopen operations were made, without any need to wait.

Bye,
Gábor

------------------------------------------------------------------- Gabor DEAK JAHN -- Budapest, Hungary.
E-mail:

Reply by email