Abstract:
A method and an apparatus for rotating images on a computer system is disclosed. The system includes a processor for accessing an image frame buffer using a set of CPU addresses, a memory for storing the frame buffer, a controller for directing the pixel data of the frame buffer to a display device using a set of controller addresses. The two sets of addresses are not necessarily the same. In fact, numerous advantages could be had from manipulating those two sets of addresses resulting in image rotation operations for the display device.
Abstract:
A system for efficiently supporting critical-word-first data transfers comprises a data storage device, a controller, a data selector, and a multiplexer. The data storage device is preferably capable of outputting data in one or more word orderings. The controller is preferably a state machine that processes data transfer requests by determining the orderings of data that the associated data storage device, data selector and multiplexer can provide, determining the ordering for the data requested and creating a response packet with the data ordered in critical-word-aligned order beginning with the word containing the requested address. The present invention also includes a method for efficiently supporting critical-word-first data transfers. The method includes the steps of: monitoring the bus for a data request packet; determining the desired order for the requested data; determining the transmission orders in which the data storage device can provide the data; determining the transmission order best matching the requested order and creating a response packet with the data ordered in the order best matching the desired requested order; adding response format information to the header of the response packet and transmitting the response packet on the bus.
Abstract:
A system and method of displaying movement in three-dimensional space in response to input from a conventional two-dimensional pointing device such as a mouse or trackball. The three-dimensional space is projected onto a two-dimensional plane for display in a window on a display screen. A viewpoint position, which may be the center of the window, is defined as the current virtual position of the "camera" through which the three-dimensional space is viewed. The user manipulates an on-screen cursor across the window to specify a direction of movement in the two-dimensional plane. A three-dimensional direction of movement is derived from the user's input by defining a sphere having a center corresponding to a the center of the two-dimensional plane, and determining the intersection of a line perpendicular to the plane at the cursor location with the surface of the sphere. The direction of movement is then defined as a vector from the origin to the determined intersection. The system and method distinguish between navigation commands and object manipulation commands according to the timing and context of the commands.
Abstract:
Electronic paper which has two sides, reverse of one another, which can be flipped over in response to user generated flip commands is described. When a piece of electronic paper is flipped over, a number of transition views of the paper are generated to give the user the impression that the paper is actually being turned over to reveal a reverse side. Different information can be stored on either side, and the composition of either side can be linked so that changes made to the graphic information on one side affects the graphic information on the other side. In addition, when the amount of graphic information on the reverse side of the paper exceeds the amount of available space normally available on the reverse side when the paper is flipped over, approximately the same amount of space available on the top side, the reverse side is expanded to fit the quantity of information to be displayed on the reverse side. If the reverse side has been expanded, and the user instructs the page to flip back to the top side, the reverse side shrinks back to its original size and then flips back to the top side.
Abstract:
An object oriented graphic user interface having overlapping windows and an access window having topics, index and look for button functions may be selected by the user. Through the use of the topics, index, or look for functions, a help inquiry is defined. The access window includes an alpha scroll bar horizontally spanning a defined area of the access window. Characters are displayed along the length of the alpha scroll bar and a slider is provided which may be selectively positioned over a character displayed on the alpha scroll bar. The placement of the slider over a character on the alpha scroll bar results in the CPU displaying help data entries corresponding to the selected character.
Abstract:
A method and apparatus for intelligent scrolling. In a computer system that has a user interface which allows for the movement of items from a first open window to a second open window or to a second region, such as a desktop, the present invention allows a user to select one or more items in the first window, move the selected item(s) to within a predetermined distance from an edge of the first window for a predetermined period of time and cause the viewable portion of the data and/or document within the first window to scroll in a corresponding direction.
Abstract:
Improved method and apparatus for vector quantization (VQ) to build a codebook for the compression of data. The codebook or "tree" is initialized by establishing N initial nodes and creating the remainder of the codebook as a binary codebook. Children entries are split upon determination of various attributes, such as maximum distortion, population, etc. Vectors obtained from the data are associated with the children nodes, and then representative children entries are recalculated. This splitting/reassociation continues iteratively until a difference in error associated with the previous children and current children becomes less than a threshold. This splitting and reassociating process continues until the maximum number of terminal nodes is created in the tree, a total error or distortion threshold has been reached or some other criterion. The data may then be transmitted as a compressed bitstream comprising a codebook and indices referencing the codebook.
Abstract:
A computer includes receptacles for receiving electric cables of peripheral equipment. A gate can be mounted to the housing to extend across the cables and form a gap small enough to prohibit the cable plugs from being separated from the housing. The gate can be locked to the housing by a cable anchoring device which also anchors the housing to a stationary structure. Hence, the computer housing is anchored, and the peripheral equipment is locked to the anchored housing.
Abstract:
A system for estimating block motion from a previous frame to a current frame, wherein motion vectors have been computed for blocks in the previous frame. The system comprises a P-checkerboard processor, an S-checkerboard processor and a block matching engine. The a P-checkerboard processor selects a first current block from a primary checkerboard pattern, retrieves motion vectors for reference blocks in the previous frame, and uses the retrieved motion vectors to generate a temporal search window. The block matching engine locates in the temporal search window a block which best matches the first current block, and determines the current motion vector from the best matching block to the first current block. Alternatively, the a P-checkerboard processor can use the retrieved motion vectors to interpolate the current motion vector. The S-checkerboard processor selects a second current block from a secondary checkerboard pattern, and uses the current motion vector to generate a spatial dynamic search window. The block matching processor locates in the spatial search window the block which best matches the second current block, and determines the current motion vector from the best matching block to the second current block.
Abstract:
A processor having an adaptable and self-setting mode of interfacing with a peripheral storage device is provided. The processor comprises a variable-parameter controller which enables the processor to adaptably interface with a peripheral storage device. Upon powering up, the controller first interfaces with the peripheral storage device in accordance with a default mode of operation of the peripheral storage device to extract configuration data from the peripheral storage device. The configuration data relates to at least one alternate mode of operation of the peripheral storage device. The controller then interfaces with the peripheral storage device in accordance with the alternate mode of operation. The processor includes a memory device connected to the variable-parameter controller for storing the configuration data so that it is accessible to the controller.