[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [MiNT] Fwd: Re: marathon,was:Egale



On Wed, 15 Feb 2012 00:55:41 +0100, Helmut Karlowski <helmut.karlowski@ish.de> wrote:

Am Mittwoch, den 15.02.2012, 00:15 +0100 schrieb "Helmut Karlowski" <helmut.karlowski@ish.de>:


 	  msg[1] = gl_apid;                           //  <-- HERE IT IS

This must be the one of the caller!

 One could say that the SLB IS the caller of the appl_write.

Yes, but the status of the slb is STOP, and it's not an XaAES-client - I don't know how this all works. I don't know why XaAES freezes after the appl_init, maybe the slb should wait until it's completely initialized by MiNT.

Now, I haven't done any SLB programming for atleast 10 years, so I could get this all wrong. But AFAIK when an application calls a function in a SLB, the function is run in the context of the calling application. So if pid X calls a function in SLB Y which again calls appl_init(), pid X - not pid Y - becomes an AES client. Take a look at GEMMA, it does exactly this. If GEMMA doesn't work anymore, then there's something wrong with either MiNT or XaAES.

 Dracdlg.slb purpose is: provide GEM Dialogs and draw special objects.

That's where it crashes under EmuTOS and what does not work in MyAES (in case the options-dialog is done by the slb).

I don't think you can use these as a reference. SLB were invented by Andreas Kromke and first implemented in MagiC. So MagiC should be the reference.

Jo Even