BorlandTalk.com Forum Index BorlandTalk.com
Borland discussion newsgroups
 
Archives   FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

x64 and Delphi
Goto page 1, 2  Next
 
Post new topic   Reply to topic    BorlandTalk.com Forum Index -> Delphi Thirdparty Tools (General)
View previous topic :: View next topic  
Author Message
Andy
Guest





PostPosted: Thu Dec 29, 2005 6:03 am    Post subject: x64 and Delphi Reply with quote



Can Delphi run and compile in x64 machines and OS?

Thanks

Andy


Back to top
David J Taylor
Guest





PostPosted: Thu Dec 29, 2005 10:05 am    Post subject: Re: x64 and Delphi Reply with quote



Jason wrote:
Quote:
yes, delphi apps can run in x64 windows, but windows automatically
will run them emulated.
clear 64bit code can be only produced by Microsoft Visual Studio and
.NET 2
We are all waiting for Borland's 64bit native compiler. 2007+

What was the report about, then, which said that Delphi apps produced with
versions prior to Delphi 2006 didn't work correctly on Vista? Obviously,
if you're looking at near-future OSes both 64-bit and Vista might need to
be considered.

David



Back to top
Danijel Tkalcec [RTC]
Guest





PostPosted: Thu Dec 29, 2005 11:08 am    Post subject: Re: x64 and Delphi Reply with quote



"Jason" wrote:
Quote:
I dont know any known issue that says Delphi 7 apps doesnt work on Vista.
I tested my app (D7) with a beta version of Vista. Everything looks ok,
emulated to 32bit.

When you say "emulated", it sounds soooo sloooow!

I'm not an expert in CPU design, but I would assume that a 64-bit processor
supports 32-bit and 16-bit instruction sets, so there is no emulation at
work. In any case, I run my apps compiled with D4-D2006 on one 64-bit AMD X2
4400 and I wouldn't say they run in some kind of an emulator.

A 64-bit app would have access to a larger set of asm instructions than a
32-bit app and thus have more possibilities for optimizing the code to run
faster. They will also use 64-bit pointers and have access to a much larger
address space to excede the 32-bit Memory Limit (2GB with default Delphi RTL
MM, up to 3GB with FastMM and special setup).

Or what did you mean by "emulated to 32bit"?

--
Danijel Tkalcec
http://www.deltasoft.hr/rtc/author.htm



Back to top
Danijel Tkalcec [RTC]
Guest





PostPosted: Thu Dec 29, 2005 11:11 am    Post subject: Re: x64 and Delphi Reply with quote

"Jason" wrote:
Quote:
I dont know any known issue that says Delphi 7 apps doesnt work on Vista.

Or were you talking about Windows 64-bit?

Since 32-bit Windows supports 16-bit applications, I'd guess that 64-bit
Windows also supports 32-bit and 16-bit applications. So, there's no need to
panic.

--
Danijel Tkalcec
http://www.deltasoft.hr/rtc/author.htm



Back to top
Danijel Tkalcec [RTC]
Guest





PostPosted: Thu Dec 29, 2005 11:13 am    Post subject: Re: x64 and Delphi Reply with quote

Btw ... I should have quoted David, not Jason.

Didn't plan on starting a discussion with Jason,
simply replied to the last post in thread Surprised)

--
Danijel Tkalcec
http://www.deltasoft.hr/rtc/author.htm


Back to top
Jens Gruschel
Guest





PostPosted: Thu Dec 29, 2005 11:29 am    Post subject: Re: x64 and Delphi Reply with quote

Quote:
When you say "emulated", it sounds soooo sloooow!

That's what I thought, too. "Emulated" is such a hard word. It makes me
think of some software, which executes the machine code of a program
like an interpreter. Like you I think that 32 bit applications cannot
use all possibilities of a 64 bit machine, but run like they would on a
32 bit machine (except maybe that it takes some additional instructions
to switch between a 32 bit process and a 64 bit process). I've heared
that 32 bit software even runs faster on 64 bit machines than on 32 bit
machines (although I think tests were made with a 32 bit OS on both
machines), but probably it's hard to compare because different CPUs do
different things differently. Anyway a 64 bit Delphi compiler would be
very nice (I'm not talking about .net).

Jens

--
Jens Gruschel
http://www.pegtop.net

Back to top
Danijel Tkalcec [RTC]
Guest





PostPosted: Thu Dec 29, 2005 11:38 am    Post subject: Re: x64 and Delphi Reply with quote

"Jens Gruschel" wrote:
Quote:
When you say "emulated", it sounds soooo sloooow!

That's what I thought, too. "Emulated" is such a hard word. It makes me
think of some software, which executes the machine code of a program like
an interpreter.

Surprised)

Quote:
Anyway a 64 bit Delphi compiler would be very nice (I'm not talking about
.net).

Same here.

I hope D2007 will be a 64-bit compiler. I don't like to think that
everything will have to be .NET in the future. Simply doing some Memory
Manager tests makes be feel creepy if I start to imagine how a Garbage
collector in .NET (like the one in Java) will be responsible for cleaning up
my Servers Memory when it "feels like it".

Anyone wrote any high-load Server software in .NET yet?

--
Danijel Tkalcec
http://www.deltasoft.hr/rtc/author.htm



Back to top
David J Taylor
Guest





PostPosted: Thu Dec 29, 2005 11:55 am    Post subject: Re: x64 and Delphi Reply with quote

Danijel Tkalcec [RTC] wrote:
Quote:
"Jason" wrote:
I dont know any known issue that says Delphi 7 apps doesnt work on
Vista.

Or were you talking about Windows 64-bit?

Since 32-bit Windows supports 16-bit applications, I'd guess that
64-bit Windows also supports 32-bit and 16-bit applications. So,
there's no need to panic.

There was a thread recently (and I can't find it quickly right now) which
suggested that because of a Borland coding error, Delphi 2005 and below
programs would not display correctly on Win64. IIRC, the problem was
related to owner-draw parts of components. I was mistaking Win-64 and
Vista when I wrote earlier - and that's why I couldn't find it in Google!
Now I can:
http://groups.google.com/group/borland.public.delphi.vcl.components.writing.win32/browse_frm/thread/aad5c283cd13d46b/dbe90bb636da747b?lnk=st&q=delphi+Win64+ownerdraw&rnum=2#dbe90bb636da747b

There doesn't seem to be any suggestion that Borland are proposing to fix
this, other than saying recompile all your stuff in Delphi 2006, with all
the effort that might require. See: QC# 19859

[Noted that you meant me and not Jason]

David



Back to top
Danijel Tkalcec [RTC]
Guest





PostPosted: Thu Dec 29, 2005 12:16 pm    Post subject: Re: x64 and Delphi Reply with quote

"David J Taylor" wrote:
http://groups.google.com/group/borland.public.delphi.vcl.components.writing.win32/browse_frm/thread/aad5c283cd13d46b/dbe90bb636da747b?lnk=st&q=delphi+Win64+ownerdraw&rnum=2#dbe90bb636da747b

I have just checked the D2006 sources and here
is a snippet from the "Controls.pas" unit from D2006 ...
--------
procedure TWinControl.WMDrawItem(var Message: TWMDrawItem);
begin
if not DoControlMsg(Message.DrawItemStruct^.hwndItem, Message) then
inherited;
end;
--------

The Newspost you reffer to has suggested this to be the correct
implementation for Win64, so I guess they have repaired the problem in
D2006.

--
Danijel Tkalcec
http://www.deltasoft.hr/rtc/author.htm


Back to top
Danijel Tkalcec [RTC]
Guest





PostPosted: Thu Dec 29, 2005 12:20 pm    Post subject: Re: x64 and Delphi Reply with quote

"Danijel Tkalcec [RTC]" wrote:
Quote:
I have just checked the D2006 sources and here
is a snippet from the "Controls.pas" unit from D2006 ...
--------
procedure TWinControl.WMDrawItem(var Message: TWMDrawItem);
begin
if not DoControlMsg(Message.DrawItemStruct^.hwndItem, Message) then
inherited;
end;
--------

Delphi 7 has this same procedure implemented as ...
-------------
procedure TWinControl.WMDrawItem(var Message: TWMDrawItem);
begin
if not DoControlMsg(Message.DrawItemStruct^.CtlID, Message) then
inherited;
end;
------------
which the Newspost you reffer to suggests to be wrong.

I don't have D2005 source code, so I can't check there.

--
Danijel Tkalcec
http://www.deltasoft.hr/rtc/author.htm



Back to top
David J Taylor
Guest





PostPosted: Thu Dec 29, 2005 12:39 pm    Post subject: Re: x64 and Delphi Reply with quote

Danijel Tkalcec [RTC] wrote:
Quote:
"Danijel Tkalcec [RTC]" wrote:
I have just checked the D2006 sources and here
is a snippet from the "Controls.pas" unit from D2006 ...
--------
procedure TWinControl.WMDrawItem(var Message: TWMDrawItem);
begin
if not DoControlMsg(Message.DrawItemStruct^.hwndItem, Message) then
inherited;
end;
--------

Delphi 7 has this same procedure implemented as ...
-------------
procedure TWinControl.WMDrawItem(var Message: TWMDrawItem);
begin
if not DoControlMsg(Message.DrawItemStruct^.CtlID, Message) then
inherited;
end;
------------
which the Newspost you reffer to suggests to be wrong.

I don't have D2005 source code, so I can't check there.

Delphi 5 has:

procedure TWinControl.WMMeasureItem(var Message: TWMMeasureItem);
begin
if not DoControlMsg(Message.MeasureItemStruct^.CtlID, Message) then
inherited;
end;

which is the same as Delphi 7.

Is there a resolution for this?

David



Back to top
Daniel Alvarez
Guest





PostPosted: Thu Dec 29, 2005 2:41 pm    Post subject: Re: x64 and Delphi Reply with quote

Delphi 4's one: (the same)

procedure TWinControl.WMDrawItem(var Message: TWMDrawItem);
begin
if not DoControlMsg(Message.DrawItemStruct^.CtlID, Message) then
inherited;
end;

Daniel Alvarez

"David J Taylor" <davidtaylor (AT) writeme (DOT) com.not-this-part.invalid> wrote in
message news:43b3d8a6$1 (AT) newsgroups (DOT) borland.com...
Quote:
Danijel Tkalcec [RTC] wrote:
"Danijel Tkalcec [RTC]" wrote:
I have just checked the D2006 sources and here
is a snippet from the "Controls.pas" unit from D2006 ...
--------
procedure TWinControl.WMDrawItem(var Message: TWMDrawItem);
begin
if not DoControlMsg(Message.DrawItemStruct^.hwndItem, Message) then
inherited;
end;
--------

Delphi 7 has this same procedure implemented as ...
-------------
procedure TWinControl.WMDrawItem(var Message: TWMDrawItem);
begin
if not DoControlMsg(Message.DrawItemStruct^.CtlID, Message) then
inherited;
end;
------------
which the Newspost you reffer to suggests to be wrong.

I don't have D2005 source code, so I can't check there.

Delphi 5 has:

procedure TWinControl.WMMeasureItem(var Message: TWMMeasureItem);
begin
if not DoControlMsg(Message.MeasureItemStruct^.CtlID, Message) then
inherited;
end;

which is the same as Delphi 7.

Is there a resolution for this?

David





Back to top
Roy M Klever
Guest





PostPosted: Thu Dec 29, 2005 3:06 pm    Post subject: Re: x64 and Delphi Reply with quote

Hi Danijel,

Quote:
Since 32-bit Windows supports 16-bit applications, I'd guess that 64-bit
Windows also supports 32-bit and 16-bit applications. So, there's no need to
panic.

As I have understood it, Windows 64 will no longer support 16 bit
applications and 32 bit application will run like 16 bit applications
run on 32 bit Windows today WOW. Windows on Windows emulation mode.

This is what I have made out of the info I have found.


Kind Regards
Roy Magne Klever
www.rmklever.com


Back to top
David J Taylor
Guest





PostPosted: Thu Dec 29, 2005 3:17 pm    Post subject: Re: x64 and Delphi Reply with quote

Roy M Klever wrote:
Quote:
Hi Danijel,

Since 32-bit Windows supports 16-bit applications, I'd guess that
64-bit Windows also supports 32-bit and 16-bit applications. So,
there's no need to panic.

As I have understood it, Windows 64 will no longer support 16 bit
applications and 32 bit application will run like 16 bit applications
run on 32 bit Windows today WOW. Windows on Windows emulation mode.

This is what I have made out of the info I have found.


Kind Regards
Roy Magne Klever
www.rmklever.com

Yes, indeed, and the general findings are that applications run just as
quickly as before, if not perhaps a little faster because of a more
efficient OS.

However, it seems that Delphi applications prior to those compiled with
Delphi 2006 may not display correctly because of an error in the Borland
runtime library.

David



Back to top
Danijel Tkalcec [RTC]
Guest





PostPosted: Thu Dec 29, 2005 3:43 pm    Post subject: Re: x64 and Delphi Reply with quote

"David J Taylor" wrote:
Quote:
Roy M Klever wrote:
Hi Danijel,

As I have understood it, Windows 64 will no longer support 16 bit
applications and 32 bit application will run like 16 bit applications
run on 32 bit Windows today WOW. Windows on Windows emulation mode.

Yes, indeed, and the general findings are that applications run just as
quickly as before, if not perhaps a little faster because of a more
efficient OS.

It was nice from Borland to start supporting 32-bit applications from D2. I
hope they will continue this good tradition and include a 64-bit compiler
with D2007 Surprised)

I like the .NET idea, but I don't think it will ever be able to fully
replace the power of Win32/64.

Some applications don't need the possibility to run on different platforms,
while some will only be hindered by the Garbage collector in .NET (same as
in Java).

I've witnessed Java apps which started to crawl after running for a couple
of months and swallowing all available RAM, going after Virtual Memory (hard
drive).

--
Danijel Tkalcec
http://www.deltasoft.hr/rtc/author.htm



Back to top
Display posts from previous:   
Post new topic   Reply to topic    BorlandTalk.com Forum Index -> Delphi Thirdparty Tools (General) All times are GMT
Goto page 1, 2  Next
Page 1 of 2

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © 2001, 2006 phpBB Group
SEO toolkit © 2004-2006 webmedic.