Claims
- 1. In a raster-scan computer graphics display system having a display memory that includes a frame buffer, a method of storing video data in said frame buffer, where the video data corresponds to at least one rectangular video window on a display, and displaying said video data on a graphics display so as to obscure a portion of the graphics display with the video data, comprising the steps of:
- (a) writing graphics data to the frame buffer;
- (b) establishing boundary limits of said at least one rectangular video window;
- (c) writing video data to a video data memory situated within said frame buffer in the place of obscured graphics data;
- (d) generating refresh addresses corresponding to pixel locations on said display; and
- (e) providing the graphics data as an output when the refresh address corresponds to a pixel situated outside of said at least one rectangular video window, and providing the video data as an output when said refresh address corresponds to a pixel situated within said at least one rectangular video window.
- 2. The method of claim 1 wherein:
- said video data are logically divided into a series of video lines,
- step (a) includes writing a graphics line width value to a graphics line pitch register; and
- step (c) includes incrementing a video destination address by the graphics line width value at the start of each video line subsequent to a first video line, such that each video line is written to an address that corresponds to a different display line within the video window.
- 3. The method of claim 1 wherein:
- step (b) includes storing an upper left corner position value in a window first position register and storing a lower right corner position value in a second position register.
- 4. The method of claim 3 wherein:
- step (c) includes writing the video data at an initial base address, the initial base address corresponding to the upper left corner position value.
- 5. The method of claim 4 wherein:
- step (c) further includes storing an upper left X (Xul) and Y (Yul) position values, and a lower right X (Xlr) and Y (Ylr) position values;
- step (d) includes generating X-Y pixel position values corresponding to the refresh addresses; and
- step (e) includes comparing the X-Y pixel position to th e Xul, Yul, Xlr, and Ylr values.
- 6. The method of claim 1 wherein:
- step (e) includes generating a series of video data addresses when the refresh address corresponds to a pixel within said at least one rectangular video window.
- 7. The method of claim 6 wherein
- step (e) includes multiplexing between the refresh addresses and the video data addresses.
- 8. The method of claim 1 wherein:
- step (b) includes
- storing a video base address value for the video data in a video base address register,
- in response to moving a video window from a first video window position to a second video window position, calculating an address offset between the first video window position and the second video window position,
- changing the video base address by the address offset to generate a second video base address, and
- changing the boundary limits by the address offset; and
- step (c) includes writing the video data for a following video frame to the frame buffer according to the second video base address.
- 9. The method of claim 1 further including:
- (f) in response to a change in the position of the displayed video from a first position to a second position,
- copying the video data to a second frame buffer position corresponding to the second position of the displayed video window, and
- changing the boundary limits according to the second position of the displayed video window.
- 10. In a raster-scan computer graphics display system having a display memory that includes a frame buffer, a system for writing and displaying video data and graphics data in a single frame buffer, comprising:
- a refresh address generator for generating a series of refresh addresses;
- video window registers for storing position limits of at least one video window;
- a window detect circuit for providing an indicator signal when the refresh addresses are within the limits of a video window;
- a video data base address register for storing a base address of the video data, the base address being located within the limits of the video window;
- a video data width register for storing a video data line width value;
- a video data line offset register for storing a video line offset value;
- a video data address counter responsive to the first indicator signal for generating a series of video data addresses equal to one video data line according to the video data line width value, for each frame, said video data address counter initially starting at the base address and incrementing the base address by video line offset values to generate start addresses of subsequent video data lines; and
- an address multiplexer for receiving the refresh addresses and the video data addresses as inputs, said address multiplexer providing the video data addresses as an output in response to the first indicator signal, and the refresh addresses when no first indicator signal is present.
- 11. The system of claim 10 wherein:
- the video data line offset register stores a video line offset value that is equal to an offset between display lines in the frame buffer.
- 12. The system of claim 10 further including:
- an X-Y position counter for generating a series of X-Y positions, the X-Y positions corresponding to the refresh addresses;
- a plurality of video window limit registers for storing the limits of the video window as X-Y values; and
- said window detect circuit compares the X-Y positions with the values in the window limit registers.
- 13. The system of claim 10 further including:
- a Y scaling circuit for generating a next video line signal according to Y scaling value;
- the video line offset value in said video data line offset register is equal to an offset between display lines in the frame buffer; and
- said video data address counter increments the start address of subsequent video data lines by the video line offset value according to the next video line signal.
Parent Case Info
This application is a continuation of application Ser. No. 08/ 508.034, filed Jul. 27. 1995, now abandoned.
US Referenced Citations (2)
Number |
Name |
Date |
Kind |
5506604 |
Nally et al. |
Apr 1996 |
|
5559954 |
Sakoda et al. |
Sep 1996 |
|
Continuations (1)
|
Number |
Date |
Country |
Parent |
508034 |
Jul 1995 |
|