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