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

Re: [MiNT] FreeMiNT 1.18 release coming up.



I prefer #1, because of
- This function belongs to the XALOADER and not to Mint.
- When should Mint check, whether a workstation is opened?
- A workstation can be opened/closed between when Mint checks it and when
XaAES is started.
- I'd prefer a solution, what works in most scenarios, ex.: in case of TOS
and other AES

Cheers,
Jozsi


-----Original Message-----
From: mint-bounce@lists.fishpool.fi [mailto:mint-bounce@lists.fishpool.fi]
On Behalf Of Alan Hourihane
Sent: Monday, March 4, 2013 9:10 AM
To: mint@lists.fishpool.fi
Subject: Re: [MiNT] FreeMiNT 1.18 release coming up.

On 03/04/13 00:40, Vincent Rivière wrote:
> 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.
>
Now, we are talking. Item 2 sounds like a great idea !

Alan.