Roelof wrote:
>  I tried the above and I have the same problem as before

Yes, I too get a blank image & file.  I don't get the freeze though.  Sorry
for not testing my suggestion before I made it.

I wonder why  9!:27'theSentence'  is different from executing  theSentence 
directly in the IJX window.  My suspicion is that control doesn't pass
back from the J engine (j.dll) to the JFE (j.exe) until after the immex
phrase has completed.  

That is, in the situation where you enter a phrase in the IJX window, press
enter, then enter another phrase, then enter again, from the first enter
to the second, control has passed from j.dll to j.exe and back to j.dll. 
I speculate that in the case of  9!:27  j.dll checks the immex flag before
it returns control to j.exe (executing a phrase if appropriate), and so
this round trip is avoided.  However, in Roelof's case, the transfer of
control is required, as j.exe has the responsiblity of painting graphics.

Which makes me think his aims might be acheived via a different indirection:

        vm =: verb define
                viewmat i. 16 16
                wd 'timer 500'
                sys_timer_z_ =:  'timer 0' wd@:[ savemat_jviewmat_ bind 
'C:\immex0.bmp'
        )
        
        vm''

This works, which seems like corroboration of my hypothesis (j.exe owns wd,
and hence control must pass back to it before timer events can fire, so we
get the requisite round trip).

-Dan
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm

Reply via email to