Page 2 of 3

Re: questions about 64 bits and FWH

PostPosted: Mon Feb 18, 2013 1:52 pm
by lucasdebeltran
Antonio,

Very good news ;).

Is there any class non compatible with FWH64 bits?.

Also, did you were able to try BCC 64 bits?.

Thank you for your very effective and quick support and atention Antonio.

Re: questions about 64 bits and FWH

PostPosted: Mon Feb 18, 2013 3:31 pm
by IBTC
Antonio Linares wrote:Class TImage for 64 bits seems to be ready :-)


Great! Good news. Thanks, Antonio.

Re: questions about 64 bits and FWH

PostPosted: Mon Feb 18, 2013 4:22 pm
by Antonio Linares
No time to test bcc 64 yet...

Re: questions about 64 bits and FWH

PostPosted: Tue Feb 19, 2013 7:30 am
by lucasdebeltran
Antonio,

Can you able to build samples\vistamnu1 with FH64?.

All all classes working in 64 bits?.

Thanks a lot.

Re: questions about 64 bits and FWH

PostPosted: Tue Feb 19, 2013 1:00 pm
by Antonio Linares
Lucas,

Here it is vistamnu.prg working on 64 bits with FWH 64 and Harbour:

Several modules were missing in FWH 64. Now it is ok :-)

Image

Re: questions about 64 bits and FWH

PostPosted: Tue Feb 19, 2013 1:06 pm
by lucasdebeltran
Thanks Antonio.

I thought .rc files were only for Borland BCC 32 bits. How are they compiled into 64 bits?.



PD. What are your feelings about BCC 64 BITS?.

Re: questions about 64 bits and FWH

PostPosted: Tue Feb 19, 2013 1:11 pm
by Antonio Linares
Lucas,

We don't have a single PRG that test all FWH classes. But enough complex examples like:

* samples\fivedbu.prg
* samples\fiveform.prg
* samples\rbdesign.prg

are properly working on 64 bits.

There is just a weird bug that we have detected _only_ with Windows 8 64 bits and FWH 64 bits: Mdi childs crash. Apps GPF.

The same FWH 64 bits apps, run fine on Windows 7 64 bits...

Re: questions about 64 bits and FWH

PostPosted: Tue Feb 19, 2013 1:15 pm
by Antonio Linares
lucasdebeltran wrote:Thanks Antonio.

I thought .rc files were only for Borland BCC 32 bits. How are they compiled into 64 bits?.



PD. What are your feelings about BCC 64 BITS?.


Lucas,

We use this rc.exe compiler from Microsoft and works very fine:
Microsoft Windows [Version 6.2.9200]
(c) 2012 Microsoft Corporation. All rights reserved.

c:\vc64\bin>rc
Microsoft (R) Windows (R) Resource Compiler Version 6.1.7600.16385
Copyright (C) Microsoft Corporation. All rights reserved.

fatal error RC1107: invalid usage; use RC /? for Help

Re: questions about 64 bits and FWH

PostPosted: Tue Feb 19, 2013 1:17 pm
by Antonio Linares
Lucas.

I have not tested bcc 64 yet...

downloading it...

Re: questions about 64 bits and FWH

PostPosted: Tue Feb 19, 2013 2:48 pm
by lucasdebeltran
Antonio,

Many thanks. Now I have to try to build my application with FH64 bits.

I´ll check with next build. Hope you could merge FWH and FWH64 installer to install it one time, thanks!!.

Thanks a lot.

I think it is important to consider 64 bits, because maybe soon printers with only 64 bit drivers could cause the same problems we had in the past with 16 bits. The sooner we are ready the better.

Also, the increase of speed and performance is it noticeable?.

Thanks.

Re: questions about 64 bits and FWH

PostPosted: Tue Feb 19, 2013 3:09 pm
by Antonio Linares
Lucas,

Hope you could merge FWH and FWH64 installer to install it one time, thanks!!.


This will not happen by now, as we sell them as different products, and we don't have a plan to change it

Also, the increase of speed and performance is it noticeable?


There is no increase of speed in 64 bits, thats a common missunderstanding :-)

64 bits apps are only interesting for applications that need to manage huge amounts of memory (over 4 gb), i.e.: multimedia apps.

Another example. IE 64 bits is a little faster than IE 32, but thats a multimedia app :-)

Re: questions about 64 bits and FWH

PostPosted: Wed Feb 20, 2013 7:34 am
by lucasdebeltran
Antonio,

Thank you. Before testing FWH64 bits I wil first switch to MSVC 32 bits, to narrow issues it they arrise, and so better know if it is a MSVC issue or FHW64 bits issue.

I ahve two little questions please:

a) Using #def #indef how can I set in my code some parts to be compiled only by MSVC 32 bits?.

b) And the same as a) but only for Harbour/FWH64 bits?.


Thank you so much.

Re: questions about 64 bits and FWH

PostPosted: Wed Feb 20, 2013 12:13 pm
by Antonio Linares
Lucas,

Yesterday it was the first day that I put my hands on Borland bcc 64 and it is quite different from bcc 32. First of all, the download/setup for the Embarcadero's demo, is simply daunting. Its huge!!! even if you unselect many packages not needed by us.

One of those differences is that LIB files are no longer used. Not with that sufix. It seems as they use ".a" like in Linux. Also if you run bcc 64, there is no help on screen as it used to be. Really shocking...

Said that, I think it is very clever to consider a migration to Microsoft C, that at least, it is exactly the same for 32 and 64 bits. And thats a really help

Anyhow, I will continue reviewing bcc 64, maybe its easy after a scaring first review :-)

Related to your answer:

In runtime you can use FWH function IsWin64() to check if you are running on a Windows 64 bits. In compile time, there is no way to distinct Harbour 32 and 64 (unless I am wrong) though you can use a define from the batch file that invokes your makefile. From C code you can use:

#ifdef _WIN64

and to detect the C compiler:

Code: Select all  Expand view
             #ifdef __BORLANDC__
                 asm push ax;
              #elif defined( _MSC_VER )
                 _asm { push ax }
              #elif defined( __GNUC__ )
                 asm( "push ax" );

Re: questions about 64 bits and FWH

PostPosted: Wed Feb 20, 2013 2:49 pm
by lucasdebeltran
Antonio,

Thank so much.

This is the doc about BCC 64 command line options:
http://docwiki.embarcadero.com/RADStudi ... ties_Index

Also, Harbour hbmake supports it with the corresponding flags.

Hope it helps.

Re: questions about 64 bits and FWH

PostPosted: Wed Feb 20, 2013 4:22 pm
by Antonio Linares
Lucas,

Thanks for the url. See this:

The C++ 64-bit Windows compiler (BCC64) is based on the open-source Clang compiler, which is the front end for the LLVM compiler, described at http://clang.llvm.org/ and http://www.llvm.org/ respectively.
BCC64 is an entirely new code base, so there are significant differences between BCC64 and BCC32.


From an easy of use point of view, sadly the current make files based on bcc32 will have to be modified.

I don't like to use hbmk2 because I like to exactly know and control how an EXE gets built, thats why we do prefer our batch files and our make files, that are simple and easy to be modified from FWH users.