Emulating screen overlays by flip-mapping memory
First Claim
1. A method of managing background and foreground images in a graphics display system, the method comprising the steps of:
- copying image data corresponding to at least a portion of a background image which is intended to be covered by at least a portion of a foreground image from an on-screen memory portion to a save-under area;
covering said at least a portion of said background image with at least a portion of said foreground image;
routing modified image data to said save-under area when said modified image data corresponds to said portion of said background image covered by said portion of said foreground image; and
routing said modified image data to said on-screen memory portion when said modified image data corresponds to a portion of said background image not covered by any portion of said foreground image.
6 Assignments
0 Petitions
Accused Products
Abstract
A method and apparatus for managing background and foreground display images. Graphics memory for images which are rendered in software is referenced by a processor using an MMU (memory mapping unit) having MMU tables. The graphics memory includes a portion for on-screen display, and a portion which can be written into but which is not displayed. When a background image is overlaid by a foreground image, the portion of the background image overlaid is copied to a save-away area, and the MMU tables are altered so that software rendering of the background image automatically occurs in the save-away area. However, the foreground image is written directly into the on-screen display area by rendering hardware. This allows the software-rendered image to be kept up to date, and allows data for the software-rendered image not to be lost during the time the background image is covered up. When the background image is no longer overlaid by the foreground image, the portion of the background image which was overlaid is copied back from the save-away area to the on-screen display area. The MMU tables are altered so that software rendering of the background image thereafter automatically occurs in the on-screen display area This allows the software-rendered image to be quickly displayed on screen in its updated form.
57 Citations
29 Claims
-
1. A method of managing background and foreground images in a graphics display system, the method comprising the steps of:
-
copying image data corresponding to at least a portion of a background image which is intended to be covered by at least a portion of a foreground image from an on-screen memory portion to a save-under area;
covering said at least a portion of said background image with at least a portion of said foreground image;
routing modified image data to said save-under area when said modified image data corresponds to said portion of said background image covered by said portion of said foreground image; and
routing said modified image data to said on-screen memory portion when said modified image data corresponds to a portion of said background image not covered by any portion of said foreground image. - View Dependent Claims (2, 3, 4, 5, 6, 7, 23, 24)
-
-
8. A method of managing background and foreground images in a graphics display system, the graphics display system having a memory that includes an on-screen memory portion and an off-screen memory portion, the memory storing the background and foreground images and the graphics display system using the on-screen memory portion as a source of images for display, comprising the steps of:
-
copying a portion of a background image to be overlaid by a foreground image from the on-screen memory portion to a save-under area within the off-screen memory portion;
routing software references using an MMU which correspond to said portion of the background image to be overlaid to said save-under area, said step of routing enabling said portion of the background image to be overlaid in said save-under area to be written to when said background image is rendered;
rendering the background image to the on-screen memory portion and to the save-under area in response to said software references; and
rendering the foreground image to the on-screen memory portion. - View Dependent Claims (9, 10, 11, 12, 13, 14, 25, 26)
removing the foreground image by copying contents of said save-under area to the on-screen memory portion; and
routing said software references to the on-screen memory portion.
-
-
10. The method in claim 8, wherein said step of routing includes updating an MMU table.
-
11. The method in claim 8, wherein said step of rendering the background image and said step of rendering the foreground image occur substantially simultaneously.
-
12. The method in claim 8, wherein said step of routing includes determining when said portion of the background image to be overlaid is being rendered and altering the software references to refer to the save-under area instead of the on-screen memory portion.
-
13. The method in claim 8, wherein said step of rendering the background image is performed by a computer system operating under program control and wherein said step of rendering the foreground image is performed by the graphics display system using hardware control.
-
14. The method in claim 8, wherein said step of rendering the background image and said step of rendering the foreground image are performed by a computer system operating under program control, said computer system using software references to perform said steps of rendering.
-
25. A method as in claim 8, wherein said routing is performed by said MMU so as to allow an application program to generate said background image without regard to what portion of said background image is intended to be overlaid.
-
26. A method as in claim 8, wherein said background image is generated under control by an application program, and said foreground image is rendered by a graphics controller independent of control by said application program.
-
15. An apparatus having a program recorded in a computer-readable medium for laying out a page, the apparatus comprising:
-
means for copying a portion of a background image to be overlaid by a foreground image for the on-screen memory portion to a save-under area within the off-screen memory portion;
means for routing software references using an MMU which correspond to said overlaid portion of the on-screen memory to said save-under area, said step of routing enabling said overlaid portion in said save-under area to be written to when said background image is rendered;
means for rendering the background image to the on-screen memory portion and to the save-under area in response to said software references in said step of routing; and
means for rendering the foreground image defined within said on-screen memory portion onto said overlaid portion.
-
-
16. A computer system for managing background and foreground images in a graphics display system, the system comprising:
-
an on-screen memory portion;
a save-under area; and
an image data router responsive to software references corresponding to image data, said image data router sending said image data to said save-under area when said image data corresponds to at least a portion of a background image that is overlaid by at least a portion of a foreground image. - View Dependent Claims (17, 18, 19, 20, 21, 22, 27, 28)
-
-
29. An apparatus having a program recorded in a computer-readable medium for laying out a page, the apparatus comprising:
-
means for copying a portion of a background image to be overlaid by a foreground image from the on-screen memory portion to a save-under area within the off-screen memory portion;
means for routing software references using an MMU which correspond to said portion of the background image to be overlaid to said save-under area, said means for routing enabling said portion of the background image to be overlaid in said save-under area to be written to when said background image is rendered;
means for rendering the background image to the on-screen memory portion and to the save-under area in response to said software references; and
means for rendering the foreground image to the on-screen memory portion.
-
Specification