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

Re: [MiNT] FreeMiNT 1.18 release coming up.



On 04/03/2013 00:24, Alan Hourihane wrote:
O.k. What about adding a message to xaloader.prg detecting when GEM=ROM and
printing a message and dropping back to the desktop ?

It would work, to avoid the crash and cleanly exit.

Once again, here are the facts.

XaAES needs to know if it has to open the VDI physical workstation or not. It has been reported the the VDI has so bad design (or implementations are so buggy) that it is impossible to determine if the VDI workstation is already opened or not, using VDI functions.

So the workaround is to call the AES appl_init(). If it works, then the VDI workstation was already opened. Otherwise, it is not.

It is forbidden to call appl_init() or any AES function from supervisor mode (even if sometimes it does not crash, by chance). So xaaes.km can't call it.

The only clean solution is to call appl_init() from user mode. That could be either in xaloader.prg, or at the beginning of mint.prg. Then the result (VDI physical workstation already opened or not) has to be forwarded to xaaes.km in some way.

We have 2 clean solutions:

1) Find a way to pass information from xaloader.prg to xaaes.km. Something like a module command line, etc.

2) mint.prg could call appl_init() at startup (in user mode) to determine the VDI workstation status, and make the result available to kernel modules. For example, initialize a flag somewhere, add a function in libkern to read it, and you're done.

Solution #1 may be tricky, and specific to XaAES.
Solution #2 should be very simple, and the information may be useful for other kernel stuff, too.

--
Vincent Rivière