Patent ID: 7403566

Claim:
A computer system for executing programs and for displaying and transmitting compressed screen images produced by said programs over a network comprising: a processor; a memory system coupled to the processor for storage of the programs and data associated with the programs executing on the processor; wherein the memory system contains data and program modules comprising: at least one executing program of the programs; a window manager coupled to the executing program and to display memory; the window manager comprising a first message decoder for constructing a screen image in display memory according to screen paint messages passed from the at least one executing program; an interception module interposed between the window manager and the at least one executing program for intercepting the screen paint messages passed from the executing program to the window manager, the screen paint messages being passed to a second message decoder external to the window manager; wherein the second message decoder determines display macroblocks of the screen image altered in display memory by the first message decoder upon decoding screen paint messages, and marks said altered macroblocks as changed in a changed blocks table, the second message decoder capable of determining altered macroblocks altered by a message without comparing contents of display memory before and after execution of the message by the first message decoder; and an encoder module for reading the changed blocks table to determine macroblocks that have changed in the display memory since a most recent transmission of the macroblocks, and for encoding said changed macroblocks in a compressed format.