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

Re: [MiNT] Opening VDI workstation (was Re: Missing clobbered register in gemlib)



Helmut Karlowski a écrit :
Am 20.12.2009, 16:06 Uhr, schrieb Patrice Mandin <mandin.patrice@orange.fr>:

According to documentation (Compendium for me), the work_in array must
be initialized like this:

work_in[0]=Getrez()+2;
for(i = 1; i < 10; i++)
    work_in[i] = 1;
work_in[10] = 2;

Yes - my initialization is sloppy, but it should not lead to a bus-error. I'll try with the correct one.

Also, the fact you open the physical workstation (instead of the
virtual one, with v_openvwk), could be the cause of your problem, if
the TOS as already opened it.

Someone has to open a physical workstation.
Hello

Yes AES need to do this

To open workstation you should do something like this:

unsigned long ctrl1 = 0, ctrl0 = 0;
        if(Getrez()==0)
           work_in[0] = 1; /* default value*/
       else
       {
           work_in[0] = Getrez()+2;
if(Getrez()>=3 && get_cookie(COOKIE__MIL) && get_cookie(COOKIE__VDI)) work_in[0] = 7; /* Pb with Milan VDI! */ work_out[45] = my_aes_inside.vsetmode; /* very strange but it work like this for extend resolutions !*/ }
       ctrl0 = Ssystem(/*S_CTRLCACHE*/23, 0L, -1L);
       ctrl1 = Ssystem(/*S_CTRLCACHE*/23, -1L, 0L);
       Ssystem(/*S_CTRLCACHE*/23, sc & ~3, cm);
       v_opnwk(&work_in[0], &my_aes_inside.phys_handle, &work_out[0]);
       Ssystem(/*S_CTRLCACHE*/23, ctrl1, ctrl0);

OL




-Helmut