HMG library ported on Borland C 5.8.2 compiler

You can share your experience with HMG. Share with some screenshots/project details so that others will also be benefited.

Moderator: Rathinagiri

User avatar
santy
Posts: 60
Joined: Tue Sep 25, 2012 11:19 am
Location: Ukraine, Lviv
Contact:

HMG library ported on Borland C 5.8.2 compiler

Post by santy »

Hi all.

Allow me to introduce ports HMG 3.0.44 library for OpenWatcom 1.9 compiler (Harbour and xHarbour).

http://code.google.com/p/santysoft/down ... akechanges

For those who are interested.

Best regards,
Alex Antypenko
[u]Moderator Notes[/u] (Pablo César) wrote:Message re-edited to correct topic title.

Topics merged, due both topics contained the same content..
Best regards,
Oleksandr Antypenko
xHarbour 1.2.3 , Harbour 3.x + Mingw 4.x (HMG, minigui)
https://bitbucket.org/aantypenko
https://github.com/aantypenko
User avatar
bpd2000
Posts: 1207
Joined: Sat Sep 10, 2011 4:07 am
Location: India

Re: HMG library ports on OpenWatcom compiler

Post by bpd2000 »

santy wrote:Hi all.

Allow me to introduce ports HMG 3.0.44 library for OpenWatcom 1.9 compiler (Harbour and xHarbour).

Alex Antypenko
Thank you for providing link
Regards
BPD
Convert Dream into Reality through HMG
User avatar
Rathinagiri
Posts: 5471
Joined: Tue Jul 29, 2008 6:30 pm
DBs Used: MariaDB, SQLite, SQLCipher and MySQL
Location: Sivakasi, India
Contact:

Re: HMG library ports on OpenWatcom compiler

Post by Rathinagiri »

It is very interesting Santy.

Can you please explain about OpenWatcom and MingW differences?
East or West HMG is the Best.
South or North HMG is worth.
...the possibilities are endless.
User avatar
santy
Posts: 60
Joined: Tue Sep 25, 2012 11:19 am
Location: Ukraine, Lviv
Contact:

Re: HMG library ports on OpenWatcom compiler

Post by santy »

rathinagiri,
Now I don't know the main differences, may be Mingw develops better and is more popular than OpenWatcom.

I have more time to work with xHarbour, and there Watcom is the first on speed , but it loses Harbour for MIngw.
Maybe it is a matter of habit, I work for Watcom since 1995 when using (Visual) FoxPro although I also work on Mingw and Borland C :).

Best regards,
Alex Antypenko
Best regards,
Oleksandr Antypenko
xHarbour 1.2.3 , Harbour 3.x + Mingw 4.x (HMG, minigui)
https://bitbucket.org/aantypenko
https://github.com/aantypenko
User avatar
Rathinagiri
Posts: 5471
Joined: Tue Jul 29, 2008 6:30 pm
DBs Used: MariaDB, SQLite, SQLCipher and MySQL
Location: Sivakasi, India
Contact:

Re: HMG library ports on OpenWatcom compiler

Post by Rathinagiri »

Alex,

Thanks a lot for the explanation.
East or West HMG is the Best.
South or North HMG is worth.
...the possibilities are endless.
klauskugel
Posts: 90
Joined: Tue Oct 09, 2012 2:28 pm

Re: HMG library ports on OpenWatcom compiler

Post by klauskugel »

OpenWatcom -> OpenWatcom.ORG
C/C++ Compiler / Fortran of the University of Waterloo.
The Speed of the Code is faster than MingW, Borland C and Microsoft Visual C .
Developed Programs Foxpro9, AutoCad and some more.
Native Compiler for Novell Netware 2 - 6.5.
Linux and OS/2 Support,Dos 16 and 32-bit Extend Support with Rational Extender 4G and Tenberry Extender.
Stubs for the Extender. Win32, Win32s.
After Version 11 of Watcom it became free.
Actual Beta is 2.0 and existing. Unfortunately the Beta-Server is no more reachable in the Czech Republic.
Anyway, Harbour 2.0 compiles under Watcom 1.8 under Linux/DosEmu.
Sadly there is no 64-bit Support in OpenWatcom and the Compiler Support
stopped with Pentium Pro Optimization.
But there is a wonderful Assembler in OpenWatcom/Wasm with MS Syntax.
The Resource Compiler WRC and the MS Equiv RC.
And it allows Inline-Assembly in MS-Style ( 85 pc).

Watcom C/C++ was in it's best time the Industry Leading Standard together
with MetaWare HighC which shipped with the PharLap Dos and later Windows-Extender.

All Code is almost 100pc equivalent with Microsoft C-Code and Zortech/Digital Mars C .

The whole OpenWatcom Compiler Documentation is added in PDFs.


C:\WATCOM>wcl386
Open Watcom C/C++32 Compile and Link Utility Version 1.9
Portions Copyright (c) 1988-2002 Sybase, Inc. All Rights Reserved.
Source code is available under the Sybase Open Watcom Public License.
See http://www.openwatcom.org/ for details.
Usage: wcl386 [options] file(s)
Options: ( /option is also accepted )
-c compile only, no link
-cc treat source files as C code
-cc++ treat source files as C++ code
-y ignore the WCL386 environment variable
[Processor options]
-3r 386 register calling conventions -5r Pentium register calling conv.
-3s 386 stack calling conventions -5s Pentium stack calling conventions
-4r 486 register calling conventions -6r Pentium Pro register call conven.
-4s 486 stack calling conventions -6s Pentium Pro stack call conven.
[Floating-point processor options]
-fpc calls to floating-point library -fp2 generate 287 floating-point code
-fpd enable Pentium FDIV check -fp3 generate 387 floating-point code
-fpi inline 80x87 with emulation -fp5 optimize f-p for Pentium
-fpi87 inline 80x87 -fp6 optimize f-p for Pentium Pro
-fpr use old floating-point conventions
[Compiler options]
-bcl=<os> compile and link for OS. -nm=<module_name> set module name
-bt=<os> compile for target OS. -nt=<name> set text segment name
Press any key to continue:
-db generate browsing information -q operate quietly
-e=<n> set error limit number -r save/restore segregs across calls
-ecc set calling conv. to __cdecl -ri promote function args/rets to int
-ecd set calling conv. to __stdcall -s remove stack overflow checks
-ecf set calling conv. to __fastcall -sg generate calls to grow the stack
-ecp set calling conv. to __pascal -st touch stack through SS first
-ecr set calling conv. to __fortran -v output func declarations to .def
-ecs set calling conv. to __syscall -vcap VC++ compat: alloca in arg lists
-ecw set calling conv. to __watcall -w=<n> set warning level number
-ee call epilogue hook routine -wcd=<n> disable warning message <n>
-ef full paths in messages -wce=<n> enable warning message <n>
-ei force enums to be type int -we treat all warnings as errors
-em minimum base type for enum is int -wx set warning level to max
-en emit routine names in the code -xr (C++) enable RTTI
-ep[=<n>] call prologue hook routine -z{a,e} disable/enable extensions
-eq do not display error messages -zc place strings in CODE segment
-et P5 profiling -zd{f,p} DS floats vs DS pegged to DGROUP
-ez generate PharLap EZ-OMF object -zdl load DS directly from DGROUP
-fh=<file> pre-compiled headers -zf{f,p} FS floats vs FS pegged to seg
-fhq[=<file>] fh without warnings -zg{f,p} GS floats vs GS pegged to seg
-fhr (C++) only read PCH -zg function prototype using base type
-fhw (C++) only write PCH -zk{0,0u,1,2,3,l} double-byte support
-fhwe (C++) don't count PCH warnings -zku=<codepage> UNICODE support
-fi=<file> force include of file -zl remove default library information
Press any key to continue:
-fo=<file> set object file name -zld remove file dependency information
-fr=<file> set error file name -zm place functions in separate segments
-ft (C++) check for 8.3 file names -zmf (C++) zm with near calls allowed
-fx (C++) no check for 8.3 file names -zp{1,2,4,8,16} struct packing align.
-g=<codegroup> set code group name -zpw warning when padding a struct
-hc codeview debug format -zq operate quietly
-hd dwarf debug format -zs check syntax only
-hw watcom debug format -zt<n> set data threshold
-j change char default to signed -zu SS != DGROUP
-m{f,s,m,c,l} memory model -zv (C++) enable virt. fun. removal opt
-nc=<name> set CODE class name -zw generate code for MS Windows
-nd=<name> set data segment name -zz remove @size from __stdcall func.
[Debugging options]
-d0 no debugging information -d2t (C++) d2 but without type names
-d1{+} line number debugging info. -d3 debug info with unref'd type names
-d2 full symbolic debugging info. -d3i (C++) d3 + inlines as COMDATs
-d2i (C++) d2 + inlines as COMDATs -d3s (C++) d3 + inlines as statics
-d2s (C++) d2 + inlines as statics
[Optimization options]
-oa relax alias checking -ol+ ol with loop unrolling
-ob branch prediction -om generate inline math functions
-oc disable call/ret optimization -on numerically unstable floating-point
-od disable optimizations -oo continue compile when low on memory
-oe[=num] expand functions inline -op improve floating-point consistency
Press any key to continue:
-of[+] generate traceable stack frames-or re-order instructions to avoid stalls
-oh enable repeated optimizations -os optimize for space
-oi inline intrinsic functions -ot optimize for time
-oi+ (C++) oi with max inlining depth -ou ensure unique addresses for functions
-ok control flow entry/exit seq. -ox maximum optimization (-obmiler -s)
-ol perform loop optimizations
[C++ exception handling options]
-xd no exception handling -xs exception handling: balanced
-xds no exception handling: space -xss exception handling: space
-xdt no exception handling -xst exception handling: time
[Preprocessor options]
-d<name>[=text] define a macro -u<name> undefine macro name
-d+ extend syntax of -d option -pil ignore #line directives
-fo=<filename> set object file name -p{c,l,w=<n>} preprocess source file
-i=<directory> include directory c -> preserve comments
-t=<n> (C++) # of spaces in tab stop l -> insert #line directives
-tp=<name> (C) set #pragma on( <name> w=<n> -> wrap output at column n
[Linker options]
-bd build Dynamic link library -fm[=<map_file>] generate map file
-bm build Multi-thread application -k<stack_size> set stack size
-br build with dll run-time library -l=<os> link for the specified OS
-bw build default Windowing app. -x make names case sensitive
-bcl=<os> compile and link for OS. @<file> additional directive file
-fd[=<file>[.lnk]] write directives -"<linker directives>"
Press any key to continue:
-fe=<executable> name executable file

C:\WATCOM>

And the IDE works not fully in Wine.
Think the Linux-Port is somewhat Beta but works fine.

And many thanks to Santy.
I hope the Use is not to complicated for me.

Greetings to All.
Happy HMGing
User avatar
santy
Posts: 60
Joined: Tue Sep 25, 2012 11:19 am
Location: Ukraine, Lviv
Contact:

Re: HMG library ports on OpenWatcom compiler

Post by santy »

klaus thanks for the this information
I think that the situation with Watcom is not very bad. New version 2.0 develop but when it will be nobody knows :)
Version 1.9 works very good.
64 bit version builds with errors but these errors are corrected.
Also we have new Assembler Jwasm ( OpenWatcom/Wasm fork) http://www.japheth.de/JWasm.html


Best regards,
Alex Antypenko
Best regards,
Oleksandr Antypenko
xHarbour 1.2.3 , Harbour 3.x + Mingw 4.x (HMG, minigui)
https://bitbucket.org/aantypenko
https://github.com/aantypenko
User avatar
santy
Posts: 60
Joined: Tue Sep 25, 2012 11:19 am
Location: Ukraine, Lviv
Contact:

Re: HMG library ports on OpenWatcom compiler

Post by santy »

Hi all.

Allow me to introduce ports HMG 3.0.45 library for OpenWatcom 1.9 compiler (Harbour and xHarbour).

http://code.google.com/p/santysoft/down ... akechanges
Best regards,
Oleksandr Antypenko
xHarbour 1.2.3 , Harbour 3.x + Mingw 4.x (HMG, minigui)
https://bitbucket.org/aantypenko
https://github.com/aantypenko
User avatar
Rathinagiri
Posts: 5471
Joined: Tue Jul 29, 2008 6:30 pm
DBs Used: MariaDB, SQLite, SQLCipher and MySQL
Location: Sivakasi, India
Contact:

Re: HMG library ports on OpenWatcom compiler

Post by Rathinagiri »

Wow! :) That is sooo fast!

I am trying to install this in my laptop.
East or West HMG is the Best.
South or North HMG is worth.
...the possibilities are endless.
User avatar
santy
Posts: 60
Joined: Tue Sep 25, 2012 11:19 am
Location: Ukraine, Lviv
Contact:

Re: HMG library ports on OpenWatcom compiler

Post by santy »

Thank you rathinagiri :)

Tell me how will install. Very interesting.
Best regards,
Oleksandr Antypenko
xHarbour 1.2.3 , Harbour 3.x + Mingw 4.x (HMG, minigui)
https://bitbucket.org/aantypenko
https://github.com/aantypenko
Post Reply