Method for displaying single monitor applications on...

Electrical computers and digital processing systems: interprogra – Device driver communication – Video graphics device driver

Reexamination Certificate

Rate now

  [ 0.00 ] – not rated yet Voters 0   Comments 0

Details

Reexamination Certificate

active

06823525

ABSTRACT:

FEDERALLY SPONSORED RESEARCH OR DEVELOPMENT
Not Applicable
COMPUTER PROGRAM LISTING APPENDIX
A preferred embodiment of this invention is described in C++ language source code program files named DDMulti.c and DDMulti.h, which are incorporated herein by reference and copies of which are stored on each of two identical appended CD-R compact disks labeled “Copy 1” and “Copy 2” that were created Oct. 23, 2000. On each disk, the file named “DDMulti.c” was created Jul. 6, 1999 and contains 44,620 bytes and the file named “DDMulti.h” was created Jul. 6, 1999 and contains 3,265 bytes.
TECHNICAL FIELD
This invention relates to computer systems employing a graphical user interface (“GUI”) operating system and, in particular, to a method for driving multiple monitors from application programs that are, otherwise, limited to driving a single monitor.
BACKGROUND OF THE INVENTION
Computer systems now commonly include GUI operating systems that employ graphical objects, such as icons, windows, and dialog boxes, to prompt and receive user input. A user typically enters information by positioning a cursor within a designated area of a graphical desktop—e.g., by using a mouse, trackball, finger, stylus, direction keys or the like—to implement a desired function. GUI operating systems, such as MicroSoft® Windows@, have gained widespread acceptance because of their simple, intuitive operation and because they allow easy movement between multiple applications programs.
GIU users have responded to this flexible usability by demanded operating systems with enhanced desktop functionality, i.e., an operating system working area larger than the display area of a single monitor. One way of implementing an enhanced desktop is by utilizing multiple monitors or by employing a virtual desktop area where the display area of a single monitor can be “scrolled” across a larger graphical desktop. Such enhanced desktop systems achieve greater display capability without the expense or inconvenience of a single, larger monitor. Unfortunately, prior GUI operating systems were not specifically adapted for multiple monitor enhanced desktop operation and were often highly hardware dependent.
Solutions to the multiple monitor enhanced desktop problems are described in U.S. Pat. No. 5,835,090 for DESKTOP MANAGER FOR GRAPHICAL USER INTERFACE BASED SYSTEM WITH ENHANCED DESKTOP, which is assigned to the assignee of this application and is incorporated herein by reference. However, GUI operating systems and graphics-intensive applications running on them require considerable computer processing power. Indeed, the performance demands of users and graphic application developers have outstripped the performance capabilities of most processors, especially when operating a multiple monitor GUI operating system.
MicroSoft® has addressed many of the performance aspects of application programs by developing the DirectX® family of application program interfaces (“APIs”), which provide Windows-based software applications with direct access to display hardware resources. DirectX provides developers with a common set of instructions and software “components” that allow applications, such as multimedia applications, to run on any Windows-based personal computer (“PC”) while ensuring that the applications take full advantage of any high-performance hardware capabilities to achieve the best possible performance.
DirectX® includes a wide variety of multimedia enabling technologies including DirectDraw®, Direct3D®, DirectInput, DirectSound®, DirectPlay®, DirectMusic®, DirectShow®, and DirectAnimation® to optimize the displaying graphics and video information. The DirectX Foundation layer components, DirectDraw and Direct3D, are of general importance, and the Media layer component, DirectShow, is importance for displaying graphics and video, particularly streaming video applications. In general, DirectX components have enabled the development of a new generation of high-performance gaming and video applications through the use of DirectDraw, Direct3D, and DirectShow calls.
Unfortunately, DirectX APIs running under Windows 95 and Windows NT 4.0 assume a single display monitor and are, therefore, incompatible with systems driving multiple monitors. More specifically, DirectX and applications written to DirectX, assume that only one graphics frame buffer is available for driving the single monitor. In DirectX, a complex sequence of calls (simply referred to hereafter as “GetFrameBufferAddress”) allow DirectX applications to locate and access the single frame buffer. Graphic device drivers must support the GetFrameBufferAddress calls because they are used to write data directly into frame buffer memory, bypassing the typical Graphic Device Interface (“GDI”) and, thereby, providing accelerated performance.
However, the graphics device driver can return only a single frame buffer address in response to the GetFrameBufferAddress calls, and most multiple monitor driver cards employ two or more frame buffers to implement multiple monitor displays. This begs the question, which of the two addresses does the multiple monitor device driver return? If the driver returns the address of the first frame buffer and the DirectX application is displaying through another frame buffer, or vice versa, display errors will occur. The alternative is to sacrifice hardware acceleration and employ the GDI to perform DirectX operations with processor resources, which dramatically increases processor utilization and decreases performance.
SUMMARY OF THE INVENTION
An object of this invention is, therefore, to provide a method for providing application programs with direct access to multiple display monitors running under a GUI operating system.
Another object of this invention is to provide a multiple monitor operating environment for applications employing MicroSoft® DirectX® APIs.
A further object of this invention is to provide a multiple monitor operating environment for DirectX® applications running under the MicroSoft® Windows® operating system.
A direct access driver of this invention solves the limitations of DirectX operation under the Microsoft architecture when using multiple monitors. The direct access driver allows applications employing DirectX APIs to employ hardware acceleration without display errors on any of the multiple monitors. As described in the background of this invention, display errors can occur if multiple frame buffer addresses are returned in response to “GetFrameBufferAddress” DirectX calls. The direct access driver of this invention returns a single address for two or more frame buffers on a display driver card by performing, without the DirectX application's knowledge, background operations that track the demand for hardware acceleration from two or more GUIs and frame buffers. The background operations entail constantly changing the frame buffer pointers relative to the location of offscreen DirectX application data, while one or more DirectX applications are moved in the display space from monitor to monitor. This is analogous to accurately tracking one of many moving objects in an extremely fast-moving shell game.
Additional objects and advantages of this invention will be apparent from the following detailed description of a preferred embodiment thereof that proceeds with reference to the accompanying drawing.


REFERENCES:
patent: 5018076 (1991-05-01), Johary et al.
patent: 5432900 (1995-07-01), Rhodes et al.
patent: 5581766 (1996-12-01), Spurlock
patent: 5835090 (1998-11-01), Clark et al.
patent: 5923307 (1999-07-01), Hogle, IV
patent: 5949437 (1999-09-01), Clark
patent: 6240468 (2001-05-01), Capelli
patent: 6297817 (2001-10-01), Larson et al.
patent: 6411302 (2002-06-01), Chiraz
patent: 6510470 (2003-01-01), Capelli
N. Thompson, “Ride the WinG for Speedy Graphics”, MSDN, Sep. 1994, pp (4).*
S. Diehl, “Window 95 Graphics Architecture”, BYTE magazine, Jun., 1995, pp. (4).*
“AppianDX; A Solution for DirectX Display Across Multiple Monitors,” an in-house white paper by Lisa Epstein, Sr. Product Manager, Appi

LandOfFree

Say what you really think

Search LandOfFree.com for the USA inventors and patents. Rate them and share your experience with other people.

Rating

Method for displaying single monitor applications on... does not yet have a rating. At this time, there are no reviews or comments for this patent.

If you have personal experience with Method for displaying single monitor applications on..., we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Method for displaying single monitor applications on... will most certainly appreciate the feedback.

Rate now

     

Profile ID: LFUS-PAI-O-3363441

  Search
All data on this website is collected from public sources. Our data reflects the most accurate information available at the time of publication.