CA1307849C - Apparatus for extending windows using z buffer memory - Google Patents

Apparatus for extending windows using z buffer memory

Info

Publication number
CA1307849C
CA1307849C CA000601219A CA601219A CA1307849C CA 1307849 C CA1307849 C CA 1307849C CA 000601219 A CA000601219 A CA 000601219A CA 601219 A CA601219 A CA 601219A CA 1307849 C CA1307849 C CA 1307849C
Authority
CA
Canada
Prior art keywords
window
memory
information
output display
register
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CA000601219A
Other languages
French (fr)
Inventor
Thomas E. Westberg
Serdar Ergene
Szu-Cheng Sun
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sun Microsystems Inc
Original Assignee
Sun Microsystems Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sun Microsystems Inc filed Critical Sun Microsystems Inc
Application granted granted Critical
Publication of CA1307849C publication Critical patent/CA1307849C/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/14Display of multiple viewports

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Human Computer Interaction (AREA)
  • General Engineering & Computer Science (AREA)
  • Controls And Circuits For Display Device (AREA)
  • Digital Computer Display Output (AREA)

Abstract

ABSTRACT OF THE DISCLOSURE

A computer system which has a display memory for storing information to be presented on an output display, and a full screen bitmapped window identification memory for storing information regarding window position on an output display, and uses circuitry for comparing incoming information with information stored in the window identification memory to determine whether the incoming information should appear in a particular window of the output display,and also includes a second full screen bitmapped memory normally utilized for storing information indicative of other than window position on an output displayutilizes circuitry for selectively storing information in the second memory regarding window position on the output display when additional windows are required.

Description

1 3078~9 APPARAT~IS FQR~XTENDING WIN~QW~ l~INQZ B~F~R M~MORY

This invention r~lates to logic circuitry and, more particularly, to logic 5 circuitry which rnay be utiliz~d to increase the number of windows which may be displaysd by a comput~r system.

is~of th~ Prior Ar~
One common interface used for oomputer operation utilizes multiple 10 ~windows" display~d on a cathode-ray tube to repres~nt individual computer applications. In a system using windows, mor0 than one program at a tirne is plac~d in a portion of memory available for instant call. Th~ texl and graphics output o~ ~ach sueh program is made to app~ar in a window, a paRicular s~t o~
defined bourldari~s on the screen. Usually, the computer opera~or is operating a15 sin~le one of ~hese programs but may switch (often by a single k~ystroke~ to anothar program in anoth~r window ~o work with that program, ~o call data Srom that pro~ram, to plac0 data in that program, or for any numb~r of other r~asons.Each window may overlap other windows with th~ "~ront window" constituting th0 current aotive work llil~. Th~ user may add or delete information from th~ current 20 window, add n~w itams to th~ window, refile th~ window in anoth~r location, and, ~anerally, per~orm any other operations on the program in the winclow as he mi~ht were ther~ no o1h~r window~.
Windowin~ systems hav~ b~en found to b~ quita use~ or advanced ¢omputer operation~. For exampl~, a ~killed computer operator flnds ~ndowing :25 syst~ms to be quite useful for providing rapid shifting betwaen different programs and docunn~nts. In a sys~m which do~s not use windowing, ~hs op~rator usually has to close: on~ pro~ram before h~ may call up a n~w prograrn in order to work with the n~w program. Thi~ tak~s a substan~ial amount of time. Moroov~r, a primary reason for switchin~ b~tw33n programs is t9 transfer data and ~raphic 1 3078~9 images between programs. A syst~m which does no~ utilize windowing does not usually allow the ~asy transfer of information be~wesn programs.
It was, among other things, to make the op~ration of comput~rs more rapid and to facilitate th~ transfer of data between documen~s and pragrams that 5 windowin0 system were devised.
For complica~d tasks, it is oRen desirable to have running at the same time any numb~r of windows, ~ach with its diff~rent individual program or document, just as ons might have many individual documents on on~'s dssk for use in complcting a parlicular task. However, most windowing systems are 10 incapable of providing more than a limited number of windows which may be acc~ss~d at ona time. For example, a system disclosed in cop~nding patent application Serial Number 599,864 , ~ntitled ~Apparatus tor Rapidly Clearing 1he C)~nput Display of a Computer Syst~m", William Joy, et al., filed May 16,1989 and assi~nad to th~ Assign~e of the present inv3ntion has circuitry 15 which allows a total of sixteen windows to be u~ilized at a time. Cons~quently, such syslems still r~quire, although to a lesser d~gr~e, that th~ oparator switch betwaen pro~rams by closing ona program befor~ opening anoth~r wherc more ~han six~a~n programs or documents ar~ involved.
I~ is, ther~fore, an object of ~he present invention to provide a comput~r 20 syst~m which includes logic circuitry defining a windowing system whioh allows th~ seiec~ion of an essentially unlimited numbar of windows.
It is anoth~r object of this inv~ntion to provide a comput~r systam capable of handlin~ ~ lar~e number of programs or docum~nts at on~ tima.
An additional obj~c~ of tha pr~scnt inv~ntion is ~o provide lo~ic circuitry for ZS a computer systam which may be sclectiv~ly utilized for increasin~ the number of windows available at ona tim~.
:

=~!Q~
Thase and o~her objects of the invention ars accomplishad in a compu~er system which includes a display memory for storin~ information to be presented on an output display, a window identification mernory for storing infornation ~' 5 regardin~ window position on an output display, a window identifieation register ~or storing window identification numbers indica~ive of the window in which a particular piace of data is ~o appear, a window id~ntification comparator for determining if a number in the window iden~ification register is equal to a window identification mJmber at a particular pixel in the window identification register, a Z
10 buffer memory for storing information indicative of tha depth of inform~tion to appear on an output display, a Z buffer r~gister for storing inforrnation indicative of the depth of each piece of information, a Z buffer comparator for determiningwhather the informativ~ in the Z buffer register is at a de,~h equal to or less than the depth of the information storéd in the Z buffer memory, a window extension 15 re~is~er for storing a window numb~r great0r than is capable of storage in the window identification ragister, a control r~gister for causin~ the storags of window identification numbers in ths Z buff0r memory, a window extension comparator for companng numbers storad in ~he window extsnsion register with numb0rs stored in ~he Z buffer m0mory, and write enabie circuitry responsive to 20 the window identifioation comparator, the Z buffer comparator, and the windowextansion eompar~tor ~or causing inform~tion to be written to the window ; ~ identification mamory, ~he Z buff~r memory, and the display memory.
Thase and other ~eatures and advantages of ~ha present inYention will become apparQnt to thos~ skillGd in the arl up~n reading ths Sollowin~ detailed ZS d3scnption in conjunction with the several 7iglJras of ths drawin~.
: :

::

1 30784q In the l)rawln~
Fi~ure 1 is a block diagram illustrative of an arrangement for provid~ a plurality of windows disclos~d in a copendin~ patant application.
Fl~ure 2 is a block diagram illustrating an arrangament in accordance 5 with ~hs invention for increasing the number of windows available for display at the output of a computer system.
Fi~ure 3 is a pictorial illustration of the areas mapped out by storage of window numbers in ~ha window identification memory where a window e)dension system is utilized in accordance with the present inv~ntion.
Fl~ure 4 is a pictorial illustration of th~ areas mapped out by storage of window numbcrs in ths Z buffer memory where a window ~xtension system is utilkad in accordanca with the prasant invention.
Figure 5 is a truth table which may b0 utilized in understanding the operation of the circuitry of Figur~ 2.
1 S Fi~ure S is a diagram illustrating tha bit siz~ of ths windows and depthindications which may ba stored together in the Z buffer mcmory in one sp~cific embodiment of ~he InvenSion.

.

Referrin~ now to Fi~ure 1 thare is shown a windowing system for use in a computar syst~m such as that illustrat~d in the copending patent application refer~ed to above assigned ~o the assignee of the pr~sen~ patent application.
Fl~ure 1 illustrates a window identific~tion output syst~m 10 which is utilized to provido output signals to a c~hode ray tube (CRT) 12 which displays the differ~nt windows.
To produce an output on a computer output display, ~h~ screen full of images or tex~ is r~pr~s~nt~d in a block of memory known as a "bitmap~. In its sirnplest form, each picture el~mant ~pixel~ on the screen must be r~presented by a memory bit. For example, if the display scre~n has 1024 by 1 û24 pix~ls, then slightly more than on0 million bits of memory are n~c~ssary to rspresent ~ach scre~n. In order to produce a color output, it is usual to have a number of bits of l 5 m~mory for cach pixel of the display memory. In a preferred embodim~nt, ~ach display memory may include twenty-four bits o~ storage for storin~ ~olor information at ~ach pixsl. This is r~ferred to as a ~4 bit RGB color value. To store ?
these 24 bit RGB color values, the system 10 includes a pair of double-buffered display memories 14 and 16, each of which includes a full bitmapped memory and ar~ ~f~rrad to as m~mori~s A and ~. Th~ syst~m 10 also includes a window identification (WID) register 18 which in a preferred embodim~nt storss four bits of In~ormation and a window identific~tion ~NID) mernory 20 which in tho pref~ned embodirn~nt comprises a liull s~r~en bitmapp0d m~mory which Iso stor8s ~our ~ bits of information for aach pixel.
A window id~ntification (WID) comparator 22 receives 9utput signals from tha WID r~ister 18 and the WID mernory 20. Th~ system 10 also includ~s a multiplexor 24, the cathsde ray tlub~ 12, writ~ enable !o~ic 26 for ~el~ctive~
enablin~ the w~itin~ of information to each o~ the display memonies A and B and ~: the window Tdentification mamory 20" and a control re~i~ter 2B for controlrlng the 3 0 op~ration o~ th0 system 10.

1 30784q In operation, windows are first sal~ct~d by values providad from a central processin~ unit (CPU). These values include both a pixel addrcss and a window idsntification number for each pixel to be included within ths window. The window id~ntification numb~r is writt~n to each corresponding pix~l Iyin~ wi~hin5 the boundaries of thc particular window in th~ window identification m~mory.
Whsn a first window is written to th~ window identification memory, each memory position within that wind~w carries th~ window identification numb~r for tha~
window. When a next windew which lies in front of the first window is writ~en to~he window identificatien memory, the portions of the second window which 10 overlay the first are wrilten on top of tha overlapped memory pesition ef the first and, therefore, automatically cover and clip the first. After all of th~ windowsdesirad hav~ be~n stored in the window id~ntification memory, the window identification memory has stored indications as shown in the ~isplay of the CRT
in Fi~ure 1. For example, the first window to be defined in the window 15 id~ntification memery is shown as window 0 on the CRT, the second window (whlch overlays the first) as window 1, and the third window (which is in the foreground) as window 2.
Wh~n it is desired te write information to ths display memory for particular windows, thc information is wrinen inlo thc selact~d display memory A or B from 20 the CPU through ths data bus. The information includes a pixel addr~ss, an RGB
celor value as discvss~d above, and a window identification number. The window identiflcation numb~r is stored in the window identification re~ister 18 and compared to the window id~ntification numbar previously storad for th~t pixel in the window iden~ification memory 20. If th~ windew id~n~ification numbar 2S ~tored in the window id~ntification memory 20 is ghe sam~ as that in the window ~: idcntification r~ister 18, the compara1or circuit 22 causes the wri~e enable logic 26 to allow the FtGB in~ormation to be writ~cn to the addr~ssed pixal of the 8alsct~d display m~mory A or B. If 1he c~mparator Ci~Uitly 22 d~t~rmines that the wîndow Id~ntifica1îon number is not th~ sam~ as th~ number stored fsr that 30 pîxeî in the window id~n~ification m~mory 20, then the RGB in~rrnatîon is nst ~tored in th3 display memory. Cons~quently, only at thos0 addr~ss~s of the sel~cted display memory which are within each particular window to which the information is addressed will signals for tha~ window be written. The si~nal written to th~ display memory is ultimat~ly transferred frorn ths parRcular display memory 5 via a mul~iplexor controlled by the oontrol register 28 to the cathods ray tube 12 shown in Figure 1.
B0caus~ it utiiiz~s only four bits for storag~ of the window identification number, the system 10 illustrated in Fi~ure 1 is oapable of storing information r~lated only to sixteen windows, the total of unique binary numbers which may be10 represerlt~d in four bits. Obviously such a system cannot be utilized to prsvidP
more than sixteen windows at one time without modification. Moreover, it is avenmore obvious that the provision of a significantly larger nurnber of availabl~
window~ would render computer systams much more us~ful in many si~uations.
Th~ copending patent application referr~d to abovs also disclos~s an l 5 arran~ement for incorporating thre~ dimensional outpu~ displays on th~ system output devics. Th~ system incorporates apparatus for storing information indicativ~ of the depth of each pixel to b~ provided as ou~put for a particular display on the cathode ray tub~. Th~ particular system adds a Z buffer m~mory whiçh stores Z or depth information valu~s and a Z buffer comparator oircuit 20 which: compares Z buffer values stored in th~ Z buffer m~mory to n~w Z valucs: for each particular pixel. Th~ Z buffer compara~or looks at the old Z value a~ ~hat pixel position in th~ Z bu~er memory and compares it ~o the new Z valu~. If the Z
: ~ buffer comparison ~hows that ~he new Z number is less than or aqual to that which is stor~d in m~mory, than the n~w pix~l is in a position at ~he same plane or 25~ in tront of the pixol praviously wri1tsn; and tha write enable lo~ic is activated to : ~ writ~ th~ in~ormation r~arding that pixal to the appropriat~ dlsplay mamory snd the Z buffer memory.
.4n arran~sment has now b~en dcvised for lnilizing the Z buffar memory confi~uration as an ~x~ension of ~he window id~ntification m~mory to allow an 30 essentially unlimit~d numb~r of windows to be utiliz~d at one time so that switchin3 b0tw~en diff~rent pregrams and documents may be greatly enhanced and the time to aceomplish th0 switching ~reatly r~duoed.
Th~ normal Z buffer memory is a full screen display memory which, iike the ~isplay memories and the window memory previously disoussed, stores at each position r~pr~senting 2ach pixel an indic~ion of th~ par~icular position that pixel is to tak~ alon~ the Z-a~tis. In ~he pref~rred embodim~nt of this inv~ntion, ths Z
buffer memory stores twenty-four bits for each pixel. It will be apprecia~ed that this size of memory can stor~ individual numbers which total substantially greater than the sixteen uniqu~ numbers which can be stcred in the window identificationmemory.` It will also be appreciated th~t any particular pro~ram or document maynot be operating in the three-dimensional domain and, eons~quently, lior that operation the Z buffer memory circuitry v~ll be unused.
The arran~ement illustrated in Fi~ure 2 may b~ utiliz~d to 0xploit the unused ~ buffar memory circuitry for expanding the ranye of windows which may l 5 be used with the system. Fi~ure 2 illustrates a sys~ern 40 which includes the display mamories 14 and 16, the WID me~nory 20, the WID re~ister 18, the WID
companson circuitry 22, the eontrol regis~er 28, and ~he write enable circuitry 26 which were used in th~ system 10 refarre~ to above in Fi~ure 1. The system 20 also includes a Z buff0r memory 42 and a Z buffer eomparision circuit 44.
In operation the circuitry of system ~0 functions as follows. Tha foli~wing discussion presumes that both th~ windcw identifioation 20 and tha Z buff~r func~ions have ba~n enabl~d and ~ith~r display memory A or B has becn seleeted by ~he CPU through setting of appropriate bi~s in tho control register 28.
The system 40 operat~s to first determin~ wheth~r data are within a p~rticular window and then to dstermine wheth~r tha data to be stored for that window lie in froht of data already stored for that window. The first step in any operation is to store th~ window idan~ifica~ion valu~s of ~e windows to be utiliz~d in the window identification m~mory. This i~ acoomplish~d by writin3 to th~ window identification m~mory 20 values from ths CPU whioh define the area of each of the windows to b~ utiliz~d.

1 30784~

When it is desir~d to write a pa~icular pixel to a display memory after the windows to be utiliz~d have bacn dafined, the CPU provides the pix~i address and color values alon~ with the Z (depth) valu~. In ths window idcntification comparator circuitry 22, th~ window number of that data is compar~d wlth the 5 window identification numbQr stor0d in the window identification memory 20 andif they ar~ equal (that is, th~ information at that pixel is in that window), then an enable signal is trans~erred to the write enable logic 26.
Presuming that the window comparison has provided an enable signal, it is n~cessary to mak~ a Z buffer comparison in ord0r to determine whether the 10 present pixel is in front of any pixel already stored. The Z buff~r comparison circuitry 44 compar~s th~ Z valu2 furnish~d by tll~ CPU with the Z value previously storad in the Z buffer memory 42 for that pixel. If the Z valuQ ~urnished by the CPU is ~qual to or less than that stored in th~ Z buffer memory 42, then the new si~nal is in the sam~ plane or in front of the data r~pres~nting the pixel l S pr~sently s~ored, and a signal is provided to c~use the writ~ enable lo~ic 26 to write the Z valua to th~ Z buffer mamory 42, and the color P~t3B value to the sel~cted display m~mory 14 or 16.
In situa~ions in which ~ha Z buffer memory 42 is not used because the informa~ion in a particular program is not three dimensional, the Z buffer mernory ZO 42 may ba utilized to ~xtend the number of windows which may be utilizsd in the ~ystem. This is aocomplished by th~ CPU writir~g an appropriate valu0 to the control ~e~ister 28 which indic~t~s that a window numb~r sxtension is d~sir~d.
This causes th0 control rs~ister 28 ~o enable the Z buffer memory 42 for use as a m0mory tor ~ ndin~ th~ numb~r o~ available w;indows. In such a cas~, the 2S unused menlory avaiiabl~ in the Z buffer memory 42 is utilizad to ~tor~ window numbers instead. Since the pr~ferred Z buffer memory 42 includas 24 bits of ~tora~e a~ each pixal, substantially lar~er numbers of windows may be storHd.
In ord~r to allow the Z buffer m~mofy 42 ~ hJnc~ion as a window memory, a window identi~ication extension eomparaior 46 and a window iden~ification 30 ex~ension ra~ist~r 48 ar~ add~d to ~ha systam 2û. Thas~ function in a mann~r .9_ I 3078~9 similar to the WID re~ist~r 18 and the WID comparator 22 to compar~ th~ window numbar stored in tha Z buffer m~mory with the extendad window numb0r of the incomin~ value to determine whsther the incoming Yalue is in the window to be written. If th~ incoming and th~ storsd window number are ~qual, th~n the value 5 is written to the display m~mory. If the values do not compare, ~hen the pixel is not in that window and is not writt~n to th~3 display memory. This arrangement allows very large window numbers to be ~ored and a consequently large numb~r of windows to be available without increasing thc size of the window memory 20.
In a preferred embodim~nt of the arrangement, when~ver it is desired to increasa the number of windows b~yond th~ normal number which may be stored in tha window identification memory 20, the CPU writes an appropriate value intothe control registar 28 indicating that windows ar~ to be provided b~yond the number whioh the window id~ntification m0mory 20 is capabls of handlin3.
15 Thereafter, window id~ntification valucs are represented by the contonts of the Wl :) memory 20 and ~he Z buffer memory 42, and the WID 0xtension register 48.
Each window identification value includes ~wenty~eight bits of information and is used for d~fining the r~gions occupied by the ~xlsnded windows in both the window identifieation memory 20 and the Z buffar mamory 42. Each such value 20 includ~s four bits of infom~ation ~or storag~ in th~3 window id0ntifica~ion memory 20 and twenty-foL3r b-~s of information for storaga in th~ Z buff~r m~mory 42. The portion o~ the value ~torad in the r~gion dafined for that window in ~he window iderltifcation memory 20 d~fines thl3 r~gion as a zero numbered window whil~ thetw~nty-four bit por~ion of the ~i~nal stored in the Z buffer indicates in ~he same 25 re~ion the ~c~ual window number. In this manner, the areas wi~h a ~our bi~ ~YID
value of 0 ar~ mapp0d by the system as those desi~nat~d for th0 ext3nded window numbers.
Thareafl~3r, wh~n it is d~sir0d to write to a window carryin~ an axtended number, th~ inform~tion includes with Tt ~w~r,~ ht bits ~or deflnin~ the wlndow 30 numbar. In ordsr to d~t~rmin~ whsth~r the is to be writt~n ~o ~he display memory, ~10-1 30784~
the twenty-eight bit extended window identification number for the pix01 (with the four MSB's and zeroes is sent to the WID sxtension register. The window number in thc WID extension register 48 is compared by the WID extension comparator 46 with the number stored in the WID memory 20 and the Z buffar rnemory 42 for 5 the particular pixei. lf the WID m~mory 20 indioates that a zero is stored for that pixel and ths Z buffar number is equal to the ramainder of tha extended window number in the WID exiension r~gister 48, th~n the information is written to selected display memory. In this manner the Z buffer memory 42 is utilized to ext~nd the number of windows which may be used with the system to an 10 extremely lar~e number.
Fi~ur~ 3 illustrates the areas mapped by storage of window numbers in the window identification mamory 20 where such a window ~xt~nsion system is utilized. Those areas indioated with zeroes are areaà ~or which ex~end~d window numbers are stored in the Z buffer memory 42. Fi~ure 4 illustrat~s the areas 15 mapped for th~ extended windows in the Z buffer memory 42. 1~ should be notedthat windows having window numbers 634, 653, and 712 fall in preoisely the areas definad for z~ro windows in the window identification memory.
An sxtension of th3 system 40 utilizes a window ext~nsion mask 50. This cirouitry receivas information from the CPU indicating the amount of th~ Z buffer 20 memoty 42 which is to be us0d for the windows exten~ion memory so that the remainin~ portion of th~ Z buffer memory 42 may b~ us~d for d~pth information.
Th~ window ~xtension mask 50 is a register which ~n~rols ~h~ cornparator 46 by determining which bits of the twen~y-ei~ht available should be used in ~he WID
extensiQn compara~or 46. Th~ cornplement of this mask, or th~ r~mainin~ bits of 25 the total twenty~ ht, defines lhe bits to use for the Z buffer comparatot 44. For example, it may be d~sirabls to have some numbet of windows ~reat~r 1han ~ixtesn but less than ~he total which can b~ s~ored in hNenty-four bi~s. The window ~xtension mask 50 may be utilized to selec:l ei~ht, twelYe, sixtaen. or tw~nty bits, for axampl~, of the Z buffer memoly 42 for us~ as ex~0nd~d window 30 memory. IF~r example, since aight bits of memory will store window numbers sufficient for ~wo hundred and fifty-six windows, the window extension mask 50 may be u~ilized ~o select eight bits frorn each pixel o~ the Z buffer memory 42 for window ext~nsion numbers leaving the remaining sixts~n bits for th~ storage of depth information.
Ftgure 6 illustrates various options which might be utilized using the window extension mask 50 in the systern of iFl~ure 2. In the first option, no window number extension is used. In the second, ~ight bits are us~d for the window number sxtension and sixte~n remain ~or the depth indication storage. In the third ~xample, sixteen bits are used for the window number extension while ~ight bits remain for depth indications. In the last example, all of the bi~s ar~ used to store depth in~ormation.
Fi~ure 5 is a tnJth table illustrating tho signals which may be present in the systsm 40 shown in Fi~ure 2 and the responses of the system 40 to those signals. The first oolumn indicates the signal provided by ~he CPU to the con~rol register. In the first row, ~his signal is a zero indicating no window ext~nsion is desir~d; in this cas~, if the numbers in the window id~ntification memory 20 andthe window comparator 22 are not equal, then regardless of the reelJlt of ~he window extension comparison and the ~ buMer comparison, nothing will be written ~o the sel~ct~d display memory and th~ Z buffer memory 42. In the n6xt ~- 20 two rows of the tabl~ where the ~ero si~nal indicates no window number extension but 1he WID c~mparator 22 indica~es that the window indicated by the incomin~ pix~l is aqual to tl~e window number stored at the position, the Z buffer m~mory 42 and the display memory 20 ar~ written in accordancs ~,vith the recultsdetermined by th~ ~ buffsr comparator 44.
In the next ~hre~ rows o~ th~ tabi~ of Fl~ure 5, the control re~ister ~8 receives a si~nal indicatin~ that ths window numb~r is to ba extend~d. In sueh asiltuation, the results provid~d by ths window id~ntification comparator 22 haveno effect on ~he infonnation to be writt~n. If th~ window ex~ension compa~ison shows unequal window numbets, th~n nothing is writtan to the Z buff~r memory ;~0 42 and ths display memory 20. If the window ex~nsion comparison shows that 1 30784~

the window number of the incoming signai and that stored in th0 WID memory 20 and the Z buffer memory 42 are equal, then the result of th~ Z buffer comparisondatermin~s what is written. Jf the Z buffer comparison shows th~ Z buffer memoryto hold the window ~x!ension number of the incoming signal, th0n the information5 is written to the display memory. If the numbers are different, the information signal is not written to the display memory.
Although the present invention has been describ~d in terms of a preferred embodimant, it will be appreciatQd that various modifications and alterations might be mads by those skilled in the art without departing from the spirit and 10 scop0 of th~ invention. The invention should therefora be measured in terms of ~he clairns which follow.

Claims (20)

1. A computer system comprising a display memory for storing information to be presented on selected window positions on an output display; a window identification memory for storing information regarding window position on an output display; a window identification register for storing window identification numbers indicative of the window in which a particular piece of incoming data isto appear; a window identification comparator for determining if a number storedin the window identification register is equal to a window identification numberstored at a particular pixel in the window identification memory; a Z buffer memory for storing information indicative of the depth of information to appear on an output display; a Z buffer register for storing information indicative of the depth of each piece of incoming data; a Z buffer comparator for determining whether the information in the Z buffer register is at a depth equal to or less than the depth of the information stored in the Z buffer memory; a window extension register for storing: a window number greater than is capable of storage in the window identification register; a control register for causing the storage of window identification numbers In the Z buffer memory; a window extension comparator forcomparing numbers stored in the window extension register with numbers stored in the Z buffer memory; and write enable circuitry responsive to the window identification comparator, the Z buffer comparator, and the window extension comparator for causing: information to be written to the window identification memory, the Z buffer memory, and the display memory.
2. A computer system comprising a display memory for storing information to be presented on an output display, a full screen bitmapped windowidentification memory for storing information regarding window position on an output display, the window identification memory being capable of storing a first number of bits of information regarding each pixel of the output display, means for comparing incoming information with information stored in the window identification memory to determine whether such information should appear in a particular window of the output display, a Z buffer memory normally utilized forstoring information indicative of the depth of information to appear on an output display, the Z buffer memory being a full screen bitmapped memory capable of storing a second number of bits of information regarding each pixel of the output display greater than the first number of bits of information, and means for selectively storing information regarding window position on the output display in the Z buffer memory.
3. A computer system as claimed in claim 2 further comprising means for enabling selected number of bits at each position of the Z buffer memory to store information regarding window position on the output display.
4. A computer system as claimed in claim 3 in which the means for enabling selected numbers of bits at each position of the Z buffer memory comprises a window extension mask.
5. A computer system as claimed in claim 2 in which the means for selectively storing information regarding window position on the output display in the Z buffer memory comprises a Z buffer register normally used for storing information indicative of the depth of each piece of incoming information; a Z
buffer comparator normally used for determining whether the information in the Zbuffer register is at a depth equal to or less than the depth of the informationstored in the Z buffer memory; a window extension register for storing a window number greater than is capable of storage in the window identification register; a control register for causing the storage of window identification number in the Z
buffer memory; a window extension comparator for comparing number stored in the window extension register with number stored in the Z buffer memory; and write enable circuitry responsive to the window identification comparator, the Zbuffer comparator, and the window extension comparator for causing information to be written to the window identification memory, the Z buffer memory, and the display memory.
6. A comparator system as claimed in claim 5 further comprising means for enabling selected number of bits at each position of the Z buffer memory to store information regarding window position on the output display.
7. A computer system as claimed in claim 6 in which the means for enabling selected numbers of bits at each position of the Z buffer memory comprises a window extension mask.
8. A computer system comprising a display memory for storing information to be presented on an output display, a full screen bitmapped windowidentification memory for storing information regarding window position on an output display, the window identification memory being capable of storing a first number of bits of information regarding each pixel of the output display, means for comparing incoming information with information stored in the window identification memory to determine whether the incoming information should appear in a particular window of the output display, a second full screen bitmapped memory normally utilized for storing information indicative of other than window position on an output display, the second memory being a full screen bitmapped memory capable of storing a second number of bits of information greater than the first number regarding each pixel of the output display, and means for selectively storing information in the second memory regarding window position on the output display.
9. A computer system as claimed in claim 8 further comprising means for enabling selected numbers of bits of each position of the second memory to store information regarding window position on the output display.
10. A computer system as claimed in claim 9 in which the means for enabling selected numbers of bits of each position of the second memory comprises a window extension mask.
11. A computer system as claimed in claim 8 in which the means for selectively storing information in the second memory regarding window position on the output display comprises a first register for storing window position information from each piece of incoming information, a first comparator circuit, a window extension register for storing window position information regarding a window number greater than is capable of storage in the first register, a control register for causing the storage of window identification numbers in the second memory, a window extension comparator for comparing window position information stored in the window extension register with window position information stored in the second memory, and write enable circuitry responsive to the first comparator, the comparator, and the window extension comparator forcausing information to be written to the window identification memory, the second memory, and the display memory.
12. A computer system as claimed in claim 11 further comprising means for enabling selected numbers of bits of each position of the second memory to store information regarding window position on the output display.
13. A computer system as claimed in claim 12 in which the means for enabling selected numbers of bits of each position of the second memory comprises a window extension mask.
14. A computer system comprising a first full screen bitmapped memory for storing information to be presented at an output display; a second full screen bitmapped memory for storing information regarding window position on an output display, the second memory having a limited number of bits to represent each pixel of the output display; a first register for storing input signals indicative of the window in which incoming data is to appear; a first comparator for determining if an input signal stored in the first register is equal to the window position information stored in the second memory regarding a particular pixel of the output display; a third full screen bitmapped memory for normally storing information other than window position information for controlling the appearance of the output display, the third memory having a substantially larger number of storagepositions to represent each pixel of the output display; a second register for storing input signals representing information other than window position information; a second comparator for comparing the information in the second register to the information in the third memory regarding a particular pixel of the output display; a third register for storing information regarding a window having a number greater than is capable of storage in the first register; a control register for causing the storage of window identification numbers in the third memory; a window extension comparator for comparing numbers stored in the third register with numbers stored in the third memory; and write enable circuitry responsive to the first comparator, the second comparator, and the window extension comparator for causing information to be written to the first memory, the secondmemory, and the display memory.
15. A computer system as claimed in claim 14 further comprising means for enabling selected numbers of bits of each position of the third memory to store information regarding window position on the output display.
16. A computer system as claimed in claim 15 in which the means for enabling selected numbers of bits of each position of the third memory comprisesa window extension mask.
17. A computer system comprising a first full screen bitmapped memory for storing information to be presented at an output display; a second full screen bitmapped memory for storing information regarding window position on the output display, the memory for storing information regarding window position having a first number of bits to represent each pixel of the output display; means for comparing each incoming signal with the information stored in the second memory to determine whether to present such information in a particular window of the output display; a third full screen bitmapped memory for normally storinginformation to appear on an output display other than window position information, the third memory having a substantially larger number of storage positions than the second memory to represent each pixel of the output display;
means for causing information regarding window position on the output display tobe stored in the third memory, means for comparing each incoming signal with the information stored in the third memory to determine whether to present such information in a particular window of the output display; and means responsive to the comparison of incoming information and information in the third memory for causing information in the display memory to be written to the output display.
18. A computer system as claimed in claim 17 in which the means for comparing incoming signals with the information stored in the third memory comprises a register for storing input signals representing information other than window position information; a comparator for comparing the information in the register to the information at individual pixel positions of the third memory; asecond register for storing information regarding a window having a number greater than is capable of storage in the first register, a control register forcausing the storage of window identification numbers in the second memory; a window extension comparator for comparing numbers stored in the third register with numbers stored in the third memory; and write enable circuitry responsive to the first comparator, the second comparator, and the window extension comparator for causing information to be written to the first memory, the secondmemory, and the display memory.
19. A computer system as claimed in claim 17 further comprising means for enabling selected numbers of bits of each position of the third memory to store information regarding window position on the output display.
20. A computer system as claimed in claim 9 in which the means for enabling selected numbers of bits of each position of the third memory comprisesa window extension mask.

82225.941 -21 - 9/29/88
CA000601219A 1988-10-31 1989-05-31 Apparatus for extending windows using z buffer memory Expired - Fee Related CA1307849C (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US26524088A 1988-10-31 1988-10-31
US265,240 1988-10-31

Publications (1)

Publication Number Publication Date
CA1307849C true CA1307849C (en) 1992-09-22

Family

ID=23009615

Family Applications (1)

Application Number Title Priority Date Filing Date
CA000601219A Expired - Fee Related CA1307849C (en) 1988-10-31 1989-05-31 Apparatus for extending windows using z buffer memory

Country Status (6)

Country Link
JP (1) JPH02148323A (en)
KR (1) KR960002974B1 (en)
AU (1) AU617464B2 (en)
CA (1) CA1307849C (en)
GB (1) GB2224622B (en)
HK (1) HK36694A (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA1323450C (en) * 1989-02-06 1993-10-19 Larry K. Loucks Depth buffer clipping for window management
AU664055B2 (en) * 1991-11-25 1995-11-02 Sony (Australia) Pty Limited Operator initiated display window recall
JP3428192B2 (en) * 1994-12-27 2003-07-22 富士通株式会社 Window display processing device

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4651146A (en) * 1983-10-17 1987-03-17 International Business Machines Corporation Display of multiple data windows in a multi-tasking system

Also Published As

Publication number Publication date
GB2224622B (en) 1993-07-14
HK36694A (en) 1994-04-29
AU3458089A (en) 1990-05-03
KR900006858A (en) 1990-05-09
JPH02148323A (en) 1990-06-07
GB8911960D0 (en) 1989-07-12
KR960002974B1 (en) 1996-03-02
JPH0587848B2 (en) 1993-12-20
GB2224622A (en) 1990-05-09
AU617464B2 (en) 1991-11-28

Similar Documents

Publication Publication Date Title
US5101365A (en) Apparatus for extending windows using Z buffer memory
JP3413201B2 (en) Graphics control plane for windowing and other display operations
CA2015725C (en) Method and apparatus for double buffering and colour selection utilizing windows
US5307497A (en) Disk operating system loadable from read only memory using installable file system interface
CA1244975A (en) Image display apparatus
JPH056197B2 (en)
GB1595654A (en) Keyboard apparatus
JP2548765B2 (en) Display device
CA1307849C (en) Apparatus for extending windows using z buffer memory
EP0195163B1 (en) Video converter device
US5559533A (en) Virtual memory hardware cusor and method
EP0093954A2 (en) Image display memory unit
EP0203332A2 (en) Plasma panel display systems
US4460971A (en) Terminal apparatus using register information to determine the meaning of a buffer stored field defining character
JPH05257592A (en) Data input control method
US5818465A (en) Fast display of images having a small number of colors with a VGA-type adapter
JPS5549739A (en) Picture signal processing unit
JPS5840207B2 (en) Parameter selection device
JP2587415B2 (en) Data processing system with variable memory bank selection
JPS6433683A (en) Information processor
JPS62219070A (en) Control and processing system for corresponding display
JPH0329023A (en) Crt display device
JPH01309091A (en) Half-brightness or gradational brightness display system and control circuit for crt display device
JPH0122622B2 (en)
GB2215098A (en) Memory mapping device

Legal Events

Date Code Title Description
MKLA Lapsed