@All
In case anyone interested: i give it another go, and was able to build latest version of that vim-with-mui from Ola Söder : all compiles, binary done, it starts, have menu, the bar working, all fine, just the whole rendering missed by some reassons. There are screenshot:
(click on image for fullsize)
I had to adapt
gui_mui.c a bit to make it compiles for os4, like this:
#ifdef __amigaos4__
#include <dos/obsolete.h>
#include "aos4funcs_api.h"
typedef unsigned long IPTR;
struct Library *MUIMasterBase = NULL;
struct MUIMasterIFace *IMUIMaster = NULL;
struct Library *CyberGfxBase = NULL;
struct CyberGfxIFace *ICyberGfx = NULL;
#define RPTAG_FgColor RPTAG_APenColor
#define RPTAG_BgColor RPTAG_BPenColor
#define RPTAG_PenMode TAG_IGNORE
#define KPrintF DebugPrintF
#endif
And open on init stage muimaster and cybergraphics of course.
And fix marcoses this way (to avoid redefine of DoSuperNew to DoSuperNewTags):
#ifdef __MORPHOS__
# define DISPATCH_GATE(C) &C ## Gate
# define DISPATCH_ARGS void
# define DISPATCH_HEAD \
Class *cls = (Class *) REG_A0; \
Object *obj = (Object *) REG_A2; \
Msg msg = (Msg) REG_A1
# define CLASS_DEF(C) \
static IPTR C ## Dispatch (void); \
static struct MUI_CustomClass * C ## Class; \
const struct EmulLibEntry C ## Gate = \
{ TRAP_LIB, 0, (void (*) (void)) C ## Dispatch }; \
struct C ## Data
#elif __amigaos4__
# define DISPATCH_HEAD
# define DISPATCH_ARGS Class *cls, Object *obj, Msg msg
# define DISPATCH_GATE(C) C ## Dispatch
# define CLASS_DEF(C) \
struct MUI_CustomClass * C ## Class; \
struct C ## Data
#else
# define DoSuperNew(C,O,...) DoSuperNewTags(C,O,NULL,__VA_ARGS__)
# define DISPATCH_HEAD
# define DISPATCH_ARGS Class *cls, Object *obj, Msg msg
# define DISPATCH_GATE(C) C ## Dispatch
# define CLASS_DEF(C) \
struct MUI_CustomClass * C ## Class; \
struct C ## Data
#endif
#define DISPATCH(C) static IPTR C ## Dispatch (DISPATCH_ARGS)
#define CLASS_DATA(C) C ## Data
#define TAGBASE_sTx (TAG_USER | 27<<16)
#define MUIDSP static inline __attribute__((always_inline))
But that macro stuff mostly about mui which is workking, dunno why rendering may fail .. Dunno if it those RPTAG_ things, but at least for all other ports i use it like this and all works.