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.
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