Screen damage logic [was: Re: RE: Timers, Stepping, ...]

Lex Spoon lex at
Wed Mar 22 17:33:01 UTC 2000

Stefan Matthias Aust <sma at> wrote:

> Then, I looked at the damage recoder and the way it collects damage.
> Actually it doesn't really collect damage.  Morphic is very busy to redraw
> damage immedately.  I don't fully understand why.  Probably, because all
> SystemWindows  redraw theirselves five times a second.  Or because even
> without events, #doOneCycle calls #doOneCycleNow (which redraws damage) is
> called upto 50 times a second.  So damage rectangles cannot accumulate and
> very often, parts of the screen are redrawn which are invalidated afterwards.

Dude, if you're getting 50 fps, who cares if stuff is getting drawn
twice?  That's *fast*!

Anyway, do feel free to investigate further about the Morphic feel.  I
would suggest that the best avenue to approach, is to find some specific
operations that seem to take longer.  For example, dragging windows is
one thing that always left an impression on me.  It will be interesting
to see if Dan's optimizations make it fast enough that it "feels" fast.

Anyway, once we've identified some specific operations that are slow, we
can run the profiler and/or think about how the code works, to try and
see why it's slow.  Then we can make real progress, or at least make a
rationale tradeoff.  The best people to do this stuff, of course, are
people with ~100 MHz computers :)


More information about the Squeak-dev mailing list