Source: http://www.google.com/patents/US5854927?dq=5,266,072
Timestamp: 2016-12-03 20:58:59
Document Index: 277358003

Matched Legal Cases: ['art 140', 'art 140', 'art 142', 'ART0', 'ART0', 'ART0', 'ART0', 'ART0', 'ART0']

Patent US5854927 - Multimedia system receptive for presentation of mass data comprising an ... - Google PatentsSearch Images Maps Play YouTube News Gmail Drive More »Sign inPatentsA multimedia system comprises an application program title that also comprises a multiplatform interpreter. The application program contains both the application described in a scripting language and the multi-media data. A platform subsystem interacts with the application program title and accesses...http://www.google.com/patents/US5854927?utm_source=gb-gplus-sharePatent US5854927 - Multimedia system receptive for presentation of mass data comprising an application program inclusive of a multiplatform interpreter, and a platform subsystem arranged for interaction with said multiplatform interpreter and mass memory for use with such sAdvanced Patent SearchTry the new Google Patents, with machine-classified Google Scholar results, and Japanese and South Korean patents.Publication numberUS5854927 APublication typeGrantApplication numberUS 08/533,030Publication dateDec 29, 1998Filing dateSep 25, 1995Priority dateSep 30, 1994Fee statusLapsedAlso published asEP0731971A1, WO1996011532A2, WO1996011532A3Publication number08533030, 533030, US 5854927 A, US 5854927A, US-A-5854927, US5854927 A, US5854927AInventorsJohan H. A. GelissenOriginal AssigneeU.S. Philips CorporationExport CitationBiBTeX, EndNote, RefManPatent Citations (12), Referenced by (79), Classifications (24), Legal Events (6) External Links: USPTO, USPTO Assignment, EspacenetMultimedia system receptive for presentation of mass data comprising an application program inclusive of a multiplatform interpreter, and a platform subsystem arranged for interaction with said multiplatform interpreter and mass memory for use with such s
US 5854927 AAbstract
A multimedia system comprises an application program title that also comprises a multiplatform interpreter. The application program contains both the application described in a scripting language and the multi-media data. A platform subsystem interacts with the application program title and accesses the application program and interpreter. It executes the application program under control of user input means. Also a user display and an audio subsystem are controlled by the application program. The application program is based on an instruction set that is interpreted by the processing means, using the multiplatform interpreter. The platform is an instance of a prespecified abstract machine with predefined instruction set, data type set, and resource facilities according to quantitative minimum requirements.
1. Multimedia system receptive for mass data presentation thereto, said data comprising an application program inclusive of a multiplatform interpreter; said system furthermore having a platform subsystem,being arranged for interaction with said multiplatform interpreter, comprising processing means for executing said multiplatform interpreter driven by said application program and under control of user input means, and furthermore having user output means controllable by said multiplatform interpreter, characterized in that said application program is based on a predetermined instruction set that is interpreted by said processing means for said executing, whereby said platform subsystem is an instance of a prespecified abstract machine having said predetermined instruction set, and a predetermined data type set, and said subsystem furthermore comprising resource facilities according to predetermined quantitative minimum requirements. 2. A multimedia system as claimed in claim 1, and having physical interface means for receiving said mass data on a unitary memory medium.
14. A mass data memory as claimed in claim 7, being operative for the following three functions:forth-- loader( ), which function is called with names of kernel B and extension kernel C+D, whereas table A is used to bind platform dependent kernel functions into the extension kernel; load-- context( ), which function is called with the name of an appropriate root context, that is a starting section of the title, for subsequent to initializing operations, invoking other contexts with subsequent load-- context calls; forth-- execute( ) that starts actual interpretation process and has as parameter the first token in the root context. 15. A platform subsystem arranged for inclusion in a multimedia system and being receptive for mass data presentation thereto, which data comprise an application program inclusive of a multiplatform interpreter, said platform subsystem having processing means for executing said multiplatform interpreter driven by said application program and under control of user input means, and having user output means controllable by said multiplatform interpreter, wherein said application program is based on a predetermined instruction set that is interpreted by said processing means for said executing, and said platform subsystem is an instance of a prespecified abstract machine having the instruction set present in said title and a predetermined data type set, and said processing means being arranged for executing said title after interpretation thereof.
The invention relates to a multimedia system receptive for mass data presentation thereto, said data comprising an application program inclusive of a multiplatform interpreter, said system furthermore having a platform subsystem, arranged for interaction with said multiplatform interpreter, comprising processing means for executing said multiplatform interpreter driven by said application program and under control of user input means, and furthermore having user output means controllable by said multiplatform interpreter. The mass data may be physically present on a self-contained mass memory, such as an optical disc. Alternatively, it may be presented via a remote interconnection or channel in a dialog structure. Multimedia means that the subsystem may receive, process and output more than one category of signal, such categories being for example: alphanumerical text, graphics, speech, music, and possibly other. The subject of the application program, or application for short, may be various as well, such as a video game, an instructive or informative item such as an encyclopedia, a shell for a personalized filing system, or other. Various such platforms have been commercialized, such as CD-I machines and personal computers. Regarding CD-I standards and Compact Disc standards in general, reference is had to the article `Compact Disc Standards` by Jan Korst and Verus Pronk, ACM/Springer Multmedia Systems, Vol. 2, No. 4, pp. 157-171 (1994), which article is a review of various earlier published specifications of such standards.
Accordingly, amongst other things, it is an object of the present invention to make the application program less platform specific, in that an appreciable part of its stored information would have harmonized data formats and be interpretable on various different platform subsystems. The inventors have found it feasible to make programs interpretable on different platforms, in particular, by defining formats for multimedia data that can be played by most platforms, although under certain circumstances it may require some real-time conversion by the delivery platform. Furthermore, even if the bulk of the multimedia data is present in the title only once, it may prove advantageous to have some of the data in platform specific formats. An additional object of the invention is the decoupling of creation platform and playback platforms. Now, according to one of its aspects, the invention is characterized in that said application program is based on a predetermined instruction set that is interpreted by said processing means for said executing, whereby said platform subsystem is an instance of a prespecified abstract machine having said predetermined instruction set, a predetermined data type set, and furthermore comprising resource facilities according to quantitative minimum requirements. In particular, multiplatform multimedia title creation is intended for platform-independent multimedia titles. In the above, an instance is the actual representative or realization of its species; each instance has the minimum facilities of the species, but various instances may differ appreciably.
These and other aspects and advantages will be described more in detail with reference to the disclosure of preferred embodiments hereinafter, and in particular with reference to the appended drawings, wherein:
FIG. 1 is an illustration of the functional position of various program types for use in a preferred embodiment of the invention. The object of the invention, formulated in a different manner, is to attain a so-called Common Publishing Format, so that published titles need to adhere only to minimal constraints to allow them being played on different platform subsystems or hardware machines. The various so-called assets, for example pictures, sound, structures, character font, and others, represented in the predetermined multi-media formats and processor-independent program code together form a title. The invention obviates the need for storing on a single mass memory all materials separately for each different envisaged platform. The assets of a title are the elements that a human user may come to see or hear. The program code is interpretable on platform subsystems that comply with certain requirements. The code consists of short-format instructions or tokens that each have clear semantics. The language in which these are written is called CPF-Script, which has been disclosed in the report on the OSMOSE Project, ESPRIT project 6788, public version 1.0, Copyright Philips Electronics N.V., The Netherlands, 1994. Some of these tokens will cause audio-visual side effects that consume relatively much time as compared to the execution of the processing, in particular, because of the relative slowness of human perception and expression, as compared to the high processing speeds in computers and related hardware. For specifying all requirements, a so-called "abstract machine" has been defined. Such an abstract machine has a predetermined instruction set, a predetermined data type set, and has resource facilities meeting quantitative minimum requirements. Any real machine or platform that has at least these facilities may now execute the title in question. Such facilities can be expressed in terms like operating speed, memory capacity, I/O (display, sound), operating system features, coprocessing, and many others. Now in FIG. 1, circle 20 symbolizes all programs that translate into CPF-Script (the size of the circle being totally unrelated to the number and size of these programs). The actual writing of these programs can be done through the use of an authoring language that makes life more easy for authors of the programs in CPF-Script, at a price of a slightly narrowed functionality: the resulting programs are represented by circle 22. Compilation and conformation of the programs in circle 20 render them in circle 26 that contains all possible CPF Script programs that can be executed by the Abstract CPF Machine. Circle 24 therearound symbolizes all programs which could possibly be executed by this machine, without the constraint that the program would have to be in CPF-Script. The circle pairs 28/30 and 32/34 now are associated with two arbitrary, different platform subsystems. The inner circles 30, 34 represent a mapping from circle 24. The outer circles 28, 32 symbolize the set of all executable programs that outside the inner circle would not be executable by the abstract machine. Again, the diameters of the various circles as shown are perfectly arbitrary. Moreover, although the contents of the inner circles for various platform subsystems are identical, the content of the outer circles need not be so.
PLATFORM INDEPENDENT FORTH DICTIONARIES
Hereinafter, a set of interpreters for the well-documented FORTH language (cf. various textbooks on programming languages) is described, on the basis of their mapping from input to output. For brevity, the Forth language itself is not expressly considered. The interpreters interpret the instructions, fetch assets called for therein, and invoke associated items from the library. For each different platform, the same source file set of instructions is present, that may result in the rendering of the assets. In principle, at least two such interpreters are necessary, generally one for a PC under the operating system DOS/Windows 3.1, and one for the CDI-player under CD-RTOS. Another real platform could be an Apple Macintosh machine. FIG. 5 shows a memory layout for such FORTH interpreter. Its operation will be described hereinafter. The memory layout is shown as a column of memory locations. With respect to the memory map of FIG. 5, the interpreter is assumed to be indirectly threaded. This latter property means that first an indirection or dispatch table must be accessed that provides points to the directly threaded code available in the dictionary; then, interpretation may start immediately. In the memory, part 140 contains a table of Callable Forth Addresses or cfa's of machine (platform) dependent primitives (A) or elementary operations feasible for execution on the machine in question. Part A is a dispatch table that during loading provides the binding through the indirect addressing feature between the definitions in parts C+D and the machine dependent instructions in part B. Referrals in Parts C+D use this table in part A to find the relevant machine dependent instructions in part B. Each element of part 140 points to its own segment of memory part 142, that contains the implementations of the various machine dependent primitives (B). This is the heart of the interpreter and contains all CODE (executable assembly code) and ;CODE (Forth interpretable code), the interpreter for the address, and the initialization code. This table is used when loading the machine-independent part of the title and also when, during creating of the title, saving (storing) this part of the dictionary. Together, parts A and B represent the machine-dependent part of a title. A relatively minimal realization of a title therefore contains two versions of both parts A and B, to constitute a multiplatform title for at least two different hardware platforms. Parts C and D contain the machine-independent code of the title. Herein, part C contains the title-independent and machine-independent code that is present in every title. Part D contains the title-dependent code, and will be generated as part of the total building process when the title-dependent code is produced.
forth-- loader(), this function is called with the names of the kernel B and extension kernel C+D. Table A is used to bind the system dependent kernel functions into the extension kernel.
load-- context(), this function is called with the name of the appropriate root context. The root context is the starting section of the application and will invoke, after initialisation operations, other contexts with subsequent load-- context() calls.
forth-- execute(), this function starts the actual interpretation process and has as parameter the address of the first token in the root context. The function can return two values. A returned zero signals that not all FORTH words in the context content have been interpreted, but that (instead) the FORTH instruction word `sleep` has been executed. The execution of this Forth word saves the execution state in the user area, and returns to the caller of the forth-- execute() function. The thread may be restarted by calling the function forth-- execute() once more with the same parameters. Only when the entire content of the context has been interpreted, the function forth-- execute() will return a non-zero value. Thereupon, the areas used as stack, return stack, and user area, are relinquished and may be used for other purposes again.
DESCRIPTION OF A PROGRAM EMBODIMENT
The appendices give various exemplary program modules, to illustrate how the common publishing format is effectively used, and to enable a skilled art person to practice the invention. The example is a short part of a multimedia application, of which the development through the process is described to realize the actual playback at an end user platform.
The complete application is programmed in the authoring language called CPF-Talk. In this language, that may be used to express the output from a graphical design tool, the output that forms the application is divided into so-called contexts, each of which may exhibit its own specific behaviour. The various contexts are interconnected through so-called actions that transfer the control from one context to another context. In the application described, three different contexts are distinguished. The start-- context relates to the showing of the first picture, the next-- context to the showing of the next picture, the stop-- context relates to the termination of the application. The control transfers from start-- context to next-- context upon the user pushing the action button when located at the hotspot. The control transfers from the next-- context to the stop-- context under control of the timer output signal, the timer having started at the preceding control transfer to the next-- context.
Additional to these three contexts is a common root-- context that defines various global objects that are needed by the other three contexts. The root-- context is the first to be called when the application is started; when all instructions of the root-- context have been executed, it passes control automatically to the first non-root context, in this case the start-- context. Tables 1-4 give the contents of these four contexts for the application as described. In Table 1, first the root-- context is listed, together with two variables, one a time interval and one an effect quantity. Furthermore, two colour palettes are defined (they could have been different) and two surfaces. The surfaces are defined on a plane, get their colour coding defined, the pixel size, the start colour, and the colour after fade, if applicable. Finally, the root-- context specifies what is to be done next.
In Table 2, the start-- context first specifies where to access the initial image, next a cursor shape, the hotspot location, and the action what is to be done when the button at the hotspot location was actuated at least during the prespecified interval dur50. Finally, the operations are specified that must be executed when entering this context. In Table 3, the structure of the next-- context is comparable. A particular feature is the specification of the timer. In Table 4, the stop-- context is self-evident.
To illustrate the above part of the interpretation process, the instruction `copy START-- image to surface1` will be described in detail. First, it is understood that for the reading, the format is as already shown according to Tables 5-8. The interpreter kernel gets the instruction according to:
`START-- image˜surface1˜0 0 0 copy-obj` and invokes the module copy-- obj from the extension kernel with all associated arguments (0 0 0 surface1˜and START-- image˜) on the stack. Herein, the tilde indicates a variable. In the present case, the extension kernel needs only two of the arguments, namely the objects surface1˜and START-- image. The extension kernel must have memory space to copy the picture into, and for that purpose invokes a program module for requesting this memory from the operating system. At this stage an operating system dependent system call will be invoked which during loading of the interpreter was linked to the extension kernel as described above. After reservation of the memory, further operating system dependent modules are invoked to open the file on the mass memory, to copy the content of the file into the reserved memory space, and to close the file on the mass memory. The latter system calls have been linked to the extension kernel in the same manner as described for the memory handler.
In this way an instruction, that is present in a context, like `copy START-- image to surface1` may for each different platform subsystem result in the invocation of a respective different functionality for e.g. memory handling and file I/O, as well as for many other platform dependent functionalities. Other instructions may in similar way result in such different functionalities.
TABLE 1______________________________________context rootcontext START-- context in "START.cxt"context next-- context in "next.cxt"context stop-- context in "stop.cxt"  variable dur = 50  variable effect = 17  palette palette1    size: 128    offset: 0  end palette  palette palette2    size: 128    offset: 0  end palette  surface surface1    plane: A    coding: clut7    size: 768, 560    color: 0    fadeLevel: 0  end surface  surface surface2    plane: B    coding: clut7    size: 768, 560    color: 0  end surface  on entry    change context to START-- context  end onend context______________________________________
TABLE 2______________________________________context START-- contextimage START-- imagesource: "/h0/STRUCTED/VIDEO/DYUV.d"end imagecursor cursor0color: 0, 255, 255pattern: 0x7FFE,0xD557,0xAAAF,0x9FFD,\0x900D,0x900B,0x900B,0x900D,\0x900D,0x900B,0x900B,0x900D,\0x9FFD,0xA227,0xC88B,0x7FFEend cursorhotspot START0-- hslocation: 329, 233size: 102, 90on button1Down   dur = 50   change context to next-- contextend onend hotspoton entryshow cursorset coding of surface1 to dyuvcopy START-- image to surface1attach START0-- hs to surface1attach cursor0 to START0-- hssurface order surface2, surface1display palwipeClock dur surface2 to surface1cursorPosition 384, 280end onend context______________________________________
TABLE 3______________________________________context next-- contextimage next-- image  source: "/h0/STRUCTED/VIDEO/CLUT7.cl7"end imagetimer next0-- timerinterval: 100count: 0on count 1  effect = 6  dur = 50  change context to stop-- contextend onend timeron entryhide cursorset coding of surface2 to clut7copy next-- image to surface2, palette2attach palette2 to surface2surface order surface1, surface2display palwipeBT dur surface1 to surface2cursorPosition 384, 280start next0-- timerend onend context______________________________________
TABLE 4______________________________________      context stop-- context        on entry          exit        end on      end context______________________________________
TABLE 5______________________________________  ""/users/user/home-- directory pc-setenv  root-ctxt  context: START-- context&#732; START.cxt  context: next-- context&#732; next.cxt  context: stop-- context&#732; stop.cxt  4 n 50 =&gt; dur&#732;  4 n 17 =&gt; effect&#732;  palette: palette1&#732;    128 palette-size|    0 palette-offset|  palette;  palette: palette2&#732;    128 palette-size|    0 palette-offset|  palette;  surface: surface1&#732;    plane-a plane|    d-clut7 coding|    768 560 surface-size|    0 surface-color|    0 fadelevel|  surface;  surface: surface2&#732;    plane-b plane|    d-clut7 coding|    768 560 surface-size|    0 surface-color|  surface;  entry: on-entry    START-- context&#732; 2ctxt  entry;______________________________________
TABLE 6______________________________________local-context: START-- context&#732;image: START-- image&#732;r" /h0/STRUCTED/VIDEO/DYUV.d" image-source|image;cursor: cursor0&#732;0 255 255 cursor-color|bitmap( 32766 54615 43695 40957 36877 36875 36875 36877 368773687536875 36877 40957 41511 51339 32766 ) pattern|cursor;hotspot: START0-- hs&#732;329 233 hotspot-location|102 90 hotspot-size|   ev-b0d !!event: `z1n 50 dur&#732; v|next-- context&#732; 2ctxtevent;hotspot;entry: on-entryshow-cursord-dyuv surface1&#732; coding|START-- image&#732; surface1&#732; 0 0 0 copy-objSTART0-- hs&#732; surface1&#732; attach-objcursor0&#732; START0-- hs&#732; attach-obj0 surface2&#732; surface1&#732; surf-orderdisplay-- 625 displaydur&#732; vn@ time-check surface2&#732; surface1&#732; $waitwipe-clock384 280 cursor-positionentry;______________________________________
TABLE 7______________________________________local-context: next-- context&#732;image: next-- image&#732;r" /h0/STRUCTED/VIDEO/CLUT7.cl7" image-source|image;timer: next0-- timer&#732;100 interval|0 count|   1 !!count: `h1n 6 effect&#732; v|n 50 dur&#732; v|stop-- context&#732; 2ctxtcount;timer;entry: on-entryhide-cursord-clut7 surface2&#732; coding|next-- image&#732; surface2&#732; palette2&#732; 0 0 copy-objpalette2&#732; surface2&#732; attach-obj0 surface1&#732; surface2&#732; surf-orderdisplay-- 625 displaydur&#732; vn@ time-check surface1&#732; surface2&#732; $wait wipe-bt384 280 cursor-positionnext0-- timer&#732; start-objentry;______________________________________
TABLE 8______________________________________    local-context: stop-- context&#732;      entry: on-entry        cdiforth-exit    entry;______________________________________
Patent CitationsCited PatentFiling datePublication dateApplicantTitleUS4667290 *Sep 10, 1984May 19, 1987501 Philon, Inc.Compilers using a universal intermediate languageUS4807224 *Aug 21, 1987Feb 21, 1989Naron Steven EMulticast data distribution system and methodUS4905560 *Dec 8, 1988Mar 6, 1990Yamaha CorporationMusical tone control apparatus mounted on a performer's bodyUS4931950 *Jul 25, 1988Jun 5, 1990Electric Power Research InstituteMultimedia interface and method for computer systemUS5329619 *Oct 30, 1992Jul 12, 1994Software AgCooperative processing interface and communication broker for heterogeneous computing environmentsUS5339419 *Jun 25, 1990Aug 16, 1994Hewlett-Packard CompanyANDF compiler using the HPcode-plus compiler intermediate languageUS5339434 *Dec 7, 1992Aug 16, 1994Trw Inc.Heterogeneous data translation systemUS5488714 *Aug 25, 1993Jan 30, 1996Unisys CorporationComputer program analyzer for adapting computer programs to different architecturesUS5517636 *Oct 13, 1994May 14, 1996Unisys CorporationPlatform independent data communication system and methodUS5586323 *Apr 23, 1992Dec 17, 1996Hitachi, Ltd.Compilier system using an intermediate abstract form and machine-specific installersUS5592640 *Nov 21, 1994Jan 7, 1997Fujitsu LimitedData processing apparatus capable of reading data from different-format CD-ROMS according to different processing methods of the dataUS5598560 *Mar 7, 1991Jan 28, 1997Digital Equipment CorporationTracking condition codes in translation code for different machine architectures* Cited by examinerReferenced byCiting PatentFiling datePublication dateApplicantTitleUS5925104 *Oct 16, 1996Jul 20, 1999U.S. Philips CorporationMethod for making a multimedia application executable on hardware platforms with various different resource levels, a physical record containing such application, and an apparatus for executing such applicationUS6173437 *Jul 24, 1997Jan 9, 2001Intervoice Limited PartnershipMultimedia scripting toolUS6336120 *Aug 26, 1997Jan 1, 2002International Business Machines CorporationMethod and system for supporting hierarchical storage management (HSM) file system across multiple platformsUS6736325 *Jan 13, 1999May 18, 2004Mondex International LimitedCodeletsUS6769985May 31, 2000Aug 3, 2004IgtGaming device and method for enhancing the issuance or transfer of an awardUS6826745 *May 30, 2001Nov 30, 2004Siebel Systems, Inc.System and method for smart scripting call centers and configuration thereofUS6848996Oct 15, 2001Feb 1, 2005IgtGaming device with sound recording changes associated with player inputsUS6853868 *Oct 15, 1999Feb 8, 2005Sun Microsystems, Inc.Cross-platform audio feedback for GUI componentsUS6935955Sep 7, 2000Aug 30, 2005IgtGaming device with award and deduction proximity-based sound effect featureUS6978224Apr 16, 2004Dec 20, 2005Hydrogenics CorporationAlarm recovery system and method for fuel cell testing systemsUS7047525Nov 13, 2001May 16, 2006American Express Travel Related Services Company, Inc.System and method for an interoperability frameworkUS7105736Sep 9, 2003Sep 12, 2006IgtGaming device having a system for dynamically aligning background music with play session eventsUS7136865Apr 8, 2002Nov 14, 2006Siebel Systems, Inc.Method and apparatus to build and manage a logical structure using templatesUS7149641Sep 14, 2004Dec 12, 2006Hydrogenics CorporationSystem and method for controlling a fuel cell testing deviceUS7168069 *Jul 12, 2000Jan 23, 2007Stmicroelectronics, Inc.Dynamic generation of multimedia code for image processingUS7174514Mar 28, 2001Feb 6, 2007Siebel Systems, Inc.Engine to present a user interface based on a logical structure, such as one for a customer relationship management system, across a web siteUS7258613May 7, 2004Aug 21, 2007IgtGaming device having changed or generated player stimuliUS7341512May 1, 2006Mar 11, 2008IgtComputer system communicable with one or more gaming devices having a matching game with multiple roundsUS7355112Sep 11, 2006Apr 8, 2008IgtGaming device which dynamically modifies background music based on play session eventsUS7467135Jul 27, 2004Dec 16, 2008Siebel Systems, Inc.System and method for smart scripting call centers and configuration thereofUS7494412May 1, 2006Feb 24, 2009IgtComputer system communicable with one or more gaming devices having a matching gameUS7584283Apr 8, 2002Sep 1, 2009Siebel Systems, Inc.Method and apparatus to save and resume a session associated with a logical structureUS7585219Aug 29, 2005Sep 8, 2009IgtGaming device having a matching symbol gameUS7666098Sep 10, 2002Feb 23, 2010IgtGaming device having modified reel spin sounds to highlight and enhance positive player outcomesUS7695363Sep 9, 2003Apr 13, 2010IgtGaming device having multiple display interfacesUS7699699Sep 28, 2004Apr 20, 2010IgtGaming device having multiple selectable display interfaces based on player's wagersUS7708642Oct 15, 2001May 4, 2010IgtGaming device having pitch-shifted sound and musicUS7744458Aug 31, 2005Jun 29, 2010IgtSlot machine game having a plurality of ways for a user to obtain payouts based on selection of one or more symbols (power pays)US7765165Apr 8, 2002Jul 27, 2010Siebel Systems, Inc.Engine to present user interface based on a logical structure, such as one for a customer relationship management systemUS7785191Aug 31, 2005Aug 31, 2010IgtSlot machine game having a plurality of ways for a user to obtain payouts based on selection of one or more symbols (power pays)US7789748Sep 4, 2003Sep 7, 2010IgtGaming device having player-selectable musicUS7892091Jul 12, 2004Feb 22, 2011IgtGaming device and method for enhancing the issuance or transfer of an awardUS7901291Sep 26, 2002Mar 8, 2011IgtGaming device operable with platform independent code and methodUS8005814Dec 1, 2008Aug 23, 2011Siebel Systems, Inc.System and method for smart scripting call centers and configuration thereofUS8016674Aug 20, 2007Sep 13, 2011IgtGaming device having changed or generated player stimuliUS8043155Oct 18, 2005Oct 25, 2011IgtGaming device having a plurality of wildcard symbol patternsUS8221218Feb 26, 2010Jul 17, 2012IgtGaming device having multiple selectable display interfaces based on player's wagersUS8408996Aug 3, 2011Apr 2, 2013IgtGaming device having changed or generated player stimuliUS8419524Oct 13, 2011Apr 16, 2013IgtGaming device having a plurality of wildcard symbol patternsUS8458676 *Jun 30, 2009Jun 4, 2013International Business Machines CorporationExecuting platform-independent code on multi-core heterogeneous processorsUS8460090Jan 20, 2012Jun 11, 2013IgtGaming system, gaming device, and method providing an estimated emotional state of a player based on the occurrence of one or more designated eventsUS8491392Oct 24, 2006Jul 23, 2013IgtGaming system and method having promotions based on player selected gaming environment preferencesUS8495597 *Oct 23, 2006Jul 23, 2013Stmicroelectronics, Inc.On the fly generation of multimedia code for image processingUS8591308Sep 10, 2008Nov 26, 2013IgtGaming system and method providing indication of notable symbols including audible indicationUS8727866Apr 2, 2013May 20, 2014IgtGaming device having a plurality of wildcard symbol patternsUS8740689Jul 6, 2012Jun 3, 2014IgtGaming system and method configured to operate a game associated with a reflector symbolUS8911287May 16, 2013Dec 16, 2014IgtGaming system, gaming device, and method providing an estimated emotional state of a player based on the occurrence of one or more designated eventsUS8949794 *Oct 12, 2012Feb 3, 2015Vmware, Inc.Binding a software item to a plain english control nameUS8949871Sep 8, 2010Feb 3, 2015Opentv, Inc.Smart media selection based on viewer user presenceUS8966458May 7, 2013Feb 24, 2015International Business Machines CorporationProcessing code units on multi-core heterogeneous processorsUS8998709Aug 4, 2014Apr 7, 2015IgtGaming system, gaming device, and method providing an estimated emotional state of a player based on the occurrence of one or more designated eventsUS9017173Jun 27, 2013Apr 28, 2015IgtGaming system and method having promotions based on player selected gaming environment preferencesUS9069902Oct 12, 2012Jun 30, 2015Vmware, Inc.Software test automationUS9135785Nov 21, 2013Sep 15, 2015IgtGaming system and method providing indication of notable symbolsUS9137507 *Apr 12, 2013Sep 15, 2015Thomson LicensingMethod and apparatus for executing software applicationsUS9192857Jul 23, 2013Nov 24, 2015IgtBeat synchronization in a gameUS9204117Apr 16, 2012Dec 1, 2015Thomson LicensingMethod and apparatus for executing software applicationsUS9245407Jul 6, 2012Jan 26, 2016IgtGaming system and method that determines awards based on quantities of symbols included in one or more strings of related symbols displayed along one or more paylinesUS9292416Oct 12, 2012Mar 22, 2016Vmware, Inc.Software development kit testingUS9292422Oct 12, 2012Mar 22, 2016Vmware, Inc.Scheduled software item testingUS20020126990 *Oct 24, 2001Sep 12, 2002Gary RasmussenCreating on content enhancementsUS20040015891 *Nov 13, 2001Jan 22, 2004Arellano-Payne Anna M.System and method for an interoperability frameworkUS20040054483 *Sep 17, 2002Mar 18, 2004Hydrogenics CorporationSystem and method for controlling a fuel cell testing deviceUS20040237072 *Jun 28, 2004Nov 25, 2004Gelissen Johan H.A.Data processing system receptive for presentation of data comprising an application program and a multiplatform interpreter, and a platform subsystem arranged for interaction with the multiplatform interpreter and a memory for use with such system for subsystemUS20040242307 *Jul 12, 2004Dec 2, 2004Laakso Jeffrey P.Gaming device and method for enhancing the issuance or transfer of an award gaming deviceUS20050086220 *Jul 27, 2004Apr 21, 2005Coker John L.System and method for smart scripting call centers and configuration thereofUS20050177837 *Oct 24, 2002Aug 11, 2005Trevor MensahData processing system and methodUS20070067111 *Jul 18, 2006Mar 22, 2007Affymetrix, Inc.Computer-aided visualization of expression comparisonUS20070074183 *Oct 23, 2006Mar 29, 2007Ulrich SigmundOn the fly generation of multimedia code for image processingUS20070208573 *Apr 8, 2002Sep 6, 2007Malden Mathew SEngine to present user interface based on a logical structure, such as one for a customer relationship management systemUS20070208858 *Apr 8, 2002Sep 6, 2007Siebel Systems, Inc.Method and apparatus to save and resume a session associated with a logical structureUS20090083246 *Dec 1, 2008Mar 26, 2009Oracle International CorporationSystem and method for smart scripting call centers and configuration thereofUS20090162818 *Dec 21, 2007Jun 25, 2009Martin KosakowskiMethod for the determination of supplementary content in an electronic deviceUS20100333075 *Jun 30, 2009Dec 30, 2010International Business Machines CorporationExecuting platform-independent code on multi-core heterogeneous processorsUS20130236159 *Apr 12, 2013Sep 12, 2013Thomson LicensingMethod and Apparatus for Executing Software ApplicationsUS20140109058 *Oct 12, 2012Apr 17, 2014Vmware,Inc.Test language interpreterWO2001033569A1 *Oct 19, 2000May 10, 2001Iomega CorporationPortable audio playback device and removable disk driveWO2002059760A2 *Nov 28, 2001Aug 1, 2002Ixl, Inc.Process and system for media creation and publishingWO2002059760A3 *Nov 28, 2001Oct 3, 2002Ixl IncProcess and system for media creation and publishing* Cited by examinerClassifications U.S. Classification717/139, G9B/27.019, G9B/19.001, G9B/27.012, G9B/27.05, G9B/17.001International ClassificationG11B17/00, G11B27/10, G11B27/034, G11B19/02, G11B27/32Cooperative ClassificationG11B2220/2545, G11B27/034, G11B17/005, G11B2220/255, G11B19/02, G11B27/105, G11B27/329, G11B2220/213European ClassificationG11B27/10A1, G11B27/32D2, G11B19/02, G11B27/034, G11B17/00ALegal EventsDateCodeEventDescriptionSep 25, 1995ASAssignmentOwner name: U.S. PHILIPS CORPORATION, NEW YORKFree format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:GELISSEN, JOHN H.A.;REEL/FRAME:007719/0639Effective date: 19950908May 29, 2002FPAYFee paymentYear of fee payment: 4Nov 12, 2002CCCertificate of correctionJul 19, 2006REMIMaintenance fee reminder mailedDec 29, 2006LAPSLapse for failure to pay maintenance feesFeb 27, 2007FPExpired due to failure to pay maintenance feeEffective date: 20061229RotateOriginal ImageGoogle Home - Sitemap - USPTO Bulk Downloads - Privacy Policy - Terms of Service - About Google Patents - Send FeedbackData provided by IFI CLAIMS Patent Services