Welcome, Guest. Please login or register.

Author Topic: Sas-C Linker (Stub) Issues...  (Read 6689 times)

Description:

0 Members and 1 Guest are viewing this topic.

Offline Joloo

Re: Sas-C Linker (Stub) Issues...
« Reply #14 from previous page: December 26, 2011, 01:59:39 PM »
Merry Christmas to all who are celebrating it, for all others, enjoy life as it.

I've uploaded the modified source codes of Mui++.

Please, before you try to compile, locate this,

typedef struct {
 ULONG MethodID;
 /* method-specific data ... */
 } *Msg;
 
and change the typedef to:
typedef struct _Msg {

in intuition/classusr.h

This is essential for C++.

I have only tried to compile it (using gcc 3.3.0 and 3.4.0), I did not build something based on it. Hence errors were not fixed, if any exist.

Regards
 

Offline Joloo

Re: Sas-C Linker (Stub) Issues...
« Reply #15 on: December 28, 2011, 11:11:34 PM »
Quote

Let me know what you get figured out...


The first step was to change the include files ("intuition/classusr.h", "utility/tagitem.h" and "clib/alib_protos.h") to be used from C++.
In "intuition/classusr.h" I changed,

typedef struct {

to

typedef struct _Msg {

In "utility/tagitem.h" and "clib/alib_protos.h" the obligatory statement <#ifdef __cplusplus [] extern "C" {> was missing again.

The changes I've applied to the source code are minor - the issues I faced probably are due to the compiler initially used. I guess that it was g++ of version 2.9.x. For 3.3.0 and 3.4.0 the preprocessor doesn't accept anymore "::" within a macro definition. Hence I didn't use this macro but wrote it out in full (copy and paste orgy). Besides, I am not a fan of macros anyway, at least, if source codes should not be bound to one compiler only.
If I am right, any version of g++ 3.x is more strict than any previous version, so I had to cast some parameters before they were accepted.
I then changed one m68k-style VARARG function to a linear memory array.
Okay, the hook function (dispatcher) had to be rewritten, because g++ doesn't accept parameters in specified processor registers, but that was it in the end.

Quote

unfortunately, my other distractions are taking up my time, like having to fix some broken pull-down menus on a website I maintain, so I haven't had a chance to revisit this of late.


Don't mind. I have time issues, too. :)
Hopefully our situation will change in the future, although I have my doubts...

Besides, can you make the latest version of Black Jack available, so I can have a look at it, once I find some time?
If I recall correctly, you wrote that you have issues with the latest version, but not with the version I did download?
I ask because I have to work at the weekend anyway and I need something to relax, i.e. which distracts me from the boring work. :)


All the best for the upcoming new year,

Joerg