Avoid Infinite Loop Of Hardware/Audio Streaming Under The Following Conditions; Example Of Problem And How To Solve It - Nintendo GameCube Manuallines

Hide thumbs Also See for GameCube:
Table of Contents

Advertisement

Optical Disc Drive Guidelines
On development tools, the Nintendo GameCube
opening.bnr file stored in the Game Disc's root directory. You can create opening.bnr by using
the makebanner.exe tool included with the Nintendo GameCube
To use this tool, execute makebanner.exe. The structure of banner files is defined in
include/dolphin/dvd/DVDBanner.h.
You can use the listdemo program (located in build/demos/carddemo) to check the Game Disc
banner and game information located in the opening.bnr file.
5.5 Avoid Infinite Loop of Hardware/Audio Streaming Under the Following
Conditions
Avoid an infinite loop in the following situations:
1.
Hardware/Audio Streaming while Data Streaming
2.
Synchronous Playback of more than one data stream
Note: The necessary data is read from the Game Disc all at once and then used as required. This
method is defined as Burst Transfer. The data is read when required, one by one in order, and
is not read all at once. This method is defined as Data Streaming. A typical example of data
streaming transfer would be the playback of a movie.
The reason that we need to avoid the infinite loop is because the player may leave the
Nintendo GameCube with such condition. Nintendo GameCube's optical disc drive moves the head
with high frequency to access the Game Disc. There is a possibility that this may cause bad effects on
the optical disc drive. Also, it is meaningless to have optical disc drive access without the player
present, so please avoid this situation.
Other than "1" and "2" above, if there is a need for prolonged access that is not sequential with high
frequency, either make the access sequential or prevent it from entering an infinite loop.
You can reduce the seek noise that is generated during synchronous playback considerably, by
placing those files that are played back synchronously close to each other. Place these files close to
each other, as much as possible.

5.5.1 Example of Problem and How to Solve It

[1]
There is a demo that plays different audio files as BGM while playing back a movie file. It is
possible that this demo will enter an infinite loop.
Solution 1:
Compile the movie file and the audio file into one file by interleaving them, and playback
the audio portion using software. After this is done, access to the optical disc drive will
be sequential.
Solution 2:
Stop BGM after the fade-out of the third loop. By doing this, only the movie is played
back, and access to the optical disc drive will be sequential.
Solution 3:
Switch the movie to a static image after three loops. By doing this, it will be only
hardware/audio streaming, and the access to the optical disc drive will be sequential.
[2]
If two movies are played back synchronously there is a possibility that the program will enter an
infinite loop.
Solution 1:
Compile the two movie files into one file by interleaving them. By doing this, access to
the optical disc drive will be sequential.
Solution 2:
Switch both movies to a static image after three loops. This will prevent an infinite loop.
[3]
There is an artificial intelligence type dialog game. There is a portion of this game in which voice
data is read consecutively, while the audio file is played as BGM. This might continue infinitely,
unless there is an input to the Controller.
Solution:
If there is no input to the Controller for 5 minutes, make characters in the game go to
sleep, so that they will no longer talk. By doing this, access to the optical disc drive will
be only for playing back BGM.
DOL-06-0026-001-A5
Released: 4/18/02
TM
startup program displays the information in the
TM
SDK in the /X86/bin directory.
16
© 2001-2002 Nintendo of America Inc.

Advertisement

Table of Contents
loading

Table of Contents