WO1996014909A1 - Method and apparatus for synchronizing the animation speed of multiple video game systems in a networked environment - Google Patents

Method and apparatus for synchronizing the animation speed of multiple video game systems in a networked environment Download PDF

Info

Publication number
WO1996014909A1
WO1996014909A1 PCT/US1995/014799 US9514799W WO9614909A1 WO 1996014909 A1 WO1996014909 A1 WO 1996014909A1 US 9514799 W US9514799 W US 9514799W WO 9614909 A1 WO9614909 A1 WO 9614909A1
Authority
WO
WIPO (PCT)
Prior art keywords
game
systems
interlaced
master
loop
Prior art date
Application number
PCT/US1995/014799
Other languages
French (fr)
Inventor
Mark W. Froelich
Stephen G. Perlman
Original Assignee
Catapult Entertainment, 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 Catapult Entertainment, Inc. filed Critical Catapult Entertainment, Inc.
Priority to AU42368/96A priority Critical patent/AU4236896A/en
Publication of WO1996014909A1 publication Critical patent/WO1996014909A1/en

Links

Classifications

    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/30Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
    • A63F13/31Communication aspects specific to video games, e.g. between several handheld game devices at close range
    • A63F13/12
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/30Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/131Protocols for games, networked simulations or virtual reality
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/40Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterised by details of platform network
    • A63F2300/402Communication between platforms, i.e. physical link to protocol

Definitions

  • the present invention relates to the field of video game systems. Specifically, the present invention pertains to synchronization of the animation of multiple video game systems in a networked environment.
  • VIDEO GAMES invented by Steve Perlman, with serial no. and filed on .
  • Some video games always complete a game loop within one frame time. For these systems, it is not necessary to throttle the speed of game loop execution. For more complicated games, however, a single game loop may span more than one frame time. This situation presents no problem for the synchronization apparatus of the present invention as long as the length of the game loop is a fixed length of time.
  • some video games dynamically alter the animation speed in the course of execution by measuring the elapsed time in prior game loops. The decision is based on local system timing parameters.which may vary among the systems; thus, it is possible for a master and slave system running the same game code and using exactly the same controller input data to produce a different length game loop and therefore use different animation speed predictors. This phenomenon makes it very difficult to synchronize these systems over a network; because different animation speeds can result in different game outcomes. Prior art systems have been unable to solve this problem.
  • the present invention defines a protocol for synchronizing the animation speed of multiple video game systems connected over a network. This protocol assures that each system remains in game loop synchronization with other systems. The player controller inputs are always directed to the correct game loop on each system.
  • the present invention specifies that a master video game system determines the number of frames that have passed in a game loop and uses that information as a predictor of future game loop duration.
  • the master sends this prediction along with game controller data to the slave system.
  • the master delays the prediction in a read FIFO for its own internal use.
  • the read FIFO delay matches the network latency so that the slave and master use the same predictor in their game execution logic.
  • the master and slave remain in game loop synchronization.
  • Figures 1 and 3 illustrate the variable number of frames per game loop and the messages used by the present invention for regulating the speed of an animation.
  • Figure 2 illustrates the queueing system used in the preferred embodiment.
  • Figure 4 illustrates two video game systems connected via a communication medium.
  • the present invention is a means and method for synchronizing the animation speed of multiple video game systems in a networked environment.
  • numerous specific details are set forth in order to provide a thorough understanding of the present invention. However, it will be apparent to one of ordinary skill in the art that these specific details need not be used to practice the present invention. In other instances, well known structures, interfaces, and processes have not been shown in detail in order not to unnecessarily obscure the present invention.
  • the preferred embodiment of the present invention operates in the context of a networked video game system.
  • a first video game system is coupled to a second video game system via a communication medium.
  • a communication medium Such a configuration is illustrated in Figure 4.
  • FIG. 4 a simplified diagram illustrates two video game systems 510 and 520 connected via a communication medium 505.
  • game system 510 is denoted the master and game system 520 is denoted the slave.
  • the communication medium 505 is the standard telephone network and the first and second video game systems are direct connected via a direct telephone call initiated by one of the video game systems. The details of establishing this interconnection of video game systems via the telephone network is described in detail in the above-referenced co-pending patent applications.
  • the video game system initiating the telephone call is denoted the master system.
  • the video game system receiving the telephone call is denoted the slave system. Except in some circumstances, it makes no difference which video game system initiates the telephone call and becomes master.
  • Some video games always complete a game loop within one frame time. For these systems, it is not necessary to throttle the speed of game loop execution. For more complicated games, however, a single game loop may span more than one frame time. This situation presents no problem for the synchronization apparatus of the present invention as long as the length of the game loop is a fixed length of time.
  • some video games dynamically alter the animation speed in the course of execution by measuring the elapsed time in prior game loops. The decision is based on local system timing parameters, which may vary among the systems; thus, it is possible for a master and slave system running the same game code and using exactly the same controller input data to produce a different length game loop and therefore use different animation speed predictors.
  • FIG. 1 a substantially similar master and slave system are executing substantially the same processor instructions for game loops (GLa, GLb, and GLc) which span frames using the same controller input.
  • the master system produces three frames for game loop GLa while the slave system produces only two frames for the same game loop.
  • This discrepancy can result from a variety of reasons. For example, if the systems or software are at all different or even if the systems and software are identical, there may be a difference between the phase of the instruction that may cause the systems to execute differently. If the frame count is used as a factor in any processing decisions, this effect will disturb the synchronization between the two systems.
  • the present invention solves this problem by providing a means for predicting the number of frames needed for a particular game loop and for synchronizing the use of this information by the slave system.
  • a time line illustrates the game loop timing for a master and a slave system.
  • the network transmission latency between the master and the slave is two frame times. It will be apparent to one of ordinary skill in the art that a greater or lesser latency is equivalents supported by the present invention.
  • a message sent by the master at time F0 arrives at the slave at time F2. These messages comprise game controller data during run mode operation of the system.
  • the present invention augments these messages sent by the master to add a game loop prediction value that specifies the number of frames that are expected to be used in game loops in the near future. As a reasonable estimate for the number of frames needed for game loops in the near future, the present invention uses the number of frames needed in the previous and most recent game loop. Empirical analysis has shown that it is often the case that the execution time of a given game loop is usually a good predictor of game loops in the near future.
  • FIG. 2 shows a simplified block diagram of the presently preferred embodiment.
  • Both systems have a user controller device 320 such as a joystick in a Sega Genesis system. Data read from the user controller device 320 is sent directly to the modem to the other system. Since the modem and network both introduce latency to the data, a read FIFO 316 is used to delay the read controller data appropriately to correspond to the modem and network latency. Thus, the game execution logic 355 of both systems will operate on the same controller data for a given game loop. Thus, synchronous execution will be maintained.
  • the present invention uses the master system prediction of the number of frames per game loop to drive both the master system game loop and the slave system game loop.
  • the master sends its game loop prediction value along with the corresponding game controller data in messages across the network to the slave system. Because the game loop prediction is applied to the game execution logic in correspondence with the game controller data associated with a particular game loop, the slave system can always apply the master systems' prediction value to the appropriate slave system game loop. Any game loop prediction value generated by the slave system in its normal course of processing is replaced by the master prediction value. The slave system is therefore assured to use the same prediction for the game loop (i.e., run their animations at the same speed) as the master system.
  • the master system for its part, generates its game loop prediction value and stores the prediction value in its READ FIFO 316 with the corresponding master system game controller data. This information is fed to the game execution logic for the appropriate master game loop. Because the master system and the slave system use the game loop prediction value generated by the master, any slave prediction value is not used. Thus, as shown in Figure 3, the slave system does not send any game loop prediction value to the master system.
  • the messages sent by the slave to the master for each game loop contain only slave game controller data for use by the master. In this manner, the present invention guarantees that the game loops (GLa, GLb, and GLc) will each be the same length (i.e., run at the same speed) for both the master and slave system.

Abstract

The present invention is means (Figure 2) and method (Figures 1 and 2) for synchronizing the animation speed of multiple video game systems in a networked environment (Figure 4) with no external synchronization signals required. Video games and most computer display controllers are closed free running systems. Because most such systems have the means to switch between an interlaced and non-interlaced operation, and because interlaced and non-interlaced modes have a relative timing variation, the timing between two or more such closed free running systems can be synchronized. This method (Figure 3) allows synchronization with an imprecise timing reference. The vertical display timing is the free running oscillator, and the interlaced/non-interlaced mode transition is used as the timing adjustment means. The actual arrival of data in a communication medium (505) connecting two systems (510, 520) being synchronized is used in relation to an expected arrival time to provide the clock reference.

Description

METHOD AND APPARATUS FOR SYNCHRONIZING THE ANIMATION SPEED OF MULTIPLE VIDEO GAME SYSTEMS IN A NETWORKED ENVIRONMENT FIEIP OF THE INVENTION
The present invention relates to the field of video game systems. Specifically, the present invention pertains to synchronization of the animation of multiple video game systems in a networked environment.
REFERENCE TO RELATED PATENT APPLICATIONS
The following co-pending patent applications are related: U.S. Patent Application entitled, "AN IMPROVED NETWORK ARCHITECTURE TO SUPPORT REAL-TIME VIDEO GAMES", invented by Steve
Perlman, with serial no. and filed on .
U.S. Patent Application entitled, "AN IMPROVED NETWORK
ARCHITECTURE TO SUPPORT MULTIPLE SITE REAL-TIME VIDEO GAMES", invented by Steve Perlman, with serial no. and filed on
U.S. Patent Application entitled, "AN IMPROVED MODEM TO SUPPORT MULTIPLE SITE CALL CONFERENCED DATA COMMUNICATIONS", invented by Steve Perlman, with serial no. and filed on
U.S. Patent Application entitled, "AN IMPROVED NETWORK ARCHITECTURE TO SUPPORT RECORDING AND PLAYBACK OF REAL-TIME
VIDEO GAMES", invented by Steve Perlman, with serial no. and filed on .
U.S. Patent Application entitled, "METHOD AND APPARATUS FOR
LOOSELY SYNCHRONIZING CLOSED FREE-RUNNING RASTER DISPLAYS", invented by Steve Perlman and Steve Roskowski, with serial no. and filed concurrently with the present application.
DESCRIPTION OF RELATED ART
When synchronizing two or more freely running video game systems communicating over a network, it is often desirable to have all systems execute code independently that results in the same game behavior. Certain factors, such as animation speed regulation, can affect the outcome of a game.
Some video games always complete a game loop within one frame time. For these systems, it is not necessary to throttle the speed of game loop execution. For more complicated games, however, a single game loop may span more than one frame time. This situation presents no problem for the synchronization apparatus of the present invention as long as the length of the game loop is a fixed length of time. However, some video games dynamically alter the animation speed in the course of execution by measuring the elapsed time in prior game loops. The decision is based on local system timing parameters.which may vary among the systems; thus, it is possible for a master and slave system running the same game code and using exactly the same controller input data to produce a different length game loop and therefore use different animation speed predictors. This phenomenon makes it very difficult to synchronize these systems over a network; because different animation speeds can result in different game outcomes. Prior art systems have been unable to solve this problem.
Thus, a better means and method for synchronizing the animation speed of multiple video game systems in a networked environment is needed.
SUMMARY OF THE INVENTION
The present invention defines a protocol for synchronizing the animation speed of multiple video game systems connected over a network. This protocol assures that each system remains in game loop synchronization with other systems. The player controller inputs are always directed to the correct game loop on each system.
The present invention specifies that a master video game system determines the number of frames that have passed in a game loop and uses that information as a predictor of future game loop duration. The master sends this prediction along with game controller data to the slave system. The master delays the prediction in a read FIFO for its own internal use. The read FIFO delay matches the network latency so that the slave and master use the same predictor in their game execution logic. Thus, the master and slave remain in game loop synchronization.
BRIEF DESCRIPTION OF THE DRAWINGS
Figures 1 and 3 illustrate the variable number of frames per game loop and the messages used by the present invention for regulating the speed of an animation.
Figure 2 illustrates the queueing system used in the preferred embodiment.
Figure 4 illustrates two video game systems connected via a communication medium.
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT
The present invention is a means and method for synchronizing the animation speed of multiple video game systems in a networked environment. In the following detailed description, numerous specific details are set forth in order to provide a thorough understanding of the present invention. However, it will be apparent to one of ordinary skill in the art that these specific details need not be used to practice the present invention. In other instances, well known structures, interfaces, and processes have not been shown in detail in order not to unnecessarily obscure the present invention.
The preferred embodiment of the present invention operates in the context of a networked video game system. In a networked video game system, a first video game system is coupled to a second video game system via a communication medium. Such a configuration is illustrated in Figure 4.
Referring now to Figure 4, a simplified diagram illustrates two video game systems 510 and 520 connected via a communication medium 505. For purposes of the following description, game system 510 is denoted the master and game system 520 is denoted the slave. It will be apparent to those of ordinary skill in the art that the designation of a particular system as master or slave is purely arbitrary. ln the preferred embodiment, the communication medium 505 is the standard telephone network and the first and second video game systems are direct connected via a direct telephone call initiated by one of the video game systems. The details of establishing this interconnection of video game systems via the telephone network is described in detail in the above-referenced co-pending patent applications. The video game system initiating the telephone call is denoted the master system. The video game system receiving the telephone call is denoted the slave system. Except in some circumstances, it makes no difference which video game system initiates the telephone call and becomes master.
Some video games always complete a game loop within one frame time. For these systems, it is not necessary to throttle the speed of game loop execution. For more complicated games, however, a single game loop may span more than one frame time. This situation presents no problem for the synchronization apparatus of the present invention as long as the length of the game loop is a fixed length of time. However, some video games dynamically alter the animation speed in the course of execution by measuring the elapsed time in prior game loops. The decision is based on local system timing parameters, which may vary among the systems; thus, it is possible for a master and slave system running the same game code and using exactly the same controller input data to produce a different length game loop and therefore use different animation speed predictors. This phenomenon makes it very difficult to synchronize these systems over a network; because different animation speeds can result in different game outcomes. This phenomenon is illustrated in Figure 1. In Figure 1 , a substantially similar master and slave system are executing substantially the same processor instructions for game loops (GLa, GLb, and GLc) which span frames using the same controller input. However, the master system produces three frames for game loop GLa while the slave system produces only two frames for the same game loop. This discrepancy can result from a variety of reasons. For example, if the systems or software are at all different or even if the systems and software are identical, there may be a difference between the phase of the instruction that may cause the systems to execute differently. If the frame count is used as a factor in any processing decisions, this effect will disturb the synchronization between the two systems.
Prior art video games frequently use frame count per game loop (eg. GLa=2 or GLb=3) as a determinant of animation speed for future game loops. If the master and slave have a different frame count per game loop, the animnation speed will differ between them and synchronization will be lost.
The present invention solves this problem by providing a means for predicting the number of frames needed for a particular game loop and for synchronizing the use of this information by the slave system.
Referring to Figure 3, a time line illustrates the game loop timing for a master and a slave system. In this example, the network transmission latency between the master and the slave is two frame times. It will be apparent to one of ordinary skill in the art that a greater or lesser latency is equivalents supported by the present invention. In Figure 3, a message sent by the master at time F0 arrives at the slave at time F2. These messages comprise game controller data during run mode operation of the system. The present invention augments these messages sent by the master to add a game loop prediction value that specifies the number of frames that are expected to be used in game loops in the near future. As a reasonable estimate for the number of frames needed for game loops in the near future, the present invention uses the number of frames needed in the previous and most recent game loop. Empirical analysis has shown that it is often the case that the execution time of a given game loop is usually a good predictor of game loops in the near future.
Figure 2 shows a simplified block diagram of the presently preferred embodiment. Both systems have a user controller device 320 such as a joystick in a Sega Genesis system. Data read from the user controller device 320 is sent directly to the modem to the other system. Since the modem and network both introduce latency to the data, a read FIFO 316 is used to delay the read controller data appropriately to correspond to the modem and network latency. Thus, the game execution logic 355 of both systems will operate on the same controller data for a given game loop. Thus, synchronous execution will be maintained.
It is necessary to ensure that the master and slave systems both use the same predictor of frames per game loop. Otherwise, animation speed will vary and synchronization between the two systems will be lost. If the master and slave systems were allowed to execute without modification, the length of the game loops executed by the master and slave would eventually be different and a different predictor would be used by each system.
Thus, the present invention uses the master system prediction of the number of frames per game loop to drive both the master system game loop and the slave system game loop. The master sends its game loop prediction value along with the corresponding game controller data in messages across the network to the slave system. Because the game loop prediction is applied to the game execution logic in correspondence with the game controller data associated with a particular game loop, the slave system can always apply the master systems' prediction value to the appropriate slave system game loop. Any game loop prediction value generated by the slave system in its normal course of processing is replaced by the master prediction value. The slave system is therefore assured to use the same prediction for the game loop (i.e., run their animations at the same speed) as the master system.
Note that when the slave amd master have a discrepancy in game loop execution time (see GLa in Fig 3) one will have to wait for the other to catch up at some point. But by only using the master's execution time as a predictor, consistent execution can be maintained.
The master system, for its part, generates its game loop prediction value and stores the prediction value in its READ FIFO 316 with the corresponding master system game controller data. This information is fed to the game execution logic for the appropriate master game loop. Because the master system and the slave system use the game loop prediction value generated by the master, any slave prediction value is not used. Thus, as shown in Figure 3, the slave system does not send any game loop prediction value to the master system. The messages sent by the slave to the master for each game loop contain only slave game controller data for use by the master. In this manner, the present invention guarantees that the game loops (GLa, GLb, and GLc) will each be the same length (i.e., run at the same speed) for both the master and slave system.
Thus, a means and method for synchronizing the animation speed of multiple video game systems in a networked environmentwith no external synchronization signals required is disclosed. These specific arrangements and methods described herein are merely illustrative of the principles of this invention. Numerous modifications in form and detail may be made by those of ordinary skill in the art without departing from the scope of the present invention. Although this invention has been shown in relation to a particular preferred embodiment, it should not be considered so limited. Rather, the present invention is limited only by the scope of the appended claims.

Claims

CLAIMSWe claim:
1. In a networked video game system, an apparatus for synchronizing the animation speed of a video game between a first game system and a second game system, said apparatus comprising: means in said first game system for generating a prediction of the number of execution cycles required for a subsequent game loop; means for sending said prediction to said second game system; and means in said first game system and said second game system for using said prediction to set the number of execution cycles for a corresponding subsequent game loop in both said first game system and said second game system.
PCT/US1995/014799 1994-11-14 1995-11-14 Method and apparatus for synchronizing the animation speed of multiple video game systems in a networked environment WO1996014909A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
AU42368/96A AU4236896A (en) 1994-11-14 1995-11-14 Method and apparatus for synchronizing the animation speed of multiple video game systems in a networked environment

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US33959094A 1994-11-14 1994-11-14
US08/339,590 1994-11-14

Publications (1)

Publication Number Publication Date
WO1996014909A1 true WO1996014909A1 (en) 1996-05-23

Family

ID=23329731

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US1995/014799 WO1996014909A1 (en) 1994-11-14 1995-11-14 Method and apparatus for synchronizing the animation speed of multiple video game systems in a networked environment

Country Status (2)

Country Link
AU (1) AU4236896A (en)
WO (1) WO1996014909A1 (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4570930A (en) * 1983-10-03 1986-02-18 At&T Bell Laboratories System, method, and station interface arrangement for playing video game over telephone lines
US4572509A (en) * 1982-09-30 1986-02-25 Sitrick David H Video game network
US5292125A (en) * 1991-05-31 1994-03-08 Hochstein Peter A Apparatus and method for electrically connecting remotely located video games

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4572509A (en) * 1982-09-30 1986-02-25 Sitrick David H Video game network
US4570930A (en) * 1983-10-03 1986-02-18 At&T Bell Laboratories System, method, and station interface arrangement for playing video game over telephone lines
US5292125A (en) * 1991-05-31 1994-03-08 Hochstein Peter A Apparatus and method for electrically connecting remotely located video games

Also Published As

Publication number Publication date
AU4236896A (en) 1996-06-06

Similar Documents

Publication Publication Date Title
US5775996A (en) Method and apparatus for synchronizing the execution of multiple video game systems in a networked environment
CN111837399B (en) Playback method, server and medium for synchronizing media content
RU2392753C2 (en) Method for sending instructions to device not to carryout synchronisation or delay synchronisation of multimedia streams
EP3503540A1 (en) Providing synchronized information to multiple devices
US20150119144A1 (en) Game apparatus, wireless module and game system
US5608651A (en) Method and apparatus for scheduling and mixing media in a multi-media environment
US20020194269A1 (en) Distributed processing system, distributed processing method and client terminal capable of using the method
US20080022288A1 (en) Signal Processing Appatatus
Guan et al. A prioritized Petri net model and its application in distributed multimedia systems
KR100288390B1 (en) Data processing system and data processing method
Dannenberg Time-flow concepts and architectures for music and media synchronization
CN116112721A (en) Method, system, and medium for synchronized media content playback on multiple devices
WO1996014909A1 (en) Method and apparatus for synchronizing the animation speed of multiple video game systems in a networked environment
CN115502975A (en) Robot scheduling method and device, electronic equipment and storage medium
JPH08243255A (en) Applying method of game synchronization of communication game machine
JP2003179584A (en) Synchronous method of network system
Huang et al. Interactive multimedia synchronisation in the distributed environment using the formal approach
CN108282720B (en) Audio data stream transmission method and device
US6952826B1 (en) Method for implementing a multi-level system model for deterministically handling selected data
JPH09238127A (en) Method for synchronously operating communication network system and game system using it
Kim et al. Distributed computing based streaming and play of music ensemble realized through TMO programming
JP2000254354A (en) Game system, gaming device, image reproducer and information storage medium
KR101865627B1 (en) Method and system for providing remote operation tool for multimedia content
JPH09289518A (en) Loop type network controller
JP2003009298A (en) Sound reproduction device and sound reproduction method

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): AL AM AT AT AU BB BG BR BY CA CH CN CZ CZ DE DE DK DK EE EE ES FI FI GB GE HU IS JP KE KG KP KR KZ LK LR LT LU LV MD MG MK MN MW MX NO NZ PL PT RO RU SD SE SG SI SK SK TJ TM TT UA UG UZ VN

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): KE LS MW SD SZ UG AT BE CH DE DK ES FR GB GR IE IT LU MC NL PT SE BF BJ CF CG CI CM GA GN ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
DFPE Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101)
REG Reference to national code

Ref country code: DE

Ref legal event code: 8642

122 Ep: pct application non-entry in european phase
NENP Non-entry into the national phase

Ref country code: CA