Claims Analysis
Total Claims: 12
Claim 1
Independent Claim
460 words
In a graphics subsystem having framebuffer storage organized for storing signals specifying pixels (x,y) of an X×Y raster framebuffer, said storage being sequentially addressable as a plurality of framebuffer pixel update arrays which tile the framebuffer, including a plurality of horizontal rows of update arrays forming an array of said update arrays, each said update array having a determined origin with respect to said framebuffer and comprising storage sites for specifications of a plurality of contiguously positioned framebuffer pixels, each said storage site being specifiable by an offset with respect to said update array origin, pixel specifications for all the storage sites of a said update array being concurrently updatable in a parallel memory transaction, a method of accessing from among said update arrays a horizontal subset to which is mapped a geometric figure to be drawn to said framebuffer, comprising the steps: (1-1) accessing a first said update array, and storing a specification of said array address denoting it as the first accessed update array, (1-2) testing whether said geometric figure is mapped to an update array positioned vertically above said accessed array with respect to the framebuffer, and if so, and if no previous array in the present horizontal row has been marked for upward continuation of said figure, storing a specification of said array address if not previously stored, and marking said stored array address specification for upward continuation of said figure, (1-3) testing whether said geometric figure is mapped to the update array positioned vertically below said accessed array with respect to the framebuffer, and if so, and if no previous array in the present horizontal row has been marked for downward continuation of said figure, storing a specification of said array address if not previously stored, and marking said stored array address specification for downward continuation of said figure, (1-4) testing whether the geometric figure is mapped to an update array positioned horizontally next to the left of said accessed array with respect to the framebuffer, and if so, accessing said next left array, (1-5) repeating steps (1-2)-(1-4) with respect to the array accessed in step (1-4) until the geometric figure is found not to be mapped to the next left array, (1-6) reading said stored array address denoted in step (1-1) as the first accessed update array and denoting the update array corresponding to said stored array address as the last accessed update array, (1-7) testing whether said geometric figure is mapped to an update array positioned horizontally next to the right of the last accessed update array with respect to the framebuffer, and if so, accessing said next right array, and (1-8) repeating steps (1-2), (1-3) and (1-7) until said geometric figure is found not to be mapped to the next right array.
Claim 2
Dependent Claim
460 words
In a graphics subsystem having framebuffer storage organized for storing signals specifying pixels (x,y) of an X×Y raster framebuffer, said storage being sequentially addressable as a plurality of framebuffer pixel update arrays which tile the framebuffer, including a plurality of horizontal rows of update arrays forming an array of said update arrays, each said update array having a determined origin with respect to said framebuffer and comprising storage sites for specifications of a plurality of contiguously positioned framebuffer pixels, each said storage site being specifiable by an offset with respect to said update array origin, pixel specifications for all the storage sites of a said update array being concurrently updatable in a parallel memory transaction, a method of accessing from among said update arrays a horizontal subset to which is mapped a geometric figure to be drawn to said framebuffer, comprising the steps: (1-1) accessing a first said update array, and storing a specification of said array address denoting it as the first accessed update array, (1-2) testing whether said geometric figure is mapped to an update array positioned vertically above said accessed array with respect to the framebuffer, and if so, and if no previous array in the present horizontal row has been marked for upward continuation of said figure, storing a specification of said array address if not previously stored, and marking said stored array address specification for upward continuation of said figure, (1-3) testing whether said geometric figure is mapped to the update array positioned vertically below said accessed array with respect to the framebuffer, and if so, and if no previous array in the present horizontal row has been marked for downward continuation of said figure, storing a specification of said array address if not previously stored, and marking said stored array address specification for downward continuation of said figure, (1-4) testing whether the geometric figure is mapped to an update array positioned horizontally next to the left of said accessed array with respect to the framebuffer, and if so, accessing said next left array, (1-5) repeating steps (1-2)-(1-4) with respect to the array accessed in step (1-4) until the geometric figure is found not to be mapped to the next left array, (1-6) reading said stored array address denoted in step (1-1) as the first accessed update array and denoting the update array corresponding to said stored array address as the last accessed update array, (1-7) testing whether said geometric figure is mapped to an update array positioned horizontally next to the right of the last accessed update array with respect to the framebuffer, and if so, accessing said next right array, and (1-8) repeating steps (1-2), (1-3) and (1-7) until said geometric figure is found not to be mapped to the next right array.
Claim 3
Dependent Claim
367 words
In a graphics subsystem having framebuffer storage organized for storing signals specifying the pixels (x,y) of an X×Y raster framebuffer, said storage being sequentially addressable as a plurality of framebuffer pixel update arrays which tile the framebuffer, including a plurality of horizontal rows of update arrays forming an array of said update arrays, each said update array having a determined origin with respect to said framebuffer and comprising storage sites for specifications of a plurality of contiguously positioned framebuffer pixels, each said storage site being specifiable by an offset with respect to said update array origin, pixel specifications for all the storage sites of a said update array being concurrently updatable in a parallel memory transaction, a method of accessing from among said update arrays a subset which tiles a geometric figure to be drawn to said framebuffer, comprising the steps: (2-1) performing the steps of claim 1 until, in a first horizontal row of said update arrays, all update arrays to which said geometric figure is mapped have been accessed, (2-2) reading said stored array address marked for upward continuation of said figure, accessing the update array vertically above the update array corresponding to said stored array address, storing a specification of the address of said array denoting it as the first accessed update array, and repeating steps (1-2)-(18) of claim 1 with respect to the current accessed array until a next horizontal subset of arrays to which the geometric figure is mapped has been accessed, (2-3) repeating step (2-2) for further horizontal subsets until there are no further stored addresses marked for upward continuation of said figure, (2-4) reading said stored array address marked for downward continuation of said figure, accessing the update array vertically below the update array corresponding to said stored array address, storing a specification of the address of said array denoting it as the first accessed update array, and repeating steps (1-2)-(1-8) of claim 1 with respect to the current accessed array until a next horizontal subset of arrays to which the geometric figure is mapped has been accessed, and (2-5) repeating step (2-4) for further horizontal subsets until there are no further addresses marked for downward continuation of said figure.
Claim 4
Dependent Claim
79 words
The method of claim 2, further comprising the steps: (8-1) deriving and storing a specification with respect to said framebuffer of a box bounding said geometric figure to be drawn; (8-2) before accessing each update array after said initial array, comparing the position of said update array with respect to the framebuffer with said stored specification of said bounding box; and (8-3) accessing said update array only if said array is mapped to the area of said bounding box.
Claim 5
Dependent Claim
25 words
The method of claim 1, wherein the update array to which a first vertex of said geometric figure is mapped is accessed in step (1-1).
Claim 6
Dependent Claim
359 words
In a graphics subsystem having framebuffer storage organized for storing signals specifying the pixels (x,y) of an X×Y raster framebuffer, said storage being sequentially addressable as a plurality of framebuffer pixel update arrays, the set of said update arrays tiling the framebuffer, each said update array having a determined origin with respect to said framebuffer and comprising storage sites for specifications of a plurality of contiguously positioned framebuffer pixels, each said storage site being specifiable by an offset with respect to said update array origin, pixel specifications for all the storage sites of a said update array being concurrently updatable in a parallel memory transaction, a method of accessing from among said update arrays a subset which tiles a geometric figure to be drawn to said framebuffer, comprising the steps: (7-1) performing the steps of claim 1 until in a first horizontal subset of arrays, all arrays to which the geometric figure is mapped have been accessed, (7-2) reading said stored array address marked for downward continuation of said figure of the first horizontal subset, accessing the update array vertically below the update array specified by said read array address, storing a specification of the address of said accessed array denoting it as the first update array accessed, and repeating steps (1-2)-(1-8) of claim 1 with respect to the current accessed array until a next horizontal subset of arrays to which the geometric figure is mapped has been accessed, (7-3) repeating step (7-2) for further horizontal subsets until there are no further addresses marked for downward continuation of said figure, (7-4) reading said stored array address marked for upward continuation of said figure, accessing the update array vertically above the update array specified by said read array address, storing a specification of the address of said array denoting it as the first update array accessed, and repeating steps (1-2)-(1-8) of claim 1 with respect to the current accessed array until a next horizontal subset of arrays to which the geometric figure is mapped has been accessed, and (7-5) repeating step (7-2) for further horizontal subsets until there are no further stored addresses marked for upward continuation of said figure.
Claim 7
Dependent Claim
395 words
In a graphics subsystem having framebuffer storage organized for storing signals specifying the pixels (x,y) of an X×Y raster framebuffer, said storage being sequentially addressable as a plurality of framebuffer pixel update arrays which tile the framebuffer, including a plurality of horizontal rows of update arrays forming an array of said update arrays, each said update array having a determined origin with respect to said framebuffer and comprising storage sites for specifications of a plurality of contiguously positioned framebuffer pixels, each said storage site being specifiable by an offset with respect to said update array origin, pixel specifications for all the storage sites of a said update array being concurrently updatable in a parallel memory transaction, a method of accessing from among said update arrays a subset which tiles a geometric figure to be drawn to said framebuffer, comprising the steps: (4-1) accessing an update array to which a first vertex of said geometric figure is mapped, and storing a specification of said array address denoting it as the first accessed update array, (4-2) performing the steps of claim 1 until, in a first horizontal subset of said update arrays, all update arrays to which the geometric figure is mapped have been accessed, (4-3) reading said stored array address marked for upward continuation of said figure, accessing the update array vertically above the update array specified by said read array address, storing a specification of the address of said array denoting it as the first accessed update array, and repeating steps (1-2)-(1-8) of claim 1 with respect to the current accessed array until a next horizontal subset of arrays to which the geometric figure is mapped has been accessed, (4-4) repeating step (4-3) for further horizontal subsets until no further stored addresses marked for up are found, (4-5) reading said stored array address marked for downward continuation of said figure, accessing the update array vertically below the update array specified by said read array address, storing a specification of the address of said array denoting it as the first accessed update array, and repeating steps (1-2)-(1-8) of claim 1 with respect to the current accessed array until a next horizontal subset of arrays to which the geometric figure is mapped has been accessed, and (4-6) repeating step (4-5) for further horizontal subsets until there are no further addresses marked for downward continuation of said figure.
Claim 8
Dependent Claim
368 words
In a graphics subsystem having framebuffer storage organized for storing signals specifying the pixels (x,y) of an X×Y raster framebuffer, said storage being sequentially addressable as a plurality of framebuffer pixel update arrays which tile the framebuffer, including a plurality of horizontal rows of update arrays forming an array of said update arrays, each said update array having a determined origin with respect to said framebuffer and comprising storage sites for specifications of a plurality of contiguously positioned framebuffer pixels, each said storage site being specifiable by an offset with respect to said update array origin, pixel specifications for all the storage sites of a said update array being concurrently updatable in a parallel memory transaction, a method of accessing from among said update arrays a horizontal subset to which is mapped a geometric figure to be drawn to said framebuffer, comprising the steps: (5-1) finding the left-most element of said geometric figure with respect to said framebuffer, (5-2) accessing an update array to which said left-most element is mapped, (5-3) testing whether said geometric figure is mapped to an update array positioned vertically above said accessed array with respect to the framebuffer, and if so, and if no previous array in the present horizontal row has been marked for up, storing a specification of said array address if not previously stored, and marking said stored array address specification for upward continuation of said figure, (5-4) testing whether said geometric figure is mapped to an update array positioned vertically below said accessed array with respect to the framebuffer, and if so, and if no previous array in the present horizontal row has been marked for downward continuation of said figure, storing a specification of said array address if not previously stored, and marking said stored array address specification for downward continuation of said figure, (5-5) testing whether said geometric figure is mapped to the update array positioned horizontally next to the right of said accessed array with respect to the framebuffer, and if so, accessing said next right array, and (5-6) repeating steps (5-3)-(5-5) with respect to the array accessed in step (5-5) until the geometric figure is found not to be mapped to the next right array.
Claim 9
Dependent Claim
368 words
In a graphics subsystem having framebuffer storage organized for storing signals specifying the pixels (x,y) of an X×Y raster framebuffer, said storage being sequentially addressable as a plurality of framebuffer pixel update arrays which tile the framebuffer, including a plurality of horizontal rows of update arrays forming an array of said update arrays, each said update array having a determined origin with respect to said framebuffer and comprising storage sites for specifications of a plurality of contiguously positioned framebuffer pixels, each said storage site being specifiable by an offset with respect to said update array origin, pixel specifications for all the storage sites of a said update array being concurrently updatable in a parallel memory transaction, a method of accessing from among said update arrays a horizontal subset to which is mapped a geometric figure to be drawn to said framebuffer, comprising the steps: (5-1) finding the left-most element of said geometric figure with respect to said framebuffer, (5-2) accessing an update array to which said left-most element is mapped, (5-3) testing whether said geometric figure is mapped to an update array positioned vertically above said accessed array with respect to the framebuffer, and if so, and if no previous array in the present horizontal row has been marked for up, storing a specification of said array address if not previously stored, and marking said stored array address specification for upward continuation of said figure, (5-4) testing whether said geometric figure is mapped to an update array positioned vertically below said accessed array with respect to the framebuffer, and if so, and if no previous array in the present horizontal row has been marked for downward continuation of said figure, storing a specification of said array address if not previously stored, and marking said stored array address specification for downward continuation of said figure, (5-5) testing whether said geometric figure is mapped to the update array positioned horizontally next to the right of said accessed array with respect to the framebuffer, and if so, accessing said next right array, and (5-6) repeating steps (5-3)-(5-5) with respect to the array accessed in step (5-5) until the geometric figure is found not to be mapped to the next right array.
Claim 10
Dependent Claim
348 words
In a graphics subsystem having framebuffer storage organized for storing signals specifying the pixels (x,y) of an X×Y raster framebuffer, said storage being sequentially addressable as a plurality of framebuffer pixel update arrays which tile the framebuffer, including a plurality of horizontal rows of update arrays forming an array of said update arrays, each said update array having a determined origin with respect to said framebuffer and comprising storage sites for specifications of a plurality of contiguously positioned framebuffer pixels, each said storage site being specifiable by an offset with respect to said update array origin, pixel specifications for all the storage sites of a said update array being concurrently updatable in a parallel memory transaction, a method of accessing from among said update arrays a subset which tiles a geometric figure to be drawn to said framebuffer, comprising the steps: (6-1) performing the steps of claim 5 until in a first horizontal subset of arrays, all arrays to which the geometric figure is mapped have been accessed, (6-2) reading said stored array address marked for upward continuation of said figure, accessing the update array vertically above the specified array, storing a specification of the address of said array marked as initial, and repeating steps (5-2)-(5-7) of claim 5 with respect to the current accessed array until a next horizontal subset of arrays to which the geometric figure is mapped has been accessed, (6-3) repeating step (6-2) for further horizontal subsets until there are no further stored addresses marked for upward continuation of said figure, (6-4) popping to the stored array address marked for downward continuation of said figure of the first horizontal subset, accessing the update array vertically below the specified array, storing a specification of the address of said array marked as initial, and repeating steps (5-2)-(5-7) of claim 5 with respect to the current accessed array until a next horizontal subset of arrays to which the geometric figure is mapped has been accessed, and (6-5) repeating step (6-3) for further horizontal subsets until there are no further addresses marked for downward continuation of said figure.
Claim 11
Dependent Claim
281 words
In a graphics subsystem having framebuffer storage organized for storing signals specifying the pixels (x,y) of an X×Y raster framebuffer, said storage being sequentially addressable as a plurality of framebuffer pixel update arrays which tile the framebuffer, including a plurality of horizontal rows of update arrays forming an array of said update arrays, each said update array having a determined origin with respect to said framebuffer and comprising storage sites for specifications of a plurality of contiguously positioned framebuffer pixels, each said storage site being specifiable by an offset with respect to said update array origin, pixel specifications for all the storage sites of a said update array being concurrently updatable in a parallel memory transaction, a method of testing whether a geometric figure to be drawn to the framebuffer, mapped to a first said update array, is mapped to a neighboring update array adjacent to said first array with respect to the framebuffer, comprising: specifying said geometric figure by specifying with respect to said framebuffer a set of directed lines such that the segments of said lines between their mutual intersections comprise the boundary of said figure, specifying for said first update array with respect to said adjacent array, a pair of sample framebuffer pixels, comprising a corner pixel of said first update array which is adjacent said neighboring update array, and a second sample pixel which is adjacent said neighboring update array and adjacent said first update array, evaluating, for each specified directed line, the sidedness of said sample pixels with respect to said directed line, and when at least one of said sample pixels is inside with respect to each said directed line, accessing said adjacent update array.
Claim 12
Dependent Claim
281 words
In a graphics subsystem having framebuffer storage organized for storing signals specifying the pixels (x,y) of an X×Y raster framebuffer, said storage being sequentially addressable as a plurality of framebuffer pixel update arrays which tile the framebuffer, including a plurality of horizontal rows of update arrays forming an array of said update arrays, each said update array having a determined origin with respect to said framebuffer and comprising storage sites for specifications of a plurality of contiguously positioned framebuffer pixels, each said storage site being specifiable by an offset with respect to said update array origin, pixel specifications for all the storage sites of a said update array being concurrently updatable in a parallel memory transaction, a method of testing whether a geometric figure to be drawn to the framebuffer, mapped to a first said update array, is mapped to a neighboring update array adjacent to said first array with respect to the framebuffer, comprising: specifying said geometric figure by specifying with respect to said framebuffer a set of directed lines such that the segments of said lines between their mutual intersections comprise the boundary of said figure, specifying for said first update array with respect to said adjacent array, a pair of sample framebuffer pixels, comprising a corner pixel of said first update array which is adjacent said neighboring update array, and a second sample pixel which is adjacent said neighboring update array and adjacent said first update array, evaluating, for each specified directed line, the sidedness of said sample pixels with respect to said directed line, and when at least one of said sample pixels is inside with respect to each said directed line, accessing said adjacent update array.