Andreas,
I've all but proven that my "MIDI" lockup is in fact independent of the MIDI primitives. At least on a particular machine, I can reliably lock it up using only a simulated source of data.
Once the system locks up, the 3.2.2 (5-26-02) VM's Dump call stack command always seems to show a particular background process in various stages of activity, but never waiting on a semaphore. My interpretation (contradictory opinions will be cheerfully considered) is that the morphic main loop is being deadlocked by another of my threads, or (much less likely I think) is somehow failing to wake up from a wait for some other reason.
I couldn't find the call stack code in the VM source that I had on hand; in looking for an update, I saw the new VM, and found the call stack code in its source. More, I found printAllStacks(), which sounds like the output that I want to see. Is it exposed somewhere in the menus? If not, would it be as simple as exchanging printAllStacks for printCallStack near the bottom of sqWin32Prefs.c and recompiling?
Thanks for adding this stuff!
Bill
Wilhelm K. Schwab, Ph.D. bills@anest4.anest.ufl.edu (352) 846-1285
squeak-dev@lists.squeakfoundation.org